diff options
author | Karl Berry <karl@freefriends.org> | 2012-11-25 23:21:05 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-11-25 23:21:05 +0000 |
commit | 2dffbf93287b0c6bc59f27a94a4157d45a444fab (patch) | |
tree | 07b460f120d82a0fc192f583908b08e66eca4cb4 /Master/texmf-dist/tex/latex/cabin/cabin.sty | |
parent | bc5931a3697f65ac76c60561614e32a9fc18b6e4 (diff) |
cabin (25nov12)
git-svn-id: svn://tug.org/texlive/trunk@28359 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/cabin/cabin.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/cabin/cabin.sty | 115 |
1 files changed, 86 insertions, 29 deletions
diff --git a/Master/texmf-dist/tex/latex/cabin/cabin.sty b/Master/texmf-dist/tex/latex/cabin/cabin.sty index d410355e915..da09666df22 100644 --- a/Master/texmf-dist/tex/latex/cabin/cabin.sty +++ b/Master/texmf-dist/tex/latex/cabin/cabin.sty @@ -1,42 +1,72 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{cabin} - [2012/11/09 (Bob Tennent and autoinst) Style file for Cabin.] + [2012/11/13 (Bob Tennent) Supports Cabin fonts for all LaTeX engines.] -\RequirePackage{ifxetex,ifluatex,textcomp} +\RequirePackage{ifxetex,ifluatex,xkeyval,textcomp} \newif\ifcabin@otf \ifxetex - \RequirePackage{fontspec} \cabin@otftrue \else\ifluatex - \RequirePackage{fontspec} \cabin@otftrue \else % [pdf]LaTeX - \RequirePackage{fontenc,fontaxes} \cabin@otffalse \fi\fi +\newif\ifcabin@default \cabin@defaultfalse +\newif\ifcabin@lining \cabin@liningfalse +\newif\ifcabin@tabular \cabin@tabularfalse +\newif\ifcabin@semibold \cabin@semiboldfalse +\newif\ifcabin@medium \cabin@mediumfalse +\newif\ifcabin@condensed \cabin@condensedfalse + \newcommand*{\Cabin@scale}{1} -\RequirePackage{xkeyval} \DeclareOptionX{scaled}{\renewcommand*{\Cabin@scale}{#1}} \DeclareOptionX{scale}{\renewcommand*{\Cabin@scale}{#1}} -\newif\ifcabin@default \cabin@defaultfalse +\DeclareOptionX{default}{\cabin@defaulttrue} \DeclareOptionX{sfdefault}{\cabin@defaulttrue} +\DeclareOptionX{type1}{\cabin@otffalse} +\DeclareOptionX{semibold}{\cabin@semiboldtrue} +\DeclareOptionX{bold}{\cabin@semiboldfalse} +\DeclareOptionX{medium}{\cabin@mediumtrue} +\DeclareOptionX{regular}{\cabin@mediumfalse} +\DeclareOptionX{condensed}{\cabin@condensedtrue} + +\ExecuteOptionsX{bold,regular} +\ProcessOptionsX\relax \ifcabin@otf - \DeclareOptionX{semibold}{\edef\cabin@boldstyle{SemiBold}} - \DeclareOptionX{bold}{\edef\cabin@boldstyle{Bold}} - \DeclareOptionX{medium}{\edef\cabin@regstyle{Medium}} - \DeclareOptionX{regular}{\edef\cabin@regstyle{Regular}} + \ifcabin@semibold + \edef\cabin@boldstyle{SemiBold} + \else + \edef\cabin@boldstyle{Bold} + \fi + \ifcabin@medium + \edef\cabin@regstyle{Medium} + \else + \edef\cabin@regstyle{Regular} + \fi + \else % type1 - \DeclareOptionX{semibold}{\renewcommand*{\bfdefault}{sb}} - \DeclareOptionX{bold}{\renewcommand*{\bfdefault}{b}} - \DeclareOptionX{medium}{\renewcommand*{\mddefault}{mb}} - \DeclareOptionX{regular}{\renewcommand*{\mddefault}{m}} + + \ifcabin@semibold + \renewcommand*{\bfdefault}{sb} + \else + \renewcommand*{\bfdefault}{b} + \fi + \ifcabin@medium + \renewcommand*{\mddefault}{mb} + \else + \renewcommand*{\mddefault}{m} + \fi +\fi + +\ifcabin@otf + \RequirePackage{fontspec} +\else + \RequirePackage{fontenc,fontaxes} \fi -\ExecuteOptionsX{bold,regular} -\ProcessOptionsX\relax \ifcabin@otf \ifxetex\XeTeXtracingfonts=1\fi @@ -44,26 +74,53 @@ Ligatures = TeX , Scale = \Cabin@scale , Extension = .otf } - \setsansfont - [ UprightFont = *-\cabin@regstyle , - ItalicFont = *-\cabin@regstyle Italic , - BoldFont = *-\cabin@boldstyle , - BoldItalicFont = *-\cabin@boldstyle Italic ] - {Cabin} - \ifcabin@default - \setmainfont + \ifcabin@condensed + \setsansfont + [ UprightFont = *-\cabin@regstyle , + ItalicFont = *-\cabin@regstyle Italic , + BoldFont = *-\cabin@boldstyle , + BoldItalicFont = *-\cabin@boldstyle Italic ] + {CabinCondensed} + \else + \setsansfont [ UprightFont = *-\cabin@regstyle , ItalicFont = *-\cabin@regstyle Italic , BoldFont = *-\cabin@boldstyle , BoldItalicFont = *-\cabin@boldstyle Italic ] {Cabin} \fi + % grab current family in case of subsequent change: + \let\cabinfamily\sfdefault + \ifcabin@default\renewcommand*\familydefault{\cabinfamily}\fi + \newfontfamily\cabin + [ UprightFont = *-\cabin@regstyle , + ItalicFont = *-\cabin@regstyle Italic , + BoldFont = *-\cabin@boldstyle , + BoldItalicFont = *-\cabin@boldstyle Italic ] + {Cabin} + \newfontfamily\cabincondensed + [ UprightFont = *-\cabin@regstyle , + ItalicFont = *-\cabin@regstyle Italic , + BoldFont = *-\cabin@boldstyle , + BoldItalicFont = *-\cabin@boldstyle Italic ] + {CabinCondensed} \else % type1 - \renewcommand*\sfdefault{Cabin-TLF} - \ifcabin@default - \renewcommand*\familydefault{Cabin-TLF} - \fi + \def\cabinfamily{Cabin-TLF} + \def\cabincondensedfamily{CabinCondensed-TLF} + \ifcabin@condensed + \renewcommand*\sfdefault{\cabincondensedfamily} + \ifcabin@default\renewcommand*\familydefault{\cabincondensedfamily}\fi + \else + \renewcommand*\sfdefault{\cabinfamily} + \ifcabin@default\renewcommand*\familydefault{\cabinfamily}\fi + \fi + \newcommand*\cabin{\fontfamily{\cabinfamily}\selectfont} + \newcommand*\cabincondensed{\fontfamily{\cabincondensedfamily}\selectfont} \fi +% turn off defaults in case other fonts are selected: +\ifcabin@otf + \defaultfontfeatures{} +\fi \endinput |