Tabs durch Leerzeichen in allen Dateien ersetzen

In Quelltexten ist es üblich, anstelle eines echten Tabulators oder Tabs einige Leerzeichen zu verwenden, um Zeilen einzurücken. Häufig sind es 4 Leerzeichen, aber auch Einrückungen mit 2 oder 8 Zeichen sind geläufig. Anstatt die Tabs zu erhalten und nur die Tab-Breite anders darzustellen, empfiehlt es sich konsequent alle Tabs durch beispielsweise 4 Leerzeichen zu ersetzen, da ein Tabulator nicht überall mit der gleichen Breite dargestellt wird.

Besonders in Python ist dies ratsam, da z.B. der Rumpf einer Schleife oder Bedingung nicht durch Klammern, sondern durch Einrückungen dargestellt wird. Der Interpreter kann nicht wissen, ob er den Tabulator mit 2, 4 oder 8 Leerzeichen interpretieren soll. In anderen Sprachen ist es vielleicht nicht immer so sehr problematisch, aber dennoch unschön. Deswegen möchte man häufig in allen Dateien, in diesem Beispiel nur in denen mit der Endung .py, die Tabs durch 4 Leerzeichen ersetzen:

Die Option -name '*.py'  sollte nicht weggelassen und entsprechend je nach Dateityp angepasst werden. Es ist auch zu bedenken, dass auch Tabs in einem String ersetzt werden, aber falls man so etwas nicht verwendet, können die Tabs ruhig mit dieser Methode ersetzt werden.

4 Gedanken zu „Tabs durch Leerzeichen in allen Dateien ersetzen

  1. Hey,
    das ist ein schöner und praktischer Einzeiler!
    Aber bitte verallgemeinere die Leerzeichen/Tabulator Problematik nicht von Python auf andere Sprachen, in denen Einrückung nur eine optische Rolle spielt. Die meisten Editoren besitzen eine Einstellung um anzupassen, wie breit ein Tabulator dargestellt werden soll. Sozusagen ist es damit möglich, den Quelltext im bevorzugten Stil darzustellen. Das ist gerade für große Projekte mit vielen Personen praktisch, denn dann kann jeder seinen eigenen Stil benutzen, anstatt gezwungenermaßen bspw. 8 Leerzeichen zu verwenden.
    Darüber hinaus gibt es nur marginale Unterschiede zwischen der Einrückung durch Tabulatoren und Leerzeichen.
    Ich würde in einem Projekt mit mehreren Personen immer Tabulatoren bevorzugen, außer die Programmiersprache erlaubt es nicht.

    • Benutzte bitte NIEMALS Tabs in der Programmierung. Grundsätzlich nicht. Egal ob es Java, Scala, Python, Go oder whatever ist.
      Der Grund dazu ist relativ einfach:
      > A tab could be a different number of columns depending on your environment, but a space is always one column.

      Und die environment ist immer „anders“. Fängt an beim Betriebssystem, über Version des Betriebssystem bis hin zur IDE die du benutzt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.