# HG changeset patch # User Franz Glasner # Date 1778675679 -7200 # Node ID afecfdcfd28881b75df930e1218b05c6c381eada # Parent ede8b44f6faf3456ff7e14e0c49fe2d161255d43 A new style "charter" for PDFs with "XCharter", "Lato" and "Inconsolata". Used e.g. for ConfigMix PDF docs. diff -r ede8b44f6faf -r afecfdcfd288 docs/_latex/my-doc-fonts.sty --- a/docs/_latex/my-doc-fonts.sty Wed May 13 13:56:29 2026 +0200 +++ b/docs/_latex/my-doc-fonts.sty Wed May 13 14:34:39 2026 +0200 @@ -15,18 +15,21 @@ } \newif\if@mdf@@sscode\@mdf@@sscodefalse +\newif\if@mdf@@inconsolata\@mdf@@inconsolatafalse \newif\if@mdf@WithDejaVuSansMono \newif\if@mdf@WithPlexMono \newif\if@mdf@WithAdobeSource \newif\if@mdf@WithSpectral +\newif\if@mdf@WithCharter -\def\@mdf@reset@font@options{\@mdf@WithDejaVuSansMonofalse\@mdf@WithPlexMonofalse\@mdf@WithAdobeSourcefalse} +\def\@mdf@reset@font@options{\@mdf@WithDejaVuSansMonofalse\@mdf@WithPlexMonofalse\@mdf@WithAdobeSourcefalse\@mdf@WithCharterfalse} \DeclareOptionX{dejavusansmono}[true]{\@mdf@reset@font@options\csname @mdf@WithDejaVuSansMono#1\endcsname} \DeclareOptionX{plexmono}[true]{\@mdf@reset@font@options\csname @mdf@WithPlexMono#1\endcsname} \DeclareOptionX{adobesource}[true]{\@mdf@reset@font@options\csname @mdf@WithAdobeSource#1\endcsname} \DeclareOptionX{spectral}[true]{\@mdf@reset@font@options\csname @mdf@WithSpectral#1\endcsname} +\DeclareOptionX{charter}[true]{\@mdf@reset@font@options\csname @mdf@WithCharter#1\endcsname} % % By default use the safe option dejavusansmono because is contains @@ -108,6 +111,18 @@ ] \@mdf@@sscodetrue \fi +\if@mdf@WithCharter + \defaultfontfeatures{Ligatures=TeX,Numbers={Lining,Tabular}} + \setmainfont{XCharter} + \setsansfont{Lato}[ + UprightFont = * Regular, + BoldFont = * Bold, + ItalicFont = * Italic, + BoldItalicFont = * Bold Italic, + Scale = MatchLowercase, + ] + \@mdf@@inconsolatatrue +\fi \defaultfontfeatures{} @@ -142,6 +157,31 @@ {sphinx} \fi +\if@mdf@@inconsolata + \RequirePackage{newunicodechar} + \defaultfontfeatures{Ligatures=TeX,Numbers={Lining,Tabular},Scale=MatchLowercase} + \setmonofont{Inconsolata LGC Nerd Font Mono}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Italic, + BoldItalicFont = * Bold Italic, + ] + \defaultfontfeatures{} + \newfontfamily\DejaVuSansMono{DejaVu Sans Mono}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + ] + \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 + \newunicodechar{⟵}{{\DejaVuSansMono ⟵}}% U+27F5 + \newunicodechar{⟶}{{\DejaVuSansMono ⟶}}% U+27F6 + \newunicodechar{⟷}{{\DejaVuSansMono ⟷}}% U+27F7 + \newunicodechar{≟}{{\DejaVuSansMono ≟}}% U+225F + \newunicodechar{∈}{{\DejaVuSansMono ∈}}% U+2208 + \newunicodechar{∌}{{\DejaVuSansMono ∌}}% U+220C +\fi + \defaultfontfeatures{} \endinput diff -r ede8b44f6faf -r afecfdcfd288 docs/conf.py --- a/docs/conf.py Wed May 13 13:56:29 2026 +0200 +++ b/docs/conf.py Wed May 13 14:34:39 2026 +0200 @@ -146,9 +146,10 @@ latex_elements = { "papersize": "a4paper", "babel": r"\usepackage{babel}", -# "fontpkg": r"\usepackage[plexmono]{my-doc-fonts}", - "fontpkg": r"\usepackage[adobesource]{my-doc-fonts}", +# "fontpkg": r"\usepackage[plexmono]{my-doc-fonts}", + "fontpkg": r"\usepackage[adobesource]{my-doc-fonts}", # "fontpkg": r"\usepackage[spectral]{my-doc-fonts}", +# "fontpkg": r"\usepackage[charter]{my-doc-fonts}", "releasename": "Version", "fncychap": r"\usepackage[Sonny]{fncychap}", }