前些年,我曾经依赖老旧的 (tm) BibTeX 来处理我的参考书目文件。但是现在,应该使用 BibLaTeX 和 biber 来替代 BibTeX。因此,我很想说服我的 emacs 使用 BibLaTeX 作为其默认设置。
我读让 emacs 自动使用 biber 而不是 bibtex和定制 emacs 以使用 biblatex-biber 而不是 bibtex但这些并没有回答我的问题/对我来说没有起到足够的作用。
例如,我想打开一个新的、新鲜的、空的书目文件new.bib
。在该缓冲区中,Emacs 仍然假设使用 BibTeX,因为可以在菜单栏“Entry-Types”中轻松检查。它提供了经典的 BibTeX 条目类型集。 @Online
而 BibLaTeX 的其他新类型缺失或未显示。
选择上述菜单中的“BibTeX 方言”子菜单证明 Emacs 仍然使用 BibTeX 作为方言。如果另一个选项“BibLaTeX”被自动选择,我会很高兴。
我的.emacs
文件包含以下内容:
(setq LaTeX-biblatex-use-Biber t)
(setq TeX-command-BibTeX "Biber")
这似乎还不够。
我错过了什么?
答案1
自定义变量bibtex-dialect
为biblatex
:
bibtex-dialect 是 中定义的变量
bibtex.el
。
它的值是BibTeX
如果此变量的值满足谓词,则其作为文件局部变量是安全的
symbolp
。
您可以自定义此变量。文档:当前 BibTeX 方言。有关允许的值,请参阅
bibtex-dialect-list
。要以交互方式更改方言,请使用命令bibtex-set-dialect
。
如果你不喜欢自定义界面,请添加
(setq bibtex-dialect 'biblatex)
到您的 init 文件中。优点是一旦bibtex.el
加载,customize 就不会覆盖此变量。因此,您不需要像这样的构造:
(with-eval-after-load "bibtex"
(bibtex-set-dialect 'biblatex))
答案2
你可以加
(bibtex-set-dialect 'biblatex)
到你的 Emacs 初始化。