我一直在使用Vim,我真的很想保存我的设置。我遇到的问题是我找不到我的.vimrc文件,它不在标准的/home/user/。vimrc位置。我怎样才能找到这个文件?
当前回答
如果你已经有一个.vimrc文件,这些方法是有效的:
:scriptnames列出了Vim为你加载的所有. Vim文件,包括你的.vimrc文件。
:e $MYVIMRC打开并编辑您正在使用的当前。vimrc,然后使用Ctrl + G在状态栏中查看路径。
其他回答
实际上你有一个vimrc
/etc/vimrc
当你在那里编辑一些东西时,更改将影响所有用户 如果你不想这样做,你可以在里面创建一个本地vimrc
~ / . vimrc
这里的更改只会影响一个用户
我尝试了上一个答案中的所有方法,但没有找到.vimrc文件,所以我必须创建一个。
我复制了示例文件cp vimrc_example。vim ~ / . vimrc。
我必须创建文件,从/usr/share/vim/vim74/vimrc_example复制。Vim到~/.vimrc。这些是vimrc_example文件中的指令。
我的解决方案是适用于Unix的其他操作系统。根据Vim文档,您的目标路径应该如下所示:
For Unix and OS/2 : ~/.vimrc
For Amiga : s:.vimrc
For MS-DOS and Win32: $VIM\_vimrc
For OpenVMS : sys$login:.vimrc
不幸的是,答案太多了,但没有一个对我有帮助。
直到我逃跑
:checkhealth
在vim中发现,在我的情况下,vim配置文件应该命名为init。Vim(在~/.config/nvim/init.vim下)。
在Unix上vim——version会告诉你vim配置文件的不同位置:
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
defaults file: "$VIMRUNTIME/defaults.vim"
fall-back for $VIM: "/usr/share/vim"
使用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的不可读错误