附件中的 MWE 显示了这个问题。所引用的硕士论文被标记为“Tesis de mtría”,在西班牙语(该文件的主要语言)中应译为“Tesis de maestría”。
\documentclass[spanish]{article}
\usepackage{babel}
\usepackage{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@MastersThesis{noguera21:_tesis,
language = {spanish},
author = {Noguera, Norberto},
title = {Irrelevante en extremo},
school = {U. de la Vida},
year = 2021
}
\end{filecontents*}
\bibliography{\jobname}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案1
biblatex
文件中定义的所有bibstring.lbx
都有两种形式:长版本和短版本。
您可以通过 选项全局地(即对于 打印的所有 bibstring biblatex
)选择需要长格式还是短格式abbreviate
,其预设值为true
。
spanish.lbx
有
mathesis = {{Tesis de maestr\'{\i}a}{Tesis de mtr\'{\i}a\adddot}},
如果您想要“Tesis de maestría”,您可以设置abbreviate=false
,但这会影响打印的所有字符串biblatex
,因此您还会看到“página”而不是“pág.”,这可能有点多
\documentclass[english, spanish]{article}
\usepackage{babel}
\usepackage[abbreviate=false]{biblatex}
\begin{filecontents*}{\jobname.bib}
@MastersThesis{kropitz10:_problem_busy_beaver,
REALlanguage = {slovak},
language = {czech},
author = {Kropitz, Pavel},
title = {Problém Busy Beaver},
school = {Charles University},
year = 2010,
address = {Prague},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
Lorem \autocite[30]{kropitz10:_problem_busy_beaver}
\printbibliography
\end{document}
因此,重新定义硕士论文的文献字符串可能更容易。当您在文档的序言中重新定义文献字符串时.tex
,biblatex
将对长格式和短格式使用相同的文本,因此我们可以说
\documentclass[english, spanish]{article}
\usepackage{babel}
\usepackage{biblatex}
\DefineBibliographyStrings{spanish}{
mathesis = {Tesis de maestría},
}
\begin{filecontents*}{\jobname.bib}
@MastersThesis{kropitz10:_problem_busy_beaver,
REALlanguage = {slovak},
language = {czech},
author = {Kropitz, Pavel},
title = {Problém Busy Beaver},
school = {Charles University},
year = 2010,
address = {Prague},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
Lorem \autocite[30]{kropitz10:_problem_busy_beaver}
\printbibliography
\end{document}
要得到