mirror of
https://github.com/openai/codex.git
synced 2026-11-08 08:37:30 +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
@@ -3801,6 +3801,7 @@
|
||||
"open_line_above": null,
|
||||
"open_line_below": null,
|
||||
"paste_after": null,
|
||||
"repeat_last_change": null,
|
||||
"replace_char": null,
|
||||
"start_change_operator": null,
|
||||
"start_delete_operator": null,
|
||||
@@ -4608,6 +4609,7 @@
|
||||
"open_line_above": null,
|
||||
"open_line_below": null,
|
||||
"paste_after": null,
|
||||
"repeat_last_change": null,
|
||||
"replace_char": null,
|
||||
"start_change_operator": null,
|
||||
"start_delete_operator": null,
|
||||
@@ -5016,6 +5018,14 @@
|
||||
],
|
||||
"description": "Paste after cursor (`p`)."
|
||||
},
|
||||
"repeat_last_change": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "#/definitions/KeybindingsSpec"
|
||||
}
|
||||
],
|
||||
"description": "Repeat the last complete edit (`.`)."
|
||||
},
|
||||
"replace_char": {
|
||||
"allOf": [
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user