make colors user adjustable. expose hidden options.

- Systematize colors and make them user adjustable. See documentation for details.
  this requires the \moderncvcolor to be issued BEFORE \moderncvstyle.
- all styles: make the head options 'details' and 'nodetails' available to the user.
(previously they were hidden). Olystyle does not respond too well to nodetails.
This commit is contained in:
David 2021-01-26 23:53:40 +01:00
commit f7c8abf6d2
22 changed files with 337 additions and 104 deletions

View file

@ -12,15 +12,45 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{moderncvstylefancy}[2021/01/21 v2.1.0 modern curriculum vitae and letter style scheme: fancy]
% headoptions
\@initializecommand{\moderncvstyleheadoptions}{}
\@initializeif{\if@datainhead}\@datainheadtrue
\DeclareOption{details}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,details}}
\DeclareOption{nodetails}{\@datainheadfalse\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,nodetails}}
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
\DeclareOption{symbols} {\@symbolstrue}
\DeclareOption{nosymbols} {\@symbolsfalse}
\DeclareOption*{}% avoid choking on unknown options
\ExecuteOptions{symbols}
\ExecuteOptions{symbols,details}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
%-------------------------------------------------------------------------------
% Colors
%-------------------------------------------------------------------------------
% head and footer
\colorlet{lastnamecolor}{color1}
\colorlet{namecolor}{lastnamecolor}
\colorlet{headrulecolor}{color1}
\colorlet{firstnamecolor}{lastnamecolor!50}
\colorlet{titlecolor}{color2}
\colorlet{addresscolor}{color2}
\colorlet{quotecolor}{color1}
\colorlet{pictureframecolor}{color1}
% body
\colorlet{bodyrulecolor}{color1}
\colorlet{sectioncolor}{color1}
\colorlet{subsectioncolor}{color1}
\colorlet{hintstylecolor}{color0}
% letter
\colorlet{letterclosingcolor}{color2}
% skillmatrix
\colorlet{skillmatrixfullcolor}{color1}
\colorlet{skillmatrixemptycolor}{color2!30}
%-------------------------------------------------------------------------------
% fonts & icons
%-------------------------------------------------------------------------------
@ -51,9 +81,16 @@
%-------------------------------------------------------------------------------
% header, body & footer
%-------------------------------------------------------------------------------
\moderncvhead{5}
\moderncvhead[\moderncvstyleheadoptions]{5}
\moderncvbody{5}
% include foot only if nodetails option is active since otherwise we have two times the information
% on the page
\if@datainhead
% if data is shown in head, do not include the footer
\else
\moderncvfoot{1}
\fi
\endinput