如何修改/定制 reftex-cite-format

如何修改/定制 reftex-cite-format

使用reftex-cite-format 'natbib, 下的默认选项之一reftex-citation\citep[e.g.][]{%l}。我该如何稍微修改一下,使其变为\citep[e.g.,][]{%l}

答案1

如果您自定义了多个条目,则可能需要定义一个变量,例如my-reftex-cite-format使用reftex-cite-format-builtin natbib条目作为起点。然后设置(setq reftex-cite-format 'my-reftex-cite-format)

但如果你只是想改变这一点,你可以尝试:

(setf (cdr (assoc ?e (caddr (assoc 'natbib reftex-cite-format-builtin))))
      "\\citep[e.g.,][]{%l}")

确实有点迂回,但是这个变量是相当嵌套的。

编辑:根据评论中的要求,直接设置的示例reftex-cite-format(这是我实际使用的biblatex)。

(defvar my/reftex-cite-format-biblatex
  '((?\C-m . "\\cite[][]{%l}")
    (?C    . "\\cites[][]{%l}")
    (?t    . "\\textcite[][]{%l}")
    (?T    . "\\textcites[][]{%l}")
    (?p    . "\\parencite[][]{%l}")
    (?P    . "\\parencites[][]{%l}")
    (?f    . "\\footcite[][]{%l}")
    (?F    . "\\footcites[][]{%l}")
    (?s    . "\\shortcite[][]{%l}")
    (?S    . "\\shortcites[][]{%l}")
    (?a    . "\\citeauthor{%l}")
    (?A    . "\\citeauthor*{%l}")
    (?u    . "\\autocite[][]{%l}")
    (?U    . "\\autocite*[][]{%l}")
    (?i    . "\\citetitle{%l}")
    (?I    . "\\citetitle*{%l}")
    (?y    . "\\citeyear{%l}")
    (?Y    . "\\citeyear*{%l}")
    (?n    . "\\nocite{%l}"))
  "My personal set of biblatex citation commands for use with RefTeX.
Based on the biblatex set of `reftex-cite-format-builtin'.")

(setq reftex-cite-format my/reftex-cite-format-biblatex)

相关内容