Webkrauts Logo

Webkrauts Webkrauts Schriftzug

- für mehr Qualität im Web

Ein Texteditor zum Verlieben

Sublime Text 2

Ein Texteditor zum Verlieben

»Aller Anfang ist schwer« – das gilt auch für Texteditoren. Sublime Text 2 ist grundsätzlich einfach gehalten, aber leicht erweiterbar. Er versucht, den Einstieg mit ein paar interessanten Bedienkonzepten zu erleichtern, die das mühsame Erlernen und Verinnerlichen von Tastaturkürzeln leichter machen sollen.

Sublime Text 2 (ST2) hat sich in kurzer Zeit zu einem der Lieblingseditoren von Webworkern in aller Welt entwickelt, die einen »einfachen« Editor einer Entwicklungsumgebung vorziehen.

ST2 ist rasend schnell, auch und gerade bei der Suche von und in Dateien, unterstützt eine einfache und effiziente Bedienung über die Tastatur und ist zudem für alle drei großen Betriebssysteme verfügbar. Es wird zwar eine Lizenzgebühr von 59 US-Dollar fällig, doch kann der Editor zuvor ohne Einschränkungen getestet werden. Zudem ist die Lizenz nicht plattformbezogen.

Ein Wermutstropfen hingegen ist die bislang noch spärliche Dokumentation. Interessenten sollten zudem bedenken, dass ST2 eher als grundlegender (aber konfigurier- und erweiterbarer) Texteditor konzipiert ist, nicht als voll ausgestattete Entwicklungsumgebung. Das macht ihn zwar wunderbar flexibel, aber nicht unbedingt für jeden Benutzer intuitiv bedienbar.

Der erste Eindruck

Das Editorfenster von ST2 ist relativ minimalistisch: Reiter am oberen Rand zur Unterscheidung und Manövrierung der geöffneten Dateien, eine Statuszeile mit Angaben zu Zeile, Spalte, Tabs/Spacing und Auswahl des Syntaxhighlightings.

Das Editorfenster von Sublime Text 2 mit Seitenleiste und Minimap
Das Editorfenster von Sublime Text 2 mit Seitenleiste und Minimap

Auffallend sind das »ab Werk« dunkle Farbschema und die sogenannte Minimap, eine stark verkleinerte Vorschau des geöffneten Dokumentes, über die innerhalb der Datei navigiert werden kann. Öffnet der Benutzer eine Datei oder ein Verzeichnis in ST2, erscheint zudem eine Seitenleiste mit einem Verzeichnisbaum.

ST2 kommt mit über 20 verschiedenen, z.T. auch hellen Farbschemata für das Syntaxhighlighting; das generelle User-Interface kann über Themes angepasst werden.

… und mehr

Alles aufzuführen, was ST2 kann, würde den Rahmen dieses Artikels sprengen. Bereits ohne Erweiterungen beherrscht der Editor z.B.:

  • Code-Faltung: Einklappen logisch zusammengehörender Abschnitte im Quelltext
  • Snippets: Einfügen von (auch selbst definierbaren) Code-Blöcken über Schlüsselwörter
  • Integration von Build-Skripten: Ausführen externer Programme und Skripte direkt aus dem Editor heraus
  • Aufteilung des Editor-Fensters: Anordnung parallel geöffneter Dokumente in Reihen und Spalten
Das Editorfenster aufgeteilt in 2 Spalten, die unterschiedliche Dateien anzeigen
Das Editorfenster aufgeteilt in 2 Spalten, die unterschiedliche Dateien anzeigen

Nicht zuletzt durch die modulare Erweiterbarkeit dürften sich in ST2 vermisste Features auf Einzelfälle beschränken. Für nahezu alle wünschenswerten Features, die im Kern des Editors nicht enthalten sind, gibt es Erweiterungspakete.

Ein wenig Einrichtungsarbeit

