当光标放在带有空格字符的一行的末尾时,当我按Enter键时,vim将删除该空格。我发现这很烦人,因为它破坏了我选择缩进相同级别代码的脚本。如何防止vim执行此操作?
在我的.vimrc(http://bjuhn.com/randomstuff/vimrc)中,我具有以下内容:
filetype plugin on
set copyindent
也就是说,我没有使用任何可识别语法的自动缩进,因为我还没有找到可以自动完成所有功能的缩进。
最佳答案
Vim wiki建议这样做:
inoremap <CR> <CR>x<BS>
因为如果在行中输入了一些文本,即使删除了缩进,也不会删除该缩进。
[编辑-军事]
完整解决方案中仅缺少几处。您还需要重新映射o和O以及用于添加行的其他内容:
inoremap <CR> <CR>x<BS>
nnoremap o ox<BS>
nnoremap O Ox<BS>
相同的想法,但刚接触vim的人可能无法很快解决。
关于vim - 阻止vim删除空行上的缩进,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7413036/