2009-08-13 11 views
55

Ottengo per errore le seguenti 10 volte al giorno.Per disabilitare "Accesso alla modalità Ex" in Vim

Accesso alla modalità Ex. Digita "visual" per passare alla modalità normale.

Come disattivare la combo che lo causa in Vim?

+0

Grazie per le vostre risposte! –

+7

Sono contento di aver trovato questa domanda ... e fammi indovinare, sei un utente di Dvorak, no? :) –

+0

@NikReiman Sì, hai ragione. Ora utilizzo Dvorak da circa tre anni e mezzo, iniziato nell'ottobre 2008. –

risposta

21

Questa risposta si basa su di @ NielsBom commento 4. Ottobre 2012 e il @ di BrianCarper risposta 13. agosto 2009.

penso NielsBom è completamente giusto, vedere the article. Il comando map è davvero malvagio in Vim e mi ha causato molti problemi durante anni. Non ho realizzato la cosa prima del commento di NielsBom. Quindi, per favore usa il seguente comando:

:nnoremap Q <Nop> 
+2

@NielsBohrn stava facendo un altro punto: consigliava di usare la versione ** 'nore' ** dei comandi della mappa per impedire la rimappatura del lato destro. In questo caso sarebbe ': nnoremap Q ', ma poiché il lato destro è '', la rimappatura è irrilevante. – glts

+0

Il commento è stato incluso nella risposta. Ho scelto la proposta di NielsBom come risposta accettata qui perché è ciò che sto cercando. –

21

Il "combo" è Q. Per disabilitarlo, semplicemente mappare Q a qualcos'altro:

:map Q <whatever> 

Io uso gq, che viene utilizzato per formattare il testo.

Se non si desidera che non fa nulla mappa a <Nop>:

:map Q <Nop> 
0

Se non si desidera eseguire il mapping a qualcosa d'altro, basta usare :unmap. Se hai in mente qualcos'altro, :map funzionerà - dai un'occhiata alle pagine di aiuto per vedere le varianti per specificare in quale modalità sarà usata la mappa.

+2

': unmap' rimuove i mapping, ma non rimuoverà i valori predefiniti, come in questo caso. –

+0

Ah, mio ​​male. Pensavo che ricordassi che funzionava anche lì. – Cascabel

+0

All'inizio pensavo lo stesso. La mia risposta originariamente stava citando ': unmap', come il tuo, ma poi l'ho provato nel mio vim e solo allora ho capito che non funzionava. –

46

<Nop> è inteso per l'uso nella mappatura di chiavi a "niente" ". Vedi :h <Nop>.

:map Q <Nop> 
+0

Questo ha funzionato per me dalla modalità di comando, ma come si inserisce questo in .vimrc? Ho provato un sacco di varianti, ma nessuno di loro ha funzionato. –

+0

"mappa Q " nel mio .vimrc ha funzionato. Basta non provare a inserire commenti sulla stessa riga. –

+6

Consiglierei sempre di usare noremap invece di una semplice mappa, vedi http://learnvimscriptthehardway.stevelosh.com/chapters/05.html In questo caso, una mappa potrebbe teoricamente non essere mai rimappata (credo), ma mai usare una "mappa semplice" è una buona strategia in ogni caso. –

Problemi correlati