summaryrefslogtreecommitdiff
path: root/fonts/xcharter/tex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-02-27 03:01:13 +0000
committerNorbert Preining <norbert@preining.info>2022-02-27 03:01:13 +0000
commita911d39178540078c8ff5bc880418478d7433c40 (patch)
treef23b6a0f6bf9f548e7e43cf2405e864eba99b21e /fonts/xcharter/tex
parent740a11f29a3551babe3d7edbb57ac3baa2280a3f (diff)
CTAN sync 202202270301
Diffstat (limited to 'fonts/xcharter/tex')
-rw-r--r--fonts/xcharter/tex/LY1XCharter-LF.fd86
-rw-r--r--fonts/xcharter/tex/LY1XCharter-OsF.fd93
-rw-r--r--fonts/xcharter/tex/LY1XCharterTH-tlf.fd4
-rw-r--r--fonts/xcharter/tex/OT1XCharter-LF.fd86
-rw-r--r--fonts/xcharter/tex/OT1XCharter-OsF.fd93
-rw-r--r--fonts/xcharter/tex/OT1XCharterTH-tlf.fd4
-rw-r--r--fonts/xcharter/tex/T1XCharter-LF.fd86
-rw-r--r--fonts/xcharter/tex/T1XCharter-OsF.fd93
-rw-r--r--fonts/xcharter/tex/T1XCharterTH-tlf.fd4
-rw-r--r--fonts/xcharter/tex/T2ASRBXCharter-LF.fd151
-rw-r--r--fonts/xcharter/tex/T2ASRBXCharter-OsF.fd151
-rw-r--r--fonts/xcharter/tex/T2ASRBXCharter-Sup.fd44
-rw-r--r--fonts/xcharter/tex/T2ASRBXCharter-TLF.fd104
-rw-r--r--fonts/xcharter/tex/T2ASRBXCharter-TOsF.fd94
-rw-r--r--fonts/xcharter/tex/T2AXCharter-LF.fd151
-rw-r--r--fonts/xcharter/tex/T2AXCharter-OsF.fd151
-rw-r--r--fonts/xcharter/tex/TS1XCharter-LF.fd55
-rw-r--r--fonts/xcharter/tex/TS1XCharter-OsF.fd55
-rw-r--r--fonts/xcharter/tex/XCharter.sty814
-rw-r--r--fonts/xcharter/tex/ly1minxcharter.fd88
-rw-r--r--fonts/xcharter/tex/ot1minxcharter.fd88
-rw-r--r--fonts/xcharter/tex/t1minxcharter.fd88
22 files changed, 2275 insertions, 308 deletions
diff --git a/fonts/xcharter/tex/LY1XCharter-LF.fd b/fonts/xcharter/tex/LY1XCharter-LF.fd
new file mode 100644
index 0000000000..f1996e065b
--- /dev/null
+++ b/fonts/xcharter/tex/LY1XCharter-LF.fd
@@ -0,0 +1,86 @@
+%% Generated by msharpe on 2022/02/17
+%%
+\ProvidesFile{LY1XCharter-LF.fd}
+ [2022/02/17 (autoinst and msharpe) Font definitions for LY1/XCharter-LF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{XCharter-LF}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{bx}{sc}{
+ <-> ssub * XCharter-LF/b/sc
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{bx}{it}{
+ <-> ssub * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{bx}{scit}{
+ <-> ssub * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{bx}{sl}{
+ <-> ssub * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{bx}{n}{
+ <-> ssub * XCharter-LF/b/n
+}{}
+
+\DeclareFontShape{LY1}{XCharter-LF}{bx}{scsl}{
+ <-> ssub * XCharter-LF/b/scsl
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/LY1XCharter-OsF.fd b/fonts/xcharter/tex/LY1XCharter-OsF.fd
new file mode 100644
index 0000000000..2370f61345
--- /dev/null
+++ b/fonts/xcharter/tex/LY1XCharter-OsF.fd
@@ -0,0 +1,93 @@
+%% Generated by autoinst on 2022/02/17
+%%
+\ProvidesFile{LY1XCharter-OsF.fd}
+ [2022/02/17 (autoinst and msharpe) Font definitions for LY1/XCharter-OsF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+
+\expandafter\ifx\csname XCharter@altone\endcsname\relax
+ \let\XCharter@@altone\@empty
+\else
+ \edef\XCharter@@altone{\XCharter@altone}%
+\fi
+
+\DeclareFontFamily{LY1}{XCharter-OsF}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{m}{scit}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{m}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{m}{sc}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{m}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{m}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{b}{scit}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{b}{sc}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{b}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{b}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{b}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{bx}{scit}{
+ <-> ssub * XCharter-OsF/b/scit
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{bx}{sc}{
+ <-> ssub * XCharter-OsF/b/sc
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{bx}{it}{
+ <-> ssub * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{bx}{sl}{
+ <-> ssub * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{bx}{scsl}{
+ <-> ssub * XCharter-OsF/b/scsl
+}{}
+
+\DeclareFontShape{LY1}{XCharter-OsF}{bx}{n}{
+ <-> ssub * XCharter-OsF/b/n
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/LY1XCharterTH-tlf.fd b/fonts/xcharter/tex/LY1XCharterTH-tlf.fd
index 269c253e6f..8088f1afe8 100644
--- a/fonts/xcharter/tex/LY1XCharterTH-tlf.fd
+++ b/fonts/xcharter/tex/LY1XCharterTH-tlf.fd
@@ -7,8 +7,8 @@
\fi
\DeclareFontFamily{LY1}{XCharterTH-tlf}{}
-\DeclareFontShape{LY1}{XCharterTH-tlf}{m}{it}{<-> \XCharter@@scale XCharterTH-Italic-tlf-ly1}{}
-\DeclareFontShape{LY1}{XCharterTH-tlf}{b}{it}{<-> \XCharter@@scale XCharterTH-BoldItalic-tlf-ly1}{}
+\DeclareFontShape{LY1}{XCharterTH-tlf}{m}{it}{<-> \XCharter@@scale XCharter1TH-Italic-tlf-ly1}{}
+\DeclareFontShape{LY1}{XCharterTH-tlf}{b}{it}{<-> \XCharter@@scale XCharter1TH-BoldItalic-tlf-ly1}{}
\DeclareFontShape{LY1}{XCharterTH-tlf}{m}{n}{<->ssub * XCharterTH-tlf/m/it}{}
\DeclareFontShape{LY1}{XCharterTH-tlf}{m}{sc}{<->ssub * XCharterTH-tlf/m/it}{}
\DeclareFontShape{LY1}{XCharterTH-tlf}{m}{scit}{<->ssub * XCharterTH-tlf/m/it}{}
diff --git a/fonts/xcharter/tex/OT1XCharter-LF.fd b/fonts/xcharter/tex/OT1XCharter-LF.fd
new file mode 100644
index 0000000000..2453e1663e
--- /dev/null
+++ b/fonts/xcharter/tex/OT1XCharter-LF.fd
@@ -0,0 +1,86 @@
+%% Generated by msharpe on 2022/02/17
+%%
+\ProvidesFile{OT1XCharter-LF.fd}
+ [2022/02/17 (autoinst and msharpe) Font definitions for OT1/XCharter-LF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{XCharter-LF}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-lf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-lf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-lf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{bx}{sc}{
+ <-> ssub * XCharter-LF/b/sc
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{bx}{it}{
+ <-> ssub * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{bx}{scit}{
+ <-> ssub * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{bx}{sl}{
+ <-> ssub * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{bx}{scsl}{
+ <-> ssub * XCharter-LF/b/scsl
+}{}
+
+\DeclareFontShape{OT1}{XCharter-LF}{bx}{n}{
+ <-> ssub * XCharter-LF/b/n
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/OT1XCharter-OsF.fd b/fonts/xcharter/tex/OT1XCharter-OsF.fd
new file mode 100644
index 0000000000..8b138ee8f5
--- /dev/null
+++ b/fonts/xcharter/tex/OT1XCharter-OsF.fd
@@ -0,0 +1,93 @@
+%% Generated by autoinst on 2022/02/17
+%%
+\ProvidesFile{OT1XCharter-OsF.fd}
+ [2022/02/17 (autoinst and msharpe) Font definitions for OT1/XCharter-OsF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+
+\expandafter\ifx\csname XCharter@altone\endcsname\relax
+ \let\XCharter@@altone\@empty
+\else
+ \edef\XCharter@@altone{\XCharter@altone}%
+\fi
+
+\DeclareFontFamily{OT1}{XCharter-OsF}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{m}{sc}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{m}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{m}{scit}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{m}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{m}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{b}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{b}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{b}{scit}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{b}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{b}{sc}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{bx}{scsl}{
+ <-> ssub * XCharter-OsF/b/scsl
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{bx}{n}{
+ <-> ssub * XCharter-OsF/b/n
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{bx}{sl}{
+ <-> ssub * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{bx}{scit}{
+ <-> ssub * XCharter-OsF/b/scit
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{bx}{it}{
+ <-> ssub * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{OT1}{XCharter-OsF}{bx}{sc}{
+ <-> ssub * XCharter-OsF/b/sc
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/OT1XCharterTH-tlf.fd b/fonts/xcharter/tex/OT1XCharterTH-tlf.fd
index 74a13067b2..c1a07153c3 100644
--- a/fonts/xcharter/tex/OT1XCharterTH-tlf.fd
+++ b/fonts/xcharter/tex/OT1XCharterTH-tlf.fd
@@ -7,8 +7,8 @@
\fi
\DeclareFontFamily{OT1}{XCharterTH-tlf}{}
-\DeclareFontShape{OT1}{XCharterTH-tlf}{m}{it}{<-> \XCharter@@scale XCharterTH-Italic-tlf-ot1}{}
-\DeclareFontShape{OT1}{XCharterTH-tlf}{b}{it}{<-> \XCharter@@scale XCharterTH-BoldItalic-tlf-ot1}{}
+\DeclareFontShape{OT1}{XCharterTH-tlf}{m}{it}{<-> \XCharter@@scale XCharter1TH-Italic-tlf-ot1}{}
+\DeclareFontShape{OT1}{XCharterTH-tlf}{b}{it}{<-> \XCharter@@scale XCharter1TH-BoldItalic-tlf-ot1}{}
\DeclareFontShape{OT1}{XCharterTH-tlf}{m}{n}{<->ssub * XCharterTH-tlf/m/it}{}
\DeclareFontShape{OT1}{XCharterTH-tlf}{m}{sc}{<->ssub * XCharterTH-tlf/m/it}{}
\DeclareFontShape{OT1}{XCharterTH-tlf}{m}{scit}{<->ssub * XCharterTH-tlf/m/it}{}
diff --git a/fonts/xcharter/tex/T1XCharter-LF.fd b/fonts/xcharter/tex/T1XCharter-LF.fd
new file mode 100644
index 0000000000..bf350b2dc8
--- /dev/null
+++ b/fonts/xcharter/tex/T1XCharter-LF.fd
@@ -0,0 +1,86 @@
+%% Generated by msharpe on 2022/02/17
+%%
+\ProvidesFile{T1XCharter-LF.fd}
+ [2022/02/17 (autoinst and msharpe) Font definitions for T1/XCharter-LF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{XCharter-LF}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-lf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-lf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-lf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{bx}{sc}{
+ <-> ssub * XCharter-LF/b/sc
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{bx}{it}{
+ <-> ssub * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{bx}{scit}{
+ <-> ssub * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{bx}{sl}{
+ <-> ssub * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{bx}{n}{
+ <-> ssub * XCharter-LF/b/n
+}{}
+
+\DeclareFontShape{T1}{XCharter-LF}{bx}{scsl}{
+ <-> ssub * XCharter-LF/b/scsl
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/T1XCharter-OsF.fd b/fonts/xcharter/tex/T1XCharter-OsF.fd
new file mode 100644
index 0000000000..95c41838ea
--- /dev/null
+++ b/fonts/xcharter/tex/T1XCharter-OsF.fd
@@ -0,0 +1,93 @@
+%% Generated by autoinst on 2022/02/17
+%%
+\ProvidesFile{T1XCharter-OsF.fd}
+ [2022/02/17 (autoinst and msharpe) Font definitions for T1/XCharter-OsF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+
+\expandafter\ifx\csname XCharter@altone\endcsname\relax
+ \let\XCharter@@altone\@empty
+\else
+ \edef\XCharter@@altone{\XCharter@altone}%
+\fi
+
+\DeclareFontFamily{T1}{XCharter-OsF}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{b}{sc}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{b}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-osf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{b}{scit}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{b}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-osf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{b}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-osf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{m}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-osf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{m}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-osf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{m}{sc}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{m}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-osf-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{m}{scit}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{bx}{sc}{
+ <-> ssub * XCharter-OsF/b/sc
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{bx}{it}{
+ <-> ssub * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{bx}{scit}{
+ <-> ssub * XCharter-OsF/b/scit
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{bx}{sl}{
+ <-> ssub * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{bx}{scsl}{
+ <-> ssub * XCharter-OsF/b/scsl
+}{}
+
+\DeclareFontShape{T1}{XCharter-OsF}{bx}{n}{
+ <-> ssub * XCharter-OsF/b/n
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/T1XCharterTH-tlf.fd b/fonts/xcharter/tex/T1XCharterTH-tlf.fd
index 40a8521911..d054fc4e9f 100644
--- a/fonts/xcharter/tex/T1XCharterTH-tlf.fd
+++ b/fonts/xcharter/tex/T1XCharterTH-tlf.fd
@@ -7,8 +7,8 @@
\fi
\DeclareFontFamily{T1}{XCharterTH-tlf}{}
-\DeclareFontShape{T1}{XCharterTH-tlf}{m}{it}{<-> \XCharter@@scale XCharterTH-Italic-tlf-t1}{}
-\DeclareFontShape{T1}{XCharterTH-tlf}{b}{it}{<-> \XCharter@@scale XCharterTH-BoldItalic-tlf-t1}{}
+\DeclareFontShape{T1}{XCharterTH-tlf}{m}{it}{<-> \XCharter@@scale XCharter1TH-Italic-tlf-t1}{}
+\DeclareFontShape{T1}{XCharterTH-tlf}{b}{it}{<-> \XCharter@@scale XCharter1TH-BoldItalic-tlf-t1}{}
\DeclareFontShape{T1}{XCharterTH-tlf}{m}{n}{<->ssub * XCharterTH-tlf/m/it}{}
\DeclareFontShape{T1}{XCharterTH-tlf}{m}{sc}{<->ssub * XCharterTH-tlf/m/it}{}
\DeclareFontShape{T1}{XCharterTH-tlf}{m}{scit}{<->ssub * XCharterTH-tlf/m/it}{}
diff --git a/fonts/xcharter/tex/T2ASRBXCharter-LF.fd b/fonts/xcharter/tex/T2ASRBXCharter-LF.fd
new file mode 100644
index 0000000000..33c69a9874
--- /dev/null
+++ b/fonts/xcharter/tex/T2ASRBXCharter-LF.fd
@@ -0,0 +1,151 @@
+%% Generated by autoinst on 2022/02/23
+%%
+\ProvidesFile{T2ASRBXCharter-LF.fd}
+ [2022/02/23 (autoinst) Font definitions for T2ASRB/XCharter-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2ASRB}{XCharter-LF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-lf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{regular}{n}{
+ <-> alias * XCharter-LF/m/n
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-lf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{regular}{scit}{
+ <-> alias * XCharter-LF/m/scit
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-lf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{regular}{it}{
+ <-> alias * XCharter-LF/m/it
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{regular}{sl}{
+ <-> alias * XCharter-LF/m/sl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{regular}{scsl}{
+ <-> alias * XCharter-LF/m/scsl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-lf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{regular}{sc}{
+ <-> alias * XCharter-LF/m/sc
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bold}{sl}{
+ <-> alias * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-lf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bold}{n}{
+ <-> alias * XCharter-LF/b/n
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bold}{it}{
+ <-> alias * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bold}{scit}{
+ <-> alias * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-lf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bold}{sc}{
+ <-> alias * XCharter-LF/b/sc
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bold}{scsl}{
+ <-> alias * XCharter-LF/b/scsl
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bx}{sl}{
+ <-> ssub * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bx}{n}{
+ <-> ssub * XCharter-LF/b/n
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bx}{it}{
+ <-> ssub * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bx}{scit}{
+ <-> ssub * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bx}{sc}{
+ <-> ssub * XCharter-LF/b/sc
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-LF}{bx}{scsl}{
+ <-> ssub * XCharter-LF/b/scsl
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/T2ASRBXCharter-OsF.fd b/fonts/xcharter/tex/T2ASRBXCharter-OsF.fd
new file mode 100644
index 0000000000..c46bcc6d83
--- /dev/null
+++ b/fonts/xcharter/tex/T2ASRBXCharter-OsF.fd
@@ -0,0 +1,151 @@
+%% Generated by autoinst on 2022/02/23
+%%
+\ProvidesFile{T2ASRBXCharter-OsF.fd}
+ [2022/02/23 (autoinst) Font definitions for T2ASRB/XCharter-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2ASRB}{XCharter-OsF}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-osf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bold}{sl}{
+ <-> alias * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-osf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bold}{n}{
+ <-> alias * XCharter-OsF/b/n
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-osf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bold}{it}{
+ <-> alias * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-osf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bold}{scit}{
+ <-> alias * XCharter-OsF/b/scit
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-osf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bold}{sc}{
+ <-> alias * XCharter-OsF/b/sc
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-osf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bold}{scsl}{
+ <-> alias * XCharter-OsF/b/scsl
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-osf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{regular}{it}{
+ <-> alias * XCharter-OsF/m/it
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-osf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{regular}{scit}{
+ <-> alias * XCharter-OsF/m/scit
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-osf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{regular}{n}{
+ <-> alias * XCharter-OsF/m/n
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-osf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{regular}{sl}{
+ <-> alias * XCharter-OsF/m/sl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-osf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{regular}{scsl}{
+ <-> alias * XCharter-OsF/m/scsl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-osf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{regular}{sc}{
+ <-> alias * XCharter-OsF/m/sc
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bx}{scsl}{
+ <-> ssub * XCharter-OsF/b/scsl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bx}{sc}{
+ <-> ssub * XCharter-OsF/b/sc
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bx}{n}{
+ <-> ssub * XCharter-OsF/b/n
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bx}{scit}{
+ <-> ssub * XCharter-OsF/b/scit
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bx}{it}{
+ <-> ssub * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-OsF}{bx}{sl}{
+ <-> ssub * XCharter-OsF/b/sl
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/T2ASRBXCharter-Sup.fd b/fonts/xcharter/tex/T2ASRBXCharter-Sup.fd
index 4c6328b60c..dc6f93386d 100644
--- a/fonts/xcharter/tex/T2ASRBXCharter-Sup.fd
+++ b/fonts/xcharter/tex/T2ASRBXCharter-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2021/04/03
+%% Generated by autoinst on 2022/02/23
%%
\ProvidesFile{T2ASRBXCharter-Sup.fd}
- [2021/04/03 (autoinst) Font definitions for T2ASRB/XCharter-Sup.]
+ [2022/02/23 (autoinst) Font definitions for T2ASRB/XCharter-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{b}{n}{
- <-> \XCharter@@scale XCharter-Bold-sup-t2asrb
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{bold}{n}{
- <-> alias * XCharter-Sup/b/n
-}{}
-
\DeclareFontShape{T2ASRB}{XCharter-Sup}{b}{it}{
<-> \XCharter@@scale XCharter-BoldItalic-sup-t2asrb
}{}
@@ -38,6 +30,14 @@
<-> alias * XCharter-Sup/b/it
}{}
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-sup-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{bold}{n}{
+ <-> alias * XCharter-Sup/b/n
+}{}
+
\DeclareFontShape{T2ASRB}{XCharter-Sup}{b}{sl}{
<-> \XCharter@@scale XCharter-BoldSlanted-sup-t2asrb
}{}
@@ -49,12 +49,12 @@
% ---- m = regular ----
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{m}{n}{
- <-> \XCharter@@scale XCharter-Roman-sup-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-sup-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{regular}{n}{
- <-> alias * XCharter-Sup/m/n
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{regular}{sl}{
+ <-> alias * XCharter-Sup/m/sl
}{}
\DeclareFontShape{T2ASRB}{XCharter-Sup}{m}{it}{
@@ -65,27 +65,27 @@
<-> alias * XCharter-Sup/m/it
}{}
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{m}{sl}{
- <-> \XCharter@@scale XCharter-Slanted-sup-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-sup-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{regular}{sl}{
- <-> alias * XCharter-Sup/m/sl
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{regular}{n}{
+ <-> alias * XCharter-Sup/m/n
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{bx}{it}{
- <-> ssub * XCharter-Sup/b/it
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{bx}{sl}{
+ <-> ssub * XCharter-Sup/b/sl
}{}
\DeclareFontShape{T2ASRB}{XCharter-Sup}{bx}{n}{
<-> ssub * XCharter-Sup/b/n
}{}
-\DeclareFontShape{T2ASRB}{XCharter-Sup}{bx}{sl}{
- <-> ssub * XCharter-Sup/b/sl
+\DeclareFontShape{T2ASRB}{XCharter-Sup}{bx}{it}{
+ <-> ssub * XCharter-Sup/b/it
}{}
\endinput
diff --git a/fonts/xcharter/tex/T2ASRBXCharter-TLF.fd b/fonts/xcharter/tex/T2ASRBXCharter-TLF.fd
index 554a9bc0cf..34552458e6 100644
--- a/fonts/xcharter/tex/T2ASRBXCharter-TLF.fd
+++ b/fonts/xcharter/tex/T2ASRBXCharter-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2021/04/03
+%% Generated by autoinst on 2022/02/23
%%
\ProvidesFile{T2ASRBXCharter-TLF.fd}
- [2021/04/03 (autoinst) Font definitions for T2ASRB/XCharter-TLF.]
+ [2022/02/23 (autoinst) Font definitions for T2ASRB/XCharter-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,20 +22,12 @@
% ---- b = bold ----
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{it}{
- <-> \XCharter@@scale XCharter-BoldItalic-tlf-t2asrb
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{it}{
- <-> alias * XCharter-TLF/b/it
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{n}{
- <-> \XCharter@@scale XCharter-Bold-tlf-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-tlf-sc-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{n}{
- <-> alias * XCharter-TLF/b/n
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{sc}{
+ <-> alias * XCharter-TLF/b/sc
}{}
\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{scsl}{
@@ -46,6 +38,22 @@
<-> alias * XCharter-TLF/b/scsl
}{}
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-tlf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{sl}{
+ <-> alias * XCharter-TLF/b/sl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-tlf-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{n}{
+ <-> alias * XCharter-TLF/b/n
+}{}
+
\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{scit}{
<-> \XCharter@@scale XCharter-BoldItalic-tlf-sc-t2asrb
}{}
@@ -54,24 +62,32 @@
<-> alias * XCharter-TLF/b/scit
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{sl}{
- <-> \XCharter@@scale XCharter-BoldSlanted-tlf-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-tlf-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{sl}{
- <-> alias * XCharter-TLF/b/sl
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{it}{
+ <-> alias * XCharter-TLF/b/it
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{b}{sc}{
- <-> \XCharter@@scale XCharter-Bold-tlf-sc-t2asrb
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-tlf-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bold}{sc}{
- <-> alias * XCharter-TLF/b/sc
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{regular}{it}{
+ <-> alias * XCharter-TLF/m/it
}{}
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-tlf-sc-t2asrb
+}{}
-% ---- m = regular ----
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{regular}{scit}{
+ <-> alias * XCharter-TLF/m/scit
+}{}
\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{n}{
<-> \XCharter@@scale XCharter-Roman-tlf-t2asrb
@@ -81,12 +97,12 @@
<-> alias * XCharter-TLF/m/n
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{it}{
- <-> \XCharter@@scale XCharter-Italic-tlf-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-tlf-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{regular}{it}{
- <-> alias * XCharter-TLF/m/it
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{regular}{sl}{
+ <-> alias * XCharter-TLF/m/sl
}{}
\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{scsl}{
@@ -105,47 +121,31 @@
<-> alias * XCharter-TLF/m/sc
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{sl}{
- <-> \XCharter@@scale XCharter-Slanted-tlf-t2asrb
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{regular}{sl}{
- <-> alias * XCharter-TLF/m/sl
-}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{m}{scit}{
- <-> \XCharter@@scale XCharter-Italic-tlf-sc-t2asrb
-}{}
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{regular}{scit}{
- <-> alias * XCharter-TLF/m/scit
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{sc}{
+ <-> ssub * XCharter-TLF/b/sc
}{}
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{sl}{
<-> ssub * XCharter-TLF/b/sl
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{sc}{
- <-> ssub * XCharter-TLF/b/sc
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{scsl}{
- <-> ssub * XCharter-TLF/b/scsl
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{it}{
+ <-> ssub * XCharter-TLF/b/it
}{}
\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{scit}{
<-> ssub * XCharter-TLF/b/scit
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{n}{
- <-> ssub * XCharter-TLF/b/n
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{scsl}{
+ <-> ssub * XCharter-TLF/b/scsl
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{it}{
- <-> ssub * XCharter-TLF/b/it
+\DeclareFontShape{T2ASRB}{XCharter-TLF}{bx}{n}{
+ <-> ssub * XCharter-TLF/b/n
}{}
\endinput
diff --git a/fonts/xcharter/tex/T2ASRBXCharter-TOsF.fd b/fonts/xcharter/tex/T2ASRBXCharter-TOsF.fd
index 5d695b53b6..10ec418218 100644
--- a/fonts/xcharter/tex/T2ASRBXCharter-TOsF.fd
+++ b/fonts/xcharter/tex/T2ASRBXCharter-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2021/04/03
+%% Generated by autoinst on 2022/02/23
%%
\ProvidesFile{T2ASRBXCharter-TOsF.fd}
- [2021/04/03 (autoinst) Font definitions for T2ASRB/XCharter-TOsF.]
+ [2022/02/23 (autoinst) Font definitions for T2ASRB/XCharter-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,20 +22,20 @@
% ---- m = regular ----
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{n}{
- <-> \XCharter@@scale XCharter-Roman-tosf-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-tosf-sc-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{n}{
- <-> alias * XCharter-TOsF/m/n
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{sc}{
+ <-> alias * XCharter-TOsF/m/sc
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{it}{
- <-> \XCharter@@scale XCharter-Italic-tosf-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-tosf-sc-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{it}{
- <-> alias * XCharter-TOsF/m/it
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{scsl}{
+ <-> alias * XCharter-TOsF/m/scsl
}{}
\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{sl}{
@@ -46,12 +46,12 @@
<-> alias * XCharter-TOsF/m/sl
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{scsl}{
- <-> \XCharter@@scale XCharter-Slanted-tosf-sc-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-tosf-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{scsl}{
- <-> alias * XCharter-TOsF/m/scsl
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{n}{
+ <-> alias * XCharter-TOsF/m/n
}{}
\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{scit}{
@@ -62,17 +62,33 @@
<-> alias * XCharter-TOsF/m/scit
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{sc}{
- <-> \XCharter@@scale XCharter-Roman-tosf-sc-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-tosf-t2asrb
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{sc}{
- <-> alias * XCharter-TOsF/m/sc
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{regular}{it}{
+ <-> alias * XCharter-TOsF/m/it
}{}
% ---- b = bold ----
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-tosf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bold}{scsl}{
+ <-> alias * XCharter-TOsF/b/scsl
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-tosf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bold}{sc}{
+ <-> alias * XCharter-TOsF/b/sc
+}{}
+
\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{n}{
<-> \XCharter@@scale XCharter-Bold-tosf-t2asrb
}{}
@@ -81,6 +97,14 @@
<-> alias * XCharter-TOsF/b/n
}{}
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-tosf-sc-t2asrb
+}{}
+
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bold}{scit}{
+ <-> alias * XCharter-TOsF/b/scit
+}{}
+
\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{it}{
<-> \XCharter@@scale XCharter-BoldItalic-tosf-t2asrb
}{}
@@ -97,33 +121,17 @@
<-> alias * XCharter-TOsF/b/sl
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{scsl}{
- <-> \XCharter@@scale XCharter-BoldSlanted-tosf-sc-t2asrb
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bold}{scsl}{
- <-> alias * XCharter-TOsF/b/scsl
-}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{scit}{
- <-> \XCharter@@scale XCharter-BoldItalic-tosf-sc-t2asrb
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bold}{scit}{
- <-> alias * XCharter-TOsF/b/scit
-}{}
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{b}{sc}{
- <-> \XCharter@@scale XCharter-Bold-tosf-sc-t2asrb
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bx}{scsl}{
+ <-> ssub * XCharter-TOsF/b/scsl
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bold}{sc}{
- <-> alias * XCharter-TOsF/b/sc
+\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bx}{sc}{
+ <-> ssub * XCharter-TOsF/b/sc
}{}
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bx}{n}{
<-> ssub * XCharter-TOsF/b/n
}{}
@@ -132,14 +140,6 @@
<-> ssub * XCharter-TOsF/b/it
}{}
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bx}{sc}{
- <-> ssub * XCharter-TOsF/b/sc
-}{}
-
-\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bx}{scsl}{
- <-> ssub * XCharter-TOsF/b/scsl
-}{}
-
\DeclareFontShape{T2ASRB}{XCharter-TOsF}{bx}{scit}{
<-> ssub * XCharter-TOsF/b/scit
}{}
diff --git a/fonts/xcharter/tex/T2AXCharter-LF.fd b/fonts/xcharter/tex/T2AXCharter-LF.fd
new file mode 100644
index 0000000000..732ae7564f
--- /dev/null
+++ b/fonts/xcharter/tex/T2AXCharter-LF.fd
@@ -0,0 +1,151 @@
+%% Generated by autoinst on 2022/02/23
+%%
+\ProvidesFile{T2AXCharter-LF.fd}
+ [2022/02/23 (autoinst) Font definitions for T2A/XCharter-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2A}{XCharter-LF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2A}{XCharter-LF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-lf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{regular}{it}{
+ <-> alias * XCharter-LF/m/it
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{regular}{sl}{
+ <-> alias * XCharter-LF/m/sl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-lf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{regular}{n}{
+ <-> alias * XCharter-LF/m/n
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-lf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{regular}{scit}{
+ <-> alias * XCharter-LF/m/scit
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-lf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{regular}{sc}{
+ <-> alias * XCharter-LF/m/sc
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-lf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{regular}{scsl}{
+ <-> alias * XCharter-LF/m/scsl
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T2A}{XCharter-LF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bold}{scit}{
+ <-> alias * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bold}{sl}{
+ <-> alias * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-lf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bold}{n}{
+ <-> alias * XCharter-LF/b/n
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-lf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bold}{it}{
+ <-> alias * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-lf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bold}{scsl}{
+ <-> alias * XCharter-LF/b/scsl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-lf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bold}{sc}{
+ <-> alias * XCharter-LF/b/sc
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2A}{XCharter-LF}{bx}{scsl}{
+ <-> ssub * XCharter-LF/b/scsl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bx}{sc}{
+ <-> ssub * XCharter-LF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bx}{n}{
+ <-> ssub * XCharter-LF/b/n
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bx}{scit}{
+ <-> ssub * XCharter-LF/b/scit
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bx}{sl}{
+ <-> ssub * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-LF}{bx}{it}{
+ <-> ssub * XCharter-LF/b/it
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/T2AXCharter-OsF.fd b/fonts/xcharter/tex/T2AXCharter-OsF.fd
new file mode 100644
index 0000000000..cc15e2a1c6
--- /dev/null
+++ b/fonts/xcharter/tex/T2AXCharter-OsF.fd
@@ -0,0 +1,151 @@
+%% Generated by autoinst on 2022/02/23
+%%
+\ProvidesFile{T2AXCharter-OsF.fd}
+ [2022/02/23 (autoinst) Font definitions for T2A/XCharter-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2A}{XCharter-OsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2A}{XCharter-OsF}{m}{sl}{
+ <-> \XCharter@@scale XCharter-Slanted-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{regular}{sl}{
+ <-> alias * XCharter-OsF/m/sl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{m}{n}{
+ <-> \XCharter@@scale XCharter-Roman-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{regular}{n}{
+ <-> alias * XCharter-OsF/m/n
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{m}{scit}{
+ <-> \XCharter@@scale XCharter-Italic-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{regular}{scit}{
+ <-> alias * XCharter-OsF/m/scit
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{m}{it}{
+ <-> \XCharter@@scale XCharter-Italic-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{regular}{it}{
+ <-> alias * XCharter-OsF/m/it
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{m}{scsl}{
+ <-> \XCharter@@scale XCharter-Slanted-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{regular}{scsl}{
+ <-> alias * XCharter-OsF/m/scsl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{m}{sc}{
+ <-> \XCharter@@scale XCharter-Roman-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{regular}{sc}{
+ <-> alias * XCharter-OsF/m/sc
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T2A}{XCharter-OsF}{b}{sc}{
+ <-> \XCharter@@scale XCharter-Bold-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bold}{sc}{
+ <-> alias * XCharter-OsF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{b}{scsl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bold}{scsl}{
+ <-> alias * XCharter-OsF/b/scsl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{b}{it}{
+ <-> \XCharter@@scale XCharter-BoldItalic-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bold}{it}{
+ <-> alias * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{b}{sl}{
+ <-> \XCharter@@scale XCharter-BoldSlanted-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bold}{sl}{
+ <-> alias * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{b}{n}{
+ <-> \XCharter@@scale XCharter-Bold-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bold}{n}{
+ <-> alias * XCharter-OsF/b/n
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{b}{scit}{
+ <-> \XCharter@@scale XCharter-BoldItalic-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bold}{scit}{
+ <-> alias * XCharter-OsF/b/scit
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bx}{scit}{
+ <-> ssub * XCharter-OsF/b/scit
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bx}{sl}{
+ <-> ssub * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bx}{it}{
+ <-> ssub * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bx}{sc}{
+ <-> ssub * XCharter-OsF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bx}{n}{
+ <-> ssub * XCharter-OsF/b/n
+}{}
+
+\DeclareFontShape{T2A}{XCharter-OsF}{bx}{scsl}{
+ <-> ssub * XCharter-OsF/b/scsl
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/TS1XCharter-LF.fd b/fonts/xcharter/tex/TS1XCharter-LF.fd
new file mode 100644
index 0000000000..f1503f39b8
--- /dev/null
+++ b/fonts/xcharter/tex/TS1XCharter-LF.fd
@@ -0,0 +1,55 @@
+%%
+\ProvidesFile{TS1XCharter-LF.fd}
+ [2020/05/25 (msharpe) Font definitions for TS1/XCharter-LF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\expandafter\ifx\csname XCharter@altone\endcsname\relax
+ \let\XCharter@@altone\@empty
+\else
+ \edef\XCharter@@altone{\XCharter@altone}%
+\fi
+
+\DeclareFontFamily{TS1}{XCharter-LF}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{b}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{b}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{b}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{m}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{m}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{m}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{bx}{it}{
+ <-> ssub * XCharter-LF/b/it
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{bx}{sl}{
+ <-> ssub * XCharter-LF/b/sl
+}{}
+
+\DeclareFontShape{TS1}{XCharter-LF}{bx}{n}{
+ <-> ssub * XCharter-LF/b/n
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/TS1XCharter-OsF.fd b/fonts/xcharter/tex/TS1XCharter-OsF.fd
new file mode 100644
index 0000000000..9cb69cdf93
--- /dev/null
+++ b/fonts/xcharter/tex/TS1XCharter-OsF.fd
@@ -0,0 +1,55 @@
+%%
+\ProvidesFile{TS1XCharter-OsF.fd}
+ [2020/05/25 (msharpe) Font definitions for TS1/XCharter-OsF.]
+
+\expandafter\ifx\csname XCharter@scale\endcsname\relax
+ \let\XCharter@@scale\@empty
+\else
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+\fi
+
+\expandafter\ifx\csname XCharter@altone\endcsname\relax
+ \let\XCharter@@altone\@empty
+\else
+ \edef\XCharter@@altone{\XCharter@altone}%
+\fi
+
+\DeclareFontFamily{TS1}{XCharter-OsF}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{b}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldItalic-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{b}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-BoldSlanted-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{b}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Bold-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{m}{n}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Roman-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{m}{sl}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Slanted-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{m}{it}{
+ <-> \XCharter@@scale XCharter\XCharter@@altone-Italic-ts1
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{bx}{it}{
+ <-> ssub * XCharter-OsF/b/it
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{bx}{sl}{
+ <-> ssub * XCharter-OsF/b/sl
+}{}
+
+\DeclareFontShape{TS1}{XCharter-OsF}{bx}{n}{
+ <-> ssub * XCharter-OsF/b/n
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/XCharter.sty b/fonts/xcharter/tex/XCharter.sty
index 3165479cc4..e4106b5b8a 100644
--- a/fonts/xcharter/tex/XCharter.sty
+++ b/fonts/xcharter/tex/XCharter.sty
@@ -1,24 +1,228 @@
%% XCharter is an extension of the Bitstream Charter fonts, adding osf,
-% small caps and superior figures. Generated 2017/06/25 by Michael Sharpe.
+% small caps and superior figures. Generated 2022/02/20 by Michael Sharpe.
%%
\NeedsTeXFormat{LaTeX2e}
-\def\fileversion{1.225}
-\def\filedate{2022/01/31}
+\def\fileversion{1.22}
+\def\filedate{2022/02/25}
\ProvidesPackage{XCharter}[\filedate\space v\fileversion]
\message{`XCharter' v\fileversion, \filedate\space Text macros for XCharter, an extension of Charter (msharpe)}
-\RequirePackage[T2A,LY1,T1]{fontenc}
+\RequirePackage[T1]{fontenc}
\RequirePackage{textcomp}
-\RequirePackage{scalefnt} % for \textruble and \textcircled
\DeclareEncodingSubset{TS1}{XCharter-*}{0}
-\IfFileExists{mweights.sty}{\RequirePackage{mweights}}{}
-\RequirePackage{etoolbox} %etoolbox loads etex.sty
-\RequirePackage{xstring,ifthen} % for \textfrac
-\IfFileExists{fontaxes.sty}{
- \RequirePackage{fontaxes}
+\RequirePackage{iftex,xkeyval,etoolbox,textcomp}
+\RequirePackage{xstring,ifthen,scalefnt} % for \textfrac
+\RequirePackage{mweights,xkeyval}
+
+%KOMA check
+\newif\ifxch@KOMA
+\@ifundefined{KOMAClassName}{}{\xch@KOMAtrue}
+\@ifundefined{ver@scrextend.sty}{}{\xch@KOMAtrue}
+
+% Engine check
+\newif\ifxch@otftext
+\iftutex\xch@otftexttrue\fi
+\newif\ifxch@nofontspec
+
+% newtx check
+\newif\ifntx@newtx
+\@ifundefined{ntx@otftexttrue}{% not run from newtx.sty
+ %\newif\ifntx@otftext%
+ %\newif\ifntx@otfmath % default is type1 math
+ %iftex's \iftutex returns true for LuaTeX and XeTeX, not [pdf]latex
+ %\iftutex\ntx@otftexttrue\fi % default is otf text for unicode latex
+ %\newif\ifntx@nofontspec % default is to load fontspec iftutex
+ % might have been defined in newtx.sty
+ \def\ntx@id{12} % make it appear that newtxtext was chosen in newtx
+}{% run from newtx.sty
+ \ntx@newtxtrue%
+}
+
+%%%%%%%%%% Start Options
+\def\XCharter@altone{1}% default is to use 1, not I
+\def\XCharter@figurestyle{LF}
+\def\XCharter@figurealign{T}
+\newif\ifxch@lining\xch@liningtrue
+\newif\ifxch@tabular\xch@tabulartrue % default is tabular lining figures
+\DeclareOptionX{type1text}[true]{% use type1 packages for text
+\@nameuse{if#1}\xch@otftextfalse\fi
+}
+\DeclareOptionX{type1}[true]{% use type1 packages for text
+\@nameuse{if#1}\xch@otftextfalse\fi
+}
+\DeclareOptionX{nofontspec}[true]{% type1 + don't load fontspec
+\@nameuse{if#1}\xch@nofontspectrue\fi
+}
+\def\xch@defaultfeatures{}
+\DeclareOptionX{defaultfeatures}{\def\xch@defaultfeatures{#1}}
+
+%Figure style options
+\def\xch@dfltfigurestyle{lf}
+\def\xch@dfltfigurealign{t}
+
+\DeclareOptionX{lining}[true]{%
+\@nameuse{xch@lining#1}
+}
+\DeclareOptionX{lf}[true]{%
+\@nameuse{xch@lining#1}
+}
+\DeclareOptionX{oldstyle}[true]{%
+\@nameuse{if#1}%
+ \xch@liningfalse
+\else
+ \xch@liningtrue
+\fi
+}
+\DeclareOptionX{osf}[true]{%
+\@nameuse{if#1}%
+ \xch@liningfalse
+ \else
+ \xch@liningtrue
+\fi
+}
+
+\DeclareOptionX{oldstyleI}[true]{%
+\@nameuse{if#1}%
+ \xch@liningfalse
+ \def\XCharter@altone{}
+\else
+ \xch@liningtrue
+\fi
+}
+\DeclareOptionX{osfI}[true]{%
+\@nameuse{if#1}%
+ \xch@liningfalse
+ \def\XCharter@altone{}
+\else
+ \xch@liningtrue
+\fi
+}
+
+\DeclareOptionX{tabular}[true]{%
+\@nameuse{xch@tabular#1}
+}
+\DeclareOptionX{t}[true]{%
+\@nameuse{xch@tabular#1}
+}
+\DeclareOptionX{proportional}[true]{%
+\@nameuse{if#1}%
+ \xch@tabularfalse
+\else
+ \xch@tabulartrue
+\fi
+}
+\DeclareOptionX{p}[true]{%
+\@nameuse{if#1}%
+ \xch@tabularfalse
+\else
+ \xch@tabulartrue
+\fi
+}
+
+%Scale
+\providecommand*{\XCharter@scale}{1}% Might have been defined in newtx
+\DeclareOptionX{scale}{\renewcommand*{\XCharter@scale}{#1}}
+\DeclareOptionX{scaled}{\renewcommand*{\XCharter@scale}{#1}}
+
+%\newif\ifxch@defaultsups
+\newif\ifxch@scosf
+%\newif\ifxch@largesc % we don't use this exc. in fd, but may in future
+%\newif\ifxch@helv \xch@helvtrue % default is to load helvetica as sans serif font
+%\newif\ifxch@sl
+
+
+\let\orig@footnote=\thefootnote
+\let\orig@makefnmark=\@makefnmark
+\def\bfseries@rm{b}
+\def\mdseries@rm{m}
+
+\def\xch@thmtab{} % default is to not change to tabular
+\def\xch@thmlin{X} % default is to not change to lining
+\def\XCharter@foresolidus{0em}
+\def\XCharter@aftsolidus{0em}
+\newif\ifxch@thrm
+\newif\ifxch@sups
+%\newif\if@XCharter@scosf
+%\newif\ifxch@altQ
+%\newif\ifxch@altJ
+%\newif\ifxch@oldSS
+\def\xch@defaultfeatures{}
+\newcount\xch@cnt \xch@cnt=0
+
+
+%\DeclareOptionX{lining}{\edef\XCharter@figurestyle{LF}}
+%\DeclareOptionX{lf}{\edef\XCharter@figurestyle{LF}}
+%\DeclareOptionX{oldstyle}{\edef\XCharter@figurestyle{OsF}}
+%\DeclareOptionX{osf}{\edef\XCharter@figurestyle{OsF}}
+%\DeclareOptionX{tabular}{\edef\XCharter@figurealign{T}}
+%\DeclareOptionX{p}{\useproportional}
+%\DeclareOptionX{proportional}{\useproportional}
+%\def\xch@fnmark{}
+%\DeclareOptionX{fnmarkerfont}{\def\xch@fnmark{#1}}
+\DeclareOptionX{defaultfeatures}{\def\xch@defaultfeatures{#1}}
+\DeclareOptionX{oldSS}{\advance\xch@cnt\@ne}
+\DeclareOptionX{theoremfont}{\xch@thrmtrue}
+%\DeclareOptionX{thmtabular}{\def\xch@thmtab{t}}
+\DeclareOptionX{thmlining}{\def\xch@thmlin{l}}
+\DeclareOptionX{sups}{\xch@supstrue}
+\DeclareOptionX{scosf}{\xch@scosftrue}
+\DeclareOptionX{foresolidus}{\gdef\XCharter@foresolidus{#1}}
+\DeclareOptionX{aftsolidus}{\gdef\XCharter@aftsolidus{#1}}
+\ExecuteOptionsX{lining,tabular}
+\ProcessOptionsX\relax
+
+% Check for conflict between nofontspec and others
+\ifxch@nofontspec
+ \iftutex
+ \xch@otftextfalse
+ \fi
+\fi
+%\edef\xch@scaled{s*[\xch@scale]}% used in fd files
+
+\iftutex
+ \ifxch@nofontspec % do nothing
+ \else
+ \RequirePackage[no-math]{fontspec}
+ \fi
+\fi
+
+\ifxch@otftext%
+ \ifxetex\XeTeXtracingfonts=1\fi
+ \ifluatex % avoid possibly uncorrected "system" fonts
+ \directlua{fonts.names.set_location_precedence{
+ "local", "texmf", "system" }}
+ \fi
+ \def\xch@base{XCharter}
+ \newcommand{\textfrac}[3][]{{%
+ \mbox{%
+ \ifthenelse{\not\equal{#1}{}}%Test for integer portion [optional #1]
+ {\textlf{#1}\kern.03em}{}%
+ \textsu{#2\char"2044}% numerator
+\textde{\kern-.159em{\addfontfeature{RawFeature=+ss02}\char"2044}#3}% denominator
+}}}
+ \def\xch@dflt{}
+ %\xch@cnt will be 0..7
+ \def\xch@lst{}
+ \ifnum\xch@cnt>3 \edef\xch@lst{3}\advance\xch@cnt -4 \fi
+ \ifnum\xch@cnt>1 \edef\xch@lst{2,\xch@lst}\advance\xch@cnt -2 \fi
+ \ifnum\xch@cnt>0 \edef\xch@lst{2,\xch@lst}\fi
+ \ifthenelse{\not\equal{\xch@lst}{}}
+ {\edef\xch@dflt{\xch@dflt StylisticSet={\xch@lst} ,
+ }}{}
+ \defaultfontfeatures{
+ Ligatures = TeX ,
+ Extension = .otf ,
+ SmallCapsFeatures={Letters=SmallCaps} ,
+ \xch@dflt ,
+ \xch@defaultfeatures
+ }
+
+\else % type1
+ \RequirePackage{fontaxes}
+
\fa@naming@exception{figures}{{superior}{proportional}}{Sup}
\fa@naming@exception{figures}{{superior}{tabular}}{Sup}
\def\sufigures{\@nomath\sufigures
@@ -32,187 +236,195 @@
\fontfigurestyle{inferior}\selectfont}
\DeclareTextFontCommand{\textinf}{\infigures}
\let\textinferior\textinf
-
+
\fa@naming@exception{figures}{{numerators}{proportional}}{Numr}
\fa@naming@exception{figures}{{numerators}{tabular}}{Numr}
\def\nufigures{\@nomath\nufigures%
\fontfigurestyle{numerators}\selectfont}
\DeclareTextFontCommand{\textnu}{\nufigures}
\let\textnumerator\textnu
- \let\nustyle\nufigures
-
+
\fa@naming@exception{figures}{{denominators}{proportional}}{Dnom}
\fa@naming@exception{figures}{{denominators}{tabular}}{Dnom}
\def\defigures{\@nomath\defigures%
\fontfigurestyle{denominators}\selectfont}
\DeclareTextFontCommand{\textde}{\defigures}
\let\textdenominator\textde
- \let\destyle\defigures
-
-}{}
-\newcommand{\textfrac}[3][]{% like \textfrac[1]{7}{8}
- \mbox{%
- \ifthenelse{\not\equal{#1}{}}%Test for integer portion [optional #1]
- {\textlf{#1}\kern.05em}{}%
- \textsu{#2}% numerator
- \StrRight{#2}{1}[\@digit@]%
- % look for 1, 2, 3, 4, 7
- \ifcase\@digit@% 0
- \or% 1
- \or\kern.03em% 2
- \or\kern-.01em% 3
- \or%\kern-.01em% 4
- \or%\kern.01em% 5
- \or\kern.01em% 6
- \or\kern-.09em% 7
- \fi%
- \kern\XCh@foresolidus\textfractionsolidus\kern\XCh@aftsolidus%
- \StrLeft{#3}{1}[\@digit@]%
- % look for 1, 4, 5, 7
- \ifcase\@digit@% 0
- \or\kern -.02em% 1
- \or\kern .01em% 2
- \or\kern -.02em% 3
- \or\kern -.08em% 4
- \or\kern -.01em% 5
- \or\kern -.03em% 6
- \or\kern .02em% 7
- \fi%
- \textde{#3}% denominator [#3]
- }%
+
+ \newcommand{\textfrac}[3][]{% like \textfrac[1]{7}{8}
+ \mbox{%Test for integer portion [optional #1]
+ \ifthenelse{\not\equal{#1}{}}%
+ {\textlf{#1}\kern.05em}{}%
+ \textsu{#2}% numerator
+ \StrRight{#2}{1}[\@digit@]%
+ % look for 1, 2, 3, 4, 7
+ \ifcase\@digit@% 0
+ \or% 1
+ \or\kern.03em% 2
+ \or\kern-.01em% 3
+ \or%\kern-.01em% 4
+ \or%\kern.01em% 5
+ \or\kern.01em% 6
+ \or\kern-.09em% 7
+ \fi%
+\kern\XCharter@foresolidus\textfractionsolidus\kern\XCharter@aftsolidus%
+ \StrLeft{#3}{1}[\@digit@]%
+ % look for 1, 4, 5, 7
+ \ifcase\@digit@% 0
+ \or\kern -.02em% 1
+ \or\kern .01em% 2
+ \or\kern -.02em% 3
+ \or\kern -.08em% 4
+ \or\kern -.01em% 5
+ \or\kern -.03em% 6
+ \or\kern .02em% 7
+ \fi%
+\textde{#3}% denominator [#3]
+}%
}
+\DeclareRobustCommand{\tlfstyle}{%
+ \not@math@alphabet\tlfstyle\relax
+ \fontfamily{XCharter-TLF}\selectfont }
\DeclareRobustCommand{\lfstyle}{%
\not@math@alphabet\lfstyle\relax
- \fontfamily{XCharter-TLF}\selectfont }
+ \fontfamily{XCharter-LF}\selectfont }
+\DeclareRobustCommand{\tosfstyle}{%
+ \not@math@alphabet\tosfstyle\relax
+ \fontfamily{XCharter-TOsF}\selectfont }
\DeclareRobustCommand{\osfstyle}{%
\not@math@alphabet\osfstyle\relax
- \fontfamily{XCharter-TOsF}\selectfont }
-\def\textlf#1{{\lfstyle #1}}
-%\def\textosf#1{{\osfstyle #1}}
-\edef\XCh@dfltfigurestyle{TLF}
-
-\newcommand*{\XCharter@scale}{1}
-\IfFileExists{xkeyval.sty}{
- \RequirePackage{xkeyval}
- \DeclareOptionX{scale}{\renewcommand*{\XCharter@scale}{##1}}
- \DeclareOptionX{scaled}{\renewcommand*{\XCharter@scale}{##1}}
-}{
- \let\DeclareOptionX\DeclareOption
- \let\ExecuteOptionsX\ExecuteOptions
- \let\ProcessOptionsX\ProcessOptions
-}
-\let\orig@footnote=\thefootnote
-\let\orig@makefnmark=\@makefnmark
-\def\XCh@foresolidus{-.02em}
-\def\XCh@aftsolidus{-.02em}
-%\newif\ifXCh@babel
-%\ifdefined\bbl@tempa \XCh@babeltrue\fi
-\newif\if@XCh@scosf
-\newif\if@XCh@srb
-\newif\ifXCh@thrm
+ \fontfamily{XCharter-OsF}\selectfont }
+\fi % type1
-\def\XCharter@altone{1}% default is to use 1, not I
-\newif\if@XCh@sups
-\DeclareOptionX{foresolidus}{\gdef\XCh@foresolidus{#1}}
-\DeclareOptionX{aftsolidus}{\gdef\XCh@aftsolidus{#1}}
-\DeclareOptionX{lf}{\edef\XCharter@figurestyle{TLF}}
-\DeclareOptionX{lining}{\edef\XCharter@figurestyle{TLF}}
-\DeclareOptionX{oldstyle}{\edef\XCharter@figurestyle{TOsF}%
-\edef\XCharter@altone{1}}
-\DeclareOptionX{oldstyleI}{\edef\XCharter@figurestyle{TOsF}%
-\edef\XCharter@altone{}}
-\DeclareOptionX{theoremfont}{\XCh@thrmtrue}
-\DeclareOptionX{osf}{\edef\XCharter@figurestyle{TOsF}\edef\XCharter@altone{1}}
-\DeclareOptionX{osfI}{\edef\XCharter@figurestyle{TOsF}\edef\XCharter@altone{}}
-\DeclareOptionX{sups}{\@XCh@supstrue}
-\DeclareOptionX{scosf}{\@XCh@scosftrue}
-\DeclareOptionX{serbianc}{\@XCh@srbtrue}
-
-\edef\bfseries@rm{b}
-\edef\mdseries@rm{m}
-\ExecuteOptionsX{lining}
-\ProcessOptionsX\relax
+%\DeclareRobustCommand{\textlf}[1]{%
+% {\lfstyle #1}%
+%}% to get lf
+%\DeclareRobustCommand{\texttlf}[1]{%
+% {\tlfstyle #1}%
+%}% to get tlf
+%\DeclareRobustCommand{\textosf}[1]{%
+% {\osfstyle #1}%
+%}% to get osf
+%\DeclareRobustCommand{\texttosf}[1]{%
+% {\tosfstyle #1}%
+%}% to get tosf
+
+%\newcommand*{\XCharter@scale}{1}
+%\RequirePackage{xkeyval}
+%\DeclareOptionX{scale}{\renewcommand*{\XCharter@scale}{##1}}
+%\DeclareOptionX{scaled}{\renewcommand*{\XCharter@scale}{##1}}
+%\let\orig@footnote=\thefootnote
+%\let\orig@makefnmark=\@makefnmark
+%\def\XCh@foresolidus{-.02em}
+%\def\XCh@aftsolidus{-.02em}
+%
+%\newif\if@XCh@scosf
+%\newif\if@XCh@srb
+%\def\XCharter@altone{1}% default is to use 1, not I
+%%\newif\if@XCh@sups
+%%\DeclareOptionX{foresolidus}{\gdef\XCh@foresolidus{#1}}
+%%\DeclareOptionX{aftsolidus}{\gdef\XCh@aftsolidus{#1}}
+%%\DeclareOptionX{tabular}{\def\XCharter@figurealign{T}}
+%%\DeclareOptionX{lf}{\def\XCharter@figurestyle{LF}}
+%%\DeclareOptionX{lining}{\edef\XCharter@figurestyle{LF}}
+%%\DeclareOptionX{oldstyle}{\def\XCharter@figurestyle{OsF}%\def\XCharter@figurealign{}\def\XCharter@altone{1}}
+%\DeclareOptionX{oldstyleI}{\def\XCharter@figurestyle{OsF}\def\XCharter@figurealign{}\def\XCharter@altone{}}
+%%\DeclareOptionX{osf}{\def\XCharter@figurestyle{OsF}\def\XCharter@figurealign{}\def\XCharter@altone{1}}
+%\DeclareOptionX{osfI}{\def\XCharter@figurestyle{OsF}\def\XCharter@figurealign{}\def\XCharter@altone{}}
+%\DeclareOptionX{sups}{\@XCh@supstrue}
+%\DeclareOptionX{scosf}{\@XCh@scosftrue}
+%\DeclareOptionX{serbianc}{\@XCh@srbtrue}
+%
+%\edef\bfseries@rm{b}
+%\edef\mdseries@rm{m}
+%\ExecuteOptionsX{lining,tabular}
+%\ProcessOptionsX\relax
-\def\useosf{\edef\XCharter@figurestyle{TOsF}\def\XCharter@altone{1}}
-\def\useosfI{\edef\XCharter@figurestyle{TOsF}\def\XCharter@altone{}}
+\def\useosf{\xch@liningfalse\def\XCharter@altone{1}}
+\def\useosfI{\xch@liningfalse\def\XCharter@altone{}}
\@onlypreamble\useosf
\@onlypreamble\useosfI
+\def\useproportional{\xch@tabularfalse}
+\@onlypreamble\useproportional
%\newcommand{\textosfI}[1]{\oldstylenums{#1}}% to get XCharter osfI
-\newcommand{\textosf}[1]{{\fontencoding{T1}\fontfamily{XCharterx}\selectfont #1}}% to get XCharter osf
-\newcommand{\textosfI}[1]{{\fontencoding{T1}\fontfamily{XChartery}\selectfont #1}}% to get XCharter osfI
-
-\ifXCh@thrm
- %\RequirePackage{amsmath,amsthm} % in case of theoremfont
- \ifdefined\newtheoremstyle %amsthm and ntheorem, not theorem.sty
- \@ifpackageloaded{ntheorem}\relax{%
- \newtheoremstyle{plain}
- {\medskipamount} % ABOVESPACE, was \topsep
- {\medskipamount} % BELOWSPACE, was \topsep
- {\thfamily} % BODYFONT--\thfamily is italic with upright figures and punctuation
- {} % INDENT (empty value is the same as 0pt)
- {\bfseries} % HEADFONT--you may want to add \tlfstyle so the number is tab lining, regardless of text figure selection
- {.} % HEADPUNCT
- {5pt plus 1pt minus 1pt} % HEADSPACE
- {} % CUSTOM-HEAD-SPEC\newtheorem{thm}{Theorem}[section]
- } % end @ifpackageloaded
- \fi%
-\fi%}
+%\newcommand{\textosf}[1]{{\fontencoding{T1}\fontfamily{XCharterx}\selectfont #1}}% to get XCharter osf
+%\newcommand{\textosfI}[1]{{\fontencoding{T1}\fontfamily{XChartery}\selectfont #1}}% to get XCharter osfI
\renewcommand*{\bfdefault}{b}
\renewcommand*{\scdefault}{sc}% for better compatibility with mathdesign
% The following are provided so that we may access osf in any mode
% osfx corresponds to small 1 rather than small I
-\DeclareFontFamily{T1}{XCharterx}{}
-
-\DeclareFontShape{T1}{XCharterx}{m}{n}{
- <-> s*[\XCharter@scale] XCharter1-Roman-tosf-t1
-}{}
-\DeclareFontShape{T1}{XCharterx}{m}{it}{
- <-> s*[\XCharter@scale] XCharter1-Italic-tosf-t1
-}{}
-\DeclareFontShape{T1}{XCharterx}{b}{n}{
- <-> s*[\XCharter@scale] XCharter1-Bold-tosf-t1
-}{}
-\DeclareFontShape{T1}{XCharterx}{b}{it}{
- <-> s*[\XCharter@scale] XCharter1-BoldItalic-tosf-t1
-}{}
-% osfy corresponds to small I rather than small 1
-\DeclareFontFamily{T1}{XChartery}{}
-
-\DeclareFontShape{T1}{XChartery}{m}{n}{
- <-> s*[\XCharter@scale] XCharter-Roman-tosf-t1
-}{}
-\DeclareFontShape{T1}{XChartery}{m}{it}{
- <-> s*[\XCharter@scale] XCharter-Italic-tosf-t1
-}{}
-\DeclareFontShape{T1}{XChartery}{b}{n}{
- <-> s*[\XCharter@scale] XCharter-Bold-tosf-t1
-}{}
-\DeclareFontShape{T1}{XChartery}{b}{it}{
- <-> s*[\XCharter@scale] XCharter-BoldItalic-tosf-t1
-}{}
+%\DeclareFontFamily{T1}{XCharterx}{}
+%
+%\DeclareFontShape{T1}{XCharterx}{m}{n}{
+% <-> s*[\XCharter@scale] XCharter1-Roman-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XCharterx}{m}{it}{
+% <-> s*[\XCharter@scale] XCharter1-Italic-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XCharterx}{m}{sl}{
+% <-> s*[\XCharter@scale] XCharter1-Slanted-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XCharterx}{b}{n}{
+% <-> s*[\XCharter@scale] XCharter1-Bold-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XCharterx}{b}{it}{
+% <-> s*[\XCharter@scale] XCharter1-BoldItalic-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XCharterx}{b}{sl}{
+% <-> s*[\XCharter@scale] XCharter1-BoldSlanted-osf-t1
+%}{}
+%% osfy corresponds to small I rather than small 1
+%\DeclareFontFamily{T1}{XChartery}{}
+%
+%\DeclareFontShape{T1}{XChartery}{m}{n}{
+% <-> s*[\XCharter@scale] XCharter-Roman-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XChartery}{m}{it}{
+% <-> s*[\XCharter@scale] XCharter-Italic-osf-t1
+%}{}
+%DeclareFontShape{T1}{XChartery}{m}{sl}{
+% <-> s*[\XCharter@scale] XCharter-Slanted-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XChartery}{b}{n}{
+% <-> s*[\XCharter@scale] XCharter-Bold-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XChartery}{b}{it}{
+% <-> s*[\XCharter@scale] XCharter-BoldItalic-osf-t1
+%}{}
+%\DeclareFontShape{T1}{XChartery}{b}{sl}{
+% <-> s*[\XCharter@scale] XCharter-BoldSlanted-osf-t1
+%}{}
\renewcommand*{\rmdefault}{XCharter-TLF}
\renewcommand*{\familydefault}{\rmdefault}
-\if@XCh@scosf %
+\ifxch@scosf %
\DeclareRobustCommand{\textsc}[1]{%
-{\fontfamily{XCharter-TOsF}\fontshape{sc}\selectfont #1}%
+{\fontfamily{XCharter-OsF}\fontshape{sc}\selectfont #1}%
}\fi% use OsF in small caps
\DeclareRobustCommand{\textruble}{\rlap{\kern.03em\rule[.258em]{.1em}{.032em}}\rlap{\kern.03em\rule[.173em]{.41em}{.032em}}{\scalefont{.966}P}}
-
-\DeclareTextCommand{\textcircled}{TS1}[1]{%
-\hmode@bgroup
- \ooalign{%
- \hfil \raise .32ex\hbox {\fontencoding{T1}\fontfamily{XCharter-TOsF}\fontseries{m}\fontshape{sc}\selectfont\scalefont{.75}\lowercase{#1}}\hfil \crcr
- \char 79 %\textbigcircle
- }%
- \egroup}
+\let\textcircled\@nil
+%\let\csname TS1\textcircled\@nil
+\DeclareRobustCommand{\textcircled}[1]{%
+\hmode@bgroup%
+\ifnum`#1>`9\relax%
+\def\y{.3ex}\def\x{\scshape\lowercase{#1}}%
+\else%
+\def\y{.19ex}\def\x{\liningnums#1}%
+\fi%
+\mbox{%
+\ooalign{%
+\hfil\raise\y\hbox{\scalefont{.78}\x}\hfil\crcr%
+{\usefont{TS1}{XCharter-TLF}{m}{n}\char79}%\textbigcircle
+}}%
+\egroup}
+%\expandafter\show\csname textcircled \endcsname
%\DeclareTextCommand{\textcircled}{TS1}[1]{\hmode@bgroup
% \ooalign{%
@@ -221,7 +433,7 @@
% }%
% \egroup}
-\if@XCh@sups %
+\ifxch@sups %
\ifdefined\sufigures
\def\f@@tn@te{footnote}
\def\@makefnmark{%
@@ -237,41 +449,281 @@
\fi%
\fi
-%\AtEndPreamble{%
-%\renewcommand*{\rmdefault}{XCharter-\XCharter@figurestyle}
-%\normalfont}
+%%%% set the style for theoremfont---either osf or tlf
+\def\xch@thfigurestyle{\XCharter@figurestyle}
+\ifx\XCharter@figurestyle\xch@dfltfigurestyle
+ \def\xch@thfigurestyle{tlf}
+\else
+ \def\xch@thfigurestyle{osf}
+\fi
+\if l\xch@thmlin \def\xch@thfigurestyle{tlf}\fi% force lining
-%\ifXCh@babel
-% \renewcommand*{\rmdefault}{XCharter-\XCharter@figurestyle}
-% \normalfont
-%\else
+\ifxch@otftext
+ \ifthenelse{\equal{\xch@thfigurestyle}{tlf}}{%
+ \def\xch@fa{Monospaced}\def\xch@sty{Lining}}{%
+ \def\xch@fa{Proportional}\def\xch@sty{OldStyle}}
+% \DeclareTextFontCommand{%
+% \slshape}{\addfontfeatures{Numbers = {\xch@nft,\xch@sty}, RawFeature=+salt}\itshape} % for theorems
+ \DeclareTextFontCommand{\textsl}{\slshape}
+
+ \DeclareRobustCommand{\lfstyle}{%
+ \not@math@alphabet\lfstyle\relax
+ \addfontfeatures{Numbers={Proportional,Lining}}%
+ }
+ \DeclareRobustCommand{\tlfstyle}{%
+ \not@math@alphabet\tlfstyle\relax
+ \addfontfeatures{Numbers={Monospaced,Lining}}%
+ }
+ \DeclareRobustCommand{\osfstyle}{%
+ \not@math@alphabet\osfstyle\relax
+ \addfontfeatures{Numbers={Proportional,OldStyle}}%
+ }
+ \DeclareRobustCommand{\tosfstyle}{%
+ \not@math@alphabet\tosfstyle\relax
+ \addfontfeatures{Numbers={Monospaced,OldStyle}}%
+ }
+ \DeclareRobustCommand{\oldstylenums}{%
+ \not@math@alphabet\oldstylenums\relax
+ \addfontfeatures{Numbers=OldStyle}%
+ }
+ \DeclareRobustCommand{\liningnums}{%
+ \not@math@alphabet\liningnums\relax
+ \addfontfeatures{Numbers=Lining}%
+ }
+ \DeclareRobustCommand{\tabularnums}{%
+ \not@math@alphabet\tabularnums\relax
+ \addfontfeatures{Numbers=Monospaced}%
+ }
+ \DeclareRobustCommand{\proportionalnums}{%
+ \not@math@alphabet\proportionalnums\relax
+ \addfontfeatures{Numbers=Proportional}%
+ }
-\DeclareRobustCommand\thfamily % new family for theorem font
+%% \newfontfamily\xchTLF
+% [ %IgnoreFontspecFile ,
+% Numbers = {Monospaced,Lining},
+% Scale = \XCharter@scale ,
+% UprightFont = *-Roman ,
+% ItalicFont = *-Italic ,
+% %SlantedFont = *-Slanted ,
+% BoldFont = *-Bold ,
+% BoldItalicFont = *-BoldItalic ,
+% % BoldSlantedFont= *-BoldSlanted ,
+% ] {\xch@base}
+% \newfontfamily\xchTOsF
+% [ %IgnoreFontspecFile ,
+% Numbers = {Monospaced,OldStyle} ,
+% Scale = \XCharter@scale ,
+% UprightFont = *-Roman ,
+% ItalicFont = *-Italic ,
+% %SlantedFont = *-Slanted ,
+% BoldFont = *-Bold ,
+% BoldItalicFont = *-BoldItalic ,
+% %BoldSlantedFont= *-BoldSlanted ,
+% ] {\xch@base}
+% \newfontfamily\xchOsF
+% [ %IgnoreFontspecFile ,
+% Numbers = {Proportional,OldStyle} ,
+% Scale = \XCharter@scale ,
+% UprightFont = *-Roman ,
+% ItalicFont = *-Italic ,
+% %SlantedFont = *-Slanted ,
+% BoldFont = *-Bold ,
+% BoldItalicFont = *-BoldItalic ,
+% %BoldSlantedFont= *-BoldSlanted ,
+% ] {\xch@base}
+% \newfontfamily\xchLF
+% [ %IgnoreFontspecFile ,
+% Numbers = {Proportional,Lining} ,
+% Scale = \XCharter@scale ,
+% UprightFont = *-Roman ,
+% ItalicFont = *-Italic ,
+% %SlantedFont = *-Slanted ,
+% BoldFont = *-Bold ,
+% BoldItalicFont = *-BoldItalic ,
+% %BoldSlantedFont= *-BoldSlanted ,
+% ] {\xch@base}
+ \providecommand\nufigures{\addfontfeatures{RawFeature=+numr}}
+ \providecommand\sufigures{\addfontfeatures{VerticalPosition=Superior}}
+ \providecommand\defigures{\addfontfeatures{RawFeature=+dnom}}
+\providecommand\infigures{\addfontfeatures{VerticalPosition=Inferior}}
+ \let\nustyle\nufigures
+ \DeclareTextFontCommand{\textnu}{\nufigures}
+ \let\destyle\defigures
+ \DeclareTextFontCommand{\textsu}{\sufigures}
+ \let\textsuperior\textsu
+ \DeclareTextFontCommand{\textde}{\defigures}
+ \let\textdenominator\textde
+ \DeclareTextFontCommand{\textinf}{\infigures}
+ \let\textinferior\textinf
+
+ \ifxch@sups %
+ \usepackage{realscripts}
+ %\newfontfamily\Timessu{TeXGyreTermesX}
+
+ \ifxch@KOMA
+ \setkomafont{footnotelabel}{\normalfont}
+ \else
+ \renewcommand*{\footnotemarkfont}{\normalfont}
+ \fi
+ \fi
+% \newcommand{\thfamily}%{\@nameuse{ntx\ntx@figurestyle}%
+% {\itshape\addfontfeatures{%
+% Numbers={\XCharter@figurealign,\xch@sty} ,
+% RawFeature=+ss05}
+ %} % for theorems
+\else % type1
+ \DeclareRobustCommand{\thfamily} % new family for theorem font
{\not@math@alphabet\thfamily\relax
- \fontfamily\thdefault\fontshape{it}\selectfont}
-\DeclareRobustCommand{\textth}[1]{%
- {\thfamily #1}%
-}
+ \fontfamily\thdefault\selectfont}
+% \DeclareRobustCommand{\textth}[1]{%
+% {\thfamily #1}%
+%}
+%\let\textthit\textth
+ \renewcommand*{\rmdefault}{XCharter-TLF} % always TLF in math
+ \renewcommand*{\familydefault}{\rmdefault}
+
+ \ifxch@sups %
+ \ifxch@KOMA %
+ \else % not KOMA
+ \ifdefined\sufigures
+ \def\f@@tn@te{footnote}
+ \def\@makefnmark{%
+ \ifx\@mpfn\f@@tn@te%
+ \ifx\thefootnote\orig@footnote%
+ \hbox{\sufigures\hspace*{.04em}\@thefnmark\hspace*{.04em}}%
+ \else%
+ \orig@makefnmark%
+ \fi
+ \else%
+ \orig@makefnmark%
+ \fi}%
+ \fi%
+ \fi
+ \fi
+\fi % type1
+
+\ifxch@otftext
+% \AtEndPreamble{%
+ \ifxch@lining
+ \def\xch@figurestyle{Lining}
+ \else
+ \def\xch@figurestyle{OldStyle}
+ \fi
+ \ifxch@tabular
+ \def\xch@figurealign{Monospaced}
+ \else
+ \def\xch@figurealign{Proportional}
+ \fi
+
+ \setmainfont
+ [%IgnoreFontspecFile ,
+ Extension = .otf ,
+ %Path = ./ ,
+ Numbers = {\xch@figurealign,\xch@figurestyle},
+ Scale = \XCharter@scale ,
+ UprightFont = *-Roman ,
+ ItalicFont = *-Italic ,
+ SlantedFont = *-Slanted ,
+ BoldFont = *-Bold ,
+ BoldItalicFont = *-BoldItalic ,
+ BoldSlantedFont= *-BoldSlanted ,
+ SmallCapsFeatures={Letters=SmallCaps} ,
+ ] {\xch@base}
+\def\xch@sty{\xch@figurestyle}\def\xch@fa{\xch@figurealign}
+ \if l\xch@thmlin\def\xch@sty{Lining}\def\xch@fa{Tabular}\fi
+ \newcommand{\thfamily}%{\@nameuse{ntx\ntx@figurestyle}%
+ {\itshape\addfontfeatures{%
+ Numbers={\xch@fa,\xch@sty} ,
+ RawFeature=+ss05}
+ } % for theorems
+\newfontface\circledtxt{\xch@base-Roman}
+ [%IgnoreFontspecFile ,
+ Scale = \XCharter@scale ,
+ %Numbers = {Monospaced,OldStyle} ,
+ SmallCapsFeatures={Letters=SmallCaps} ,
+ ]
+ \ifxch@scosf%
+ \edef\xch@fnt{\expandafter\csname xch\ifxch@tabular T\fi OsF\endcsname}
+ \DeclareRobustCommand{\textsc}[1]{%
+ {\xch@fnt \addfontfeatures{RawFeature=+smcp}#1}}%
+%\show\xch@fnt
+ \fi
+\let\textthit\textth
+%}
+\else % type1
+ \AtEndPreamble{%
+ \ifxch@tabular
+ \def\XCharter@figurealign{T}
+ \else
+ \def\XCharter@figurealign{}
+ \fi
+ \ifxch@lining
+ \def\XCharter@figurestyle{LF}
+ \else
+ \def\XCharter@figurestyle{OsF}
+ \fi
+ \DeclareRobustCommand{\oldstylenums}{%
+ \not@math@alphabet\oldstylenums\relax
+ \fontfamily{XCharter-\XCharter@figurealign OsF}\selectfont }
+ \DeclareRobustCommand{\liningnums}{%
+ \not@math@alphabet\liningnums\relax
+ \fontfamily{XCharter-\XCharter@figurealign LF}\selectfont }
+ \DeclareRobustCommand{\tabularnums}{%
+ \not@math@alphabet\tabularnums\relax
+ \fontfamily{XCharter-T\XCharter@figurestyle}\selectfont }
+ \DeclareRobustCommand{\proportionalnums}{%
+ \not@math@alphabet\proportionalnums\relax
+ \fontfamily{XCharter-\XCharter@figurestyle}\selectfont }
+% \DeclareRobustCommand{\textosfI}[1]{%
+%{\fontfamily{XCharter-OsF}\fontshape{sc}\selectfont #1}%
+%}
+ \ifxch@scosf %
+ \DeclareRobustCommand{\textsc}[1]{%
+ {\fontfamily{XCharter-\XCharter@figurealign%
+ OsF}\fontshape{sc}\selectfont #1}%
+ }\fi% use OsF in small caps
+ \renewcommand*{\rmdefault}{XCharter-\XCharter@figurealign%
+ \XCharter@figurestyle}
+
+ \newcommand*{\thdefault}{XCharterTH-\xch@thfigurestyle}
+ \normalfont
+ \renewcommand*{\familydefault}{\rmdefault}
\let\textthit\textth
+ }
+\fi
-\AtEndPreamble{%
-\renewcommand*{\rmdefault}{XCharter-\XCharter@figurestyle}
-%\def\XCharter@thfigurestyle{\XCharter@figurestyle}
-\ifx\XCharter@figurestyle\XCh@dfltfigurestyle
- \def\XCharter@thfigurestyle{tlf}
-\else
- \def\XCharter@thfigurestyle{osf}
-\fi % there just two possible figure styles for the theorem font
+%both
+\DeclareTextFontCommand{\textosf}{\osfstyle}
+\DeclareTextFontCommand{\texttosf}{\tosfstyle}
+\DeclareTextFontCommand{\texttlf}{\tlfstyle}
+\DeclareTextFontCommand{\textlf}{\lfstyle}
-\newcommand*{\thdefault}{XCharterTH-\XCharter@thfigurestyle}
-\ifXCh@thrm
- \@ifundefined{theoremstyle}{}{%
+\ifxch@thrm
+ \@ifundefined{theoremstyle}{}{%
\theoremstyle{plain}
- \patchcmd{\th@plain}{\itshape}{\thfamily}{\message{Replaced itshape by thfamily in theorem style plain.}}{\message{Unable to replace itshape by thfamily in theorem style plain.}}
-}
+ \patchcmd{\th@plain}{\itshape}{\thfamily}{%
+ %\message{Replaced itshape by thfamily in theorem style plain.}
+ }{%
+ %\message{Unable to replace itshape by thfamily in theorem style plain.}
+ }}
+ \ifdefined\newtheoremstyle %amsthm and ntheorem, not theorem.sty
+ \@ifpackageloaded{ntheorem}\relax{%
+ \newtheoremstyle{plain}
+ {\medskipamount} % ABOVESPACE, was \topsep
+ {\medskipamount} % BELOWSPACE, was \topsep
+ {\thfamily} % BODYFONT--\thfamily is italic with upright figures and punctuation
+ {} % INDENT (empty value is the same as 0pt)
+ {\bfseries} % HEADFONT--you may want to add \tlfstyle so the number is tab lining, regardless of text figure selection
+ {.} % HEADPUNCT
+ {5pt plus 1pt minus 1pt} % HEADSPACE
+ {} % CUSTOM-HEAD-SPEC\newtheorem{thm}{Theorem}[section]
+ } % end @ifpackageloaded
+ \fi%
\fi
-\normalfont}
-%\fi
-
+\DeclareRobustCommand{\textth}[1]{%
+ {\thfamily #1}%
+}
+%
\endinput
diff --git a/fonts/xcharter/tex/ly1minxcharter.fd b/fonts/xcharter/tex/ly1minxcharter.fd
new file mode 100644
index 0000000000..384b153d22
--- /dev/null
+++ b/fonts/xcharter/tex/ly1minxcharter.fd
@@ -0,0 +1,88 @@
+%% Generated by msharpe on 2022/01/20
+%%
+\ProvidesFile{ly1minxcharter.fd}
+ [2022/01/20 (msharpe) Font definitions for LY1/minxcharter.]
+
+\def\@textscalefactor{.98}
+%xcharter must be reduced by factor .93 to match xheight of newtxmath
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{LY1}{minxcharter}{}
+
+\DeclareFontShape{LY1}{minxcharter}{b}{sc}{
+ <-> \ntxmath@scaled XCharter-Bold-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{b}{it}{
+ <-> \ntxmath@scaled XCharter-BoldItalic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{b}{scit}{
+ <-> \ntxmath@scaled XCharter-BoldItalic-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{b}{sl}{
+ <-> \ntxmath@scaled XCharter-BoldSlanted-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{b}{n}{
+ <-> \ntxmath@scaled XCharter-Bold-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{b}{scsl}{
+ <-> \ntxmath@scaled XCharter-BoldSlanted-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{m}{sl}{
+ <-> \ntxmath@scaled XCharter-Slanted-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{m}{scsl}{
+ <-> \ntxmath@scaled XCharter-Slanted-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{m}{n}{
+ <-> \ntxmath@scaled XCharter-Roman-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{m}{scit}{
+ <-> \ntxmath@scaled XCharter-Italic-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{m}{sc}{
+ <-> \ntxmath@scaled XCharter-Roman-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{m}{it}{
+ <-> \ntxmath@scaled XCharter-Italic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{bx}{sc}{
+ <-> ssub * minxcharter/b/sc
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{bx}{it}{
+ <-> ssub * minxcharter/b/it
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{bx}{scit}{
+ <-> ssub * minxcharter/b/scit
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{bx}{sl}{
+ <-> ssub * minxcharter/b/sl
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{bx}{n}{
+ <-> ssub * minxcharter/b/n
+}{}
+
+\DeclareFontShape{LY1}{minxcharter}{bx}{scsl}{
+ <-> ssub * minxcharter/b/scsl
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/ot1minxcharter.fd b/fonts/xcharter/tex/ot1minxcharter.fd
new file mode 100644
index 0000000000..61cf62c283
--- /dev/null
+++ b/fonts/xcharter/tex/ot1minxcharter.fd
@@ -0,0 +1,88 @@
+%% Generated by msharpe on 2022/01/20
+%%
+\ProvidesFile{ot1minxcharter.fd}
+ [2022/01/20 (msharpe) Font definitions for OT1/minxcharter.]
+
+\def\@textscalefactor{.98}
+%xcharter must be reduced by factor .93 to match xheight of newtxmath
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{OT1}{minxcharter}{}
+
+\DeclareFontShape{OT1}{minxcharter}{b}{sc}{
+ <-> \ntxmath@scaled XCharter-Bold-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{b}{it}{
+ <-> \ntxmath@scaled XCharter-BoldItalic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{b}{scit}{
+ <-> \ntxmath@scaled XCharter-BoldItalic-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{b}{sl}{
+ <-> \ntxmath@scaled XCharter-BoldSlanted-tlf-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{b}{scsl}{
+ <-> \ntxmath@scaled XCharter-BoldSlanted-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{b}{n}{
+ <-> \ntxmath@scaled XCharter-Bold-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{m}{scsl}{
+ <-> \ntxmath@scaled XCharter-Slanted-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{m}{n}{
+ <-> \ntxmath@scaled XCharter-Roman-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{m}{sl}{
+ <-> \ntxmath@scaled XCharter-Slanted-tlf-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{m}{scit}{
+ <-> \ntxmath@scaled XCharter-Italic-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{m}{it}{
+ <-> \ntxmath@scaled XCharter-Italic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{m}{sc}{
+ <-> \ntxmath@scaled XCharter-Roman-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{bx}{sc}{
+ <-> ssub * minxcharter/b/sc
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{bx}{it}{
+ <-> ssub * minxcharter/b/it
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{bx}{scit}{
+ <-> ssub * minxcharter/b/scit
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{bx}{sl}{
+ <-> ssub * minxcharter/b/sl
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{bx}{scsl}{
+ <-> ssub * minxcharter/b/scsl
+}{}
+
+\DeclareFontShape{OT1}{minxcharter}{bx}{n}{
+ <-> ssub * minxcharter/b/n
+}{}
+
+\endinput
diff --git a/fonts/xcharter/tex/t1minxcharter.fd b/fonts/xcharter/tex/t1minxcharter.fd
new file mode 100644
index 0000000000..09d7b4a076
--- /dev/null
+++ b/fonts/xcharter/tex/t1minxcharter.fd
@@ -0,0 +1,88 @@
+%% Generated by msharpe on 2022/01/20
+%%
+\ProvidesFile{t1minxcharter.fd}
+ [2022/01/20 (msharpe) Font definitions for T1/minxcharter.]
+
+\def\@textscalefactor{.98}
+%xcharter must be reduced by factor .93 to match xheight of newtxmath
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{T1}{minxcharter}{}
+
+\DeclareFontShape{T1}{minxcharter}{m}{sl}{
+ <-> \ntxmath@scaled XCharter-Slanted-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{m}{scsl}{
+ <-> \ntxmath@scaled XCharter-Slanted-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{m}{n}{
+ <-> \ntxmath@scaled XCharter-Roman-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{m}{sc}{
+ <-> \ntxmath@scaled XCharter-Roman-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{m}{it}{
+ <-> \ntxmath@scaled XCharter-Italic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{m}{scit}{
+ <-> \ntxmath@scaled XCharter-Italic-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{b}{sc}{
+ <-> \ntxmath@scaled XCharter-Bold-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{b}{it}{
+ <-> \ntxmath@scaled XCharter-BoldItalic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{b}{scit}{
+ <-> \ntxmath@scaled XCharter-BoldItalic-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{b}{sl}{
+ <-> \ntxmath@scaled XCharter-BoldSlanted-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{b}{n}{
+ <-> \ntxmath@scaled XCharter-Bold-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{b}{scsl}{
+ <-> \ntxmath@scaled XCharter-BoldSlanted-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{bx}{sc}{
+ <-> ssub * minxcharter/b/sc
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{bx}{it}{
+ <-> ssub * minxcharter/b/it
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{bx}{scit}{
+ <-> ssub * minxcharter/b/scit
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{bx}{sl}{
+ <-> ssub * minxcharter/b/sl
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{bx}{n}{
+ <-> ssub * minxcharter/b/n
+}{}
+
+\DeclareFontShape{T1}{minxcharter}{bx}{scsl}{
+ <-> ssub * minxcharter/b/scsl
+}{}
+
+\endinput