我正在使用python Textile将标记存储在数据库中。我想生成以下 HTML 片段:
(<em>asdf</em>)
显而易见的没有被编码:
(_asdf_) -> <p>(_asdf_)</p>
以下工作,但产生一个丑陋的空间:
( _asdf_) -> <p>( <em>asdf</em>)
我是否遗漏了一些明显的东西,或者这只是不可能使用 python Textile 吗?
我正在使用python Textile将标记存储在数据库中。我想生成以下 HTML 片段:
(<em>asdf</em>)
显而易见的没有被编码:
(_asdf_) -> <p>(_asdf_)</p>
以下工作,但产生一个丑陋的空间:
( _asdf_) -> <p>( <em>asdf</em>)
我是否遗漏了一些明显的东西,或者这只是不可能使用 python Textile 吗?
很难说这是否是一个错误。在Textile 网站上的表单中,(_foo_)
可以按您的意愿工作,但在可下载的 PHP 实现中,它不会。
你应该能够做到这一点:
([_asdf_]) -> <p>(<em>asdf</em>)</p>
但是,这不起作用,这是py-textile 中的一个错误。你要么需要使用这个:
(]_asdf_])
或通过将第 918 行(在Textile.span()
方法中)更改为:
(?:^|(?<=[\s>%(pnct)s])|([{[]))
(差异在最后一组;括号被错误地颠倒了。)
您还可以将行更改为:
(?:^|(?<=[\s>(%(pnct)s])|([{[]))
(注意添加的括号)以获得您想要的行为(_foo_)
,但我不确定这是否会破坏其他任何东西。
跟进:最新版本的 PHP Textile 类确实对我建议的进行了类似的更改。