Hilfe für Sphinx

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

Hallo liebes Forum,

ich hoffe hier einige Einsteigerhilfe für das Programm Sphinx zu finden. Ich habe einige Fragen und es wäre klasse, wenn Leute die sich etwas mit Sphinx auskennen sich mal bei mir melden könnten.

Wenn ihr bereit wärt mir einige Fragen zu beantworten wäre ich euch sehr dankbar. Am besten ihr schreibt mir ne persönliche Nachricht, dann könnte ich euch Email Adresse und ähnliche Kontaktmöglichkeiten geben.

Ich danke euch im Voraus :)
Benutzeravatar
lutz.horn
User
Beiträge: 205
Registriert: Dienstag 8. November 2005, 12:57
Wohnort: Pforzheim

Warum fragst Du nicht hier?
https://www.xing.com/go/invite/18513630.6a91d4
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Also so funktioniert dieses Forum eigentlich nicht! Wenn Du konkrete Fragen hast, dann poste sie hier. Andere lesen sich den Thread dann durch und werden Dir eine Antwort geben, wenn sie helfen können.

Bei Deiner Idee müßte der "Helfertick" eines Users hier ja dermaßen hoch sein, dass er sich darum bemüht, Dir helfen zu können, indem er Dich anschreibt. Bei einem Vertreter mag das noch Sinn machen; der ist ja auch der Suche nach Leuten, denen er etwas verkaufen kann - bei einer freiwilligen Leistung hier, wirst Du mit diesem Push-Ansatz eher keinen Erfolg haben :twisted:

Nebenbei: Würden wir alle Themen in PM klären, dann wären im Forum ja auch keine Antworten für Probleme mehr nachzulesen. Auch wenn viele die Suchfunktion ignorieren, um vor einer Frage zu recherchieren, ob im Forum dazu evtl. bereits eine Antwort existiert, so ist diese Art der Wissensspeicherung doch für viele eines der wichtigen Features an einem Forum. In vielen Threads finden sich Verweise auf andere Threads, in denen Anregungen oder weiterführende Dinge bereits behandelt wurden. Insofern ist es auch im Sinne der anderen Forenbenutzer, wenn Themen hier öffentlich abgehandelt werden.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

Ich wollte nicht hier fragen, da das Forum sich doch eigentlich mit Python beschäftigt, oda?
Außerdem habe ich von der Sprache an sich keine Ahnung. Ich muss für ein Projekt zur Softwarequalität (Quelltext Vereinheitlichung ... ) mich etwas genauer über Sphinx informieren. Dabei kommt es weniger auf die Programmiersprache, als auf die Möglichkeiten, die man mit Sphinx hat an. Dazu zählen auch Fragen wie: Was macht man mit Sphinx, welche Möglichkeiten gibt es (mit welchen Programmen funktioniert es), wie kann man das Dokumentieren von Software "automatisieren" ... Ich bräuchte also praktisch ein Komplettes Benutzerhandbuch für Sphinx, samt den Erklärungen, was Sphinx in dem Quelltext sucht und entsprechend dokumentiert und wie es arbeitet (wobei dabei nicht auf Programmeinzelheiten eingegangen werden muss).

Es wäre also prima, wenn ihr mir helfen könntet.

Und sorry, das ich die Frage nicht gleich gestellt habe ;)
BlackJack

@bennnil: Ein Benutzerhandbuch wäre wohl die Dokumentation auf der Sphinx-Webseite. Oder welche Informationen fehlen Dir da konkret?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

bennnil hat geschrieben:Ich wollte nicht hier fragen, da das Forum sich doch eigentlich mit Python beschäftigt, oda?
Naja, es gibt ja auch noch die Offtopic-Section, in der sich so ziemliches alles unterbringen lässt - sofern es irgend einen Bezug zur IT hat ;-)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

