2012-06-06 4 views
279

Я использую Vim, и мне бы очень хотелось сохранить настройки. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу найти файл .vimrc, и он не находится в стандартном /home/user/.vimrc месте. Как я могу найти этот файл?Где мой .vimrc-файл?

+13

Если его нет, создайте его. –

+3

У меня была машина Ubuntu в файле с именем '/ usr/share/vim/vimrc'. – ckjbgames

ответ

315

Вам необходимо создать его. В большинстве установок, которые я использовал, он не был создан по умолчанию.

Обычно вы создаете его как: ~/.vimrc.

+0

См. Ответы @ philia-fan, ответ лучше – aturegano

261

:scriptnames список всех .vim-файлов, которые загрузил Vim для вас, включая файл .vimrc.

:e $MYVIMRC открытым & редактировать текущий .vimrc, что вы используете, а затем использовать Ctrl +G, чтобы просмотреть путь в строке состояния.

+29

Гораздо лучший ответ, чем принятый. –

+5

@MorganWilde Не обязательно, ': scriptnames' и': e $ MYVIMRC' оба возвращают пустые выходы для меня. – Rohmer

+0

то же, что и @Rohmer сказал здесь. –

4

Вот еще несколько советов:

  • В Arch Linux глобальный один находится в /etc/vimrc. Есть некоторые комментарии там с полезными подробностями.

  • Поскольку имя файла начинается с ., оно скрыто, если вы не используете ls -a, чтобы показать ВСЕ файлы.

  • Ввод :version В то время как в Vim вы увидите кучу интересной информации, включая расположение файла.

  • Если вы не уверены, что такое ~/.vimrclook at this question.

16
:echo($MYVIMRC) 

даст вам расположение файла .vimrc.

:e $MYVIMRC 

откроет его.

+1

Я возвращаю следующее: -bash: синтаксическая ошибка около неожиданного токена '$ MYVIMRC' –

+0

@YannisDran - Хм, что? – Rook

+0

@Idigas Я печатал: echo (xxx) в моем командном окне, но я понял, что вы хотели набрать это в редакторе vim. Однако, хотя: e xxx работает, echo (xxx) этого не делает. Он говорит, что E121 Undefined Variable: xxx E15: Invalid Expression: ($ xxx) –

22

В качестве дополнительной информации, в основном в MacOS, то .vimrc находится в директории:

/usr/share/vim/.vimrc 
+0

вот и все! спасибо –

+15

Это система vimrc. Лучше отредактировать $ HOME/.vimrc и создать его, если он еще не существует. –

+1

Если файл .vimrc не создан в домашнем каталоге, тогда vi ссылается на файл '/ usr/share/vim/.vimrc' для использования. – Sandeep

2

я попробовал все выше и не мог найти .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 
1

vimrc файл в Ubuntu (12.04): Я пробовал :scriptnames в vim, и он показывает как /usr/share/vim/vimrc, так и ~/.vimrc.

Но у меня было вручную создано ~/.vimrc.

59

Короткий ответ:

Чтобы создать vimrc, запустите Vim и выполните одно из следующих действий:

:e $HOME/.vimrc " on Unix, Mac or OS/2 

:e $HOME/_vimrc " on Windows 

:e s:.vimrc  " on Amiga 

Вставьте нужные параметры и сохраните файл.

Обратите внимание, что изъятие этого файла отключит опцию compatible. Подробнее см. Ниже.

Длинный ответ:

Есть два вида vimrc:

  • пользователь vimrc в $HOME
  • система vimrc в $VIM (в системах Amiga, s:.vimrc считается пользователь vimrc)

Пользовательский файл vimrc часто не существует до создания пользователем. Если вы не можете найти $HOME/.vimrc (или $HOME/_vimrc на Windows), то вы можете, возможно, просто создать его.

