summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/fontspec
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-06-04 14:51:16 +0000
committerKarl Berry <karl@freefriends.org>2010-06-04 14:51:16 +0000
commit5951573660cc43025942d3e58fba2913a65315a9 (patch)
tree7140b9a8323327ab5a1d1dd71e94640a80377237 /Master/texmf-dist/source/latex/fontspec
parent943f8e7dc659d590fba8306ac7de79aad7b25c3a (diff)
fontspec 2.0b2 (2jun10)
git-svn-id: svn://tug.org/texlive/trunk@18727 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/fontspec')
-rw-r--r--Master/texmf-dist/source/latex/fontspec/Makefile23
-rw-r--r--Master/texmf-dist/source/latex/fontspec/fontspec.dtx224
-rw-r--r--Master/texmf-dist/source/latex/fontspec/fontspec.ins44
3 files changed, 188 insertions, 103 deletions
diff --git a/Master/texmf-dist/source/latex/fontspec/Makefile b/Master/texmf-dist/source/latex/fontspec/Makefile
index 9dad8ae2ea6..69be2e2721d 100644
--- a/Master/texmf-dist/source/latex/fontspec/Makefile
+++ b/Master/texmf-dist/source/latex/fontspec/Makefile
@@ -3,12 +3,11 @@
NAME = fontspec
DOC = $(NAME).pdf
DTX = $(NAME).dtx
-INS = $(NAME).ins
# Files grouped by generation mode
COMPILED = $(DOC)
UNPACKED = fontspec.sty fontspec-patches.sty fontspec.lua fontspec.cfg fontspec-luatex.tex fontspec-xetex.tex
-SOURCE = $(DTX) $(INS) Makefile README
+SOURCE = $(DTX) Makefile README
GENERATED = $(COMPILED) $(UNPACKED)
# Files grouped by installation location
@@ -16,7 +15,7 @@ UNPACKED_DOC = fontspec-luatex.tex fontspec-xetex.tex
RUNFILES = $(filter-out $(UNPACKED_DOC), $(UNPACKED))
DOCFILES = $(DOC) README $(UNPACKED_DOC)
-SRCFILES = $(DTX) $(INS) Makefile
+SRCFILES = $(DTX) Makefile
ALL_FILES = $(RUNFILES) $(DOCFILES) $(SRCFILES)
@@ -25,13 +24,14 @@ FORMAT = latex
RUNDIR = $(TEXMFROOT)/tex/$(FORMAT)/$(NAME)
DOCDIR = $(TEXMFROOT)/doc/$(FORMAT)/$(NAME)
SRCDIR = $(TEXMFROOT)/source/$(FORMAT)/$(NAME)
-TEXMFROOT = ./texmf
+TEXMFROOT = $(shell kpsewhich --var-value TEXMFHOME)
CTAN_ZIP = $(NAME).zip
TDS_ZIP = $(NAME).tds.zip
ZIPS = $(CTAN_ZIP) $(TDS_ZIP)
DO_PDFLATEX = pdflatex --interaction=batchmode $< >/dev/null
+DO_TEX = tex --interaction=batchmode $< >/dev/null
DO_MAKEINDEX = makeindex -s gind.ist $(subst .dtx,,$<) >/dev/null 2>&1
all: $(GENERATED)
@@ -48,7 +48,7 @@ $(COMPILED): $(DTX)
$(DO_PDFLATEX)
$(UNPACKED): $(DTX)
- $(DO_PDFLATEX)
+ $(DO_TEX)
$(CTAN_ZIP): $(SOURCE) $(COMPILED) $(TDS_ZIP)
@echo "Making $@ for CTAN upload."
@@ -69,9 +69,17 @@ $(TDS_ZIP): $(ALL_FILES)
@cd $(TEXMFROOT) && zip -9 ../$@ -r . >/dev/null
@$(RM) -r -- $(TEXMFROOT)
+# Rename the README for CTAN
+README: README.markdown
+ cp $< $@
+
.PHONY: install manifest clean mrproper
install: $(ALL_FILES)
+ @if test ! -n "$(TEXMFROOT)" ; then \
+ echo "Cannot locate your home texmf tree. Specify manually with\n\n make install TEXMFROOT=/path/to/texmf\n" ; \
+ false ; \
+ fi ;
@echo "Installing in '$(TEXMFROOT)'."
$(run-install)
@@ -83,8 +91,7 @@ manifest:
@for f in $(GENERATED); do echo $$f; done
clean:
- @$(RM) -- *.log *.aux *.toc *.idx *.ind *.ilg *.glo *.example
-
-mrproper: clean
+ @$(RM) -- *.log *.aux *.toc *.idx *.ind *.ilg *.glo *.gls *.example *.out *.synctex* *.tmp fontspec-style.sty *.ins fontspec*.pdf
@$(RM) -- $(GENERATED) $(ZIPS)
+
diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec.dtx
index 0f7f16c5218..fe714c0e29d 100644
--- a/Master/texmf-dist/source/latex/fontspec/fontspec.dtx
+++ b/Master/texmf-dist/source/latex/fontspec/fontspec.dtx
@@ -1,8 +1,6 @@
% \iffalse
%<*internal>
\begingroup
-%</internal>
-%<*batchfile>
\input docstrip.tex
\keepsilent
\usedir{tex/latex/fontspec}
@@ -32,25 +30,28 @@ This work consists of this file fontspec.dtx
and the derived files fontspec.sty,
fontspec.lua,
fontspec.cfg,
- fontspec.ins,
- fontspec-example.ltx,
+ fontspec-xetex.tex,
+ fontspec-luatex.tex,
and fontspec.pdf.
\endpostamble
\askforoverwritefalse
+
\def\MetaPrefix{-- }
\generate{\file{fontspec.lua} {\from{fontspec.dtx}{lua}}}
+
\let\MetaPrefix\DoubleperCent
\generate{\file{fontspec.sty} {\from{fontspec.dtx}{fontspec}}}
\generate{\file{fontspec-patches.sty} {\from{fontspec.dtx}{patches}}}
+
\nopreamble\nopostamble
\generate{\file{fontspec.cfg} {\from{fontspec.dtx}{cfg}}}
\generate{\file{fontspec-xetex.tex} {\from{fontspec.dtx}{example,xetex}}}
\generate{\file{fontspec-luatex.tex} {\from{fontspec.dtx}{example,luatex}}}
-%</batchfile>
-%<batchfile>\endbatchfile
-%<*internal>
-\generate{\file{fontspec.ins} {\from{fontspec.dtx}{batchfile}}}
+
+\def\tmpa{plain}
+\ifx\tmpa\fmtname\endgroup\expandafter\bye\fi
+
\generate{\file{fontspec-style.sty} {\from{fontspec.dtx}{doc-style}}}
\endgroup
%</internal>
@@ -61,7 +62,7 @@ This work consists of this file fontspec.dtx
%<fontspec>\ProvidesPackage{fontspec}
%<patches>\ProvidesPackage{fontspec-patches}
%<*fontspec|patches>
- [2010/05/27 v2.0b1 Advanced font selection for XeLaTeX/LuaLaTeX]
+ [2010/06/03 v2.0b2 Advanced font selection for XeLaTeX/LuaLaTeX]
%</fontspec|patches>
%
%<*driver>
@@ -161,7 +162,8 @@ This work consists of this file fontspec.dtx
% \cmd\XeTeX\ macro to typeset the \XeTeX\ logo.
%
% \paragraph{\LuaTeX\ users only}
-% In order to load fonts by their name rather than by their filename (\eg, `Latin Modern Roman' instead of `ec-lmr10'), you may need to run the script \texttt{mkluatexfontdb.lua}, which is distributed with the \pkg{luaotfload} package. Please see its documentation for more information.
+% In order to load fonts by their name rather than by their filename (\eg, `Latin Modern Roman' instead of `ec-lmr10'), you may need to run the script \texttt{mkluatexfontdb}, which is distributed with the \pkg{luaotfload} package. Note that if you do not execute this script beforehand, the first time you attempt to typeset the process will pause for (up to) several minutes. (But only the first time.)
+% Please see the \pkg{luaotfload} documentation for more information.
% Note that the \pkg{xunicode} package is not required as it has been
% incorporated directly into the unicode font definitions (see the \pkg{euenc} package for more information).
%
@@ -490,10 +492,10 @@ This work consists of this file fontspec.dtx
% others keep an eye out for problems.
%
% \cmdbox{
-% \cmd{\setmathrmfont} \oarg{font features} \marg{font name} \\
-% \cmd{\setmathsffont} \oarg{font features} \marg{font name} \\
-% \cmd{\setmathttfont} \oarg{font features} \marg{font name} \\
-% \cmd{\setboldmathrmfont} \oarg{font features} \marg{font name}
+% \cmd{\setmathrm} \oarg{font features} \marg{font name} \\
+% \cmd{\setmathsf} \oarg{font features} \marg{font name} \\
+% \cmd{\setmathtt} \oarg{font features} \marg{font name} \\
+% \cmd{\setboldmathrm} \oarg{font features} \marg{font name}
% }
%
% However, the default text fonts may not necessarily be the ones you
@@ -1090,7 +1092,7 @@ This work consists of this file fontspec.dtx
%
% \begin{features}{Contextuals}
% \otf{Swash}{cswh}
-% \otf*{Alternate}{calt}
+% \otf{Alternate}{calt}
% \otf{WordInitial}{init}
% \otf{WordFinal}{fina}
% \otf{LineFinal}{falt}
@@ -1575,7 +1577,7 @@ This work consists of this file fontspec.dtx
%
% \subsection{Font transformations}
%
-% In rare situations users may want to mechanically distort the shapes of the glyphs in the current font. Please don't overuse these features; they can be extremely ugly if overused.
+% In rare situations users may want to mechanically distort the shapes of the glyphs in the current font. Please don't overuse these features; they are \emph{not} a good alternative to having the real shapes.
%
% \begin{example}
% \fontspec{Charis SIL} \emph{ABCxyz} \quad
@@ -1594,6 +1596,18 @@ This work consists of this file fontspec.dtx
%
% If values are omitted, their defaults are as shown above.
%
+% If you want the bold shape to be faked automatically, or the italic shape
+% to be slanted automatically, use the \feat{AutoFakeBold} and
+% \feat{AutoFakeSlant} features. For example, the following two invocations
+% are equivalent:
+% \begin{verbatim}
+% \fontspec[AutoFakeBold=1.5]{Charis SIL}
+% \fontspec[BoldFeatures={FakeBold=1.5}]{Charis SIL}
+% \end{verbatim}
+%
+% If bolh of the \feat{AutoFake...} features are used, then the bold italic
+% font will also be faked.
+%
%
% \subsection{Different font technologies: \AAT\ and ICU}\label{sec:renderer}
%
@@ -2204,6 +2218,16 @@ This work consists of this file fontspec.dtx
% OpenType language tag |#1|.
% \end{macro}
%
+% \begin{macro}{\fontspec_set_family:Nnn}
+% \darg{family}
+% \darg{fontspec features}
+% \darg{font name}
+% Defines a new font family from given \meta{features} and \meta{font},
+% and stores the name in the variable \meta{family}.
+% See the standard \pkg{fontspec} user commands for applications of this
+% function.
+% \end{macro}
+%
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %
% \clearpage
% \part{The patching/improvement of \LaTeXe\ and other packages}
@@ -2221,7 +2245,7 @@ This work consists of this file fontspec.dtx
% information, which is more likely to be correct.
%
% \section{Unicode footnote symbols}
-% By default \LaTeX\ defines symbolic footnote characters in terms of commands
+% By default \LaTeX\ defines symbolic footnote characters in terms of commands
% that don't resolve well; better results can be achieved by using specific unicode characters or proper LICRs with the \pkg{xunicode} package.
%
% This problem has been solved by loading the
@@ -2270,7 +2294,7 @@ This work consists of this file fontspec.dtx
% \begin{macrocode}
\msg_new:nnn {fontspec} {not-pdftex}
{
- Requires XeTeX or LuaTeX to function!
+ Requires~ XeTeX~ or~ LuaTeX~ to~ function!
}
\xetex_if_engine:F {
\luatex_if_engine:TF {
@@ -2492,6 +2516,10 @@ This work consists of this file fontspec.dtx
{
Adjusting~ the~ maths~ setup~ (use~ [no-math]~ to~ avoid~ this).
}
+\msg_new:nnn {fontspec} {no-scripts}
+{
+ Font~ \zf@fontname~ does not contain any OpenType `Script' information.
+}
% \end{macrocode}
%
% \subsection{Option processing}
@@ -2528,7 +2556,7 @@ This work consists of this file fontspec.dtx
% designed to incorporate the hidden but useful parts of the old \pkg{xltxtra}
% package.
% \begin{macrocode}
-\luatex_if_engine:T { \RequirePackage{fontspec-patches} }
+\RequirePackage{fontspec-patches}
% \end{macrocode}
%
%
@@ -2576,8 +2604,8 @@ This work consists of this file fontspec.dtx
% family is selected.
% \begin{macrocode}
\DeclareDocumentCommand \fontspec { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \fontfamily\zf@family\selectfont
+ \fontspec_set_family:Nnn \f@family {#1}{#2}
+ \selectfont
\ignorespaces
}
% \end{macrocode}
@@ -2594,18 +2622,15 @@ This work consists of this file fontspec.dtx
% used in the document, the change registers immediately.
% \begin{macrocode}
\DeclareDocumentCommand \setmainfont { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \tl_set_eq:NN \rmdefault \zf@family
+ \fontspec_set_family:Nnn \rmdefault {#1}{#2}
\normalfont
}
\DeclareDocumentCommand \setsansfont { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \tl_set_eq:NN \sfdefault \zf@family
+ \fontspec_set_family:Nnn \sfdefault {#1}{#2}
\normalfont
}
\DeclareDocumentCommand \setmonofont { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \tl_set_eq:NN \ttdefault \zf@family
+ \fontspec_set_family:Nnn \ttdefault {#1}{#2}
\normalfont
}
% \end{macrocode}
@@ -2632,20 +2657,16 @@ This work consists of this file fontspec.dtx
% fonts should be used in \cmd\boldmath.
% \begin{macrocode}
\DeclareDocumentCommand \setmathrm { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \let\zf@rmmaths\zf@family
+ \fontspec_set_family:Nnn \zf@rmmaths {#1}{#2}
}
\DeclareDocumentCommand \setboldmathrm { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \let\zf@rmboldmaths\zf@family
+ \fontspec_set_family:Nnn \zf@rmboldmaths {#1}{#2}
}
\DeclareDocumentCommand \setmathsf { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \let\zf@sfmaths\zf@family
+ \fontspec_set_family:Nnn \zf@sfmaths {#1}{#2}
}
\DeclareDocumentCommand \setmathtt { O{} m } {
- \fontspec_select:nn{#1}{#2}
- \let\zf@ttmaths\zf@family
+ \fontspec_set_family:Nnn \zf@ttmaths {#1}{#2}
}
\@onlypreamble\setmathrm
\@onlypreamble\setboldmathrm
@@ -2672,7 +2693,7 @@ This work consists of this file fontspec.dtx
% \cs{zf@fontspec} is inefficient because it must parse the
% option arguments every time.
%
-% \cs{zf@fontspec} defines a font family and saves its name in
+% \cs{fontspec_select:nn} defines a font family and saves its name in
% \cs{zf@family}. This family is then used in a typical NFSS \cmd\fontfamily\
% declaration, saved in the macro name specified.
% \begin{macrocode}
@@ -3143,6 +3164,25 @@ This work consists of this file fontspec.dtx
\cs_generate_variant:Nn \tl_if_eq:nnTF {nv}
% \end{macrocode}
%
+% \begin{macro}{\fontspec_set_family:Nnn}
+% \darg{family}
+% \darg{fontspec features}
+% \darg{font name}
+% Defines a new font family from given \meta{features} and \meta{font},
+% and stores the name in the variable \meta{family}.
+% See the standard \pkg{fontspec} user commands for applications of this
+% function.
+%
+% We want to store the actual name of the font family within the \meta{family}
+% variable because the actual \LaTeX\ family name is automatically generated
+% by fontspec and it's easier to keep it that way.
+% \begin{macrocode}
+\cs_new:Npn \fontspec_set_family:Nnn #1#2#3 {
+ \fontspec_select:nn {#2}{#3}
+ \tl_set_eq:NN #1 \zf@family
+}
+% \end{macrocode}
+% \end{macro}
%
% \subsection{Internal macros}
% \label{sec:codeinternal}
@@ -3150,6 +3190,9 @@ This work consists of this file fontspec.dtx
% The macros from here in are used internally by all those defined above.
% They are not designed to remain consistent between versions.
%
+%
+%
+%
% \begin{macro}{\fontspec_select:nn}
% This is the command that defines font families for use, the underlying
% procedure of all \cmd\fontspec-like commands. Given a
@@ -3214,8 +3257,26 @@ This work consists of this file fontspec.dtx
% \begin{macrocode}
\zf@firsttimetrue
\ifzf@icu
- \fontspec_setkeys:xxx {feat} {Script} {\l_fontspec_script_name_tl}
- \fontspec_setkeys:xxx {feat} {Lang} {\l_fontspec_lang_name_tl}
+ \tl_if_empty:NTF \l_fontspec_script_name_tl {
+ \fontspec_check_script:nTF {latn}
+ {
+ \tl_set:Nn \l_fontspec_script_name_tl {Latin}
+ \tl_set:Nn \l_fontspec_script_tl {latn}
+ \tl_if_empty:NT \l_fontspec_lang_tl {
+ \tl_set:Nn \l_fontspec_lang_name_tl {Default}
+ \tl_set:Nn \l_fontspec_lang_tl {DFLT}
+ }
+ \fontspec_setkeys:xxx {feat} {Script} {\l_fontspec_script_name_tl}
+ \fontspec_setkeys:xxx {feat} {Lang} {\l_fontspec_lang_name_tl}
+ }
+ {
+ \fontspec_info:n {no-scripts}
+ }
+ }
+ {
+ \fontspec_setkeys:xxx {feat} {Script} {\l_fontspec_script_name_tl}
+ \fontspec_setkeys:xxx {feat} {Lang} {\l_fontspec_lang_name_tl}
+ }
\fi
\fontspec_get_features:n{\zf@font@feat}
\zf@firsttimefalse
@@ -3610,14 +3671,20 @@ This work consists of this file fontspec.dtx
\xetex_or_luatex:nnn { \tl_set:Nn \l_fontspec_pre_feat_tl }
{
\ifzf@icu
- script = \l_fontspec_script_tl ;
- language = \l_fontspec_lang_tl ;
+ \tl_if_empty:NF \l_fontspec_script_tl
+ {
+ script = \l_fontspec_script_tl ;
+ language = \l_fontspec_lang_tl ;
+ }
\fi
}
{
mode = \l_fontspec_mode_tl ;
- script = \l_fontspec_script_tl ;
- language = \l_fontspec_lang_tl ;
+ \tl_if_empty:NF \l_fontspec_script_tl
+ {
+ script = \l_fontspec_script_tl ;
+ language = \l_fontspec_lang_tl ;
+ }
}
% \end{macrocode}
% \end{macro}
@@ -3668,6 +3735,8 @@ This work consists of this file fontspec.dtx
% \begin{macrocode}
\tl_clear:N \zf@bf
\tl_clear:N \zf@it
+\tl_clear:N \zf@fake@slant
+\tl_clear:N \zf@fake@embolden
\tl_clear:N \zf@bfit
\tl_clear:N \zf@sl
\tl_clear:N \zf@bfsl
@@ -3679,6 +3748,10 @@ This work consists of this file fontspec.dtx
\tl_clear:N \zf@sl@feat
\tl_clear:N \zf@bfsl@feat
\tl_clear:N \zf@sc@feat
+\tl_clear:N \l_fontspec_script_name_tl
+\tl_clear:N \l_fontspec_script_tl
+\tl_clear:N \l_fontspec_lang_name_tl
+\tl_clear:N \l_fontspec_lang_tl
\clist_clear:N \l_fontspec_sizefeat_clist
% \end{macrocode}
% Or once per fontspec font invocation:
@@ -3690,10 +3763,6 @@ This work consists of this file fontspec.dtx
\cs_set_eq:NN \fontspec_namewrap:n \use:n
\tl_clear:N \l_fontspec_optical_size_tl
\tl_clear:N \l_fontspec_renderer_tl
- \tl_set:Nn \l_fontspec_script_name_tl {Latin}
- \tl_set:Nn \l_fontspec_script_tl {latn}
- \tl_set:Nn \l_fontspec_lang_name_tl {Default}
- \tl_set:Nn \l_fontspec_lang_tl {DFLT}
\luatex_if_engine:T {
\tl_set:Nn \l_fontspec_mode_tl {node}
\luatexprehyphenchar =`\- % fixme
@@ -3737,8 +3806,10 @@ This work consists of this file fontspec.dtx
% necessary.
% \begin{macrocode}
\cs_new:Npn \sclist_put_right:Nn #1#2 {
- \tl_if_empty:NT #1 {
-
+ \tl_if_empty:NTF #1 {
+ \tl_set:Nn #1 {#2}
+ }{
+ \tl_put_right:Nn #1 {;#2}
}
}
% \end{macrocode}
@@ -4334,8 +4405,17 @@ This work consists of this file fontspec.dtx
{
\dim_set:Nn #1 { \fontdimen #2 #3 }
}
+% \end{macrocode}
+% In Lua\TeX, fall back to manual calculations if necessary:
+% \begin{macrocode}
{
\dim_set:Nn #1 { \directlua{ fontspec.get_dimen(#2, "\cs_to_str:N #3") } }
+ \dim_compare:nNnT #1 = {0pt} {
+ \settoheight #1 {
+ \tl_if_eq:nnTF {#3} {\font} \rmfamily #3
+ \prg_case_int:nnn #2 { 5 x 8 X } {?}
+ }
+ }
}
% \end{macrocode}
% \end{macro}
@@ -4525,20 +4605,62 @@ This work consists of this file fontspec.dtx
% \end{macrocode}
%
% \subsubsection{Font transformations}
+% These are to be specified to apply directly to a font shape:
% \begin{macrocode}
-\define@key[zf]{options}{FakeSlant}{
+\define@key[zf]{options}{FakeSlant}[0.2]{
\zf@update@family{+slant:#1}
\zf@update@ff{slant=#1}
}
-\define@key[zf]{options}{FakeStretch}{
+\define@key[zf]{options}{FakeStretch}[1.2]{
\zf@update@family{+extend:#1}
\zf@update@ff{extend=#1}
}
-\define@key[zf]{options}{FakeBold}{
+\define@key[zf]{options}{FakeBold}[1.5]{
\zf@update@family{+embolden:#1}
\zf@update@ff{embolden=#1}
}
% \end{macrocode}
+% These are to be given to a shape that has no real bold/italic
+% to signal that \pkg{fontspec} should automatically create `fake' shapes.
+%
+% The behaviour is currently that only if both \opt{AutoFakeSlant} \emph{and}
+% \opt{AutoFakeBold} are specified, the bold italic is also faked.
+%
+% These features presently \emph{override} real shapes found in the font;
+% in the future I'd like these features to be ignored in this case, instead.
+% (This is just a bit harder to program in the current design of
+% \pkg{fontspec})
+% \begin{macrocode}
+\define@key[zf]{options}{AutoFakeSlant}[0.2]{
+ \ifzf@firsttime
+ \tl_set:Nn \zf@fake@slant {#1}
+ \tl_put_right:Nn \zf@it@feat {,FakeSlant=#1}
+ \tl_set_eq:NN \zf@it \zf@fontname
+ \zf@update@family{fakeit:#1}
+ \tl_if_empty:NF \zf@fake@embolden {
+ \tl_put_right:Nx \zf@bfit@feat
+ {,FakeBold=\zf@fake@embolden,FakeSlant=#1}
+ \tl_set_eq:NN \zf@bfit \zf@fontname
+ }
+ \fi
+}
+% \end{macrocode}
+% Same but reversed:
+% \begin{macrocode}
+\define@key[zf]{options}{AutoFakeBold}[1.5]{
+ \ifzf@firsttime
+ \tl_set:Nn \zf@fake@embolden {#1}
+ \tl_put_right:Nn \zf@bf@feat {,FakeBold=#1}
+ \tl_set_eq:NN \zf@bf \zf@fontname
+ \zf@update@family{fakebf:#1}
+ \tl_if_empty:NF \zf@fake@slant {
+ \tl_put_right:Nx \zf@bfit@feat
+ {,FakeSlant=\zf@fake@slant,FakeBold=#1}
+ \tl_set_eq:NN \zf@bfit \zf@fontname
+ }
+ \fi
+}
+% \end{macrocode}
%
%
% \subsubsection{Ligatures}
diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec.ins b/Master/texmf-dist/source/latex/fontspec/fontspec.ins
deleted file mode 100644
index 546ccbce69d..00000000000
--- a/Master/texmf-dist/source/latex/fontspec/fontspec.ins
+++ /dev/null
@@ -1,44 +0,0 @@
-\input docstrip.tex
-\keepsilent
-\usedir{tex/latex/fontspec}
-\let\MetaPrefix\relax
-\preamble
-
- _________________________________________
- The fontspec package for XeLaTeX/LuaLaTeX
- (C) 2004--2010 Will Robertson and Khaled Hosny
-
- License information appended.
-
-\endpreamble
-\postamble
-
-Copyright 2004--2010 Will Robertson <wspr81@gmail.com>
-Copyright 2009--2010 Khaled Hosny <khaledhosny@eglug.org>
-
-Distributable under the LaTeX Project Public License,
-version 1.3c or higher (your choice). The latest version of
-this license is at: http://www.latex-project.org/lppl.txt
-
-This work is "author-maintained" by Will Robertson.
-
-This work consists of this file fontspec.dtx
- and the derived files fontspec.sty,
- fontspec.lua,
- fontspec.cfg,
- fontspec.ins,
- fontspec-example.ltx,
- and fontspec.pdf.
-
-\endpostamble
-\askforoverwritefalse
-\def\MetaPrefix{-- }
-\generate{\file{fontspec.lua} {\from{fontspec.dtx}{lua}}}
-\let\MetaPrefix\DoubleperCent
-\generate{\file{fontspec.sty} {\from{fontspec.dtx}{fontspec}}}
-\generate{\file{fontspec-patches.sty} {\from{fontspec.dtx}{patches}}}
-\nopreamble\nopostamble
-\generate{\file{fontspec.cfg} {\from{fontspec.dtx}{cfg}}}
-\generate{\file{fontspec-xetex.tex} {\from{fontspec.dtx}{example,xetex}}}
-\generate{\file{fontspec-luatex.tex} {\from{fontspec.dtx}{example,luatex}}}
-\endbatchfile