GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Vi- und Vim-Makro-Tutorial:Aufnehmen und Abspielen


Mit der Vim-Makrofunktion können Sie eine Folge von Aktionen im Editor aufzeichnen und wiedergeben.

Dieser Artikel erklärt anhand von zwei detaillierten Beispielen, wie Sie im Vi- und Vim-Editor aufnehmen und wiedergeben.

High-Level-Schritte zum Aufnehmen und Abspielen in Vim

  1. Starten Sie die Aufnahme durch Drücken von q, gefolgt von einem Kleinbuchstaben, um das Makro zu benennen
  2. Führen Sie typische Bearbeitungen und Aktionen im Vim-Editor durch, die aufgezeichnet werden
  3. Stoppen Sie die Aufnahme durch Drücken von q
  4. Spielen Sie das aufgezeichnete Makro ab, indem Sie @ gefolgt vom Makronamen drücken
  5. Um Makros mehrmals zu wiederholen, drücken Sie :NN @ Makroname. NN ist eine Zahl

Beispiel 1:Sequenznummerngenerierung in einer Datei mit Vim-Makro

1. Starten Sie eine sequence-test.txt-Datei, um die Sequenz zu generieren.

$ vim sequence-test.txt

2. Wechseln Sie in den Einfügemodus und geben Sie „1“ ein. wie unten gezeigt

Geben Sie Folgendes ein:Esc i gefolgt von 1.

$ vim sequence-test.txt
1.

3. Starten Sie die Aufnahme und speichern Sie sie in Register a.

Geben Sie Folgendes ein:Esc q gefolgt von a

  • q zeigt an, dass die Aufnahme gestartet werden soll
  • a gibt an, dass die Aufnahmen in Register a gespeichert werden sollen
  • Wenn Sie q a ausführen, wird unten im vi „Aufnahme“ angezeigt.

4. Kopieren Sie die 1. Zeile in die 2. Zeile, um zwei Zeilen mit 1 zu haben. wie unten gezeigt

Geben Sie Folgendes ein:Esc yy gefolgt von p

  • yy kopiert die aktuelle Zeile
  • p fügt die gerade kopierte Zeile ein
$ vim sequence-test.txt
1.
1.

Hinweis: Vim zeigt weiterhin die Aufzeichnung unten an, wie unten gezeigt.


Abb. :Vim zeigt unten eine Aufnahmenachricht

5. Erhöhen Sie die Zahl.

Tippe:Steuere a

Indem Sie den Cursor in der zweiten Zeile platzieren, drücken Sie Strg+a, wodurch die Zahl auf 2 erhöht wird, wie unten gezeigt.

$ vim sequence-test.txt
1.
2.

Hinweis: vim zeigt immer noch die Aufzeichnung unten an.

6. Stoppen Sie die Aufnahme

Geben Sie Folgendes ein:q

Drücken Sie q, um die Aufnahme zu stoppen. Sie werden feststellen, dass die Aufnahmemeldung am unteren Rand des vim jetzt verschwunden ist.

7. Wiederholen Sie die Aufnahme 98 Mal.

Geben Sie Folgendes ein:98@a

  • Wiederholen Sie nun diesen Job, indem Sie 98 @ a
  • eingeben
  • @a wiederholt das Makro „a“ einmal.
  • 98@a wiederholt die Makros „a“ 98 Mal und erzeugt die Sequenznummer 1 – 100, wie unten gezeigt, unter Verwendung von Makros.

Abb. :Sequenznummer in Vim mit Makro generieren

Beispiel 2:Vim-Makro mit unterschiedlichen Argumenten wiederholen

Dieses Beispiel erklärt, wie Sie denselben Befehl mit unterschiedlichen Eingaben ausführen können. d.h. Framing desselben Befehls mit unterschiedlichen Argumenten.

Vor dem Ausführen des Makros:change-password.sql

$ vim change-password.sql
Annette
Warren
Anthony
Preston
Kelly
Taylor
Stiller
Dennis
Schwartz

Nach dem Aufzeichnen und Ausführen des Makros:change-password.sql

$ vim change-password.sql
ALTER USER Annette IDENTIFIED BY 'Annette';
ALTER USER Warren IDENTIFIED BY 'Warren';
ALTER USER Anthony IDENTIFIED BY 'Anthony ';
ALTER USER Preston IDENTIFIED BY 'Preston';
ALTER USER Kelly IDENTIFIED BY 'Kelly ';
ALTER USER Taylor IDENTIFIED BY 'Taylor';
ALTER USER Stiller IDENTIFIED BY 'Stiller';
ALTER USER Dennis IDENTIFIED BY 'Dennis';
ALTER USER Schwart IDENTIFIED BY 'Schwart';

1. Öffnen Sie die change-password.sql, die nur die Namen enthält.

$ vim change-password.sql
Annette
Warren
Anthony
Preston
Kelly
Taylor
Stiller
Dennis
Schwartz

2. Starten Sie die Aufnahme und speichern Sie sie in Register a

Geben Sie Folgendes ein:q a

  • q zeigt an, dass die Aufnahme gestartet werden soll
  • a gibt an, dass die Aufnahmen in Register a gespeichert werden sollen
  • Wenn Sie q a ausführen, wird die Nachrichtenaufzeichnung unten im vi angezeigt.

