Не читать ~/.vimrc
У меня есть файл ~/.vimrc, который vim, кажется, не читает.
В файле /etc/vimrc есть файл, и похоже, что он использует этот файл.
Я понимаю, что тот, который находится в домашнем каталоге, должен переопределить это, не так ли?
Обновление
cat vim_strace | grep .vimrc
stat64("/etc/vimrc", {st_mode=S_IFREG|0644, st_size=1438, ...}) = 0
open("/etc/vimrc", O_RDONLY|O_LARGEFILE) = 3
stat64("/etc/vimrc", {st_mode=S_IFREG|0644, st_size=1438, ...}) = 0
stat64("/root/.vimrc", {st_mode=S_IFREG|0644, st_size=35, ...}) = 0
open("/root/.vimrc", O_RDONLY|O_LARGEFILE) = 3
stat64("/root/.vimrc", {st_mode=S_IFREG|0644, st_size=35, ...}) = 0
Ответы
Ответ 1
если вы работаете в Linux и хотите узнать, обращается ли vim к вашему ~/.vimrc при запуске, вы можете запустить его с помощью strace:
strace -o vim_strace vim
затем выйдите из vim.
Откройте файл vim_strace и найдите "vimrc" в файле. вы должны найти такую строку
stat64("/home/youruser/.vimrc", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
что означает, что по крайней мере vim видит файл.
Ответ 2
Как только вы загрузили vim, :scriptnames
расскажет вам, что именно прочитал Vim.
Для меня это начинается следующим образом:
1: /Applications/MacVim.app/Contents/Resources/vim/vimrc
2: ~/.vimrc
3: /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/syntax.vim
4: /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/synload.vim
5: /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/syncolor.vim
ЕСЛИ вы хотите проверить, где установлен какой-либо конкретный параметр, используйте "подробный набор". Например, :verbose set background
говорит мне:
background=light
Last set from ~/.vimrc
поэтому я знаю, что моя настройка в ~/.vimrc читается и что ни один из более поздних файлов не сжимает ее.
Ответ 3
У меня была эта проблема, и я добавил в файл ~/.bash_profile
следующее:
alias vim="vim -S ~/.vimrc"
Ответ 4
Если кто-то столкнулся с этой проблемой во время использования neovim, вы должны знать (прежде чем вы начнете стягивать волосы), что файл .vimrc
загружен из ~/.config/nvim/init.vim
.
mkdir -p ~/.config/nvim; ln -s ~/.vimrc ~/.config/nvim/init.vim
Ответ 5
Просто добавьте инструкцию hellvinz.
После создания файла vim_strace.
cat vim_strace | grep.vimrc
облегчает жизнь:)
Ответ 6
В OSX 10.8.0 расположение файла vimrc:/usr/share/vim/vimrc
Я просто добавляю свои изменения в нижнюю часть файла.
Конечно, это влияет на внесение изменений для всех пользователей. Для жизни меня я не могу понять, как заставить его читать ~/.vimrc. Это никогда не было проблемой для меня на 10.6.x
В любом случае это быстрое исправление, даже если оно немного грязно.
Приветствия
Ответ 7
Если кто-то еще сталкивается с этой проблемой, и, как я понимаю, vimrc
не был прочитан из-за sudo, попробуйте использовать sudo -E
. Он сохраняет вашу среду для команды, а $HOME
укажет на ваш собственный домашний каталог. Обратите внимание, что это может не работать в средах, где /home
монтируется с корневым резервированием.
Ответ 8
используйте файл /etc/vim/vimrc.local в Ubuntu
Ответ 9
на моем Debian с VIM73 после попытки решения с .vimrc так:
Я запускаю поиск
find / -name vimrc
и найден. /etc/vim/vimrc
откройте его и поймите, что переопределит другие настройки
просто раскомментируйте "
некоторые полезные настройки, которые вы хотите
Ответ 10
Проверьте, был ли установлен $VIMINIT
. Это может помешать чтению вашего ~/.vimrc
. Смотрите :help VIMINIT
:
c. Four places are searched for initializations. The first that exists
is used, the others are ignored. [...]
- The environment variable VIMINIT [...]
Для меня VIMINIT
сделал VIMINIT
дело, мой ~/.vimrc
теперь читается.
Ответ 11
После проверки scriptnames
и verbose
как предложено выше, я заметил, что мои настройки действительно загружаются, но переопределяются другим плагином, создавая впечатление, что он не читает/не загружает .vimrc
.
Если это произойдет с вами, и вы захотите переопределить определенный параметр из плагина, без полного исключения всех других полезных вещей, которые приходят из этого плагина, вы можете создать файл конфигурации для загрузки после загрузки плагина, создав файл в ~/.vim/after/<path>/<plugin_name>
. Для справки смотрите этот другой вопрос.