Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

To build a list of publications, I wish to show the most recent on top of the list, while keeping the numbering similar. This can be achieved manually by doing something like:

\begin{enumerate}
\item[42] pub num 42
\item[41] pub num 41
\item[...]
\item[1] pub num 1
\end{enumerate}

but is there a more principled approach?

share|improve this question
4  
See the etaremune package. I think there was a question about reverse numbering of bibliographies as well, I'll search. Edit: tex.stackexchange.com/questions/58642/bibtex-reverse-numbering/… –  Torbjørn T. Apr 23 '13 at 12:31
    
CTAN also lists revnumerate, but I'm afraid it's not included in TL. –  Paulo Cereda Apr 23 '13 at 14:48
1  
@PauloCereda: it’s revnum, and it’s not in tl because the author didn’t provide any statement of the licence — any licence must be listed, as otherwise no-one knows what the licence may be. (nowadays we might prod the author for a statement of licence, but revnum was uploaded in 1998, somewhat before we had started paying detailed attention to the licensing situation.) –  wasteofspace Apr 23 '13 at 16:00
    
@wasteofspace: Ah I see, thanks! :) –  Paulo Cereda Apr 23 '13 at 16:08

2 Answers 2

up vote 5 down vote accepted

The etaremune package provides an etaremune environment that does just this. Note that two compile runs is necessary to get the correct numbering.

enter image description here

\documentclass{article}
\usepackage{etaremune}
\begin{document}
\begin{etaremune}
  \item Last things first
  \item \ldots
  \item First things last
\end{etaremune}
\end{document}
share|improve this answer
1  
+1 for the name of the package –  meduz May 13 '13 at 11:32
    
The problem I encountered with etaremune is that I do not seem to be able to change margins and indentation for the list, as I can with the enumerate package. –  user47979 Mar 14 at 18:50
    
@user47979 You could always ask a new question about that problem. –  Torbjørn T. Mar 14 at 19:11

Here's a the first solution that comes to mind. Kind of a hack actually, but it works fine.

\documentclass{article}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newenvironment{benumerate}[1]{
    \let\oldItem\item
    \def\item{\addtocounter{enumi}{-2}\oldItem}
    \begin{enumerate}
    \setcounter{enumi}{#1}
    \addtocounter{enumi}{1}
}{
    \end{enumerate}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

\begin{enumerate}
  \item A  % 1
  \item B  % 2
  \item C  % 3
\end{enumerate}

\begin{benumerate}{9}
  \item A  % 9
  \item B  % 8
  \item C  % 7
\end{benumerate}

\end{document}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

The benumerate environment expects one mandatory argument: the first number of the list. Ideally you wouldn't have to give it (if you always expect to end the list with 1). But that solution would be a bit more complicated.

share|improve this answer
    
Hm. I'm just now seeing Torbjørn's comment. Of course the etaremune package is more elegant than my hack. And more importantly, it has a much funnier name. ;-) –  mhelvens Apr 23 '13 at 14:44

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.