3. Wechseln Sie in den Einfügemodus und geben Sie ALTER USER

ein

Geben Sie ein:I (Großbuchstabe i) gefolgt von „ALTER USER“

Platzieren Sie den Cursor an einer beliebigen Stelle in der ersten Zeile und drücken Sie dann I. Dadurch gelangen Sie zum ersten Zeichen der Zeile. Geben Sie ALTER USER

ein

4. Kopieren Sie das nächste Wort (d. h. den Namen)

Geben Sie Folgendes ein:Esc w yw

  • Drücken Sie Esc und dann w, um zum nächsten Wort zu gehen ( name ).
  • yw, kopiert das aktuelle Wort ( name ).

5.Gehen Sie zum Ende und geben Sie IDENTIFIED BY ‘

ein

Geben Sie Folgendes ein:Esc A gefolgt von „IDENTIFIED BY ‚“

  • Drücken Sie Esc und A, um den Cursor an das Ende der Zeile zu bewegen, und geben Sie dann Leerzeichen ein.
  • Typ IDENTIFIZIERT DURCH „

6. Fügen Sie den kopierten Namen ein

Geben Sie Folgendes ein:Esc p

Drücken Sie Esc und geben Sie dann p ein, um den Namen einzufügen, der in Schritt 4 kopiert wurde.

7. Vervollständigen Sie das Zitat am Ende.

Geben Sie Folgendes ein:Esc A gefolgt von „;

Drücken Sie Esc und A, um zum Ende der Zeile zu gehen, und ‘;

8. Zur nächsten Zeile springen und Aufnahme stoppen.

Geben Sie Folgendes ein:Esc j gefolgt von q

  • j um zur nächsten Zeile zu gehen.
  • q um die Aufnahme zu stoppen

Hinweis: Die unten im vi angezeigte Aufnahmemeldung verschwindet nun. In diesem Stadium sieht change-password.sql wie folgt aus.


Abb. :Vim Macro hat die Aufnahme abgeschlossen

9. Wiederholen Sie das Makro mit den Argumenten in der entsprechenden Zeile

Geben Sie Folgendes ein:8 @ a

  • Wiederholen Sie diesen Job nun 8 Mal, indem Sie 8@a
  • eingeben
  • @a wiederholt das Makro „a“ einmal.
  • 8@a wiederholt das Makro „a“ achtmal und vervollständigt den Rest der Zeile automatisch, wie unten gezeigt

Abb. :Vim Macro Play abgeschlossen

Empfohlene Lektüre

Vim 101 Hacks, von Ramesh Natarajan . Ich bin ein Kommandozeilen-Junkie. Also bin ich natürlich ein großer Fan von Vi- und Vim-Editoren. Vor einigen Jahren, als ich viel C-Code unter Linux geschrieben habe, habe ich alle verfügbaren Vim-Editor-Tipps und -Tricks gelesen. Basierend auf meiner Vim-Editor-Erfahrung habe ich das Vim 101 Hacks eBook geschrieben, das 101 praktische Beispiele zu verschiedenen erweiterten Vim-Funktionen enthält, die Sie im Vim-Editor schnell und produktiv machen werden. Auch wenn Sie Vi und Vim Editors seit mehreren Jahren verwenden und dieses Buch noch nicht gelesen haben, tun Sie sich bitte einen Gefallen und lesen Sie dieses Buch. Sie werden von den Möglichkeiten des Vim-Editors begeistert sein.

Tolle Vim-Editor-Artikel

Im Folgenden finden Sie einige großartige Vi/Vim-Editor-Tutorials die Sie vielleicht hilfreich finden.

  • Turboladen Sie den Firefox-Browser mit der Vim-Editor-Funktionalität mit dem Vimperator-Add-on auf
  • Tutorial:Erstellen Sie Vim als Ihre C/C++-IDE mit dem c.vim-Plugin
  • Vim Editor in einen schönen Quellcode-Browser für jede Programmiersprache umwandeln
  • 12 leistungsstarke Beispiele zum Suchen und Ersetzen für den Vim-Editor

Hinweis: Bitte abonnieren Sie The Geek Stuff und verpassen Sie keine zukünftigen Tipps und Tricks für Vi- und Vim-Editoren .


Linux
  1. So zeichnen Sie Screencasts in GNOME 3 auf

  2. So ändern und verwenden Sie Vim-Farbschemata

  3. Wie man in Vim / Vi ausschneidet, kopiert und einfügt

  4. So machen Sie Änderungen in Vim / Vi rückgängig und stellen sie wieder her

  5. So zeichnen Sie Ihr Linux-Terminal mit asciinema auf

So speichern Sie eine Datei in Vi / Vim und beenden den Editor

So finden und ersetzen Sie Text in Vim

Farbschemata in Vim:Wie man sie ändert und verwendet

3 leistungsstarke Musketiere des Vim-Editors – Makro, Markierung und Karte

So nehmen Sie mit Audacity Audio auf und speichern es als MP3-Datei

Wie man Spiele unter Linux spielt | Einfaches Tutorial für Neulinge