Skip to content

Zeal, ein Offline-Browser für Software-Dokumentationen

Als Entwickler verbringe ich viel Zeit mit dem Lesen von Dokumentationen von Software. Ein großer Teil der täglichen Arbeit besteht aus Dingen wie zum Beispiel:

  • Eine neue Bibliothek soll ein- oder ein API angebunden werden.
  • Das neue Frontend-Framework will kennengelernt werden, außerdem nutzt es TypeScript.
  • Welche fortgeschrittenen Konfigurationsmöglichkeiten bietet das Framework, mit dem ich gerade arbeite?
  • Und wie war noch gleich die Syntax für das Laden von Partial Objects in Doctrine?

Zwar bietet meine IDE bereits automatisch Code-Vervollständigung für viele gängige Programmiersprachen und Frameworks an, aber oft reicht das eben nicht aus, vor allem wenn ich ein tieferes Verständnis einer Software erlangen möchte. Mit der Zeit wächst dann entweder die Anzahl offener Browser-Tabs (von denen ich sowieso immer zu viele geöffnet habe), oder es entstehen projektspezifische Bookmark-Listen, auf die ich regelmäßig zurückgreife. Dass es auch anders geht, habe ich erst vor kurzem entdeckt.

Das Anwendungsfenster von Zeal, das die Dokumentation von Doctrine anzeigt
Gefilterte Suche in Zeal

Für Mac-User gibt es nämlich einen Browser für Dokumentationen, der auch offline funktioniert und viele weitere Features wie etwa eine Suchfunktion mitbringt. Das Tool heißt Dash und unterstützt eine endlos scheinende Liste von Projektdokumentationen.

Dash für Linux: Zeal

Erfreulicherweise gibt es auch für Linux-User wie mich eine Alternative: Zeal ist ein Dash-Nachbau, der momentan in der Version 0.3.1 für Linux und Windows zur Verfügung steht. Der Funktionsumfang von Zeal dürfte etwas geringer sein als der von Dash, aber die wichtigsten Dinge gehen:

  • Download ausgewählter Dokumentation zur Offline-Nutzung (Achtung: Die Datenmenge kann schnell in die Gigabytes gehen) aus dem Dash-Repository.
  • Suche und Filter schon während des Tippens, Docset-Prefixes (php:echo sucht nur in den PHP-Docs, echo sucht global)
  • Unterstützung von IDE- und Editor-Plugins wie Dash for IntelliJ IDEA für PHPStorm und andere (aktuell muss das PhpStorm-Plugin manuell installiert werden, vgl. Use dash uri for zeal)

Nach dem erstmaligen Start von Zeal habe ich mir genau die Dokumentation heruntergeladen, die ich häufig benötige (und noch ein paar mehr), damit mir diese offline zur Verfügung stehen. Eine Online-Suche ist nämlich gar nicht vorgesehen. Zeal wartet jetzt im System Tray, dass ich es benötige. Alternative kann ich die Suche direkt aus der IDE heraus triggern (mit Strg + Shift + D), wobei das Plugin sogar versucht, den Suchkontext zu erkennen.

Eigene Docsets hinzufügen

Ich finde außerdem interessant, dass auch eigene Docsets in diversen Formaten (Sphinx, Doxygen, Javadoc uvm.) hinzugefügt werden können. Im Falle unserer Dokumentation, die wir mittels RestructuredText und Sphinx generieren lassen, sieht der Workflow so aus:

  • Wir benötigen zunächst doc2dash und lesen die kurze Dokumentation durch
  • Wir generieren die Docs für unser Projekt mit make html
  • Und schließlich lassen wir die Dokumentation im von Zeal und Dash verwendeten .docset-Format erzeugen: doc2dash -n MyProject -f -v ./_build/html/. Mit der zusätzlichen Option -d lässt sich als Zielverzeichnis noch das von Zeal verwendete Docset-Verzeichnis angeben, damit das so erstelle Docset gleich gefunden wird.

Die Zeit wird zeigen, ob Zeal mein treuer Development-Begleiter wird, oder ob ich wieder auf Google- und Stack Overflow-Driven Development umschwenke ;-) Aktuell nutze ich das Tool sehr gern. Was mir noch fehlt, ist eine Bookmark-Funktion um häufig genutzte Seiten schneller finden zu können. Andererseits weiß ich deren Inhalt vermutlich sowieso bald auswendig.

Trackbacks

Netz - Rettung - Recht am : Wellenreiten 02/2017

Vorschau anzeigen
Wer als “Websurfer” metaphorisch auf den Wellen des Netzes reitet, findet dabei zwar keine paradiesischen Inseln, manchmal aber immerhin ganz interessante Lektüre. Im Februar 2017 kann ich u.a. folgende Fundstücke empfehlen und der werten Leserschaft ans

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Jens Grochtdreis am :

Auf Twitter lesen: flocke
Jens Grochtdreis

Ich liebe ja Devdocs (http://devdocs.io/). Dafür muss ich keine separate Software installieren, da alles im Browser stattfindet. Und es gibt einen Offline-Modus.

Obwohl dort eine große Menge Dokumentationen angeboten wird, gibt es leider nicht alles. Weder Doctrine noch Handlebars oder Mustache. Aber was nicht ist, kann ja noch werden.

Kommentar schreiben

Markdown-Formatierung erlaubt
Wenn Du Deinen Twitter Namen eingibst wird Deine Timeline in Deinem Kommentar verlinkt.
Bewirb einen Deiner letzten Artikel
Dieses Blog erlaubt Dir mit Deinem Kommentar einen Deiner letzten Artikel zu bewerben. Bitte gib Deine Blog URL als Homepage ein, dann wird eine Auswahl erscheinen, in der Du einen Artikel auswählen kannst. (Javascript erforderlich)
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

Formular-Optionen

Kommentare werden erst nach redaktioneller Prüfung freigeschaltet!