【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

相关推荐
码力全開12 分钟前
C 语言奇幻之旅 - 第16篇:C 语言项目实战
c语言·开发语言·数据库·windows·vscode·vim·visual studio
初学者丶一起加油3 小时前
C语言基础:野指针、空指针、空悬指针
java·linux·c语言·开发语言·数据结构·算法·vim
running thunderbolt15 小时前
Linux : Linux环境开发工具vim / gcc / makefile / gdb / git的使用
linux·git·vim
码力全開19 小时前
C 语言奇幻之旅 - 第06篇:C 语言控制流语句
c语言·开发语言·数据库·windows·visualstudio·vim
涛ing1 天前
10. C语言 函数详解
linux·c语言·开发语言·c++·vscode·ubuntu·vim
檀越剑指大厂2 天前
【Linux系列】Vim 编辑器中的高效文本编辑技巧:删除操作
linux·编辑器·vim
高铭杰4 天前
Postgresql源码(139)vim直接修改postgresql表文件的简单实例
数据库·postgresql·vim
安冬的码畜日常4 天前
【Vim Masterclass 笔记08】第 6 章:Vim 中的文本变换及替换操作 + S06L20:文本的插入、变更、替换,以及合并操作
笔记·vim
japrin5 天前
源代码编译安装X11及相关库、vim,配置vim(2)
linux·编辑器·vim
LLLuckyGirl~5 天前
node.js内置模块之---buffer 模块
linux·编辑器·vim