# HG changeset patch # User Franz Glasner # Date 1779100004 -7200 # Node ID 0b83218218e2fb4218bf3fcc4cdcf0a2116a2c4d # Parent 830a7536281b8d43f39d1eb5a409f905b794e452 Upgrade to my-fonts.sty v0.5 diff -r 830a7536281b -r 0b83218218e2 docs/_latex/my-doc-fonts.sty --- a/docs/_latex/my-doc-fonts.sty Sun May 17 19:00:15 2026 +0200 +++ b/docs/_latex/my-doc-fonts.sty Mon May 18 12:26:44 2026 +0200 @@ -4,7 +4,7 @@ % \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{my-doc-fonts}[% - 2026/05/16 v0.3 (Franz Glasner) Fonts for Sphinx generated PDFs] + 2026/05/18 v0.5 (Franz Glasner) Fonts for Sphinx generated PDFs] \RequirePackage{xkeyval} \RequirePackage{fontspec} \IfFileExists{xcolor.sty}{% @@ -34,13 +34,16 @@ \newif\if@mdf@WithGaramond \newif\if@mdf@WithTufte \newif\if@mdf@WithPalatino +\newif\if@mdf@WithPalatinoKB \newif\if@mdf@WithCrimson +\newif\if@mdf@WithCrimsonCabin +\newif\if@mdf@WithDejaVu % A key compatible with options processing as option "fonts" but choices. \define@choicekey*{my-doc-fonts.sty}{fonts}[\val\nr]{% % do not change anything: just deactivate the default "dejavusansmono" default, - % no augmentation needed: all characters available + % almost no augmentation needed: all characters available dejavusansmono, % use DejaVu Sans Mono as monospaced font % the fonts below are augmented for missing characters cm, % assume CM fonts and just fix missing characters @@ -54,7 +57,10 @@ garamond, % EB Garamond (with Math), Libre Franklin and Inconsolata tufte, % Tufte fonts: ETbb (with Math), GilliusADFNo2, DejaVu Sans Mono palatino, % Palatino, Inter and Source Code Pro - crimson, % Crimson Pro, Cabin and Source Code Pro (incl. Erewhon Math) + palatino-kb, % Palatino, Lato and Inconsolata (original KB-Admin style) + crimson, % Crimson Pro, Open Sans and Roboto Mono (Erewhon Math) + crimson-cabin, % Crimson Pro, Cabin and Source Code Pro (Erewhon Math) + dejavu, % All DejaVu fonts (Serif, Sans, Mono) }{% % Not used for now : store the normalized option value (global and expanded) \xdef\@mdf@fonts{\val}% @@ -71,7 +77,10 @@ \@mdf@WithGaramondfalse \@mdf@WithTuftefalse \@mdf@WithPalatinofalse + \@mdf@WithPalatinoKBfalse \@mdf@WithCrimsonfalse + \@mdf@WithCrimsonCabinfalse + \@mdf@WithDejaVufalse % Now set the needed font selection flag \ifcase\nr\relax \relax @@ -108,7 +117,13 @@ \or \@mdf@WithPalatinotrue \or + \@mdf@WithPalatinoKBtrue + \or \@mdf@WithCrimsontrue + \or + \@mdf@WithCrimsonCabintrue + \or + \@mdf@WithDejaVutrue \fi } @@ -146,6 +161,14 @@ Scale=MatchLowercase, Ligatures=TeX, ] + \newfontfamily\DejaVuSansCondensed{DejaVu Sans Condensed}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + Scale=MatchLowercase, + Ligatures=TeX, + ] \newunicodechar{▷}{{\DejaVuSansMono ▷}}% U+25B7 \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 \newunicodechar{◆}{{\DejaVuSansMono ◆}}% U+25C6 @@ -158,7 +181,19 @@ \newunicodechar{≟}{{\DejaVuSansMono ≟}}% U+225F \newunicodechar{∈}{{\DejaVuSansMono ∈}}% U+2208 \newunicodechar{∌}{{\DejaVuSansMono ∌}}% U+220C - %\newunicodechar{␣}{{\DejaVuSansMono ␣}}% U+2423 Missing! + \newunicodechar{≙}{{\DejaVuSansMono ≙}}% U+2259 + \newunicodechar{␣}{{\DejaVuSansMono ␣}}% U+2423 + \newunicodechar{⇧}{{\DejaVuSansMono ⇧}}% U+21E7 + \newunicodechar{⌃}{{\DejaVuSansMono ⌃}}% U+2303 + \newunicodechar{⎈}{{\DejaVuSansMono ⎈}}% U+2388 + \newunicodechar{⌥}{{\DejaVuSansMono ⌥}}% U+2325 + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 + \newunicodechar{⌘}{{\DejaVuSansMono ⌘}}% U+2318 + \newunicodechar{⏏}{{\DejaVuSansMono ⏏}}% U+23CF + \newunicodechar{⌫}{{\DejaVuSansMono ⌫}}% U+232B + \newunicodechar{⌦}{{\DejaVuSansMono ⌦}}% U+2326 + \newunicodechar{⇥}{{\DejaVuSansMono ⇥}}% U+21E5 + \newunicodechar{⇤}{{\DejaVuSansMono ⇤}}% U+21E4 %\newunicodechar{^^^^2423}{{\DejaVuSansMono^^^^2423}}% U+2423 %\newunicodechar{␣}{\textvisiblespace}% U+2423 %\catcode`^^^^2423\active\protected\def^^^^2423{\textvisiblespace} @@ -254,22 +289,61 @@ \@mdf@mono@libertinusmonotrue \fi +\if@mdf@WithPalatinoKB + \RequirePackage{unicode-math} + \linespread{1.06} + \defaultfontfeatures{Numbers={Lining,Tabular},Ligatures=TeX} + \setmainfont{TeXGyrePagellaX} + \setsansfont{Lato}[% + UprightFont = * Regular, + BoldFont = * Bold, + ItalicFont = * Italic, + BoldItalicFont = * Bold Italic, + Scale=MatchLowercase] + %\setsansfont{Rosario}[Scale=MatchLowercase,ScaleAgain=1.013] + %\setmathfont{Asana Math}[Scale=MatchLowercase] + \setmathfont{TeX Gyre Pagella Math}[Scale=MatchLowercase] + \@mdf@mono@inconsolatatrue +\fi + \if@mdf@WithCrimson \RequirePackage{unicode-math} \defaultfontfeatures{Ligatures=TeX, Numbers={Lining,Tabular}} \setmainfont{Crimson Pro} + \setsansfont{Open Sans}[Scale=MatchLowercase] + \defaultfontfeatures{}% Erewhon Math needs this here! + \setmathfont{Erewhon Math}[Scale=MatchLowercase] + %\@mdf@mono@sscodetrue + %\@mdf@mono@inconsolatatrue + \@mdf@mono@robotomonotrue +\fi + +\if@mdf@WithCrimsonCabin + \RequirePackage{unicode-math} + \defaultfontfeatures{Ligatures=TeX, Numbers={Lining,Tabular}} + \setmainfont{Crimson Pro} \setsansfont{Cabin}[Scale=MatchLowercase] \defaultfontfeatures{}% Erewhon Math needs this here! \setmathfont{Erewhon Math}[Scale=MatchLowercase] - \@mdf@mono@sscodetrue + %\@mdf@mono@sscodetrue + \@mdf@mono@inconsolatatrue +\fi + +\if@mdf@WithDejaVu + \RequirePackage{newunicodechar} + % automatically applied with Scale=MatchLowercase,... + \RequirePackage[mono=true,serif=true,sans=true,math=true]{dejavu-otf} + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 \fi \defaultfontfeatures{} \if@mdf@mono@dejavusansmono + \RequirePackage{newunicodechar} % automatically applied with Scale=MatchLowercase,... - \RequirePackage[mono=true,serif=false,sans=false,math=false]{dejavu-otf} % all symbols are available - \fi + \RequirePackage[mono=true,serif=false,sans=false,math=false]{dejavu-otf} % almost all symbols are available + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 +\fi \if@mdf@mono@cmmono \RequirePackage{newunicodechar} @@ -280,6 +354,12 @@ ItalicFont = * Oblique, BoldItalicFont = * Bold Oblique, ] + \newfontfamily\DejaVuSansCondensed{DejaVu Sans Condensed}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + ] \newunicodechar{▷}{{\DejaVuSansMono ▷}}% U+25B7 \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 \newunicodechar{◆}{{\DejaVuSansMono ◆}}% U+25C6 @@ -295,6 +375,20 @@ \newunicodechar{≠}{{\DejaVuSansMono ≠}}% U+2260 \newunicodechar{≤}{{\DejaVuSansMono ≤}}% U+2264 \newunicodechar{≥}{{\DejaVuSansMono ≥}}% U+2265 + \newunicodechar{≙}{{\DejaVuSansMono ≙}}% U+2259 + \newunicodechar{↪}{{\DejaVuSansMono ↪}}% U+21AA + \newunicodechar{↩}{{\DejaVuSansMono ↩}}% U+21A9 + \newunicodechar{⇧}{{\DejaVuSansMono ⇧}}% U+21E7 + \newunicodechar{⌃}{{\DejaVuSansMono ⌃}}% U+2303 + \newunicodechar{⎈}{{\DejaVuSansMono ⎈}}% U+2388 + \newunicodechar{⌥}{{\DejaVuSansMono ⌥}}% U+2325 + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 + \newunicodechar{⌘}{{\DejaVuSansMono ⌘}}% U+2318 + \newunicodechar{⏏}{{\DejaVuSansMono ⏏}}% U+23CF + \newunicodechar{⌫}{{\DejaVuSansMono ⌫}}% U+232B + \newunicodechar{⌦}{{\DejaVuSansMono ⌦}}% U+2326 + \newunicodechar{⇥}{{\DejaVuSansMono ⇥}}% U+21E5 + \newunicodechar{⇤}{{\DejaVuSansMono ⇤}}% U+21E4 \PassOptionsToPackage{% verbatimvisiblespace={\textcolor{red}{{\DejaVuSansMono^^^^2423}}},% verbatimcontinued={\textcolor{red}{{\DejaVuSansMono^^^^21aa}}}}% @@ -316,6 +410,12 @@ ItalicFont = * Oblique, BoldItalicFont = * Bold Oblique, ] + \newfontfamily\DejaVuSansCondensed{DejaVu Sans Condensed}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + ] \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 \newunicodechar{⟵}{{\DejaVuSansMono ⟵}}% U+27F5 \newunicodechar{⟶}{{\DejaVuSansMono ⟶}}% U+27F6 @@ -325,6 +425,21 @@ \newunicodechar{≟}{{\DejaVuSansMono ≟}}% U+225F \newunicodechar{∈}{{\DejaVuSansMono ∈}}% U+2208 \newunicodechar{∌}{{\DejaVuSansMono ∌}}% U+220C + \newunicodechar{≙}{{\DejaVuSansMono ≙}}% U+2259 + \newunicodechar{␣}{{\DejaVuSansMono ␣}}% U+2423 + \newunicodechar{↪}{{\DejaVuSansMono ↪}}% U+21AA + \newunicodechar{↩}{{\DejaVuSansMono ↩}}% U+21A9 + \newunicodechar{⇧}{{\DejaVuSansMono ⇧}}% U+21E7 + \newunicodechar{⌃}{{\DejaVuSansMono ⌃}}% U+2303 + \newunicodechar{⎈}{{\DejaVuSansMono ⎈}}% U+2388 + \newunicodechar{⌥}{{\DejaVuSansMono ⌥}}% U+2325 + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 + \newunicodechar{⌘}{{\DejaVuSansMono ⌘}}% U+2318 + \newunicodechar{⏏}{{\DejaVuSansMono ⏏}}% U+23CF + \newunicodechar{⌫}{{\DejaVuSansMono ⌫}}% U+232B + \newunicodechar{⌦}{{\DejaVuSansMono ⌦}}% U+2326 + \newunicodechar{⇥}{{\DejaVuSansMono ⇥}}% U+21E5 + \newunicodechar{⇤}{{\DejaVuSansMono ⇤}}% U+21E4 \PassOptionsToPackage{% verbatimvisiblespace={\textcolor{red}{{\DejaVuSansMono^^^^2423}}},% verbatimcontinued={\textcolor{red}{{\DejaVuSansMono^^^^21aa}}}}% @@ -346,6 +461,12 @@ ItalicFont = * Oblique, BoldItalicFont = * Bold Oblique, ] + \newfontfamily\DejaVuSansCondensed{DejaVu Sans Condensed}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + ] \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 \newunicodechar{⟵}{{\DejaVuSansMono ⟵}}% U+27F5 \newunicodechar{⟶}{{\DejaVuSansMono ⟶}}% U+27F6 @@ -353,6 +474,20 @@ \newunicodechar{≟}{{\DejaVuSansMono ≟}}% U+225F \newunicodechar{∈}{{\DejaVuSansMono ∈}}% U+2208 \newunicodechar{∌}{{\DejaVuSansMono ∌}}% U+220C + \newunicodechar{≙}{{\DejaVuSansMono ≙}}% U+2259 + \newunicodechar{↪}{{\DejaVuSansMono ↪}}% U+21AA + \newunicodechar{↩}{{\DejaVuSansMono ↩}}% U+21A9 + \newunicodechar{⇧}{{\DejaVuSansMono ⇧}}% U+21E7 + \newunicodechar{⌃}{{\DejaVuSansMono ⌃}}% U+2303 + \newunicodechar{⎈}{{\DejaVuSansMono ⎈}}% U+2388 + \newunicodechar{⌥}{{\DejaVuSansMono ⌥}}% U+2325 + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 + \newunicodechar{⌘}{{\DejaVuSansMono ⌘}}% U+2318 + \newunicodechar{⏏}{{\DejaVuSansMono ⏏}}% U+23CF + \newunicodechar{⌫}{{\DejaVuSansMono ⌫}}% U+232B + \newunicodechar{⌦}{{\DejaVuSansMono ⌦}}% U+2326 + \newunicodechar{⇥}{{\DejaVuSansMono ⇥}}% U+21E5 + \newunicodechar{⇤}{{\DejaVuSansMono ⇤}}% U+21E4 \fi \if@mdf@mono@robotomono @@ -370,6 +505,12 @@ ItalicFont = * Oblique, BoldItalicFont = * Bold Oblique, ] + \newfontfamily\DejaVuSansCondensed{DejaVu Sans Condensed}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + ] \newunicodechar{▷}{{\DejaVuSansMono ▷}}% U+25B7 \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 \newunicodechar{◆}{{\DejaVuSansMono ◆}}% U+25C6 @@ -382,7 +523,21 @@ \newunicodechar{≟}{{\DejaVuSansMono ≟}}% U+225F \newunicodechar{∈}{{\DejaVuSansMono ∈}}% U+2208 \newunicodechar{∌}{{\DejaVuSansMono ∌}}% U+220C - + \newunicodechar{≙}{{\DejaVuSansMono ≙}}% U+2259 + \newunicodechar{␣}{{\DejaVuSansMono ␣}}% U+2423 + \newunicodechar{↪}{{\DejaVuSansMono ↪}}% U+21AA + \newunicodechar{↩}{{\DejaVuSansMono ↩}}% U+21A9 + \newunicodechar{⇧}{{\DejaVuSansMono ⇧}}% U+21E7 + \newunicodechar{⌃}{{\DejaVuSansMono ⌃}}% U+2303 + \newunicodechar{⎈}{{\DejaVuSansMono ⎈}}% U+2388 + \newunicodechar{⌥}{{\DejaVuSansMono ⌥}}% U+2325 + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 + \newunicodechar{⌘}{{\DejaVuSansMono ⌘}}% U+2318 + \newunicodechar{⏏}{{\DejaVuSansMono ⏏}}% U+23CF + \newunicodechar{⌫}{{\DejaVuSansMono ⌫}}% U+232B + \newunicodechar{⌦}{{\DejaVuSansMono ⌦}}% U+2326 + \newunicodechar{⇥}{{\DejaVuSansMono ⇥}}% U+21E5 + \newunicodechar{⇤}{{\DejaVuSansMono ⇤}}% U+21E4 \PassOptionsToPackage{% verbatimvisiblespace={\textcolor{red}{{\DejaVuSansMono^^^^2423}}},% verbatimcontinued={\textcolor{red}{{\DejaVuSansMono^^^^21aa}}}}% @@ -420,6 +575,14 @@ Scale=MatchLowercase, Ligatures=TeX, ] + \newfontfamily\DejaVuSansCondensed{DejaVu Sans Condensed}[% + UprightFont = *, + BoldFont = * Bold, + ItalicFont = * Oblique, + BoldItalicFont = * Bold Oblique, + Scale=MatchLowercase, + Ligatures=TeX, + ] \newunicodechar{▷}{{\DejaVuSansMono ▷}}% U+25B7 \newunicodechar{∶}{{\DejaVuSansMono ∶}}% U+2236 \newunicodechar{◆}{{\DejaVuSansMono ◆}}% U+25C6 @@ -435,7 +598,21 @@ \newunicodechar{≠}{{\DejaVuSansMono ≠}}% U+2260 \newunicodechar{≤}{{\DejaVuSansMono ≤}}% U+2264 \newunicodechar{≥}{{\DejaVuSansMono ≥}}% U+2265 - %\newunicodechar{␣}{{\DejaVuSansMono ␣}}% U+2423 Missing! + \newunicodechar{≙}{{\DejaVuSansMono ≙}}% U+2259 + \newunicodechar{␣}{{\DejaVuSansMono ␣}}% U+2423 + \newunicodechar{↪}{{\DejaVuSansMono ↪}}% U+21AA + \newunicodechar{↩}{{\DejaVuSansMono ↩}}% U+21A9 + \newunicodechar{⇧}{{\DejaVuSansMono ⇧}}% U+21E7 + \newunicodechar{⌃}{{\DejaVuSansMono ⌃}}% U+2303 + \newunicodechar{⎈}{{\DejaVuSansMono ⎈}}% U+2388 + \newunicodechar{⌥}{{\DejaVuSansMono ⌥}}% U+2325 + \newunicodechar{⎇}{{\DejaVuSansCondensed ⎇}}% U+2387 + \newunicodechar{⌘}{{\DejaVuSansMono ⌘}}% U+2318 + \newunicodechar{⏏}{{\DejaVuSansMono ⏏}}% U+23CF + \newunicodechar{⌫}{{\DejaVuSansMono ⌫}}% U+232B + \newunicodechar{⌦}{{\DejaVuSansMono ⌦}}% U+2326 + \newunicodechar{⇥}{{\DejaVuSansMono ⇥}}% U+21E5 + \newunicodechar{⇤}{{\DejaVuSansMono ⇤}}% U+21E4 %\newunicodechar{^^^^2423}{{\DejaVuSansMono^^^^2423}}% U+2423 %\newunicodechar{␣}{\textvisiblespace}% U+2423 %\catcode`^^^^2423\active\protected\def^^^^2423{\textvisiblespace}