我想从Vim编辑.vimrc
文件,并在不重新启动Vim的情况下应用它们。是否可以在不重新启动的情况下应用vim配置?
回答
是,只需要使用:so %
命令而编辑的.vimrc。
如果你想Vim自动重新加载您的配置,您必须添加以下命令:
augroup myvimrchooks
au!
autocmd bufwritepost .vimrc source ~/.vimrc
augroup END
自动命令的分组是在这里,以避免“指数”重装,如果你多次保存您的配置。
源vimrc文件:source ~/.vimrc
在windows上,只是:so〜/ _vimrc – 2017-11-08 17:15:13
这里有一个更多的跨平台兼容的版本,如果你在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
文件之后如果GUI正在运行,则为gvimrc
。
我没有得到你的命令。 $ MYGVIMRC在哪里定义? – 2010-06-18 14:18:09
当GUI Vim启动时它被设置。请参阅::help gvimrc' – matpie 2010-06-21 16:54:30
FANTASTIC,谢谢。如果你这样做,避免我刚刚犯下的大脑放屁...我打开gvim,将其添加到我的vimrc,然后试图确认它工作。没有... 20分钟后,我意识到自从忘记添加AUTOCMD之后,忘了文件的来源。一旦我这样做了,当然,一切都奏效了。我想这对我来说太过分了,我有一个心理上的“堆栈溢出”。 – 2010-12-05 05:50:30
autocmd! BufWritePost里_vimrc源%
这将自动重装在_vimrc文件中的所有配置在您保存
" 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://
差异) - 如果使用
vim-tiny
0将不会生成错误
当然,只有在vim中编辑你的vimrc
才会发生自动重载。
这似乎只在文件全部打开的'vim'的同一个实例中编辑'$ MYVIMRC'时才起作用。例如,如果他们在不同的终端中,那么我仍然需要手动发送'$ MYVIMRC'。有没有办法解决这个问题? – 2017-02-04 02:31:50
不是我所知道的 - 当当前的'vim'写出文件时,这种方法是有效的。可能会监视文件本身的mtime,但不确定如何在不进行异步轮询的情况下执行此操作。 – 2017-02-04 04:26:57
- 1. Solr是否可以在不重新启动Solr的情况下加载新的log4j.properties配置文件?
- 2. 是否可以在不重新启动进程的情况下重新启动Azure Web角色上的IIS?
- 3. 我可以在不重新启动Jetty服务器的情况下更新应用程序配置文件吗?
- 4. 是否可以在不重新启动JSF服务器的情况下更新应用程序?
- 5. 在不重新启动的情况下应用vimrc更改
- 6. 您是否可以在不重新启动IIS的情况下在IIS 6中启用HTTP压缩?
- 7. 在不重新启动服务的情况下更新mongod配置
- 8. 如何在不重新启动的情况下刷新MySQL配置文件?
- 9. 是否可以在不重新启动Django的情况下重新加载视图?
- 10. 是否可以在不重新启动整个动画的情况下更新DoubleAnimation.FromProperty?
- 11. 在不重新启动Xorg的情况下重新加载XINITRC
- 12. 是否可以在不使用SIGHUP的情况下立即启动pthread?
- 13. 是否可以在不重写代码的情况下重新调整Qt GUI?
- 14. 如何在不重新启动的情况下“重新启动”Internet Explorer服务
- 15. 我可以在不重新启动我的项目的情况下添加servlet
- 16. 在不重新启动活动的情况下恢复活动
- 17. 在不重新启动VIM的情况下更改NERDTree〜/ .vimrc选项
- 18. 在不重新启动C#应用程序的情况下刷新GAC引用
- 19. 在不重新启动lighty的情况下更新.po文件
- 20. 是否可以在不调用新活动的情况下获取对象值?
- 21. 是否可以在不重新启动整个Liferay门户的情况下反映portal-ext.properties中的更改?
- 22. 是否可以在不启动npm的情况下运行React项目?
- 23. 是否可以在不重新编译的情况下更改exe的图标?
- 24. Android:是否可以在不重新采样的情况下绘制大图像?
- 25. pgbouncer可以在不重启的情况下重新读取/ etc/hosts文件
- 26. 是否可以在不导致IIS重置的情况下部署SharePoint WSP?
- 27. 是否可以在不使用Rails的情况下使用FactoryGirl?
- 28. 是否可以在不禁用JavaScript的情况下禁用AJAX?
- 29. 如何在不重新启动设备的情况下重新启动应用程序系统?
- 30. 在不重新启动Servlet容器的情况下重新加载/刷新Spring配置文件
注意,这对'gvimrc'不起作用,或者如果你的文件被称为'_vimrc'或'vimrc',或者你编辑另一个名为'.vimrc'的文件目录。请参阅我的答案以解决这些问题。 – 2016-09-04 02:57:37