Я использовал Vim , и я действительно хотел бы сохранить свои настройки. Проблема в том, что я не могу найти свой файл .vimrc, и он не находится в стандартном /home/user/.vimrcместе. Как я могу найти этот файл?
@MorganWilde Не обязательно, :scriptnamesи :e $MYVIMRCоба возвращают пустые результаты для меня.
Rohmer
1
+1 за :scriptnames. Однако $MYVIMRCне гарантируется его установка, например, при запуске vim с vim -u filename.
1983
4
: scriptnames имеет vimrc, но не .vimrc, они одинаковы? Я нахожу их в моей папке usr / share, будет ли добавление ~ / .vimrc (как принятый ответ) вообще что-то делать без дальнейшей настройки? Возможно, это способ добавить пользовательские параметры в vimrc?
Тайлер
15
Обратите внимание, что :e $MYVIMRCработает только тогда, когда есть vimrcфайл в первую очередь. В противном случае начнется редактирование файла с буквальным названием $MYVIMRC.
Томалак
1
@Shadoninja - это не «твое», это глобальный rcфайл. Все, что вы определяете в своем .vimrcфайле (в большинстве случаев в вашем домашнем каталоге), переопределяет значения по умолчанию в /etc/vimrc.
mathguy
92
Короткий ответ:
Чтобы создать 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* . Система vimrc не подходит для хранения ваших личных настроек. Если вы измените этот файл, ваши изменения могут быть перезаписаны при обновлении Vim. Кроме того, изменения здесь коснутся других пользователей многопользовательской системы. В большинстве случаев настройки в пользовательском vimrc переопределяют настройки в системном vimrc.
От :help vimrc:
Файл, содержащий команды инициализации, называется файлом «vimrc». Каждая строка в файле vimrc выполняется как командная строка Ex. Иногда его также называют файлом "exrc". Это файлы одинакового типа, но Vi всегда использовал exrc, а 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
Файлы ищутся в порядке, указанном выше, и читается только первый найденный файл.
(MacOS считается Unix для выше.)
Обратите внимание, что само существование пользователя vimrc изменит поведение Vim, отключив эту compatibleопцию. От :help compatible-default:
Когда Vim запускается, опция «совместимый» включена. Это будет использоваться, когда Vim начнет свою инициализацию. Но как только будет найден пользовательский файл vimrc, или файл vimrc в текущем каталоге, или переменная окружения "VIMINIT", он будет установлен как nocompatible. Это имеет побочный эффект установки или сброса других параметров (см. «Совместимые»). Но будут изменены только те параметры, которые не были установлены или сброшены.
* $VIMне может быть установлен в вашей оболочке, но всегда устанавливается внутри Vim. Если вы хотите увидеть, на что он настроен, запустите Vim и используйте команду:echo $VIM
Я возвращаю следующее: -bash: синтаксическая ошибка рядом с неожиданным токеном '$ MYVIMRC'
Яннис Дран
@YannisDran - Хм, а что?
Ладья
@Idigas Я набирал: echo (xxx) в моем командном окне, но теперь я понял, что вы хотели напечатать это в редакторе vim. Однако, хотя: e xxx работает, а: echo (xxx) - нет. Там написано E121 Неопределенная переменная: xxx E15: Неверное выражение: ($ xxx)
Яннис Дран
@YannisDran - Просто чтобы прояснить, вы получили эту ошибку при вводе: echo ($ myvimrc) в командной строке vim? Не: echo (myvimrc) случайно?
Ладья
1
Я использую $, и я сделал это в редакторе vi (набрав: включает командную строку). Кстати, теперь vim ничего не отвечает, он только помещает индикатор в первую строку vim. (Vim-Vi улучшен v.7.3 для OSX)
Яннис Дран
15
По какой-то причине эти ответы не совсем сработали для меня. Вот что сработало для меня вместо этого:
В 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
Я не понимаю, как существующие ответы не совсем сработали для вас, когда фактически предложенное вами решение уже покрыто ими. В этом ответе упоминается, $HOME/.vimrcа в верхнем ответе упоминается ~/.vimrcто же самое, что и $HOME/.vimrc.
DoubleDown
Полностью с тобой согласен. То, что я хотел сказать, было потеряно, когда мой ответ был отредактирован
Для меня это только вывод /usr/share/vim. Версия 8.2.100, Arch Linux.
Ярослав Никитенко
Это говорит вам о том, в каком каталоге находится ваша система vimrc, но не указывает, куда должен идти ваш пользователь vimrc или как должно быть его имя.
Лоуренс Гонсалвес
Что ж, вопрос «где» - это файл vimrc. Куда должен пойти пользователь vimrc? Поместите это в ~/.vimrcили ~/.vim/vimrc, заметьте, что у последнего нет точки перед этим.
ADEM
8
на 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"
Можно убедиться, что это работает с VIM, который поставляется вместе с Git для Windows. (Отмечая это только потому, что такой ответ может предполагать, что НЕ работает в Git Bash.)
Джанет
5
Вот еще несколько советов:
В Arch Linux глобальный находится на /etc/vimrc. Там есть несколько комментариев с полезными деталями.
Поскольку имя файла начинается с a ., оно скрыто, если вы не используете ls -aдля отображения ВСЕХ файлов.
Печатая в :versionто время как в Vim покажет вам кучу интересной информации, включая местоположение файла.
Я хотел бы поделиться тем, как я установил отображение номера строки по умолчанию на Mac.
В терминале введите cd. Это поможет вам перейти в домашнюю папку.
В терминале введите vi .vimrc. Это создаст пустой системный файл vimrc, который вы хотите использовать.
В файле введите set number, а затем нажмите Escна клавиатуре и введите :wq. Это установит номер строки, показанный в файле настроек по умолчанию, vimrcи сохранит его.
vi somethingчтобы увидеть, если это работает. Если нет, попробуйте перезагрузить терминал полностью.
Если в терминале, введите cd /usr/share/vim/, перейдите в эту папку и введите ls. Вы можете непосредственно увидеть файл с именем vimrc. Но это системный файл, который говорит только для чтения. Я чувствую, что не стоит пытаться изменить его. Так что, следуя вышеприведенным шагам, лучше создать vimrc самостоятельно. Это сработало для меня.
/usr/share/vim/vimrc
.Ответы:
Вы должны создать это. В большинстве установок, которые я использовал, он не был создан по умолчанию.
Вы обычно создаете это как
~/.vimrc
.источник
/etc/vim/vimrc
или скопировать это~/.vimrc
? Или я могу иметь оба?Эти методы работают, если у вас уже есть файл .vimrc:
:scriptnames
перечислите все файлы .vim, которые Vim загрузил для вас, включая ваш.vimrc
файл.:e $MYVIMRC
откройте и отредактируйте текущий .vimrc, который вы используете, затем используйте Ctrl+ Gдля просмотра пути в строке состояния.источник
:scriptnames
и:e $MYVIMRC
оба возвращают пустые результаты для меня.:scriptnames
. Однако$MYVIMRC
не гарантируется его установка, например, при запуске vim сvim -u filename
.:e $MYVIMRC
работает только тогда, когда естьvimrc
файл в первую очередь. В противном случае начнется редактирование файла с буквальным названием$MYVIMRC
.rc
файл. Все, что вы определяете в своем.vimrc
файле (в большинстве случаев в вашем домашнем каталоге), переопределяет значения по умолчанию в/etc/vimrc
.Короткий ответ:
Чтобы создать vimrc, запустите Vim и выполните одно из следующих действий:
Вставьте нужные настройки и сохраните файл.
Обратите внимание, что наличие этого файла отключит эту
compatible
опцию. Смотрите ниже для деталей.Длинный ответ:
Существует два вида vimrc:
$HOME
$VIM
(в системах Amiga,s:.vimrc
считается пользователь vimrc)Пользовательский файл vimrc часто не существует, пока не создан пользователем. Если вы не можете найти
$HOME/.vimrc
(или$HOME/_vimrc
в Windows), вы можете, и, вероятно, должны просто создать его.Системный vimrc обычно следует оставить без изменений и находится в каталоге
$VIM
* . Система vimrc не подходит для хранения ваших личных настроек. Если вы измените этот файл, ваши изменения могут быть перезаписаны при обновлении Vim. Кроме того, изменения здесь коснутся других пользователей многопользовательской системы. В большинстве случаев настройки в пользовательском vimrc переопределяют настройки в системном vimrc.От
:help vimrc
:(MacOS считается Unix для выше.)
Обратите внимание, что само существование пользователя vimrc изменит поведение Vim, отключив эту
compatible
опцию. От:help compatible-default
:*
$VIM
не может быть установлен в вашей оболочке, но всегда устанавливается внутри Vim. Если вы хотите увидеть, на что он настроен, запустите Vim и используйте команду:echo $VIM
источник
В качестве дополнительной информации, в основном в macOS, файл .vimrc находится в каталоге:
источник
/usr/share/vim/.vimrc
файл для использования.даст вам местоположение вашего файла .vimrc.
открою это.
источник
По какой-то причине эти ответы не совсем сработали для меня. Вот что сработало для меня вместо этого:
В Vim
:version
команда дает вам пути к системным и пользовательским файлам vimrc и gvimrc (среди прочего), и результат выглядит примерно так:Тот, который вы хотите, это
user vimrc file: "$HOME/.vimrc"
Итак, чтобы отредактировать файл:
vim $HOME/.vimrc
Источник: Открыть файл vimrc
источник
$HOME/.vimrc
а в верхнем ответе упоминается~/.vimrc
то же самое, что и$HOME/.vimrc
.Откройте Vim и в обычном режиме введите:
источник
/usr/share/vim
. Версия 8.2.100, Arch Linux.~/.vimrc
или~/.vim/vimrc
, заметьте, что у последнего нет точки перед этим.на Unix
vim --version
сообщает вам различные местоположения конфигурационных файлов VIM:источник
Вот еще несколько советов:
В Arch Linux глобальный находится на
/etc/vimrc
. Там есть несколько комментариев с полезными деталями.Поскольку имя файла начинается с a
.
, оно скрыто, если вы не используетеls -a
для отображения ВСЕХ файлов.Печатая в
:version
то время как в Vim покажет вам кучу интересной информации, включая местоположение файла.Если вы не уверены, что
~/.vimrc
значит посмотрите на этот вопрос .источник
Я хотел бы поделиться тем, как я установил отображение номера строки по умолчанию на Mac.
cd
. Это поможет вам перейти в домашнюю папку.vi .vimrc
. Это создаст пустой системный файл vimrc, который вы хотите использовать.set number
, а затем нажмите Escна клавиатуре и введите:wq
. Это установит номер строки, показанный в файле настроек по умолчанию,vimrc
и сохранит его.vi something
чтобы увидеть, если это работает. Если нет, попробуйте перезагрузить терминал полностью.Если в терминале, введите
cd /usr/share/vim/
, перейдите в эту папку и введитеls
. Вы можете непосредственно увидеть файл с именем vimrc. Но это системный файл, который говорит только для чтения. Я чувствую, что не стоит пытаться изменить его. Так что, следуя вышеприведенным шагам, лучше создать vimrc самостоятельно. Это сработало для меня.источник
Я попробовал все в предыдущем ответе и не смог найти
.vimrc
файл, поэтому мне пришлось его создать.Я скопировал файл примера
cp vimrc_example.vim ~/.vimrc
.Я должен был создать файл, копируя из
/usr/share/vim/vim74/vimrc_example.vim
в~/.vimrc
. Это были инструкции вvimrc_example
файле.Мое решение для Unix для других операционных систем. Согласно документации Vim, ваш путь назначения должен быть следующим:
источник
Из cmd (Windows):
Теперь в Vim войдите в командный режим, набрав: " : " (т.е. Shift+ ;)
источник
Vimrc файл в Ubuntu ( 12.04 (Precise Pangolin) ) : Я пытался
:scriptnames
в Vim, и это показывает , как/usr/share/vim/vimrc
и~/.vimrc
.Но я создал вручную
~/.vimrc
.источник
В SUSE Linux Enterprise Server (SLES) и openSUSE глобальный сервер находится по адресу
/etc/vimrc
.Чтобы отредактировать это, просто сделайте
vi /etc/vimrc
.источник