如何在 nvim 配置文件之间切换

问题描述 投票:0回答:5

我有两个项目“Javascript”和“Python”,如何为不同的项目运行不同的配置文件?也许存在配置文件的参数?示例:

nvim --configFile .config/nvim/init_py.vim

我的目标是通过编程语言进行设置。

neovim
5个回答
2
投票

基于@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

1
投票

在Linux上的nvim手册中,它列出了如果未设置环境变量XDG_CONFIG_HOME,则默认为.config/nvim。

我相信你可以使用命令“set XDG_CONFIG_HOME={new config path}”在linux上设置全局变量


1
投票

假设您的正常 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
}     

这就是我最终所做的,因为环境变量干扰了我设置的其他一些奇怪的配置。


0
投票

nvim 有

-u vimrc
选项标志,用于使用 vimrc 而不是默认的 ~/.config/nvim/init.vim


0
投票

从 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
    用于缓存
© www.soinside.com 2019 - 2024. All rights reserved.