diff options
Diffstat (limited to 'info/examples/tex-in-practice/isprefix.tip')
-rw-r--r-- | info/examples/tex-in-practice/isprefix.tip | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/info/examples/tex-in-practice/isprefix.tip b/info/examples/tex-in-practice/isprefix.tip new file mode 100644 index 0000000000..9bdefdce10 --- /dev/null +++ b/info/examples/tex-in-practice/isprefix.tip @@ -0,0 +1,55 @@ +% This macro source file is from the four volume series +% "TeX in Practice" by Stephan von Bechtolsheim, published +% 1993 by Springer-Verlag, New York. +% Copyright 1993 Stephan von Bechtolsheim. +% No warranty or liability is assumed. +% This macro may be copied freely if no fees other than +% media cost or shipping charges are charged and as long +% as this copyright and the following source code itself +% is not changed. Please see the series for further information. +% +% Version: 1.0 +% Date: May 1, 1993 +% +% +% This source code is documented in 24.1.18.1, p. III-302. +% Original source in file "macros4.TEX", starting line 1096. +\wlog{L: "isprefix.tip" ["macros4.TEX," l. 1096, p. III-302]}% +% This file DOES belong to format "texip." +\InputD{compst.tip} +\InputD{strleng.tip} +\InputD{showx.tip} +\catcode`\@ = 11 +\newif\if@PrefixResult +\newcount\@LengthPrefixString +\newcount\@LengthMainString +\def\PrefixConditional #1#2{% + TT\fi + \StringLength{#1}% + \@LengthMainString = \StringLengthResult + \StringLength{#2}% + \@LengthPrefixString = \StringLengthResult + \ifnum\@LengthMainString < \@LengthPrefixString + \@PrefixResultfalse + \else + \@PrefixConditionalTwo{#1}{#2}% + \fi + \if@PrefixResult +} +\def\@PrefixConditionalTwo #1#2{% + \edef\@PrefixBoth{#1#2}% + \edef\@PrefixTemp{% + \def\noexpand\@TestPrefix ####1#2####2\noexpand\@Del{% + \noexpand\if\noexpand\EmptyStringConditional{####1}% + }% + }% + \ShowX\@PrefixTemp + \@PrefixTemp + \ShowX{\@TestPrefix}% + \expandafter\@TestPrefix\@PrefixBoth\@Del + \@PrefixResulttrue + \else + \@PrefixResultfalse + \fi +} +\catcode`\@ = 12 |