43 votes

Comment mapper <C-/> pour basculer les commentaires dans vim ?

J'utilise vim sous iterm2. J'utilise le plugin NERDCommenter, et j'aimerais utiliser Ctrl+/ pour basculer les commentaires (j'essaie de passer de Idea/Eclipse à vim). Voici ma correspondance dans le fichier .vimrc :

 nmap <C-/> <leader>c<Space>
 vmap <C-/> <leader>c<Space>

Mais cela ne semble pas fonctionner. Quelle peut en être la raison ?

64voto

progo Points 6247

Pour une raison quelconque, vim enregistre <C-/> comme <C-_> (vous pouvez le voir en mode insertion en utilisant <C-v><C-/> ). Il peut s'agir du terminal ou d'un problème de conception historique dont les applications de terminal doivent souffrir.

Et Gvim n'essaie même pas de reconnaître <C-/> . Le considère comme unique / .

20voto

Marcelo Lazaroni Points 3248

Voici comment vous pouvez le faire en récupérant la sélection si vous êtes en mode visuel :

nmap <C-_>   <Plug>NERDCommenterToggle
vmap <C-_>   <Plug>NERDCommenterToggle<CR>gv

4voto

Hope Points 771

Juste pour résumer les informations des autres réponses. Pour moi (il y a peut-être une différence due au fait que j'utilise neovim ) <C-/> fonctionne bien sous Windows, mais j'ai besoin d'utiliser <C-_> sur Linux :

if has('win32')
  nmap <C-/> <leader>c<Space>
  vmap <C-/> <leader>c<Space>
else
  nmap <C-_> <leader>c<Space>
  vmap <C-_> <leader>c<Space>
endif

3voto

Terence Points 101

Si vous utilisez iTerm2 + vim, les étapes suivantes peuvent peut-être vous aider :

  1. Ajoutez le code suivant à votre .vimrc fichier.

    map ,cc <plug>NERDCommenterToggle

    ou si vous avez défini votre <leader> comme ,

    carte <leader>cc <plug>NERDCommenterToggle

  2. Vérifiez si vous pouvez utiliser ,cc pour activer les commentaires dans vim

  3. Ouvrir iTerm2 -> Preferences -> Keys cliquez sur le bouton + bouton

  4. Sélectionnez Send Text with "vim" Special Chars , entrez ,cc , comme ceci .

  5. Vous pouvez maintenant utiliser C-/ pour activer les commentaires dans vim.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X