diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/listings/lstpatch.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/listings/lstpatch.sty | 417 |
1 files changed, 0 insertions, 417 deletions
diff --git a/Master/texmf-dist/tex/latex/listings/lstpatch.sty b/Master/texmf-dist/tex/latex/listings/lstpatch.sty deleted file mode 100644 index 1fed6d8234e..00000000000 --- a/Master/texmf-dist/tex/latex/listings/lstpatch.sty +++ /dev/null @@ -1,417 +0,0 @@ -%% -%% This is file `lstpatch.sty', generated manually. -%% -%% (w)(c) 2004 Carsten Heinz -%% (c) 2006 Brooks Moses -%% -%% This file may be distributed under the terms of the LaTeX Project Public -%% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.3 or, at your option, any later version. -%% -%% Send comments and ideas on the package, error reports and additional -%% programming languages to <bmoses@dpdx.net>. -%% -%% This patch file will remove the following bugs from the listings package. -%% Each item contains the bug finder with date of report and first bug fix -%% version, a short description of the problem, and the reason for the bug -%% in parenthesis. -%% -%% 1) Frank Atanassow, 2004/10/07, 1.3b -%% -%% space after mathescape is not preserved -%% (\lst@newlines>0) -%% -%% 2) Benjamin Lings, 2004/10/15, 1.3b (2004/10/17) -%% -%% \usepackage{xy,listings} yields: -%% "Forbidden control sequence found while scanning use of \lst@lExtend" -%% (xy-pic correctly resets catcode of ^^L (to active), which is \outer) -%% -%% The following features are added to the base package. -%% -%% 1.3a (2004/09/07) -%% -%% a) H I G H L Y E X P E R I M E N T A L -%% -%% Use the options -%% rangeprefix=<prefix for begin and end of range> -%% rangesuffix=<suffix for begin and end of range> -%% -%% rangebeginprefix=<prefix for begin of range> -%% rangebeginsuffix=<suffix for begin of range> -%% -%% rangeendprefix=<prefix for end of range> -%% rangeendsuffix=<suffix for end of range> -%% -%% includerangemarker=true|false -%% together with -%% firstline=<begin marker> -%% lastline=<end marker> -%% or -%% linerange={<begin marker 1>-<end marker 1>, -%% <begin marker 2>-<end marker 2>, ...} -%% The according markers in the source code are -%% <prefix><marker><suffix> -%% for begin respectively end of range. Moreover, one can use -%% includerangemarker=true|false -%% to show or hide the range markers in the output. -%% -%% 1.3b (2004/10/17) -%% -%% b) multicols=<number> (requires loaded multicol package) -%% -%% 1.3c -%% -%% c) speedups suggested by Hendri Adriaens: -%% -%% \lst@for replaced by a faster version. -%% -\lst@CheckVersion{1.3} -{\typeout{^^J% - ***^^J% - *** This is a patch for listings 1.3, but you're using^^J% - *** version \lst@version.^^J% - ***^^J - *** Patch file not loaded.^^J% - ***^^J}% - \endinput -} -\def\fileversion{1.3b} -\def\filedate{2004/10/17} -\ProvidesFile{lstpatch.sty}[\filedate\space\fileversion\space (Carsten Heinz)] -% -% 0) Insert % after #1. -\def\@@xbitor #1{\@tempcntb \count#1% - \ifnum \@tempcnta =\z@ - \else - \divide\@tempcntb\@tempcnta - \ifodd\@tempcntb \@testtrue\fi - \fi} -% -% 1) Reset \lst@newlines at end of escape. -\def\lstpatch@escape{% -\gdef\lst@Escape##1##2##3##4{% - \lst@CArgX ##1\relax\lst@CDefX - {}% - {\lst@ifdropinput\else - \lst@TrackNewLines\lst@OutputLostSpace \lst@XPrintToken - \lst@InterruptModes - \lst@EnterMode{\lst@TeXmode}{\lst@modetrue}% - \ifx\^^M##2% - \lst@CArg ##2\relax\lst@ActiveCDefX - {}% - {\lst@escapeend ##4\lst@LeaveAllModes\lst@ReenterModes}% - {\lst@MProcessListing}% - \else - \lst@CArg ##2\relax\lst@ActiveCDefX - {}% - {\lst@escapeend ##4\lst@LeaveAllModes\lst@ReenterModes - \lst@newlines\z@ \lst@whitespacefalse}% - {}% - \fi - ##3\lst@escapebegin - \fi}% - {}}% -} -% -% 2) Deactivate \outer definition of ^^L temporarily (inside and outside -% of \lst@ScanChars) and restore \catcode at end of package. -\begingroup \catcode12=\active\let^^L\@empty -\gdef\lst@ScanChars{% - \let\lsts@ssL^^L% - \def^^L{\par}% - \lst@GetChars\lst@RestoreOrigCatcodes\@ne {128}% - \let^^L\lsts@ssL - \lst@GetChars\lst@RestoreOrigExtendedCatcodes{128}{256}} -\endgroup -\lst@lAddTo\lst@RestoreCatcodes{\catcode12\active} -% -% a) Let's start with the options: -\lst@Key{rangeprefix}\relax{\def\lst@rangebeginprefix{#1}% - \def\lst@rangeendprefix{#1}} -\lst@Key{rangesuffix}\relax{\def\lst@rangebeginsuffix{#1}% - \def\lst@rangeendsuffix{#1}} -\lst@Key{rangebeginprefix}{}{\def\lst@rangebeginprefix{#1}} -\lst@Key{rangebeginsuffix}{}{\def\lst@rangebeginsuffix{#1}} -\lst@Key{rangeendprefix}{}{\def\lst@rangeendprefix{#1}} -\lst@Key{rangeendsuffix}{}{\def\lst@rangeendsuffix{#1}} -\lst@Key{includerangemarker}{true}[t]{\lstKV@SetIf{#1}\lst@ifincluderangemarker} -% -% The key is a redefinition of \lst@GLI@ checking for numbers. -\def\lst@GLI@#1-#2-#3\@nil{% - \lst@IfNumber{#1}% - {\ifx\@empty#1\@empty - \let\lst@firstline\@ne - \else - \def\lst@firstline{#1\relax}% - \fi - \ifx\@empty#3\@empty - \def\lst@lastline{9999999\relax}% - \else - \ifx\@empty#2\@empty - \let\lst@lastline\lst@firstline - \else - \def\lst@lastline{#2\relax}% - \fi - \fi}% -% -% If we've found a general marker, we set firstline and lastline to 9999999. -% This prevents (almost) anything to be printed for now. - {\def\lst@firstline{9999999\relax}% - \let\lst@lastline\lst@firstline -% -% We add the prefixes and suffixes to the markers. - \let\lst@rangebegin\lst@rangebeginprefix - \lst@AddTo\lst@rangebegin{#1}\lst@Extend\lst@rangebegin\lst@rangebeginsuffix - \ifx\@empty#3\@empty - \let\lst@rangeend\lst@rangeendprefix - \lst@AddTo\lst@rangeend{#1}\lst@Extend\lst@rangeend\lst@rangeendsuffix - \else - \ifx\@empty#2\@empty - \let\lst@rangeend\@empty - \else - \let\lst@rangeend\lst@rangeendprefix - \lst@AddTo\lst@rangeend{#2}\lst@Extend\lst@rangeend\lst@rangeendsuffix - \fi - \fi -% The following definition will be executed in the SelectCharTable hook -% and here right now if we are already processing a listing. - \global\def\lst@DefRange{\expandafter\lst@CArgX\lst@rangebegin\relax\lst@DefRangeB}% - \ifnum\lst@mode=\lst@Pmode \expandafter\lst@DefRange \fi}} -% \lst@DefRange is not inserted via a hook anymore. Instead it is now called -% directly from \lst@SelectCharTable. This was necessary to get rid of an -% interference with the escape-to-LaTeX-feature. The bug was reported by -% \lsthelper{Michael~Bachmann}{2004/07/21}{Keine label-Referenzierung -% m\"oglich...}. Another chance is due to the same bug: \lst@DefRange is -% redefined globally when the begin of code is found, see below. The bug was -% reported by \lsthelper{Tobias~Rapp}{2004/04/06}{undetected end of range if -% listing crosses page break} \lsthelper{Markus~Luisser}{2004/08/13}{Bug mit -% 'linerangemarker' in umgebrochenen listings} -%\lst@AddToHook{SelectCharTable}{\lst@DefRange} -\lst@AddToHookExe{DeInit}{\global\let\lst@DefRange\@empty} -% -% Actually defining the marker (via \lst@GLI@, \lst@DefRange, \lst@CArgX as -% seen above) is similar to \lst@DefDelimB---except that we unfold the first -% parameter and use different <execute>, <pre>, and <post> statements. -\def\lst@DefRangeB#1#2{\lst@DefRangeB@#1#2} -\def\lst@DefRangeB@#1#2#3#4{% - \lst@CDef{#1{#2}{#3}}#4{}% - {\lst@ifincluderangemarker - \lst@LeaveMode - \let#1#4% - \lst@DefRangeEnd - \lst@InitLstNumber - \else - \@tempcnta\lst@lineno \advance\@tempcnta\@ne - \edef\lst@firstline{\the\@tempcnta\relax}% - \gdef\lst@OnceAtEOL{\let#1#4\lst@DefRangeEnd}% - \lst@InitLstNumber - \fi - \global\let\lst@DefRange\lst@DefRangeEnd - \lst@CArgEmpty}% - \@empty} -% -% Modify labels and define |\lst@InitLstNumber| used above. -% \lsthelper{Omair-Inam~Abdul-Matin}{2004/05/10}{experimental linerange -% feature does not work with firstnumber} -\def\lstpatch@labels{% -\gdef\lst@SetFirstNumber{% - \ifx\lst@firstnumber\@undefined - \@tempcnta 0\csname\@lst no@\lst@intname\endcsname\relax - \ifnum\@tempcnta=\z@ \else - \lst@nololtrue - \advance\@tempcnta\lst@advancenumber - \edef\lst@firstnumber{\the\@tempcnta\relax}% - \fi - \fi}% -} -\lst@AddToAtTop\lsthk@PreInit - {\ifx\lst@firstnumber\@undefined - \def\lst@firstnumber{\lst@lineno}% - \fi} -\def\lst@InitLstNumber{% - \global\c@lstnumber\lst@firstnumber - \global\advance\c@lstnumber\lst@advancenumber - \global\advance\c@lstnumber-\lst@advancelstnum - \ifx \lst@firstnumber\c@lstnumber - \global\advance\c@lstnumber-\lst@advancelstnum - \fi} -% -% The end-marker is defined if and only if it's not empty. The definition is -% similar to \lst@DefDelimE---with the above exceptions and except that we -% define the re-entry point \lst@DefRangeE@@ as it is defined in the new -% version of \lst@MProcessListing above. -\def\lst@DefRangeEnd{% - \ifx\lst@rangeend\@empty\else - \expandafter\lst@CArgX\lst@rangeend\relax\lst@DefRangeE - \fi} -\def\lst@DefRangeE#1#2{\lst@DefRangeE@#1#2} -\def\lst@DefRangeE@#1#2#3#4{% - \lst@CDef{#1#2{#3}}#4{}% - {\let#1#4% - \edef\lst@lastline{\the\lst@lineno\relax}% - \lst@DefRangeE@@}% - \@empty} -\def\lst@DefRangeE@@#1\@empty{% - \lst@ifincluderangemarker - #1\lst@XPrintToken - \fi - \lst@LeaveModeToPmode - \lst@BeginDropInput{\lst@Pmode}} -% -\def\lst@LeaveModeToPmode{% - \ifnum\lst@mode=\lst@Pmode - \expandafter\lsthk@EndGroup - \else - \expandafter\egroup\expandafter\lst@LeaveModeToPmode - \fi} -% -% Eventually we shouldn't forget to install \lst@OnceAtEOL, which must -% also be called in \lst@MSkipToFirst. -\lst@AddToHook{EOL}{\lst@OnceAtEOL\global\let\lst@OnceAtEOL\@empty} -\gdef\lst@OnceAtEOL{}% Init -\def\lst@MSkipToFirst{% - \global\advance\lst@lineno\@ne - \ifnum \lst@lineno=\lst@firstline - \def\lst@next{\lst@LeaveMode \global\lst@newlines\z@ - \lst@OnceAtEOL \global\let\lst@OnceAtEOL\@empty - \lst@InitLstNumber % Added to work with modified \lsthk@PreInit. - \lsthk@InitVarsBOL - \lst@BOLGobble}% - \expandafter\lst@next - \fi} -\def\lst@SkipToFirst{% - \ifnum \lst@lineno<\lst@firstline - \def\lst@next{\lst@BeginDropInput\lst@Pmode - \lst@Let{13}\lst@MSkipToFirst - \lst@Let{10}\lst@MSkipToFirst}% - \expandafter\lst@next - \else - \expandafter\lst@BOLGobble - \fi} -% -% Finally the service macro \lst@IfNumber: -\def\lst@IfNumber#1{% - \ifx\@empty#1\@empty - \let\lst@next\@firstoftwo - \else - \lst@IfNumber@#1\@nil - \fi - \lst@next} -\def\lst@IfNumber@#1#2\@nil{% - \let\lst@next\@secondoftwo - \ifnum`#1>47\relax \ifnum`#1>57\relax\else - \let\lst@next\@firstoftwo - \fi\fi} -% -% b) The following is known to fail with some keys. -\lst@Key{multicols}{}{\@tempcnta=0#1\relax\def\lst@multicols{#1}} -\def\lst@Init#1{% - \begingroup - \ifx\lst@float\relax\else - \edef\@tempa{\noexpand\lst@beginfloat{lstlisting}[\lst@float]}% - \expandafter\@tempa - \fi -% chmod begin - \ifx\lst@multicols\@empty\else - \edef\lst@next{\noexpand\multicols{\lst@multicols}} - \expandafter\lst@next - \fi -% chmod end - \ifhmode\ifinner \lst@boxtrue \fi\fi - \lst@ifbox - \lsthk@BoxUnsafe - \hbox to\z@\bgroup - $\if t\lst@boxpos \vtop - \else \if b\lst@boxpos \vbox - \else \vcenter \fi\fi - \bgroup \par\noindent - \else - \lst@ifdisplaystyle - \lst@EveryDisplay - \par\penalty-50\relax - \vspace\lst@aboveskip - \fi - \fi - \normalbaselines - \abovecaptionskip\lst@abovecaption\relax - \belowcaptionskip\lst@belowcaption\relax - \lst@MakeCaption t% - \lsthk@PreInit \lsthk@Init - \lst@ifdisplaystyle - \global\let\lst@ltxlabel\@empty - \if@inlabel - \lst@ifresetmargins - \leavevmode - \else - \xdef\lst@ltxlabel{\the\everypar}% - \lst@AddTo\lst@ltxlabel{% - \global\let\lst@ltxlabel\@empty - \everypar{\lsthk@EveryLine\lsthk@EveryPar}}% - \fi - \fi - \everypar\expandafter{\lst@ltxlabel - \lsthk@EveryLine\lsthk@EveryPar}% - \else - \everypar{}\let\lst@NewLine\@empty - \fi - \lsthk@InitVars \lsthk@InitVarsBOL - \lst@Let{13}\lst@MProcessListing - \let\lst@Backslash#1% - \lst@EnterMode{\lst@Pmode}{\lst@SelectCharTable}% - \lst@InitFinalize} -\def\lst@DeInit{% - \lst@XPrintToken \lst@EOLUpdate - \global\advance\lst@newlines\m@ne - \lst@ifshowlines - \lst@DoNewLines - \else - \setbox\@tempboxa\vbox{\lst@DoNewLines}% - \fi - \lst@ifdisplaystyle \par\removelastskip \fi - \lsthk@ExitVars\everypar{}\lsthk@DeInit\normalbaselines\normalcolor - \lst@MakeCaption b% - \lst@ifbox - \egroup $\hss \egroup - \vrule\@width\lst@maxwidth\@height\z@\@depth\z@ - \else - \lst@ifdisplaystyle - \par\penalty-50\vspace\lst@belowskip - \fi - \fi -% chmod begin - \ifx\lst@multicols\@empty\else - \def\lst@next{\global\let\@checkend\@gobble - \endmulticols - \global\let\@checkend\lst@@checkend} - \expandafter\lst@next - \fi -% chmod end - \ifx\lst@float\relax\else - \expandafter\lst@endfloat - \fi - \endgroup} -\let\lst@@checkend\@checkend -% -% c) Hendri's suggested change to \lst@for. -% -% \begin{macro}{\lst@for} -% \begin{macro}{\lst@f@r} -% A for-loop with expansion of the loop-variable. -% \begin{macrocode} -\def\lst@for#1\do#2{% - \def\lst@forbody##1{#2}% - \def\@tempa{#1}% - \ifx\@tempa\@empty\else\expandafter\lst@f@r#1,\@nil,\fi -} -\def\lst@f@r#1,{% - \def\@tempa{#1}% - \ifx\@tempa\@nnil\else\lst@forbody{#1}\expandafter\lst@f@r\fi -} -% \end{macrocode} -% \end{macro} -% \end{macro} -%% -\endinput -%% -%% End of file `lstpatch.sty'. |