vim中是否有任何默认键,用于在当前线路之后创建新线路并保持在正常模式?
在编辑代码时,我总是需要这个功能:在当前行之后创建新行,将光标移动到新行(保存当前缩进!),并保持在正常模式。例如(假设█ 是一个光标): 键入命令后,我需要如下所示:vim中是否有任何默认键,用于在当前线路之后创建新线路并保持在正常模式?,vim,Vim,在编辑代码时,我总是需要这个功能:在当前行之后创建新行,将光标移动到新行(保存当前缩进!),并保持在正常模式。例如(假设█ 是一个光标): 键入命令后,我需要如下所示: function a() { foonction() █ } 例如,如果我在插入模式下按,光标位于行的末尾,则可以达到相同的效果。o命令的作用也类似,但它会在我退出插入模式后删除缩进。所以我需要一个按键来插入一行 inb4 nmap:我知道如何映射一个命令来做这样的事情,但我想知道是否有一个标准的方法来做这件事
function a() {
foonction()
█
}
例如,如果我在插入模式下按
,光标位于行的末尾,则可以达到相同的效果。o
命令的作用也类似,但它会在我退出插入模式后删除缩进。所以我需要一个按键来插入一行
inb4 nmap:我知道如何映射一个命令来做这样的事情,但我想知道是否有一个标准的方法来做这件事。没有这样的键,但事实证明,我们可以通过四次击键来实现这一点(无缩进):
:pu
这是一个问题,答案是使用Ex命令:put
:
12.15。如何在不进入插入模式的情况下在当前行的上方/下方插入空行
可以使用“:put”ex命令插入空行。例如,试试看
有关更多信息,请阅读:帮助:放置
:put
将给定寄存器中的文本置于当前行之后,并使您处于正常模式<代码>:放代码>将文本放在当前行上方的一行上
上面的示例使用表达式寄存器=
向put
命令发送空字符串。我们可以通过使用vim的黑洞寄存器,\uu
::put\u
来减少这种情况
最后,它可以缩写为::pu
和:pu_代码>
另请参见::帮助寄存器
最后,请注意,这也是Tim Pope未受影响插件的一个特性
从未修改的自述文件:
有行映射<代码>[
和]
在光标行前后添加换行符[e
和]e
将当前行与其上方或下方的行交换
您也可以使用FYI,S
将在正确的缩进级别启动插入模式。上述:put
命令可以缩短为:pu
和:pu_代码>。Tim Pope的unpaired.vim插件提供了一个非常类似的映射(]
),以及许多其他有用的映射:
function a() {
foonction()
█
}
:put =''
:put! =''