\NeedsTeXFormat{LaTeX2e} \ProvidesPackage{plex-serif} [2019/04/23 (Bob Tennent) Style file for IBMPlexSerif fonts] \RequirePackage{ifxetex,ifluatex,xkeyval,textcomp} \newif\ifplexserif@otf \ifxetex \plexserif@otftrue \else\ifluatex \plexserif@otftrue \else % [pdf]LaTeX \plexserif@otffalse \fi\fi \newcommand*{\IBMPlexSerif@scale}{1} \DeclareOptionX{scale}{\renewcommand*{\IBMPlexSerif@scale}{#1}} \DeclareOptionX{type1}{\plexserif@otffalse} \DeclareOptionX{thin}{\edef\mdseries@rm{ul}\def\plexserif@medstyle{Thin}} \DeclareOptionX{t}{\edef\mdseries@rm{ul}\def\plexserif@medstyle{Thin}} \DeclareOptionX{extralight}{\edef\mdseries@rm{el}\def\plexserif@medstyle{ExtraLight}} \DeclareOptionX{el}{\edef\mdseries@rm{el}\def\plexserif@medstyle{ExtraLight}} \DeclareOptionX{light}{\edef\mdseries@rm{l}\def\plexserif@medstyle{Light}} \DeclareOptionX{l}{\edef\mdseries@rm{l}\def\plexserif@medstyle{Light}} \DeclareOptionX{text}{\edef\bfseries@rm{text}\def\plexserif@boldstyle{Text}} \DeclareOptionX{tx}{\edef\bfseries@rm{text}\def\plexserif@boldstyle{Text}} \DeclareOptionX{textmd}{\edef\mdseries@rm{text}\def\plexserif@medstyle{Text}} \DeclareOptionX{txmd}{\edef\mdseries@rm{text}\def\plexserif@medstyle{Text}} \DeclareOptionX{medium}{\edef\bfseries@rm{mb}\def\plexserif@boldstyle{Medium}} \DeclareOptionX{m}{\edef\bfseries@rm{mb}\def\plexserif@boldstyle{Medium}} \DeclareOptionX{semibold}{\edef\bfseries@rm{sb}\def\plexserif@boldstyle{SemiBold}} \DeclareOptionX{sb}{\edef\bfseries@rm{sb}\def\plexserif@boldstyle{SemiBold}} \ProcessOptionsX\relax \ifplexserif@otf \RequirePackage{fontspec} \def\plexserif@medstyle{Regular} \def\plexserif@boldstyle{Bold} \else % type1 \RequirePackage{fontenc,fontaxes,mweights} \def\bfseries@rm{b} \def\mdseries@rm{m} \fa@naming@exception{figures}{{superior}{proportional}}{Sup} \fa@naming@exception{figures}{{superior}{tabular}}{Sup} \def\sufigures{\@nomath\sufigures \fontfigurestyle{superior}\selectfont} \DeclareTextFontCommand{\textsu}{\sufigures} \let\textsuperior\textsu \fi \ifplexserif@otf \def\plexserif@regular{Regular} \ifxetex\XeTeXtracingfonts=1\fi \defaultfontfeatures{ Ligatures = TeX , Scale = \IBMPlexSerif@scale , Extension = .otf } \setmainfont [ UprightFont = *-\plexserif@medstyle , ItalicFont = *-\ifx\plexserif@medstyle\plexserif@regular Italic \else\plexserif@medstyle Italic\fi , BoldFont = *-\plexserif@boldstyle , BoldItalicFont = *-\plexserif@boldstyle Italic ] {IBMPlexSerif} \newfontfamily\plexserif [ UprightFont = *-\plexserif@medstyle , ItalicFont = *-\ifx\plexserif@medstyle\plexserif@regular Italic \else\plexserif@medstyle Italic\fi , BoldFont = *-\plexserif@boldstyle , BoldItalicFont = *-\plexserif@boldstyle Italic ] {IBMPlexSerif} \else % type1 \def\plexseriffamily{IBMPlexSerif-TLF} \newcommand*\plexserif{\fontfamily{\plexseriffamily}\selectfont} \def\rmdefault{\plexseriffamily} \def\seriesdefault{\mdseries@rm} \fi \ifplexserif@otf % turn off defaults in case other fonts are selected: \defaultfontfeatures{} \fi \endinput