Wie erstelle ich ein neues Snippet in TextMate 2?

30

Wie erstelle ich ein neues Snippet in TextMate 2? Wenn ich Bundles bearbeiten gehe, kann ich nicht herausfinden, wie ich ein neues Snippet erstellen kann.

jshen
quelle

Antworten:

43

TextMate 2 wurde noch nicht veröffentlicht und befindet sich in einem Alpha-Status. Der Bundle-Editor ist einer der Bereiche, die sehr wichtig sind viel nicht endgültig .

Während ein Proof-of-Concept-Bundle-Editor enthalten ist, ist er provisorisch, hat einige Mängel und nicht wie wir uns den endgültigen Bundle-Editor vorstellen.

Diese Anleitung bezieht sich auf Version 2.0 (8956), Stand 20. Januar 2012. Denken Sie vor dem Down-Down-Abstimmen nach.


Wählen Bundles »Bundles bearbeiten… im Menü TextMate 2.

Wählen Sie das Bundle aus, dem Sie ein Snippet hinzufügen möchten, z. HTML . Drücken Sie Cmd-N um ein neues Bündelelement zu erstellen, und wählen Sie Ausschnitt .

Es wird automatisch zum hinzugefügt Menüaktionen Unterabschnitt. Sie können die Einstellungen, z. B. die Tastenkombination, in der Schublade und den Inhalt im Editor unten ändern.

Geben Sie ein Tab Auslöser Sie möchten eine Folge von Zeichen (z. B. snip ), gefolgt von Drücken von Tab das Snippet auslösen oder eine Tastenkombination zuweisen.

Bereichsauswahl gibt an, in welchen Bereichen das Snippet mit dem Auslöser eingefügt werden kann. Um die Gültigkeitsbereiche der ausgewählten Sprache herauszufinden, wechseln Sie zu einem Dokument mit dieser Syntax und drücken Sie Strg-Umschalttaste-P um alle anwendbaren Bereiche unter dem Cursor anzuzeigen.

Wenn Sie beispielsweise möchten, dass Ihr Snippet an einer beliebigen Stelle in HTML-Dokumenten verfügbar ist, geben Sie Folgendes ein text.html.basic; oder source.shell für Shell-Skripte. Sie können mehrere durch Kommas getrennte Bereiche eingeben oder nur Präfixe für Bereichsnamen (z. B. source ) für alle übereinstimmenden source.* Bereiche.

Sehen Sie sich einfach alle anderen Ausschnitte an, auf die Sie über dieses Fenster zugreifen können, und sehen Sie, wie sie das gewünschte Verhalten erreichen.

Daniel Beck
quelle
1

Hinzufügen: Nachdem Sie einem Bundle ein Snippet hinzugefügt haben, möchten Sie möglicherweise die Position im Bundle-Menü ändern. Dies wird derzeit in der GUI nicht unterstützt (Stand 2.0-alpha.9401).

Sie können dies manuell tun, wenn Sie ein relativer Experte sind. Sie können das Bundle brechen, indem Sie hier Fehler machen wagen Sie sich nicht undenkbar ein .

  1. Suchen Sie nach der UUID Ihres neuen Bündelelements (oder eines beliebigen Paketelements, das Sie verschieben möchten

    • Das Element befindet sich in einem Unterordner von

    "~ / Library / Anwendungssupport / Avian / Bundles / yourbundle /"

  2. Option-Klicken Sie auf das Bündelelement, um es als Text in textmate zu öffnen, und kopieren Sie die Uuid-Zeichenfolge. Das sieht ungefähr so ​​aus:

    <string>E1ABEC5E-DF5F-4C09-BA9F-E17504F456C0</string>
    
  3. Öffnen Sie die info.plist Ihres Bundles

    • Hierbei handelt es sich um eine XML-Datei, in der die Menüelemente einschließlich Untermenüs und die darin enthaltenen Elemente aufgelistet sind. Sie möchten Ihre uuid-Zeichenfolge an der entsprechenden Stelle in der entsprechenden Liste hinzufügen. Wenn Sie es in einem vorhandenen Untermenü namens "Entwicklung" haben wollten, suchen Sie einfach in der Liste nach "Entwicklung", und darüber werden Sie das Feld mit den Elementen sehen: Fügen Sie Ihr neues Snippet dort ein, wo Sie es haben möchten

    • Die Liste finden Sie unter

    "~ / Library / Anwendungssupport / Avian / Bundles / yourbundle / info.plist"

tim
quelle