VIM: Tausche zwei durch Leerzeichen getrennte Spalten

8

Ich habe zwei Spalten:

%Vor%

Ich möchte die zwei Spalten tauschen:

%Vor%

Mit vim wie würde ich das machen?

    
4reel77 25.06.2014, 22:58
quelle

6 Antworten

15

Meine erste Idee, eine Vertretung, endete zu sehr wie Birei, also ging ich mit AWK (das ich nicht nicht viel wissen) als Filter verwendet:

%Vor%     
romainl 26.06.2014, 06:45
quelle
7

Sie können dies mit einem regulären Ausdruck erreichen, indem Sie \S für nicht leere Zeichen und \s für Leerzeichen verwenden, wie:

%Vor%

Es ergibt:

%Vor%     
Birei 25.06.2014 23:07
quelle
1

Wenn die Spalten die gesamte Datei verwenden, verwenden Sie Folgendes:

%Vor%

Wenn es nur ein Abschnitt der Datei ist, machen Sie ein visuelles Auswahlende:

%Vor%

Erläuterung:

  • % oder '<,'> : Führen Sie den folgenden Befehl für die gesamte Datei ( % ) oder in einem bestimmten Abschnitt ( '<,'> );
  • aus
  • "adt : Löscht alles bis zum ersten Leerzeichen (Leerzeichen nicht enthalten) und speichert den gelöschten Text im Register a .
  • x : Löscht den nachgestellten Leerzeichen;
  • A : Beginnt Text anzufügen;
  • <CTRL-v><CTRL-R>a : Gibt den Befehl <CTRL-r> ein (es wird ein ^R angezeigt), der den Inhalt des Registers a .
  • einfügt
Magnun Leno 25.06.2014 23:10
quelle
1

Sie können dies auf einfache Art und Weise archivieren, alle Zeichen in der ersten und zweiten Spalte

%Vor%     
c4f4t0r 26.06.2014 07:23
quelle
1

Folgendes Makro kann verwendet werden:

%Vor%
  1. qaq löscht das Register a.
  2. qa startet das Makroaufzeichnen in Register a.
  3. df löschen bis zum Leerzeichen
  4. A anhängen nach dem Ende der Zeile und geben Sie ein Leerzeichen
  5. <esc>p zum normalen Modus wechseln und einfügen.
  6. j0 gehen zur ersten Spalte in der nächsten Zeile.
  7. q stop Makro a
  8. 99 @ a führe dieses Makro 99 mal (vorausgesetzt, du hast noch 99 Spalten)
dvk317960 26.06.2014 15:14
quelle
1

«Swap zwei Spalten» Plugin

Ja, es gibt so etwas wie ein zwei Spalten tauschen Vim-Plugin.

%Vor%     
Serge Stroobandt 24.08.2016 19:04
quelle

Tags und Links