BibTeXを使用して外観によって引用を注文する方法は?


259

デフォルトでは(plainスタイルを使用して)BibTeXは引用をアルファベット順に並べます。

文書内の出現順に引用を並べ替える方法は?


36
参考になった質問(賛成票)ですが、これはtex.stackexchange.comに属すべきではありませんか?
Chthonicプロジェクト2014

12
@ ChthonicProject、tex.stackexchange.comが2010年まで開始されたとは思いません。この質問は2008年からです。また、質問は古すぎて移行できないため、ここにあります。
Richard Erickson

1
.auxおよび.bblファイルを削除して再構築します
Emad Aghayi

回答:


195

この質問には3つの良い答えがあります。

  • unsrt他の方法でフォーマットに満足している場合は、参考文献スタイルを使用します。
  • 使用makebst (リンク)独自の書誌スタイルをデザインするためのツールを

そして私の個人的な勧告:

  • biblatexパッケージ(リンク)を使用します。これは、LaTeXの世界で最も完全で柔軟な参考文献ツールです。

を使用してbiblatex、次のように記述します

\documentclass[12pt]{article}
\usepackage[sorting=none]{biblatex}
\bibliography{journals,phd-references} % Where journals.bib and phd-references.bib are BibTeX databases
\begin{document}
\cite{robertson2007}
\cite{earnshaw1842}
\printbibliography
\end{document}

2
この回答を受け入れさせたbiblatexパッケージの明らかな利点の1つは、奇妙なBibTeXブードゥーではなくTeXマクロを使用して参照スタイルを編集できることです。他のパッケージは、より速く/より信頼性の高いソリューションに適しています。
ブレンダン

1
biblatexを使用している場合は、追加する必要があります。\ bibliographyの代わりに\ addbibresourceを使用することをお勧めします。したがって\addbibresource{journals.bib,phd-references.bib}
Custodio

126

変化する

\bibliographystyle{plain}

\bibliographystyle{ieeetr}

次に、数回再構築して、プレーンスタイルを使用したときに作成された.auxおよび.bblファイルを置き換えます。

または、単純に.auxおよび.bblファイルを削除して再構築します。

MiKTeXを使用している場合、追加のダウンロードは不要です。


4
ありがとう!優れた簡単な修正!
Antillar Maximus 2012

すごい!簡単な解決策をありがとう。
陛下

4
ACM出版用の論文を書いている場合、後者はわずかに異なるフォーマットのIEEE論文向けであるため、ACM出版unsrtよりも優れieeetrています。同じタイプのフォーマットunsrtabbrv生成します。あなたはこのリンクを
Ash Catchem

簡単な答えが出てきます!一方でウィル・ロバートソンさんbiblatex-centric 答えは最終的にはLaTeXのコミュニティの往路で、ビルトインのサポートのLyXのの継続的な不足がbiblatex巨大な(そしてますます恥ずかしい)遮断薬です。この質問が最初に提起されてから8年になります。私は、LyXの開発者の優先事項を決して理解しません。それは2016年です。無人の車とポータブルスーパーコンピューターは存在するものですが、ここに残ります。
Cecil Curry、

1
Overleafアプリケーションでは機能しません。overleaf.com/learn/how-to/Clearing_the_cacheによってOverleafでそれらを削除しましたが、問題は解決しません。
Emad Aghayi

21

簡単なメモ-私はLatexファイルのあるディレクトリにあるplain.bstの修正版を使用しています。見た目でソートするのは比較的簡単な変更です。コードを見つけてください:

...
ITERATE {presort}

SORT
...

...そしてコメントする-私はそれを次のように変えました:

...
%% % avoid sort:
%% ITERATE {presort}
%%
%% SORT
...

...そして、実行した後bibtexpdflatexpdflatex-引用が(である、彼らはソートされていないだろう:))出現の順序でソートされます。

乾杯!

編集:私が書いたものが実際に@ChrisNのコメントにあることに気づきました:「編集してSORTコマンドを削除できますか」;)


18

私が思いついた最高のunsrtスタイルは、調整されたplainスタイルのようです。すなわち

\bibliographystyle{unsrt}
\bibliography{bibliography}

しかし、私のスタイルがデフォルトでない場合はどうなりますか?


4
カスタムBibTeXスタイルを使用している場合、それを編集してSORTコマンドを削除できますか?
ChrisN 2008

