有没有办法根据文件类型,自动加载和禁用插件?
vim吧
全部回复
仅看楼主
level 3
yuloo911
楼主
是这样的,目前我在写reStructed text(就是rst), 用了插件riv, 但是我想只有打开rst文件的时候才启用riv,当文件类型不是rst的时候,就禁用riv。
目前我用NeoBundle的NeoBundleLazy命令可以实现只有打开rst文件的时候才启用riv,但是自动禁用功能我还不知道怎么实现。貌似插件一旦被启用就不能被禁用了?
这个问题也可以变换为,使某个插件仅对当前buffer有效。但是我不知道怎么实现。
不知道有没有人知道怎么解决这个问题?
2014年11月05日 02点11分
1
level 12
wangjun403
插件无法禁用
2014年11月05日 07点11分
3
level 11
danielhugo
估计目前Vim对插件还是不能做到热插拔的程度吧……这个建议您到 github
.com
/Shougo/neobundle.vim/issues 提问……
2014年11月07日 17点11分
4
level 3
wushanxiong3
当然可以,用自动命令,autocmd
2014年11月07日 22点11分
5
wushanxiong3
但是必须你用的插件支持自己关闭才行。
2014年11月07日 23点11分
level 3
yuloo911
楼主
搜了一下,现在vim对插件没有统一的启用和禁用方法。要实现插件热插拔,只能寄希望于插件本身提供启用/禁用方法,比如 let g:xxx_enable = 0 是禁用,设为1为启用。
2014年11月17日 10点11分
6
danielhugo
对,有的插件确实可以禁用功能。我指的热插拔是完全禁用,包括删掉插件映射过的键,定义过的autocmd、命令等。
2014年11月17日 14点11分
level 1
1594710345
能不能通过if-else 语句来控制映射键的启用---禁用 和插件的启用呢。比如:
if filetype == 'python'
let g:xxx_enable = 1
nmap xxxxx
else if filetype == ‘xxx’
else 。。。。。。。
我感觉这样可以,我现在还用不了这么多映射键
2018年04月05日 13点04分
7
1