Es kommt nicht oft vor das ich total begeistert von einem Plugin bin, aber gestern habe ich ein Sublime Text Package gefunden, das hat mich total vom Hocker gerissen. Mit TicketMaster ist es einfach möglich neue GitHub Issues direkt aus Sublime Text anzulegen.
TicketMaster
Das Plugin TicketMaster von Amit Bansil (GitHub) ist ein einfaches aber wie ich finde mächtiges Sublime Text Package. Es macht es möglich mit einem einfachen TODO Kommentar ein neues Issue auf GitHub zu eröffnen. So kann man in Ruhe weiter programmieren ohne aus dem „Flow“ gerissen zu werden.
Das Plugin ist noch ganz frisch und erst in Version 0.1.0 zu diesem Zeitpunkt verfügbar (20. August 2014). Amit betont im README, dass es noch eine frühe Alpha Version ist. Dennoch funktioniert es auf Anhieb und ohne Probleme.
Installation
Das Plugin kann, wie andere Packages in Sublime, über Package Control installiert werden. Damit es aber auch GitHub Issues erstellen kann muss es zugriff auf dein GitHub Repo bekommen. Dazu benutzt das Package die GitHub API und braucht einen Token.
Wenn das Plugin installiert ist kann man einfach im Command Palette den Befehl TicketMaster: Setup auswählen und das Package leitet einem auf diese Seite weiter: github.com/settings/tokens/new. Dort muss man einen Tocken erstellen.
Auf dieser Seite kann man dem Tocken jegliche Rechte geben oder nehmen. Für das Package ist allerdings nur repo oder public_repo wichtig. Es kommt in dem Fall darauf an, ob ihr nur Issues für ein öffentliches oder privates Repo erstellen wollt. In meinem Fall habe ich nur public_repo ausgewählt, da ich TicketMaster nicht für private Repos brauche. Es gilt, vergebe nur so viele Rechte wie du wirklich benötigst.
Der generierte Token muss dann in das gegebene Feld in Sublime eingefügt werden und ihr seid mit der Installation fertig.
Anwendung
Die Anwendung des Plugins ist Kinderleicht. In eurem Programmcode erstellt ihr einfach einen einzeiligen Kommentar der mit TODO beginnt und wählt über das Command Palette den Befehl TicketMaster: Create/Open new Issue und schon wird der Text hinter dem TODO als Titel für das Issue verwendet.
Für Leute die häufig neue Issues erstellen müssen empfehle ich ein Keybinding zu definieren. Dazu könnt ihr das folgende Listing verwenden und in Key Bindings – User einfügen:
[
// any existing bindings,
{"keys": ["ctrl+shift+i"], "command": "createissue"}]
]
Ausblick
TicketMaster ist echt ein genus und hilft mir beim Programmieren sehr. Es reist einem nicht aus dem Workflow. Ich bin gespannt was noch kommen mag. Eine Sache die ich mir wünschen würde ist, dass es möglich ist nicht nur den Titel anzugeben sondern ggf. sogar den Body für das Issue. Sprich, dass man einen Mehrzeiligen Kommentar verfasst und die erste Zeile der Titel und ab der zweiten Textzeile der Body anfängt. Aber das Plugin ist ja noch jung. Vielleicht kommt das noch.