我使用bibtex
,并采用书目样式ieeetr
来创建参考文献。我已阅读 IEEE 样式手册,并且我知道应将引文放在单独的括号中,例如[3], [4]
。
但是,我知道当它们连续时(例如,以 3 个或更多为一组)应该用连字符连接,[5]-[10]
但ieetr
样式似乎不会自动执行此操作。有什么想法吗?我已经尝试使用该cite
包了。
梅威瑟:
\documentclass{article}
\usepackage{cite}
\begin{document}
This is my text, and here are some citations \cite{article1}, \cite{article2}, \cite{article3}.
\bibliography{examplebib}
\bibliographystyle{ieeetr}
\end{document}
以及 bib 文件“examplebib.bib”
@article{article1,
author = {Doe, John},
title = {Title of article},
journal = {journal of article},
year = {2017},
volume = {11},
number = {1},
pages = {11--13},
publisher = {Journal Publisher},
}
@article{article2,
author = {Doe, John},
title = {Title of article},
journal = {journal of article},
year = {2017},
volume = {11},
number = {1},
pages = {11--13},
publisher = {Journal Publisher},
}
@article{article3,
author = {Doe, John},
title = {Title of article},
journal = {journal of article},
year = {2017},
volume = {11},
number = {1},
pages = {11--13},
publisher = {Journal Publisher},
}
答案1
可以使用以下包来近似实现这种引用风格natbib
:
\usepackage[numbers,sort&compress]{natbib}
\setcitestyle{square,citesep={],[}}
\bibliographystyle{IEEEtranN}
然后您可以使用\cite{article1,article3}
来获取[1],[3]
。但是,任何连续的范围(例如)\cite{article1,article2,article3}
仍然会给出[1-3]
。此行为是硬编码的,如果不重新定义命令,则无法更改\cite
。
另一个选择是biblatex
和biblatex-ieee
包(参见这个答案为什么babel
需要):
\documentclass{article}
\usepackage[english]{babel}
\usepackage[style=ieee,backend=bibtex]{biblatex}
\addbibresource{examplebib.bib}
\begin{document}
This is my text, and here are some citations \cite{article1,article2,article3}.
\printbibliography
\end{document}
当您使用 1.2d 版时,这将提供正确的格式biblatex-ieee
(来自加拿大运输安全局)。压缩不适用于 1.1n,这是我的 TeXLive 发行版提供的版本。