Antipatterns Vim

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.

Source: https://habr.com/ru/post/de442110/


All Articles