% \iffalse meta-comment
%
% Copyright (C) 2009 by Karl Wette
%
% This file may be distributed and/or modified under the conditions of
% the LaTeX Project Public License, either version 1.2 of this license
% or (at your option) any later version.  The latest version of this
% license is in:
%
%    http://www.latex-project.org/lppl.txt
%
% and version 1.2 or later is part of all distributions of LaTeX version
% 1999/12/01 or later.
%
% \fi
%
% \iffalse
%<*driver>
\ProvidesFile{emptypage.dtx}
%</driver>
%<*package>
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{emptypage}
    [2009/07/09 v1.1 Suppress page numbers and headings on empty pages]
%</package>
%
%<*driver>
\documentclass{ltxdoc}
\usepackage{emptypage}[2009/07/09]
\begin{document}
\DocInput{emptypage.dtx}
\end{document}
%</driver>
% \fi
%
% \CheckSum{33}
%
% \CharacterTable
%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%   Digits        \0\1\2\3\4\5\6\7\8\9
%   Exclamation   \!     Double quote  \"     Hash (number) \#
%   Dollar        \$     Percent       \%     Ampersand     \&
%   Acute accent  \'     Left paren    \(     Right paren   \)
%   Asterisk      \*     Plus          \+     Comma         \,
%   Minus         \-     Point         \.     Solidus       \/
%   Colon         \:     Semicolon     \;     Less than     \<
%   Equals        \=     Greater than  \>     Question mark \?
%   Commercial at \@     Left bracket  \[     Backslash     \\
%   Right bracket \]     Circumflex    \^     Underscore    \_
%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%   Right brace   \}     Tilde         \~}
%
% \GetFileInfo{emptypage.sty}
%
% \title{The \textsf{emptypage} package\thanks{This document
%   corresponds to \textsf{emptypage}~\fileversion, dated \filedate.}}
% \author{Karl Wette}
%
% \maketitle
%
% This package suppresses page numbers and headings from appearing
% on empty pages. The code for doing this is not mine and already
% exists in various places; all I've done is create a convenient
% stand-alone package for it.
%
% \section{Usage}
%
% Just include the package!
%
% \section{Package options}
%
% \begin{description}
% \item[odd] (default) The next non-empty page will be an odd-numbered page.
% \item[even] The next non-empty page will be an even-numbered page.
% \end{description}
%
% \StopEventually{}
%
% \section{Implementation}
%
% Create an empty page:
%    \begin{macrocode}
\def\emptypage@emptypage{
    \hbox{}
    \thispagestyle{empty}
    \newpage
    \if@twocolumn
        \hbox{}
        \newpage
    \fi
}
%    \end{macrocode}
%
% Implement \textbf{odd}:
%    \begin{macrocode}
\DeclareOption{odd}{
    \def\cleardoublepage{
        \clearpage
        \if@twoside
            \ifodd\c@page
                % do nothing
            \else
                \emptypage@emptypage
            \fi
        \fi
    }
}
%    \end{macrocode}
%
% Implement \textbf{even}:
%    \begin{macrocode}
\DeclareOption{even}{
    \def\cleardoublepage{
        \clearpage
        \if@twoside
            \ifodd\c@page
                \emptypage@emptypage
            \else
                % do nothing
            \fi
        \fi
    }
}
%    \end{macrocode}
%
% Default to \textbf{odd}:
%    \begin{macrocode}
\ExecuteOptions{odd}
%    \end{macrocode}
%
% Process options:
%    \begin{macrocode}
\ProcessOptions
%    \end{macrocode}
%
% \Finale
\endinput
