オプション付きでnatbibを使用している記事がありますsort&compress
が、動作していないようです
\documentclass[11pt,english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[a4paper]{geometry}
\geometry{verbose,tmargin=3cm,bmargin=3cm,lmargin=2cm,rmargin=2cm}
\usepackage{mathrsfs}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[sort&compress,numbers]{natbib}
\usepackage{babel}
\begin{document}
\title{Title}
\maketitle
\begin{abstract}
Abstract text
\end{abstract}
\section{Introduction}
Introduction text \citet{J2009,J2013,J2016}.
\bibliographystyle{unsrtnat}
\bibliography{references}
\end{document}
これは参照ファイルです
% filename references.bib
@Article{J2016,
author = {Jappo, P.M.},
title = {Title1},
journal = {Mech. Res. Commun.},
year = {2016},
volume = {X},
pages = {1--2},
}
@Article{J2013,
author = {Jappo, P.M.},
title = {Title2},
journal = {Phys. Lett. A},
year = {2013},
volume = {X},
pages = {1--2},
}
@Article{J2009,
author = {Jappo, P.M.},
title = {Title3},
journal = {Math. Comput. Simul},
year = {2009},
volume = {X},
pages = {1--2},
}
答え1
natbib
は、数字のシーケンスのみをソートして圧縮するため、引用をソートできません\citet
。数字のシーケンスを圧縮する前に、名前が同じかどうかをテストしません。したがって、\cite
またはのみが\citep
圧縮できます。
\documentclass[11pt,english]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[sort&compress,numbers]{natbib}
\usepackage{babel}
\begin{document}
\title{Title}
\maketitle
\begin{abstract}
Abstract text
\end{abstract}
\section{Introduction}
Introduction text \cite{J2009,J2013,J2016}.
\bibliographystyle{unsrtnat}
\bibliography{\jobname}
\end{document}
確かに、ドキュメントはnatbib
誤解を招く可能性があります。
著者が同じであることが分かっている場合は、
Introduction text \citeauthor{J2009} \cite{J2009,J2013,J2016}.
取得するため
しかし、これは単なる回避策であり、解決策ではないと思います。
本当の解決策は、biblatex
とbiber
既存のドキュメントのnatbib
すべてを変更したくない場合は、オプション を使用できます。\citet
\begin{filecontents*}{\jobname.bib}
% filename references.bib
@Article{J2016,
author = {Jappo, P.M.},
title = {Title1},
journal = {Mech. Res. Commun.},
year = {2016},
volume = {X},
pages = {1--2},
}
@Article{J2013,
author = {Jappo, P.M.},
title = {Title2},
journal = {Phys. Lett. A},
year = {2013},
volume = {X},
pages = {1--2},
}
@Article{J2009,
author = {Jappo, P.M.},
title = {Title3},
journal = {Math. Comput. Simul},
year = {2009},
volume = {X},
pages = {1--2},
}
\end{filecontents*}
\documentclass[11pt,english]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[style=numeric-comp,sortcites,natbib]{biblatex}
\usepackage{babel}
\addbibresource{\jobname.bib}
\begin{document}
\title{Title}
\maketitle
\begin{abstract}
Abstract text
\end{abstract}
\section{Introduction}
Introduction text \citet{J2009,J2013,J2016}.
\printbibliography
\end{document}
結果は次のようになります: