2012-01-29 10 views
16

Io uso vim sotto iterm2. Sto usando il plugin NERDCommenter e vorrei usare Ctrl +/per attivare i commenti (Cercando di passare da Idea/Eclipse a vim). Questa è la mia mappatura in .vimrc:Come mappare <C-/> per commutare i commenti su vim?

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

Ma non sembra funzionare. Quale può essere il motivo?

risposta

23

Per alcuni motivi, registri vim <C-/> come <C-_> (è possibile visualizzarlo in modalità inserimento utilizzando <C-v><C-/>). Può essere il terminale o una cosa di design storico che le app terminali devono subire.

E Gvim non prova nemmeno a riconoscere <C-/>. Lo vede come singolo /.

+2

Grazie! Ho appena mappato a e funziona! L'idea originale era quella di mappare a ma questo non è nemmeno registrato in vim, penso ... –

+0

E 'solo su iterm2? Sto usando Terminal.app e ho appena ricevuto l'errore di campanello e non succede nulla. Tuttavia, quando effettivamente preme il tasto '_' nell'attribuzione' ', farà il comando di commento. Come posso ottenere che Terminal.app utilizzi l'associazione ''? –

+0

Nota su ^^ '' funziona solo sul trattino di sottolineatura sui tastierini numerici (10key), non sulla tastiera compatta Apple.Inoltre, '' non è un codice di accesso valido (apparentemente ci sono 'CTRL + lettere' limitate e'/'non è uno di questi). Fonte: http://vim.1045645.n5.nabble.com/How-to-map-Ctrl-td1192843.html –

0

Solo per sommare le informazioni da altre risposte. Per me (ci potrebbe essere una differenza dovuta al fatto che sto usando neovim) <C-/> funziona bene su Windows, ma ho bisogno di usare <C-_> su 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 
0

Se stai usando iTerm2 + vim, forse i seguenti passaggi possono aiutarti:

  1. Aggiungi il seguente codice al tuo file .vimrc.

    mappa, cc < spina> NERDCommenterToggle

    o se è stato definito il vostro < capo> come,

    mappa < capo> cc < spina> NERDCommenterToggle

  2. Verificare se è possibile utilizzare ,cc per commutare commenti in vim

  3. Aperto iTerm2 -> Preferences -> Keys, fare clic sul pulsante +

  4. Select Send Text with "vim" Special Chars, immettere ,cc, like this.

  5. Ora è possibile utilizzare C-/ per alternare i commenti in vim.

0

Ecco come si può fare riconquistando la selezione se si è in modalità visiva:

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