Texteditoren sind für Entwickler das zentrale Werkzeug, in dem sie einen Großteil ihres Tagewerks verrichten. Es ist daher extrem wichtig, dass ein Editor sich exakt an die individuellen Vorlieben und Bedürfnisse anpassen lässt. ST2 löst dies über zwei Konfigurationsdateien – die allerdings ohne grafisches Interface auskommen müssen.

Die Konfiguration ist aufgeteilt in Einstellungen und Tastaturkürzel, wobei der Benutzer in beiden Fällen über entsprechende Menüpunkte Zugriff auf die Standard- und die Benutzereinstellungen hat. Bearbeitet werden sollten jedoch ausschließlich letztere, da die Standardwerte bei einem Update zurückgesetzt werden.

Zudem können eigene Einstellungen für jeden Syntax-Modus vorgenommen werden, es sind also z.B. andere Vorgaben für HTML- und CSS-Dateien möglich. Auch für den sogenannten »Distraction Free«-Modus, einen Vollbildmodus ohne störende Interface-Elemente, gibt es eine separate Konfiguration.

Alle Konfigurationsdateien sind im JSON-Format notiert und werden direkt in ST2 bearbeitet. Es empfiehlt sich, zunächst einen Blick in die ausführlich kommentierten Standardvorgaben zu werfen und in die benutzerspezifischen Einstellungen nur das zu übernehmen, was abweichend konfiguriert werden soll.

Die Konfigurationsdateien können über das Menü Sublime Text/Preferences/Settings - User bzw. Keybindings - User direkt in ST2 geöffnet werden.Um also zum Beispiel die verwendete Schriftart auf Menlo 14 Punkt zu stellen, muss Folgendes in die Settings – User eingetragen werden:

  1. {
  2.   "font_face": "Menlo",
  3.   "font_size": "14.0"
  4. }

Änderungen an den Konfigurationsdaten werden normalerweise ohne Neustart direkt nach dem Speichern wirksam.

Einfach erweitern

Nahezu alles, was ST2 nicht »ab Werk« beherrscht, kann über Erweiterungen (»Packages«) nachgerüstet werden. Die zentrale Seite für Erweiterungen aus der Community listet derzeit (Stand: 15. Dezember 2012) 862 Pakete, die allerdings teilweise die gleiche Funktionalität abdecken. Darüber hinaus kann ST2 in vielen Fällen bestehende Themes und Bundles für TextMate verwenden.

Das erste installierte Paket sollte in jedem Fall der Paketmanager Package Control sein. Dessen Installation ist leider etwas umständlich, dafür ist die Installation der weiteren Pakete dann denkbar einfach.

Einmal installiert, ist Package Control über den Menüpunkt Preferences/Package Control zu erreichen und leistet alles, was ein Paketmanager können muss. Auflisten und suchen, (de-)installieren und aktualisieren von Paketen dürften die gängigsten Funktionen für Endnutzer sein. Letzteres ist (manuell) übrigens gar nicht nötig; gemäß Voreinstellung aktualisiert Package Control beim Start des Editors und alle sechs Stunden automatisch installierte Pakete.

Die Installation von zusätzlichen Paketen über Package Control
Die Installation von zusätzlichen Paketen über Package Control

Es ist schwierig, Pakete zu empfehlen – dafür sind die individuellen Anforderungen einfach zu unterschiedlich und die Menge der verfügbaren Pakete zu groß. Für nahezu jeden Webworker dürfte das HTML5-Paket interessant sein, da ST2 »ab Werk« weder Syntax-Highlighting noch Snippets für HTML5 mitbringt.

Langsam rantasten

Sich mit einem neuen Editor anzufreunden ist eine der schwierigsten Aufgaben überhaupt. Tastaturkürzel sind im Muskelgedächtnis fest abgelegt, Bedienkonzepte im Laufe intensiver Benutzung fest in Arbeitsabläufe übergegangen – einfacher ausgedrückt: Der Mensch ist ein Gewohnheitstier.

