Wie kann ich Tabulatoren in Leerzeichen in eine vorhandene Datei konvertieren und umgekehrt?

106

Ich kann nicht herausfinden, wie ich das für mein Leben tun soll, außer einen Find- Replace auf 4 Feldern durchzuführen und in Tabs zu konvertieren ( Version 0.10.2 ). Ich kann mir keinen Editor / keine IDE vorstellen, der / die keine spezielle Funktion dafür hat. Funktioniert VSCode?

Zach Lysobey
quelle

Antworten:

180

Seit dem Fix von: https://github.com/Microsoft/vscode/issues/1228 unterstützt der Editor dies sofort. Gehen Sie einfach für:

  1. F1,
  2. indentationToSpacesoder indentationToTabs(je nach Bedarf)
  3. Enter.
Peter Butkovic
quelle
22
Dies konvertiert nur führende Leerzeichen / Tabulatoren.
Nigel Scott
13
Für Schritt 1 könnten Sie auch tunctrl+shift+p
AlexG
Siehe meine Antwort unten zum Konvertieren nicht führender Leerzeichen / Tabulatoren. stackoverflow.com/a/51735845/263139
jrupe
7
Keine der Antworten konvertiert jede Registerkarte in die richtige und unterschiedliche Anzahl von Leerzeichen. Geben Sie beispielsweise diesen Text ein und konvertieren Sie dann: Zeile 1: "A \ tB". Zeile 2: "ABC \ tD".
Typpo
DANKE Ich bin seit 2 Stunden in Threads verloren und das ist was ich brauchte
Brian White
52

Eine andere Möglichkeit besteht darin, auf die aktuelle Einrückung (Tab / Leerzeichen: n) in der Fußzeile zu klicken, um Ihre Einrückungsoptionen zu öffnen, in denen Sie auswählen können, was Sie tun möchten. Geben Sie hier die Bildbeschreibung ein

maximal
quelle
9
Dadurch werden nur Registerkarten in Einrückungen konvertiert, nicht alle Registerkarten.
David gegeben
38

Wenn Sie versuchen, nicht führende Tabulatoren in Leerzeichen umzuwandeln (oder umgekehrt), können Sie eine Regex-Suche und Ersetzung verwenden.

  1. Drücken Sie STRG + H.
  2. Klicken Sie auf die .*Schaltfläche, um mit regulären Ausdrücken zu suchen.
  3. Um nach Registerkarten zu suchen, geben [\t]Sie in das Feld Suchen ein.
  4. Geben Sie Leerzeichen in das Feld Ersetzen ein und führen Sie das Ersetzen durch.

Suchfeld im Regex-Modus: Screenshot des VSCode-Regex-Suchfelds

jrupe
quelle
21
Dadurch wird jede Registerkarte in die gleiche Anzahl von Leerzeichen konvertiert, was nicht korrekt ist.
David gegeben
funktioniert nicht, füge mehr Leerzeichen hinzu und alles wird durcheinander gebracht
Emmanual
Dies ist sehr hilfreich, wenn Sie ein tabulatorgetrenntes Datenformat in ein durch Kommas getrenntes konvertieren möchten. :)
Breedly
6
  1. Wählen Sie Ersetzen: STRG-H
  2. Geben Sie im Feld Suchen die Registerkarte Horizontal ein: Halten Sie ATL gedrückt und geben Sie 009 auf der Tastatur ein.
  3. Geben Sie ein Leerzeichen (oder mehrere Leerzeichen) in das Feld Ersetzen ein: Drücken Sie die Leertaste
  4. Drücken Sie die Eingabetaste, um Tabulatoren durch Leerzeichen zu ersetzen.
user9700262
quelle
1
Dies hat bei mir nicht funktioniert, aber ich habe unten eine Antwort zu nicht führenden Leerzeichen / Tabulatoren mit regulären Ausdrücken veröffentlicht.
Jrupe
8
Dadurch wird jede Registerkarte in die gleiche Anzahl von Leerzeichen konvertiert, was nicht korrekt ist.
David gegeben