【vim 学习系列文章 12 -- vimrc 那点事】

文章目录

    • [系统级及本地 vimrc 文件](#系统级及本地 vimrc 文件)
    • [设置 vimrc 的路径](#设置 vimrc 的路径)

上篇文章:【vim 学习系列文章 11 -- vim filetype | execute | runtimepath 详细介绍】

系统级及本地 vimrc 文件

当 Vim 启动时,编辑器会去搜索一个系统级的 vimrc 文件来进行系统范围内的默认初始化工作。

这个文件通常在你系统里 $VIM/vimrc 的路径下,如果没在那里 ,那你可以通过在 Vim 里面运行 :version命令来找到它的正确存放位置。比如说,在我这里,这个命令的相关部分的输出结果如下:

csharp 复制代码
:version
... ... ... 
system vimrc file: "$VIM/vimrc" 
user vimrc file: "$HOME/.vimrc" 
2nd user vimrc file: "~/.vim/vimrc" 
user exrc file: "$HOME/.exrc" 
fall-back for $VIM: "/usr/share/vim" 
... ... ...

可以看到那个系统 vimrc 文件确实位于 $VIM/vimrc ,但我检查了我机子上没设置过$VIM 环境变量。所以在这个例子里 - 正如你在上面的输出所看到的 - $VIM 在我这的路径是 /usr/share/vim,是一个回落值(LCTT 译注:即如果前面失败的话,最终采用的结果)。

于是我试着在这个路径寻找 vimrc ,我看到这个文件是存在的。如上即是我的系统 vimrc 文件,就如前面提过的那样 - 它在 Vim 启动时会被读取。

在这个系统级 vimrc 文件被读取解析完后,编辑器会查找一个用户特定的(或者说本地的)vimrc 文件。

这个本地 vimrc 的搜索顺序是 :环境变量 VIMINIT$HOME/.vimrc、环境变量 EXINIT, 和一个叫 exrc的文件。

通常情况下,会存在 $HOME/.vimrc~/.vimrc这样的文件,这个文件可看作是本地 vimrc。

设置 vimrc 的路径

如上文所述,在 Vim 中,.vimrc 文件是用户配置文件,用于存放 Vim 的个性化设置。这个文件通常位于用户的主目录下(也就是 ~/.vimrc)。然而,如果你想要更改 .vimrc 文件的位置 ,你可以设置 VIMINIT 环境变量。 VIMINIT 环境变量包含了在 Vim 启动时会被执行的 Vim 命令。

例如,如果你想让 Vim 使用位于 /path/to/your/vimrc 的配置文件,你可以设置 VIMINIT 环境变量如下:

c 复制代码
export VIMINIT='source /path/to/your/vimrc'

你可以将这行命令添加到你的 .bashrc.bash_profile 文件中(取决于你的系统和shell),以确保每次启动新的 shell 时 VIMINIT 都会被设置。

然后,当你启动 Vim 时,它会执行 VIMINIT 环境变量中的命令,也就是 source /path/to/your/vimrc,从而加载你指定的 .vimrc 文件。
需要注意的是,.vimrc 文件中的配置仍然会影响到 Vim 的全局设置,所以在多用户环境下要谨慎使用这种方法。

上篇文章:【vim 学习系列文章 11 -- vim filetype | execute | runtimepath 详细介绍】

推荐阅读
https://jingyan.baidu.com/article/ce09321b63863c2bfe858f61.html

相关推荐
智渊AI6 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
硬汉嵌入式7 天前
Vim 9.2版本正式发布
编辑器·vim
学嵌入式的小杨同学7 天前
嵌入式硬件开发入门:PCB 设计核心流程 + 基础元器件实战指南
vscode·后端·嵌入式硬件·架构·vim·智能硬件·pcb工艺
Eternity∞8 天前
数据结构基础
c语言·开发语言·数据结构·学习·vim
晚风_END12 天前
Linux|操作系统|小技巧---vim编辑的脚本自动添加shebang 和注释
linux·运维·vim
我怎么又饿了呀12 天前
Linux 下 的Vim/Vi 操作指南
linux·运维·vim
QmZVLlLHvXq14 天前
3D CNN-GRU-Att结合模型:负荷预测、PM2.5预测、光伏预测等实验的代码实现
vim
承渊政道16 天前
Linux系统学习【深入剖析Git的原理和使用(下)】
linux·服务器·git·学习·gitee·vim·gitcode
嵌入小生00717 天前
线程 --- 嵌入式(Linux)
linux·vscode·vim·嵌入式·线程·进程
蜡笔小炘19 天前
Haproxy -- 动/静/混合态算法实验
运维·服务器·vim·haproxy