docbook_status 0.3.0: Schreibziele und Ausgabeformate

docbook_status 0.3.0 (Dokumentation hier) ist nun online. Wie schon andernorts angemerkt ist einer der Hauptpunkt die Integration von Schreibzielen, oder besser der motivierenden Fortschrittsverfolgung. Daneben gibt es nun auch alternative Ausgabeformate für die angezeigte Information.

Andere Ausgabeformate sind dann nützlich, wenn man entweder die vorhandene Bildschirmausgabe nicht mag, oder die Ausgabe in andere Anwendungen integrieren will. Standardbeispiel für Letzteres wäre die Integration mit einem Editor. Wie auch immer die Motivation ist, mit 0.3.0 kann man nun die Ausgabe ändern. Bei den Formaten habe ich mich an die populären gehalten, JSON und YAML. Beides sind vereinfachte Auszeichnungssprachen und können einfach verarbeitet werden. Ein Aufruf mit Option –outputformat schaltet die normale Bildschirmausgabe ab und gibt strukturierte Daten zurück. Also z.B.

docbook_status --outputformat=yaml ...
---
:file: /Users/bla/Documents/test/heft1.xml
:modified: 2011-09-27 18:53:22.000000000 +02:00
:sections:
- :title: Die Schatzinsel
  :words: 2399
  :level: 0
  :tag: article
- :title: ....

oder

docbook_status --outputformat=json ...
{"file":"/Users/bla/Documents/heft1.xml","modified":"2011-09-27 18:53:22 +0200",
"sections":[{"title":"Die Schatzinsel","words":2399,"level":0,"tag":"article"}, ...

Die Schreibziele sind einfach erklärt. Es geht dabei einfach nur um (hoffentlich) motivierende Anzeigen. Derzeit gibt es drei Ziele zur Auswahl:

  • Lieferdatum: –end[=JJJJ-MM-DD], zeigt die Tage bis zum vorgesehenen Fertigstellungsdatum an
  • Wortzahl, gesamt: –total[=Wortzahl], die geplante Wortzahl für den Text wird mit dem aktuellen Stand verglichen
  • Wortzahl, täglich: –daily=[=Wortzahl], ein tägliches Arbeitspensum

Um diese Ziele über längere Zeiten verfolgen zu können, werden diese in einer Datei im aktuellen Arbeitsverzeichnis abgespeichert, dbs_work.yml. Diese Datei speichert die eingegeben Ziele und die Entwicklung der Wortzahlen pro Tag. Dementsprechend müssen diese Ziele nur einmal angegeben werden.

Anzeige Schreibziele

Alle Ziele sind derzeit unabhängig voneinander und können beliebig miteinander kombiniert werden. Das Lieferdatum wird einfach nur mit dem aktuellen abgeglichen, der Unterschied zum geplanten Datum angezeigt. Die Wortzahlen zeigen den Unterschied zwischen aktuellem Stand und dem Soll an, absolut und prozentual. Um die Motivation zu steigern werden die Zahlen eingefärbt. Von Rot bis zu Grün, je nach dem Grad der Zielerreichung.