相关我的另一个问题:我在文本中使用脚注引用,并按日期对参考书目进行排序。我需要选项reflist
来windycity
确保参考书目按日期排序,并且日期紧跟在作者后面。当我引用同一年同一作者的作品时,参考书目中的年份后面会添加字母。这对于内联作者日期引用是有意义的,但对于注释引用则不合理。我可以防止这种情况发生吗?
梅威瑟:
\documentclass{article}
\usepackage[reflist=true, style=windycity, date=year]{biblatex}
\bibliography{biblatex-examples}
\begin{document}
\cite{knuth:ct:c}
\cite{knuth:ct:b}
\printbibliography
\end{document}
答案1
从概念上讲,摆脱extradate
年份后的字段/消歧义字母的最好方法是通过传递选项来告诉根本biblatex
不要计算。labeldate
labeldateparts=false
但如果选项设置为 则windycity
假定和无法正常工作。labeldateparts=true
false
因此,这里是下一个最好的解决方法,即在从文件中读取字段extradata
(和伴随字段)时抑制它们。extradatescope
.bbl
\documentclass{article}
\usepackage[reflist=true, style=windycity, date=year]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareFieldInputHandler{extradate}{\def\NewValue{}}
\DeclareFieldInputHandler{extradatescope}{\def\NewValue{}}
\begin{document}
\cite{knuth:ct:c}
\cite{knuth:ct:b}
\printbibliography
\end{document}
当然,这意味着extradate
确实消失了,并且\parencite
s 不再是唯一的。
如果你希望这些字母只在参考书目中消失,请使用
\AtEveryBibitem{%
\clearfield{extradate}%
\clearfield{extradatescope}}
答案2
回答您的编辑:
您可以使用此处的代码形式修改环境:https://tex.stackexchange.com/a/63865/29873
\documentclass{article}
\usepackage[reflist=true, style=windycity, date=year]{biblatex}
\bibliography{biblatex-examples}
\defbibenvironment{nodis}
{\list
{}
{\setlength{\leftmargin}{\bibhang}%
\setlength{\itemindent}{-\leftmargin}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist}
{\clearfield{extradate}\item}
\begin{document}
\cite{knuth:ct:c}
\cite{knuth:ct:b}
\printbibliography
\printbibliography[env=nodis]
\end{document}
来自手册:
引用列表
使用此选项可以以作者-日期格式打印参考书目,即 CMOS 所称的参考列表。
如果您不想要该格式,请不要使用该选项:
\documentclass{article}
\usepackage[style=windycity, date=year]{biblatex}
\bibliography{biblatex-examples}
\begin{document}
\cite{knuth:ct:c}
\cite{knuth:ct:b}
\printbibliography
\end{document}