Par défaut (en utilisant l'option plain
style) BibTeX ordonne les citations par ordre alphabétique.
Comment classer les citations par ordre d'apparition dans le document ?
Par défaut (en utilisant l'option plain
style) BibTeX ordonne les citations par ordre alphabétique.
Comment classer les citations par ordre d'apparition dans le document ?
Il y a trois bonnes réponses à cette question.
unsrt
le style de bibliographie, si vous êtes satisfait de son formatage, sinonmakebst
(lien) outil pour concevoir votre propre style de bibliographieEt ma recommandation personnelle :
biblatex
paquet (lien) . C'est l'outil de bibliographie le plus complet et le plus souple du monde LaTeX.Utilisation de biblatex
vous écrirez quelque chose comme
\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}
Un avantage apparent du paquet biblatex qui m'a poussé à accepter cette réponse est qu'il permet d'éditer les styles de référence en utilisant des macros TeX plutôt qu'un voodoo BibTeX bizarre. D'autres paquets peuvent être meilleurs pour une solution plus rapide/plus fiable.
Je dois ajouter que si vous utilisez biblatex. Il serait préférable d'utiliser \addbibresource au lieu de \bibliography. Alors \addbibresource{journals.bib,phd-references.bib}
Changement
\bibliographystyle{plain}
à
\bibliographystyle{ieeetr}
Ensuite, refaites-le plusieurs fois pour remplacer la .aux
et .bbl
qui ont été créés lorsque vous avez utilisé le style simple.
Ou simplement supprimer le .aux
et .bbl
et reconstruire.
Si vous utilisez MiKTeX, vous ne devriez pas avoir besoin de télécharger quoi que ce soit d'autre.
Si vous écrivez un article pour une publication ACM, alors unsrt
serait meilleur que ieeetr
car ce dernier est destiné au papier IEEE dont le format est légèrement différent. unsrt
et abbrv
produit le même type de mise en forme. Vous pouvez regarder ceci lien
Si vous utilisez un style BibTeX personnalisé, pouvez-vous le modifier pour supprimer la commande SORT ?
Par défaut, la page wiki vous recommande la plaine. Si vous copiez-coller sans précaution, vous utiliserez plain au lieu de unsrt style. fr.wikibooks.org/wiki/LaTeX/Gestion_bibliographique
Juste une brève note - j'utilise une version modifiée de simple.bst qui se trouve dans le répertoire avec mes fichiers Latex ; il s'avère que le tri par ordre d'apparition est un changement relativement facile ; il suffit de trouver le morceau de code :
...
ITERATE {presort}
SORT
...
... et le commenter - je l'ai transformé en :
...
%% % avoid sort:
%% ITERATE {presort}
%%
%% SORT
...
... et ensuite, après avoir exécuté bibtex
, pdflatex
, pdflatex
- les citations seront triées par ordre d'apparition (c'est-à-dire qu'elles ne seront pas triées :) ).
A la vôtre !
EDIT : je viens de réaliser que ce que j'ai écrit se trouve en fait dans le commentaire de @ChrisN : " pouvez-vous l'éditer pour enlever la commande SORT " ;)
Vous avez répondu à votre propre question unsrt
est à utiliser lorsque vous voulez que les références soient listées dans l'ordre d'apparition.
Mais vous pouvez aussi jeter un coup d'œil à natbib un paquet de citation extrêmement flexible. Je ne peux pas imaginer vivre sans lui.
Natbib n'affecte que la mise en page de l'image. \cite dans le document lui-même. Cela dit, il est distribué avec unsrtnat.bst pour obtenir l'effet recherché par le posteur original. (Je recommanderais de nos jours biblatex plutôt que natbib, à moins que la stabilité absolue ne soit la plus importante).
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
51 votes
Question utile (upvoted), mais cela ne devrait-il pas appartenir à tex.stackexchange.com ?
21 votes
@ChthonicProject, je ne pense pas que tex.stackexchange.com ait été lancé avant 2010 et cette question date de 2008. De plus, la question serait trop vieille pour être migrée, elle vit donc ici.
3 votes
Supprimez les fichiers .aux et .bbl et reconstruisez-les.
0 votes
@EmadAghayi Ne fonctionne pas pour moi.
0 votes
Je rencontre le même problème avec \documentclass [acmlarge]{acmart}