avtonom / creole-bundle

支持Creole 1.0 Wiki标记语言的Symfony 2 PHP框架的组件包。

安装: 17

依赖项: 0

建议者: 0

安全: 0

星级: 0

关注者: 2

分支: 4

开放问题: 0

类型:symfony-bundle

v1.0.0 2015-06-01 22:32 UTC

This package is not auto-updated.

Last update: 2024-09-18 08:50:45 UTC


README

不再维护

我已经不再维护这个库了。如果有人想分叉并继续开发,没问题。

什么是WikiBundle?

这是一个为Symfony2提供的组件包。它提供了Wiki标记(Creole v1.0)的解析器和两个渲染器。解析器和词法分析器将标记转换为面向对象树结构。该结构由XhtmlRendererLatexRenderer使用以创建格式化输出。很容易编写自己的渲染器。

性能

解析非常快(后续将提供基准测试)。此外,缓存解析结果也很容易。每个表示树结构的类都实现了Serializable接口。因此,每次标记更改时,您可以解析一次并将树结构的序列化形式存储起来(例如,使用Doctrine 2在Object类型的列中)。一旦需要渲染标记,您只需反序列化树(这要快得多),然后直接渲染它,而不需要重新解析。

可靠性

此组件包已通过100%的代码覆盖率进行单元测试。使用大量特殊测试用例测试了Parser以确保正确解释Wiki标记。此外,还生成了随机标记并测试了是否存在任何错误。这些随机标记被解析,渲染为LaTeX代码,然后传递给pdflatex以避免PDF构建错误。

待办事项

以下标记目前缺失

LatexRenderer已禁用功能

  • 表格(由于pdflatex存在一些问题,因此已禁用)
  • 斜体,粗体(pdflatex不允许在两个段落上使用斜体或粗体跨度 - 因此已禁用)