2010-01-15 65 views
2

我有一些问题,下面的字符串,而 试图语法高亮他们:降价和语法高亮Django中混合代码

<code class="php"><? echo "<input type=\"text\">"; ?></code> 

PHP的一部分被正确地呈现,但HTML部分休息。

我用的是降价和语法高亮从

http://www.djangosnippets.org/snippets/119/

片断任何想法如何逃脱PHP代码正确里面的HTML部分?

+0

如果您告诉我我的解决方案以何种方式无效(您会得到什么输出?您期望输出什么?您会得到什么错误?)我可能会帮助您更多。对不起,我的回答对你不起作用。 – 2010-01-17 20:07:34

回答

1

看起来你需要通过escape过滤器来传递你的PHP/HTML混合代码,到<实例转换为&lt;

使用像这样的一个模板,假设你有你的代码模板上下文变量称为mycode

{{ mycode|escape }} 
+0

感谢您的帮助,但它不起作用... 我今天晚上会问我们当地的python用户群 谢谢! – nfo 2010-01-17 13:31:02

1

Python的降价与做语法高亮Pygments来做整合。

您可以使用突出显示的语法从降价转换为带有源代码的html格式文本。

简短的版本是:

import markdown 
html = markdown.markdown(text,['codehilite']) 

html包含源代码的HTML格式的文本高亮显示。你只需要指向CSS风格,就是这样。

看一看how to setup markdow and pygments to do syntax highlight for blogger.

在您的解决方案,你可以只包括对CSS的引用这使得它更容易。