summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/csplain/fonts
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/csplain/fonts')
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cavantga.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cbookman.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/chelvet.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cncent.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cpalatin.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex65
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-antt.tex90
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-arev.tex29
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-bera.tex53
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex66
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-charter.tex33
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex67
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-heros.tex298
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex66
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-polta.tex133
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-schola.tex66
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-termes.tex66
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/ctimes.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/ff-mac.tex148
19 files changed, 821 insertions, 389 deletions
diff --git a/Master/texmf-dist/tex/csplain/fonts/cavantga.tex b/Master/texmf-dist/tex/csplain/fonts/cavantga.tex
index 0ee89f56310..fd1276c0412 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cavantga.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cavantga.tex
@@ -24,8 +24,6 @@
\ifx\font\corkencoded \else \input chars-8z \fi
-\ifx\mathpreloaded X\else \input tx-math \fi
-
\let\setsimplemath=\relax % this command is obsolete
% The \TeX logo corrected by Ivo Jancik for AvantGarde fonts family
@@ -33,4 +31,7 @@
\ifx\origTeX\undefined \let\origTeX=\TeX \fi
\let\TeX=\agTeX
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+
% end of cavantga.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/cbookman.tex b/Master/texmf-dist/tex/csplain/fonts/cbookman.tex
index 5fa2a157dc9..0cc2266d9a9 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cbookman.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cbookman.tex
@@ -24,8 +24,6 @@
\ifx\font\corkencoded \else \input chars-8z \fi
-\ifx\mathpreloaded X\else \input tx-math \fi
-
\let\setsimplemath=\relax % this command is obsolete
% The \TeX logo corrected by Ivo Jancik for Bookman fonts family
@@ -33,4 +31,7 @@
\ifx\origTeX\undefined \let\origTeX=\TeX \fi
\let\TeX=\bmTeX
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+
% end of cbookman.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/chelvet.tex b/Master/texmf-dist/tex/csplain/fonts/chelvet.tex
index 3209362ced3..85a5cb7c1e9 100644
--- a/Master/texmf-dist/tex/csplain/fonts/chelvet.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/chelvet.tex
@@ -52,8 +52,6 @@
\ifx\font\corkencoded \else \input chars-8z \fi
-\ifx\mathpreloaded X\else \input tx-math \fi
-
\let\setsimplemath=\relax % this command is obsolete
% The \TeX logo corrected by Ivo Jancik for Helvetica fonts family
@@ -61,4 +59,7 @@
\ifx\origTeX\undefined \let\origTeX=\TeX \fi
\let\TeX=\hvTeX
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+
% end of chelvet.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/cncent.tex b/Master/texmf-dist/tex/csplain/fonts/cncent.tex
index 9a180a76776..dc73e350851 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cncent.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cncent.tex
@@ -24,8 +24,6 @@
\ifx\font\corkencoded \else \input chars-8z \fi
-\ifx\mathpreloaded X\else \input tx-math \fi
-
\let\setsimplemath=\relax % this command is obsolete
% The \TeX logo corrected by Ivo Jancik for NewCentury fonts family
@@ -33,4 +31,7 @@
\ifx\origTeX\undefined \let\origTeX=\TeX \fi
\let\TeX=\ncTeX
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+
% end of cncent.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/cpalatin.tex b/Master/texmf-dist/tex/csplain/fonts/cpalatin.tex
index 8fe9b45ce3f..5a27e50558b 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cpalatin.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cpalatin.tex
@@ -24,8 +24,6 @@
\ifx\font\corkencoded \else \input chars-8z \fi
-\ifx\mathpreloaded X\else \input tx-math \fi
-
\let\setsimplemath=\relax % this command is obsolete
% The \TeX logo corrected by Ivo Jancik for Palatino fonts family
@@ -33,4 +31,7 @@
\ifx\origTeX\undefined \let\origTeX=\TeX \fi
\let\TeX=\palTeX
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+
% end of cpalatin.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex b/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex
index 75c3e994890..5bece955b4b 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex
@@ -1,42 +1,53 @@
-% The file cs-adventor.tex (C) Petr Olsak, 2012
-% Use "\input cs-adventor" to set the Termes fonts family in text mode
+% The file cs-adventor.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-adventor" to set the TG Adventor font family in text mode
-\message{FONT: Adventor -
- \string\rm, \string\it, \string\bf, \string\bi, \string\caps\string\rm...}
+\ifx\ffdecl\undefined \input ff-mac \fi
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
+\ffdecl [TG Adventor] {\rm \bf \it \bi} {\caps} {} {TX} {8z 8t U}
-\ifx\font\unicoded \def\famname{texgyreadventor} \input unifam
-\else
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
-\font\tenrm=\tmp-qagr \sizespec
-\font\tenbf=\tmp-qagb \sizespec
-\font\tenit=\tmp-qagri \sizespec
-\font\tenbi=\tmp-qagbi \sizespec
+\ismacro\fotenc{8t}\ifttrue
-\font\tenrmc=\tmp-qagr-sc \sizespec
-\font\tenbfc=\tmp-qagb-sc \sizespec
-\font\tenitc=\tmp-qagri-sc \sizespec
-\font\tenbic=\tmp-qagbi-sc \sizespec
+ \font\tenrm = ec-qagr \sizespec
+ \font\tenbf = ec-qagb \sizespec
+ \font\tenit = ec-qagri \sizespec
+ \font\tenbi = ec-qagbi \sizespec
+
+ \def\ffnamegen{ec-qag\ffvarV\capsV}
\fi
-\tenrm
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-qagr \sizespec
+ \font\tenbf = cs-qagb \sizespec
+ \font\tenit = cs-qagri \sizespec
+ \font\tenbi = cs-qagbi \sizespec
+
+ \def\ffnamegen{cs-qag\ffvarV\capsV}
+ \input chars-8z
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{U}\iftrue
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
+ \font\tenrm = "[texgyreadventor-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyreadventor-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyreadventor-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyreadventor-bolditalic]:\fontfeatures" \sizespec
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \def\ffnamegen{"[texgyreadventor-\ffvarV]:\capsV\fontfeatures"}
-% end of cs-adventor.tex
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex b/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex
index 927ec4a8cf8..0ec9f50b1d6 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex
@@ -1,57 +1,47 @@
% cs-antt.tex: fonts loading file of Antykwa Torunska
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Petr Olsak, 2012
-
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
-
-\message{FONT: Antykwa Torunska -
- \string\rm, \string\it, \string\bf, \string\bi,
- \string\lr, \string\li, \string\mr, \string\mi,
- \string\caps\string\rm...}
-
-\font\tenrm=\tmp-anttr \sizespec
-\font\tenbf=\tmp-anttb \sizespec
-\font\tenit=\tmp-anttri \sizespec
-\font\tenbi=\tmp-anttbi \sizespec
-
-\font\tenlr=\tmp-anttl \sizespec \def\lr{\tenlr}
-\font\tenli=\tmp-anttli \sizespec \def\li{\tenli}
-\font\tenmr=\tmp-anttm \sizespec \def\mr{\tenmr}
-\font\tenmi=\tmp-anttmi \sizespec \def\mi{\tenmi}
-
-\font\tenrmc=\tmp-anttrcap \sizespec
-\font\tenbfc=\tmp-anttbcap \sizespec
-\font\tenitc=\tmp-anttricap \sizespec
-\font\tenbic=\tmp-anttbicap \sizespec
-
-\font\tenlrc=\tmp-anttlcap \sizespec
-\font\tenlic=\tmp-anttlicap \sizespec
-\font\tenmrc=\tmp-anttmcap \sizespec
-\font\tenmic=\tmp-anttmicap \sizespec
-
-\tenrm
-
-% You can use \cap\rm, \cap\bf, \cap\li
-
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
-
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenlr \regfont\tenli
- \regfont\tenmr \regfont\tenmi
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
- \regfont\tenlrc \regfont\tenlic
- \regfont\tenmrc \regfont\tenmic
+% Petr Olsak, 2012, 2016
+
+\ifx\ffdecl\undefined \input ff-mac \fi
+
+\ffdecl [Antykwa Torunska]
+ {\rm \bf \it \bi \lr \mr \li \mi} {} {\liweight} {TX} {8z 8t}
+
+\ffvars {r}{b}{ri}{bi}
+\def\wli{\ffvars{l}{m}{li}{mi}\ffsetX}
+\def\nowli{\ffvars{r}{b}{ri}{bi}\ffsetX}
+
+\ismacro\fotenc{8t}\ifttrue
+
+ \font\tenrm = ec-anttr \sizespec
+ \font\tenbf = ec-anttb \sizespec
+ \font\tenit = ec-anttri \sizespec
+ \font\tenbi = ec-anttbi \sizespec
+
+ \def\ffnamegen{ec-antt\ffvarV}
+
+\fi
+
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-anttr \sizespec
+ \font\tenbf = cs-anttb \sizespec
+ \font\tenit = cs-anttri \sizespec
+ \font\tenbi = cs-anttbi \sizespec
+
+ \def\ffnamegen{cs-antt\ffvarV}
+ \input chars-8z
+
\fi
+\tenrm % don't remember to initialize the family with normal font.
-\def\txr{cs-anttr} \def\txmi{mi-anttri}
-\def\txb{cs-anttb} \def\txbi{mi-anttbi}
+\def\liweight{\wli\fam}
+\def\lr{\wli\rm}
+\def\mr{\wli\bf}
+\def\li{\wli\it}
+\def\mi{\wli\bi}
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
+\ifx\loadmathfonts\relax \endinput \fi
\ifx\mathpreloaded X\else \input tx-math \fi
-% end of cs-antt.tex
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-arev.tex b/Master/texmf-dist/tex/csplain/fonts/cs-arev.tex
index 71df60b33ad..6ec209780bd 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-arev.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-arev.tex
@@ -1,21 +1,24 @@
% cs-arev.tex: fonts loading file of ArevSans
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Petr Olsak, 2012
+% Petr Olsak, 2012, 2016
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{8t \sizespec}\else
- \errmessage{ArevSans is unavailable at CS-encoding. use \noexpand\input t1code.}
-\fi
+\ifx\ffdecl\undefined \input ff-mac \fi
-\message{FONT: ArevSans -
- \string\rm, \string\it, \string\bf, \string\bi\space and math loaded.}
+\ffdecl [ArevSans] {\rm \bf \it \bi} {} {} {TX} {8t}
-\font\tenrm=favr\tmp
-\font\tenbf=favb\tmp
-\font\tenit=favri\tmp
-\font\tenbi=favbi\tmp
+\ismacro\fotenc{8t}\ifttrue
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \font\tenrm = favr8t \sizespec
+ \font\tenbf = favb8t \sizespec
+ \font\tenit = favri8t \sizespec
+ \font\tenbi = favbi8t \sizespec
+
+ \let\ffnamegen=\undefined % ... no modifiers
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
-% end of cs-arev.tex
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex b/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex
index c48d240a6e2..451ae6984ac 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex
@@ -2,40 +2,29 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Petr Olsak, 2012
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{8t \sizespec}\else
- \errhelp{If you like this font you can try to generate the 8z metrics.}
- \errmessage{Bera is unavailable at CS-encoding. use \noexpand\input t1code}
-\fi
+\ifx\ffdecl\undefined \input ff-mac \fi
+
+\ffdecl [Bera] {\rm \bf \it \bi} {\sans} {} {TX} {8t}
+
+\ffvars {r}{b}{ro}{bo}
+\def\sans{\ffsetV{sans}{s}\ffsetX} \def\nosans{\ffsetV{sans}{e}\ffsetX}
+\def\sansV{e}
+
+\ismacro\fotenc{8t}\ifttrue
+
+ \font\tenrm = fver8t \sizespec
+ \font\tenbf = fveb8t \sizespec
+ \font\tenit = fvero8t \sizespec
+ \font\tenbi = fvebo8t \sizespec
+
+ \def\ffnamegen{fv\sansV \ffvarV 8t}
-\message{FONT: Bera
- \string\rm, \string\it, \string\bf, \string\bi,
- \string\rms, \string\its, \string\bfs, \string\bis,
- \string\tt, \string\ttit, \string\ttbf, \string\ttbi.}
-
-\font\tenrm=fver\tmp
-\font\tenbf=fveb\tmp
-\font\tenit=fvero\tmp
-\font\tenbi=fvebo\tmp
-
-\font\tenrms=fvsr\tmp \def\rms{\tenrms}
-\font\tenbfs=fvsb\tmp \def\bfs{\tenbfs}
-\font\tenits=fvsro\tmp \def\its{\tenits}
-\font\tenbis=fvsbo\tmp \def\bis{\tenbis}
-
-\font\tentt=fvsr\tmp
-\font\tenttbf=fvsb\tmp \def\ttbf{\tenttbf}
-\font\tenttit=fvsro\tmp \def\ttit{\tenttit}
-\font\tenttbi=fvsbo\tmp \def\ttbi{\tenttbi}
-
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrms \regfont\tenits
- \regfont\tenbfs \regfont\tenbis
- \regfont\tenttit
- \regfont\tenttbf \regfont\tenttbi
\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\def\sserif{\sans\fam}
+\ifx\loadmathfonts\relax \endinput \fi
\ifx\mathpreloaded X\else \input tx-math \fi
-% end of cs-bera.tex
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex b/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex
index 60528cfd5b1..b9098168624 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex
@@ -1,41 +1,53 @@
-% The file cs-bonum.tex (C) Petr Olsak, 2012
-% Use "\input cs-bonum" to set the Termes fonts family in text mode
+% The file cs-bonum.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-bonum" to set the TG Bonum font family in text mode
-\message{FONT: Bonum -
- \string\rm, \string\it, \string\bf, \string\bi, \string\caps\string\rm...}
+\ifx\ffdecl\undefined \input ff-mac \fi
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
+\ffdecl [TG Bonum] {\rm \bf \it \bi} {\caps} {} {TX} {8z 8t U}
-\ifx\font\unicoded \def\famname{texgyrebonum} \input unifam
-\else
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
-\font\tenrm=\tmp-qbkr \sizespec
-\font\tenbf=\tmp-qbkb \sizespec
-\font\tenit=\tmp-qbkri \sizespec
-\font\tenbi=\tmp-qbkbi \sizespec
+\ismacro\fotenc{8t}\ifttrue
-\font\tenrmc=\tmp-qbkr-sc \sizespec
-\font\tenbfc=\tmp-qbkb-sc \sizespec
-\font\tenitc=\tmp-qbkri-sc \sizespec
-\font\tenbic=\tmp-qbkbi-sc \sizespec
+ \font\tenrm = ec-qbkr \sizespec
+ \font\tenbf = ec-qbkb \sizespec
+ \font\tenit = ec-qbkri \sizespec
+ \font\tenbi = ec-qbkbi \sizespec
+
+ \def\ffnamegen{ec-qbk\ffvarV\capsV}
\fi
-\tenrm
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-qbkr \sizespec
+ \font\tenbf = cs-qbkb \sizespec
+ \font\tenit = cs-qbkri \sizespec
+ \font\tenbi = cs-qbkbi \sizespec
+
+ \def\ffnamegen{cs-qbk\ffvarV\capsV}
+ \input chars-8z
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{U}\iftrue
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \font\tenrm = "[texgyrebonum-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyrebonum-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyrebonum-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyrebonum-bolditalic]:\fontfeatures" \sizespec
+
+ \def\ffnamegen{"[texgyrebonum-\ffvarV]:\capsV\fontfeatures"}
-% end of cs-bonum.tex
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-charter.tex b/Master/texmf-dist/tex/csplain/fonts/cs-charter.tex
index a1381320f14..05445a4b162 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-charter.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-charter.tex
@@ -1,24 +1,33 @@
% cs-charter.tex: fonts loading file of Charter fonts
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Petr Olsak, 2012
+% Petr Olsak, 2012, 2016
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{8t \sizespec}\else \def\tmp{8z \sizespec}\fi
+\ifx\ffdecl\undefined \input ff-mac \fi
-\message{FONT: Charter -
- \string\rm, \string\it, \string\bf, \string\bi}
+\ffdecl [Charter] {\rm \bf \it \bi} {} {} {TX} {8z 8t}
-\ifx\font\unicoded \message{WARNING: This font family is unavailable in UNICODE.}
- \endinput\fi
+\ismacro\fotenc{8t}\ifttrue
-\font\tenrm=bchr\tmp
-\font\tenbf=bchb\tmp
-\font\tenit=bchri\tmp
-\font\tenbi=bchbi\tmp
+ \font\tenrm = bchr8t
+ \font\tenbf = bchb8t
+ \font\tenit = bchri8t
+ \font\tenbi = bchbi8t
+
+\fi
+
+\ismacro\fotenc{8z}\ifttrue
+
+ \font\tenrm = bchr8z
+ \font\tenbf = bchb8z
+ \font\tenit = bchri8z
+ \font\tenbi = bchbi8z
+ \input chars-8z
+
+\fi
\tenrm
-\ifx\font\corkencoded\else \input chars-8z \fi
+\ifx\loadmathfonts\relax \endinput \fi
\ifx\mathpreloaded X\else \input tx-math \fi
% end of cs-charter.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex b/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex
index 3639bd50ca6..3c37149f64b 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex
@@ -1,36 +1,53 @@
-% The file cs-cursor.tex (C) Petr Olsak, 2012
-% Use "\input cs-cursor" to set the Termes fonts family in text mode
+% The file cs-cursor.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-cursor" to set the TG Cursor font family in text mode
-\message{FONT: Termes -
- \string\rm, \string\it, \string\bf, \string\bi, \string\caps\string\rm...}
+\ifx\ffdecl\undefined \input ff-mac \fi
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
+\ffdecl [TG Cursor] {\rm \bf \it \bi} {\caps} {} {TX} {8z 8t U}
-\font\tenrm=\tmp-qcrr \sizespec
-\font\tenbf=\tmp-qcrb \sizespec
-\font\tenit=\tmp-qcrri \sizespec
-\font\tenbi=\tmp-qcrbi \sizespec
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
-\font\tenrmc=\tmp-qcrr-sc \sizespec
-\font\tenbfc=\tmp-qcrb-sc \sizespec
-\font\tenitc=\tmp-qcrri-sc \sizespec
-\font\tenbic=\tmp-qcrbi-sc \sizespec
+\ismacro\fotenc{8t}\ifttrue
-\tenrm
+ \font\tenrm = ec-qcrr \sizespec
+ \font\tenbf = ec-qcrb \sizespec
+ \font\tenit = ec-qcrri \sizespec
+ \font\tenbi = ec-qcrbi \sizespec
+
+ \def\ffnamegen{ec-qcr\ffvarV\capsV}
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{8z}\iftrue
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \font\tenrm = cs-qcrr \sizespec
+ \font\tenbf = cs-qcrb \sizespec
+ \font\tenit = cs-qcrri \sizespec
+ \font\tenbi = cs-qcrbi \sizespec
+
+ \def\ffnamegen{cs-qcr\ffvarV\capsV}
+ \input chars-8z
+
+\fi
+
+\ismacro\fotenc{U}\iftrue
-% end of cs-cursor.tex
+ \font\tenrm = "[texgyrecursor-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyrecursor-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyrecursor-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyrecursor-bolditalic]:\fontfeatures" \sizespec
+
+ \def\ffnamegen{"[texgyrecursor-\ffvarV]:\capsV\fontfeatures"}
+
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex b/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex
index 92d9b08a7eb..c2f9b698dc6 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex
@@ -1,66 +1,254 @@
-% The file cs-heros.tex (C) Petr Olsak, 2012
-% Use "\input cs-heros" to set the Termes fonts family in text mode
-
-\message{FONT: Heros -
- \string\rm, \string\it, \string\bf, \string\bi,
- \string\caps\string\rm..., \string\narrow}
-
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
-
-\ifx\font\unicoded
- \def\famname{texgyreheroscn} \input unifam
- \let\tenrmn=\tenrm \let\tenbfn=\tenbf \let\tenitn=\tenit \let\tenbin=\tenbi
- \let\tenrmnc=\tenrmc \let\tenbfnc=\tenbfc \let\tenitnc=\tenitc \let\tenbinc=\tenbic
- \def\famname{texgyreheros} \input unifam
-\else
-
-\font\tenrm=\tmp-qhvr \sizespec
-\font\tenbf=\tmp-qhvb \sizespec
-\font\tenit=\tmp-qhvri \sizespec
-\font\tenbi=\tmp-qhvbi \sizespec
-
-\font\tenrmc=\tmp-qhvr-sc \sizespec
-\font\tenbfc=\tmp-qhvb-sc \sizespec
-\font\tenitc=\tmp-qhvri-sc \sizespec
-\font\tenbic=\tmp-qhvbi-sc \sizespec
-
-\font\tenrmn=\tmp-qhvcr \sizespec
-\font\tenbfn=\tmp-qhvcb \sizespec
-\font\tenitn=\tmp-qhvcri \sizespec
-\font\tenbin=\tmp-qhvcbi \sizespec
-
-\font\tenrmnc=\tmp-qhvcr-sc \sizespec
-\font\tenbfnc=\tmp-qhvcb-sc \sizespec
-\font\tenitnc=\tmp-qhvcri-sc \sizespec
-\font\tenbinc=\tmp-qhvcbi-sc \sizespec
+% The file cs-heros.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-heros" to set the TG Heros font family in text mode
+
+% See end of this file for more information
+
+\ifx\ffdecl\undefined \input ff-mac \fi
+
+\ffdecl [TG Heros] {\rm \bf \it \bi} {\caps \cond} {} {TX} {8z 8t U}
+
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\cond{\ffsetV{cond}{c}\ffsetX} \def\nocond{\ffsetV{cond}{}\ffsetX}
+\def\capsV{}
+\def\condV{}
+
+\ismacro\fotenc{8t}\ifttrue
+
+ \font\tenrm = ec-qhvr \sizespec
+ \font\tenbf = ec-qhvb \sizespec
+ \font\tenit = ec-qhvri \sizespec
+ \font\tenbi = ec-qhvbi \sizespec
+
+ \def\ffnamegen{ec-qhv\condV\ffvarV\capsV}
\fi
-\tenrm
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-qhvr \sizespec
+ \font\tenbf = cs-qhvb \sizespec
+ \font\tenit = cs-qhvri \sizespec
+ \font\tenbi = cs-qhvbi \sizespec
+
+ \def\ffnamegen{cs-qhv\condV\ffvarV\capsV}
+ \input chars-8z
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
- \regfont\tenrmn \regfont\tenitn
- \regfont\tenbfn \regfont\tenbin
- \regfont\tenrmnc \regfont\tenitnc
- \regfont\tenbfnc \regfont\tenbinc
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{U}\iftrue
+
+ \font\tenrm = "[texgyreheros-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyreheros-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyreheros-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyreheros-bolditalic]:\fontfeatures" \sizespec
-\def\narrow{% Switches to Narrow variants
- \let\tenrm=\tenrmn \let\tenbf=\tenbfn
- \let\tenit=\tenitn \let\tenbi=\tenbin
- \let\tenrmc=\tenrmnc \let\tenbfc=\tenbfnc
- \let\tenitc=\tenitnc \let\tenbic=\tenbinc \tenrm}
+ \def\ffnamegen{"[texgyreheros\condV-\ffvarV]:\capsV\fontfeatures"}
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+ \def\cond{\ffsetV{cond}{cn}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\def\narrow{\cond\fam}
+
+\ifx\loadmathfonts\relax \endinput \fi
\ifx\mathpreloaded X\else \input tx-math \fi
-% end of cs-heros.tex
+\endinput
+
+--------------------------------------------------------------
+
+For users
+=========
+
+There are four basic font selectors: \rm, \bf, \it, \bi. They are ready
+to print text in Heros (like Helvetica) variants after \input cs-heros.
+
+You can use "modifiers" of these basic variants: \cond, \caps. They can be
+independently combined but must be immediately followed by \rm, \bf, \it,
+\bi or \fam. Examples:
+
+\cond\rm ... Normal condensed.
+\caps\cond\it ... Caps & small-caps plus condensed italics.
+\caps\fam ... Caps & small-caps, now all basic selectors.
+ \rm, \bf, \it, \bi keeps this modification.
+
+All font selectors and their modifiers do setting locally inside TeX group.
+
+Note, that \modifier\fam keeps the currently selected basic variant. This
+variant is modified by \modifier\fam and all consecutive basic variant
+selectors are modified too. So, you can select all font features
+independently to others.
+
+{\it Italics \caps\fam caps italics, \bf caps bold \it caps italic.}
+
+but \modifier\rm (or \modifier\bf etc.) sets only one individual font.
+
+{\it Italic \caps\rm caps \bf normal bold}
+
+The TX math fonts are loaded together with this text family. If you need not
+load special fonts then you can set \let\loadmathfonts=\relax before \input
+cs-heros. Of course, you can input any different math font collection, for
+example \input ntx-math.
+
+You can combine fonts from more families. Load the main family last. You can
+use \ffletfont\newselector = {mod+var}{size} for keeping variants from
+previous loading. Example:
+
+\input cs-heros
+\ffletfont \titlefont = {\cond\bf}{at14pt} % Heros condensed for titles
+\input cs-termes % Termes at 10 pt for normal text
+
+If you are using XeTeX or LuaTeX then the U (unicode) encoding is used and
+OTF fonts are loaded. You can use \useff{text} in such case. This works like
+another modifier and does modification of font-features. Use
+otfinfo -f file.otf to inspect the font features of used font. Example:
+
+\useff{+onum;+salt}\bf ... use Bold variant with oldstyle digits and
+ stylistic alternatives
+\useff{+onum;+salt}\fam ... use given features for whole family.
+
+
+For font-file developers
+========================
+
+Use \ifx\ffdecl\undefined \input ff-mac \fi first. The ff-mac.tex macro file
+provides:
+
+\sizespec .. is empty or it keeps the special size specification of the font.
+\ffdecl .... prints font message and checks the font encoding.
+\ffvars .... declares four basic variants (values for \ffvarV)
+\setfmV, \setfm ... macros used in font modifiers
+\ismacro ... test if the macro is defined as given.
+\fotenc .... encoding of text fonts.
+\fontfeatures ... default (or user defined) fontfeatures if Unicode
+ fonts are used.
+\ffalias ... register alias of a font name.
+\regsizes .. register optical sizes.
+
+You must declare four basic variants \tenrm, \tembf, \tenit and \tenbi
+using \font primitive. These four basic variants work immediately after
+font-file is read because \rm, \bf, \it and \bi expands to \tenrm, \tenbf,
+\tenit and \tenbi.
+
+You can declare more cases for various font encondings. User can define font
+encoding by \def\fontenc{something}. Note, that ff-mac.tex keeps the \fotenc
+macro unchanged, but if it is not defined then it does:
+
+- \def\fotenc{8z} if CSplain is used without \input t1code nor \input ucode
+- \def\fotenc{8t} if \input t1code or pdfTeX without CSplain is used
+- \def\fotenc{U} if \input ucode or XeTeX or LuaTeX is used
+
+8z means IL2 encoding (default in CSplain), 8t means T1 encoding and U means
+Unicode.
+
+If the family does not provide all four basic variants then keep missing
+variants undeclared and use parameter {!} in appropriate \ffvars parameter.
+
+Last two lines in the code above loads the default math fonts. The "X"
+letter (as \mathpreloaded) is reserved for TX fonts collection. The "A"
+letter is reserved for AMS math fonts.
+
+
+\ffdecl [Family Name] {basic selectors} {modifiers} {comment} {math} {enc}
+-------------------------------------------------------------------------
+
+This macro stops reading the file (with warning) if the \fotenc is not
+included in the provided encodings given in the last parameter. Else it
+prints the message about font family, its selectors, modifiers and appends
+the comment.
+
+
+\ffvars {normal} {bold} {italic} {bolditalic}
+---------------------------------------------
+
+This macro gives the values to the \ffvarV macro dependent on what basic
+variant is needed. The \ffvarV macro is used in \ffnamegen. See below.
+
+If you need to implement font modifier (say \modfoo), then define
+
+\def\modfoo{\ffsetV{foo}{text}\ffsetX} \def\nomodfoo{\ffsetV{foo}{}\ffsetX}
+
+The \modfoo activate modifier and \nomodfoo deactivate it. The macro
+\ffsetV{foo}{text} define \fooV as text. So, you can use \fooV in \ffnamegen.
+
+Next, define default value for \fooV by \def\fooV{}.
+
+Finally, define the generic font name using \ffvarV and \fooV in it.
+These names are expanded to basic variant name given by \ffvars and the
+actual value of \fooV given by \ffsetV. For example, if the metric names of
+the font family are
+
+ baaRMwhat.tfm ... normal
+ baaBFwhat.tfm ... bold
+ baaRMwhatFF.tfm ... normal modified by FF
+ baaBFwhatFF.tfm ... bold modified by FF
+
+then declare \ffvars {RM} {BF} {!} {!} and define
+
+ \def\modfoo{\ffsetV{foo}{FF}\ffsetX} \def\nomodfoo{\ffsetV{foo}{}\ffsetX}
+
+and finaly define \ffnamegen as:
+
+ \def\ffnamegen{baa\ffvarV what\fooV}
+
+The font modifiers are based on the fact that font names of fonts includes
+these modifiers flags at given place in the name and they are independent
+one to another.
+
+All (modified) variants can be used in all various sizes by standard
+resizing tools given in CSplain or OPmac.
+
+
+\ffalias {virtual-name} {real-name}
+-----------------------------------
+
+The \ffalias macro provides substitution of virtual-name by real-name.
+The virtual-name is a result of the expansion of \ffnamegen and real-name is
+definitely used.
+
+Example. Suppose that baaBFwhatFF.tfm is not present and when the \modfoo\bf
+is used then error during loading baaBFwhatFF.tfm occurs. To avoid this, you
+can declare:
+
+\ffalias {baaBFwhatFF} {baaRMwhatFF}
+
+Now, the baaRMwhatFF.tfm is used instead baaBFwhatFF.tfm.
+
+
+\regsizes {modifiers} {data}
+----------------------------
+
+You can use \ffoptV in the \ffnamegen. It includes the optical size value of
+the font. For example, Antykwa Poltawkiego includes:
+
+ec-antpr6.tfm ec-antpr8.tfm ec-antpr10.tfm ec-antpr12.tfm ex-antpr17.tfm
+
+and analogical names are used for all basic variants {r}{b}{ri}{bi} and for
+\caps variants. You can see to the cs-polta.tex file that the \ffnamegen is
+defined by \def\ffnamegen{ec-antp\ffvarV\ffoptV\capsV}.
+
+If the \ffoptV is used in \ffnamegen then you must register optical
+sizes for all variants and modified variants into internal data structure.
+The \regsizes macro does this. Code from cs-polta.tex looks like this:
+
+\regsizes {} {0 =6 7 =8 9 =10 11 =12 14 =17}
+\regsizes {\wli} {0 =6 7 =8 9 =10 11 =12 14 =17}
+\regsizes {\caps} {0 =6 7 =8 9 =10 11 =12 14 =17}
+\regsizes {\wli\caps} {0 =6 7 =8 9 =10 11 =12 14 =17}
+
+There are two independent modifiers \wli and \caps, so there are four
+possible modifications. These modifications are included in the first
+parameter. The second "data" parameter includes couples
+"bondary =optsize boundary =optsize" etc. If the desired size is 11.5pt (for
+example) then it fits to the bounaries [11pt, 14pt), thus the value 12 is
+used in the \ffoptV macro.
+
+The \regsizes is implemented by \regtfm macro, see the ams-math.tex file.
+
+You cannot combine \ffalias together with \regsizes.
+----------------------------------------
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex b/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex
index 4e9d119b544..66d17c6c9aa 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex
@@ -1,41 +1,53 @@
-% The file cs-pagella.tex (C) Petr Olsak, 2012
-% Use "\input cs-pagella" to set the Termes fonts family in text mode
+% The file cs-pagella.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-pagella" to set the TG Pagella font family in text mode
-\message{FONT: Pagella -
- \string\rm, \string\it, \string\bf, \string\bi, \string\caps\string\rm...}
+\ifx\ffdecl\undefined \input ff-mac \fi
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
+\ffdecl [TG Pagella] {\rm \bf \it \bi} {\caps} {} {TX} {8z 8t U}
-\ifx\font\unicoded \def\famname{texgyrepagella} \input unifam
-\else
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
-\font\tenrm=\tmp-qplr \sizespec
-\font\tenbf=\tmp-qplb \sizespec
-\font\tenit=\tmp-qplri \sizespec
-\font\tenbi=\tmp-qplbi \sizespec
+\ismacro\fotenc{8t}\ifttrue
-\font\tenrmc=\tmp-qplr-sc \sizespec
-\font\tenbfc=\tmp-qplb-sc \sizespec
-\font\tenitc=\tmp-qplri-sc \sizespec
-\font\tenbic=\tmp-qplbi-sc \sizespec
+ \font\tenrm = ec-qplr \sizespec
+ \font\tenbf = ec-qplb \sizespec
+ \font\tenit = ec-qplri \sizespec
+ \font\tenbi = ec-qplbi \sizespec
+
+ \def\ffnamegen{ec-qpl\ffvarV\capsV}
\fi
-\tenrm
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-qplr \sizespec
+ \font\tenbf = cs-qplb \sizespec
+ \font\tenit = cs-qplri \sizespec
+ \font\tenbi = cs-qplbi \sizespec
+
+ \def\ffnamegen{cs-qpl\ffvarV\capsV}
+ \input chars-8z
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{U}\iftrue
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \font\tenrm = "[texgyrepagella-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyrepagella-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyrepagella-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyrepagella-bolditalic]:\fontfeatures" \sizespec
+
+ \def\ffnamegen{"[texgyrepagella-\ffvarV]:\capsV\fontfeatures"}
-% end of cs-pagella.tex
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex b/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex
index 9e1a92953e5..39d08eb6736 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex
@@ -1,59 +1,82 @@
-% cs-polta.tex: fonts loading file of Antykwa Poltawskiego
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Petr Olsak, 2012
-
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
-
-\message{FONT: Antykwa Poltawskiego -
- \string\rm,\string\it,\string\bf,\string\bi,%
- \string\lr,\string\li,\string\mr,\string\mi,%
- \string\caps\string\rm...}
-
-\ifx\dgsize\undefined \def\dgsize{10}\fi
-
-\font\tenrm=\tmp-antpr\dgsize \space\sizespec
-\font\tenbf=\tmp-antpb\dgsize \space\sizespec
-\font\tenit=\tmp-antpri\dgsize \space\sizespec
-\font\tenbi=\tmp-antpbi\dgsize \space\sizespec
-
-\font\tenlr=\tmp-antpl\dgsize \space\sizespec \def\lr{\tenlr}
-\font\tenli=\tmp-antpli\dgsize \space\sizespec \def\li{\tenli}
-\font\tenmr=\tmp-antpm\dgsize \space\sizespec \def\mr{\tenmr}
-\font\tenmi=\tmp-antpmi\dgsize \space\sizespec \def\mi{\tenmi}
-
-\font\tenrmc=\tmp-antpr\dgsize-sc \sizespec
-\font\tenbfc=\tmp-antpb\dgsize-sc \sizespec
-\font\tenitc=\tmp-antpri\dgsize-sc \sizespec
-\font\tenbic=\tmp-antpbi\dgsize-sc \sizespec
-
-\font\tenlrc=\tmp-antpl\dgsize-sc \sizespec
-\font\tenlic=\tmp-antpli\dgsize-sc \sizespec
-\font\tenmrc=\tmp-antpm\dgsize-sc \sizespec
-\font\tenmic=\tmp-antpmi\dgsize-sc \sizespec
-
-\let\dgsize=\undefined
-
-\tenrm
-
-% You can use \cap\rm, \cap\bf, \cap\li
-
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
-
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenlr \regfont\tenli
- \regfont\tenmr \regfont\tenmi
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
- \regfont\tenlrc \regfont\tenlic
- \regfont\tenmrc \regfont\tenmic
+% cs-polta.tex: fonts loading file of Antykwa Torunska
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Petr Olsak, 2012, 2016
+
+\ifx\ffdecl\undefined \input ff-mac \fi
+
+\ffdecl [Antykwa Poltawskiego]
+ {\rm \bf \it \bi \lr \mr \li \mi} {\caps \wli} {} {TX} {8z 8t U}
+
+\ffvars {r}{b}{ri}{bi}
+\def\wli{\ffvars{l}{m}{li}{mi}\ffsetX}
+\def\nowli{\ffvars{r}{b}{ri}{bi}\ffsetX}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX}
+\def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
+
+\ismacro\fotenc{8t}\ifttrue
+
+ \font\tenrm = ec-antpr10 \sizespec
+ \font\tenbf = ec-antpb10 \sizespec
+ \font\tenit = ec-antpri10 \sizespec
+ \font\tenbi = ec-antpbi10 \sizespec
+
+ \def\ffnamegen{ec-antp\ffvarV\ffoptV\capsV}
+
\fi
-\ifx\mathpreloaded X\else \input tx-math \fi
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-antpr10 \sizespec
+ \font\tenbf = cs-antpb10 \sizespec
+ \font\tenit = cs-antpri10 \sizespec
+ \font\tenbi = cs-antpbi10 \sizespec
+
+ \def\ffnamegen{cs-antp\ffvarV\ffoptV\capsV}
+ \input chars-8z
+
+\fi
+
+\ismacro\fotenc{U}\iftrue
-\ifx\font\corkencoded \else \input chars-8z \fi
+ \font\tenrm = "[antpolt-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[antpolt-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[antpolt-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[antpolt-bolditalic]:\fontfeatures" \sizespec
+
+ \def\ffnamegen{"[antpolt\wliV\ffoptV-\ffvarV]:\capsV\fontfeatures"}
+
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\wli{\ffsetV{wli}{lt}\ffsetX}
+ \def\nowli{\ffsetV{wli}{}\ffsetX}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+ \def\nocaps{\ffsetV{caps}{}\ffsetX}
+ \def\wliV{}
+
+ \regsizes {} {0 =expd 7 =semiexpd 9 ={} 11 =semicond 14 =cond}
+ \regsizes {\wli} {0 =expd 7 =semiexpd 9 ={} 11 =semicond 14 =cond}
+ \regsizes {\caps} {0 =expd 7 =semiexpd 9 ={} 11 =semicond 14 =cond}
+ \regsizes {\wli\caps} {0 =expd 7 =semiexpd 9 ={} 11 =semicond 14 =cond}
+
+\else
+
+ \regsizes {} {0 =6 7 =8 9 =10 11 =12 14 =17}
+ \regsizes {\wli} {0 =6 7 =8 9 =10 11 =12 14 =17}
+ \regsizes {\caps} {0 =6 7 =8 9 =10 11 =12 14 =17}
+ \regsizes {\wli\caps} {0 =6 7 =8 9 =10 11 =12 14 =17}
+
+\fi
+
+\tenrm % don't remember to initialize the family with normal font.
+
+
+\def\liweight{\wli\fam}
+\def\lr{\wli\rm}
+\def\mr{\wli\bf}
+\def\li{\wli\it}
+\def\mi{\wli\bi}
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
-% end of cs-polta.tex
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex b/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex
index fb685604a5e..8a2cb8e88c9 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex
@@ -1,41 +1,53 @@
-% The file cs-schola.tex (C) Petr Olsak, 2012
-% Use "\input cs-schola" to set the Termes fonts family in text mode
+% The file cs-schola.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-schola" to set the TG Schola font family in text mode
-\message{FONT: Schola -
- \string\rm, \string\it, \string\bf, \string\bi, \string\caps\string\rm...}
+\ifx\ffdecl\undefined \input ff-mac \fi
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
+\ffdecl [TG Schola] {\rm \bf \it \bi} {\caps} {} {TX} {8z 8t U}
-\ifx\font\unicoded \def\famname{texgyreschola} \input unifam
-\else
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
-\font\tenrm=\tmp-qcsr \sizespec
-\font\tenbf=\tmp-qcsb \sizespec
-\font\tenit=\tmp-qcsri \sizespec
-\font\tenbi=\tmp-qcsbi \sizespec
+\ismacro\fotenc{8t}\ifttrue
-\font\tenrmc=\tmp-qcsr-sc \sizespec
-\font\tenbfc=\tmp-qcsb-sc \sizespec
-\font\tenitc=\tmp-qcsri-sc \sizespec
-\font\tenbic=\tmp-qcsbi-sc \sizespec
+ \font\tenrm = ec-qcsr \sizespec
+ \font\tenbf = ec-qcsb \sizespec
+ \font\tenit = ec-qcsri \sizespec
+ \font\tenbi = ec-qcsbi \sizespec
+
+ \def\ffnamegen{ec-qcs\ffvarV\capsV}
\fi
-\tenrm
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-qcsr \sizespec
+ \font\tenbf = cs-qcsb \sizespec
+ \font\tenit = cs-qcsri \sizespec
+ \font\tenbi = cs-qcsbi \sizespec
+
+ \def\ffnamegen{cs-qcs\ffvarV\capsV}
+ \input chars-8z
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{U}\iftrue
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \font\tenrm = "[texgyreschola-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyreschola-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyreschola-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyreschola-bolditalic]:\fontfeatures" \sizespec
+
+ \def\ffnamegen{"[texgyreschola-\ffvarV]:\capsV\fontfeatures"}
-% end of cs-schola.tex
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex b/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex
index b6225925eb4..228c9b5cd05 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex
@@ -1,41 +1,53 @@
-% The file cs-termes.tex (C) Petr Olsak, 2012
-% Use "\input cs-termes" to set the Termes fonts family in text mode
+% The file cs-termes.tex (C) Petr Olsak, 2012, 2016
+% Use "\input cs-termes" to set the TG Termes font family in text mode
-\message{FONT: Termes -
- \string\rm, \string\it, \string\bf, \string\bi, \string\caps\string\rm...}
+\ifx\ffdecl\undefined \input ff-mac \fi
-\ifx\sizespec\undefined \def\sizespec{}\fi
-\ifx\font\corkencoded \def\tmp{ec}\else \def\tmp{cs}\fi
+\ffdecl [TG Termes] {\rm \bf \it \bi} {\caps} {} {TX} {8z 8t U}
-\ifx\font\unicoded \def\famname{texgyretermes} \input unifam
-\else
+\ffvars {r}{b}{ri}{bi}
+\def\caps{\ffsetV{caps}{-sc}\ffsetX} \def\nocaps{\ffsetV{caps}{}\ffsetX}
+\def\capsV{}
-\font\tenrm=\tmp-qtmr \sizespec
-\font\tenbf=\tmp-qtmb \sizespec
-\font\tenit=\tmp-qtmri \sizespec
-\font\tenbi=\tmp-qtmbi \sizespec
+\ismacro\fotenc{8t}\ifttrue
-\font\tenrmc=\tmp-qtmr-sc \sizespec
-\font\tenbfc=\tmp-qtmb-sc \sizespec
-\font\tenitc=\tmp-qtmri-sc \sizespec
-\font\tenbic=\tmp-qtmbi-sc \sizespec
+ \font\tenrm = ec-qtmr \sizespec
+ \font\tenbf = ec-qtmb \sizespec
+ \font\tenit = ec-qtmri \sizespec
+ \font\tenbi = ec-qtmbi \sizespec
+
+ \def\ffnamegen{ec-qtm\ffvarV\capsV}
\fi
-\tenrm
+\ismacro\fotenc{8z}\iftrue
+
+ \font\tenrm = cs-qtmr \sizespec
+ \font\tenbf = cs-qtmb \sizespec
+ \font\tenit = cs-qtmri \sizespec
+ \font\tenbi = cs-qtmbi \sizespec
+
+ \def\ffnamegen{cs-qtm\ffvarV\capsV}
+ \input chars-8z
-\ifx\regfontdefault\undefined \else
- \regfontdefault
- \regfont\tenrmc \regfont\tenitc
- \regfont\tenbfc \regfont\tenbic
\fi
-\def\caps#1{{\escapechar=-1 \expandafter}%
- \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
-\def\tenonlytext{ten}
+\ismacro\fotenc{U}\iftrue
-\ifx\font\corkencoded\else \ifx\font\unicoded\else \input chars-8z \fi\fi
-\ifx\mathpreloaded X\else \input tx-math \fi
+ \font\tenrm = "[texgyretermes-regular]:\fontfeatures" \sizespec
+ \font\tenbf = "[texgyretermes-bold]:\fontfeatures" \sizespec
+ \font\tenit = "[texgyretermes-italic]:\fontfeatures" \sizespec
+ \font\tenbi = "[texgyretermes-bolditalic]:\fontfeatures" \sizespec
+
+ \def\ffnamegen{"[texgyretermes-\ffvarV]:\capsV\fontfeatures"}
-% end of cs-termes.tex
+ \ffvars {regular} {bold} {italic} {bolditalic}
+ \def\caps{\ffsetV{caps}{+smcp;}\ffsetX}
+
+\fi
+\tenrm % don't remember to initialize the family with normal font.
+
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+\endinput
diff --git a/Master/texmf-dist/tex/csplain/fonts/ctimes.tex b/Master/texmf-dist/tex/csplain/fonts/ctimes.tex
index 6b3fdb4aa4e..dd769e1aeb5 100644
--- a/Master/texmf-dist/tex/csplain/fonts/ctimes.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/ctimes.tex
@@ -24,8 +24,6 @@
\ifx\font\corkencoded \else \input chars-8z \fi
-\ifx\mathpreloaded X\else \input tx-math \fi
-
\let\setsimplemath=\relax % this command is obsolete
% The \TeX logo corrected by Ivo Jancik for Times fonts family
@@ -33,5 +31,8 @@
\ifx\origTeX\undefined \let\origTeX=\TeX \fi
\let\TeX=\tmTeX
+\ifx\loadmathfonts\relax \endinput \fi
+\ifx\mathpreloaded X\else \input tx-math \fi
+
% end of ctimes.tex
diff --git a/Master/texmf-dist/tex/csplain/fonts/ff-mac.tex b/Master/texmf-dist/tex/csplain/fonts/ff-mac.tex
new file mode 100644
index 00000000000..4d4a06d790c
--- /dev/null
+++ b/Master/texmf-dist/tex/csplain/fonts/ff-mac.tex
@@ -0,0 +1,148 @@
+% ff-mac.tex -- support for font files
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Petr Olsak 2016
+
+% This file is part of csplain package.
+% See the file cs-heros.tex for more details.
+
+\def\ffdecl [#1]#2#3#4#5#6{\ffdecltest#6 {}
+ \iftrue
+ {\toks2={#2}\toks3={#3}\toks4={#4}%
+ \immediate\write16{FONT: #1 - \the\toks2
+ \ifx\relax#3\relax\else ; mod:\the\toks3 \fi
+ \ifx\relax#4\relax\else ; \the\toks4 \fi
+ \ifx\loadmathfonts\relax \else ; +#5\fi}}%
+ \else
+ \message{WARNING: #1 family is not available in
+ \fotenc\space encoding. Ignored.}%
+ \endinput
+ \fi
+}
+\def\ffdecltest#1 {\ifx\relax#1\relax \expandafter \ffdecltestfin
+ \else
+ \ismacro\fotenc{#1}\iftrue \ffdecltestfound \fi
+ \expandafter\ffdecltest
+ \fi
+}
+\def\ffdecltestfin\iftrue{\iffalse}
+\def\ffdecltestfound#1\iftrue{\fi\fi \iftrue}
+
+\ifx\sizespec\undefined \def\sizespec{}\fi
+
+\ifx\fotenc\undefined
+ \ifx\chyph\undefined \def\fotenc{8t}\else \def\fotenc{8z}\fi
+ \ifx\font\corkencoded \def\fotenc{8t}\fi
+ \ifx\font\unicoded \def\fotenc{U}\fi
+ \def\tmp#1#2\relax{\def\tmp{#2}}\tmp ^^^^abcd\relax
+ \ifx\tmp\empty \def\fotenc{U}\fi % Unicode engine
+\fi
+
+\ifx\protected\undefined
+ \let\tryprotected=\relax
+ \ifx\addprotect\undefined \else
+ \addprotect\ffvars \addprotect\ffsetV \addprotect\ffsetY
+ \fi
+\else \let\tryprotected=\protected \fi
+
+\tryprotected\def\ffvars#1#2#3#4{%
+ \def\ffvarY##1{\ifcase##1 #1\or#2\or#3\or#4\fi}%
+}
+\tryprotected\def\ffsetV#1#2{\expandafter\def\csname #1V\endcsname{#2}}
+
+\long\def\ffsetX#1{\ifx#1\fam \ffsetY=\else
+ \ifx#1\rm \ffsetY0\else \ifx#1\bf \ffsetY1\else
+ \ifx#1\it \ffsetY2\else \ifx#1\bi \ffsetY3\else
+ \ffsetZ#1\fi\fi\fi\fi\fi
+}
+\def\ffsetZ#1\fi\fi\fi\fi\fi{\fi\fi\fi\fi\fi#1}
+
+\tryprotected\def\ffsetY#1{%
+ \ifx=#1\ffsetW0\tenrm \ffsetW1\tenbf \ffsetW2\tenit \ffsetW3\tenbi
+ \else \edef\ffvarV{\ffvarY{#1}}%
+ \if!\ffvarV\else \ffsetF\ffmodfont\ffmodfont \fi
+ \fi
+}
+\def\ffsetF#1{%
+ \ifx\dgsize\undefined
+ \expandafter\readsizespec\sizespec at\relax
+ \font#1=\whichtfm{\ffnamegen} \sizespec\relax
+ \let\dgsize=\undefined
+ \else \font#1=\whichtfm{\ffnamegen} \sizezpec\relax
+ \fi
+}
+\def\readsizespec#1at#2\relax{\ifx!#2\def\dgsize{#1}\else
+ \ifx\relax#2\relax \def\dgsize{10pt}\else \readsizespec#2!\relax\fi\fi
+}
+\def\ffsetW#1#2{\edef\ffvarV{\ffvarY{#1}}%
+ \expandafter\ifx\the\font#2\ffsetF#2#2\else\ffsetF#2\fi
+}
+\def\ismacro#1#2#3{\def\tmp{#2}\ifx#1\tmp}
+
+\def\ffletfont#1=#2#3{%
+ {\def\sizespec{#3}\let\ffsetFa=\ffsetF
+ \def\ffsetF##1##2{\ffsetFa#1}\def\ffsetW##1##2{}%
+ \ffsetX#2\global\let\tmp=#1}\let#1=\tmp
+}
+\ifx\regtfm\undefined %%%%% \regtfm, \whichtfm from ams-math.tex:
+
+\def\regtfm #1 0 #2 *{\expandafter
+ \def\csname#1:reg\endcsname{#2 16380 \relax}%
+ \def\tmpa{#1}\reversetfm #2 * %
+}
+\def\reversetfm #1 #2 {\expandafter
+ \let\csname#1:reg\expandafter\endcsname
+ \csname\tmpa:reg\endcsname
+ \if*#2\else \expandafter\reversetfm \fi
+}
+\def\whichtfm #1{\ifx\dgsize\undefined #1\else
+ \expandafter \ifx\csname#1:reg\endcsname\relax
+ #1%
+ \else
+ \expandafter\expandafter\expandafter \dowhichtfm
+ \csname #1:reg\expandafter\endcsname
+ \fi \fi
+}
+\def\dowhichtfm #1 #2 {%
+ \ifdim\dgsize<#2pt #1\expandafter\ignoretfm\else \expandafter\dowhichtfm
+\fi
+}
+\def\ignoretfm #1\relax{}
+
+\fi % of \ifx\regtfm %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\ffalias#1#2{\expandafter\edef\csname#1:reg\endcsname{#2 16380 \relax}}
+
+\def\ffoptV{}
+\def\regsizes#1#2{\bgroup \aftergroup\regsizesC #1\relax
+ \let\regtfm=\relax \gdef\tmp{}%
+ \edef\ffvarV{\ffvarY{0}}\if!\ffvarV\else \regsizesA{#2}\fi
+ \edef\ffvarV{\ffvarY{1}}\if!\ffvarV\else \regsizesA{#2}\fi
+ \edef\ffvarV{\ffvarY{2}}\if!\ffvarV\else \regsizesA{#2}\fi
+ \edef\ffvarV{\ffvarY{3}}\if!\ffvarV\else \regsizesA{#2}\fi
+ \egroup
+}
+\def\regsizesA#1{\def\ffoptV{}\xdef\tmp{\tmp\regtfm \ffnamegen}%
+ \regsizesB#1 * =
+}
+\def\regsizesB#1 =#2 {\if*#1\xdef\tmp{\tmp\space*}%
+ \else \def\ffoptV{#2}\xdef\tmp{\tmp\space #1 \ffnamegen}%
+ \expandafter\regsizesB\fi
+}
+\def\regsizesC{\tmp\xdef\tmp{}}
+
+\def\useff#1{} % do nothing with non U encoding
+
+\ismacro\fotenc{U}\iftrue\else \endinput \fi %%%%%%%%%%%%%%%%%%%
+
+\ifx\directlua\undefined \else \ifx\luafonts\undefined \input luafonts
+\fi\fi % lua code to re-define \font primitive
+
+\ifx\fontfeatures\undefined
+ \def\fontfeatures{mapping=tex-text;script=latn;+tlig} % default
+\fi
+
+\def\useff#1{\ffsetU{#1}\ffsetX}
+\tryprotected\def\ffsetU#1{\edef\fontfeatures{\fontfeatures;#1}}
+\ifx\tryprotected\relax \ifx\addprotect\undefined \else \addprotect\ffsetU \fi\fi
+
+\endinput