# Omitting the date when using \maketitle

I'm using the \author and \title commands to produce a title with \maketitle. I also know that there is a \date command to specify the date of my work. However, if I omit \date, \maketitle will produce the current date. How do I achieve that no date is displayed at all?

-

If you want a blank date, just use \date{}.

If you want to remove the spacing altogether where the date usually goes, look into using the titling package, or else the mechanisms provided by your document class, depending on what it is.

-
 If I use \date{} with the article class (instead of simply omitting the date), the vertical alignment of any following text will change as if the spacing was removed. – lockstep Sep 5 '10 at 16:24 @lockstep long time post, but testing today (with TexStudio), the \date{} it works fine. – Tom Brito Dec 8 '12 at 23:56

For a cheap and easy solution to removing the spacing without delving into the titling package that frabjous mentions, try:

\documentclass{article}

\author{Me}
\title{Foo}
\date{\vspace{-5ex}}
%\date{}  % Toggle commenting to test

\begin{document}

\maketitle

Bar

\end{document}

-

[attempting a slightly hack-y solution in egreg's style]

Assuming you use the article document class, we can simply change what \@maketitle, which is called by \maketitle, does and eliminate the lines producing the date:

\documentclass{article}

\author{Foo}
\title{Bar}

\makeatletter

\def\@maketitle{%
\newpage
\null
\vskip 2em%
\begin{center}%
\let \footnote \thanks
{\LARGE \@title \par}%
\vskip 1.5em%
{\large
\lineskip .5em%
\begin{tabular}[t]{c}%
\@author
\end{tabular}\par}%
%    \vskip 1em%
%    {\large \@date}%
\end{center}%
\par
\vskip 1.5em}

\makeatother

\begin{document}

\maketitle

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula
eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient
montes, nascetur ridiculus mus.

\end{document}


The part between \makeatletter and \makeatother is copied from article.cls, all I did is commenting out the two lines producing the date and its space, the rest is exactly the same. Technically, the \vskip 1em% wouldn't even do anything.

-
It would have been \patchcmd\@maketitle{{\large\@date}}{\vskip-1em}{}{} with etoolbox and the usual \makeatletter and \makeatother; or simply \patchcmd\@maketitle{\@date}{}{}{}. :) – egreg Jul 29 '11 at 17:19
@egreg: I had a feeling this wasn't the shortest way of doing it. I've never used etoolbox though and this is one of my first lower-level TeX-hacks, so I'm glad it doesn't seem to be faulty :-) – doncherry Jul 29 '11 at 17:23