Python-CLI-Manpage wird erstellt

  • Ich entwickle ein Python-CLI-Tool (mit optparse in python2.6, aber ich hoffe, bald auf python2.7 umzustellen, und ich schreibe gerade die Manpage. Ich habe etwas Erfahrung mit dem Erzeugen dynamischer Manpages durch:

    • Erstellen einer dedizierten Methode zum Erstellen einer Zeichenfolge im Pod-Format und schreibt es in eine Datei
    • , die den pod2man Befehl zum Generieren von Daten im Groff-Format, die an den Man-Befehl übergeben werden sollen

    Ich möchte auch Wiki-Seiten mit demselben Inhalt wie der Mann generieren page (mit pod kann ich html über pod2html generieren, und wahrscheinlich kann die HTML-Datei problemlos in diese übersetzt werden Wiki-Format). Hat jemand eine bessere Idee / einen besseren Fluss o Wie kann ich das tun?

    Eine Sache, die ich als interessant empfinde, ist auf diesen Link: Erstellen von Man-Pages mit optparse und distutils

    12 January 2016
    jalanb
3 answers
  • Die übliche Methode zum Erstellen von Dokumentation in Python ist die Verwendung von Sphinx . Dies ist beispielsweise in der offiziellen Python-Dokumentation enthalten. Nachdem Sie ein Sphinx-Dokumentationsprojekt eingerichtet haben (siehe dieses Tutorial ), können Sie daraus Manpages erstellen Ihre Sphinx-Dokumentationsdateien über make man. Sie sollten auch die Konfiguration in conf.py ändern produzieren Sie die entsprechende Ausgabe.

    (Es ist erwähnenswert, dass Sphinx zwar das übliche Werkzeug zum Schreiben von Dokumentation in Python ist, das bedeutet jedoch nicht, dass es das übliche Werkzeug zum Generieren von Manpages ist Sie wollen!)

    24 August 2011
    Devin Jeanpierre
  • Obwohl Sphinx ein wirklich großartiges Dokumentationssystem ist, ist es unglaublich komplex und schwer zu meistern. Wenn Sie eine bang-Lösung benötigen, schlage ich vor, dass Sie in meinem Projekt nachschauen / a>.

    Es ist nicht ein Ersatz für die korrekte Dokumentation Ihrer Projekte (mit Sphinx oder wie auch immer Sie wählen). Für einen Python-Programmierer hat dies jedoch einige unmittelbare Vorteile:

    • Sie müssen die man -Syntax nicht erlernen.
    • Sie müssen die rst -Syntax nicht erlernen (trotzdem sollten Sie es eines Tages lernen ...)
    • Sie müssen Ihre Syntax nicht beibehalten optparser \ argparser und eine Manpage, die in einer externen Datei (in man, rst oder einem anderen Konvertierungssystem) formatiert ist.

    • Sie fügen Ihrer Build-Konfiguration einfach eine Datei hinzu, und eine Manpage wird für Sie erstellt!

    Wenn Sie ein komplizierteres System mit viel Schnickschnack verwenden möchten, können Sie mit Sphinx eine mit rst formatierte Seite in eine Manpage konvertieren. Und ein kürzlich junges Projekt verfolgt einen ähnlichen Ansatz wie mein Parser und scannt Ihre ArgumentParser, um eine rst -formatierte Seite mit Sphinx-Direktiven (so dass Sie sie nicht selbst schreiben müssen) zu erstellen. (Im Gegensatz dazu Mein Scanner erstellt direkt eine Manpage).

    Beachten Sie, dass dies jetzt Teil eines Pull-Anfrage , um einen Manpage-Formatierer in der Standardbibliothek hinzuzufügen .

    26 February 2018
    anarcat
  • Wenn Sie click verwenden, können Sie click-man verwenden |> Es kann Manpages aus Klickanwendungen erstellen.

    06 October 2016
    tuxtimo