Система vimrc обычно должны быть оставлены без изменений и находится в каталоге $VIM ($VIM не может быть установлен в вашей оболочке, но всегда устанавливается внутри Vim.) Система vimrc не является хорошим местом, вам сохранить ваши личные настройки. Если вы измените этот файл, ваши изменения могут быть перезаписаны, если вы когда-либо обновите vim. Кроме того, изменения здесь повлияют на других пользователей в многопользовательской системе.

От :help vimrc:

Файл, содержащий команды инициализации называется файл "vimrc". Каждая строка в файле vimrc выполняется как командная строка Ex. Это иногда также называемый файлом "exrc". Они являются одним и тем же типом файла , но «exrc» - это то, что всегда использовал Vi, «vimrc» - это имя Vim. Также см. Vimrc-intro |.

Место для ваших личных инициализаций:

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 

файлы ищутся в порядке, указанном выше, и только первый один, который найден читаются.

(Mac OS X считается Unix для выше.)

Заметим, что само существование пользовательского vimrc изменит поведение Vim, отключив опцию compatible.От :help compatible-default:

Когда Vim запускается, включена опция «Совместимость». Это будет использоваться, когда Vim начнет инициализацию. Но как только будет найден пользовательский файл vimrc или файл vimrc в текущем каталоге, или переменная окружения «VIMINIT» будет установлена ​​ , она будет установлена ​​на «nocompatible». Это имеет побочный эффект настройки или , перезагружая другие параметры (см. «Совместимость»). Но будут изменены только параметры, которые не установлены или сброшены .

+2

Теперь, это хороший ответ. – Dinei

5

Я хотел бы поделиться, как я установил отображение номера строки по умолчанию на Mac.

  1. В терминале типа cd. Это поможет вам перейти в домашнюю папку.
  2. В терминале введите vi .vimrc. Это создаст пустой системный файл vimrc, который вы хотите использовать.
  3. В файле, введите set number, затем нажмите esc на клавиатуре и введите :wq. Это установит номер строки, указанный в файле настроек vimrc по умолчанию, и сохранит его.
  4. vi что посмотреть, работает ли это. Если нет, попробуйте полностью перезапустить терминал.

Если в терминале введите cd /usr/share/vim/ перейти в эту папку, то введите в ls, вы можете сразу увидеть файл с именем vimrc. Но это системный файл, который говорит только чтение. Я чувствую, что не стоит пытаться изменить его. Итак, следуйте приведенным выше шагам, чтобы создать vimrc самостоятельно. Это сработало для меня.

+0

Одна вещь, которую мне нужно было изменить выше для моей установки CentOS7: после шага 1 введите «cd username». – HoldOffHunger

9

По какой-то причине эти ответы не совсем сработали для меня. Это то, что работал для меня вместо того, чтобы:

В Vim, команда :version дает траектории системы и пользователя vimrc и gvimrc файлов (среди прочего), и результат выглядит примерно так:

system vimrc file: "$VIM/vimrc" 
    user vimrc file: "$HOME/.vimrc" 
    user exrc file: "$HOME/.exrc" 
system gvimrc file: "$VIM/gvimrc" 
    user gvimrc file: "$HOME/.gvimrc" 

один вы хотите user vimrc file: "$HOME/.vimrc"

Так редактировать файл: vim $HOME/.vimrc

Источник: http://vim.wikia.com/wiki/Vimrc

+2

Я не понимаю, как существующие ответы не совсем сработали для вас, когда на самом деле решение, которое вы предложили, уже покрыто ими. [Этот ответ] (https://stackoverflow.com/a/34005877/1743811) упоминает '$ HOME/.vimrc' и [верхний ответ] (https://stackoverflow.com/a/10921485/1743811) упоминает' ~/.vimrc', который совпадает с '$ HOME/.vimrc'. – doubleDown

+0

Полностью согласен с вами. То, что я хотел сказать, было потеряно, когда мой ответ был отредактирован –

0

Из ЦМД: (окна):

C \ Users \ You>vim foo.txt

Сейчас в Vim, введите командный режим, набрав: ":" (т.е. сдвиг + ";")

:tabedit $HOME/.vimrc 
0

Открыть Вим, в нормальном режиме типа;

:echo $VIM