1 votes

Comment résoudre un conflit de raccourcis clavier avec coc for vim ?

En guise de préface, je ne suis pas un programmeur, mais j'ai écrit un peu de Shell pour automatiser les choses.

C'est sur MacOS Mojave, mais cela ne devrait pas faire une trop grande différence puisque les configurations de neovim devraient être reportées.

J'ai remarqué que lorsque j'essaie d'utiliser la fonction d'autocomplétion de coc, le fait d'appuyer sur la touche Entrée renvoie à la ligne suivante au lieu de sélectionner une autocomplétion. Je pense que c'est lié à vimwiki ou à markdown. J'ai regardé ce fil pour essayer de trouver le raccourci clavier en conflit et j'ai obtenu ceci à la sortie de la commande :verbose imap <cr> après avoir essayé l'autocomplétion :

i  <CR>        &@<C-]><Esc>:VimwikiReturn 1 5<CR><SNR>38_AutoPairsReturn
        Last set from ~/.config/nvim/plugged/auto-pairs/plugin/auto-pairs.vim line 662
i  <CR>        * pumvisible() ? "\<C-Y>" : "\<CR>"
        Last set from ~/.config/nvim/init.vim line 225
Press ENTER or type command to continue

Alors j'ai regardé auto-pairs.vim et j'ai trouvé ça :

execute 'inoremap <script> <buffer> <silent> <CR> .old_cr.'<SID>AutoPairsReturn'

J'ai l'impression qu'il prend la préférence sur la remappage dans init.vim :

inoremap <expr><cr> pumvisible() ? "\<C-y>" : "\<CR>"

J'ai essayé de trouver où ce pumvisible() était localisée, mais je ne trouvais pas sa définition. Je me suis dit que je pourrais arrêter la liaison dans les paires automatiques en faisant quelque chose avec ça. J'ai ensuite essayé de modifier le remap dans init.vim . Ça n'a rien fait, j'ai changé <cr> a <Space> y <Right> mais cela a eu pour effet domino de faire agir mes touches fléchées comme des entrées en toutes circonstances.

Comment puis-je corriger ce conflit ? Si je dois éditer les fichiers du plugin (j'utilise vim-plug), comment puis-je le faire proprement (pour qu'il ne soit pas cassé lors d'une mise à jour) ?

Merci. Si nécessaire, je peux fournir l'intégralité init.vim ou ma configuration complète de neovim sur github.

1voto

user1268420 Points 11

Le mappage de la touche de tabulation dans vimwiki entrait en conflit avec mon autocomplétion coc.nvim aussi, ajoutez ceci dans votre init.vim

au filetype vimwiki silent! iunmap <buffer> <Tab>

0voto

Ganesh Points 1500

I Modification de la cartographie pour le paramètre COC

inoremap <silent> <expr> <C-End> pumvisible() ? coc#_select_confirm() : "<C-g>u<CR><c-r>=coc#on_enter()<CR>"

maintenant je sélectionne en appuyant sur ctrl + end

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X