2009-08-14 7 views
4

Naturellement, de nombreux tickets que nous enregistrons dans Trac contiennent des retraçages. Ce serait excellent si ceux-ci étaient bien formatés et la syntaxe en évidence.Existe-t-il un processeur wiki pour Trac pour formater et colorier les retraçages Python?

J'ai effectué une recherche rapide sur Google pour un processeur wiki de traceback Python et je n'ai trouvé aucun résultat rapide. Je suis heureux de rouler le mien si quelqu'un peut recommander un formateur de traceback (autonome ou intégré dans un projet open source) qui produit HTML/reStructuredText/etc.

+0

Je souhaite juste que les backtraces Python ne soient pas à l'envers. –

Répondre

2

Pygments supporte la coloration syntaxique des retraçages Python, et il y a un trac plugin, mais la page wiki réclame que Trac 0.11 supporte nativement Pygments. Trac 0.11 prend en charge Pygments mais n'expose pas le type de formatage pytb.

2

Voici un patch contre Trac 0.11.3 pour ajouter du support pour les retraçages Python.

diff -r 5a0c5e3255b4 mimeview/api.py 
--- a/mimeview/api.py Tue Aug 11 11:33:45 2009 +1000 
+++ b/mimeview/api.py Mon Aug 24 15:13:34 2009 +1000 
@@ -348,6 +348,7 @@ 
    'text/x-perl':   ['pl', 'pm', 'PL', 'perl'], 
    'text/x-php':    ['php', 'php3', 'php4'], 
    'text/x-python':   ['py', 'python'], 
+ 'text/x-python-traceback':['pytb'], 
    'text/x-pyrex':   ['pyx'], 
    'text/x-ruby':   ['rb', 'ruby'], 
    'text/x-scheme':   ['scm'], 
+0

Avec la dernière version de Trac, la ligne ajoutée devrait être '' text/x-python-traceback '': 'pytb', '. –

4

Je ne crois pas que vous ayez besoin de ce correctif. Vous pouvez spécifier le mappage dans le shortcode trac.ini, mais vous pouvez aussi (au moins en 0,12 trac) il suffit d'utiliser le type MIME directement:

{{{ 
#!text/x-python-traceback 
<traceback> 
}}} 

Voir plus à http://trac.edgewall.org/wiki/TracSyntaxColoring. x-python-traceback n'est pas dans la liste, mais vous obtiendrez une prévisualisation d'erreur si trac ne peut pas le gérer et que c'est WorkedForMe.