使用@string在bibtex中缩写期刊名称

使用@string在bibtex中缩写期刊名称

我尝试在使用 bibtex 时缩写期刊名称。我的方法是使用附加文件进行替换,如本论坛中的以下问题所述:如何在引用中缩写期刊名称还有这里在 linux.org 上

主要的 tex 文件是这样的:

\documentclass[11pt,a4]{article}
\usepackage{natbib}

%opening
\title{Just a theory}
\author{The Author}

\begin{document}

\maketitle

\begin{abstract}
A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. 
\end{abstract}

\section{Introduction}
A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. 
\section{Section first}
A general treatment based on the work of Small and Big\cite{small1955} is presented which is extended for computing relevant values under the Harmonic oscillator approximation\cite{big1955}. 

\bibliographystyle{plain}
\bibliography{abbr,ref}

\end{document}

abbr 文件和 ref 文件如下:abbr.bib

@string{3D Printing and Additive Manufacturing="3D Print. Addit. Manuf."}
@string{Advances in Complex Systems="Adv. Complex Syst."}

参考文献

@article{small1955,
author = {Freely, I.P.},
title = {A small paper},
journal = {Advances in Complex Systems},
year = 1955,
volume = {1}
}

@article{big1955,
author = {Jass, Hugh},
title = {A big paper},
journal = {3D Printing and Additive Manufacturing},
year = 7991
}

我也尝试过这个;

@string{3D Printing and Additive Manufacturing={3D Print. Addit. Manuf.}}
@string{Advances in Complex Systems={Adv. Complex Syst.}}

也不会缩写期刊名称。目前的输出如下;

参考部分

答案1

您可以尝试以下操作。

在你的abbr.bib

@string{threedprint="3D Print. Addit. Manuf."}

@string{AdCompSys="Adv. Complex Syst."}

在你的ref.bib

@article{small1955,
author = {Freely, I.P.},
title = {A small paper},
journal = AdCompSys,
year = 1955,
volume = {1}
}

@article{big1955,
author = {Jass, Hugh},
title = {A big paper},
journal = threedprint,
year = 7991
}

导致:

在此处输入图片描述

请注意,我在那里做了三种更改。首先,在 中定义的字符串中abbrv.bib,使用不带空格的短字符串名称,而不是长字符串名称。将其视为key调用所定义字符串的 。其次,在 中调用字符串时,ref.bib无需使用括号。它不是字段,而是在其他地方定义的字符串。第三,出于我不知道的原因,让键以数字(“3D”)开头会引发错误,因此我将其更改为threedprint

相关内容