如何映射键以插入多行代码或注释?

时间:2016-01-20 04:56:01

标签: vim

我想映射一个键或一个键组合,理想情况是fg来插入函数头的模板。

如何在Vim的插入模式中映射fg以将以下代码插入到我的文件中:

/*
 * Function Name: 
 * Description: 
 * Parameters: 
 * Result: 
 */

4 个答案:

答案 0 :(得分:0)

ino fg /*<CR>Function Name: <CR> Description: <CR> Parameter:<CR> Result:<CR>/

您可能需要对格式进行一些小的调整

答案 1 :(得分:0)

我建议不要在插入模式下映射fg,因为f是您通常输入的字符。映射fg会为f创建两种可能的结果character:one - 实际上是在光标位置添加了f个字符,另一个是调用映射宏。这就是为什么每次你输入f时,vim会等待下一个字符检查它是否不是g如果不是,那么它会添加下一个字符但是如果你只键入{{1 vim将等待少量时间,然后才释放光标。感觉vim是滞后的。

我更喜欢将该映射用于普通模式,但要切换到插入模式:

f

答案 2 :(得分:0)

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

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

答案 3 :(得分:0)

如果您想要一个即时解决方案而不是.vimrc解决方案,您可以随时使用宏:

  1. 进入正常模式。
  2. 输入q
  3. 键入要录制宏的任何字母(让我们说出f)。
  4. 进入插入模式,只需输入您要录制的模板即可。
  5. 退出插入模式并单击q以停止录制。
  6. 现在,只要您输入f,就可以使用粘贴在@f字母下记录的文字。