【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

相关推荐
weiwx8311 小时前
【前端】Node.js使用教程
前端·node.js·vim
蜜汁小强1 天前
Vim简单配置: 加点颜色加点格式
编辑器·vim·excel
i学长的猫2 天前
PM2 管理 Cloudflared 隧道 Neo-mac 及后台运行
linux·编辑器·vim
海天一色y2 天前
Vim 编程完全指南:从入门到精通
编辑器·vim·excel
老一岁2 天前
linux vim及ps到tar包的详解
linux·运维·vim
进击切图仔2 天前
ubuntu 离线安装包,以 vim 为例
linux·ubuntu·vim
智渊AI15 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
硬汉嵌入式16 天前
Vim 9.2版本正式发布
编辑器·vim
学嵌入式的小杨同学16 天前
嵌入式硬件开发入门:PCB 设计核心流程 + 基础元器件实战指南
vscode·后端·嵌入式硬件·架构·vim·智能硬件·pcb工艺
Eternity∞17 天前
数据结构基础
c语言·开发语言·数据结构·学习·vim