Ich habe beschlossen, meine Tab-Größe von 4 auf 2 zu ändern, denn warum nicht? Jeder andere, der sich den Code ansehen möchte, kann sicherlich seine Einstellungen verwenden.
Eine Frage jedoch.
Wenn ich die Tabulatortaste drücke, wird 2 eingefügt, aber Vims Autoindent setzt immer noch 4. Was ändere ich, um diese 2 zu machen?
Eine weitere nicht verwandte Frage: Welcher Einrückungsstil eignet sich am besten für C und ähnliche Sprachen? Ich habe 1 TB verwendet, aber es gibt so viele zur Auswahl. Sind einige von ihnen professioneller oder bevorzugt?
ts
2, 4 oder 8Vim Einrückungsoptionen
Vim verwendet hauptsächlich 3 Einstellungen für die Einrückungsgröße:
tabstop
,ts
: Wenn Vim in einer Datei, die Sie öffnen, auf eine Tabelle stößt, wird die Registerkarte als {ts} Leerzeichen angezeigt (siehe Tabstop-Hilfe oder geben Sie:help tabstop
Vim ein).softtabstop
,sts
: Wenn Sie eine Datei bearbeiten und die Tabulatortaste drücken, definiert Vim mit dieser Einstellung die Breite der eingefügten Tabellierung (siehe Softtabstop-Hilfe oder geben Sie:help softtabstop
Vim ein).shiftwidth
,sw
: Die Anzahl der Leerzeichen Vim verwendet , wenn einrücken, entweder mit autoindent Sachen oder den üblichen>>
,<<
Befehlen. Wie Heptite bemerkte, war dies das, wonach Sie in diesem speziellen Fall gesucht haben. Und neuere Versionen von Vim erlauben es Ihnen tatsächlich, diese Option nicht zu definieren, undshiftwidth
würden dann den durch definierten Wert annehmentabstop
. Sehr praktisch (siehe Shiftwidth-Hilfe ).Beispiel
Wenn Sie beispielsweise die folgenden Einstellungen verwenden:
Diese würden das folgende Verhalten erzeugen:
tabstop
Wert auf 2 gesetzt ist, entspricht dies tatsächlich 2 Tabellen. Dies ist ziemlich einfach zu überprüfen. Verwenden Sie einfach die Optionenlist
undlistchars
, um Tabellen anzuzeigen.>>
, wird die Einrückung 8 Leerzeichen breit (daher entspricht dies 4 Tabellen, basierend auf demtabstop
Wert, wie oben).Empfehlungen für Vim-Einrückungen (aus der Vim-Dokumentation)
Von der
tabstop
Hilfe (:help tabstop
in Vim):Ich persönlich verwende hauptsächlich die zweite Lösung mit 2 Leerzeichen breiten Tabellen.
quelle
Laut http://vim.wikia.com/wiki/Indenting_source_code bewirkt der Befehl "Einzug des Dateityp-Plugins ein", dass das Programm filettypspezifische Einrückungsskripte verwendet, die sich im Unterverzeichnis "Einzug" der Vim-Installation befinden. Auf dieser Seite wird außerdem angegeben, dass 'cindent' in C- und C ++ - Dateien automatisch verwendet wird und dass Sie diesen Befehl nicht manuell verwenden müssen.
Ich bin mit Vim nicht sehr vertraut, da ich es nur für gelegentliche grundlegende Textbearbeitungen verwende, aber ich würde versuchen, den Befehl 'cindent' manuell auszugeben, um die Standardgröße für die automatische Indentierung von Vim für diesen Code zu verwenden. Wenn dies nicht funktioniert, können Sie versuchen, den Einzug in das Dateityp-Plugin einzuschalten und die Skripte selbst zu bearbeiten, um die gewünschten Einrückungen zu erhalten.
quelle