デフォルトでは、wikiページはプレーンを推奨しています。不注意にコピーアンドペーストすると、unsrtスタイルではなくプレーンスタイルが使用されます。en.wikibooks.org/wiki/LaTeX/Bibliography_Management
Andras Gyomrey 2013

12

あなたはあなた自身の質問に答えました--- unsrt出現順にリストされたneへの参照が欲しいときに使われます。

ただし、非常に柔軟な引用パッケージであるnatbibもご覧ください。それなしでは生きられないなんて想像できません。


7
natbibは、ドキュメント自体の\ citeコマンドの組版にのみ影響します。そうは言っても、元のポスターが求める効果を得るためにunsrtnat.bstで配布されています。(絶対的な安定性が最も重要でない限り、私は最近natbibよりもbiblatexをお勧めします。)
Will Robertson

5

私はBibtex(および一般的にはLatex)に少し慣れていないので、この古い投稿を復活させたいと思います。これは、Latexでの参考文献の順序に関するGoogle検索の問い合わせの多くで見つかったためです。

私と同じ問題に直面している一部の初心者を助けるかもしれないことを願って、この質問に対するより詳細な回答を提供します。

参考文献が呼び出されるメインの.texファイルの例を次に示します。

\documentclass{article}
\begin{document}

So basically this is where the body of your document goes.

``FreeBSD is easy to install,'' said no one ever \cite{drugtrafficker88}.

``Yeah well at least I've got chicken,'' said Leeroy Jenkins \cite{goodenough04}.

\newpage
\bibliographystyle{ieeetr} % Use ieeetr to list refs in the order they're cited
\bibliography{references} % Or whatever your .bib file is called
\end{document}

...そして.bibファイル自体の例:

@ARTICLE{ goodenough04,
AUTHOR    = "G. D. Goodenough and others", 
TITLE     = "What it's like to have a sick-nasty last name",
JOURNAL   = "IEEE Trans. Geosci. Rem. Sens.",
YEAR      = "xxxx",
volume    = "xx",
number    = "xx",
pages     = "xx--xx"
}
@BOOK{ drugtrafficker88,
AUTHOR    = "G. Drugtrafficker", 
TITLE     = "What it's Like to Have a Misleading Last Name",
YEAR      = "xxxx",
PUBLISHER = "Harcourt Brace Jovanovich, Inc."
ADDRESS   = "The Florida Alps, FL, USA"
}

.bibファイル内の参照は逆の順序でリストされていますが、参照はペーパーで引用されている順序でリストされています。

.bibファイルのフォーマットの詳細については、http//en.wikibooks.org/wiki/LaTeX/Bibliography_Managementを参照してください。


3

私は参考文献スタイルをよく使用します。natbibこれは、完全なフォーマットセットとタグを提供するためです。


2

unsrt、問題形式です。\bibliographystyle{ieeetr}文書内の引用順に参照を取得するために使用します。


形式についてのあなたの主張は、受け入れられた(そして大きく賛成された)回答と矛盾しているようです。明確にしてもらえますか?
Zero3、2015

0

datatoolのパッケージには、最初のいくつかのデータベース形式に変換して、任意の基準でソート書誌に素敵な方法を提供しています。

ここから取って記録のために投稿した短い例:

\documentclass{article}

\usepackage{databib}

\begin{document}
% First argument is the name of new datatool database
% Second argument is list of .bib files
\DTLloadbbl{mybibdata}{acmtr}
% Sort database in order of year starting from most recent
\DTLsort{Year=descending}{mybibdata}
% Add citations
\nocite{*}

% Display bibliography
\DTLbibliography{mybibdata}
\end{document}

0

あなたがたまたま使用しamsrefsている場合、それらは上記のすべてを上書きします-コメントアウトしてください:

\usepackage{amsrefs}


1
Stack Overflowへようこそ!あなたの答えは、出された質問に実際には答えていないようです。あなたの情報は価値があるかもしれませんが、おそらく他の回答の1つへのコメントとして適しています(コメントを投稿するために必要な評判を得た後)。
Zero3、2015

0

natbib組み合わせて使用しbibliographystyle{apa}ます。例えば:

\begin{document}

The body of the document goes here...

\newpage

\bibliography{bibliography} % Or whatever you decided to call your .bib file 

\usepackage[round, comma, sort&compress ]{natbib} 

bibliographystyle{apa}
\end{document}

0

引用数をドキュメントに順番に表示したい場合は、リファレンスページでのみソートされないようにするには、これを追加します。

\bibliographystyle{unsrt}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.