Gibt es eine Möglichkeit, Sublime Text 2 zu zwingen, bei der Arbeit mit Ruby -Dateien immer zwei Leerzeichen pro Tab einzurücken?
Ich weiß, dass Einrückungen unter der Menüoption view -> indentation
festgelegt werden können, aber sie bleiben nicht erhalten. Jedes Mal, wenn ich eine neue Datei öffne und auf die Registerkarte drücke, wird diese auf vier Leerzeichen zurückgesetzt.
Wenn Sie es für alle Dateien wollen, gehen Sie zu Preferences -> Settings - Default/User
. Wie jedoch aus den folgenden Kommentaren hervorgeht, können syntaxspezifische Einstellungen dies nur auf die von Ihnen ausgewählten Sprachen beschränken.
Um diese Konfiguration auf Ruby Dateien zu beschränken, öffnen Sie zuerst eine Ruby Datei im Editor und gehen Sie dann zu Preferences -> Settings - Syntax Specific
. Dies sollte ein Einstellungsfenster mit dem Namen Ruby.sublime-settings
öffnen.
Speichern Sie diese Einstellungen:
{
"tab_size": 2,
"translate_tabs_to_spaces": true,
"detect_indentation": false
}
Wiederholen Sie diesen Vorgang für alle anderen Syntaxtypen, indem Sie eine Datei dieses Typs öffnen und zu den Voreinstellungen zurückkehren, um die richtige Voreinstellungsdatei für diese Syntax zu öffnen.
Ich habe dies so bearbeitet, dass die Zeile "detect_indentation" in den Kommentaren in den Anforderungen enthalten ist. Zuvor habe ich mit "Default/User" die Tabulatorgröße festgelegt und die Tabulatorerkennung nicht benötigt config oder aufgrund der Tatsache, dass ich selten Dateien mit Tabs geöffnet habe, weiß ich nicht.
Ein Neustart sollte nicht erforderlich sein, obwohl dies in einigen Fällen der Fall sein kann.
Wenn Sie die von Ihnen gewählte Registerkarteneinstellung erzwingen möchten und ignorieren möchten, was wahrscheinlich bereits in der Datei vor sich geht, sollten Sie detect_indentation
in Ihre Konfiguration aufnehmen (Ihre Benutzereinstellungen oder Ihre syntaxspezifischen Einstellungen, je nachdem, ob Sie es global oder global möchten pro Dateityp):
{
"tab_size": 2,
"translate_tabs_to_spaces": true,
"detect_indentation": false
}
Sie können dies auch mit dem Textlink in der unteren Leiste von Sublime Text 2 (auf der rechten Seite) tun, der standardmäßig "Tab Size 4" anzeigt. Klicken Sie darauf, und ein Fenster mit Optionen zum Festlegen der Tabulatorgröße aus einem Leerzeichen wird geöffnet Insgesamt bis zu 8 Leerzeichen und Optionen zum Konvertieren von Tabulatoren in Leerzeichen und Leerzeichen in Tabulatoren.
Sieht aus wie das:
Kann ich vorschlagen EditorConfig ? Es gibt eine Erweiterung zum automatischen Laden und Anwenden der .editorconfig
-Datei. Dann erstellen Sie einfach eine im Stammverzeichnis Ihres Projekts.
.editorconfig
[*.rb]
indent_style = tab
indent_size = 2
Auf diese Weise sind Ihre Einstellungen projekt- und dateispezifisch, wenn Sie für jedes Projekt oder jede Sprache unterschiedliche Stile verwenden.
So sieht mein eigener .editorconfig
aus.
# editorconfig.org
root = true
[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
Ich benutze Stupid Indent package.
Install Package
-> Stupid Indent
Preferences
-> Package Settings
-> Stupid Indent
-> Setting-Users
Kopieren Sie die Einstellungen (von Ruby
Part) in.
{
"configuration":
[
{
"patterns": ["*.rb"],
"tab_size": 2,
"translate_tabs_to_spaces": true
}
]
}
Ich folgte den vorherigen Antworten, einschließlich des Hinzufügens der Zeile detect_indentation, und meine Tabulatoren enthielten immer noch fünf Leerzeichen. Dann wurde mir klar, dass die Auswahl von Preferences -> Settings -> More -> Syntax Specific -> User
aus einer Ruby -Datei Ruby on Rails.sublime-settings
für mich und nicht Ruby.sublime-settings
öffnete.
Ich habe meine Ruby on Rails.sublime-settings
-Datei in Ruby.sublime-settings
umbenannt. Endlich haben zwei Tabulatoren funktioniert! Ich habe die gleichen Einstellungen auch in Ruby on Rails.sublime-settings
vorgenommen, nur um sicherzugehen.