我正在尝试以 natbib 风格引用一些政府报告。
“作者”是“傻傻的走路、跳跃和相关运动部”,简称:MOSWJRM(这也是官方的缩写)。
因此我希望能够像这样在文中引用它们:
“根据 MOSWJRM (2016),愚蠢的步行定义如下:“ 或者 ”穿反鞋走路是很愚蠢的(MOSWJRM,2016)“
并在参考文献中有这样的条目:
“MOSWJRM,傻傻的走路、跳跃和相关运动部:傻傻的走路完整指南,2016 年“
我的第一个想法是简单地用一些括号来设置作者author = {MOSWJRM, {Ministry of silly walks, jumping and related movement}},
,但是这会被忽略,导致出现“MOSWJRM,M.:完整指南……“ 入口。
似乎将整个作者放在双括号中,然后使用\defcitealias{MOSWJRM:2016}{MOSWJRM, 2016}
是我想要的一种方式,但是,这只适用于一种引用方式。我如何让它知道在使用\citetalias{}
和时会给出不同的结果\citepalias{}
?
答案1
我不确定我是否理解了您的问题,但这是您想要的输出吗?
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{MOSWJRM:2016,
author = "{MOSWJRM, {Ministry of silly walks, jumping and related movement}}",
year = {1986},
title = {The \TeX book},
}
\end{filecontents*}
\usepackage[round]{natbib}
\bibliographystyle{abbrvnat}
\defcitealias{MOSWJRM:2016}{MOSWJRM}
\newcommand{\mycitet}[1]{\citetalias{#1} (\citeyear{#1})}
\newcommand{\mycitep}[1]{\citepalias[\citeyear{#1}]{#1}}
\begin{document}
citep: \citep{MOSWJRM:2016}
citet: \citet{MOSWJRM:2016}
mycitet: \mycitet{MOSWJRM:2016}
mycitep: \mycitep{MOSWJRM:2016}
\nocite{*}
\bibliography{\jobname} % if you’re using BibTeX
\end{document}