【问题标题】:Create Vim snippets without installing any plugins?在不安装任何插件的情况下创建 Vim 片段?
【发布时间】:2019-09-28 01:19:01
【问题描述】:

我不喜欢使用其他人创建的 sn-ps(因为我这样做时往往会忘记语法或基本内容)。但是,我不知道如何在 Vim 中从头开始编写自己的代码

我在 Atom、Sublime 中从头开始创建了我的 sn-ps,现在我正在迁移到 Vim,但找不到有关如何从头开始创建 sn-ps 的确切指南。

我四处搜索,人们不断提到不同的 sn-p 插件,例如 UtilSnips(但我现在不想安装任何 sn-ps 插件)。

谁能帮帮我?我只需要知道将我的 sn-p 文件放在哪里,每个文件扩展名的 sn-p 语法,我会很好。谢谢。

【问题讨论】:

  • vim 不支持开箱即用的 sn-ps。如果你想要 sn-p 功能,你需要安装一个 sn-p 包。选择 sn-p 包后,请阅读其文档以了解如何定义自己的 sn-ps。

标签: vim code-snippets


【解决方案1】:

Vim 不支持开箱即用的 sn-ps。如果您不想安装任何插件,则必须自己编写功能。那么语法等由你决定。

Vim 内置了一种低技术含量的 sn-ps 替代方案:缩写。就我个人而言,我为一个常见的 Python sn-p 定义了一个缩写:

ia inim if __name__ == "__main__":

将此行放入我的.vimrc 后,我可以在插入模式下输入inim,然后输入空格(在我的情况下通常是<cr>,用于输入代码。但是这种方法相当有限。

【讨论】:

  • 谢谢,你知道我是否可以禁用已安装的 plugin-sn-ps 但我的仍然有效吗?
  • 我不明白。您想禁用插件,但保留其功能?那是行不通的。
【解决方案2】:

你想安装一个sn-p插件,并且只使用你自己创建的sn-ps,对吧?

安装ultisnips,把你所有的sn-ps放到~/.vim/UltiSnips。将以下设置添加到您的 vimrc:

let g:UltiSnipsSnippetDirectories = [$HOME.'/.vim/UltiSnips']

如果g:UltiSnipsSnippetDirectories 只包含一个绝对路径条目,它将使用它作为sn-ps 的唯一来源。

检查:h UltiSnips-how-snippets-are-loaded

您可以使用:UltiSnipsEdit 编辑当前文件类型的sn-ps。

如果您想进一步了解其他问题,请查看我的回答detail

【讨论】:

    猜你喜欢
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 2018-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多