在Vim中键入函数定义

时间:2014-04-14 13:36:04

标签: javascript vim

我对使用Vim满足我的所有编程需求感到非常兴奋,但我还没有自己设法以一种简洁的方式编写函数定义。

当键入新的函数定义(我正在编写Javascript)时,我这样做:

  1. i function foo(x) {} Esc 让我进入 正常模式,光标位于大括号之间。

  2. 现在 i 返回 Esc 放入 在新线上关闭大括号。

  3. 最后 O 在右括号上打开一个新行 光标在新行上。

  4. 这似乎效率低下。有更简洁的方式吗? (理想情况下不涉及.vimrc黑客攻击,因为我正在努力学习尽可能多的'vanilla'vim)

2 个答案:

答案 0 :(得分:1)

function foo(x) { CR
} 控制-O 0

是我可以达到你的目标的最高尔夫球场(括号在任何时候都关闭),而无需编辑.vimrc或安装插件。

答案 1 :(得分:1)

片段就像类固醇上的内置:abbreviate一样,通常带有参数插入,镜像和内部多个停止。第一个非常着名(并且仍然广泛使用)的Vim插件之一是snipMate(受 TextMate 编辑器的启发);不幸的是,它不再维持;虽然有a fork。现代替代方案(虽然需要Python)是UltiSnips。还有更多内容,请参阅this list on the Vim Tips Wiki

有三件事要评估:第一,摘录引擎本身的功能,第二,作者或其他人提供的片段的质量和广度;第三,添加新片段是多么容易。