[英]Vim map esc key in insert mode without losing undo sequence?
我有一個關於Vim的問題。 到目前為止,我一直將map理解為平等的命令。 就是這個 我將imap <co> <esc>o
放在我的.vimrc
文件中以開始新行。 至於為什么不僅僅映射<CR>
的原因是我遵循了Drew Neil的建議,即使用esc
和o
命令來替換,以便可以逐行使用undo
命令行。 但是,當我使用<co>
來開始一行時, undo
命令不起作用, 這意味着即使我映射了<esc>
, Vim也不會切換模式 ! 我不知道Vim是功能還是bug? 如果您能以某種方式幫助我,我將不勝感激。
您可以使用inoremap <co> <cg>u<esc>o
獲得所需的行為。 <cg>u
中斷當前的撤消序列(請參見:h i_CTRL-G_u
)。
實際上,我從未想過為什么在插入映射中包含<esc>
不會被視為破壞撤消序列。 我當然可以推理出為什么,但是這樣做會很危險,所以我不會:)
編輯添加:更簡單的是: inoremap <co> <cg>u<cr>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.