【问题标题】:How do I "source" something in my .vimrc file?如何在我的 .vimrc 文件中“获取”某些内容?
【发布时间】:2018-05-23 21:13:22
【问题描述】:

我最近一直在扩展我的 vim-foo,我遇到了几个插件(例如autotag.vim),这些插件需要在我的 .vimrc 文件中“获取”它们。这到底是什么意思,我该怎么做?

【问题讨论】:

    标签: plugins vi vim


    【解决方案1】:

    获取文件就是“执行”它。本质上,文件的每一行都被视为一个命令。采购它与按顺序键入每个命令相同。您使用命令:source(通常缩写为:so)进行源代码。

    所以如果你来源myStuff.vim

    :so myStuff.vim
    

    如果myStuff.vim 包含这些行

    set xx iI just intersted this<C-]>
    set yy bbbb4dw
    

    就像你在 Vim 中输入这些命令一样

    :set xx iI just intersted this<C-]>
    :set yy bbbb4dw
    

    默认情况下唯一获取的文件是.vimrc(Windows 上为_vimrc),因此您可以在其中保存每次设置 Vim 时使用的所有命令。

    有趣的是,由于源文件只是一系列命令,而源文件是一个命令,因此您可以从源文件中获取文件。因此,您每次使用的插件都可以在您启动 Vim 时通过在 .vimrc 中添加一行来获取,就像这样

     so myPlugin.vim
    

    【讨论】:

    • so! 是做什么的?我运行它是因为我认为它会强行占用我的 .vimrc 资源,并且它开始浏览我正在编辑的文件(我的 .vimrc),并且以奇怪的方式缩进废话,并且正在发生各种奇怪的事情。
    • 它以“正常”模式执行文件(即,如果您没有在前面添加“:”会发生什么)。
    【解决方案2】:

    .vim/plugin 目录中的文件是自动获取(加载)的。

    【讨论】:

    • 另外,它们的文件名必须以 .vim 结尾
    • 是的,但每次启动只有一次,对吧?是在启动终端/powershell 时,还是在使用 vim 命令编辑某个文件时?
    • @3pitt AFAIK,每次运行 vim 命令时。
    【解决方案3】:

    总是有:source file 命令。我通常写.vimrc,其中包含自定义命令和不适合控制台应用程序的内容,然后是.gvimrc,其中包含适用于窗口版本的其他好东西。我的.gvimrcsource $HOME/.vimrc 开头,以便在添加新内容之前从控制台版本中获取所有内容。

    【讨论】:

    • 我的 vim 版本,至少,一直都是源 .vimrc。你确定需要 source .vimrc 吗?
    • @DavClark:看起来你可能是对的。我已经这样做了很长时间,从来没有考虑过。帮助文件明确指出这是没有必要的......嗯。
    【解决方案4】:

    通常有两个 vimrc 文件,一个是 _vimrc,另一个是 _gvimrc(第一个是 vim 的东西,第二个是 gvim - 图形的东西)——尽管我认识的大多数人只是把所有东西都放在 _vimrc 中。

    一个好的做法是将所有额外文件(插件、颜色方案、sn-ps ...)保存在单独的(您自己的)vimfiles 目录中(您可以随身携带)。

    如果你这样做

    :help vimfiles
    

    vim 会告诉你的 vimfiles 目录应该在哪里。这在一定程度上取决于平台(win、unix)。在 Windows 上,通常位于您的用户文件夹中(文档和设置,然后是用户...)。 在 vimfiles 目录中有几个子目录。其中包括“插件”子目录。放入该目录的插件将自动加载(也将插件放入“插件”的子目录中)。 如果您不想自动加载它,只需将其放在“vimfiles”或其他目录中,然后

    :so plugin_name.vim (with the appropriate path)
    (you can use the $vim, $vimfiles, and $home as shortcuts when defining path to plugin)
    

    【讨论】:

      猜你喜欢
      • 2020-11-03
      • 1970-01-01
      • 2018-11-17
      • 2020-02-02
      • 1970-01-01
      • 2013-11-08
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多