Hallo zusammen,
ich weiß nicht so genau, ob das hier das richtige Unterforum ist, bitte verschieben falls nicht.
Ich habe folgendes Problem:
Ich habe hier eine Trac-Instanz, in der jede Menge Sphinx-Dokumentationen liegen. Damit der Restructuredtext nicht von Trac interpretiert wird, ist der mimetype für .rst in der trac.ini auf text/plain gesetzt. Daraus ergibt sich aber, das erstens kein Syntax-Highlightning stattfindet (müsste Pygments ja können für ReST) und zweitens im Wiki auch kein ReST mehr verwendet werden kann (wird einfach als Code-Block dargestellt).
Meine Frage also, wie kann ich Trac konfigurieren, das ReST Quellen anständig angezeigt werden und gleichzeitig ReST im Wiki benutzbar bleibt? Ach ja, es handelt sich um Mercurial Repos, daher kann ich leider keine SVN Properties setzen.
Viele Grüße
Whitie
P.S. Hintergrund ist, das Wiki als Ideensammlung zu benutzen und die gesammelten und gereiften Dokumente dann einfach in die Sphinx Quellen übernehmen zu können. Sonst könnte ich im Wiki ja einfach das eigene Markup verwenden. Trac ist Version 1.1.2beta1.
Trac und Restructuredtext
Hallo Whitie,
nachdem Du trac > 1.0 verwendest, ist das eigentlich kein Problem: Seit Version 1.0 gibt es zusätzlich zum `mime_map` noch die `mime_map_patterns`, über die Du für bestimmte Dateien festlegen kannst, welche mimetypes verwendet werden sollen. Die jeweiligen Dateien legst Du über eine regex fest, in Deinem Fall könnte ein solcher Eintrag in der `trac.ini` also so aussehen:Via `mime_map` solltest Du dann natürlich kein `text/x-rst' angelegt haben!
Damit erreichst Du, dass alle Dateien, deren Name mit 'rst' endet, als plain-text dargestellt werden, Wiki-Einträge können aber weiterhin reSt-like formatiert werden.
mutetella
nachdem Du trac > 1.0 verwendest, ist das eigentlich kein Problem: Seit Version 1.0 gibt es zusätzlich zum `mime_map` noch die `mime_map_patterns`, über die Du für bestimmte Dateien festlegen kannst, welche mimetypes verwendet werden sollen. Die jeweiligen Dateien legst Du über eine regex fest, in Deinem Fall könnte ein solcher Eintrag in der `trac.ini` also so aussehen:
Code: Alles auswählen
[mimeviewer]
...
...
mime_map_patterns = text/plain:.*rst$
Damit erreichst Du, dass alle Dateien, deren Name mit 'rst' endet, als plain-text dargestellt werden, Wiki-Einträge können aber weiterhin reSt-like formatiert werden.
mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit )
Hallo mutetella,
vielen Dank für deine Antwort. Leider habe ich auch diese Möglichkeit schon probiert. Ob man `mime_map` oder `mime_map_patterns` verwendet spielt keine Rolle. Mit beidem kann man die Darstellung als Quellcode hinbekommen. Ich kann dann auch Pygments sagen, alles was text/plain ist als ReST hervorzuheben.
Leider ist nach dieser Einstellung im Wiki kein ReST mehr verfügbar, alle ReST Blöcke werden dann einfach in `<pre>` Tags dargestellt.
Noch weitere Ideen? Oder bin ich der Einzige, der Sphinx-Doks in einem Trac hat
Gruß
Whitie
vielen Dank für deine Antwort. Leider habe ich auch diese Möglichkeit schon probiert. Ob man `mime_map` oder `mime_map_patterns` verwendet spielt keine Rolle. Mit beidem kann man die Darstellung als Quellcode hinbekommen. Ich kann dann auch Pygments sagen, alles was text/plain ist als ReST hervorzuheben.
Leider ist nach dieser Einstellung im Wiki kein ReST mehr verfügbar, alle ReST Blöcke werden dann einfach in `<pre>` Tags dargestellt.
Noch weitere Ideen? Oder bin ich der Einzige, der Sphinx-Doks in einem Trac hat
Gruß
Whitie
Guten morgen...
Hmm, bei mir funktioniert das:
Code: http://trac.mutetella.org/code/browser/ ... s/test.rst
Wiki: http://trac.mutetella.org/code/wiki/test
Oder versteh' ich was falsch?
mutetella
Hmm, bei mir funktioniert das:
Code: http://trac.mutetella.org/code/browser/ ... s/test.rst
Wiki: http://trac.mutetella.org/code/wiki/test
Oder versteh' ich was falsch?
mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit )
Sehr schön. Genau das funktioniert bei mir nicht. Die Wikiseite zeigt bei mir dann zweimal das gleiche an (das obere bei dir). Kannst du evtl. die trac.ini (relevante Teile) posten. Vielleicht gibt es noch eine andere Einstellung, an die ich noch gar nicht gedacht habe.
Gruß
Whitie
Gruß
Whitie
Ok, sorry, mein Fehler. Die wiki-Seite muss natürlich so aussehen! Ich hatte im erklärenden Wiki-Codeblock statt `#!rest` dummerweise `#!rst` geschrieben, was zwar eigentlich funktionieren sollte, aber... bug oder feature?
Zur Erklärung: Über `mime_map_patterns` definieren wir, dass [Dateien] mit der Endung 'rst' als plaintext dargestellt werden. Jetzt ist es so (und darum tendiere ich eher zu bug), dass `trac` diese Definition in der Wiki auch bei Codeblock-Markups verwendet. Das heißt eben, dass das Markup ``#!rst`` auch mit 'rst' endet und deshalb als plaintext dargestellt wird.
Lösung 1:Nachdem in `trac` ``#!rst`` oder ``#!rest`` auf denselben mimetype verweisen, reicht es also, einfach ``#!rest`` zu verwenden.
Lösung 2:Wir definieren einen eigenen Markupnamen, der nicht mit 'rst' endet, z. B.:Somit könntest Du auch ``#!rst-wiki`` als Markup in einem Wiki-Codeblock verwenden.
Ok, momentan sieht der `[mimeviewer]` Abschnitt meiner `trac.ini` sieht so aus:
Nochmals sorry für mein Geschussel...
mutetella
Zur Erklärung: Über `mime_map_patterns` definieren wir, dass [Dateien] mit der Endung 'rst' als plaintext dargestellt werden. Jetzt ist es so (und darum tendiere ich eher zu bug), dass `trac` diese Definition in der Wiki auch bei Codeblock-Markups verwendet. Das heißt eben, dass das Markup ``#!rst`` auch mit 'rst' endet und deshalb als plaintext dargestellt wird.
Lösung 1:Nachdem in `trac` ``#!rst`` oder ``#!rest`` auf denselben mimetype verweisen, reicht es also, einfach ``#!rest`` zu verwenden.
Lösung 2:Wir definieren einen eigenen Markupnamen, der nicht mit 'rst' endet, z. B.:
Code: Alles auswählen
mime_map = text/x-rst:rst-wiki
Ok, momentan sieht der `[mimeviewer]` Abschnitt meiner `trac.ini` sieht so aus:
Code: Alles auswählen
[mimeviewer]
max_preview_size = 262144
mime_map = text/x-dylan:dylan,text/x-idl:ice,text/x-ada:ads:adb
mime_map_patterns = text/plain:.*rst$
tab_width = 8
treat_as_binary = application/octet-stream,application/pdf,application/postscript,application/msword,application/rtf
mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit )