由于我一直在进行大量的 javascript 开发,因此我正在尝试找出一种方法来执行以下操作。
给出以下行:
var someFunc = function() {};
进入:
var someFunc = function() {
// proper indenting -- cursor placed here
};
我想让vim通过按回车键从插入模式执行此操作。重新映射实际间距的输入键很容易,但我发现的问题是检查以确保我在大括号内。
任何帮助都会很棒!
谢谢!
由于我一直在进行大量的 javascript 开发,因此我正在尝试找出一种方法来执行以下操作。
给出以下行:
var someFunc = function() {};
进入:
var someFunc = function() {
// proper indenting -- cursor placed here
};
我想让vim通过按回车键从插入模式执行此操作。重新映射实际间距的输入键很容易,但我发现的问题是检查以确保我在大括号内。
任何帮助都会很棒!
谢谢!
有很多方法可以做到这一点。还有许多类似的问题在这里和超级用户。
假设您的光标在那里并且您处于插入模式:
var someFunc = function() {|};
这个映射会做你想做的事:
inoremap <C-Return> <CR><CR><C-o>k<Tab>
假设您的光标位于该行的其他位置并且您仍处于插入模式,则此映射将起作用:
inoremap <C-Return> <Esc>$T{i<CR><CR><C-o>k<Tab>
因为它更通用,所以第二个映射将为您的直接问题提供一个很好的解决方案。
但是您也可以使用像DelimitMate(还有其他)这样的插件来插入右括号并为您执行“括号打开”。
片段(SnipMate ( original , fork ), UltiSnips和其他)也很有用:键入fun后跟<Tabs>当然是编写完整函数定义存根的好方法。