在多个实例上使用COC确实会对我的intel i3+4GB机器造成损失
所以我想知道是否可以按需切换
我已经设法在默认情况下关闭它,并使用Vimplug的内置功能打开它,如下所示。
Plug 'neoclide/coc.nvim', {'branch': 'release', 'on': 'CocToggle' }
但是,我不知道如何关闭它。
如有任何帮助,我们将不胜感激!
第页。S.:我尝试过CocDisable
,但没有注意到任何可以最大限度地减少资源使用的实际好处,比如为每个实例杀死由COC启动的大量节点进程!
解决方案
我最终为我的用例编写了以下函数。
Plug 'neoclide/coc.nvim', {'branch': 'release' }
let g:coc_start_at_startup = 0
let s:coc_enabled = 0
function! ToggleCoc()
if s:coc_enabled == 0
let s:coc_enabled = 1
CocStart
echo 'COC on'
else
let s:coc_enabled = 0
echo 'COC off'
call coc#rpc#stop()
endif
endfunction
nnoremap <silent> <leader>h :call ToggleCoc()<cr>
我的用例(我使用vim-plug(可能有所不同,但它可能会有所帮助。通常情况下,我的书呆子会被禁用,直到我通过映射调用它
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
nnoremap <F2> :NERDTreeToggle<cr>
我有一个功能来加载任何在启动时禁用的插件
if !exists('*LoadPluginFunction')
fun! LoadPluginFunction(pluginname)
let l:curpos = getcurpos()
execute plug#load(a:pluginname)
call cursor(l:curpos[1], l:curpos[2])
return ''
endfun
endif
command! -nargs=1 LoadPlugin :call LoadPluginFunction(<q-args>)
如果我想手动加载,我会打电话给:
:LoadPlugin nerdtree
最后,我找到了一个可以帮助你的coc选项:
let g:coc_start_at_startup = 0
你可以启动你的vim并创建一个映射来手动加载coc插件