我想知道是否有任何方法可以将简单的unicode字符串转换为Genshi中的HTML,例如,它将换行符呈现为<br/>
。
我希望这能够在textarea中呈现一些文本。
提前致谢!
答案 0 :(得分:1)
如果Genshi就像KID一样工作(它应该),那么你所要做的就是
${XML("<p>Hi!</p>")}
我们有一个很小的功能,可以从wiki格式转换为HTML
def wikiFormat(text):
patternBold = re.compile("(''')(.+?)(''')")
patternItalic = re.compile("('')(.+?)('')")
patternBoldItalic = re.compile("(''''')(.+?)(''''')")
translatedText = (text or "").replace("\n", "<br/>")
translatedText = patternBoldItalic.sub(r'<b><i>\2</i></b>', textoTraducido or '')
translatedText = patternBold.sub(r'<b>\2</b>', translatedText or '')
translatedText = patternItalic.sub(r'<i>\2</i>', translatedText or '')
return translatedText
你应该根据自己的需要调整它。
${XML(wikiFormat(text))}
答案 1 :(得分:0)
也许使用<pre>
代码。
答案 2 :(得分:0)
将纯文本转换为HTML,方法是将“<
”和“&
”字符(可能还有一些,但这两个是绝对最小值)转换为HTML实体
使用文字“<br />
”替换每个换行符,可能仍会与换行符结合使用。
按此顺序。
总而言之,这不应该只是几行Python代码。 (我不做Python,但任何Python程序员都应该能够轻松地做到这一点。)
修改我找到code on the web作为第一步。对于第2步,请参阅this page底部的string.replace
。
答案 3 :(得分:0)
如果有人感兴趣,我就是这样解决的。这是将数据发送到genshi模板之前的python代码。
from trac.wiki.formatter import format_to_html
from trac.mimeview.api import Context
...
context = Context.from_request(req, 'resource')
data['comment'] = format_to_html(self.env, context, comment, True)
return template, data, None