diff options
Diffstat (limited to 'Master/texmf-dist/tex/fontinst/base/finstmsc.sty')
-rw-r--r-- | Master/texmf-dist/tex/fontinst/base/finstmsc.sty | 1365 |
1 files changed, 1365 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/fontinst/base/finstmsc.sty b/Master/texmf-dist/tex/fontinst/base/finstmsc.sty new file mode 100644 index 00000000000..cb64adfb232 --- /dev/null +++ b/Master/texmf-dist/tex/fontinst/base/finstmsc.sty @@ -0,0 +1,1365 @@ +%% +%% This is file `finstmsc.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% fibasics.dtx (with options: `pkg') +%% ficommon.dtx (with options: `pkg') +%% fimain.dtx (with options: `misc') +%% ficonv.dtx (with options: `misc') +%% fimapgen.dtx (with options: `map') +%% fibasics.dtx (with options: `pkg2,misc') +%% +%% This is a generated file. +%% +%% Copyright 1993, 1994, 1995, 1996 Alan Jeffrey, +%% hacked and maintained 1997, 1998 Sebastian Rahtz, +%% copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004 the fontinst +%% maintenance team and any individual authors listed elsewhere in +%% this file. All rights reserved. +%% +%% This file is part of the fontinst system version 1.9. +%% ----------------------------------------------------- +%% +%% It may be distributed under the terms of the LaTeX Project Public +%% License, as described in lppl.txt in the base LaTeX distribution. +%% Either version 1.1 or, at your option, any later version. +%% +%%% From file: fibasics.dtx +\catcode`\{=1 +\catcode`\}=2 +\catcode`\#=6 +\catcode`\^=7 +\def\fontinstversion{1.927} +\ifx\ProvidesPackage\undefined + \def\NeedsTeXFormat#1{} + \def\ProvidesPackage#1[#2]{} +\fi +\ProvidesPackage{fontinst} +[2004/08/07 v\fontinstversion\space + fontinst installation package] +\def\a_macro#1{\catcode\number`#1=\the\catcode`#1 } +\edef\normalcc{% + \a_macro{\ }\a_macro{\^^M}\a_macro{\@}\a_macro{\_}\a_macro{\~} +} +\def\fontinstcc{% + \catcode`\ =9% + \catcode`\^^M=9% + \catcode`\@=11% + \catcode`\_=11% + \catcode`\~=10 +} +\fontinstcc +\ifx\@ne\undefined_command + \input fontinst.ini\relax +\fi +\ifx\bye\undefined_command + \def\supereject{\par\penalty-\@MM} + \outer\expandafter\def \csname bye\endcsname + {\par\vfill\supereject\@@end} +\fi +\newcount\a_count +\newcount\b_count +\newcount\c_count +\newcount\d_count +\newcount\e_count +\newcount\f_count +\newcount\g_count +\newdimen\a_dimen +\newdimen\b_dimen +\newdimen\c_dimen +\newdimen\d_dimen +\newtoks\a_toks +\newtoks\b_toks +\newtoks\c_toks +\newif\if_a_ +\newwrite\out_file +\mathchardef\one_thousand=1000 +\mathchardef\five_hundred=500 +\mathchardef\one_hundred=100 +\mathchardef\max_mathchardef="7FFF +\mathchardef\two_thousand=2000 +\newdimen\half_point \half_point=0.5pt +\let\@tempdima\a_dimen +\let\@tempdimb\b_dimen +\input trig.sty +\def\x_cs#1#2{\expandafter#1\csname#2\endcsname} +\let\x_relax=\relax +\def\g_let{\global\let} +\def\empty_command{} +\def\gobble_one#1{} +\def\gobble_two#1#2{} +\def\gobble_three#1#2#3{} +\def\identity_one#1{#1} +\def\first_of_two#1#2{#1} +\def\second_of_two#1#2{#2} +\def\swap_two#1#2{#2#1} +\def\first_of_three#1#2#3{#1} +\bgroup + \catcode`\[=1 + \catcode`\]=2 + \catcode`\#=12 + \catcode`\%=12 + \catcode`\{=12 + \catcode`\}=12 + \gdef\hash_char[#] + \gdef\percent_char[%] + \gdef\left_brace_char[{] + \gdef\right_brace_char[}] +\egroup +\def\first_char#1#2={#1} +\def\add_to#1#2{ + \ifx#1\x_relax + \def#1{#2} + \else + \expandafter\def\expandafter#1\expandafter{#1#2} + \fi +} +\def\prep_to#1#2{ + \ifx#1\x_relax + \expandafter\def\expandafter#1\expandafter{\expandafter#2} + \else + \expandafter\def\expandafter#1\expandafter{\expandafter#2#1} + \fi +} +\def\never_do{\noexpand\do} +\newif\if_extensions_warning_ +\_extensions_warning_false +\ifx \eTeXversion\undefined_command + \catcode`\~=14 % 14=comment +\fi +\def\eTeX#1{ + \if_extensions_warning_ + \space/\space e-TeX\space version\space #1 +~ \else +~ \ifdim \number\eTeXversion\eTeXrevision\p@ < #1\p@ \else +~ \_a_true +~ \fi + \fi +} +\catcode`\~=10 +\ifx \pdftexversion\undefined_command + \catcode`\~=14 % 14=comment +\fi +\def\pdfTeX#1#2{% + \if_extensions_warning_ + \space/\space pdfTeX\space version\space + \ifnum #1<100\space + 0.\ifnum #1<10\space 0\fi + \else + \expandafter\swap_two \expandafter. + \fi + #1#2% +~ \else +~ \ifdim #1>\pdftexversion \else +~ \ifnum \expandafter\expandafter \expandafter` +~ \expandafter\first_char \pdftexrevision= < +~ \expandafter` \first_char#2= +~ \else \_a_true \fi +~ \fi + \fi +} +\catcode`\~=10 +\def\needsTeXextension#1#2{ + \_a_false + #1 + \if_a_ \else + \_extensions_warning_true + \edef\a_macro{#1} + \_extensions_warning_false + \fontinstwarningnoline{#2}{ + This~file~needs:\messagebreak + \expandafter\second_of_two\a_macro + \iffalse + <no~sufficient~extensions~were~listed!!>\if_false + \fi + \messagebreak + You~are~not~using~any~of~them.~This~is~likely~to~cause~errors + } + \fi +} +\def\open_out#1{ + \immediate\openout\out_file=#1 \xdef\out_filename{#1}} +\def\close_out#1{ + \immediate\write16{#1~written~on~\out_filename.} + \immediate\closeout\out_file} +\def\out_line#1{\immediate\write\out_file{#1}} +\edef\out_lline#1{\noexpand\out_line{\space\space\space#1}} +\edef\out_llline#1{ + \noexpand\out_line{\space\space\space\space\space\space#1} +} +\def\TeX_terminal{\string\TeX\space terminal} +\chardef\closed_stream=99 +\x_cs\let{out_filename-99}=\TeX_terminal +\x_cs\def{out_filename--1}{\jobname.log} +\def\allocate_stream{ + \a_count=\m@ne + \b_count=\m@ne + \loop \ifnum \count17>\a_count + \advance \a_count \@ne + \x_cs\ifx{out_filename-\the\a_count}\TeX_terminal + \b_count=\a_count + \a_count=\count17 + \fi + \repeat + \ifnum \b_count=\m@ne + \global\advance\count17by\@ne + \ifnum \count17<\sixt@@n + \b_count=\count17 + \global\x_cs\let{out_filename-\the\b_count}\TeX_terminal + \wlog{\string\write\the\b_count\space allocated~to~the~pool.} + \else + \global\count17=\sixt@@n + \fi + \fi +} +\def\ch@ck#1#2#3{ + \ifnum \count1#1<#2 \else + \errmessage{No~room~for~a~new~#3} + \global\count1#1=#2 + \fi +} +\def\open_pout#1#2{ + \allocate_stream + \ifnum \b_count=\m@ne + \immediate\write\sixt@@n{fontinst~is~out~of~output~streams.^^J + Output~file~#2~cannot~be~opened.^^J + Writes~will~be~redirected~to~the~log~file. + } + \gdef#1{\m@ne} + \else + \immediate\openout\b_count=#2\x_relax + \x_cs\xdef{out_filename-\the\b_count}{#2} + \global\chardef#1=\b_count + \fi +} +\def\close_pout#1#2{ + \ifnum #1=\closed_stream + \errmessage{Output~file~\string#1~(#2)~not~closed,^^J + since~it~was~not~open} + \else + \immediate\write\sixt@@n{#2~written~on~ + \csname out_filename-\the#1\endcsname.} + \ifnum #1=\m@ne \else + \immediate\closeout#1 + \global\x_cs\let{out_filename-\the#1}=\TeX_terminal + \fi + \global\chardef#1=\closed_stream + \fi +} +\def\pout_line#1#2{\immediate\write#1{#2}} +\edef\pout_lline#1#2{\noexpand\pout_line#1{\space\space\space#2}} +\edef\pout_llline#1#2{ + \noexpand\pout_line#1{\space\space\space\space\space\space#2} +} +\def\tempfileprefix#1{\def\temp_prefix{#1}} +\tempfileprefix{} +\let\then=\iffalse +\def\if_false{\iffalse} +\def\if_true{\iftrue} +\_a_false\eTeX{2.0} +\if_a_\else \catcode`\~=14\x_relax \fi +~ \def\if_defined#1\then{ +~ \if +~ \ifcsname#1\endcsname +~ \expandafter\ifx \csname#1\endcsname \x_relax +~ 0 +~ \else +~ 1 +~ \fi +~ \else +~ 0 +~ \fi +~ 1 +~ } +~ \def\if_undefined{\expandafter\unless\if_defined} +\catcode`\~=\if_a_ 14 \else 10 \fi \x_relax +~ \def\if_defined#1\then{ +~ \expandafter\ifx \csname#1\endcsname\x_relax +~ \expandafter\if_false +~ \else +~ \expandafter\if_true +~ \fi +~ } +~ \def\if_undefined#1\then{ +~ \expandafter\ifx \csname#1\endcsname\x_relax +~ } +\catcode`\~=10\x_relax +\def\gobble_if{\iftrue\else} +\def\if_or#1\or_else#2\then{ + #1\then + \expandafter\if_true + \else + #2\then + \expandafter\expandafter\expandafter\if_true + \else + \expandafter\expandafter\expandafter\if_false + \fi + \fi +} +\def\if_equal#1\then{\ifx#1} +\def\if_file_exists#1\then{ + \immediate\openin1=#1\x_relax + \ifeof1\x_relax + \immediate\closein1 + \expandafter\if_false + \else + \immediate\closein1 + \expandafter\if_true + \fi +} +\let\Else=\else +\let\Fi=\fi +\x_cs\ifx{@@input}\x_relax + \let\primitiveinput=\input +\else + \let\primitiveinput=\@@input +\fi +\def\process_csep_list#1#2,{ + \ifx\process_csep_list#2 + \expandafter\gobble_one + \else + \expandafter\identity_one + \fi{ + #1{#2} + \process_csep_list{#1} + } +} +\def\make_factor#1{ + \ifnum #1<\z@ + -\expandafter\make_factor_i\expandafter{\number-#1} + \else + \expandafter\make_factor_i\expandafter{\number#1} + \fi +} +\def\make_factor_i#1{ + \ifnum #1<\one_thousand + \make_factor_ii{#1} + \else + \make_factor_iii #1 + \fi + #1 +} +\def\make_factor_ii#1{ + 0. + \ifnum #1<\one_hundred + 0 + \ifnum #1<10~ 0\fi + \fi +} +\def\make_factor_iii#1#2#3\fi#4{ + \fi + #4 + \ifnum 1#3<\one_thousand + . + \else + \make_factor_iii#2#3 + \fi +} +{ + \catcode`\p=12 + \catcode`\t=12 + \gdef\lose_measure#1pt{#1} +} +\let\messagebreak\x_relax +\def\generic_info#1#2{ + \begingroup + \def\messagebreak{^^J#1} + \immediate\write\m@ne{#2\on_line.} + \endgroup +} +\def\generic_warning#1#2{ + \begingroup + \def\messagebreak{^^J#1} + \immediate\write\closed_stream{^^J#2\on_line.^^J} + \endgroup +} +\def\generic_error#1#2#3#4{ + \begingroup + \immediate\write\closed_stream{} + \def\messagebreak{^^J} + \edef\a_macro{{#4}} + \errhelp\a_macro + \def\messagebreak{^^J#1} + \errmessage{#2.^^J^^J#3 + Type~\space H~<return>~\space for~immediate~help + } + \endgroup +} +\def\fontinsterror#1#2#3{ + \generic_error{ + \four_spaces\four_spaces + }{ + #1~error:\messagebreak #2 + }{ + }{#3} +} +\def\fontinstwarning#1#2{ + \generic_warning{ + \four_spaces\four_spaces + }{ + #1~warning:\messagebreak #2 + } +} +\def\fontinstwarningnoline#1#2{ + \fontinstwarning{#1}{#2\gobble_one} +} +\def\fontinstinfo#1#2{ + \generic_info{ + \four_spaces\four_spaces + }{ + #1~info:\messagebreak #2 + } +} +\def\on_line{~on~input~line~\the\inputlineno} +\edef\four_spaces{\space\space\space\space} +\gdef\error_help_a{ + Your~command~was~ignored.\messagebreak + Type~\space I~<command>~<return>~\space to~replace~it~ + with~another~command,\messagebreak + or~\space <return>~\space to~continue~without~it.} +\gdef\error_help_c{ + Try~typing~\space <return>~ + \space to~proceed.\messagebreak + If~that~doesn't~work,~type~\space X~<return>~\space to~quit.} +\gdef\error_help_d{ + You're~in~trouble~here.~\space\error_help_c} +\def\error_help_e#1{You~can~continue,~but~the~#1~wrong.} +\newlinechar=`\^^J +\errorcontextlines=999 +\tracinglostchars=1 +%%% From file: ficommon.dtx +\def\str#1{\csname~s-#1\endcsname} +\def\strint#1{\expandafter\identity_one\expandafter{\number\int{#1}}} +\newcount\result +\def\eval_expr#1{\global\result=#1\x_relax} +\def\eval_expr_to#1#2{\eval_expr{#2}#1=\result} +\def\g_eval_expr_to#1#2{\eval_expr{#2}\global#1=\result} +\def\add#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \global\advance \result \a_count + \egroup +} +\def\sub#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \advance \a_count -\result + \global\result=\a_count + \egroup +} +\def\int#1{\csname i-#1 \endcsname} +\def\neg#1{#1 \global\result=-\result} +\def\mul#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \global\multiply \result \a_count + \egroup +} +\def\div#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \divide \a_count \result + \global\result=\a_count + \egroup +} +\def\max#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \ifnum \a_count>\result \global\result=\a_count \fi + \egroup +} +\def\min#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \ifnum \a_count<\result \global\result=\a_count \fi + \egroup +} +\def\half#1{ + #1\x_relax + \ifodd\result + \global\advance \result \@ne + \global\divide \result \tw@ + \ifodd\result \global\advance \result \m@ne \fi + \else + \global\divide \result \tw@ + \fi +} +\def\otherhalf#1{ + #1\x_relax + \ifodd\result + \global\advance \result \@ne + \global\divide \result \tw@ + \ifodd\result \else \global\advance \result \m@ne \fi + \else + \global\divide \result \tw@ + \fi +} +\def\scale#1#2{ + #1 + \bgroup + \a_count=\result + \eval_expr{#2} + \global\multiply \result \a_count + \rounded_thousandths + \egroup +} +\def\rounded_thousandths{ + \global\divide \result \five_hundred + \ifodd \result + \global\advance \result by \ifnum 0>\result - \fi 1 + \fi + \global\divide \result \tw@ +} +\def\l_rounded_thousandths#1{ + \divide #1 \five_hundred + \ifodd #1 + \advance #1 by \ifnum 0>#1 - \fi\@ne + \fi + \divide #1 \tw@ +} +\def\l_inv_scale#1#2{ + \multiply #1 \two_thousand + \divide #1 #2\x_relax + \ifodd#1 \advance #1 \ifnum 0>#1 - \fi\@ne \fi + \divide #1 \tw@ +} +\def\ifnumber#1#2#3\then{ + \eval_expr_to\a_count{#1} + \eval_expr{#3} + \ifnum \a_count#2\result + \expandafter\if_true + \else + \expandafter\if_false + \fi +} + +\let\setsomething_global=\x_relax +\def\x_setint#1#2{ + \x_cs\ifx{i-#1}\x_relax + \x_resetint{#1}{#2} + \fi +} +\let\setint=\x_setint +\def\x_setstr#1#2{ + \x_cs\ifx{s-#1}\x_relax + \setsomething_global\x_cs\edef{s-#1}{#2} + \fi +} +\let\setstr=\x_setstr +\def\setdim#1#2{ + \x_cs\ifx{d-#1}\x_relax + \a_dimen=#2\x_relax + \setsomething_global\x_cs\edef{d-#1}{\the\a_dimen} + \fi +} +\def\setcommand#1{ + \ifx#1\undefined_command + \setsomething_global \expandafter\def \expandafter#1 + \else + \expandafter\def \expandafter\a_macro + \fi +} +\def\x_resetint#1#2{ + \eval_expr{#2} + \setsomething_global + \ifnum\result<\max_mathchardef + \ifnum 0>\result + \x_cs\edef{i-#1}{\the\result} + \else + \x_cs\mathchardef{i-#1}=\result + \fi + \else + \x_cs\edef{i-#1}{\the\result} + \fi +} +\let\resetint=\x_resetint +\def\resetstr#1#2{\setsomething_global\x_cs\edef{s-#1}{#2}} +\def\resetdim#1#2{ + \a_dimen=#2 + \setsomething_global\x_cs\edef{d-#1}{\the\a_dimen} +} +\def\resetcommand#1{\setsomething_global\def#1} +\def\dim#1{\csname~d-#1\endcsname} +\def\ifisint#1\then{\if_defined i-#1\then} +\def\ifisstr#1\then{\if_defined s-#1\then} +\def\ifisdim#1\then{\if_defined d-#1\then} +\def\ifiscommand#1\then{ + \ifx#1\undefined_command + \expandafter\if_false + \else + \expandafter\if_true + \fi +} +\def\unsetint#1{\setsomething_global\x_cs\let{i-#1}\x_relax} +\def\unsetstr#1{\setsomething_global\x_cs\let{s-#1}\x_relax} +\def\unsetdim#1{\setsomething_global\x_cs\let{d-#1}\x_relax} +\def\unsetcommand#1{\setsomething_global\let#1=\undefined_command} +\def\offcommand#1{ + \x_cs\ifx{saved-\string#1}\x_relax + \setsomething_global\x_cs\let{saved-\string#1}#1 + \x_cs\ifx{off-\string#1}\x_relax + \generate_off_command{#1} + \else + \setsomething_global \expandafter\let \expandafter#1 + \csname off-\string#1\endcsname + \fi + \fi +} +\def\oncommand#1{ + \x_cs\ifx{saved-\string#1}\x_relax \else + \setsomething_global \expandafter\let \expandafter#1 + \csname saved-\string#1\endcsname + \setsomething_global\x_cs\let{saved-\string#1}\x_relax + \fi +} +\def\generate_off_command#1{ + \a_count=0 + \let\next=\count_hashes + \expandafter\next\meaning#1~->\x_relax + \b_count=0 + \a_toks={} + \loop \ifnum \b_count<\a_count + \advance \b_count 1 + \a_toks=\expandafter{\the\expandafter\a_toks \expandafter#### + \the\b_count} + \repeat + \setsomething_global \expandafter\def \expandafter#1 \the\a_toks {} +} +\def\count_hashes#1#2{ + \if \hash_char#1 + \advance \a_count 1 + \else + \if -#1 + \if >#2 + \let\next=\gobble_to_xrelax + \fi\fi + \fi + \next#2 +} +\def\gobble_to_xrelax#1\x_relax{} +\def\for(#1)#2#3#4{ + \eval_expr_to\a_count{#2} + \x_resetint{#1}{\a_count} + \eval_expr{#4} + \ifnum 0=\result \else + \c_count=\result + \eval_expr_to\b_count{#3} + \setsomething_global\x_cs\edef{for-#1}{ + \the\c_count \x_relax + \noexpand\ifnum \gobble_one\fi + \the\b_count \ifnum 0>\c_count > \else < \fi + } + \def\next##1##2##3\endfor(#1){##2\for_i{##1}{##3}} + \next{#1} + \fi +} +\def\for_i#1#2{ + \setsomething_global\x_cs\def{body-#1}{#2} + \ifnum \b_count \ifnum0>\c_count >\else<\fi \a_count + \expandafter\gobble_two + \else + \csname body-#1 \expandafter\endcsname + \fi + \for_ii{#1} +} +\def\for_ii#1{ + \a_count=\int{#1} + \advance \a_count \csname for-#1\endcsname \a_count + \expandafter\gobble_two + \else + \x_resetint{#1}\a_count + \csname body-#1 \expandafter\endcsname + \fi + \for_ii{#1} +} +\def\endfor(#1){} +\def\foreach(#1)#2{ + \def\next##1\endfor(#1){ + \setsomething_global\x_cs\def{body-#1}{##1} + \process_csep_list{\foreach_i{#1}}#2,\process_csep_list, + } + \next +} +\def\foreach_i#1#2{ + \resetstr{#1}{#2} + \csname body-#1\endcsname +} +\let\comment=\gobble_one +\let\begincomment=\iffalse +\let\endcomment=\fi +%%% From file: fimain.dtx +\def\inputetx#1{ + \edef\lowercase_file{\lowercase{ + \edef\noexpand\lowercase_file{#1}}} + \lowercase_file + \slot_number=0 + \def\relax{\let\relax=\x_relax\iffalse} + \let\encoding=\fi + \primitiveinput \lowercase_file.etx\x_relax + \let\relax=\x_relax +} +\let\encoding=\relax +\outer\def\endencoding{\endinput} +\def\setslot#1{\edef\slot_name{#1}\do_slot} +\def\endsetslot{\end_do_slot\advance\slot_number by 1\x_relax} +\let\do_slot\empty_command +\let\end_do_slot\empty_command +\newcount\slot_number +\def\nextslot#1{\eval_expr_to\slot_number{#1}} +\def\skipslots#1{\eval_expr{#1} \advance\slot_number by \result} +\let\setleftboundary=\gobble_one +\let\endsetleftboundary=\x_relax +\def\setrightboundary#1{ + \makerightboundary{#1} + \advance \slot_number 1\x_relax +} +\let\ligature=\gobble_three +\def\Ligature{\ligature} +\def\oddligature#1#2#3#4{} +\let\nextlarger=\gobble_one +\let\usedas=\gobble_two +\let\makerightboundary=\gobble_one +\let\Unicode=\gobble_two +\let\varchar=\empty_command +\let\vartop=\gobble_one +\let\varmid=\gobble_one +\let\varbot=\gobble_one +\let\varrep=\gobble_one +\let\endvarchar=\empty_command +\let\useexamplefont=\gobble_one +\let\slotexample=\empty_command +\let\setslotcomment=\gobble_one +\let\resetslotcomment=\gobble_one +\let\unsetslotcomment=\empty_command +\let\setfontdimen\gobble_two +\let\label=\gobble_one +\newif\ifdirect \directtrue +\def\input_mtx_as_etx#1{ + \def\setscaledrawglyph##1##2##3##4##5##6##7##8##9{ + \nextslot{##5} + \setslot{##1}\endsetslot + } + \offcommand\setscalednotglyph + \let\setglyph=\gobble_glyph + \offcommand\setkern + \inputmtx{#1} +} +\def\inputmtx#1{ + \def\relax{\let\relax=\x_relax\iffalse} + \let\metrics=\fi + \primitiveinput #1.mtx\x_relax + \let\relax=\x_relax +} +\let\metrics=\x_relax +\edef\endmetrics_text{\string\endmetrics} +\outer\def\endmetrics{\endinput} +\let\setkern=\gobble_three +\long\def\setglyph#1\endsetglyph{} +\def\setrawglyph#1#2#3#4#5#6#7#8{} +\def\setscaledrawglyph#1#2#3#4#5#6#7#8#9{} +\let\setnotglyph=\setrawglyph +\let\setscalednotglyph=\setscaledrawglyph +\def\ifisglyph#1\then{\iffalse} +\let\ifareglyphs=\ifisglyph +%%% From file: ficonv.dtx +\newif\ifmissingslots +\x_cs\def{o-.notdef}#1{\global\missingslotstrue} +{ + \catcode`\/=\active + \catcode`\]=\active + \gdef\enctoetx#1#2{{ + \catcode`\/=\active + \catcode`\]=\active + \def/##1[{ + \a_count=0 + \global\missingslotsfalse + \def/####1~{ + \csname~o-####1\endcsname{ + \ifmissingslots + \out_line{\string\nextslot{\the\a_count}} + \fi + \global\missingslotsfalse + \out_line{\string\setslot{####1}} + \out_line{\string\endsetslot} + \out_line{} + } + \advance\a_count by 1 + } + } + \def]~def{} + \make_etx{#1}{#2} + }} +} +\def\make_etx#1#2{ + \open_out{\temp_prefix#2.etx} + \out_line{\percent_char~Filename:~#2.etx} + \out_line{\percent_char~Created~by:~tex~\jobname} + \out_line{\percent_char~Created~using:~\string\enctoetx{#1}{#2}} + \out_line{} + \out_line{\percent_char~This~file~contains~the~ + information~of~#1.enc~in~a~form} + \out_line{\percent_char~more~easily~read~by~TeX.~ + It~is~used~by~the~fontinst~package.} + \out_line{} + \out_line{\percent_char~THIS~FILE~CAN~BE~DELETED.} + \out_line{} + \out_line{\string\relax} + \out_line{} + \out_line{\string\documentclass[twocolumn]{article}} + \out_line{\string\usepackage{fontdoc}} + \out_line{} + \out_line{\string\begin{document}} + \out_line{} + \out_line{This~document~describes~the~#1~encoding.} + \out_line{It~was~automatically~generated~by~the} + \out_line{{\string\tt\space~fontinst}~package.} + \out_line{} + \out_line{\string\encoding} + \out_line{} + \out_line{\string\needsfontinstversion{\fontinstversion}} + \out_line{} + \primitiveinput #1.enc\x_relax + \out_line{} + \out_line{\string\end encoding} + \out_line{} + \out_line{\string\end{document}} + \close_out{Encoding~vector} +} +\def\notdef_name{.notdef} +\def\etxtoenc#1#2{\begingroup + \a_count=\z@ + \loop + \x_cs\let{name-\the\a_count}=\notdef_name + \ifnum \@cclv>\a_count + \advance \a_count \@ne + \repeat + \def\do_slot{ + \x_cs\ifx{name-\the\slot_number}\notdef_name + \x_cs\edef{name-\the\slot_number}{\slot_name} + \fi + } + \process_csep_list\inputetx #1,\process_csep_list, + \make_enc{#1}{#2} +\endgroup} +\def\make_enc#1#2{ + \setstr{encodingname}{fontinst-autoenc-#1} + \def\a_macro##1{ + \add_to\b_macro{##1.etx} + \def\a_macro####1{ + \add_to\b_macro{,~####1.etx} + } + } + \let\b_macro\empty_command + \process_csep_list\a_macro #1,\process_csep_list, + \open_out{#2.enc} + \out_line{\percent_char !PS-Adobe-3.0~Resource-Encoding} + \out_line{\percent_char\space @psencodingfile\left_brace_char} + \ref_to_sourcefile{author}\b_macro + \ref_to_sourcefile{version}\b_macro + \out_line{\percent_char\four_spaces date~=~"generated~ + \the\year/ + \ifnum10>\month0\fi\the\month/ + \ifnum10>\day0\fi\the\day",} + \out_line{\percent_char\four_spaces filename~=~"\out_filename",} + \ref_to_sourcefile{email}\b_macro + \ifisstr{address}\then + \out_line{\percent_char\four_spaces address~=~\str{address}} + \fi + \out_line{\percent_char\four_spaces codetable~=~"ISO/ASCII",} + \out_line{\percent_char\four_spaces checksum~=~"",} + \out_line{\percent_char\four_spaces abstract~=~" + This~is~a~postscript~encoding~file,~automatically~ + generated~by~fontinst~from~\b_macro."} + \out_line{\percent_char\space\right_brace_char} + \out_line{} + \out_line{\percent_char\space Created~by:~tex~\jobname} + \out_line{\percent_char\space Created~using:~ + \string\etxtoenc{#1}{#2}} + \out_line{} + \out_line{\percent_char\space This~file~should~be~installed~ + somewhere~that~your~DVI} + \out_line{\percent_char\space to~postscript~driver~looks~for~files.~ + It~is~needed~for} + \out_line{\percent_char\space reencoding~some~font~you~have~ + transformed.} + \out_line{} + \out_line{\percent_char\space After~installing~this~file,~you~ + should~add~the~following} + \out_line{\percent_char\space line~(minus~\percent_char)~ + to~your~finstmsc.rc~file:} + \out_line{\percent_char\space\string\declarepsencoding + {#1}{\str{encodingname}}{\string\download{\out_filename}}} + \edef\a_macro{ + \noexpand\declarepsencoding{#1}{\str{encodingname}} + {\noexpand\download{\out_filename}} + } + \a_macro + \out_line{} + \out_line{\percent_char\percent_char BeginResource:~ + encoding~\str{encodingname}} + \out_line{/\str{encodingname}\space[} + \b_count=8 + \a_count=\z@ + \loop + \ifnum 8=\b_count + \b_count=\z@ + \out_line{\percent_char\space\the\a_count} + \fi + \out_line{/\csname name-\the\a_count \endcsname} + \ifnum \@cclv>\a_count + \advance \a_count \@ne + \advance \b_count \@ne + \repeat + \out_line{]~def} + \out_line{\percent_char\percent_char EndResource} + \out_line{} + \out_line{\percent_char\space End~of~file~\out_filename.} + \close_out{Encoding~vector} +} +\def\ref_to_sourcefile#1#2{ + \ifisstr{#1}\then + \out_line{\percent_char\four_spaces #1~=~\str{#1},} + \else + \out_line{\percent_char\four_spaces #1~=~"See~file~#2",} + \fi +} +\let\aliased=\second_of_two +%%% From file: fimapgen.dtx +\def\mapfrags_subsystem{Map~fragments~writer} +\newcount\process_generation +\process_generation=0 +\def\process_generation_succ{1} +\def\extract_font_generation#1{ + \if_defined{Tf-#1}\then + \expandafter\expandafter \expandafter\first_of_three + \csname Tf-#1\endcsname + \else + \m@ne + \fi +} +\def\storemapdata#1#2#3{ + \expandafter\def \expandafter\a_macro + \expandafter{ \expandafter{ \the\process_generation}{#2}{#3}} + \ifnum \extract_font_generation{#1}<\process_generation \else + \x_cs\ifx{Tf-#1}\a_macro + \fontinstinfo\mapfrags_subsystem + {Repeated~definition~of~font~#1} + \else + \fontinstwarning\mapfrags_subsystem + {Inconsistent~redefinition~of~font~#1} + \fi + \fi + \x_cs\let{Tf-#1}=\a_macro +} +\let\transformfont\x_relax +\let\reencodefont\x_relax +\let\reglyphfont\x_relax +\def\makemapentry#1{\begingroup + \def\TeX_font_name{#1} + \ifnum \extract_font_generation{#1}<\process_generation + \if_file_exists{#1.mtx}\then + \inputmtx{#1} + \fi\fi + \ifnum \extract_font_generation{#1}<\process_generation + \from_unknown{#1} + \x_cs\xdef{Tf-#1}{ + {\process_generation_succ}{\noexpand\from_unknown{#1}}{} + } + \else + \expandafter\expandafter \expandafter\make_map_entry + \csname Tf-#1\endcsname + \fi + \endgroup +} +\def\make_map_entry#1#2#3{ + \ifnum #1=\process_generation + \def\font_transforms{#3} + #2 + \_a_false + \let\transformfont\concat_transformfont + \let\reencodefont\concat_reencodefont + \let\reglyphfont\_a_true + \font_transforms + \if_a_ + \fontinsterror\mapfrags_subsystem{ + \string\makemapentry\space for~reglyphed~font + }{ No~entry~for~font~\TeX_font_name\space + can~be~written,\messagebreak + since~it~had~been~reglyphed!~\error_help_a + } + \else + \entry_makers_list + \fi + \expandafter\gdef \csname Tf-\TeX_font_name \expandafter\endcsname + \expandafter{\expandafter{\process_generation_succ}{#2}{#3}} + \fi +} +\def\fromafm#1#2{ + \def\source_font_TeX_name{#1} + \def\PS_font_name{#2} +} +\def\frompl#1{ + \def\source_font_TeX_name{#1} +} +\def\frommtx#1{% + \ifnum \extract_font_generation{#1}<\process_generation + \if_file_exists{#1.mtx}\then + \inputmtx{#1} + \fi\fi + \ifnum \extract_font_generation{#1}<\process_generation + \from_unknown{#1} + \x_cs\xdef{Tf-#1}{ + {\the\process_generation}{\noexpand\from_unknown{#1}}{} + } + \else + \expandafter\expandafter \expandafter\from_mtx + \csname Tf-#1\endcsname + \fi +} +\def\from_mtx#1#2#3{ + \edef\font_transforms{#3\font_transforms} + #2 +} +\def\fromvpl{ + \ifx \empty_command\font_transforms \else + \fontinsterror\mapfrags_subsystem{ + Font~is~virtual,~it~cannot~be~transformed}{ + No~entry~for~font~\TeX_font_name\space can~be~written. + \messagebreak\error_help_a + } + \fi + \let\maker_do\gobble_one +} +\def\AssumeMetafont{ + \def\frompl{ + \ifx \empty_command\font_transforms \else + \fontinsterror\mapfrags_subsystem{ + A~Metafont~cannot~be~transformed}{ + No~entry~for~font~\TeX_font_name\space can~be~written. + \messagebreak\error_help_a + } + \fi + \let\maker_do\gobble_one + } +} +\def\from_unknown#1{ + \fontinstwarningnoline\mapfrags_subsystem{ + No~map~data~stored~for~font~#1.\messagebreak + No~entry~for~\TeX_font_name\space will~be~written,\messagebreak + due~to~insufficient~information} + \includewarning\warn_unknown_source + \let\maker_do\gobble_one +} +\let\font_transforms\empty_command +\newdimen\xscale_factor \newdimen\slant_factor +\xscale_factor=\p@ \slant_factor=\z@ +\let\reencode_etx\empty_command +\def\concat_transformfont#1#2{ + \edef\a_macro{\make_factor{#1}} + \xscale_factor=\a_macro\xscale_factor + \slant_factor=\a_macro\slant_factor + \advance \slant_factor \make_factor{#2}\p@ +} +\def\concat_reencodefont#1{\def\reencode_etx{#1}} +\def\adddriver#1#2{ + \x_cs\ifx{make_#1}\x_relax + \fontinsterror\mapfrags_subsystem + {There~is~no~entry~maker~for~#1}\error_help_a + \else + \x_cs\ifx{output_#1}\x_relax \_a_true \else + \x_cs\ifx{output_#1}\closed_stream \_a_true \else + \_a_false + \fi\fi + \if_a_ + \x_cs\open_pout{output_#1}{#2} + \expandafter\add_to \expandafter\entry_makers_list + \expandafter{ \expandafter\maker_do + \csname make_#1\endcsname} + \fi + \fi +} +\let\entry_makers_list\empty_command +\let\maker_do\x_relax +\def\donedrivers{ + \def\maker_do##1{ + \x_cs\close_pout{output\expandafter\gobble_five\string##1} + {Map~file~fragments} + } + \entry_makers_list + \let\maker_do\x_relax + \let\entry_makers_list\empty_command + \errorstopmode + \reportwarnings + \advance \process_generation \thr@@ + \edef\process_generation_succ{\the\process_generation} + \advance \process_generation \m@ne +} +\def\gobble_five#1#2#3#4#5{} +\g_let\warnings_list=\empty_command +\def\warning_do#1#2#3{ + \noexpand\warning_do \noexpand#2 + \ifx #1#2 + \expandafter#3 \expandafter\x_relax + \else + \expandafter#3 \expandafter#1 + \fi +} +\def\includewarning#1{ + \xdef\warnings_list{ + \expandafter\swap_two \expandafter#1 \warnings_list + \if_equal\x_relax\then \else + \noexpand\warning_do \noexpand#1 + \fi + } +} +\def\reportwarnings{ + \begingroup + \let\warning_do=\x_relax + \warnings_list + \endgroup + \g_let\warnings_list=\empty_command +} +\def\warn_unknown_source{ + \fontinstwarningnoline\mapfrags_subsystem{ + Some~font~is~missing~from~the~output~file(s),\messagebreak + since~its~source~is~unknown} +} +\def\warn_undecided_data{ + \fontinstwarningnoline\mapfrags_subsystem{ + Check~the~output~file(s)--some~data~could~not~be~determined} +} +\def\warn_uncertain_data{ + \fontinstwarningnoline\mapfrags_subsystem{ + Check~the~output~file(s)--some~data~was~considered~uncertain} +} +\def\declarepsencoding#1#2#3{\x_cs\gdef{pse-#1}{{#2}{#3}}} +\let\download=\gobble_one +\declarepsencoding{8r}{TeXBase1Encoding}{\download{8r.enc}} +\declarepsencoding{8a}{StandardEncoding}{} +\def\specifypsfont#1#2{\x_cs\def{psf-#1}{#2}} +\def\AssumeLWFN{\let\get_PS_font_file\LWFN_get_PS_font_file} +\def\unknown_str{?????} +\edef\clueless_str{\unknown_str ?} +\let\TeX_font_name\unknown_str +\let\source_font_TeX_name\unknown_str +\let\PS_font_name\unknown_str +\def\get_PS_font_name{\let\PS_font_name\clueless_str} +\def\AssumeAMSBSYY{\def\get_PS_font_name{ + \uppercase \expandafter{ \expandafter\def + \expandafter\PS_font_name \expandafter{ \source_font_TeX_name} + } +}} +\def\AssumeBaKoMa{\def\get_PS_font_name{ + \lowercase \expandafter{ \expandafter\def + \expandafter\PS_font_name \expandafter{ \source_font_TeX_name} + } +}} +\let\PS_font_file\unknown_str +\resetstr{PSfontsuffix}{.pfa} +\def\normal_get_PS_font_file{ + \edef\PS_font_file{\source_font_TeX_name\str{PSfontsuffix}} +} +\let\get_PS_font_file=\normal_get_PS_font_file +\def\LWFN_get_PS_font_file{ + \ifx \PS_font_name\unknown_str \get_PS_font_name \fi + \ifx \PS_font_name\clueless_str + \normal_get_PS_font_file + \includewarning\warn_uncertain_data + \else + \begingroup + \aftergroup\def \aftergroup\PS_font_file + \aftergroup{ + \a_count=4~ + \expandafter\expandafter \expandafter\aftergroup + \expandafter\swap_two \expandafter\abbreviate_PS_font_name + \PS_font_name \x_relax + \aftergroup} + \endgroup + \fi +} +\def\abbreviate_PS_font_name#1{ + \ifx \x_relax#1 \else + \ifnum \uccode`#1=`#1 + \a_count=2 + \aftergroup#1 + \else\ifx -#1 + \a_count=\z@ + \else\ifnum \a_count>\z@ + \advance \a_count \m@ne + \aftergroup#1 + \fi\fi\fi + \expandafter\abbreviate_PS_font_name + \fi +} +\def\make_debug{ + \pout_line\output_debug{Driver~data~for~font~\TeX_font_name:} + \pout_lline\output_debug{Source~font~TeX~name:~\source_font_TeX_name} + \ifx \reencode_etx\empty_command \else + \pout_lline\output_debug{Font~reencoded~using~\reencode_etx.etx.} + \fi + \ifdim \xscale_factor=\p@ \else + \pout_lline\output_debug{Font~x-scaled~by~ + \expandafter\lose_measure\the\xscale_factor. + } + \fi + \ifdim \slant_factor=\z@ \else + \pout_lline\output_debug{Font~slanted~by~ + \expandafter\lose_measure\the\slant_factor. + } + \fi + \debug_values_hook +} +\def\debug_value#1{ + \ifx #1\unknown_str + \csname get_ \expandafter\gobble_one \string#1 \endcsname + \fi + \pout_lline\output_debug{\string#1:~#1} + \ifx #1\clueless_str \includewarning\warn_undecided_data \fi +} +\def\debugvalue#1{ + \expandafter\add_to \expandafter\debug_values_hook + \expandafter{ \expandafter\debug_value \csname#1\endcsname} +} +\let\debug_values_hook\empty_command +\debugvalue{PS_font_name} +\newtoks\downloads_list +\def\append_download#1{ + \downloads_list=\expandafter{ \the\downloads_list \download{#1} } +} +\def\make_dvips{ + \downloads_list={} + \let\postscript_code\empty_command + \let\download\append_download + \ifx \reencode_etx\empty_command \else + \if_undefined{pse-\reencode_etx}\then + \etxtoenc{\reencode_etx}{\reencode_etx} + \fi + \expandafter\expandafter \expandafter\second_of_two + \csname pse-\reencode_etx\endcsname + \edef\postscript_code{\postscript_code\space + \expandafter\expandafter \expandafter\first_of_two + \csname pse-\reencode_etx\endcsname + \space ReEncodeFont + } + \fi + \ifdim \xscale_factor=\p@ \else + \edef\postscript_code{\postscript_code + \space\expandafter\lose_measure\the\xscale_factor + \space ExtendFont + } + \fi + \ifdim \slant_factor=\z@ \else + \edef\postscript_code{\postscript_code + \space\expandafter\lose_measure\the\slant_factor + \space SlantFont + } + \fi + \ifx \PS_font_name\unknown_str \get_PS_font_name \fi + \ifx \PS_font_name\clueless_str + \includewarning\warn_undecided_data + \_a_true + \else + \if_undefined{psf-\PS_font_name}\then + \_a_true + \else + \csname psf-\PS_font_name \endcsname + \_a_false + \fi\fi + \if_a_ + \ifx \PS_font_file\unknown_str \get_PS_font_file \fi + \append_download{\PS_font_file} + \ifx \PS_font_file\clueless_str + \includewarning\warn_undecided_data + \fi + \fi + \def\download##1{~<##1} + \pout_line\output_dvips{ + \TeX_font_name\space\PS_font_name + \expandafter\empty_command \the\downloads_list + \ifx \postscript_code\empty_command \else + \space"\postscript_code\space" + \fi + } +} +\def\make_dvipdfm{ + \def\font_encoding{default} + \ifx \reencode_etx\empty_command \else + \if_undefined{pse-\reencode_etx}\then + \etxtoenc{\reencode_etx}{\reencode_etx} + \fi + \def\download##1{\def\font_encoding{##1}} + \expandafter\expandafter \expandafter\second_of_two + \csname pse-\reencode_etx\endcsname + \fi + \let\options_text\empty_command + \ifdim \xscale_factor=\p@ \else + \edef\options_text{\options_text\space + -e~\expandafter\lose_measure\the\xscale_factor + } + \fi + \ifdim \slant_factor=\z@ \else + \edef\options_text{\options_text\space + -s~\expandafter\lose_measure\the\slant_factor + } + \fi + \ifx \PS_font_name\unknown_str \get_PS_font_name \fi + \if_or \if_equal\PS_font_name\clueless_str \or_else + \if_undefined{psf-\PS_font_name} + \then + \ifx \PS_font_file\unknown_str \get_PS_font_file \fi + \ifx \PS_font_file\clueless_str + \includewarning\warn_undecided_data + \fi + \let\a_macro=\PS_font_file + \else + \let\a_macro=\PS_font_name + \def\download##1{\def\a_macro{##1}} + \csname psf-\PS_font_name \endcsname + \fi + \pout_line\output_dvipdfm{ + \TeX_font_name\space\font_encoding\space\a_macro + \options_text + } +} +\def\make_pltotf{ + \pout_line\output_pltotf{pltotf~\TeX_font_name.pl~ + \ifisstr{TFMfileprefix}\then \str{TFMfileprefix}\fi + \TeX_font_name.tfm + } +} +%%% From file: fibasics.dtx +\def\needsfontinstversion#1{{ + \a_dimen=#1pt + \b_dimen=\fontinstversion~pt\x_relax + \ifnum\a_dimen>\b_dimen + \immediate\write16{} + \immediate\write16{Warning:~This~file~needs~fontinst~version~#1.} + \immediate\write16{Warning:~You~are~using~version~ + \fontinstversion.} + \immediate\write16{Warning:~This~may~cause~errors.} + \immediate\write16{} + \fi +}} +\if_file_exists{finstmsc.rc}\then + \primitiveinput finstmsc.rc +\else + \immediate\write16{No~file~finstmsc.rc.} +\fi +\normalcc +\endinput +%% +%% End of file `finstmsc.sty'. |