也许题目不太具体。所以让我解释一下:
这是针对this GitHub fork的,针对numbertoggle Vim plugin的。请检查我的叉子的结构,以理解我的意思。
我需要的是一种方法去激活它,在它被加载之后。换句话说,如果调用了该函数,则将其从图表中完全删除。
换句话说,换句话说。如果这个插件被调用了,并且我做了:call NumberToggleOff(),那么它就会禁用它,就像Vim正常工作一样。
实现这一目标的好方法是什么?我尝试了几种方法,但都不起作用。
谢谢你的帮忙!
发布于 2012-12-07 12:29:18
通常,它可以通过将自动命令包围在一起来完成
augroup NumberToggle
…
augroup END并记住映射的{lhs}。要禁用它,您可以执行以下操作
let s:plugin_lhs=exists('g:NumberToggleTrigger') ? g:NumberToggleTrigger : '<C-n>'
let g:numbertoggle={}
function! g:numbertoggle.unload()
augroup NumberToggle
autocmd!
augroup END
augroup! NumberToggle
execute 'nunmap' s:plugin_lhs
delfunction NumberToggle
delfunction UpdateMode
delfunction FocusGained
delfunction FocusLost
delfunction InsertLeave
delfunction InsertEnter
unlet g:numbertoggle
unlet g:loaded_numbertoggle
unlet g:insertmode g:focus
unlet s:plugin_lhs
endfunction
" Then do :call g:numbertoggle.unload()
" Loading is done by resourcing numbertoggle如果不是使用一堆delfunction调用,而是将所有函数名转换为g:numbertoggle.toggle、g:numbertoggle.update、…离开unlet g:numbertoggle就好了。
它完全取消插件的效果,而不仅仅是禁用它。
https://stackoverflow.com/questions/13751883
复制相似问题