Babel: Part names in French for 20+ (more than twenty)
You can replace the loop defined in french.ldf
that ends at twenty using fmtcount
.
\documentclass[a4paper,11pt,openany,french]{book}
\usepackage[french]{babel}
\usepackage{fmtcount}
\makeatletter
\DeclareRobustCommand*{\FB@partname}{%
\ifFBPartNameFull
\Ordinalstring{part}[f]\space
\partnameord\FB@emptypart
\else
Partie%
\fi
}
\makeatother
\begin{document}
\part{A}\part{B}\part{C}\part{D}\part{E}\part{F}\part{G}
\part{H}\part{I}\part{J}\part{K}\part{L}\part{M}\part{N}
\part{O}\part{P}\part{Q}\part{R}\part{S}\part{T}\part{U}
\part{V}\part{W}\part{X}\part{Y}\part{Z}
\end{document}
If I add many more parts I can even get
The only solution I can find consists in modifying french.ldf
(save a copy of the original first). The ordinals used for parts are determined in lines 945–950 of this file. Replace the last line
Vingti\`eme}
with
Vingti\`eme, Vingt-et-uni\`eme, Vingt-deuxi\`eme, Vingt-troisi\`eme, Vingt-quatri\`eme, Vingti\`eme, Vingt-cinqui\`eme, Vingt-sixi\`eme,}