With the memoir
class, there are often easier solutions than rewriting entire macros. How to modify the format of parts is explained at section 6.4 of the manual.
In the example below, I have simply redefined the macros that set the appearance of parts to mimic the ones used by the thatcher chapter style.
\documentclass{memoir}
\usepackage[frenchb]{babel}
% Pour "première partie"
\usepackage{fmtcount}
\chapterstyle{thatcher}
\renewcommand*{\thepart}{\arabic{part}}
\renewcommand*{\parttitlefont}{\normalfont\large\MakeUppercase}
\renewcommand*{\partnamefont}{\normalfont\scshape\MakeLowercase}
\renewcommand*{\partnumfont}{\normalfont\scshape\MakeLowercase}
% Pour "première partie"
\renewcommand*{\printpartname}{\partnamefont{\ordinalstring{part}[f] partie}}
\renewcommand*{\printpartnum}{}
% Pour "partie 1"
%\renewcommand*{\printpartname}{\partnamefont Partie}
%\renewcommand*{\printpartnum}{\partnumfont\thepart}
\renewcommand{\midpartskip}{\par\parbox{0.5in}{\hrulefill}\par}
\renewcommand{\beforepartskip}{\vspace*{\fill}}
\renewcommand{\afterpartskip}{\vspace*{\fill}}
% Pour la table des matières
\renewcommand*{\cftpartname}{Partie}
\renewcommand*{\cftpartpresnum}{\space}
\renewcommand*{\cftpartaftersnum}{.}
\renewcommand*{\cftpartaftersnumb}{\space}
\begin{document}
\tableofcontents
\part{Une partie}
\part*{Une partie sans numéro}
\part[Une autre partie (nom pour la table des matières)]{Une autre partie}
\chapter{Un chapitre}
\end{document}
The names of the macros are quite self-explanatory, but here are some additional comments about what they do: \thepart
is used to redefine the format of the part
counter; \parttitlefont
, \partnamefont
and \partnumfont
respectively set the font used by for the title, for the "part" word and for the number. In order to insert a line between the "Part N" line and the title line, I modified \midpartskip
. Then, I also redefined \beforepartskip
and \afterpartskip
, which (here) define the white space to add above and below the text.
Since this technique does not rewrite the entire code, you can still use the \part
command normally without any restrictions. The only problem encountered is that with \part*
, the title of the part will not be exactly in the same place (whereas the thatcher
chapter style adds the necessary white space in that case). But there is no easy way to do it because the memoir
class does not have a special macro for starred parts (which I have never encountered anywhere, in any event).
And a picture of the result (I only put in one page):
Edit: I have updated my answer so the part name works properly with French babel
. Two options there: if you want to write "première partie", leave everything as it is; if you want "partie 1" instead, uncomment the lines I have marked for this (2 lines), and comment the ones marked for the other style (that's 3 lines).
Oh, and as an added bonus, the last lines of the code rewrite the "Part" in the table of contents. You can remove it if you prefer to have just the number, but I thought you might want something of that sort too.
Here's the definition of the madsen
chapter style:
\makechapterstyle{madsen}{% requires graphicx package
\chapterstyle{default}
\renewcommand*{\chapnamefont}{%
\normalfont\Large\scshape\raggedleft}
\renewcommand*{\chaptitlefont}{%
\normalfont\Huge\bfseries\sffamily\raggedleft}
\renewcommand*{\chapternamenum}{}
\renewcommand*{\printchapternum}{%
\makebox[0pt][l]{\hspace{0.4em}%
\resizebox{!}{4ex}{%
\chapnamefont\bfseries\sffamily\thechapter}%
}%
}%
\renewcommand*{\printchapternonum}{%
\chapnamefont \phantom{\printchaptername \chapternamenum%
\makebox[0pt][l]{\hspace{0.4em}%
\resizebox{!}{4ex}{%
\chapnamefont\bfseries\sffamily 1}%
}%
}%
\afterchapternum %
}%
\renewcommand*{\afterchapternum}{%
\par\hspace{1.5cm}\hrule\vskip\midchapskip}}
The relevant parts are: \normalfont\Large\scshape
for the font of the chapter name (i.e., the string "Chapter") and \normalfont\Huge\bfseries\sffamily
for the chapter titles (the chapter numbers require other specifications that won't be used).
To obtain the same settings for part headings, you can redefine \partnamefont
, \partnumfont
, and \parttitle
font to use similar settings; for section headings, you can use \setsecheadstyle
. Here are the changes required:
\documentclass{memoir}
\usepackage{graphicx}
\chapterstyle{madsen}
\renewcommand\partnamefont{\normalfont\Large\scshape}
\renewcommand\partnumfont{\normalfont\Large\scshape}
\renewcommand\parttitlefont{\normalfont\Huge\bfseries\sffamily}
\setsecheadstyle{\normalfont\Large\bfseries\sffamily}
\begin{document}
\part{Test Part}
\chapter{Test Chapter One}
\section{Test Section}
\end{document}
Best Answer
You're missing the closing brace in the last
\parbox
first argument, but as it is it means nothing:isn't a dimension. What you probably want is
You need also to change the code in
\BuildChpNum
:Using a
\rule
to get a horizontal space is quite strange; moreover the two1ex
are different, as the first is from\normalfont
and the second is from\bfseries
. Adjust the6pt
to something that pleases you.