From 0dab54f456cb3cdc9da2762f1fa4ca773990d91c Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Thu, 18 Jun 2015 23:16:06 +0000
Subject: nfssext-cfr (18jun15)

git-svn-id: svn://tug.org/texlive/trunk@37601 c570f23f-e606-0410-a88d-b1316a301751
---
 .../tex/latex/nfssext-cfr/nfssext-cfr.sty          | 31 +++++++++++++++++-----
 1 file changed, 24 insertions(+), 7 deletions(-)

(limited to 'Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty')

diff --git a/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty
index c508efaf359..e5217b92a24 100644
--- a/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty
+++ b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty
@@ -1,5 +1,5 @@
 %% nfssext-cfr.sty
-%% Additions and changes are copyright 2008 Clea F. Rees
+%% Additions and changes are copyright 2010 Clea F. Rees
 %% Code from nfssext.sty copyright 2003 Philipp Lehman (see below)
 %
 % This work may be distributed and/or modified under the
@@ -27,13 +27,13 @@
 % nfssext.sty is included in the files for tutorials 3, 5 and 6.
 %
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{nfssext-cfr}[2008/11/08 specially mangled by cfr; based on 2003/03/14 v1.2 Experimental NFSS Extensions]
-%:cfr-added
+\ProvidesPackage{nfssext-cfr}[2010/07/17 specially mangled by cfr; based on 2003/03/14 v1.2 Experimental NFSS Extensions]
+%:cfr-added: use ifthen
 \RequirePackage{ifthen}
 %:end-added
 \newcommand*{\exfs@tempa}{}
 \newcommand*{\exfs@tempb}{}
-%:cfr-added
+%:cfr-added: extra variable (\exfs@tempf)
 \newcommand*{\exfs@tempf}{}
 %:end-added
 \newcommand*{\exfs@try@family}[2][]{%
@@ -81,7 +81,7 @@
   \exfs@tempa}
 %:end-added
 \def\exfs@get@base#1#2#3#4\@nil{#1#2#3}
-%:cfr-added
+%:cfr-added:more \exfs@ commands (get@variants, next, shift, first, part, second)
 \def\exfs@get@variants#1#2#3#4\@nil{#4}
 \def\exfs@next#1#2\@nil{#1}
 \def\exfs@shift#1#2\@nil{#2}
@@ -119,7 +119,7 @@
 		\edef\exfs@tempq{\exfs@tempf}%
 		\addedtrue
 	\else
-		\gdef\set{0,1,2,a,d,e,f,h,j,l,p,q,s,t,v,w}%
+		\gdef\set{0,1,2,a,d,e,f,h,j,l,p,q,s,t,v,w}% these are the variants to consider - the order here and in the font name is crucial
 		\ifx\tempo\exfs@tempf
 			\@for \xx:=\set \do {%
 				% check whether there are variants left - if not set the ``next variant'' to empty 
@@ -212,6 +212,10 @@
 \DeclareRobustCommand{\ltstyle}{%
 	\not@math@alphabet\ltstyle\relax
 	\exfs@merge@families{l}}
+%let's hope there aren't any fonts with a light family *and* an outline/openface/blank version
+\DeclareRobustCommand{\ofstyle}{%
+	\not@math@alphabet\ofstyle\relax
+	\exfs@merge@families{l}}
 \DeclareRobustCommand{\altstyle}{%	alternative style
 	\not@math@alphabet\altstyle\relax
 	\exfs@merge@families{a}}
@@ -507,7 +511,7 @@
 %\DeclareRobustCommand{\scshape}{%
 %  \not@math@alphabet\scshape\relax
 %  \exfs@merge@shape{\scdefault}{\itdefault}{\sidefault}}
-%:cfr-altered
+%:cfr-altered: \scshape
 \DeclareRobustCommand{\scshape}{%
   \not@math@alphabet\scshape\relax
   \def\tempu{u}%
@@ -543,6 +547,7 @@
 %:families
 \DeclareTextFontCommand{\textti}{\tistyle}
 \DeclareTextFontCommand{\textlt}{\ltstyle}
+\DeclareTextFontCommand{\textof}{\ofstyle}						% open-face (or outline or blank) style
 \DeclareTextFontCommand{\textalt}{\altstyle}					% alternative style
 \DeclareTextFontCommand{\textreg}{\regstyle}					% ``regular'' style
 \DeclareTextFontCommand{\emboss}{\embossstyle}
@@ -613,4 +618,16 @@
       \selectfont\char\exfs@tempa
     \endgroup
   \fi}
+%:add microtype hooks
+%:partly from microtype docs; partly from MinionPro package
+\def\nfssextcfr@MT@Hook{%
+%	\DeclareMicrotypeVariants{x,j,w,a,d,0,1}% this is the default declaration according to the docs
+%	\DeclareMicrotypeVariants*{2,e,h,l}% this should *append* the variants (what do I use 'f' for? better take it out...)
+	\DeclareMicrotypeVariants*{2,2d,2dj,2j,dj,e,h,l}% is this necessary or would the previous line be enough?
+	}
+\@ifpackageloaded{microtype}{%
+  \nfssextcfr@MT@Hook}{%
+  \@ifundefined{Microtype@Hook}{%
+  	\let\Microtype@Hook\nfssextcfr@MT@Hook}{% MinionPro has \global before this
+	\g@addto@macro\Microtype@Hook{\nfssextcfr@MT@Hook}}}
 \endinput
-- 
cgit v1.2.3

