2

I'm using \date to specify my document's date for \maketitle. I would like to use the same date in my footer. Currently I have to enter the date twice: once in \date and once in \rfoot. Is there a way I can enter the date a single time and have \maketitle and \rfoot both use the same date?

Here's an excerpt from my original document:

\date{December 12, 2012}

\rfoot{December 12, 2012}

\begin{document}

\maketitle

I found a related question: How can I use @author, @date, and @title after maketitle? so I tried this:

\date{December 12, 2012} \let\Date\@date

\rfoot{\Date}

\begin{document}

\maketitle  

But that gives me an error:

./MyDoc.tex:45: LaTeX Error: Missing \begin{document}
.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.45 \date{December 12, 2012} \let\Date\@d
                                          ate
0

1 Answer 1

3

You have to use makeatletter and makeatother as in this code:

\documentclass{article}
\usepackage{fancyhdr,lipsum}

\makeatletter
\title{This is title}\let\Title\@title
\author{Your name}          \let\Author\@author
\date{December 12, 2012}           \let\Date\@date
\makeatother

\pagestyle{fancy}
\fancyhf{}
\rfoot{\Date}

\begin{document}

\maketitle

\lipsum

\end{document}
3
  • Just adding \makeatletter was enough to make it work. Now I'll do some research to figure out what it's doing.
    – SSteve
    Commented Dec 13, 2012 at 23:44
  • 2
    @SSteve It's safer to also add \makeatother; in a .tex file, \makeatletter changes the catcode of @ from 12 to 11 (to make it a "regular" letter) and \makeatother reverts this and assigns to @ catcode 12 again. Commented Dec 14, 2012 at 0:39
  • @GonzaloMedina I will do that. Thanks for the tip.
    – SSteve
    Commented Dec 14, 2012 at 0:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .