我顺着帖子来的emacs org 模式下的脚注:如何禁用 [n],但保留 [fn:]?几个月前,正如我所说,我不认为答案是正确的。
但是,我仍然想知道如何忽略数字脚注(以 [n] 形式)。
组织模式文档说“一个简单的数字脚注标记。与 footnote.el 兼容,但不推荐,因为像“[1]”这样的东西很容易成为代码片段的一部分。”。遗憾的是,它没有解释如何改变这一点。
答案1
我通过修改解决了这个问题org/lisp/org-footnote.el
- 注释掉 'org-footnote-re' 定义中的一行
(defconst org-footnote-re
;; Only [1]-like footnotes are closed in this regexp, as footnotes
;; from other types might contain square brackets (i.e. links) in
;; their definition.
;;
;; `org-re' is used for regexp compatibility with XEmacs.
(concat "\\[\\(?:"
;; Match inline footnotes.
(org-re "fn:\\([-_[:word:]]+\\)?:\\|")
;; Match other footnotes.
"\\(?:\\([0-9]+\\)\\]\\)\\|" ; <-------- comment out this line
(org-re "\\(fn:[-_[:word:]]+\\)")
"\\)")
"Regular expression for matching footnotes.")
- 在此更改函数“org-re”的参数。
(defconst org-footnote-definition-re
(org-re "^\\[\\([0-9]+\\|fn:[-_[:word:]]+\\)\\]")
"Regular expression matching the definition of a footnote.")
更改字符串
"^\\[\\([0-9]+\\|fn:[-_[:word:]]+\\)\\]"
到
"^\\[\\(fn:[-_[:word:]]+\\)\\]"