Um das Verhalten von Sublime Text beim Einrücken von Zeilenumbrüchen anzupassen, können Sie je nach aktueller Zeile die whatever.tmPreferences
Datei entsprechend ändern und die Werte increaseIndentPattern
und setzen Optionen, wie zum Beispiel in this other answer gezeigt.So erstellen Sie Sublime Text 3 Einrücken von Zeilenumbrüchen, wenn Caret in Klammern (oder anderen Symbolen) ist
Allerdings kann ich nicht zu arbeiten scheinen, wie das folgende Verhalten zu erzeugen: Da eine Zeile wie
[<cursor here>]
mit dem Cursor zwischen den eckigen brakets, Press- enter
ich folgendes Ergebnis wollen:
Dies ist zum Beispiel was passiert, wenn Sie eine xml
Datei ändern, drücken Sie die Eingabetaste zwischen zwei Klammern, wie in <sometag><cursor here></sometag>
.
Ich habe versucht, in die tmPreferences
Dateien für die xml
zu suchen, aber ohne Erfolg.
Eine ähnliche Frage wurde here gefragt, aber die vorliegende ist anders aus mehreren Gründen:
- ich dieses Verhalten möchte nur für bestimmte Dateierweiterungen implementiert werden, und mit einem Paket verschickt werden . Also frage ich auch, wo genau ich die Anweisungen für diese benutzerdefinierte Tastaturkürzel legen soll.
- In der verknüpften Frage ist die Sache einfacher: einfach Zeilenumbrüche zwischen einer Art Klammern hinzufügen und einfügen. Es ist für mich nicht einfach, dieses Verhalten zu verallgemeinern, wie in dem oben zitierten Beispiel, in dem wir einen Zeilenumbruch zwischen XML-ähnlichen Tags wünschen, da wir uns in diesem Fall mit den Regexes und verifizieren müssen und richtige Muster stimmen überein.
Wie kann dieses Verhalten implementiert werden?
Mögliche Duplikate von [Wie Bracket Einzug Verhalten in ST3 einstellen] (http://stackoverflow.com/questions/41456641/how-to-set-bracket-indentation-behavior-in-st3) –
@KeithHall thanks for der Link. Das ist zwar sehr verwandt, aber nicht wirklich eine direkte Antwort. Im Fall von 'xml' zum Beispiel, das im Beitrag gezeigt wird, kann ich keine' .suide-keymap' Datei im 'XML'-Ordner in' Packages' finden, so dass ich nicht sicher bin, wo diese Tastenkürzel gesetzt wurden. – glS
Ihre Benutzer-Tastenbelegungen befinden sich immer in Ihrem 'Benutzer'-Paket, sie sind nicht in dem Paket, das sich auf den Ort bezieht, an dem Sie sie verwenden möchten. Damit die verknüpften Bindungen nur für eine XML-Datei funktionieren, müssen Sie lediglich einen zusätzlichen Kontext hinzufügen, der überprüft, ob es sich um eine XML-Datei handelt. Sehen Sie sich die letzte Bindung in der Standard-Tastaturbelegungsdatei als Beispiel an. – OdatNurd