vim对同一文件夹中的2个不同文件使用不同的rc文件。怎么会?

时间:2017-01-24 18:43:21

标签: vim

我的主目录中有2个文本文件:file1.txt和fil2.txt。 我正在使用/ usr / bin / vim来打开它们。 在查找哪个是用于设置属性的最后一个脚本时(例如:详细设置textwidth?),它们会产生不同的结果。怎么会 ?该信息存储在哪里?

vim file1.txt

:verbose set textwidth?
  textwidth=78
        Last set from /etc/vimrc

vim file2.txt

:verbose set textwidth?
  textwidth=120
        Last set from ~/.exrc

只是添加到谜题或者可能有助于获得答案:如果我将file2.txt复制到新文件(即file3.txt),那么新文件将获得“来自/ etc / vimrc的最后一次设置”:< / p>

cp file2.txt file3.txt
vim file3.txt
:verbose set textwidth?
  textwidth=78
        Last set from /etc/vimrc

以下是我刚刚创建的新文件3.txt的更多信息:另一方面,如果我进入另一个Xterm,那么我创建新文件的Xterm会显示“来自/ etc / vimrc的最后一次设置”(让我们看看)称之为Xterm2)我刚刚打开并检查file3.txt它显示“最后设置来自〜/ .exrc”。所以答案必须与Xterm环境设置相关。 总结一下:

Xterm file2.txt -> ~/.exrc
Xterm file3.txt -> /etc/vimrc
Xterm2 file2.txt -> ~/.exrc
Xterm2 file3.txt -> ~/.exrc

2 个答案:

答案 0 :(得分:0)

  

该信息存储在哪里?

对于set命令的每个选项( set [option] ),vim保持与每个选项相关的特征。

其中一个特征是最后一组的脚本编号。

所以Vim不会在任何文件中保存该信息,它会直接将它们写在屏幕上。

如果您已设置verbosefile选项,则vim将复制根据文件中的详细级别verbose 命令显示的消息。< / p>

  

在查找哪个是用于设置的最后一个脚本时   属性(例如:详细设置textwidth?)它们产生不同   结果。怎么样?

您需要检查/etc/vimrc~/.exrc,插件和源文件,以了解设置textwidth选项的顺序,以便了解它为何是最后一个脚本设置它

答案 1 :(得分:0)

.exrc is the configuration file for vi, 
.vimrc is the config file for vim

因此,file1.txt被编辑并保存在vim中; file2.txt已编辑并保存在vi中。 (注意:vim将使用.vimrc配置文件,但如果它不存在,则会使用.exrc。)

textwidth=xxx是一个可以放在.vimrc或.exrc配置文件中的配置。