Feature Request: Support Custom Heading Anchors for Non-Latin Languages
Author: Nisekoi5Created Aug 5, 2026Updated Sep 13, 2026
LabelsStale
Pre-submission Checklist
- I have searched existing issues and confirmed this has not already been requested
- This is a feature request, not a bug report or support question
Area
Tags / organization
Problem or Use Case
Feature Description
Currently, extracts Markdown headings into navigation links and generates clickable element IDs (anchors). However, the anchor slugification logic relies on replace(/[^\w\s-]/g, ""), which strips out all non-Latin characters (e.g., Chinese, Japanese, Korean, Cyrillic, etc.).
This results in empty anchor IDs or broken links for documents written in non-English languages: https://github.com/usememos/memos/blob/83eab44695ec95205990e4e0c1045dbfa6caf4f3/web/src/utils/markdown-manipulation.ts#L100
Who Would Use This?
All other users of non-Latin-based languages
Proposed Solution
- Support Custom Anchors Syntax: Implement explicit custom anchor syntax similar to [VitePress Custom Anchors](https://vitepress.dev/guide/markdown#custom-anchors) (e.g.,
## Heading {#custom-anchor}). - Improve Slugification (Optional/Bonus): Preserve Unicode characters or use standard URL-encoding for heading slugs so auto-generated anchors work out-of-the-box for internationalized content.
Alternatives Considered
No response
Compatibility and Migration
No response
Examples
No response
Additional Context
No response
Source: usememos/memos