在插入模式下在当前行后添加新行 vim
Add new line after current line in insert mode vim
我是 Vim 的新人,从 Sublime 到 Vim 的过渡真的很艰难。我想知道当我处于插入模式而不离开它时,是否有一个快捷方式可以在当前行的上方或后面添加一个新行。在 sublime 中我使用了
cmd + Enter
cmd + Shift + Enter
要做,但我在 vim 上找不到类似的方法。
我找到了在正常模式下使用 'o' 和 'O' 并配置这种神奇方式的方法 http://vim.wikia.com/wiki/Insert_newline_without_entering_insert_mode
但是 none 达到了我的需要。
谢谢!
在下面定义添加行的快捷方式很容易,只需在 Vim 命令行中键入以下内容(在正常模式下键入 :
之后)或将其添加到您的 vimrc 文件中:
imap <C-Enter> <Esc>o
添加插入模式映射 (imap
) 以便 Ctrl-Enter 将离开插入模式,然后使用 o
在当前行之后添加新行(让您返回在你开始的地方插入模式)。 (<C-xxx>
是 Vim 表示特殊键序列 Ctrl+xxx 的方式,而 <Esc>
是转义键)。
这与您 link 的 "amazing way" 非常相似,但只是使用适当的键序列从插入模式转到正常模式,然后添加该行。在 Vim 中创建快捷方式的方法是从较小的部分构建它们。如果您了解 O
和 o
,那么您需要做的就是先创建一个映射以进入正常模式,然后再使用它们。
由此可见,如何进行其他映射也应该是显而易见的:
imap <C-S-Enter> <Esc>O
(<C-S-xxx>
表示Ctrl+Shift+xxx)
这些映射在 gvim
GUI 中对我来说工作正常,但在基于终端的 vim
中可能无法工作,因为键序列可能无法从终端正确传递到 vim
.如有必要,使用一些其他映射,例如 Ctrl+o。
我是 Vim 的新人,从 Sublime 到 Vim 的过渡真的很艰难。我想知道当我处于插入模式而不离开它时,是否有一个快捷方式可以在当前行的上方或后面添加一个新行。在 sublime 中我使用了
cmd + Enter
cmd + Shift + Enter
要做,但我在 vim 上找不到类似的方法。
我找到了在正常模式下使用 'o' 和 'O' 并配置这种神奇方式的方法 http://vim.wikia.com/wiki/Insert_newline_without_entering_insert_mode 但是 none 达到了我的需要。
谢谢!
在下面定义添加行的快捷方式很容易,只需在 Vim 命令行中键入以下内容(在正常模式下键入 :
之后)或将其添加到您的 vimrc 文件中:
imap <C-Enter> <Esc>o
添加插入模式映射 (imap
) 以便 Ctrl-Enter 将离开插入模式,然后使用 o
在当前行之后添加新行(让您返回在你开始的地方插入模式)。 (<C-xxx>
是 Vim 表示特殊键序列 Ctrl+xxx 的方式,而 <Esc>
是转义键)。
这与您 link 的 "amazing way" 非常相似,但只是使用适当的键序列从插入模式转到正常模式,然后添加该行。在 Vim 中创建快捷方式的方法是从较小的部分构建它们。如果您了解 O
和 o
,那么您需要做的就是先创建一个映射以进入正常模式,然后再使用它们。
由此可见,如何进行其他映射也应该是显而易见的:
imap <C-S-Enter> <Esc>O
(<C-S-xxx>
表示Ctrl+Shift+xxx)
这些映射在 gvim
GUI 中对我来说工作正常,但在基于终端的 vim
中可能无法工作,因为键序列可能无法从终端正确传递到 vim
.如有必要,使用一些其他映射,例如 Ctrl+o。