如何从 natbib 过渡到 biblatex?

如何从 natbib 过渡到 biblatex?

我是 LaTeX 新手,我一直在阅读,显然这个biblatex软件包比 更适合我natbib。我读过另一个帖子但我无法让它与我的文档一起工作。

这是我的序言的一个示例:

\documentclass[12pt,letterpaper]{report}

\usepackage{sectsty} 
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage[spanish]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage[left=3cm,right=2cm, top=3cm, bottom=3cm]{geometry}
\usepackage[autostyle, spanish=mexican]{csquotes}

\usepackage[authoryear]{natbib} %Bibliografía
\bibliographystyle{humannat} % 
\usepackage{hyperref}

\hypersetup{colorlinks, citecolor=blue}
\makeatletter
\AtBeginDocument{
\renewcommand\NAT@open{\color{blue}(}}
\makeatother

\begin{document}
This is the text of the document which includes \cite{examples} and \citep{examples} from a 
.bib document saved in the same folder of the .tex document.
\bibliography{Bibliografia}
\end{document}

我根本不知道该怎么做,我不确定我是否不能使用.bib名为 Bibliografia 的文件,或者我是否需要使用某些东西biber。我尝试添加选项natbib=true、命令\printbibliography,同时删除命令natbib \bibliographystyle \bibliography{}

我只是不知道除了坚持我的natbib选择之外还能做什么。我应该更改inputencbabel包以适应西班牙语吗?或者其他什么?该包biblatex有问题还是不能使用?uschyperrefbiblatex

编辑:莫威答案已经奏效,但现在我必须修复 hyperref 并为使用\makeatletterto\makeatother命令修复的引用部分着色。有什么想法吗?

答案1

要切换到 biblatex 该怎么做?已经列出了你必须执行的步骤(无特定顺序)

  • \usepackage[authoryear]{natbib}用。。。来代替\usepackage[style=authoryear, backend=biber]{biblatex}
  • 消除\bibliographystyle{humannat}
  • 删除\bibliography{Bibliografia}并添加\addbibresource{Bibliografia.bib}(文件扩展名!)在序言中(理论上你可以继续使用\bibliography{Bibliografia},但必须将其移到序言中,它不能留在\begin{document}\addbibresource优于之后\bibliography)。
  • 添加\printbibliography您想要查看参考书目的地方。

  • 使用\textcite代替\citet\parencite而不是。或者,如果您将 添加到加载选项中,\citep您可以继续使用\citet和。\citepnatbib=true

你还需要进行一些调整

  • 删除\usepackage{ucs}-它与不兼容biblatex
  • 替换\usepackage[utf8x]{inputenc}\usepackage[utf8]{inputenc}。对于西班牙语文本来说utf8应该足够了。
  • 删除\makeatletter...\makeatother位重新定义\NAT@open。这对 有效,natbib但对 无效biblatex

您的文档现在看起来应该大致如此

\documentclass[12pt,letterpaper]{report}

\usepackage{sectsty} 
\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage[left=3cm,right=2cm, top=3cm, bottom=3cm]{geometry}
\usepackage[autostyle, spanish=mexican]{csquotes}

\usepackage[style=authoryear, backend=biber]{biblatex}
\usepackage{hyperref}

\hypersetup{colorlinks, citecolor=blue}

\addbibresource{Bibliografia.bib}

\begin{document}
This is the text of the document which includes \cite{examples} and \parencite{examples} from a 
.bib document saved in the same folder of the .tex document.
\printbibliography
\end{document}

最后,极其重要,配置你的编辑器来运行 Biber 而不是 BibTeX,请参阅Biblatex 与 Biber:配置我的编辑器以避免未定义的引用natbib您曾经运行过 LaTeX、BibTeX、LaTeX、LaTeX 时,您现在需要运行(假设您的文档名为paper.tex

pdflatex paper
biber paper
pdflatex paper
pdflatex paper

使用问号或粗体引用关键字代替引用编号解释了 Biber 的出色之处,但你可能想看看Biblatex 与 Biber:配置我的编辑器以避免未定义的引用让你的编辑器运行 Biber。

如果您一开始遇到问题,请删除所有临时文件(,,.aux)并从头开始重新编译。.bbl.bcfbiber 故障排除如果您在运行 Biber 时遇到问题,请提供一些方便的基本建议。

您不需要做任何特别的事情来获得对西班牙语工作的支持,它应该可以开箱即用,因为它可以biblatex从中选择语言babel

相关内容