.bib에 입력한 순서의 역순으로 된 참고문헌

.bib에 입력한 순서의 역순으로 된 참고문헌

내가 입력할 때:

@ARTICLE{article1,
  author  = {AAA}, 
  title = {New Method1},
  year    ={2013},
  journal = {SuperJournal},
}

@ARTICLE{article2,
  author  = {BBB}, 
  title = {New Method2},
  year    ={2013},
  journal = {SuperJournal},
}

바람직한 순서는

[1] BBB,제2조,...

[2] AAA, Article1,..

즉, 나는 \bibliographystyle{unsrt}나에게 주는 것과 반대되는 것을 원한다. 누구나?

편집하다. 더 많은 정보를 추가하여 질문을 확장합니다. multibib 패키지를 사용하여 출판물.bib에서 파일을 가져오고 싶습니다.

 documentclass[11pt,a4paper,sans]{moderncv}
 \moderncvstyle{classic}                            
 \moderncvcolor{blue}                             

\makeatletter
\renewcommand*{\bibliographyitemlabel}{\@biblabel{\arabic{enumiv}}}
\makeatother
\renewcommand*{\bibliographyitemlabel}{[\arabic{enumiv}]}

% bibliography with mutiple entries
\usepackage{multibib}

\newcites{article}{{Articles}}

.
.
.

\section{Publications}

\nocitearticle{article1, article2}
\bibliographystylearticle{unsrt}
\bibliographyarticle{publications}  

\end{document}

답변1

참고문헌 스타일을 사용할 수 있습니다 plain. 컴파일 단계는 의 규칙에 따라 표시됩니다 arara.

% arara: pdflatex
% arara: bibtex
% arara: pdflatex
% arara: pdflatex
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@ARTICLE{article1,
  author  = {AAA}, 
  title = {New Method1},
  year    ={2013},
  journal = {SuperJournal},
}

@ARTICLE{article2,
  author  = {BBB}, 
  title = {New Method2},
  year    ={2013},
  journal = {SuperJournal},
}
\end{filecontents}

\begin{document}
\cite{article2} and \cite{article1}
\bibliography{\jobname}
\bibliographystyle{plain}
\end{document}

결과는 다음과 같습니다. 여기에 이미지 설명을 입력하세요

답변2

파일 .bib에 이상한 점이 없으면 즉, @article또는 @book항목만 포함되어 있습니다(모든 종류의 항목이 지원되지만 또는 는 지원되지 않음 @STRING) @COMMENT. 다음을 수행해야 합니다.

.bib키 목록을 역순으로 작성하는 파일을 읽은 다음 관련 \nocite명령을 실행합니다.

\begin{filecontents*}{\jobname.bib}
@ARTICLE{article1,
  author  = {AAA}, 
  title = {New Method1},
  year    ={2013},
  journal = {SuperJournal},
}

@ARTICLE{article2,
  author  = {BBB}, 
  title = {New Method2},
  year    ={2013},
  journal = {SuperJournal},
}

@ARTICLE{article3,
  author  = {CCC}, 
  title = {New Method2},
  year    ={2013},
  journal = {SuperJournal},
}

@ARTICLE{article4,
  author  = {DDD}, 
  title = {New Method2},
  year    ={2013},
  journal = {SuperJournal},
}

@ARTICLE{article5,
  author  = {EEE}, 
  title = {New Method2},
  year    ={2013},
  journal = {SuperJournal},
}
\end{filecontents*}

\documentclass{article}
\usepackage{xparse}
\ExplSyntaxOn
\NewDocumentCommand{\readbib}{ m }
 {
  \makaroni_readbib:n { #1 }
 }
\clist_new:N \g_makaroni_keys_clist

\group_begin:
\char_set_catcode_active:n { `\^^A }
\cs_new_protected:Npn \makaroni_readbib:n #1
 {
  \group_begin:
  \char_set_catcode_active:n { `\@ }
  \group_begin:
  \char_set_lccode:nn { `\^^A } { `\@ }
  \tl_to_lowercase:n
   {
    \group_end:
    \cs_set_eq:NN ^^A \__makaroni_active_at:w
   }
  \input{#1.bib}
  \group_end:
  \exp_args:Nx \nocite { \g_makaroni_keys_clist }
 }
\group_end:

\cs_new_protected:Npn \__makaroni_active_at:w #1#
 {
  \__makaroni_process_entry:n
 }
\cs_new_protected:Npn \__makaroni_process_entry:n #1
 {
  \__makaroni_add_key:w #1 \q_stop
 }
\cs_new_protected:Npn \__makaroni_add_key:w #1 , #2 \q_stop
 {
  \clist_gput_left:Nn \g_makaroni_keys_clist { #1 }
 }
\ExplSyntaxOff

\begin{document}

\readbib{\jobname}

\bibliographystyle{unsrt}
\bibliography{\jobname}

\end{document}

환경 filecontents*은 단지 예제를 자체 포함하도록 만드는 것입니다.

여기에 이미지 설명을 입력하세요

방법은 에서 사용된 것과 유사합니다 usebib.sty. 이 @활성화되고 첫 번째 중괄호까지 읽도록 정의됩니다. 그런 다음 전체 항목을 흡수하고 키를 분리하는 또 다른 매크로를 호출하여 쉼표 목록 변수의 왼쪽에 추가하는 또 다른 매크로가 호출됩니다. 그런 다음 읽을 파일을 종료한 후 \nocite(확장된) clist 내용을 인수로 사용하여 명령이 실행됩니다.

관련 정보