Wenn sich in Ihren Bearbeitungsdateien physische Registerkarten befinden, können Sie tatsächlich die optische Breite der Registerkarten ändern, indem Sie den 'tabstop'
Optionswert ändern . Innerhalb des Textes bleiben die Registerkarten gleich.
In :set expandtab
Ihren Dateien sollten sich jedoch keine Registerkarten befinden (sofern diese regelmäßig bearbeitet wurden). Bei allen Änderungen, die Sie vorgenommen haben, werden bei jedem Drücken die entsprechenden Leerzeichen eingefügt Tab. Das führt zu dem von Ihnen gemeldeten Verhalten: Bei neuen Änderungen werden für jede Registerkarte zwei Leerzeichen eingefügt. Die vorhandenen Zeilen enthalten jedoch den Einzug von 4 Leerzeichen.
Wenn Sie die Breite des Einzugs ändern möchten, wenn Leerzeichen verwendet werden, müssen Sie die Anzahl der Leerzeichen physisch ändern. Reduzieren Sie beispielsweise 4 Leerzeichen auf 2. Vim bietet den :retab
Befehl ( :help change-tabs
) an, aber die Verwendung mit der Leerzeichen-basierten Einrückung ist umständlich und wirkt sich auch auf alle Leerzeichen aus, nicht nur auf den Einzug am Zeilenanfang. Es ist einfacher, :substitute
dies zu verwenden. Der folgende Befehl halbiert die Anzahl der Leerzeichen am Zeilenanfang:
:%substitute/^\( \+\)\1/\1/e
TL; DR : Mit physischen Registerkarten im Text können Sie das Erscheinungsbild über den 'tabstop'
Wert ändern. Bei physischen Leerzeichen müssen Sie die Anzahl der Leerzeichen im Text konvertieren.