diff options
author | Norbert Preining <norbert@preining.info> | 2017-05-01 18:00:26 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2017-05-01 18:00:26 +0900 |
commit | a21fac837d3aac6e1e48dce06e64d8db221432ca (patch) | |
tree | 19deb7c3d69bcd10e30f6df5b898cd4101b149cf /texmf-dist/tex/latex/garamondx/garamondx.sty | |
parent | 406432124bf46ccd06aba53b92bfce5968dc4fcc (diff) |
add garamondx
Diffstat (limited to 'texmf-dist/tex/latex/garamondx/garamondx.sty')
-rw-r--r-- | texmf-dist/tex/latex/garamondx/garamondx.sty | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/texmf-dist/tex/latex/garamondx/garamondx.sty b/texmf-dist/tex/latex/garamondx/garamondx.sty new file mode 100644 index 00000000..84d01b7a --- /dev/null +++ b/texmf-dist/tex/latex/garamondx/garamondx.sty @@ -0,0 +1,201 @@ +\NeedsTeXFormat{LaTeX2e} +\def\fileversion{1.12} +\def\filedate{2017/03/11} + +\ProvidesPackage{garamondx}[\filedate\space v\fileversion] +\message{`garamondx' v\fileversion. \filedate\space GaramondNo8 with expert features (Michael Sharpe)} +\RequirePackage{graphicx} +\RequirePackage{keyval} +\usepackage[LY1,T1]{fontenc} +\RequirePackage{fontaxes}% so we can have [bold] italic small caps +\RequirePackage{textcomp} +\RequirePackage{etoolbox} +\let\orig@footnote=\thefootnote +\let\orig@makefnmark=\@makefnmark + + +\DeclareTextCommand{\textcircled}{TS1}[1]{\hmode@bgroup + \ooalign{% + \hfil \raise .4ex\hbox {{\fontencoding{T1}\fontshape{sc}\fontsize{8.2}{9}\selectfont \lowercase{#1}}}\hfil \crcr + \textbigcircle % bigcircle + }% + \egroup} +\newif\ifzgm@osf +\newif\ifzgm@osfI +\newif\ifzgm@swq +\newif\ifzgm@sups +%\newif\ifzgm@babel +%\ifdefined\bbl@tempa \zgm@babeltrue\fi +\define@key{Zgm}{babel}[true]{\relax}% retain for backward compatibility +%\csname zgm@babel#1\endcsname} +\define@key{Zgm}{sups}[true]{% +\csname zgm@sups#1\endcsname} +\define@key{Zgm}{swashQ}[true]{% + \def\zgm@swqval{#1}\csname zgm@swq#1\endcsname} +\define@key{Zgm}{scaled}[0.95]{% + \def\zgm@Scale{#1}} +\define@key{Zgm}{osf}[true]{% + \csname zgm@osf#1\endcsname \def\zgm@osfIval{false}} +\define@key{Zgm}{osfI}[true]{% + \csname zgm@osf#1\endcsname \csname zgm@osfI#1\endcsname% + \def\zgm@osfIval{#1}} +\def\ProcessOptionsWithKV#1{% + \let\@tempc\relax + \let\Zgm@tempa\@empty + \@for\CurrentOption:=\@classoptionslist\do{% + \@ifundefined{KV@#1@\CurrentOption}% + {}% + {% + \edef\Zgm@tempa{\Zgm@tempa,\CurrentOption,}% + \@expandtwoargs\@removeelement\CurrentOption + \@unusedoptionlist\@unusedoptionlist + }% + }% + \edef\Zgm@tempa{% + \noexpand\setkeys{#1}{% + \Zgm@tempa\@ptionlist{\@currname.\@currext}% + }% + }% + \Zgm@tempa + \let\CurrentOption\@empty +} +\ProcessOptionsWithKV{Zgm} +\AtEndOfPackage{% + \let\@unprocessedoptions\relax +} +\renewcommand*{\rmdefault}{zgmx} +%\ifzgm@babel% +% \def\useosf{\renewcommand*{\rmdefault}{zgmj}\def\zgm@osfIval{false}} +% \def\useosfI{\renewcommand*{\rmdefault}{zgmj}\def\zgm@osfIval{true}} +%\else + \def\useosf{\zgm@osftrue \def\zgm@osfIval{false}} + \def\useosfI{\zgm@osftrue \def\zgm@osfIval{true}} +%\fi +\@onlypreamble\useosf\@onlypreamble\useosfI + +% need lining figures for math + +\newcommand{\textlf}[1]{{\fontfamily{zgmx}\selectfont #1}}% to get zgm lf +\newcommand{\textosf}[1]{\oldstylenums{#1}}% to get zgm osf +\newcommand{\textosfI}[1]{{\fontfamily{zgmI}\selectfont #1}}% to get zgm osfI +\renewcommand*{\bfdefault}{b} +\renewcommand*{\scdefault}{sc}% for better compatibility with mathdesign +% set NewG8-sups as footnote markers---may also use superiors for more options +%\DeclareFontFamily{T1}{zgm1}{}% +% \DeclareFontShape{T1}{zgm1}{m}{n}{% +% <-> NewG8-sups}{} +\DeclareRobustCommand{\sustyle}{% + \not@math@alphabet\sustyle\relax + \usefont{T1}{zgm1}{m}{n}} + +\def\textsu#1{\hbox{{\sustyle#1}}} +\ifzgm@sups % + \def\f@@tn@te{footnote} + \def\@makefnmark{% + \ifx\@mpfn\f@@tn@te% + \ifx\thefootnote\orig@footnote% + \hbox{\sustyle\hspace*{.04em}\@thefnmark\hspace*{.03em}}% + \else% + \orig@makefnmark% + \fi + \else% + \orig@makefnmark% + \fi} +\fi + +% The following are provided so that we may access swash Q and osfI in any mode +\expandafter\ifx\csname zgm@Scale\endcsname\relax + \let\zgm@@@Scale\@empty +\else + \edef\zgm@@@Scale{s*[\csname zgm@Scale\endcsname]}% +\fi +\DeclareFontFamily{T1}{zgmI}{} + +\DeclareFontShape{T1}{zgmI}{m}{n}{ + <-> \zgm@@@Scale T1-zgm-r-osfI +}{} +\DeclareFontShape{T1}{zgmI}{m}{it}{ + <-> \zgm@@@Scale T1-zgm-ri-osfI +}{} +\DeclareFontShape{T1}{zgmI}{b}{n}{ + <-> \zgm@@@Scale T1-zgm-b-osfI +}{} +\DeclareFontShape{T1}{zgmI}{b}{it}{ + <-> \zgm@@@Scale T1-zgm-bi-osfI +}{} + +\DeclareFontFamily{T1}{zgmq}{} + +\DeclareFontShape{T1}{zgmq}{m}{n}{ + <-> \zgm@@@Scale T1-zgm-r-lf-swq +}{} +\DeclareFontShape{T1}{zgmq}{m}{it}{ + <-> \zgm@@@Scale T1-zgm-ri-lf-swq +}{} +\DeclareFontShape{T1}{zgmq}{b}{n}{ + <-> \zgm@@@Scale T1-zgm-b-lf-swq +}{} +\DeclareFontShape{T1}{zgmq}{b}{it}{ + <-> \zgm@@@Scale T1-zgm-bi-lf-swq +}{} + +\DeclareFontFamily{LY1}{zgmI}{} + +\DeclareFontShape{LY1}{zgmI}{m}{n}{ + <-> \zgm@@@Scale LY1-zgm-r-osfI +}{} +\DeclareFontShape{LY1}{zgmI}{m}{it}{ + <-> \zgm@@@Scale LY1-zgm-ri-osfI +}{} +\DeclareFontShape{LY1}{zgmI}{b}{n}{ + <-> \zgm@@@Scale LY1-zgm-b-osfI +}{} +\DeclareFontShape{LY1}{zgmI}{b}{it}{ + <-> \zgm@@@Scale LY1-zgm-bi-osfI +}{} + +\DeclareFontFamily{LY1}{zgmq}{} + +\DeclareFontShape{LY1}{zgmq}{m}{n}{ + <-> \zgm@@@Scale LY1-zgm-r-lf-swq +}{} +\DeclareFontShape{LY1}{zgmq}{m}{it}{ + <-> \zgm@@@Scale LY1-zgm-ri-lf-swq +}{} +\DeclareFontShape{LY1}{zgmq}{b}{n}{ + <-> \zgm@@@Scale LY1-zgm-b-lf-swq +}{} +\DeclareFontShape{LY1}{zgmq}{b}{it}{ + <-> \zgm@@@Scale LY1-zgm-bi-lf-swq +}{} +\newcommand{\swashQ}{{\fontfamily{zgmq}\selectfont Q}} + +% It appears that \AtEndPreamble is incompatible with babel calls +% which involve a change of encoding. Changed as of v. 1.093 + \AtEndPreamble{% + \ifzgm@osf + \renewcommand*{\rmdefault}{zgmj} + \else + \renewcommand*{\rmdefault}{zgmx} + \fi + \normalfont} + +%\ifzgm@babel +% \ifzgm@osf +% \renewcommand*{\rmdefault}{zgmj} +% \else +% \renewcommand*{\rmdefault}{zgmx} +% \fi +% \normalfont +%\else +% \AtEndPreamble{% +% \ifzgm@osf +% \renewcommand*{\rmdefault}{zgmj} +% \else +% \renewcommand*{\rmdefault}{zgmx} +% \fi +% \normalfont} +%\fi +\endinput +%% +%% End of file `garamondx.sty'. |