Fridolin, der Clipboard-Manager
Seit einiger Zeit (warum beginnen so viele Blogposts so?) benutze ich den Clipboard-Manager von Alfred und es hat mein Leben enorm verbessert.
Was ist denn ein Clipboard-Manager, werden sich jetzt einige Leute fragen. Ganz einfach: Normalerweise drückt man Cmd + C
und schwupps, ist etwas in der Zwischenablage, mit Cmd + V
kann man es wieder einfügen. Standardmäßig hat die Zwischenablage aber nur einen Platz, der bei jedem neuen Kopiervorgang wieder überschrieben wird.
Das mag jetzt erstmal normal erscheinen, für mich war es die ersten dreißig Jahre meines Lebens auch völlig so, aber jetzt beim schreiben dieses Absatze kommt mir das Konzept dermaßen schwach und falsch vor, dass ich kaum verstehen kann, wie ich es so lange ohne Alfred ausgehalten habe!
Mit dem Clipboard-Manager von Alfred hat man jedenfalls die Möglichkeit, alles, was man so kopiert, zu speichern (man kann sagen wie viel und wie lange) und später wieder darauf zuzugreifen. So kann man sich erstmal 3-4 Sachen kopieren und sie wieder, z.B. in anderer Reihenfolge einfügen. Einfach Alfred per Shortcut öffnen, und in der Clipboard-History umhergucken. Das eignet sich auch wunderbar für Sachen, wo man genau weiß, dass man sie vor drei Stunden mal kopiert hatte, die mittlerweile aber verschwunden sind. Quasi ein Backup!
So gut die Anwesenheit einer beliebig großen Clipboard-History nun ist, es geht natürlich immer besser. In den letzten Wochen hatte ich ein paar langweilige Copy-n-Paste-Jobs zu tun, bei denen ich mir sehr stark wünschte, dass Alfred eine Art Clipboard-Stack hätte, den ich erst beladen und wieder entladen kann. Beispielsweise:
- Ich kopiere nacheinander “A”, “B” und “C”, habe also drei Einträge in meinem Stack
- Dann füge ich ein und “C” fällt raus, ich drücke nochmal Einfügen und “B” fällt raus, und beim letzten Mal kommt das “A”.
Meinetwegen muss das auch nicht in umgekehrter Reihenfolge sein. Daneben könnte ich mir noch einige andere Funktionen vorstellen. Zum Beispiel alles, was gerade im Stack ist Komma-separiert aneinanderhängen und ausgeben. Oder automatisch ein Search-and-Replace ausführen, und und und.
Alfred hat zwar eine ganz gute Schnittstelle für eigene Workflows, leider ist das Clipboard-Management da nicht so gut angebunden. Man kann zwar den aktuellen Inhalt der History übergeben, aber diese nicht modifizieren, etc.
Zuerst habe ich also ein paar Alfred-Hacks gegoogelt, alles was ich fand waren aber wilde Dinge, die die sqlite-Datenbank von Alfred anzapfen und bearbeiten. Darauf hatte ich keine große Lust. Also machte ich mich auf den beschwerlichen Weg selber eine Mac App zu schreiben. Hier ist also Fridolin!
(Der Name ist noch Quatsch, aber ich musste mir für den Blogpost schnell was überlegen)
Fridolin funktioniert folgendermaßen:
- Er überwacht ständig das Clipboard auf Änderungen und speichert die in einer eigenen History
- Drückt man den Shortcut, wird ein Script auf die History angewendet, das irgendwas macht. Zum Beispiel die oben beschriebenen Anwendungsfälle
Die UI ist noch hässlich und nicht so einfach benutzbar, aber insgesamt habe ich auch nur etwa eine Stunde Arbeit investiert. Aber es funktioniert!
Die Scripte, die auf die History angewendet werden sind übrigens in JavaScript geschrieben! Ein Hoch auf JavascriptCore.
Die ganze App besteht bisher nur aus wenigen Zeilen Swift-Code und ich werde mal sehen, ob ich sie wirklich benutze, oder ob das nur dumme Spinnereien von mir waren und ich diese Funktionalität eigentlich gar nicht brauche. Falls ja, werde ich es vielleicht irgendwann nochmal hübsch machen.
Den aktuellen Stand habe ich auf jeden Fall schonmal auf Github geladen. Schadet ja nicht!