Also die Dokumentation auf der Website ist für jemanden, der noch nie mit Python oder ähnlichem gearbeitet hat sehr unverständlich. (Du meinst diese Seite : http://sphinx.pocoo.org/ oder?) Außerdem ist das ganze auf Englisch, was es mir nicht wirklich einfacher macht :/.

Mir fehlt zum beispiel die Info, welche Datei eingelesen werden muss oder mit welchen Sprachen das Programm funktioniert... Außerdem wäre es cool zu wissen, ob das Programm auch unter Windows funktioniert. Mir wurde gesagt, dass es das tut ... aber ich finde auch praktisch keine andere Seite zu diesem Thema ... ich lande immer wieder in Ägypten bei den Pyramieden :/
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Pocoo hat einen IRC Channel (#pocoo) im Freenode Netzwerk, dort könntest du auf Englisch Fragen stellen.

Wenn du wirklich Unterstützung auf Deutsch brauchst würde ich empfehlen hier in der Offtopic Sektion Fragen zu stellen, eventuell werden die auch von Sphinx Entwicklern gesehen.
BlackJack

@bennnil: Englisch darf kein Hinderungsgrund sein, wenn man sich mit Softwareentwicklung beschäftigt. Das ist einfach die Sprache die man zumindest lesen können muss.

Sphinx ist primär zum Dokumentieren von Python-Projekten gedacht und deshalb dürfen die Entwickler beim schreiben der Dokumentation IMHO auch voraussetzen, dass man Ahnung von Python hat, bevor man damit ein Python-Projekt dokumentiert. Das wäre doch unnötig doppelte Arbeit Sachen zu beschreiben für die es schon andere, gute Tutorials und Dokumentation gibt.

Welche Datei(en) eingelesen wird/werden, wird klar, wenn man einfach mal anfängt das Tutorial durch zu arbeiten und die Dateien für das Grundgerüst einer Dokumentation von Sphinx erstellen lässt.

Für welche Sprachen es Unterstützung gibt findet man heraus, wenn man im Tutorial in `First Steps with Sphinx` dem Link zu dieser Information folgt.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,
Dabei kommt es weniger auf die Programmiersprache, als auf die Möglichkeiten, die man mit Sphinx hat an
Sphinx dient zur Dokumentation von Softwareprojekte. Punkt. Sphinx ist dabe sehr "pythonisch", weil es eben aus dem direkten Pythonumfeld kommt. Als Markupsprache wird reStructured Text verwendet, welches ebenfalls aus dem direkten Pythonumfeld kommt.

Den Zusammenhang zu
Ich muss für ein Projekt zur Softwarequalität (Quelltext Vereinheitlichung ... ) mich etwas genauer über Sphinx informieren.
erkenne ich aber nicht... was hat "Quelltext Vereinheitlichung" mit Dokumentation zu tun? Oder muss du für ein Projekt Coding-Guidelines erstellen?

Gruß, noisefloor
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

Erstmal: Danke, dass ihr euch hier mit mir rumschlagt :)

@Blackjack:
Sphinx ist primär zum Dokumentieren von Python-Projekten gedacht und deshalb dürfen die Entwickler beim schreiben der Dokumentation IMHO auch voraussetzen, dass man Ahnung von Python hat, bevor man damit ein Python-Projekt dokumentiert. Das wäre doch unnötig doppelte Arbeit Sachen zu beschreiben für die es schon andere, gute Tutorials und Dokumentation gibt.
Ja da hast du vermutlich mit recht, aber es ist nunmal meine Aufgabe ohne das Programmieren zu können zu beschreiben ... über Sinn und Unsinn dieser Aufgabe will ich auch nichts sagen.
Wenn ihr allerdings alle sagt, das man das nur mit grundlegenden Programmiertechniken versteht, dann werde ich wohl oder übel etwas in Python einsteigen müssen. Habt ihr als erfahrene Programmierer ein Tutorial an der Hand, mit dem ich den Einstieg schnell schaffe? Einige Grundlagen habe ich zwar schon, es sollte aber eher für komplette Newbees geschrieben sein. Es gibt solch eine große Auswahl an Tuts, da weiß ich nicht, welches ich nehmen soll.

@noisefloor:
Das Projekt beschäftigt sich mit Softwarequalität. Und zu guter Software gehört eine gute Dokumentation. Die Quelltextvereinheitlichung war dafür nur ein Beispiel ;) das hätte ich genauer sagen können.
Benutzeravatar
snafu
User
Beiträge: 6738
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

bennnil hat geschrieben:Habt ihr als erfahrene Programmierer ein Tutorial an der Hand, mit dem ich den Einstieg schnell schaffe?
http://tutorial.pocoo.org/
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

Danke für den Vorschlag. Werde mich mal einlesen ...
Sphinx dient zur Dokumentation von Softwareprojekte. Punkt. Sphinx ist dabe sehr "pythonisch", weil es eben aus dem direkten Pythonumfeld kommt. Als Markupsprache wird reStructured Text verwendet, welches ebenfalls aus dem direkten Pythonumfeld kommt.
@ noisefloor(die Frage habe ich vergessen ;) )
Was meinst du mit pythonisch?
Bedeutet das, dass Sphinx nur die reST formatierten Texte umwandelt oder kann es noch mehr, wie zum Beispiel aus den "Anweisungen" herauslesen, was das Programm macht?

@all:Warum sind denn alle so wahnsinnig überzeugt von dem Programm? Ich verstehe das einfach nicht. Wo liegt die Zeitersparnis und ist das erzeugte Dokument für Benutzer des Programms oder für Entwickler gedacht? ... Ich meine was bringt einem Benutzer eine Auflistung der verwendeten Klassen o.ä. ?

Und eine letzte Frage: Was brauche ich um Sphinx zum laufen zu bekommen? Welche Programme, welches OS?
Benutzeravatar
snafu
User
Beiträge: 6738
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

