From 48ce4ccc26642f9e19d6cb981d9dc6601d7c1ed2 Mon Sep 17 00:00:00 2001 From: Steven Date: Tue, 9 Dec 2025 09:07:54 +0800 Subject: [PATCH] fix(web): disable setext header syntax (#5314) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add custom remark plugin to prevent setext headers (headers using === or --- underlines) from being recognized by the markdown parser. The plugin disables the setextUnderline construct at the micromark parser level. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- web/src/components/MemoContent/index.tsx | 3 +- .../remark-plugins/remark-disable-setext.ts | 30 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 web/src/utils/remark-plugins/remark-disable-setext.ts diff --git a/web/src/components/MemoContent/index.tsx b/web/src/components/MemoContent/index.tsx index 601da30c0..42d95fb2c 100644 --- a/web/src/components/MemoContent/index.tsx +++ b/web/src/components/MemoContent/index.tsx @@ -11,6 +11,7 @@ import useCurrentUser from "@/hooks/useCurrentUser"; import { cn } from "@/lib/utils"; import { memoStore } from "@/store"; import { useTranslate } from "@/utils/i18n"; +import { remarkDisableSetext } from "@/utils/remark-plugins/remark-disable-setext"; import { remarkPreserveType } from "@/utils/remark-plugins/remark-preserve-type"; import { remarkTag } from "@/utils/remark-plugins/remark-tag"; import { isSuperUser } from "@/utils/user"; @@ -59,7 +60,7 @@ const MemoContent = observer((props: MemoContentProps) => { onDoubleClick={onDoubleClick} >