fn footnote_id(label: &str) -> StringExpand description
将脚注 label 转换为可用于 HTML id / href 锚点的安全标识符。
与 slugify_heading 不同:脚注 label 是用户自定义的稳定引用键([^key]),
不应转拼音或回退通用词——需保留 label 原文形态以保证 ref↔def 双向一致、可读。
策略:ASCII 字母数字与 -/_ 保留;其余 ASCII 字符(空格、标点、引号)转 -;
非 ASCII(中文、emoji 等)保留原样。合并连续 -、去首尾 -。
GFM 模式下 label 单行不含换行,但仍可能含空格/标点,此函数确保产出的 id:
(1) 不含 "/</>/&/空格等破坏 HTML 属性或 URL 的字符;(2) 同一 label 必产出同一 id。