如果不是在插入模式下,如何在一条线上打印一个空行?在此之后我仍然应该处于正常模式。
答案 0 :(得分:4)
在vanilla vim中,它是o<ESC>
。这是按两个键。
您还可以在.vimrc中添加以下内容:
noremap <CR> o<ESC>
只需一个Enter
来加速空白行创建:)。
答案 1 :(得分:2)
按 o 或者 Shift + o 。
答案 2 :(得分:2)
在当前行之后添加空行: o (小o)和 Escape 。在当前行 O (大写O)和 Escape 之前插入一个空行。如果要保持插入模式,可以跳过 Escape 。
答案 3 :(得分:1)
试试这个: o - 开放线
答案 4 :(得分:1)
即使o<ESC>
只是两个按键,它也会移动光标并添加新行的创建以更改可能不需要的历史记录。也就是说,命令.
将在之后重复创建新行。
1)unmpaired.vim
有一个插件,unimpaired.vim,它有一个映射,用于在光标之前或之后创建新行而不更改更改历史记录,并且它不会将光标移动到新行。如果设置了nostartofline
,光标也将保留在当前列中。
使用unimpaired.vim,在光标后创建一个新行:
]<Space>
或在光标之前:
[<Space>
http://www.vim.org/scripts/script.php?script_id=1590
它也接受一个计数,所以要在你可以使用光标后创建3个新行:
3]<Space>
2)制图
您也可以创建一个自己的映射来创建一个新行,例如映射\]
(或任何领导键是)在光标后面添加一行:
:nnoremap <Leader>] :put!=repeat(nr2char(10),v:count)<Bar>']+1<Cr>
这就是unimpaired.vim创建新行的方式。为了使类似的映射在光标之前创建新行,只需将+1更改为-1