有没有办法根据文件类型,自动加载和禁用插件?
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
插件无法禁用
2014年11月05日 07点11分 3
level 11
估计目前Vim对插件还是不能做到热插拔的程度吧……这个建议您到 github[滑稽].com[滑稽]/Shougo/neobundle.vim/issues 提问……
[熊-羞羞哒][熊-人艰不拆]
2014年11月07日 17点11分 4
level 3
当然可以,用自动命令,autocmd
2014年11月07日 22点11分 5
但是必须你用的插件支持自己关闭才行。
2014年11月07日 23点11分
level 3
yuloo911 楼主
搜了一下,现在vim对插件没有统一的启用和禁用方法。要实现插件热插拔,只能寄希望于插件本身提供启用/禁用方法,比如 let g:xxx_enable = 0 是禁用,设为1为启用。
2014年11月17日 10点11分 6
对,有的插件确实可以禁用功能。我指的热插拔是完全禁用,包括删掉插件映射过的键,定义过的autocmd、命令等。[狂汗][滑稽]
2014年11月17日 14点11分
level 1
能不能通过if-else 语句来控制映射键的启用---禁用 和插件的启用呢。比如:
if filetype == 'python'
let g:xxx_enable = 1
nmap xxxxx
else if filetype == ‘xxx’
else 。。。。。。。
我感觉这样可以,我现在还用不了这么多映射键
2018年04月05日 13点04分 7
1