diff docs/_latex/my-doc-fonts.sty @ 792:0b83218218e2 default tip

Upgrade to my-fonts.sty v0.5
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 18 May 2026 12:26:44 +0200
parents 48deafc1fd2f
children
line wrap: on
line diff
--- 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}