2

我想写一个这样的片段:

snippet code
    ``` ${1:ruby}

    ```

``用于包装脚本命令,我该怎么做?

谢谢大家!

4

3 回答 3

2

您应该提到您正在使用哪个片段插件。我假设原来的 snipMate,因为那个不处理转义的反引号。

你可以使用产生反引号的 Vim 表达式来解决这个问题:

snippet backtick
    `!v nr2char(96)`

在你的情况下,我会使用

snippet code
    `!v repeat(nr2char(96),3)` ${1:ruby}

    `!v repeat(nr2char(96),3)`
于 2013-02-22T07:58:40.953 回答
2

较新版本的 snipMate 允许转义反引号:


snippet code
    \`\`\` ${1:ruby}

    \`\`\`

https://github.com/garbas/vim-snipmate

https://github.com/msanders/snipmate.vim

于 2014-04-23T05:12:19.837 回答
0

vim.org 0.83 版中的原始 snipMate不允许转义反引号。但是,废弃存储库中的 0.84 版似乎有它(cp.commit b2937829)。可能值得一试。

或者,我已经单独在我的个人 fork中添加了该增强功能;不幸的是,它与许多不适合您的自定义和东西混合在一起。(但理论上你可以从提交列表中提取一个补丁。)

也许最好转移到另一个更现代和维护的片段插件。UltiSnips - 支持 python 的 Vim 的最终代码片段解决方案目前很流行(但需要 Python 支持)。

于 2013-02-22T10:50:46.480 回答