ST2 versucht mit ein paar pfiffigen Ideen, diese Umstellung so leicht wie möglich zu machen. Die Grundidee dahinter ist stets, bei jedem Einzelschritt im Editor ein wenig und somit in der Summe sehr viel Zeit zu sparen – also mehr Arbeitszeit durch weniger Bedienarbeit zu schaffen.

ST2 bietet einige Bedienkonzepte, die der Tastaturnutzung sehr entgegenkommen. Genauer gesagt ist ST2 mit diesen Konzepten schneller und effizienter zu bedienen, wenn Maus oder Trackpad komplett ignoriert werden. Das ist in einem Texteditor sinnvoll, zumal der unergonomische Wechsel zwischen Tastatur und Maus entfällt (aber stets als Alternative erhalten bleibt).

Im Folgenden sind stets die Tastaturkürzel unter OSX angegeben. Unter Windows und Linux wird in den meisten Fällen Cmd durch Ctrl ersetzt.

Über Cmd+Shift+P öffnet sich die sogenannte Command Palette, in der sämtliche Kommandos des Editors über eine unscharfe Suche (fuzzy search) zu finden und ausführbar sind. Anstatt sich z.B. das Tastaturkürzel für »Speichere alle offenen Dateien« einzuprägen, können Benutzer in der Command Palette »sav« eingeben – die Auswahl der Kommandos wird in Echtzeit auf passende Treffer eingeschränkt.

Ebenfalls sehr praktisch, gerade in umfangreicheren Projekten, ist die über Cmd+p ausgelöste Funktion Goto Anything. Genau wie in der Command Palette können hier über eine unscharfe Echtzeit-Suche zum Projekt gehörende oder im Editor geöffnete Dateien direkt angesprungen werden. Der Clou dabei: Die eingegebenen Suchbegriffe werden nicht nur auf den Dateinamen, sondern auf den kompletten Dateipfad angewendet.

Über die zusätzlich Eingabe von @ kann ST2 zudem Symbole direkt anspringen. Was genau Symbole sind, hängt von der jeweiligen Datei ab – in HTML-Dateien können es IDs sein, in CSS-Dateien Selektoren usw. Auch diese Suche ist unscharf und in Echtzeit, zudem kann der Benutzer sie direkt mit der Dateiauswahl von Goto Anything kombinieren. (Alternativ ist die Symbolsuche über Cmd+r erreichbar.) So würde beispielsweise die Eingabe sty@art den Selektor article in der Datei style.css direkt und in Echtzeit anspringen – auch wenn aktuell eine andere Datei bearbeitet wird.

Schnelles suchen, noch schnelleres ersetzen

Ein wesentlicher Bestandteil der Arbeit in einem Texteditor ist das Suchen und Ersetzen von Code, schlimmstenfalls an mehreren Stellen in einer Datei. Auch hier bietet ST2 ein paar nützliche Helfer, hohe Effizienz und rasante Geschwindigkeit. Natürlich stehen auch übliche Mechanismen wie Suchen und Ersetzen oder reguläre Ausdrücke zur Verfügung. Effizienter und schneller sind jedoch zwei Features von ST2: inkrementelle Suche und multiple Auswahl.

Über das Kürzel Cmd+i öffnet ST2 ein Suchfenster, dessen Eingabe in Echtzeit das nächste Vorkommen des Suchbegriffes anspringt und auswählt. Gleichzeitig werden weitere Vorkommen des Suchbegriffes optisch hervorgehoben. Über die Eingabetaste wird der jeweilige Treffer selektiert und geschlossen.

Mit einer multiplen Auswahl ist es möglich, ein Dokument gleichzeitig an mehreren Stellen zu ändern. Als einfaches Beispiel nehmen wir an, dass in einem HTML-Dokument alle h2-Elemente in h3-Elemente geändert werden sollen. Nach einer Suche nach einem Vorkommen von h2 (es reicht dabei, den Textcursor auf das Element zu setzen) kann der Benutzer dann z.B. über das Kürzel Cmd+d weitere oder über Cmd+Ctrl+g alle Vorkommen auswählen (alternativ lassen sich bei gedrückter Cmd-Taste mehrere Selektionen mit der Maus vornehmen). Alle getippten Änderungen werden nun parallel an allen ausgewählten Elementen vorgenommen.

