From a27e39077f6da32d6a49b9af54b92a8380fee0af Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 1 Jun 2006 15:55:10 +0000 Subject: listings 1.3c git-svn-id: svn://tug.org/texlive/trunk@1639 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/listings/README | 3 +- Master/texmf-dist/doc/latex/listings/listings.pdf | Bin 489351 -> 651845 bytes .../source/latex/listings/listings-1.3.dtx | 51 +++- .../source/latex/listings/listings-1.3.ins | 2 +- .../source/latex/listings/lstdrvrs-1.3.dtx | 17 +- .../texmf-dist/source/latex/listings/lstdrvrs.ins | 10 +- Master/texmf-dist/tex/latex/listings/listings.cfg | 10 +- Master/texmf-dist/tex/latex/listings/listings.sty | 3 +- Master/texmf-dist/tex/latex/listings/lstdoc.sty | 3 +- Master/texmf-dist/tex/latex/listings/lstlang1.sty | 13 +- Master/texmf-dist/tex/latex/listings/lstlang2.sty | 10 +- Master/texmf-dist/tex/latex/listings/lstlang3.sty | 12 +- Master/texmf-dist/tex/latex/listings/lstmisc.sty | 3 +- Master/texmf-dist/tex/latex/listings/lstpatch.sty | 322 +++++++++++---------- Master/texmf-dist/tpm/listings.tpm | 8 +- 15 files changed, 267 insertions(+), 200 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/listings/README b/Master/texmf-dist/doc/latex/listings/README index 40e3d5d3108..409834e3cf4 100644 --- a/Master/texmf-dist/doc/latex/listings/README +++ b/Master/texmf-dist/doc/latex/listings/README @@ -1,7 +1,8 @@ Listings package Copyright 1996--2004 Carsten Heinz (the package) individual authors (language drivers) -Released under the LaTeX Project Public License 1.0 or later +Copyright 2006 Brooks Moses (continued maintenance) +Released under the LaTeX Project Public License 1.3 or later The `listings' package is a source code printer for LaTeX. You can typeset stand alone files as well as listings with diff --git a/Master/texmf-dist/doc/latex/listings/listings.pdf b/Master/texmf-dist/doc/latex/listings/listings.pdf index 90fb9d691b5..b6337cd2199 100644 Binary files a/Master/texmf-dist/doc/latex/listings/listings.pdf and b/Master/texmf-dist/doc/latex/listings/listings.pdf differ diff --git a/Master/texmf-dist/source/latex/listings/listings-1.3.dtx b/Master/texmf-dist/source/latex/listings/listings-1.3.dtx index f2c8abb1cba..2776eae2b54 100644 --- a/Master/texmf-dist/source/latex/listings/listings-1.3.dtx +++ b/Master/texmf-dist/source/latex/listings/listings-1.3.dtx @@ -13,9 +13,10 @@ % or simply `the package'. lstdrvrs.dtx and the files generated from % that file are `drivers'. % -% The listings package is copyright 1996--2004 Carsten Heinz. The drivers -% are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any individual -% author listed in the driver files. +% The listings package is copyright 1996--2004 Carsten Heinz, and +% continued maintenance on the package is copyright 2006 Brooks Moses. +% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +% individual author listed in the driver files. % % The listings package and its drivers may be distributed and/or modified % under the conditions of the LaTeX Project Public License, either version @@ -27,7 +28,7 @@ % % The package has the LPPL maintenance status "maintained". % -% The Current Maintainer is Carsten Heinz . +% The Current Maintainer is Brooks Moses . % % end of software license % @@ -101,11 +102,15 @@ % \end{abstract}} % % \title{\vspace*{-2\baselineskip}The \textsf{Listings} Package} -% \author{Copyright 1996--2004\\ Carsten Heinz \textless\lstemail\textgreater} -% \date{2004/09/07\enspace\enspace Version 1.3\\ \box\abstractbox} -% \def\lstemail{\href{mailto:cheinz@gmx.de}{\texttt{cheinz@gmx.de}}} +% \author{Copyright 1996--2004, Carsten Heinz% +% \\ Maintainer: Brooks Moses% +% \thanks{Brooks Moses became the maintainer of the \packagename{listings} +% package in 2006; see the Preface for details.} % +% \textless\lstemail\textgreater} +% \date{2006/05/08\enspace\enspace Version 1.3c\\ \box\abstractbox} +% \def\lstemail{\href{mailto:bmoses@dpdx.net}{\texttt{bmoses@dpdx.net}}} % \ifhyper -% \hypersetup{pdfsubject=Package guide,pdfauthor=Carsten Heinz } +% \hypersetup{pdfsubject=Package guide,pdfauthor=Brooks Moses } % \fi % % \csname @twocolumntrue\endcsname @@ -117,6 +122,26 @@ % % \section*{Preface} % +% \paragraph{Transition of package maintenance} +% The \TeX\ world lost contact with Carsten Heinz in late 2004, shortly after +% he released version 1.3b of the \packagename{listings} package. After many +% attempts to reach him had failed, Hendri Adriaens took over maintenance of +% the package in accordance with the LPPL's procedure for abandoned packages. +% He then passed the maintainership of the package to Brooks Moses, who had +% volunteered for the position while this procedure was going through. +% +% This release, version 1.3c, is not yet a long-awaited bugfix release, as I +% have neither a list of bugs that have been reported since 1.3b, nor a good +% comprehensive test suite to make sure that my fixes don't break things. +% (It does have some very minor corrections to the Erlang and Octave language +% definitions that were reported to the Debian bug system, and a minor +% internal spped improvement placed in \texttt{lstpatch.sty}, but other than that +% the only changes are the alteration of the maintanence information and the +% inclusion of this prefatory note.) I would very much appreciate it if users +% would email any outstanding bug reports to me at \lstemail, along with any +% examples of tricky uses of the package that should be included in the test +% suite. +% % \paragraph{Reading this manual} % If you are experienced with the \packagename{listings} package, you should % read the next paragraph ``\emph{News and changes}''. Otherwise read section @@ -124,7 +149,7 @@ % \ref{uTheNextSteps}. % % \paragraph{News and changes} -% This is the third bugfix release. The most noteworthy news for the +% Version 1.3 is the third bugfix release. The most noteworthy news for the % tortured\,---\,I mean experienced\,---\,user is a new |\output| routine, % which improves the compatibility to other packages. Therefore the temporary % key |noxoutput| has been removed. @@ -729,8 +754,9 @@ % `drivers'. % % \paragraph{Copyright} -% The \packagename{listings} package is copyright 1996--2004 Carsten Heinz. -% The drivers are copyright any individual author listed in the driver files. +% The \packagename{listings} package is copyright 1996--2004 Carsten Heinz, +% and copyright 2006 Brooks Moses. The drivers are copyright any individual +% author listed in the driver files. % % \paragraph{Distribution and modification} % The \packagename{listings} package and its drivers may be distributed @@ -5526,9 +5552,10 @@ %% %% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed %% elsewhere in this file. +%% (c) 2006 Brooks Moses %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to . %% % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/listings/listings-1.3.ins b/Master/texmf-dist/source/latex/listings/listings-1.3.ins index d5171d012a3..97fd6526d9f 100644 --- a/Master/texmf-dist/source/latex/listings/listings-1.3.ins +++ b/Master/texmf-dist/source/latex/listings/listings-1.3.ins @@ -9,7 +9,7 @@ %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% \input docstrip \preamble diff --git a/Master/texmf-dist/source/latex/listings/lstdrvrs-1.3.dtx b/Master/texmf-dist/source/latex/listings/lstdrvrs-1.3.dtx index e9d24666bf6..442c9581521 100644 --- a/Master/texmf-dist/source/latex/listings/lstdrvrs-1.3.dtx +++ b/Master/texmf-dist/source/latex/listings/lstdrvrs-1.3.dtx @@ -2,10 +2,8 @@ % %<*driver> \documentclass{ltxdoc} - \EnableCrossrefs \CodelineIndex - \begin{document} \DocInput{lstdrvrs-1.3.dtx} \end{document} @@ -40,17 +38,19 @@ % % \begingroup % \begin{macrocode} -%% (w)(c) 1996/1997/1998/1999/2000/2001/2002/2003/2004 Carsten Heinz -%% and/or any other author listed elsewhere in this file. +%% The listings package is copyright 1996--2004 Carsten Heinz, and +%% continued maintenance on the package is copyright 2006 Brooks Moses. +%% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +%% individual author listed in this file. %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% %% This file is completely free and comes without any warranty. %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to Brooks Moses at . %% % \end{macrocode} % \endgroup @@ -1168,7 +1168,7 @@ round,self,setelement,size,spawn,throw,time,tl,trace,trunc,% tuple,tuple_to_list,unlink,unregister,whereis,error,false,% infinity,nil,ok,true,undefined,when},% - otherkeywords={->,!,[,],\{,\},},% + otherkeywords={->,!,[,],\{,\}},% morecomment=[l]\%,% morestring=[b]",% morestring=[b]'% @@ -2854,7 +2854,8 @@ viewmtx,waitforbuttonpress,waterfall,wavread,wavwrite,what,% whatsnew,which,while,white,whitebg,who,whos,wilkinson,wk1read,% stderr,stdout,plot,set,endif,wk1write,xlabel,xor,ylabel,zeros,% - zlabel,zoom,endwhile,endfunction},% + zlabel,zoom,endwhile,endfunction,printf,case,switch,otherwise,% + system,lsode,endfor},% sensitive=f,% morecomment=[l]\#,% morecomment=[l]\#\#,% diff --git a/Master/texmf-dist/source/latex/listings/lstdrvrs.ins b/Master/texmf-dist/source/latex/listings/lstdrvrs.ins index b17baad2d5b..df3df1859a5 100644 --- a/Master/texmf-dist/source/latex/listings/lstdrvrs.ins +++ b/Master/texmf-dist/source/latex/listings/lstdrvrs.ins @@ -6,17 +6,19 @@ %% %% lstdrvrs-1.3.dtx (with options: `install') %% -%% (w)(c) 1996/1997/1998/1999/2000/2001/2002/2003/2004 Carsten Heinz -%% and/or any other author listed elsewhere in this file. +%% The listings package is copyright 1996--2004 Carsten Heinz, and +%% continued maintenance on the package is copyright 2006 Brooks Moses. +%% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +%% individual author listed in this file. %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% %% This file is completely free and comes without any warranty. %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to Brooks Moses at . %% \input docstrip \preamble diff --git a/Master/texmf-dist/tex/latex/listings/listings.cfg b/Master/texmf-dist/tex/latex/listings/listings.cfg index 00c430d8b4f..ebc5c730264 100644 --- a/Master/texmf-dist/tex/latex/listings/listings.cfg +++ b/Master/texmf-dist/tex/latex/listings/listings.cfg @@ -6,17 +6,19 @@ %% %% lstdrvrs-1.3.dtx (with options: `config') %% -%% (w)(c) 1996/1997/1998/1999/2000/2001/2002/2003/2004 Carsten Heinz -%% and/or any other author listed elsewhere in this file. +%% The listings package is copyright 1996--2004 Carsten Heinz, and +%% continued maintenance on the package is copyright 2006 Brooks Moses. +%% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +%% individual author listed in this file. %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% %% This file is completely free and comes without any warranty. %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to Brooks Moses at . %% \ProvidesFile{listings.cfg}[2004/09/05 1.3 listings configuration] \def\lstlanguagefiles diff --git a/Master/texmf-dist/tex/latex/listings/listings.sty b/Master/texmf-dist/tex/latex/listings/listings.sty index 7c3eceb9dcb..8d96f36b944 100644 --- a/Master/texmf-dist/tex/latex/listings/listings.sty +++ b/Master/texmf-dist/tex/latex/listings/listings.sty @@ -10,9 +10,10 @@ %% %% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed %% elsewhere in this file. +%% (c) 2006 Brooks Moses %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to . %% \def\filedate{2004/09/07} \def\fileversion{1.3} diff --git a/Master/texmf-dist/tex/latex/listings/lstdoc.sty b/Master/texmf-dist/tex/latex/listings/lstdoc.sty index 3b9806fbe59..419da5d1825 100644 --- a/Master/texmf-dist/tex/latex/listings/lstdoc.sty +++ b/Master/texmf-dist/tex/latex/listings/lstdoc.sty @@ -10,9 +10,10 @@ %% %% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed %% elsewhere in this file. +%% (c) 2006 Brooks Moses %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to . %% \def\filedate{2004/09/07} \def\fileversion{1.3} diff --git a/Master/texmf-dist/tex/latex/listings/lstlang1.sty b/Master/texmf-dist/tex/latex/listings/lstlang1.sty index c108403097d..49521b72aa2 100644 --- a/Master/texmf-dist/tex/latex/listings/lstlang1.sty +++ b/Master/texmf-dist/tex/latex/listings/lstlang1.sty @@ -6,17 +6,19 @@ %% %% lstdrvrs-1.3.dtx (with options: `lang1') %% -%% (w)(c) 1996/1997/1998/1999/2000/2001/2002/2003/2004 Carsten Heinz -%% and/or any other author listed elsewhere in this file. +%% The listings package is copyright 1996--2004 Carsten Heinz, and +%% continued maintenance on the package is copyright 2006 Brooks Moses. +%% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +%% individual author listed in this file. %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% %% This file is completely free and comes without any warranty. %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to Brooks Moses at . %% \ProvidesFile{lstlang1.sty} [2004/09/05 1.3 listings language file] @@ -734,7 +736,8 @@ viewmtx,waitforbuttonpress,waterfall,wavread,wavwrite,what,% whatsnew,which,while,white,whitebg,who,whos,wilkinson,wk1read,% stderr,stdout,plot,set,endif,wk1write,xlabel,xor,ylabel,zeros,% - zlabel,zoom,endwhile,endfunction},% + zlabel,zoom,endwhile,endfunction,printf,case,switch,otherwise,% + system,lsode,endfor},% sensitive=f,% morecomment=[l]\#,% morecomment=[l]\#\#,% diff --git a/Master/texmf-dist/tex/latex/listings/lstlang2.sty b/Master/texmf-dist/tex/latex/listings/lstlang2.sty index c1c9121806f..c95df46f296 100644 --- a/Master/texmf-dist/tex/latex/listings/lstlang2.sty +++ b/Master/texmf-dist/tex/latex/listings/lstlang2.sty @@ -6,17 +6,19 @@ %% %% lstdrvrs-1.3.dtx (with options: `lang2') %% -%% (w)(c) 1996/1997/1998/1999/2000/2001/2002/2003/2004 Carsten Heinz -%% and/or any other author listed elsewhere in this file. +%% The listings package is copyright 1996--2004 Carsten Heinz, and +%% continued maintenance on the package is copyright 2006 Brooks Moses. +%% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +%% individual author listed in this file. %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% %% This file is completely free and comes without any warranty. %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to Brooks Moses at . %% \ProvidesFile{lstlang2.sty} [2004/09/05 1.3 listings language file] diff --git a/Master/texmf-dist/tex/latex/listings/lstlang3.sty b/Master/texmf-dist/tex/latex/listings/lstlang3.sty index b43bc9eac56..09652d7cce2 100644 --- a/Master/texmf-dist/tex/latex/listings/lstlang3.sty +++ b/Master/texmf-dist/tex/latex/listings/lstlang3.sty @@ -6,17 +6,19 @@ %% %% lstdrvrs-1.3.dtx (with options: `lang3') %% -%% (w)(c) 1996/1997/1998/1999/2000/2001/2002/2003/2004 Carsten Heinz -%% and/or any other author listed elsewhere in this file. +%% The listings package is copyright 1996--2004 Carsten Heinz, and +%% continued maintenance on the package is copyright 2006 Brooks Moses. +%% The drivers are copyright 1997/1998/1999/2000/2001/2002/2003/2004 any +%% individual author listed in this file. %% %% This file is distributed under the terms of the LaTeX Project Public %% License from CTAN archives in directory macros/latex/base/lppl.txt. -%% Either version 1.0 or, at your option, any later version. +%% Either version 1.3 or, at your option, any later version. %% %% This file is completely free and comes without any warranty. %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to Brooks Moses at . %% \ProvidesFile{lstlang3.sty} [2004/09/05 1.3 listings language file] @@ -146,7 +148,7 @@ round,self,setelement,size,spawn,throw,time,tl,trace,trunc,% tuple,tuple_to_list,unlink,unregister,whereis,error,false,% infinity,nil,ok,true,undefined,when},% - otherkeywords={->,!,[,],\{,\},},% + otherkeywords={->,!,[,],\{,\}},% morecomment=[l]\%,% morestring=[b]",% morestring=[b]'% diff --git a/Master/texmf-dist/tex/latex/listings/lstmisc.sty b/Master/texmf-dist/tex/latex/listings/lstmisc.sty index 9a4f12de342..4180dc84094 100644 --- a/Master/texmf-dist/tex/latex/listings/lstmisc.sty +++ b/Master/texmf-dist/tex/latex/listings/lstmisc.sty @@ -10,9 +10,10 @@ %% %% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed %% elsewhere in this file. +%% (c) 2006 Brooks Moses %% %% Send comments and ideas on the package, error reports and additional -%% programming languages to . +%% programming languages to . %% \def\filedate{2004/09/07} \def\fileversion{1.3} diff --git a/Master/texmf-dist/tex/latex/listings/lstpatch.sty b/Master/texmf-dist/tex/latex/listings/lstpatch.sty index b07de3ef2e7..1fed6d8234e 100644 --- a/Master/texmf-dist/tex/latex/listings/lstpatch.sty +++ b/Master/texmf-dist/tex/latex/listings/lstpatch.sty @@ -2,30 +2,30 @@ %% 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.0 or, at your option, any later version. +%% 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 . +%% programming languages to . %% -%% 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) -%% +%% 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. %% @@ -55,11 +55,16 @@ %% 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= (requires loaded multicol package) %% +%% 1.3b (2004/10/17) +%% +%% b) multicols= (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% @@ -82,44 +87,44 @@ \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} +% +% 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}% @@ -298,95 +303,114 @@ \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 +% +% 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 %% diff --git a/Master/texmf-dist/tpm/listings.tpm b/Master/texmf-dist/tpm/listings.tpm index 636b36b28e1..d54a33d0fbb 100644 --- a/Master/texmf-dist/tpm/listings.tpm +++ b/Master/texmf-dist/tpm/listings.tpm @@ -3,7 +3,7 @@ listings Package - 2006/01/11 23:54:40 + 2006/06/01 15:54:51 rahtz Typeset source code listings using LaTeX. @@ -22,7 +22,7 @@ simply \usepackage{listings}, identify the language with Carsten Heinz 1724149 - + texmf-dist/tex/latex/listings/listings.cfg texmf-dist/tex/latex/listings/listings.sty texmf-dist/tex/latex/listings/lstdoc.sty @@ -33,11 +33,11 @@ texmf-dist/tex/latex/listings/lstmisc.sty texmf-dist/tex/latex/listings/lstpatch.sty texmf-dist/tpm/listings.tpm - + texmf-dist/doc/latex/listings/README texmf-dist/doc/latex/listings/listings.pdf - + texmf-dist/source/latex/listings/listings-1.3.dtx texmf-dist/source/latex/listings/listings-1.3.ins texmf-dist/source/latex/listings/lstdrvrs-1.3.dtx -- cgit v1.2.3