我正在尝试找到一种方法来执行以下操作,因为我已经进行了大量的javascript开发。
给出以下一行:
var someFunc = function() {};
成:
var someFunc = function() {
// proper indenting -- cursor placed here
};
我想让vim只需按回车键即可从插入模式执行此操作。重新设置实际间距的输入键会很容易,但我发现的问题是检查以确保我在括号内。
任何帮助都会很棒!
谢谢!
答案 0 :(得分:3)
有很多方法可以做到这一点。还有很多类似的问题和超级用户。
假设您的光标位于 insert 模式:
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这样的插件(有others)来插入右括号并为你做“支架打开”。
代码段(SnipMate(original,fork),UltiSnips和others)也很有用:输入fun
后跟<Tabs>
是当然是编写完整函数定义存根的好方法。