19. Februar 2014
Fill-In-Snippets in TextExpander am Beispiel E-Mail
Neben einfachen Anwendungsfällen wie der Eingabe des eigenen Namens, der Mail-Adresse oder Telefonnummer bietet TextExpander (TE) weitere Funktionen, die das Tippen am Mac erleichtern. So lässt sich beispielsweise die Tab-Taste betätigen, wodurch das Ausfüllen ähnlicher Formulare schneller wird. Doch das ist nur eine von vielen, gar nicht so offensichtlichen Möglichkeiten von TE.
Die komplette Magie der sogenannten Fill-In-Snippets liegt dabei in dem kleinen Button über dem Kürzel bzw. dem Menü, was sich darunter versteckt. Dort im Punkt Ausfüllen (Fill-In) hast du mehrere Optionen:
- Einzeiliges Feld
- Mehrzeiliges Feld
- Popup-Menü
- Optionaler Abschnitt
Jede der Optionen öffnet ein Popup mit verschiedenen Möglichkeiten der Interaktion, je nachdem, was du vorher festgelegt hast. Ich möchte auf jede davon kurz eingehen und anhand des E-Mail-Beispiels den Nutzen verdeutlichen.[1]
Einzeiliges Feld
Das einfachste Beispiel für wiederkehrende Texte sind Anrede und Grußformel. Variabel ist dabei nur der Name des Empfängers. Also ein Snippet erstellt für
Hey EMPFÄNGER,
CURSOR HIER POSITIONIEREN
Viele Grüße,
Enno
und an der Stelle des Empfängers das obige Menü aufrufen sowie den Punkt Einzeiliges Feld wählen. Ein sogenanntes Popover mit den verfügbaren Optionen zeigt sich.
Der Name ist wichtig für eine erneute Verwendung zu einem späteren Zeitpunkt (komme ich noch drauf) und eine bessere Lesbarkeit des fertigen Snippet-Texts. Der Standardwert macht in diesem Fall keinen Sinn, kann aber durchaus hilfreich für andere Snippets sein. Beispiel? “Ich melde mich in XX Minuten”, wobei XX den Standardwert 15 annimmt. Die Festlegung der Breite ist sinnvoll, wenn du sicherstellen kannst, dass die Eingabe eine bestimmte Länge nicht überschreiten wird, wie z.B. im gerade genannten 15-Minuten-Beispiel. In dem Fall muss das Eingabefeld nicht mehr Platz einnehmen als nötig.
Das fertige Snippet[2] sieht in TE so aus:
Hey %filltext:name=Empfänger% %| Viele Grüße, Enno
Schon ein bisschen kryptisch, oder? Aber das soll uns nicht stören. Du kannst ein Kürzel vergeben (z.B. hheyp[3]) und beim ausprobieren feststellen, dass folgendes Fenster aufploppt:
Name eingeben, mit Enter bestätigen und loslegen mit dem eigentlichen Teil der Mail.
Mehrzeiliges Feld
Sobald es mal etwas mehr Text sein darf, könnte dir das mehrzeilige Feld geben, was du brauchst. Ich persönliche habe noch keinen Einsatzzweck dafür gefunden, da ich Texte, die über mehrere Zeilen gehen, gleich in der Zielanwendung eintippen kann.
Falls du aber einen Anwendungsfall findest, in dem ein Standardwert für diesen Text Sinn macht, könnte das mehrzeilige Feld wiederum Gold wert sein. Vielleicht solltest du dir aber auch überlegen, ob ein optionaler Abschnitt mit besagtem Text nicht sinnvoller wäre.
Optionaler Abschnitt
Angenommen du hast ein Produkt, einen Artikel oder was auch immer veröffentlicht, wozu recht viele E-Mails bei dir eintrudeln. Sobald in der Mail etwas Positives steht, möchtest du natürlich höflich sein und deine Freude darüber kundtun (Schön, dass es dir gefällt). Da aber nicht jeder etwas positives schreiben wird, möchtest du den Text nicht in jede Mail mit aufnehmen, also nur manchmal in deinem Snippet haben.
Der Optionale Abschnitt kann genau das. Ein Vordefinierter Text, den du per Checkbox mit aufnehmen oder aber ignorieren kannst.
Popup-Menü
Das ungünstig betitelte Popup-Menü ist das Äquivalent zu einer Select-Box. Du gibst ein, welche Optionen du zur Auswahl haben möchtest und welche davon standardmäßig aktiviert sein soll.
So kannst du aus dem optionalen Danke ein vom Kontext abhängiges Danke machen, ohne den Text jedes Mal neu tippen zu müssen.
Variablen
Eingangs habe ich erwähnt, dass der Name für die spätere Verwendung von Nutzen sein kann. Sobald du den Wert eines Feldes erneut brauchst, ihn aber natürlich nicht erneut eintippen willst, kannst du über %fill:Feldname%
auf den Wert zugreifen. Das sieht in der Anwendung dann z.B. so aus:
Und im Einsatz:
Unterstützung für iOS
Fill-In-Snippets sind auf iPhone und iPad aufgrund der iOS-Restriktionen nicht so einfach zu implementieren, wie unter OS X. Doch die Leute von Smile Software haben auch hierfür eine Lösung gefunden. Sobald App-Entwickler die Unterstützung für die Fill-In-Snippets integriert haben[4], wird bei Erkennung des von dir eingegebenen Kürzels die aktuelle App verlassen und TE Tocuh gestartet. Dort füllst du die Felder aus und kommst anschließend zurück zur Ursprungsapp.
Zur Demonstration hier das Zusammenspiel von Drafts und TE Touch.
Nicht besonders edel, aber funktioniert.
- Email ist für mich der Anwendungsfall, wenn es um immer wieder auftretende Texte geht, deren Eingabe es zu automatisieren gilt. Gerade bei Tools wie TextExpander ist der Anwendungsfall von Benutzer zu Benutzer unterschiedlich und recht individuell. Nimm die Beispiele mit und schau, was du für dich daraus gewinnen kannst. Nicht alles wird bei dir sofort Klick machen, doch das schiere Wissen der vorhandenen Möglichkeit wird dir eines Tages vielleicht mehrere wertvolle Minuten des wiederholten Eintippens ersparen. ↩
- Die Cursor-Position kannst du im gleichen “magischen” Menü unter Cursor → Cursor hier positionieren einfügen. ↩
- Doppeltes h, damit es nicht aus Versehen beim Eingeben eines “richtigen” Wortes getriggert wird, das p am Ende für privat. Generell ist das doppelte Aufführen des Anfangsbuchstabens eine gute Konvention für TE-Snippet-Kürzel. Möglich ist aber auch ein unübliches Sonderzeichen wie das Semikolon. ↩
- Nicht jede App, die TE Touch unterstützt, unterstützt automatisch auch Fill-In-Snippets. Leider. ↩
Dir gefällt, was du liest?
Sehr schön ;) Erzähl es doch weiter!