
我注意到 vim 非常直觀,但我很難找到重複倒數第二個命令(或倒數第三個、倒數第四個等)的方法。透過在正常模式下鍵入.
,它將重複最後一個命令。按3.
將重複最後一個指令 3 次。
假設我oHello<Esc>
當時打字A, World!<Esc>
。我現在得到
Hello, World!
螢幕上。現在,說我想要得到
Hello, World!
Hello
Hello
Hello
無需輸入“Hello”。 vim 是否儲存超過一個命令的歷史記錄,以便我可以鍵入類似的內容3,2.
(即重複倒數第二個命令三次)?
答案1
不,.
命令vim
沒有歷史記錄,據我所知,正常模式命令也沒有任何類型的重複歷史記錄。對於最少的擊鍵次數,我建議4oHello<Esc>3jA, World<Esc>
.如果您已經完成了oHello<Esc>A, World<Esc>
,您可以按照 進行操作uyy<Ctrl-r>3p
。
答案2
有一個名為 RepeatLast.vim 的插件,它可以滿足您的需求,但需要付出一定的代價:您的 vim 始終處於錄製巨集模式。您可以像任何其他 vim 軟體包一樣使用您正在使用的軟體包管理器來安裝它,或者如果您~/.vim/plugin
使用的是 vim 或~/.config/nvim/plguin
neovim,則可以簡單地複製並放入它。要重複倒數第二個操作,您應該2\.
在正常模式下鍵入,並且要重複倒數第二個操作,您應該在正常模式<n>\.
下鍵入。
http://www.vim.org/scripts/script.php?script_id=4381 https://github.com/vim-scripts/RepeatLast.vim