Wenn Sie sich im Fluss befinden, beschleunigt Vim die Bearbeitung erheblich, egal ob Sie Code, Gedichte oder Prosa schreiben. Da die Lernkurve für einen Texteditor jedoch zu steil ist, ist es sehr einfach, schlechte Gewohnheiten aus der Zeit beizubehalten, als Sie den Editor gerade beherrschten. Vim beschleunigt die Arbeit so sehr, dass es besonders schwierig ist, diese Gewohnheiten auszurotten, weil Sie sie möglicherweise gar nicht bemerken. Aber es lohnt sich. Ich werde einige der häufigsten Antimuster auflisten.
Eine Zeile bewegen
Wenn Sie mehr als ein paar Zeilen überspringen müssen, ist es ineffizient, sich mit den Tasten
j
oder
k
entlang einer Zeile zu bewegen. Es gibt viele
Möglichkeiten, sich in Vim
vertikal zu bewegen . Ich finde die beiden nützlichsten sind Absatz- und Bildschirmsprünge. Es hängt davon ab, wie weit und wie genau Sie sich bewegen müssen.
{
- Zum Anfang des vorherigen Absatzes oder Codeblocks gehen.
}
- Gehen Sie zum Ende des nächsten Absatzes oder Codeblocks.
Ctrl+F
- Gehen Sie einen Bildschirm vorwärts.
Ctrl+B
- Gehen Sie einen Bildschirm zurück.
Wenn Sie genau wissen, wohin Sie gehen müssen, können Sie die Navigation durch die Suche verwenden: Vorwärts suchen mit
/
und zurück -
?
.
Es ist auch immer nützlich, zur vorherigen Stelle zurückzukehren, was mit zwei Anführungszeichen oder
gi
recht einfach ist: Zurück zur letzten Stelle, an der Sie den Text eingegeben haben. Wenn Sie möchten, können Sie sogar mit
g;
zwischen allen Stellen navigieren, an denen der Text eingegeben wurde
g;
und
g,
Einzelzeichenbewegung
In ähnlicher Weise ist es oft Zeitverschwendung, jeweils ein Zeichen mit den Tasten
h
und
l
wenn wir
t
und
f
:
t<char>
- Gehen Sie vorwärts, bis das nächste Zeichen angezeigt wird.
f<char>
- Zum nächsten Vorkommen eines Zeichens vorwärts gehen .
T<char>
- Zum vorherigen Vorkommen eines Zeichens zurückkehren.
F<char>
- Zum vorherigen Auftreten eines Zeichens rückwärts gehen .
E
auch besser, sich mit den Tasten
w
,
W
,
b
,
B
,
e
und
E
durch Wörter zu bewegen. Die Suchnavigation ist hier hilfreich. Vergessen Sie nicht, dass Sie
den Text vorwärts oder rückwärts zum Suchergebnis
kopieren, löschen und ändern können :
y/search<Enter>
y?search<Enter>
d/search<Enter>
d?search<Enter>
c/search<Enter>
c?search<Enter>
Suchen Sie unter dem Cursor nach einem Wort
Machen Sie sich nicht die Mühe zu tippen oder zu kopieren / einzufügen, drücken Sie einfach
*
oder
#
. Es ist erstaunlich, wie viel schneller die Arbeit wird, wenn Sie diese Hotkeys beherrschen.
Löschen und einfügen
Es ist nicht erforderlich, Text zu löschen, um ihn durch Einfügen in den Einfügemodus zu ersetzen:
d2wi
Verwenden Sie die Taste
c
schneller und genauer:
c2w
So wird die gesamte Operation mit einem Punkt (
.
) Wiederholbar.
Verwenden der Pfeiltasten
Mit Vim können Sie die Pfeiltasten verwenden, um sich im normalen Modus und im Einfügemodus zu bewegen. Wenn Sie jedoch daran
hjkl
sind,
hjkl
für die Navigation zu verwenden, wirken die Pfeile bereits etwas ungeschickt, da sich die Finger während der gesamten Vim-Sitzung in der
Mitte der Tastatur befinden , was praktisch ist Berühren Sie die Eingabe. Die Home- und End-Tasten sind ähnlich: Obwohl sie wie in den meisten Editoren funktionieren, gibt es keinen besonderen Grund, sie zu verwenden, wenn die Entsprechungen von
^
und
$
näher liegen.
Daher ist es ratsam, sich von den Pfeiltasten zu entwöhnen, indem Sie sie zumindest vorübergehend deaktivieren:
noremap <Up> <nop>
noremap <Down> <nop>
noremap <Left> <nop>
noremap <Right> <nop>
Blindes Tippen mit zentralen Tasten bietet nicht nur einen Vorteil der Geschwindigkeit, sondern sorgt auch dafür, dass Sie sich besser fühlen, da Ihre Handgelenke vor der Tastatur ruhen und sich nicht zu weit bewegen. Dies
hilft einigen Menschen
, sich vor dem Tunnelsyndrom zu schützen .
Bewegen Sie sich in den Einfügemodus
Ein zusätzlicher Vorteil des blinden Tippens in der Mittellinie besteht darin, dass Sie sich nicht mehr im Einfügemodus bewegen müssen: Der normale Modus ist dafür ausgelegt. Sobald Sie irgendwohin müssen, wechseln Sie in den normalen Modus und bewegen sich viel effizienter. Es hilft auch, Einfügevorgänge atomarer und daher für Wiederholungen bequemer zu gestalten.
Drücken Sie Esc
Die Escape-Taste auf modernen Tastaturen befindet sich viel weiter von der mittleren Reihe entfernt als auf
Bill Joys Tastatur, als er vi entwarf. Normalerweise ist das Drücken von Escape nicht erforderlich:
Ctrl+[
viel näher und bequemer, Sie werden Ihre Gewohnheiten ziemlich schnell ändern. Optional können Sie in Betracht ziehen, die ziemlich nutzlose Feststelltaste oder sogar ungewöhnliche Kombinationen wie
jj
im Esc-Betriebssystem abzugleichen. Obwohl dies ein radikaler Vorschlag ist, funktioniert er für viele Menschen gut:
inoremap jj <Esc>
Gehen Sie zum Anfang oder Ende einer Zeile und fügen Sie sie ein
Benutze einfach
I
und
A
Darüber hinaus machen sie die Aktion für andere Zeilen wiederholbar, in denen möglicherweise dieselbe Operation erforderlich ist.
Rufen Sie den Einfügemodus auf und erstellen Sie eine neue Zeile
Verwenden Sie
o
und
O
, um eine neue Zeile niedriger bzw. höher zu erstellen, und rufen Sie gleichzeitig den Einfügemodus auf.
Aktivieren Sie den Einfügemodus, um Text zu löschen
Dies ist ein ziemlich offensichtlicher Widerspruch. Löschen Sie stattdessen den Text, indem Sie ihn verschieben und
d
mit der entsprechenden Bewegung oder dem entsprechenden Textobjekt verwenden. Auch diese Aktion ist wiederholbar und bedeutet, dass Sie keine Rücktaste gedrückt halten. Wenn Sie in Vim eine Taste gedrückt halten, gibt es im Allgemeinen wahrscheinlich einen schnelleren Weg.
Wiederholen Sie Befehle oder Suchen
Geben Sie einfach
@:
für den Befehl oder n / N für die Suche ein. Vim vergisst die letzte Suche nicht. Wenn dies nicht der letzte Befehl oder die letzte Suche war, sich aber definitiv im Verlauf befindet, geben Sie
q:
oder
q/
, suchen Sie ihn in der Liste und drücken Sie die Eingabetaste.
Ersetzungen
Geben Sie
&
, um in der aktuellen Zeile des letzten Ersatzes zu wiederholen. Sie können es in allen Zeilen wiederholen, indem Sie
g&
eingeben.
Makro-Rückruf
@@
einfach
@@
.
Tatsächlich sind dies nur einige gängige Methoden, um die Geschwindigkeit und Gesamteffizienz der Arbeit mit dem Editor zu erhöhen, ohne Plugins zu installieren oder Schlüssel neu zuzuweisen. Siehe auch das
Wiki für Tipps zu Vim , es gibt einige andere wirklich nützliche Beispiele.