答案1
书目apalike
样式只能生成作者年份样式的引文标注,而该cite
包旨在专门用于生成数字样式引文标注的书目样式。因此,如果您需要使用apalike
书目样式,请执行不是使用该cite
包。
您应该加载apalike
或natbib
引文管理包。前者比较老,但有\cite
自动生成“括号内”引文标注的“优点”(至少是优点)。该natbib
包比 包更新得多,功能也多得多apalike
。至少就您的目的而言,它的“缺点”是 的\cite
行为类似于\citet
,即,它生成“文本样式”而不是“括号内”引文标注。我能想到两个“修复方法”:
\cite{
对文档中的所有 进行全局搜索和替换,将其替换为\citep{
。 (我强烈推荐此“修复”。)加载
letltxmacro
包裹并发出指令\LetLtxMacro\cite\citep
在序言中。(该
\citep
宏采用可选参数;因此,使用\let
它来分配它\cite
可能会造成奇怪且令人不快的错误。)
使用该包的 MWE natbib
:
\RequirePackage{filecontents}
\begin{filecontents}{mybib.bib}
@misc{test, author = "Anne Author", title = "Thoughts", year = 3001}
\end{filecontents}
\documentclass{article}
\usepackage{natbib,letltxmacro}
\LetLtxMacro\cite\citep % make '\cite' act like `\citep`
\bibliographystyle{apalike}
\begin{document}
\cite[see][p.~45]{test}
\bibliography{mybib}
\end{document}