iOS Kurzbefehl für Jekyll
Achtung! Ich schraube das IT Nerd Level hier auf Donswelt kurz deutlich nach oben.
Drüben bei need.computer hat Aleks die Tage über einen Workflow mit Jekyll gebloggt und mich damit auf die Idee gebracht, meinen eigenen Workflow ebenfalls zu überdenken. Herausgekommen ist ein iOS Kurzbefehl, der eine Notiz aus Bear oder der Standard iOS Notiz App mit einem Klick auf meinen Jekyll Blog veröffentlicht. Ich bin selbst überrascht, dass es funktioniert.
iOS Kurzbefehl: Auf Jekyll veröffentlichen
Donswelt.de läuft schon seit geraumer Zeit ebenfalls auf Jekyll, aber ich bin und bleibe ein Noob, wenn es um Terminal Fenster und Command Line Tools geht. Trotzdem hat es lediglich ein paar Stunden gebraucht, bis ich den Kurzbefehl zum Laufen gebracht habe. Faszinierend.
Weil ich die faulste Sau der Welt bin, ist der Kurzbefehl nicht optimiert und könnte wahrscheinlich noch um die Hälfte reduziert werden, aber das ist mir ehrlich gesagt völlig egal. Never touch a running system, sagt der, der mit Windows 3.11 angefangen hat.
Im Grunde genommen wird folgendes gemacht:
- Der Text wird aus einer Notiz über die Teilen-Funktion mit Hilfe des Kurzbefehls übernommen.
- Der Titel wird aus der ersten Zeile ausgelesen.
- Der Tag wird aus der zweiten Zeile ausgelesen.
- Der Inhalt wird ab der vierten Zeile ausgelesen.
- Der Titel wird in Kleinbuchstaben umgewandelt, nach Wörtern aufgeteilt und mit einem Devise als Trennzeichen und dem aktuellen Datum wieder zusammengesetzt. So entsteht ein Jekyll konformer Dateiname.
- Die Front Matter, der Kopf der Jekyll Datei, wird aus allen Angaben erstellt und die Datei im Ordner /posts auf dem Server abgelegt.
- Das Jekyll Blog wird über ein serverseitiges Skript neu aufgebaut.
Falls ihr den Befehl ebenfalls nutzen wollt, müsst ihr lediglich drei Dinge beachten:
- Der Aufbau der Notiz sollte immer gleich sein: Die erste Zeile ist der Titel, die zweite Zeile ist der Tag, die dritte Zeile ist leer und in der vierten Zeile beginnt der Inhalt. So sieht die Notiz auch in Bear und der Notizapp gut aus.
- Am Ende der Befehlskette gibt es zwei Aktionen mit Informationen zum Server. Dort müsst ihr natürlich eure Zugangsdaten eintragen.
- Auf dem Server sollte der Einfachheit halber ein Skript liegen, das euren Jekyll Blog aktualisiert. Das sieht bei mir wie folgt aus:
#!/bin/bash
cd blog
bundle exec jekyll build --destination ~/html
Meine Jekyll Blog Quelldaten liegen in /blog, gebaut wird das Blog dann im öffentlichen Ordner /html.
Vielleicht hilft es ja der Einen oder dem Anderen.