Vim从快捷方式

时间:2017-09-26 15:08:43

标签: vim

我正在处理的代码库需要围绕我们所做的任何修改的标准注释:

// -----------ABCD---------------

然后

// ----------\ABCD---------------

映射短-abcd\abcd组合键以生成这些较长字符串的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

最简单的内置:help abbreviations

inoreab abcd // -----------ABCD---------------
inoreab abcD // ----------\ABCD---------------

为什么我选择不同的触发器?对于允许的密钥,有一些规则(在上述帮助链接下记录为“三种类型的缩写”);最简单的是它是所有关键字字符。

如果您坚持使用这些确切的触发器,则必须使用'iskeyword'选项(可能会影响语法突出显示和动作!),或切换到:inoremap。这样做的缺点是,在解决任何歧义之前你不会看到打字的字符(尝试一下;你会看到我的意思)。

ABCD只是一个假人;我需要动态文本

如果没有多个缩写,则需要代码段

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

代码段看起来像这样(snipMate语法):

snippet abcd
    // -----------${1:ABCD}---------------
    ${2:content}
    // ----------\$1---------------
    ${3}