Qt GUI für Blogeinträge

Weil es meist relativ lange dauert, bis Behörden antworten, habe ich eine lange Liste mit Entwürfen im Blog. Um da nicht den Überblick zu verlieren, habe ich ein Kanban-Board gebaut. Das ist ein Python-Skript, das die Markdown-Dateien der Blogartikel einliest und den YAML-Header verarbeitet. Für diesen Artikel sieht der so aus:

title: Qt GUI für Blogeinträge
date: 2022-07-17
category: Code & Zahlen
tags: "Sprache: Deutsch, Software: Qt, Programmiersprache: Python"
previewimage: gui-1.png
status: draft
board: In Bearbeitung

Daraus erzeugt das Skript dann HTML, das zu dieser Ansicht im Browser wird:

Das ist ganz nett, jedoch muss ich die immer neu erzeugen lassen. Außerdem erlaubt sie keine Interaktivität, weil man vom Browser sinnigerweise nicht auf das Dateisystem zugreifen kann. Daher habe ich mir eine interne GUI mit Qt gebaut.

Die erste Funktion ist genau dieses Board, in dem die Artikel als eine Zeile erscheinen. Ich habe das aktuell als QListView implementiert. Dadurch ist es eine Zeile pro Artikel, und nicht so schicke Karten, wie in der HTML-Darstellung.

Dafür habe ich aber ein Kontextmenü, das genau auf meinen Bedarf abgestimmt ist. So habe ich Aktionen zum Bearbeiten des Artikels, und auch um an den Ordner zu kommen. Das erspart mich die Navigation im posts-Verzeichnis, der inzwischen 688 Unterverzeichnisse hat.

Man kann die Listenelemente noch mit einer Farbe dekorieren. Und dann wird das ganze schon ziemlich ansehnlich:

Die Farbe gibt das Alter eines Beitrags an, die rote Farbe kommt nach sechs Monaten. Dann kann ich direkt sehen, ob ich mich noch einmal bei der Behörde melden muss. Oder ich weiß, dass ich mal schauen muss, ob es inzwischen fertig ist. Dafür wird jetzt noch eine GPX-Datei mit den Koordinaten der Blogeinträge erzeugt. So kann ich dann mit OsmAnd auf dem Handy eine Verkehrsschau machen:

Da war ich zum Beispiel erst in Birlinghoven schauen, und bin dann weiter nach Siegburg gefahren. Durch die Punkte kann man dann viele Artikel noch einmal abfahren und schauen, was passiert ist.

Die GUI hat auch eine Übersicht über alle Beiträge, hier ist die Kategorie per Farbe kodiert:

So kann ich Artikel etwas besser finden, als wenn ich die Ordnerstruktur nutze.

Das ganze ist einfach nur eine Python-Datei, in der ich mit Qt etwas gebaut habe. Die Bibliothek macht ziemlich Spaß, weil ich schnell zu brauchbaren Ergebnissen komme, die ich dann gerne nutze.