使用 biblatex
\usepackage[style=ieee, backend=bibtex]{biblatex}
我正在尝试将发布者添加到 phd 类型,但没有添加。
@phdthesis{phd,
author = "Me",
title = "My Title",
school = "My University",
year = 2020,
publisher= "Fubar",
type = {PHD}
}
如何将出版商添加到我的参考文献中?
答案1
在 BibTeX 和biblatex
传统论文(@phthesis
、@thesis
、 ...)中没有publisher
。相反,它们有institution
或school
。大多数论文可能无需提供出版商即可找到(如果它们是由知名出版社出版的话)。
话虽如此,在论文中添加 a 当然并非不可能publisher
。你只需要找到一个好的位置来连接。样式的参考书目输出ieee
基于标准biblatex
样式standard.bbx
,其中 a 的机构@thesis
以 打印institution+location+date
。你可以修改该宏以打印 a publisher
。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=ieee]{biblatex}
\renewbibmacro*{institution+location+date}{%
\ifentrytype{thesis}
{\printlist{publisher}%
\setunit{\addcomma\space}}
{}%
\printlist{location}%
\iflistundef{institution}
{\setunit*{\addcomma\space}}
{\setunit*{\addcolon\space}}%
\printlist{institution}%
\setunit*{\addcomma\space}%
\usebibmacro{date}%
\newunit}
\begin{filecontents}{\jobname.bib}
@phdthesis{phd,
author = {Me},
title = {My Title},
school = {My University},
year = 2020,
publisher = {Fubar},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
Lorem \cite{phd}
\printbibliography
\end{document}
答案2
我不会使用@phdthesis
和 选择@thesis
来代替(但在这个例子中我将使用@phdthesis
)。此外我建议放弃bibtex
作为后端并改用biber
。
type
您的问题可以通过将 a和 a分配note
给论文条目来解决:
\documentclass{article}
\usepackage[english]{babel}
\usepackage{csquotes}
\begin{filecontents}[overwrite]{demo-phd.bib}
@phdthesis{phd,
author = {Lastname, Firstname},
title = {Awesome Title},
school = {Some University},
year = {2020},
publisher= {Fubar},
type = {Published by Fubar},
note = {Ph.D. dissertation}
}
\end{filecontents}
\usepackage[style=ieee, backend=biber]{biblatex}
\addbibresource{demo-phd.bib}
\begin{document}
\section{Introduction}
There is this great thesis I'd really like to quote: \autocite{phd}
\printbibliography
\end{document}
\end{document}