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?

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.

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


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


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.

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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.