neoground / charm-markdown
Charm Markdown 模块
1.2
2023-07-08 12:59 UTC
Requires
- php: >=8.1
- erusev/parsedown: ^1.7
- erusev/parsedown-extra: ^0.8.1
- neoground/charm: ^3.1
README
欢迎使用 charm-markdown 模块,这是 Charm 框架星系中的一个显著补充,旨在提供 Markdown 和 YAML 前置内容的无缝集成功能。无论您是 Markdown 新手还是经验丰富的 YAML-Frontmatter 精英,此模块都是您 Charm 框架旅程的完美伴侣。
利用 Charm 内置的 Symfony/Yaml 包和 Parsedown + Parsedown-Extra 生成 HTML,为您应用中的 Markdown 力量带来平衡。
安装
通过 Composer 将 charm-markdown 添加到您的项目中开始您的冒险
composer require neoground/charm-markdown
接下来,在您的应用程序中安装 charm-markdown
bob cm:i neoground/charm-markdown
使用
通过用文件或字符串初始化 charm-markdown 来唤醒 charm-markdown 力量
$filepath = C::Storage()->getDataPath() . DS . 'demo.md'; $doc = C::Markdown()->fromFile($filepath);
或者
$doc = C::Markdown()->fromString('# Hello World');
通过访问
$doc->getMarkdownContent();来获得文档的 Markdown 内容部分$doc->getYaml();来检索 YAML 前置内容数据作为数组(如果没有设置,则为空数组)$doc->getHtml();来生成 HTML 内容,支持 Markdown Extra,并为每个标题添加 "id" 标签以方便锚定
直接体验 charm-markdown 的力量
这返回一个数组,其中包含 yaml(数组)和 markdown(字符串)键,包含文档的每一部分
$arr = C::Markdown()->separateMarkdownFromYaml($content);
直接从内容字符串中提取 YAML 数组作为数组
C::Markdown()->getYaml($content);
直接从内容字符串中提取 Markdown 部分作为字符串
C::Markdown()->getMarkdownContent($content);
将内容字符串的 Markdown 部分格式化为 HTML
C::Markdown()->toHtml($content);
在视图中使用
在 Twig 视图中,您可以直接使用 markdown_to_html 函数将 markdown 字符串直接输出为 HTML
<div id="content">{{ markdownToHtml(markdownString)|raw }}</div>
拥抱 charm-markdown 力量,开始一段史诗般的 Markdown 和 YAML 掌握之旅。愿 Markdown 与您同在!