52

Is there a bibliography style (I'm using bibtex) that works with article class where the numbers appear as superscripts and also numbered as they appear in the text (as in unsrt)? I read some related questions using revtex, but nothing seem to work with basic article class.

Mensch
  • 65,388
Trevis
  • 2,373
  • 5
    Usually, we don't put a greeting or a "thank you" in our posts. While this might seem strange at first, it is not a sign of lack of politeness, but rather part of our trying to keep everything very concise. Upvoting is the preferred way here to say "thank you" to users who helped you. – Mensch Oct 29 '12 at 17:47

4 Answers4

41

The cite package provides such functionality and works with the standard bibliography styles such as unsrt.

\documentclass{article}

\usepackage[superscript,biblabel]{cite}

\begin{document}

Refering to second article\cite{art2} and then first article\cite{art1}

\bibliographystyle{unsrt}
\bibliography{test}
\end{document}

with test.bib containing

@Article{art1,
  author =   {Author, A. N.},
  title =    {Title One},
  journal =  {Journal},
  year =     2000
}

@Article{art2,
  author =   {Author, A. N.},
  title =    {Title Two},
  journal =  {Journal},
  year =     2008
}

yields

Sample output

The first option superscript to the cite package affects the citations in the text, the second biblabel adjusts those in the bibliography.

Andrew Swann
  • 95,762
  • 3
    This is just what is needed! To get the citings to have brackets around them, one has to use

    \makeatletter \renewcommand{\@citess}[1]{\textsuperscript{\,[#1]}} \makeatother

    – Niko Fohr Nov 16 '13 at 17:19
  • For most people it will be obvious but it took me some time to figure out that I had to use bibtex instead of biber and did not have to import the biblatex package in order to run the cite package. – Puco4 May 19 '21 at 13:19
  • Is it possible to display the References as "Author AN. Title. Journal, 2008"? – papgeo Aug 09 '21 at 10:32
  • 1
    @papgeo Yes it is possible. It is controlled by the \bibliographystyle, so either you need to find a style that does this for you, or you can use custombib / makebst to create your own style. If you get stuck, just ask a new question here, providing details of what you need and what you have tried. – Andrew Swann Aug 09 '21 at 10:54
  • Is it also possible to keep citation with upperscript while having the numbers in the reference list within brackets [1]? – Emmanuel Goldstein Mar 05 '23 at 16:19
  • 1
    @EmmanuelGoldstein You get this style with the natbib package. See my answer, where have also added typical code and output. – Andrew Swann Mar 06 '23 at 09:13
32

You could use the natbib package and invoke it with the super option:

\usepackage[super]{natbib}

With this setup, \cite commands will generate citation markers as superscript-positioned numbers. Note that the natbib package is compatible with a wide range of bibliography style files, including the "original" BibTeX style files plain, unsrt, and alpha.

If you use the hyperref package as well, these superscript numbers will automatically be made into hyperlinks to the corresponding items in the bibliography.

Here is a minimal example

\documentclass{article}

\usepackage[super]{natbib} \usepackage{hyperref}

\begin{filecontents}{\jobname.bib} @book{auth, author = {Author, A.}, year = {2001}, title = {Title}, publisher = {Publisher}, } \end{filecontents}

\begin{document}

A citation \cite{auth}.

\bibliographystyle{plainnat} \bibliography{\jobname}

\end{document}

Sample output

Andrew Swann
  • 95,762
Mico
  • 506,678
  • 4
    If you prefer commas between the citations superscripts you can use \usepackage[super,comma]{natbib} – Virgo Feb 18 '14 at 05:53
  • natbib is perfect! cite will place the superscript after punctuation, the bibliography list entry number will also be superscript and it auto reorders citations by ascending number, whereasnatbib does not have those issues. – gaborous Jun 10 '16 at 02:17
  • 1
    @gaborous - Thanks! For the sake of completeness: If the cite package is used (instead of natbib), auto-reordering of the citation call-outs by ascending number can be disabled by specifying the nosort option. – Mico Jun 10 '16 at 05:23
  • 2
    Is there any way to do this without changing the behavior of the citet and citep commands? With this approach, the citep command prints just the superscript and the citet command prints the author names with a superscript, rather than the behavior described by this page. – Luke Davis Mar 15 '18 at 19:04
  • @LukeDavis - The link you provide purports to describe what version 7.0b of the natbib package did, back in February 2002. The current version is 8.31b; it is my understanding that the package has been roughly stable since Sept. 2010. I'm afraid I don't know how one might go about downgrading the package back to its 2002 level. – Mico Mar 15 '18 at 19:35
  • @Mico Sorry I think I didn't explain what I wanted clearly; here is a thread I just started. That link was just to show you the default behavior of the citet/citep commands; it hasn't changed since 2002. – Luke Davis Mar 15 '18 at 19:38
2

While not 100% what your question asks for, biblatex has a function \supercite which is a drop-in replacement for \cite and does what you want

Riedler
  • 21
  • 1
    First of all: Thank you for your answer. However, you could improve it, by adding a minimal working example with bibliography (see, e.g., https://tex.meta.stackexchange.com/q/4407/277964 and don't care about this link is mostly about how to do it for questions) to your answer. This would help other users with similar problems to test it directly. – cabohah Jun 12 '23 at 09:44
0

Package "cite" places the superscript after punctuation. To avoid it, include:

\usepackage[superscript, biblabel, nomove]{cite}