mirror of
https://github.com/openai/codex.git
synced 2026-11-11 04:42:10 +00:00
Add dot-repeat to Vim mode (#40521)
## What changed - Bind `.` in Vim normal mode to repeat the last complete edit. - Record semantic delete, change, replace, paste, and insert-mode actions so repeats preserve motions, text objects, inserted text, and editor actions across keymap changes. - Expose `vim_normal.repeat_last_change` in the configurable keymap and keymap picker, including conflict handling for existing custom bindings. ## Testing - Add coverage for repeating deletes, replacements, complete changes, pasted and literal text, insert-mode editor actions, custom bindings, unavailable motions, and cleared buffers. GitOrigin-RevId: 3213df964811e7902377ff1d93641e59f4037914
This commit is contained in:
1 parent
cbfd999db7
commit
c1db22a3cd
16 files changed
+658
-71
No files matched your search
@@ -239,6 +239,8 @@ pub struct TuiVimNormalKeymap {
|
||||
pub delete_char: Option<KeybindingsSpec>,
|
||||
/// Replace the character under the cursor (`r`).
|
||||
pub replace_char: Option<KeybindingsSpec>,
|
||||
/// Repeat the last complete edit (`.`).
|
||||
pub repeat_last_change: Option<KeybindingsSpec>,
|
||||
/// Delete character under cursor and enter insert mode (`s`).
|
||||
pub substitute_char: Option<KeybindingsSpec>,
|
||||
/// Delete from cursor to end of line (`D`).
|
||||
|
||||
Reference in new issue
Block a user