- Replace ifthen dependency with wrappers for Latex3 conditionals. - Debug CrossRef and WrapBoxout.
81 lines
2.0 KiB
TeX
81 lines
2.0 KiB
TeX
\NeedsTeXFormat{LaTeX2e}
|
|
\ProvidesExplPackage{PrimeTeX/packages/Header}{2025-08-16}{1.0}{
|
|
Customize header and footer layout and contents.
|
|
}
|
|
|
|
\ProvideLength{\HeaderInsideOffset}[\BigFloatOverhang]
|
|
\ProvideLength{\HeaderOutsideOffset}[\fp_to_dim:n{\BigFloatOverhang * \BigFloatOffset}]
|
|
|
|
\pagestyle{fancy}
|
|
|
|
% Clear all header & footer formatting.
|
|
\fancyhf{}
|
|
|
|
\renewcommand{\headrulewidth}{0pt}
|
|
\renewcommand{\footrulewidth}{0pt}
|
|
|
|
\NewDocumentCommand{\chapappname}{}{Chapter~\thechapter{}:~}
|
|
\NewDocumentCommand{\partlabel}{}{\partname{}~\thepart{}:~\parttitle}
|
|
|
|
\NewDocumentCommand{\FrontMatter}{}{
|
|
\pagestyle{plain}
|
|
\bool_if:NTF \g_electronic_bool {
|
|
\pagenumbering{arabic}
|
|
}{
|
|
\pagenumbering{roman}
|
|
}
|
|
}
|
|
|
|
\NewDocumentCommand{\MainMatter}{}{
|
|
\pagestyle{fancy}
|
|
\pagenumbering{arabic}
|
|
}
|
|
|
|
\NewDocumentCommand{\Appendix}{}{
|
|
\appendix
|
|
\RenewDocumentCommand{\chapappname}{}{Appendix~\thechapter{}:~}
|
|
\RenewDocumentCommand{\partlabel}{}{}
|
|
\RenewDocumentCommand{\chapterautorefname}{}{Appendix}
|
|
}
|
|
|
|
\NewDocumentCommand{\BackMatter}{}{
|
|
\RenewDocumentCommand{\chapappname}{}{}
|
|
\RenewDocumentCommand{\partlabel}{}{}
|
|
}
|
|
|
|
\NewDocumentCommand{\parttitle}{}{}
|
|
|
|
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
|
|
|
|
\fancypagestyle{fancy}{
|
|
\bool_if:NTF \g_electronic_bool {
|
|
\fancyhfoffset[L]{\HeaderInsideOffset}
|
|
\fancyhfoffset[R]{\HeaderOutsideOffset}
|
|
\fancyhead[L]{\partlabel}
|
|
\fancyhead[R]{\bool_if:NT \g_label_bool {\chapappname} \leftmark}
|
|
|
|
\fancyfoot[R]{\thepage}
|
|
}{
|
|
\fancyhfoffset[LE,RO]{\HeaderOutsideOffset}
|
|
\fancyhead[LE]{\partlabel}
|
|
\fancyhead[RO]{\bool_if:NT \g_label_bool {\chapappname} \leftmark}
|
|
|
|
\fancyfoot[LE,RO]{\thepage}
|
|
}
|
|
}
|
|
|
|
\fancypagestyle{plain}{ %
|
|
\fancyhf{} % remove everything
|
|
\renewcommand{\headrulewidth}{0pt} % remove lines as well
|
|
\renewcommand{\footrulewidth}{0pt}
|
|
|
|
\bool_if:NTF \g_electronic_bool {
|
|
\fancyhfoffset[L]{\HeaderInsideOffset}
|
|
\fancyhfoffset[R]{\HeaderOutsideOffset}
|
|
\fancyfoot[R]{\thepage}
|
|
}{
|
|
\fancyhfoffset[LE,RO]{\HeaderOutsideOffset}
|
|
\fancyfoot[LE,RO]{\thepage}
|
|
}
|
|
}
|