Skip to content

v0.5.0

Latest

Choose a tag to compare

@helloworldtang helloworldtang released this 04 Oct 14:36
· 1 commit to main since this release

变更

  • 修复开界侧粗体死角:水在流**(观察到的现象**) 这类写法(** 前紧贴文字、后紧跟标点)此前不做强调转换,字面 ** 直进 HTML;现在渲染前把开界后的标点串整串移出粗体(流**(X**) → 流(**X**))后正常转 strong。
  • 归一化实现从正则替换改为 CommonMark 分隔符配对算法;闭界侧死角(**X。**后文)行为与 0.4.0 一致。

为什么

CommonMark flanking 规则下,开界 ** 后紧跟标点且前非空白/标点时不是 left-flanking,markdown2(含 2.5.5)不做转换(2026-10-04 公众号草稿实测踩中;半角括号同样命中)。0.4.0 的正则规则在多粗体文本里还会把前一粗体的闭界误当开界锚点、跨粗体错位配对(**A**!**B**c 形态);配对算法先按 flanking 配对(原生可转换的绝不碰),只对落单的死角对搬标点。与 wechat-publish-service(Rust)的 render::bold_punct 算法保持同步。

验证:32 测试全绿(ruff / mypy strict 通过);干净 venv 安装构建产物后,线上草稿原句 4 处粗体全部转 strong、无字面 **。

升级命令

pip install -U wechat-md==0.5.0

消费方指引

  • 纯输出行为变更:仅受影响写法(死角形态)的渲染结果改变,合法写法逐字节不变;围栏代码块与行内代码内容不改。
  • 引 GitHub 源请锁 tag:.../archive/refs/tags/v0.5.0.tar.gz,不要引滚动的 main。