有没有一种快速方法可以打开函数的大括号并在下一行缩进的插入模式下结束。例如:
void myFunc(int arg) {
<cursor>
}
具体来说,我要求在将参数写入 后执行一项动议()
。
现在我能想到的唯一方法是直接方法,插入左大括号和右大括号,将第二个向下移动两行,向上移动一行,然后制表符。
{}<esc>i<enter><enter><esc>ki<tab>
这看起来确实是多余的。我想我也可以等到创建新行后写第二个卷曲并保存模式开关。但是有没有更聪明的 vim 方法来做到这一点呢?
您有两个选择:
创建自定义映射
如果手动方式是这样做:
然后你可以将它映射到更短的东西:
对其他括号也这样做:
这种方法很常见。
vimrc
这是我多年来一直使用的一个变体:使用第三方插件
只需谷歌搜索“vim 自动关闭括号”。
使用
<cr><esc>O
而不是 double<cr><cr><up>
:这将确保光标在末尾正确缩进。<cr><cr><up><c-f>
只要 CTRL-F 存在于'indentkeys'
. 因此,<esc>O
更加稳健。注意:我建议使用括号插件,因为这些没有帮助跳出括号对的映射的映射使用起来确实很麻烦。此外,这些插件已经知道如何支持
redo
/.
以及许多其他东西。