noem/composer-file-embed
描述
dev-master
2022-04-10 00:01 UTC
Requires
- composer-plugin-api: ^2.0
- justinrainbow/json-schema: ^5.2
- symfony/finder: ^5.3
- symfony/yaml: ^5.3
Requires (Dev)
- composer/composer: ^2.0
- mockery/mockery: ^1.4
- nunomaduro/collision: ^5.8
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.6
This package is auto-updated.
Last update: 2024-09-17 14:59:47 UTC
README
一个 composer 插件,允许将文件作为代码片段嵌入到你的 Markdown 文档中
安装
通过 composer 安装此包
composer require noem/composer-file-embed
用法
该插件解析 Markdown 的"隐藏链接语法",否则该语法可用于注释,以自定义格式。这使得我们可以在生成的输出中不显示这些定义的情况下定义嵌入。以下格式都是有效的,所以如果您的 Markdown 处理器遇到其中一个,您可以尝试不同的格式
[embed]:# (path: filepathOrURL, lang: language, match: '[a-zA-Z]') [embed]:<> (path: filepathOrURL, lang: language, match: '[a-zA-Z]') [embed]:# "path: filepathOrURL, lang: language, match: '[a-zA-Z]'"
括号内的配置实际上是一个内联 YAML 字符串,因此逗号和空格很重要。当需要时,不要忘记在配置中引用。只需要path
。
由于只需要path
,您可以简单地这样做
[embed]:# (path: path/to/file.php)
...以嵌入整个文件。
查看示例页面以获取更多详细示例和使用场景。
更改您的文档后,使用新的 CLI 命令处理当前目录中的所有 *.md
文件。它将递归到子目录中,但会排除 vendor/
文件夹。
在项目目录中运行
composer embed-files
注意
当使用 Jekyll / GH-Pages 时,如果在 YAML 中使用引号,注释标记可能会损坏。结果是,尽管在 GitHub 上没有渲染,但 [embed] 定义在 GH Pages 上是可见的。尝试不同的格式。例如,如果您需要传递单引号的正则表达式模式,已知在注释中使用双引号是有效的。
[embed]:# "path: ./foo.md, match: '##\sThanks.*$'"
感谢
- @campoy 对 campoy/embed 的贡献,它给了我们很大的启发。