![使用 biblatex-chicago 和 biber 進行年份移動](https://rvso.com/image/420051/%E4%BD%BF%E7%94%A8%20biblatex-chicago%20%E5%92%8C%20biber%20%E9%80%B2%E8%A1%8C%E5%B9%B4%E4%BB%BD%E7%A7%BB%E5%8B%95.png)
我的程式碼如下:
\documentclass{book}
\usepackage[natbib,authordate,backend=biber]{biblatex-chicago}%
\addbibresource{test.bib}
\begin{document}
\citet{baggio} and \citet{anderson}
\printbibliography
\end{document}
圍脖文件的內容
@article{baggio,
Author = {R. Baggio and M. van Lambalgen and P. Hagoort},
Date-Added = {2014-02-06 14:22:28 +0100},
Date-Modified = {2014-02-06 14:24:02 +0100},
Journal = {Journal of {M}emory and {L}anguage},
Pages = {36--53},
Title = {Computing and Recomputing Discourse Models: An {ERP} Study},
Volume = {59},
Year = {2008}}
@book{anderson,
Address = {Mahwah, NJ},
Author = {J. R. Anderson},
Date-Added = {2014-02-05 15:27:59 +0100},
Date-Modified = {2014-02-05 16:10:22 +0100},
Publisher = {Lawrence {E}rlbaum {A}ssociates},
Title = {The Architecture of Cognition},
Year = {1983}}
所需輸出
我已經參考了鏈接使用 biblatex-chicago 將年份放入括號中,但我的要求有所不同。
我需要在括號內的捲號之後列印年份(對於書籍數據,如螢幕截圖中的第二個),如果沒有捲號(對於文章數據),那麼年份應該在引用的末尾,前面用逗號...
請指教....
答案1
biblatex-chicago
是一種高度專業化的樣式,它做了很多工作來盡可能緊密地實現 CMS 規則。這意味著讓該樣式做其他事情可能非常棘手、乏味或幾乎不可能(它的設計初衷並非如此)。biblatex-chicago
並不意味著可以在其文件中的選項之外進行自訂。作為您客製化風格的基礎,這不是一個好的選擇。
您似乎想要的參考書目樣式就是您可以從biblatex-chicago
notes
樣式中獲得的樣式。
但採用這種notes
風格,您將不再獲得作者年份的引用。\textcite
/\citet
將不再採用以下形式作者(年份)。
\documentclass{article}
\usepackage[notes,backend=biber]{biblatex-chicago}%
\begin{filecontents}{\jobname.bib}
@article{baggio,
Author = {R. Baggio and M. van Lambalgen and P. Hagoort},
Journal = {Journal of Memory and Language},
Pages = {36--53},
Title = {Computing and Recomputing Discourse Models: An {ERP} Study},
Volume = {59},
Year = {2008},
}
@book{anderson,
Address = {Mahwah, NJ},
Author = {J. R. Anderson},
Publisher = {Lawrence Erlbaum Associates},
Title = {The Architecture of Cognition},
Year = {1983},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\null\vfill% just of this example, don't try this at home
\textcite{baggio} and \textcite{anderson}
\printbibliography
\end{document}
買者自負
如果你堅持混合風格,這似乎沒有被 CMS 推薦或正式批准,你可以嘗試類似的方法
\documentclass{article}
\usepackage[citestyle=chicago-authordate, bibstyle=chicago-notes]{biblatex}
\ExecuteBibliographyOptions{%
pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true,
citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true,
usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false,
dateuncertain=true,timezones=true,compressyears=true,
ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates,
uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false,
abbreviate=false,dateabbrev=false,avdate=true}
\providetoggle{cms@bookbibxref}
\providetoggle{cms@omitxrefdate}
\providetoggle{cms@postvol}
\providetoggle{cms@mtvolpunct}
\newbibmacro*{cjournal+ser+vol+num}{%
\usebibmacro{journal+sub}%
\setunit*{\addspace}%
\printlist[periodplace]{location}%
\setunit*{\addspace}%
\iffieldundef{series}%
{}%
{\newcunit%
\printfield[jourser]{series}%
\newcunit}%\setunit*{\addspace}?
\printfield[jourvol]{volume}%
\setunit{\addcomma\addspace}% need * here?
\printfield[journum]{number}}% Moved eid for 17th ed.
\newbibmacro*{number+or+month}{%
\iffieldundef{number}%
{\usebibmacro{date}}%
{\iftoggle{cms@numbermonth}%
{\usebibmacro{date}}%
{\usebibmacro{cmsyear}}}}
\begin{filecontents}{\jobname.bib}
@article{baggio,
Author = {R. Baggio and M. van Lambalgen and P. Hagoort},
Journal = {Journal of Memory and Language},
Pages = {36--53},
Title = {Computing and Recomputing Discourse Models: An {ERP} Study},
Volume = {59},
Year = {2008},
}
@book{anderson,
Address = {Mahwah, NJ},
Author = {J. R. Anderson},
Publisher = {Lawrence Erlbaum Associates},
Title = {The Architecture of Cognition},
Year = {1983},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\textcite{baggio} and \textcite{anderson}
\printbibliography
\end{document}
請注意,我剛剛加載了兩種不同的引文和參考書目樣式,並複製了缺少的定義,直到chicago-notes.cbx
不再出現錯誤為止。如果您引用其他(類型)作品,您可能會遇到更多錯誤,並且必須返回chicago-notes.cbx
複製相關程式碼。您還必須仔細檢查輸出。
我絕對不能推薦這個。
將註釋和作者日期引用與windycity
. 混合起來稍微容易一些。但顯然windycity
不支持\textcite
作者日期引用,因此您必須堅持使用\parencite
.
\documentclass{article}
\usepackage[style=windycity]{biblatex}
\begin{filecontents}{\jobname.bib}
@article{baggio,
Author = {R. Baggio and M. van Lambalgen and P. Hagoort},
Journal = {Journal of Memory and Language},
Pages = {36--53},
Title = {Computing and Recomputing Discourse Models: An {ERP} Study},
Volume = {59},
Year = {2008},
}
@book{anderson,
Address = {Mahwah, NJ},
Author = {J. R. Anderson},
Publisher = {Lawrence Erlbaum Associates},
Title = {The Architecture of Cognition},
Year = {1983},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\parencite{baggio} and \parencite{anderson}
\printbibliography
\end{document}