这些是一些很棒的选项:emacs-24,邪恶模式(在emacs中使用vim绑定)和undo-tree。
但是,当我处于编辑模式(插入模式)时,我有时会在点击转义和离开插入模式之前跳转一下数字插入,删除等。
“撤消”将整个插入(包括删除)作为一个编辑。例如,我无法撤消我在不撤消整个删除的情况下意外删除的段落!
有什么方法可以解决这个问题吗?
以下是一些相关链接:
以下是转换某些vim命令的vim映射,以便它们可以撤消:
inoremap <c-u> <c-g>u<c-u>
inoremap <c-w> <c-g>u<c-w>
inoremap <End> <C-g>u<End>
inoremap <BS> <c-g>u<BS>
inoremap <CR> <c-g>u<CR>
inoremap <del> <c-g>u<del>
所需要的是emacs evil undo-tree内部的撤消模式除了离开插入模式之外还要跟踪其他事件。例如,您应该能够长时间保持插入模式,然后撤消任何类型的删除,剪切,粘贴。
答案 0 :(得分:15)
你有没有尝试过邪恶想要的好消息?
(setq evil-want-fine-undo t)
http://gitorious.org/evil/evil/blobs/master/evil-vars.el#line195
答案 1 :(得分:1)
这是撤消树特有的吗?我不使用它,所以以下内容可能不适用......
我不确定您是否可以修改撤销机制认为是单个单元的编辑量,但您可以做的是:
首先选择一个区域,然后键入撤消键,Emacs将仅撤消在该区域中所做的更改。
这非常有用。