Projekte verwalten

ST2 verfügt über eine rudimentäre Projektverwaltung, die in erster Linie dazu dient, schnell zwischen Projekten umzuschalten und die dazugehörigen Dateien zu verwalten. Auch Projekte werden in ST2 über JSON-Dateien konfiguriert, die im Projektverzeichnis gespeichert werden können und als Vorgabe lediglich den Pfad zu besagtem Verzeichnis enthalten. In diesen .sublime-project-Dateien lassen sich:

  • Verzeichnisse zum Pfad hinzufügen
  • Dateien und/oder Verzeichnisse aus der Dateiliste der Projektes ausfiltern
  • sämtliche Einstellungen auf Projektbasis vornehmen
  • ein projektspezifisches Build-System einrichten

ST2 führt eine Liste der zuletzt benutzten Projekte, zwischen denen der Benutzer über Cmd+Ctrl+p direkt im Editorfenster wechseln kann. Eine ungewohnte Eigenheit der Projektverwaltung: Es gibt keine – ausdrücklich so benannte – Funktion »Neues Projekt anlegen«; stattdessen muss eine geöffnete Gruppe von Dateien und/oder Verzeichnissen als Projekt gespeichert werden, um ein Projekt anzulegen.

Warm geworden?

Weitere, zum Teil detailliertere Einblicke in ST2 bietet ein kostenloser (englischer) Videokurs von Tuts+, der auch auf einzelne Pakete eingeht.

Kommentare

Ingo
am 15.12.2012 - 09:23

"Sublime Text" ist wirklich klasse. Was fehlt ist eine FTP-Unterstützung, die per Plugin (kostenpflichtig) nachgerüstet werden muss. Hier übrigens noch eine sehr gute inoffizielle Dokumentation:

http://docs.sublimetext.info/en/latest/

Permanenter Link
Matthias Mees

Matthias Mees (Autor)
am 15.12.2012 - 13:07

Man kann sicherlich darüber streiten, ob ein Texteditor FTP-Anbindung haben muss.

Richtig ist, dass es ein kostenpflichtiges (s)FTP-Plugin gibt. Genauso gibt es aber auch ein freies FTP-Plugin, das ich allerdings nicht kenne und das leider noch kein sFTP unterstützt.

Permanenter Link

Christoph Lieck
am 18.12.2012 - 13:32

SFTP kostet 16,- Dollar - dafür hat Will Bond tagelang dagesessen und das Ding programmiert. Ich habe die 16 Dollar gerne bezahlt und kann mir ST2 ohne das Plugin nicht mehr vorstellen. Am ganzen ST2 Thema ist schade, dass Jon, der Entwickler, seit Juni abgetaucht ist und keiner weiß, ob und wie es mit dem Editor weitergeht. Von den zigtausend Editoren, die ich vorher ausprobiert habe, ist ST2 der einzige, der mich voll überzeugt hat.

Permanenter Link
Matthias Mees

Matthias Mees (Autor)
am 19.12.2012 - 11:44

Es ist sehr, sehr still geworden, das stimmt. Allerdings hat Jon auch nach Juni noch (sehr wenig) getwittert.

Permanenter Link

Paul
am 21.12.2012 - 01:42

Ich meine, ein Editor sollte keinen eingebauten FTP-Client besitzen. Warum nicht auch gleich noch SCP oder SSH einbauen?

Was ich für erwähnenswert halte ist, dass das Programm z.Zt. 59 US$ kostet und zudem unter einer proprietären Lizenz vertrieben wird. Sollte sich ein schwerwiegender Fehler in der Software finden und sich der Entwickler rar machen, wird es keine Aktualisierung geben. Bei TextMate ist etwas ähnliches ja bereits passiert, soweit ich das als Windows-Nutzer mitbekommen habe. Bei etwas so essenziellem wie einem Texteditor würde ich mir das zweimal überlegen.

