【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

相关推荐
幸运小圣2 天前
fs 模块完全指南:文件读写、移动删除与文件夹操作(新手友好)【Node.js】
node.js·编辑器·vim
笨笨饿4 天前
#142_VS Code.map文件插件的用法
git·python·stm32·单片机·嵌入式硬件·物联网·vim
挖掘狂人5 天前
编程语言的六十年:一部做减法的历史
程序员·vim·编程语言
灯澜忆梦10 天前
【Linux】#7 | vi/vim 编辑器
linux·编辑器·vim
zpjing~.~12 天前
Vim 高效批量替换实战:从 /dev/ 替换为 /dev-ai/
人工智能·编辑器·vim
幸运小圣15 天前
Buffer 新手入门【Node.js】
node.js·编辑器·vim
lzx_00215 天前
Linux 开发工具(二) 简单认识一下编辑器 —— vim
linux·编辑器·vim
此生决int16 天前
Linux系列(04)——基础开发工具(上)软件包管理器、vim、gcc/g++
linux·服务器·vim
geats人山人海17 天前
linux 2 基本操作与vim
linux·运维·vim
星恒随风21 天前
Linux开发工具详解(一):软件包管理、Vim、GCC/G++、Makefile与进度条实战
linux·运维·笔记·学习·vim