natbib은 정렬 및 압축하지 않습니다.

natbib은 정렬 및 압축하지 않습니다.

옵션 과 함께 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에서는 숫자 순서만 정렬하고 압축하기 때문에 인용 정렬이 불가능합니다 . 숫자 시퀀스를 압축하기 전에 이름이 동일한지 여부를 테스트하지 않습니다. 따라서 \citeor 만 \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}

그 결과는 다음과 같습니다.

비블라텍스 솔루션

관련 정보