bennnil hat geschrieben:Ich meine was bringt einem Benutzer eine Auflistung der verwendeten Klassen o.ä. ?
Dir ist schon klar, dass Software-Projekte nicht immer aus grafischen Oberflächen bestehen und dass, selbst wenn eine GUI besteht, meist noch eine darunter gelegte Ebene existiert, welche die Interna des Programms vollzieht? Bei einer reinen Bibliothek ist der Anwender sozusagen der Programmierer, welcher die Bibliothek einsetzt. Zudem ist es keinesfalls unüblich, dass in Firmen verwendete Software häufig entsprechend den eigenen Anforderungen angepasst werden müssen. Wären die Programmteile da nicht (mehr oder weniger) detailliert dokumentiert, dann würde der Aufwand für den Benutzer enorm steigen, weil er nur durch Lesen des Quelltexts erfassen kann, zu welchem Zweck welche Funktion da ist. Das macht nicht wirklich Spass und steigert und nicht gerade die Popularität eines Projektes.

Ohne dir nahe treten zu wollen, aber du erweckst den Eindruck als wenn dich die Aufgabe etwas überfordert. Hast du überhaupt etwas mit IT zu tun oder kommst du aus nem "fremden" Bereich?
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

@snafu
Jupps das ist mir klar. Und ja, mit der Aufgabe fühle ich mich etwas überfordert. Aus diesem Grund suche ich ja Hilfe.
Ich komme nicht aus der IT, habe aber die Aufgabe, da sich hier niemand mit dem Programm auskennt mich einigermaßen einzuarbeiten und dann den anderen das hier vorzustellen. Über Sinn und Unsinn schrieb ich oben schon...
Für die Einarbeitung habe ich immerhin einen Monat Zeit. Nur ich bräuchte praktisch eine Checklist mit der ich abarbeiten kann, was ich wissen/lernen muss. Wenn ich dafür erst Python lernen muss, lerne ich erst Python. Im Moment habe ich allerdings das Gefühl etwas zu schwimmen und nur von einem Problem zum nächsten zu stolpern.
Solltest du dich (oder irgendwer sonst) also damit etwas auskennen wäre ich dir(euch) super dankbar, wenn du(ihr) mir helfen könnte(s)t.
Ich bin nicht soo schwer von Begriff, aber ins kalte Wasser geschmissen zu werden, birgt einige unangenehme Erfahrungen :/
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,
Bedeutet das, dass Sphinx nur die reST formatierten Texte umwandelt
Ja, zumindest soweit ich weiß. Sphinx "durchforstet" nicht den Quellcode nach Kommentaren und baut daraus eine automatisch Doku. Das gibt's auch. Die Qualität der Doku hängt dann aber natürlich direkt davon ab, wie Code die Kommentare im Quellcode sind.

Basierend auf deinem letzten Posting würde ich aber sagen: Du willst und brauchst gar nicht Sphinx benutzen. Nimm' besser ein Wiki, bei dem man die Syntax / Markup in 5 min lernen kann und schreib' die Doku dort hin. :-)

Gruß, noisefloor
bennnil
User
Beiträge: 36
Registriert: Dienstag 16. August 2011, 13:00

Das gibt's auch. Die Qualität der Doku hängt dann aber natürlich direkt davon ab, wie Code die Kommentare im Quellcode sind.
Dann sag mir doch bitte wie das Programm heißt :)
Basierend auf deinem letzten Posting würde ich aber sagen: Du willst und brauchst gar nicht Sphinx benutzen. Nimm' besser ein Wiki, bei dem man die Syntax / Markup in 5 min lernen kann und schreib' die Doku dort hin.
Leider ist das nicht so einfach. Meine Aufgabe ist ja eben Sphinx zu untersuchen und dessen Möglichkeiten aufzuzeigen. Ich soll ja keine Dokumentation über ein Programm schreiben.
deets

bennnil hat geschrieben: Dann sag mir doch bitte wie das Programm heißt :)
http://sphinx.pocoo.org/ext/autodoc.html

Hilft dir aber nur, wenn du auch *Python*-code dokumentieren willst.
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Leute wieso sollte man Python können um Sphinx zu benutzen? Wenn man nicht gerade Python dokumentiert sollte man damit für einfache Sachen noch nicht mal in Kontakt kommen.
BlackJack

@bennnil: Die Dokumentation ist für Entwickler gedacht. Und die möchten gerne wissen welche Klassen es gibt, und wie die zusammen funktionieren. Man kann damit auch Dokumentation für Benutzer eines Programms schreiben, aber dann würde man eine ganze Menge der Auszeichnungsmöglichkeiten nicht verwenden. Die sind IMHO aber der Mehrwert von Sphinx gegenüber zum Beispiel LaTeX, LyX, oder DocBook (mit einem guten spezialisierten Editor) mit denen man auch Dokumentation für Endbenutzer schreiben kann, die man in mehrere HTML-Seiten oder ein PDF-Dokument umwandeln kann.
Antworten