gpt4 book ai didi

vim - 启动 (g)vim 时如何将参数传递给 vimrc?

转载 作者:行者123 更新时间:2023-12-04 14:00:31 24 4
gpt4 key购买 nike

我想影响我的 vimrc 文件在启动 vim 时的执行方式,并考虑使用像这样的全局变量

if exists("g:UseEnv1")
....
else
....
endif

像这样启动vim时将设置此变量
gvim -c "let g:UseEnv1=1" file-1 file-2 

但是,这不起作用,因为在执行 vimrc 文件后评估 -c ex 命令。

我可以使用环境变量
if $UseEnv1 == 1
...
endif

但是我觉得这有点问题,以防我忘记在两个 session 之间更改 $UseEnv1 的值。理想情况下,我想在启动 vim 时明确声明我想要 Env 1。

还有其他可能吗?

最佳答案

--cmd命令行参数就像 -c ,但它在任何其他初始化之前执行。您可以使用它来设置影响您的 ~/.vimrc 的某些 Vim 变量。 .

替代品及其优点

如果您打算在命令行中实际键入这些配置(而不是将它们编码为 shell 别名或类似的),那么环境变量的使用实际上并没有那么糟糕:在大多数(Unix)shell 中,您只能设置变量通过在它们前面添加一个命令。所以代替

$ gvim --cmd "let g:UseEnv1=1" file-1 file-2

你可以写
$ UseEnv1=1 gvim file-1 file-2

关于vim - 启动 (g)vim 时如何将参数传递给 vimrc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23126843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com