BluditCMS Markdown 无法解析换行 必须连续2回车 很麻烦 故而增加MD的自动换行解析
>这是内容测试区域 分为3行 如果换行则说明成功
new-content
Bludit new-content test use md
br but page show a line can't br
发现 custom-fields-parser 插件有if (MARKDOWN_PARSER)判断及解析 markdown 处,还得知 Bludit 的 Page 类在 bl-kernel/pages.class.php
问题根本原因
Bludit 内置使用 Parsedown 作为 Markdown 解析器,它严格遵循 CommonMark 标准规范:
- 单个回车换行(
\n)只会被当作普通空格处理,不会渲染为<br> - 必须行尾加两个空格+回车,或者连续两个回车(空行分段),才会产生换行/段落效果
这就是在编辑器里写了多行、前台却显示成一整行的核心原因,造成了阅读困难与文章维护困难的双困境
并非 Bug,而是标准 Markdown 的语法设计。
核心文件位置
1. 解析器核心文件
Markdown 解析的核心控制器位于:
bl-kernel/parsedown.class.php
这是 Parsedown 解析器的完整实现,包含所有语法解析逻辑和配置开关,换行功能的总开关就在这个文件里。
//protected $breaksEnabled;
protected $breaksEnabled = true;
// 开启自动换行
以上为本人对问题的解决路径与总结,结果为AI总结 请谨慎判断!