我有两个项目“Javascript”和“Python”,如何为不同的项目运行不同的配置文件?也许存在配置文件的参数?示例:
nvim --configFile .config/nvim/init_py.vim
我的目标是通过编程语言进行设置。
基于@guilherme-silva的回答和这个问题:
您可以通过为配置文件夹设置环境变量
XDG_CONFIG_HOME
以及为“数据”文件夹设置 XDG_DATA_HOME
来尝试新的配置文件(打包器、lsp 安装等,通常为 ~/.local/share/nvim
export XDG_CONFIG_HOME=~/nvim-tryout/config
export XDG_DATA_HOME=~/nvim-tryout/data
mkdir -p $XDG_DATA_HOME $XDG_CONFIG_HOME
nvim
或者,您可以在启动 nvim 时在同一 shell 命令中切换它们,而不是污染您的 shell 环境:
XDG_CONFIG_HOME=~/nvim-tryout/config XDG_DATA_HOME=~/nvim-tryout/data nvim
在Linux上的nvim手册中,它列出了如果未设置环境变量XDG_CONFIG_HOME,则默认为.config/nvim。
我相信你可以使用命令“set XDG_CONFIG_HOME={new config path}”在linux上设置全局变量
假设您的正常 nvim 位于: 〜/.config/nvim 〜/.local/share/nvim
您想要使用或尝试的配置位于: 〜/.config/nvimA 〜/.local/share/nvimA
然后你可以像这样编写一个 zsh 函数。
switchnvim() {
mv ~/.config/nvim ~/.config/nvim_old
mv ~/.config/nvimA ~/.config/nvim
mv ~/.config/nvim_old ~/.config/nvimA
mv ~/.local/share/nvim ~/.local/share/nvim_old
mv ~/.local/share/nvimA ~/.local/share/nvim
mv ~/.local/share/nvim_old ~/.local/share/nvimA
}
这就是我最终所做的,因为环境变量干扰了我设置的其他一些奇怪的配置。
nvim 有
-u vimrc
选项标志,用于使用 vimrc 而不是默认的 ~/.config/nvim/init.vim
从 Neovim 0.9 开始,您可以使用
$NVIM_APPNAME
来分隔 config/data/state/cache 目录。
例如:
$ NVIM_APPNAME=custom-nvim nvim
这将使用:
~/.config/custom-nvim
用于配置~/.local/share/custom-nvim
数据~/.local/state/custom-nvim
状态~/.cache/custom-nvim
用于缓存