marcandreappel/bladedown

适用于 Laravel 7+ 的 Markdown 解析 Blade 指令。

1.0.1 2020-06-23 00:48 UTC

This package is auto-updated.

Last update: 2024-09-23 09:42:04 UTC


README

一个轻量级的 Laravel 7 包,用于在 Blade 模板中解析 Markdown。

安装

使用 Composer 安装它

composer require marcandreappel/bladedown

运行 php artisan vendor:publish 命令以发布配置文件。

使用方法

Blade 指令

Markdown 解析器可以通过使用 @markdown 指令在 Blade 模板中使用

<article>
    <h1>{{ $post->title }}</h1>

    <section class="content">
        @markdown($post->body)
    </section>
</article>

还提供了块状语法

@markdown
# Hello world

This *text* will be **parsed** to [HTML](https://laravel.net.cn).
@endmarkdown

门面

$markdown = "# Hello";

$html = Markdown::parse($markdown); // <h1>Hello</h1>

辅助函数

$html = markdown('# Hello'); // <h1>Hello</h1>
$html = markdown_capture(function () {
    echo "# Hello";
    echo "\n\n";
    echo "So **cool**!";
});

// <h1>Hello</h1>
// <p>So <b>cool</b>!</p>

您还可以从服务容器中解析解析器

$parser = app('Appel\Bladedown\Parser');
$html = $parser->parse('# Hello'); // <h1>Hello</h1>

驱动程序

Bladedown 允许您添加自定义 Markdown 驱动程序。为了使用自定义 Markdown 驱动程序,您需要创建一个实现 Appel\Bladedown\Drivers\MarkdownDriver 接口的类。该接口包含两个方法:textlinetext 用于将一个 Markdown 块转换为 HTML,而 line 用于将单行转换为 HTML。

Bladedown 随带了一个使用 Parsedown 库ParsedownDriver,由 @erusev 提供。

重要说明

由于它建立在之上,此包与 andreasindal/laravel-markdown 不兼容。

致谢

许可证

请参阅 LICENSE 文件。