Я хочу отредактировать файл .vimrc
от Vim и применить их без перезапуска Vim.
Можно ли использовать конфигурации vim без перезапуска?
Ответ 1
Да, просто используйте команду :so %
во время редактирования .vimrc.
Если вы хотите, чтобы vim автоматически перезагрузил вашу конфигурацию, вы должны добавить следующие команды:
augroup myvimrchooks
au!
autocmd bufwritepost .vimrc source ~/.vimrc
augroup END
группировка автокоманды здесь, чтобы избежать "экспоненциальной" перезагрузки, если вы сохраняете несколько раз свою конфигурацию.
Ответ 2
Здесь представлена более кросс-платформенная совместимая версия, если вы работаете на Mac/Windows/Linux и gvimrc
:
augroup myvimrc
au!
au BufWritePost .vimrc,_vimrc,vimrc,.gvimrc,_gvimrc,gvimrc so $MYVIMRC | if has('gui_running') | so $MYGVIMRC | endif
augroup END
Автомат отслеживает все потенциальные файлы *vimrc
, и когда он изменяется, он перезагружает файл vimrc
, за которым следует gvimrc
, если графический интерфейс работает.
Ответ 3
введите ваш файл vimrc :source ~/.vimrc
Ответ 4
" Quickly edit/reload this configuration file
nnoremap gev :e $MYVIMRC<CR>
nnoremap gsv :so $MYVIMRC<CR>
Чтобы автоматически перезагрузиться при сохранении, добавьте следующее в свой $MYVIMRC
:
if has ('autocmd') " Remain compatible with earlier versions
augroup vimrc " Source vim configuration upon save
autocmd! BufWritePost $MYVIMRC source % | echom "Reloaded " . $MYVIMRC | redraw
autocmd! BufWritePost $MYGVIMRC if has('gui_running') | so % | echom "Reloaded " . $MYGVIMRC | endif | redraw
augroup END
endif " has autocmd
а затем в последний раз введите:
:so %
В следующий раз, когда вы сохраните vimrc
, он будет автоматически перезагружен.
Особенности:
- Сообщает пользователю, что произошло (также регистрируется на
:messages
) - Обрабатывает различные имена для файлов конфигурации
- Обеспечивает соответствие только фактическому конфигурационному файлу (игнорирует копии в других каталогах или
fugitive://
diff) - Не будет генерировать ошибку при использовании
vim-tiny
Конечно, автоматическая перезагрузка произойдет, только если вы измените свой vimrc
в vim.
Ответ 5
autocmd! bufwritepost источник _vimrc%
это автоматически перезагрузит всю конфигурацию в файле _vimrc при сохранении