mindplay / middlemark
Markdown 渲染器作为 PSR-7 中间件
Requires
- psr/http-message: ^1.0
Requires (Dev)
- cebe/markdown: ^1.1
- kzykhys/ciconia: ^1.0.3
- kzykhys/yaml-front-matter: ^1.0
- mindplay/kisstpl: ^1.2.3
- mindplay/testies: dev-master
- zendframework/zend-diactoros: ^1.1
Suggests
- cebe/markdown: Markdown renderer, supported by CebeMarkdownEngine
- kzykhys/ciconia: Markdown renderer, supported by CiconiaMarkdownEngine
- kzykhys/yaml-front-matter: Front Matter parser, supported by YamlFrontMatterParser
- mindplay/kisstpl: Template engine, supported by ViewRenderer
This package is auto-updated.
Last update: 2022-02-01 12:51:45 UTC
README
PSR-7 Markdown 渲染中间件,支持 front matter,适用于例如 mindplay/middleman,relay/relay 或 zend-stratigility 中间件分发器。
工作原理
思路是将此中间件指向包含 *.md 文件的根文件夹,当中间件收到例如 foo/bar.html 的请求时,它会搜索 foo/bar.md,并对其进行渲染。
它通过组装一个简单的 Document 和 View 模型来实现,然后这些模型可以由实现简单接口的渲染器进行渲染 - 包含的渲染器集成了 mindplay/kisstpl,并且集成任何其他渲染器或模板引擎都非常简单。
适配器
每个第三方组件都是通过适配器接口集成的 - 要获取一个可工作的中间件组件,您需要选择一个 Markdown 引擎、front-matter 适配器和渲染器。
Markdown 适配器
可用的/默认的引擎适配器是 cebe/markdown 和 kzykhys/ciconia,两者默认使用 GitHub 风格的 Markdown,尽管您可以按需替换或重新配置这些适配器。引擎适配器是一个简单的接口,您可以轻松集成任何您想要的 Markdown 引擎。
Front Matter 适配器
Jekyll 风格的 front matter 默认引擎是 kzykhys/yaml-front-matter。目前只有一个(YAML)front matter 引擎可用,但它也位于适配器接口后面,并且很容易替换。
渲染器适配器
渲染视图模型的默认引擎是 mindplay/kisstpl,这是目前唯一支持的渲染器 - 要使用任何不同的视图引擎,请实现 Renderer。