下面是一些很棒的选项: emacs-24、邪恶模式(在emacs中使用vim绑定)和undo-tree。
然而,当我处于编辑模式(插入模式)时,我有时会跳来跳去进行一些插入、删除等操作,然后按下退出键并离开插入模式。
“撤销”将整个插入(包括删除)视为一次编辑。例如,如果不撤消整个删除操作,我就无法撤消意外删除的段落!
有没有办法解决这个问题?
以下是一些相关链接:
从vim的角度来看,
下面是一些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邪恶撤销树中的撤销模式还需要跟踪额外的事件。例如,您应该能够长时间处于插入模式,然后撤消任何类型的删除、剪切和粘贴。
发布于 2012-07-26 03:15:37
是否在几个步骤中撤消操作。有两种可能的选择: nil ("no")表示在insert状态期间所做的所有更改,包括更改操作后可能的删除,将在单个撤消步骤中收集。非空("yes")表示撤消步骤是根据Emacs启发式确定的,不会尝试聚合更改。
(setq evil-want-fine-undo t)
发布于 2012-05-07 06:01:25
这是专门针对撤销树的吗?我不使用它,所以下面的内容可能不适用…
我不确定您是否可以修改undo机制认为是单个单元的编辑量,但您可以做的是:
首先选择一个区域,然后键入undo键,Emacs将只撤消在该区域中所做的更改。
这可能非常有用。
https://stackoverflow.com/questions/10474555
复制相似问题