Permanenter Link

Phasenkasper
am 15.12.2012 - 09:30

Schöner Artikel, der mir zeigt, dass ich die ganzen Funktionen von Sublime nicht mal ansatzweise nutze, obwohl ich den Editor schon einige Zeit verwende. Aber dem Artikel sei dank, dass ich Sublime jetzt noch besser und schneller nutzen kann.

Permanenter Link

Maren Lange
am 15.12.2012 - 12:57

Schöner Artikel zu den Möglichkeiten des Editors. Hatte vor einiger Zeit auch mal Sublime Text2 getestet - allerdings nicht sehr lange. Irgendwie konnte ich mit dem Konzept nicht hundertprozentig warm werden.
Als reinen Editor nutze ich lieber weiterhin notepad++.

Permanenter Link
Matthias Mees

Matthias Mees (Autor)
am 15.12.2012 - 13:03

Es ist kein Geheimis, dass ST2 kein Editor für jedermann ist – das hat sich schon in der redaktionellen Vorbereitung dieses Artikels gezeigt. Ich würde behaupten, das gilt für nahezu jeden Editor.

Ich persönlich bin mit noch keinem Editor so schnell warm geworden wie mit ST2 – allerdings auch erst im dritten Anlauf. Auch das ist natürlich subjektiv.

Permanenter Link

Ray
am 16.12.2012 - 02:35

Sublime ist geil! In meiner Welt heist es Vim vs. Sublime, nachdem Textmate sich nicht weiterentwickelt hat. Mit den Packages wird er erst zum echten Entwicklertool.

Einzig die $59 sind etwas viel, das schieb ich seit langem vor mir her, die verdienen das Geld absolut, aber vielleicht wären 3 Spendenstufen $10, $100, $500 angebrachter.

Permanenter Link
Michael van Laar

Michael van Laar (Webkraut)
am 16.12.2012 - 11:12

Seit Anfang des Jahres bin ich begeisterter ST2-Nutzer. Nachdem ich jahrelang mit Notepad++ gearbeitet habe, fand ich die oft kommandozeilenartige Bedienung von ST2 anfangs sehr gewöhnungsbedürftig. Aber daran hat man sich nach kurzer Zeit gewöhnt.

Permanenter Link

Thomas
am 16.12.2012 - 22:46

Kann ST2 auch nur empfehlen! Anfangs wirklich ein wenig ungewöhnlich, will man nach einiger Zeit die Features nicht mehr missen. Schön auch, dass es ST2 plattformübergreifend gibt, da ich bisher im privaten Scribes benutzt habe, welchen es leider nur für Linux gibt . Einziger Wermutstropfen, wie oben schon genannt, ist der Preis. Für mich als Freizeit-Webworker irgendwie ein wenig hoch, abgestufte Preismodelle wären daher schon wünschenswert.

Permanenter Link

Tekl
am 17.12.2012 - 10:08

Gibt's denn mittlerweile ein Live-Preview? Konnte auf die schnelle nix finden. War für mich damals der Grund bei Espresso zu bleiben, auch wenn die Editor-Komponente nicht so ideal ist. Teste gerade PhpStorm, welche ein Live-Preview mittels einer Chrome Extension lösen.

Permanenter Link

Pascal
am 18.12.2012 - 17:41

Ich habe meine Editor wie folgt eingerichtet:
http://pascalkremp.com/sublime-text-2-einrichten-tutorial/

In dem Beitrag mache ich auch darauf aufmerksam, welche Features man eventuell übersieht, aber nutzen sollte!

@Tekl: Live-Preview gibt es nicht. Allerdings empfehle ich dir folgendes:
http://yeoman.io/

Yeoman + Git + Terminal + Sublime Text = Ultimativ (meiner Meinung nach)

Permanenter Link

Die Kommentare sind geschlossen.