从引用到括号的嵌套括号(biblatex)

从引用到括号的嵌套括号(biblatex)

我正在寻找一种方法来让biblatex命令将括号从普通括号更改为方括号(如果在括号内的一段文本内发出),但在这里或在和手册\autocite{}中都找不到任何东西。biblatexbiblatex-chicago

考虑一下这个MWE:

% !TEX TS-program = xelatexmk
\documentclass{article}
\usepackage{filecontents}
\usepackage[authordate, backend=biber, parentracker=true, cmsdate=both]{biblatex-chicago}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{test1,
  author = {Antelope, Alfred},
  year = {2010},
  title = {A Title},
  url = {www.url.com},
  urldate = {2015-05-05},  
  journal = {Journal},
  volume = {1},
  number = {2},
  pages = {3--15}
}
@article{test2,
  author = {Bee, Ben},
  year = {2011},
  origyear = {1960},
  title = {Best Title},
  journal = {Journal},
  volume = {1},
  number = {2},
  pages = {3--4}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}

Text (in parenthesis \autocite{test1})

Text (in parenthesis \autocite{test2})

\end{document}

它给了我:

文本(括号内 (Antelope 2010))
文本(括号内 (Bee [1960] 2011))

但我希望

文本(括号内 [Antelope 2010])
文本(括号内 [Bee (1960) 2011])

我原本以为它parentracker=true会自动解决这个问题,但它似乎是有其他用途的?

答案1

biblatex只能跟踪使用其命令设置的括号/圆括号,文字(则不)被跟踪。

使用\parentext(或\mkbibparens)代替文字()

Text \parentext{in parenthesis \autocite{test1}}

Text \parentext{in parenthesis \autocite{test2}}

给出

文本(括号内[Antelope 2010])

文本(括号内[Bee (1960)2011])

也可以看看如何获取 \textcite 中的方括号选项?


可以还使(和处于活动状态,)以便它们自动使用biblatex和。但这可能会导致一些非常严重的麻烦,因为它使和处于活动状态。\bibopenparen\bibcloseparen()

我建议不要采取(任何)行动。

平均能量损失

\documentclass{article}
\usepackage[authordate, backend=biber, parentracker=true, cmsdate=both]{biblatex-chicago}
\addbibresource{biblatex-examples.bib}

\catcode`(=\active
\catcode`)=\active
\def({\bibopenparen}
\def){\bibclosebracket}

\begin{document}
Text (in parenthesis \autocite{sigfridsson})

Text (in parenthesis \autocite{kullback:reprint})
\end{document}

相关内容