appertly / axe-markdown
Appertly XHP Extras Markdown:Markdown 转 XHP
0.1.0
2016-05-23 15:25 UTC
Requires
- hhvm: ~3.12
- facebook/xhp-lib: ~2.2
- league/commonmark: ^0.13
Requires (Dev)
- hackpack/hackunit: ~0.6
This package is not auto-updated.
Last update: 2024-09-14 18:58:29 UTC
README
A ppertly X HP E xtras Markdown:Hack/HHVM 中的 Markdown 转 XHP。
安装
您可以使用 Composer 安装此库。
$ composer require appertly/axe-markdown
- 此项目的 master 分支(版本 0.x)需要 HHVM 3.12,并依赖于 XHP 2.2+ 和 league/commonmark。
合规性
此库的版本将遵循 语义版本控制。
我们的代码旨在遵守 PSR-1 和 PSR-2。如果您发现任何与标准合规性相关的问题,请发送一个 pull request!
特性
我们不是使用 league/commonmark
来实际 渲染 HTML,而是用它来解析 Markdown 到一个抽象语法树,然后从这个 AST 创建真正的 bona fide XHP 节点。
示例
function getXhp(): XHPRoot { $str = <<<EOD # Hello! This is great * Don't you think? EOD; return <axe:markdown text={$str}/>; }
调用此函数将产生与以下 XHP 节点完全相同的节点
<h1>Hello!</h1><p>This is great</p><ul><li>Don't you think?</li></ul>
如果您已经注册了自定义扩展,您也可以提供自己的 DocParser
。
$environment = League\CommonMark\Environment::createCommonMarkEnvironment(); // customize Environment $docParser = new League\CommonMark\DocParser($environment); // customize DocParser echo <axe:markdown text={$text} docParser={$docParser}/>;