如何重新映射coc.nvim自动完成密钥?

如何重新映射coc.nvim自动完成密钥?,vim,autocomplete,coc.nvim,nvim,Vim,Autocomplete,Coc.nvim,Nvim,我试图更改我的coc.nvim自动完成键,在堆栈溢出中发现了问题,但回答这个问题的人并没有很好地解释如何根据您的需要定制它,所以我将解释它以帮助像我一样绞尽脑汁的NeoVim用户。简短回答 如果要绑定自动完成选项卡,请将其粘贴到.vimrc或init.vim中 inoremap <silent><expr> <tab> pumvisible() ? coc#_select_confirm() : "\<C-g>u\<TAB>&

我试图更改我的coc.nvim自动完成键,在堆栈溢出中发现了问题,但回答这个问题的人并没有很好地解释如何根据您的需要定制它,所以我将解释它以帮助像我一样绞尽脑汁的NeoVim用户。

简短回答 如果要绑定自动完成选项卡,请将其粘贴到.vimrc或init.vim中

inoremap <silent><expr> <tab> pumvisible() ? coc#_select_confirm() : "\<C-g>u\<TAB>"
inoremap <silent><expr> <cr> "\<c-g>u\<CR>"
inoremap pumvisible()?coc#_选择_确认():“\u\”
inoremap“\u\”
详细答案 所以,您必须进行2次插入模式重新映射,在这种情况下,我将重新映射我的完成到Tab键

inoremap pumvisible()?coc#_选择_确认():“\u\”
Obs:如果要将其他密钥绑定到自动完成:

inoremap <silent><expr> [the key that you want to autocomplete] pumvisible() ? coc#_select_confirm() : "\<C-g>u\<TAB>"
inoremap[要自动完成的键]pumvisible()?coc#_选择_确认():“\u\”
现在,CoC也将使用Tab键自动完成,但Enter也是自动完成的,我想通过be Enter绑定Enter,而不是自动完成键

在VimScript中,Enter由

inoremap“\u”
Obs:

inoremap[这是当前的自动完成键]“\u\[这是我给键的绑定]”
inoremap <silent><expr> [the key that you want to autocomplete] pumvisible() ? coc#_select_confirm() : "\<C-g>u\<TAB>"
inoremap <silent><expr> <cr> "\<c-g>u\<cr>"
inoremap <silent><expr> [this is the current autocompletion key] "\<c-g>u\[this is the bind that I am giving to the key]"