So deaktivieren Sie den „Aufrufen des Ex-Modus“ in Vim

71

Ich bekomme die folgenden 10x mal am Tag aus Versehen.

Ex-Modus aufrufen. Geben Sie "visual" ein, um in den Normalmodus zu wechseln.

Wie können Sie die Kombination deaktivieren, die sie in Vim verursacht?

Léo Léopold Hertz 준영
quelle
9
Ich bin so froh, dass ich diese Frage gefunden habe ... und lass mich raten, du bist ein anderer Dvorak-Benutzer, nein? :)
Nik Reiman
1
@ NikReiman Ja, du hast recht. Ich benutze Dvorak jetzt seit ungefähr dreieinhalb Jahren, angefangen im Oktober 2008.
Léo Léopold Hertz 준영
1
Hier ist ein Link, der erklärt, was dieser Modus für aplawrence.com/Words2005/2005_02_10.html
Dreftymac
Stimmen Sie allen Antworten unten zu, Sie können sie einfach zuordnen. Aber sind Sie sicher, dass Sie den Ex-Modus deaktivieren möchten? Es könnte sehr nützlich sein, hier ist ein Video von vimgirl, das zeigt, was Sie im Ex-Modus tun können: youtube.com/watch?v=QP_xm0VwQa0&feature=youtu.be PS (Ich bin vor 5 Jahren zu dvorak gewechselt, nachdem mein Handgelenk zu schmerzen begann und dann das Schmerz ging weg. Es ist ein erstaunliches Tastaturlayout)
Songz

Antworten:

56

<Nop>ist für die Zuordnung von Schlüsseln zu "nichts" vorgesehen. Siehe :h <Nop>.

:map Q <Nop>
Brian Carper
quelle
Dies funktionierte für mich im Befehlsmodus, aber wie setzen Sie dies in .vimrc ein? Ich habe eine Reihe von Variationen ausprobiert, aber keine davon hat funktioniert.
Andrew Wagner
"map Q <ESC>" in meiner .vimrc hat funktioniert. Versuchen Sie einfach nicht, Kommentare in dieselbe Zeile zu setzen.
Andrew Wagner
9
Ich würde empfehlen, immer noremap anstelle einer einfachen Karte zu verwenden, siehe learnvimscriptthehardway.stevelosh.com/chapters/05.html In diesem Fall könnte eine Karte theoretisch nie neu zugeordnet werden (glaube ich), aber es ist gut, niemals eine "einfache Karte" zu verwenden Strategie auf jeden Fall.
Niels Bom
@NielsBom Danke, dass du darauf hingewiesen hast! Sie haben mir den Tag gerettet und mir viel über meine Fehler in Vim erklärt. Ich habe es vor Ihrem Kommentar nicht bemerkt.
Léo Léopold Hertz 준영
26

Diese Antwort basiert auf dem Kommentar von @ NielsBom vom 4. Oktober 2012 und auf der Antwort von @ BrianCarper vom 13. August 2009.

Ich denke, NielsBom hat vollkommen recht, bitte lesen Sie den Artikel . Der Befehl mapist in Vim wirklich böse und hat mir über Jahre hinweg viele Probleme bereitet. Ich habe die Sache vor NielsBoms Kommentar nicht realisiert. Verwenden Sie stattdessen den folgenden Befehl:

:nnoremap Q <Nop>
Léo Léopold Hertz 준영
quelle
2
@NielsBohrn machte einen anderen Punkt: Er empfahl, die noreVersion der Kartenbefehle zu verwenden, um ein erneutes Zuordnen der rechten Seite zu verhindern. In diesem Fall wäre das :nnoremap Q <Nop>, aber da es sich um die rechte Seite handelt <Nop>, ist eine Neuzuordnung irrelevant.
glitzert
Der Kommentar wurde in die Antwort aufgenommen. Ich habe den Vorschlag von NielsBom hier als akzeptierte Antwort ausgewählt, weil ich danach suche.
Léo Léopold Hertz 준영
25

Die "Combo" ist Q. Um es zu deaktivieren, ordnen Sie es einfach Qetwas anderem zu:

:map Q <whatever>

Ich benutze gq, die verwendet wird, um Text zu formatieren.

Wenn Sie nicht möchten, tun Sie etwas, um es zuzuordnen <Nop>:

:map Q <Nop>
R. Martinho Fernandes
quelle
0

Wenn Sie es nicht auf etwas anderes abbilden möchten, verwenden Sie einfach :unmap. Wenn Sie noch etwas anderes im Sinn haben, :mapfunktioniert dies. Sehen Sie sich die Hilfeseiten an, um die Variationen zu sehen, in denen angegeben wird, in welchen Modi die Karte verwendet wird.

Cascabel
quelle
2
:unmapentfernt Zuordnungen, entfernt jedoch nicht die Standardeinstellungen, wie in diesem Fall.
R. Martinho Fernandes
Das dachte ich zuerst auch. Meine Antwort erwähnte ursprünglich :unmap, wie deine, aber dann versuchte ich es in meinem Vim und erst dann wurde mir klar, dass es nicht funktionierte.
R. Martinho Fernandes
-1

Eine andere, wenn auch etwas extremere Option wäre der Wechsel zu https://neovim.io , das den Ex-Modus vollständig entfernt hat, da niemand ihn jemals für irgendetwas verwendet hat.

Maniacalrobot
quelle
Ich benutze Neovim und wenn ich treffe, werde Qich in den Ex-Modus versetzt.
Sam A. Horvath-Hunt