Seite 1 von 1

Creoleparser - text2html mit Unicode-Rückgabe?

Verfasst: Montag 17. August 2009, 21:29
von Hyperion
Hallo,

ich bin aufgrund des Werkzeug Screen-Casts auf den Creoleparser aufmerksam geworden:

http://code.google.com/p/creoleparser/

Prinzipiell ist das Ding ja extrem einfach zu verwenden, jedoch stört mich da eine Kleinigkeit: die Funktion text2html() gibt nur einen Bytestring zurück, aber leider kein Unicode-Objekt. Ich habe mir nun eine simple Wrapper-Funktion geschrieben, damit ich das ganze aus Jinja2 heraus nutzen kann. Prinzipiell gefallen mir aber solche "Frickeleien" nicht besonders.

Habe ich in der Doku etwas übersehen und man kann doch Unicode zurück bekommen? Oder aber gibt es eine alternative, evtl. elegantere Art, das zu erreichen?

Oder aber kann jemand eine alternative Lib empfehlen, die dieses Manko nicht hat?

Verfasst: Dienstag 18. August 2009, 17:46
von shday
ausprobieren:

text2html(text, encoding=None)

Der standardwert encoding ist 'utf-8'

Verfasst: Dienstag 18. August 2009, 18:45
von jens
btw. meine Variante gibt es hier: http://code.google.com/p/python-creole/ :P

Verfasst: Dienstag 18. August 2009, 19:13
von Hyperion
shday hat geschrieben:ausprobieren:

text2html(text, encoding=None)

Der standardwert encoding ist 'utf-8'
Ja, er frisst ja auch sogar Unicode, wenn ich ihm das übergebe. Es geht ja um den Rückgabewert! Und den kann man so nicht ändern ...

Verfasst: Dienstag 18. August 2009, 19:13
von Hyperion
jens hat geschrieben:btw. meine Variante gibt es hier: http://code.google.com/p/python-creole/ :P
Danke, werde ich mir mal angucken :-)

Verfasst: Mittwoch 19. August 2009, 02:04
von shday
Hyperion hat geschrieben: Ja, er frisst ja auch sogar Unicode, wenn ich ihm das übergebe. Es geht ja um den Rückgabewert! Und den kann man so nicht ändern ...
Das scheint wie ein Fehler. Wenn Sie einen Augenblick, bitte post ein Problem:

http://code.google.com/p/creoleparser/issues/entry

Hier ist das, was ich bekommen:

Code: Alles auswählen

>>> from creoleparser import text2html
>>> type(text2html(u"some **markup**"))
<type 'str'>
>>> type(text2html(u"some **markup**", encoding=None))
<type 'unicode'>
Ich habe gerade realisiert, encoding=None funktioniert nur richtig in Creoleparser >= Version 0.6

Verfasst: Mittwoch 19. August 2009, 08:20
von Hyperion
shday hat geschrieben:

Code: Alles auswählen

>>> type(text2html(u"some **markup**", encoding=None))
<type 'unicode'>
Ich habe gerade realisiert, encoding=None funktioniert nur richtig in Creoleparser >= Version 0.6
Danke, das werd ich mal probieren. Aber intuitiv ist das sicherlich nicht ;-)