我一直在使用Vim,我真的很想保存我的设置。我遇到的问题是我找不到我的.vimrc文件,它不在标准的/home/user/。vimrc位置。我怎样才能找到这个文件?
当前回答
使用find命令可以获取有用的信息
find / -iname "*vimrc*" -type f 2>/dev/null
已经有很多答案了,但有时只需对包含“vimrc”名称的任何内容运行“find”就会很有用。
原因是,这将显示当前系统中实际可用的文件,而不是您可能放入系统中的文件。(你将从:版本中获得的信息,详见其他答案。)
我的系统上的示例结果
在我的系统上产生
/usr/share/vim/vim82/vimrc_example.vim
/usr/share/vim/vim82/gvimrc_example.vim
/etc/vim/gvimrc
/etc/vim/vimrc
/etc/vim/vimrc.tiny
这非常有用,因为它告诉我们在gvim和vim的共享目录中都安装了两个示例文件,并且在/etc/下还有一些系统范围的配置文件。
在我的系统上,我在~/上也有一个文件。vimrc,但它不会出现在这个列表中,因为它是到另一个文件的链接,存储在~/Linux-Config下。但是您不会有这个目录,它是特定于我在自己的网络上使用的机器。
使用find语法的详细说明
解释:
从根目录/开始查找(查找工作递归进行) 任何包含不区分大小写的regex *vimrc*的东西都可以在前面或后面加上任何东西或什么都没有(*) 类型=文件(不是目录/符号链接等) 将所有错误抛出到/dev/null,否则输出将充斥来自/proc的不可读错误
其他回答
简短的回答:
要创建您的vimrc,启动Vim并执行以下操作之一:
:e $HOME/.vimrc " on Unix, Mac or OS/2
:e $HOME/_vimrc " on Windows
:e s:.vimrc " on Amiga
插入您想要的设置,并保存文件。
注意,该文件的存在将禁用兼容选项。详情见下文。
长一点的回答:
vimrc有两种类型:
用户vimrc在$HOME $VIM中的系统vimrc(在Amiga系统上,s:。Vimrc被认为是一个用户
用户vimrc文件通常在用户创建之前并不存在。如果你找不到$HOME/。vimrc(或Windows上的$HOME/_vimrc),那么您就可以,而且可能应该只创建它。
系统vimrc通常不应该被修改,它位于$VIM*目录中。vimrc系统不是保存个人设置的好地方。如果您修改了这个文件,那么在升级Vim时,您所做的更改可能会被覆盖。此外,这里的更改将影响多用户系统上的其他用户。在大多数情况下,用户vimrc中的设置将覆盖系统vimrc中的设置。
help vimrc:
A file that contains initialization commands is called a "vimrc" file. Each line in a vimrc file is executed as an Ex command line. It is sometimes also referred to as "exrc" file. They are the same type of file, but "exrc" is what Vi always used, "vimrc" is a Vim specific name. Also see |vimrc-intro|. Places for your personal initializations: Unix $HOME/.vimrc or $HOME/.vim/vimrc OS/2 $HOME/.vimrc, $HOME/vimfiles/vimrc or $VIM/.vimrc (or _vimrc) MS-Windows $HOME/_vimrc, $HOME/vimfiles/vimrc or $VIM/_vimrc Amiga s:.vimrc, home:.vimrc, home:vimfiles:vimrc or $VIM/.vimrc The files are searched in the order specified above and only the first one that is found is read.
(在上述情况下,MacOS也算作Unix。)
注意,仅仅用户vimrc的存在就会通过关闭兼容选项来改变Vim的行为。From:help compatible-default:
当Vim启动时,“compatible”选项是打开的。这将在Vim 开始初始化。但是一旦找到用户vimrc文件,或者 vimrc文件在当前目录下,或者“VIMINIT”环境变量是 设置,它将被设置为'nocompatible'。这有设置或 重置其他选项(参见“compatible”)。但只能是有选择的 未设置或重置将被更改。
$VIM可能不在shell中设置,但总是在VIM中设置。如果你想查看它的设置,启动Vim并使用命令:echo $ Vim
从cmd (Windows):
C\Users\You> `vim foo.txt`
现在在Vim中,输入:":"(即Shift +;)进入命令模式。
:tabedit $HOME/.vimrc
在我的系统中,安装了Garuda Linux的文件名为file:///etc/xdg/nvim/sysinit。因此,尝试找到这个文件并添加您的自定义更改。
.vimrc文件在哪里?这取决于操作系统。如您所见,您正在寻找/home/$user/。vimrc,这可能意味着您正在使用BSD / Linux。这里是每个操作系统的位置…
BSD / Linux: /home/$user/.vimrc SunOS / Solaris: /export/home/$user/.vimrc MacOS: /Users/$user/.vimrc Android: /data/media/$userid/.vimrc Unix: $root/home/$user/.vimrc AT&T Unix: $root/usr/$user/.vimrc 源于unix: /var/users/用户/ . vimrc美元 / u01 /用户/ . vimrc美元 /usr/$用户/ . vimrc /用户/用户/ . vimrc美元 /用户/用户/美元。vimrc(来源:维基百科:每个操作系统的默认主目录。)
如果它不存在,使用~/.vimrc创建它。
此外,根用户有自己特殊的.vimrc文件,可以在/root/中找到。BSD / Linux上的vimrc(以及其他操作系统的等效位置)。
位置设置在$HOME变量中,该变量在Linux环境中总是设置的。(来源:StackExchange->Unix & Linux)
不幸的是,答案太多了,但没有一个对我有帮助。
直到我逃跑
:checkhealth
在vim中发现,在我的情况下,vim配置文件应该命名为init。Vim(在~/.config/nvim/init.vim下)。