В Vim можно изменить местоположение по умолчанию файла vimrc пользователя, то есть из $HOME/.vimrc в другое место?
Изменить местоположение по умолчанию vimrc
Ответ 1
Вы должны запустить vim с помощью команды vim -u ./path/to/your/vimrcfile
vim -u NONE
- хороший способ запустить Vim без плагинов или настроек.
Подробнее см. :help starting.txt
.
Ответ 2
Другим решением может быть создание symlink
на ваше предпочтительное местоположение. У меня есть мой .vimrc
в $HOME/.vim/.vimrc
и symlink
на него. Таким образом, я могу сделать это в git-репо и сделать резервную копию.
Ответ 3
Переменная VIMINIT
- мой предпочтительный метод. Проблема с наложением псевдонима vim с флагом -u
заключается в том, что если vim открывается каким-либо иным способом, кроме команды оболочки, ваша конфигурация не будет задействована. Установка $ VIMINIT не имеет этого недостатка. Проверьте это для получения дополнительной информации.
export VIMINIT='source $MYVIMRC'
export MYVIMRC='~/.vim/vimrc' #or any other location you want
Обратите внимание, что Vim обычно устанавливает переменную MYVIMRC
, хотя я точно не знаю, для чего она использовалась. Исходя из моего тестирования, использование VIMINIT
таким образом приведет к тому, что он не будет автоматически установлен при запуске, как обычно. Вот почему я устанавливаю это сам.
Это работает и для неовим!
Ответ 4
В Windows у меня есть _vimrc
, который в моем домашнем каталоге содержит одну строку, source c:\path\to\my.vimrc
.
Я еще не разработал хороший способ переместить всю папку vimfiles, но это менее критично, поскольку все, что я установил из других источников. I.e., было бы легко восстановить, если бы я потерял его. (Я знаю, что я могу изменить runtimepath
, но моя проблема больше подходит для "хорошего" способа сделать это.)
Обновление
Через шесть лет я немного отклонился от того, что я упоминаю в комментариях ниже; поскольку я помещал вещи в "after" и хотел просто сохранить rtp
чистый, я получил то, что было твердое время на некоторое время. Сегодня в моем %USERPROFILE%\_vimrc
я делаю hardcode фактические пути к вещам, и он изменяется на каждой машине, которую я использую (и я в основном делаю то же самое на * nix), но это копируется вокруг в основном вручную при настройке нового ПК. У меня также есть версия, которую я могу использовать для запуска Vim на другом подключенном компьютере в сети, например. машина для совместной работы, поэтому я получаю свой конфиг и все такое, но суть такова:
set runtimepath^=E:/dotfiles/vim
set runtimepath+=E:/dotfiles/vim/after
set runtimepath-=~/vimfiles
set runtimepath-=~/vimfiles/after
runtime vimrc
а затем %USERPROFILE%\_gvimrc
имеет только одну строку:
runtime gvimrc
(Оба vimrc
и gvimrc
находятся в папке /dotfiles/vim
, а также в Bitbucket.)
Ответ 5
Я вижу два варианта, в зависимости от ваших потребностей.
- Имейте ~/.vimrc импортировать другое местоположение
- создать псевдоним в вашем алиасе bashrc vim = "vim -u otherlocation"
Ответ 6
Я отредактировал
C:\Program Files\Vim\_vimrc
и изменил оба пути выполнения и получил собственный .vimrc.
Я также использую эти настройки в Cygwin (и контролирую их версию). Так это на практике (добавлено в нижней части файла _vimrc):
let &runtimepath = 'C:\cygwin\home\cygwinaccount\.vim,' . &runtimepath
source C:\cygwin\home\cygwinaccount\.vimrc
Блаженство!:)
Ответ 7
В linux:
Вы можете отредактировать .bashrc
или .zshrc
startup script и добавить следующие строки, чтобы изменить местоположение файла .vimrc по умолчанию
export VIMINIT='source $MYVIMRC'
export MYVIMRC='~/.vim/.vimrc' # Note the . (dot) before vimrc. If that is what you have called it.