3

Поэтому, когда я нажимаю :set я вижу набор настроек, которых нет в моем файле ~/.vimrc . (Я думаю, это настройки, которые я установил много лет назад и не помню).

Итак, я делаю :version и получаю путь $VIM/vimrc , который, как говорят, является "откатным" редактором usr/share/vimrc . Это "система vimrc".

Я открываю последний путь, и тайные настройки не находятся в этом файле vimrc.

Единственный другой путь - это "пользовательский файл exrc" в $HOME/.exrc , который я понятия не имею, как туда добраться и что это такое.

У кого-нибудь есть идеи, откуда берутся настройки, которые появляются, когда я командую :set ?

Я на OS X (10.6).

3 ответа3

5

Есть несколько вещей, которые Vim устанавливает автоматически, если присутствует ~/.vimrc. Среди них есть 'nocompatible' который влияет на ряд других вариантов. Кроме того, Vim пытается определить правильные значения для других настроек в зависимости от среды. Например, Vim может автоматически определять правильное значение 'background' если оно вызывается из Xterm или совместимого эмулятора терминала. Настройки языка будут основаны на ваших переменных среды.

Наконец, вы можете запустить " :scriptnames ", чтобы увидеть, какие файлы были получены Vim с момента запуска. Это должно включать показ того, где находится система vimrc , если она существует.

1

Попробуйте /etc/vimrc как он используется по умолчанию для большинства дистрибутивов Linux, с которыми я сталкивался, и может также подходить для OS X.

1

Чтобы увидеть, где конкретный параметр был установлен в последний раз, выполните

:verbose set <option>?

Чтобы увидеть параметры, которые vim устанавливает самостоятельно, запустите vim как

vim -N -u NONE

затем выполнить :set . В моем случае, запустив Vim 7.3.487 в Linux, я вижу

:set
--- Options ---
  helplang=en         scroll=11           ttymouse=xterm2
noloadplugins         ttyfast
  fileencodings=ucs-bom,utf-8,default,latin1
  background=light

Чтобы узнать, почему какой-либо из них установлен таким образом, используйте :help . Например :help 'ttyfast' объясняет, что он установлен, потому что vim определил, что мой терминал - это xterm.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .