diff options
author | Karl Berry <karl@freefriends.org> | 2018-09-03 21:13:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-09-03 21:13:01 +0000 |
commit | a2ccafd92ea630542d85873ed29d47dcd386a865 (patch) | |
tree | 0f1217ae7ea7455a5b8bb6e491682b25a1fb8e41 /Master/texmf-dist/source/latex/listings/listings.dtx | |
parent | 579b7021cf07f16cceee7884ce8655037ea1bf9c (diff) |
listings (3sep18)
git-svn-id: svn://tug.org/texlive/trunk@48566 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/listings/listings.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/listings/listings.dtx | 209 |
1 files changed, 135 insertions, 74 deletions
diff --git a/Master/texmf-dist/source/latex/listings/listings.dtx b/Master/texmf-dist/source/latex/listings/listings.dtx index 5b897a2968a..4756e7e2400 100644 --- a/Master/texmf-dist/source/latex/listings/listings.dtx +++ b/Master/texmf-dist/source/latex/listings/listings.dtx @@ -30,7 +30,7 @@ % % The package has the LPPL maintenance status "maintained". % -% $Id: listings.dtx 201 2015-06-04 20:25:39Z j_hoffmann $ +% $Id$ % % The Current Maintainer is Jobst Hoffmann <j.hoffmann(at)fh-aachen.de>. % @@ -119,7 +119,7 @@ % Hoffmann became the maintainer of the \packagename{listings} % package in 2013; see the Preface for details.}~ % % \textless\lstemail\textgreater} -% \date{2015/06/04\enspace\enspace Version 1.6\ \box\abstractbox} +% \date{2018/09/02\enspace\enspace Version 1.7\ \box\abstractbox} % \def\lstemail{\href{mailto:j.hoffmann@fh-aachen.de}{\texttt{j.hoffmann(at)fh-aachen.de}}} % \ifhyper % \hypersetup{pdfsubject=Package guide,pdfauthor=Jobst Hoffmann <j.hoffmann(at)fh-aachen.de>} @@ -1869,6 +1869,7 @@ % \lstthanks{Peter~Biechele}{peter.biechele@physik.uni-freiburg.de}, % \lstthanks{Beat~Birkhofer}{beat@birkhofer.ch}, % \lstthanks{Fr\'ed\'eric~Boulanger}{Frederic.Boulanger@supelec.fr}, +% \lstthanks{Byron~K.~Boulton}{bkboulton@berriehill.com}, % \lstthanks{Joachim~Breitner}{-}, % \lstthanks{Martin~Brodbeck}{Martin.Brodbeck@gmx.de}, % \lstthanks{Walter~E.~Brown}{WB@fnal.gov}, @@ -2037,6 +2038,7 @@ % \lstthanks{Kai~Wollenweber}{kai@ece.WPI.EDU}, % \lstthanks{Ulrich~G.~Wortmann}{uliw@erdw.ethz.ch}, % \lstthanks{Cameron~H.G.~Wright}{-}, +% \lstthanks{Joseph~Wright}{joseph.wright@morningstar2.co.uk}, % \lstthanks{Andrew~Zabolotny}{-}, and % \lstthanks{Florian~Z\"ahringer}{-}. % \end{quote} @@ -2135,7 +2137,7 @@ % \ref{rListingsInsideArguments}. % % Another limitation is that this feature can't be used in cells of a -% |tabular|-environment. See \section{uListingsArguments} for a +% |tabular|-environment. See section \ref{uListingsArguments} for a % workaround. % % See also section \ref{rShortInline} for commands to create short analogs @@ -4203,7 +4205,10 @@ % make all\end{verbatim} % or % \begin{verbatim} -% make listings-devel\end{verbatim} +% make listings-devel.pdf\end{verbatim} +% or +% \begin{verbatim} +% make pdf-devel\end{verbatim} % gives the same result---it is called \texttt{listings-devel.pdf}. % % \makeatletter @@ -4486,6 +4491,14 @@ % % Either execute \meta{else} or the \meta{value} matching part. % +% This implementation of C. Heinz has a problem\label{gAmpersand}, if +% the listing is part of a tabular environment as found out by +% \lsthelper{Nasser~M.~Abbasi}{2016/05/25}{possible bug in listings +% package}. \lsthelper{David~Carlisle}{2016/05/25}{% +% http://tex.stackexchange.com/questions/311383/adding-frame-none-to-lstlisting-options-in-lstdefinestyle-gives-error-with-tabu} +% gave a hint how to avoid this problem and so the separator |&| is +% replaced by |:|. +% % \item[0.20] |\lstKV@TwoArg|\marg{value}\marg{subdefinition} % \item[0.20] |\lstKV@ThreeArg|\marg{value}\marg{subdefinition} % \item[0.20] |\lstKV@FourArg|\marg{value}\marg{subdefinition} @@ -5616,7 +5629,7 @@ % \part{Implementation} % % -% \CheckSum{12365} +% \CheckSum{12368} %^^A %^^A Don't index TeX-primitives. %^^A @@ -5737,12 +5750,13 @@ % To distinguish procedure-like macros from data-macros, the name of procedure % macros use upper case letters with each beginning word, e.g.~|\lst@AddTo|. % A macro with suffix |@| is the main working-procedure for another definition, -% for example |\lstinputlisting@| does the main work for |\lstinputlisting|. +% for example |\lstMakeShortInline@| does the main work for |\lstMakeShortInline|. % % \paragraph{Preamble} % All files generated from this \texttt{listings.dtx} will get a header. % \begin{macrocode} -%% Please read the software license in listings-1.3.dtx or listings-1.3.pdf. +%<*kernel|misc> +%% Please read the software license in listings.dtx or listings.pdf. %% %% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed %% elsewhere in this file. @@ -5752,13 +5766,16 @@ %% Send comments and ideas on the package, error reports and additional %% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>. %% +%</kernel|misc> % \end{macrocode} % % \paragraph{Identification} % All files will have same date and version. % \begin{macrocode} -\def\filedate{2015/06/04} -\def\fileversion{1.6} +%<*kernel|misc|doc> +\def\filedate{2018/09/02} +\def\fileversion{1.7} +%</kernel|misc|doc> % \end{macrocode} % What we need and who we are. % \begin{macrocode} @@ -6407,7 +6424,7 @@ % % \begin{macro}{\lst@InsideConvert} % If \texttt{mathescape} is not on, we call (near the end of this definition) a -% submacro similar to |\zap@space| to replaced single spaces by active spaces. +% submacro similar to |\zap@space| to replace single spaces by active spaces. % Otherwise we check whether the code contains a pair |$...$| and call the % appropriate macro. % \begin{macrocode} @@ -6956,17 +6973,18 @@ % \end{macro} % % \begin{macro}{\lstKV@SwitchCases} -% is implemented as a substring test. +% is implemented as a substring test. The original version used an |&|, +% which produced a bug---see p.~\pageref{gAmpersand}. % \begin{macrocode} \def\lstKV@SwitchCases#1#2#3{% - \def\lst@temp##1\\#1&##2\\##3##4\@nil{% + \def\lst@temp##1\\#1:##2\\##3##4\@nil{% \ifx\@empty##3% #3% \else ##2% \fi }% - \lst@temp\\#2\\#1&\\\@empty\@nil} + \lst@temp\\#2\\#1:\\\@empty\@nil} % \end{macrocode} % \end{macro} % @@ -7159,7 +7177,7 @@ % \end{macro} % % -% \subsection{Divers helpers} +% \subsection{Diverse helpers} % % \begin{macro}{\lst@NormedDef} % works like |\def| (without any parameters!) but normalizes the replacement @@ -7681,7 +7699,7 @@ % This column format only inserts lost space by stretching (invisible) % existing spaces; it does not insert lost space between identifiers % and other characters where the original does not have a space. It -% was suggested by \lsthelper{Andrei~Alexandrescu}{-}{2007-02-26}. +% was suggested by \lsthelper{Andrei~Alexandrescu}{2007-02-26}{-}. % \begin{macrocode} \def\lst@column@spaceflexible{% \lst@column@flexible @@ -8297,7 +8315,7 @@ % \begin{macro}{\lst@ProcessSpace} % We look whether spaces fix the column alignment or not. In the latter case % we append a space; otherwise \ldots -% \lsthelper{Andrei~Alexandrescu}{-}{2007/02/27} tested the |spaceflexible| +% \lsthelper{Andrei~Alexandrescu}{2007/02/27}{-} tested the |spaceflexible| % column setting and found a bug that resulted from |\lst@PrintToken| and % |\lst@whitespacetrue| being out of order here. % \begin{macrocode} @@ -8443,13 +8461,20 @@ % \end{macro} % % \begin{macro}{\lst@CCPut} -% The first argument gives the character class, then follow the codes. +% The first argument gives the character class, then follow the +% codes. +% +% \lsthelper{Joseph~Wright}{2016/04/04}{unguarded setting of |lccode|} +% pointed to a bug which came up on TeX StackExchange +% (|http://tex.stackexchange.com/questions/302437/textcase-lstings-and-tilde|). Other +% than in |\lst@CCPutMacro| the |\lccode| settings weren't local and caused +% the error. % \begin{macrocode} \def\lst@CCPut#1#2{% \ifnum#2=\z@ \expandafter\@gobbletwo \else - \lccode`\~=#2\lccode`\/=#2\lowercase{\lst@CCPut@~{#1/}}% + \begingroup\lccode`\~=#2\lccode`\/=#2\lowercase{\endgroup\lst@CCPut@~{#1/}}% \fi \lst@CCPut#1} \def\lst@CCPut@#1#2{\lst@lAddTo\lst@SelectStdCharTable{\def#1{#2}}} @@ -8630,7 +8655,7 @@ % \begin{macrocode} \lsthk@SelectCharTable \lst@DeveloperSCT - \lst@DefRange + \lst@DefRange \ifx\lst@Backslash\relax\else \lst@LetSaveDef{"5C}\lsts@backslash\lst@Backslash \fi} @@ -11293,7 +11318,7 @@ % To make the backslash belong to the control sequence, it is merged with % the following token. This option was suggested by \lsthelper{Morten~H\o gholm} % {2004/07/16}{defining new (colored) texcs}. -% \lsthelper{Christian~Schneider}{-}{2006/09/08} pointed out that the original +% \lsthelper{Christian~Schneider}{2006/09/08}{-} pointed out that the original % implementation was broken when the identifier was preceded by an ``other'' % character. To fix this (and other bugs), we first output whatever is in the % current token before merging. @@ -12258,10 +12283,10 @@ \lst@Key{numbers}{none}{% \let\lst@PlaceNumber\@empty \lstKV@SwitchCases{#1}% - {none&\\% - left&\def\lst@PlaceNumber{\llap{\normalfont + {none:\\% + left:\def\lst@PlaceNumber{\llap{\normalfont \lst@numberstyle{\thelstnumber}\kern\lst@numbersep}}\\% - right&\def\lst@PlaceNumber{\rlap{\normalfont + right:\def\lst@PlaceNumber{\rlap{\normalfont \kern\linewidth \kern\lst@numbersep \lst@numberstyle{\thelstnumber}}}% }{\PackageError{Listings}{Numbers #1 unknown}\@ehc}} @@ -12297,8 +12322,8 @@ % \begin{macrocode} \lst@Key{firstnumber}{auto}{% \lstKV@SwitchCases{#1}% - {auto&\let\lst@firstnumber\@undefined\\% - last&\let\lst@firstnumber\c@lstnumber + {auto:\let\lst@firstnumber\@undefined\\% + last:\let\lst@firstnumber\c@lstnumber }{\def\lst@firstnumber{#1\relax}}} \lst@AddToHook{PreSet}{\let\lst@advancenumber\z@} % \end{macrocode} @@ -12383,10 +12408,15 @@ % the same identifier} found another bug which was due to the localization % of |\lst@neglisting|. He also provided the following fix, replacing % |\thelstlisting| with the |\ifx| \ldots\ |\fi| construction. +% \lsthelper{Ivo~Pletikosi\'c}{2015/08/18}{listings + hyperref, lstmisc.sty} +% reported another problem with the redefinition of |\thelstlisting|. +% \lsthelper{Heiko~Oberdiek}{2001/11/08}% +% {http://tex.stackexchange.com/questions/261437/renewing-the-thelstlisting-command-when-hyperref-is-on} +% again provided a fix: |\thelstlisting| must be replaced by |\theHlstlisting|. % \begin{macrocode} \AtBeginDocument{% \def\theHlstnumber{\ifx\lst@@caption\@empty \lst@neglisting - \else \thelstlisting \fi + \else \theHlstlisting \fi .\thelstnumber}} % \end{macrocode} % \end{macro} @@ -12783,13 +12813,13 @@ \lst@Key{frame}\relax{% \let\lst@xrulecolor\@empty \lstKV@SwitchCases{#1}% - {none&\let\lst@frame\@empty\\% - leftline&\def\lst@frame{l}\\% - topline&\def\lst@frame{t}\\% - bottomline&\def\lst@frame{b}\\% - lines&\def\lst@frame{tb}\\% - single&\def\lst@frame{trbl}\\% - shadowbox&\def\lst@frame{tRBl}% + {none:\let\lst@frame\@empty\\% + leftline:\def\lst@frame{l}\\% + topline:\def\lst@frame{t}\\% + bottomline:\def\lst@frame{b}\\% + lines:\def\lst@frame{tb}\\% + single:\def\lst@frame{trbl}\\% + shadowbox:\def\lst@frame{tRBl}% \def\lst@xrulecolor{\lst@rulesepcolor}% \def\lst@rulesep{\lst@frametextsep}% }{\def\lst@frame{#1}}% @@ -13318,7 +13348,7 @@ \lst@PrintToken \lst@EnterMode\lst@makemode{\lst@makekeyfalse}% \lst@Merge{\lst@ProcessOther\$\lst@ProcessOther(}}% -% \end{macrocode} +% \end{macrocode} ^^A $ % The closing parenthesis tests for the mode and either processes |)| as usual % or outputs it right here (in keyword style if a keyword was between |$(| and % |)|). @@ -13343,7 +13373,7 @@ \else \lst@ReplaceInput{$(}{\lst@ProcessOther\$\lst@ProcessOther(}% \fi} -% \end{macrocode} +% \end{macrocode} ^^A $ % \end{macro} % % \begin{macrocode} @@ -13401,10 +13431,10 @@ \lst@AddToHook{PreSet}{\def\lst@firstline{1\relax}% \let\lst@linerange\@empty} \lst@AddToHook{Init} -{\ifx\lst@linerange\@empty - \edef\lst@linerange{{\lst@firstline}-{\lst@lastline},}% - \fi - \lst@GetLineInterval}% + {\ifx\lst@linerange\@empty + \edef\lst@linerange{{\lst@firstline}-{\lst@lastline},}% + \fi% + \lst@GetLineInterval}% \def\lst@GetLineInterval{\expandafter\lst@GLI\lst@linerange\@nil} \def\lst@GLI#1,#2\@nil{\def\lst@linerange{#2}\lst@GLI@#1--\@nil} \def\lst@GLI@#1-#2-#3\@nil{% @@ -13446,28 +13476,30 @@ \fi \fi % \end{macrocode} -% The following definition will be executed in the SelectCharTable hook -% and here right now if we are already processing a listing. +% The following definition will be executed in the +% \hookname{SelectCharTable} hook and here right now if we are already +% processing a listing. % \begin{macrocode} \global\def\lst@DefRange{\expandafter\lst@CArgX\lst@rangebegin\relax\lst@DefRangeB}% \ifnum\lst@mode=\lst@Pmode \expandafter\lst@DefRange \fi}} % \end{macrocode} -% \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 +% |\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 +% 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} +% listing crosses page break} and \lsthelper{Markus~Luisser}{2004/08/13}{Bug mit +% 'linerangemarker' in umgebrochenen listings}. % \begin{macrocode} \lst@AddToHookExe{DeInit}{\global\let\lst@DefRange\@empty} % \end{macrocode} % -% 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. +% 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 \meta{execute}, +% \meta{pre}, and \meta{post} statements. % \begin{macrocode} \def\lst@DefRangeB#1#2{\lst@DefRangeB@#1#2} \def\lst@DefRangeB@#1#2#3#4{% @@ -13488,9 +13520,10 @@ \@empty} % \end{macrocode} % -% Modify labels and define |\lst@InitLstNumber| used above. +% Modify labels and define |\lst@InitLstNumber| used above according to an +% error reported by % \lsthelper{Omair-Inam~Abdul-Matin}{2004/05/10}{experimental linerange -% feature does not work with firstnumber} +% feature does not work with firstnumber}. % \begin{macrocode} \def\lstpatch@labels{% \gdef\lst@SetFirstNumber{% @@ -13511,8 +13544,8 @@ \global\advance\c@lstnumber-\lst@advancelstnum \fi% % \end{macrocode} -% \lstthanks{Byron~K.~Boulton}{bkboulton@berriehill.com}{2013/11/21} -% reported, that the line numbers are off by one, if the are displayed when +% \lsthelper{Byron~K.~Boulton}{2013/11/21}{line numbers off by one} +% reported, that the line numbers are off by one, if they are displayed when % a linerange is given by patterns and |includerangemarker=false| is % set. Adding this test corrects this behaviour. % \begin{macrocode} @@ -13523,9 +13556,9 @@ % \end{macrocode} % % 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. +% 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. % \begin{macrocode} \def\lst@DefRangeEnd{% \ifx\lst@rangeend\@empty\else @@ -13552,8 +13585,8 @@ \fi} % \end{macrocode} % -% Eventually we shouldn't forget to install \lst@OnceAtEOL, which must -% also be called in \lst@MSkipToFirst. +% Eventually we shouldn't forget to install |\lst@OnceAtEOL|, which must +% also be called in |\lst@MSkipToFirst|. % \begin{macrocode} \lst@AddToHook{EOL}{\lst@OnceAtEOL\global\let\lst@OnceAtEOL\@empty} \gdef\lst@OnceAtEOL{}% Init @@ -13578,7 +13611,7 @@ \fi} % \end{macrocode} % -% Finally the service macro \lst@IfNumber: +% Finally the service macro |\lst@IfNumber|: % \begin{macrocode} \def\lst@IfNumber#1{% \ifx\@empty#1\@empty @@ -13854,9 +13887,9 @@ % \begin{macrocode} \lst@Key{float}\relax[\lst@floatplacement]{% \lstKV@SwitchCases{#1}% - {true&\let\lst@floatdefault\lst@floatplacement + {true:\let\lst@floatdefault\lst@floatplacement \let\lst@float\lst@floatdefault\\% - false&\let\lst@floatdefault\relax + false:\let\lst@floatdefault\relax \let\lst@float\lst@floatdefault }{\def\lst@next{\@ifstar{\let\lst@beginfloat\@dblfloat \let\lst@endfloat\end@dblfloat @@ -14244,7 +14277,7 @@ % Here is the replacement list. % \begin{macrocode} \def\lst@filenamerpl{_\textunderscore $\textdollar -\textendash} -% \end{macrocode} +% \end{macrocode} ^^A $ % \end{macro} % \end{macro} % \end{macro} @@ -14321,7 +14354,7 @@ % floats adds a command to |\float@addtolists|, and then packages (such as % the KOMA-script document classes) which wish to add things to all lists of % floats can then use it, without needing to be aware of all of the possible -% lists that could exist. Thanks to \lsthelper{Markus~Kohm}{-}{2007/02/25} +% lists that could exist. Thanks to \lsthelper{Markus~Kohm}{2007/02/25}{-} % for the suggestion. % % Unfortunately, \packagename{float} defines this with |\newcommand|; thus, @@ -14362,21 +14395,21 @@ \lsthk@TextStyle \@ifnextchar\bgroup{% % \end{macrocode} -% \lstthanks{Luc~Van~Eycken}{Luc.VanEycken@esat.kuleuven.be}{2014/01/22} +% \lsthelper{Luc~Van~Eycken}{2014/01/22}{Luc.VanEycken@esat.kuleuven.be} % reported, that the experimental implementation of |\lstinline| with % braces instead of characters surrounding the source code resulted in an % error if used in a tabular environment. He found that this error comes % from the master counter (cf. appendix D (Dirty Tricks), item 5. (Brace % hacks), of the TeXbook (p. 385-386)). Adding the following line at this % point -% \begin{verbatim} +%\begin{verbatim} % \ifnum`{=0}\fi% -% \end{verbatim} -% remedies the wrong behaviour. But \lstthanks{Qing Lee}{2014/06/28} pointed out, -% that this breaks code like the one showed in \ref{uListingsArguments} on -% \pageref{uListingsArguments} and proposed another -% solution which in turn broke the code needed by Luc: -% \begin{verbatim} +%\end{verbatim} +% remedies the wrong behaviour. But \lsthelper{Qing Lee}{2014/06/28}{-} +% pointed out, that this breaks code like the one showed in +% \ref{uListingsArguments} on \pageref{uListingsArguments} and proposed +% another solution which in turn broke the code needed by Luc: +%\begin{verbatim} % % \renewcommand\lstinline[1][]{% % % \leavevmode\bgroup % \hbox\bgroup --> \bgroup % % \def\lst@boxpos{b}% @@ -14387,7 +14420,7 @@ % % \ifnum`{=\z@}\fi% % % \afterassignment\lst@InlineG \let\@let@token}{% % % \ifnum`{=\z@}\fi\lstinline@}} -% \end{verbatim} +%\end{verbatim} % So finally the old code comes back and the people, who need a % |\lstinline| with braces, should use the workaround from section % \ref{uListingsArguments} on page \pageref{uListingsArguments}. @@ -15033,7 +15066,19 @@ % continued line numbering. % \begin{macrocode} \lstnewenvironment{lstlisting}[2][] - {\lst@TestEOLChar{#2}% + {% +% \end{macrocode} +% There is a problem with vertical space as pointed out by +% \lsthelper{Jean-Yves~Baudais}{2016/03/11}{some vertical space +% problem}. A similar problem arises with a listing beginning at +% the top of a |\paragraph| or at the beginning of an |example| +% environment. Jean-Yves provided a solution---|\let\if@nobreak\iffalse|---as has +% been discussed on |fr.comp.text.tex|. The problem vanishes also if there +% is a top rule at the beginning of the listing or if |leavevmode| +% introduces the listing, so +% \begin{macrocode} + \leavevmode% + \lst@TestEOLChar{#2}% \lstset{#1}% \csname\@lst @SetFirstNumber\endcsname} {\csname\@lst @SaveFirstNumber\endcsname} @@ -15048,7 +15093,7 @@ % % \begin{syntax} % \item[0.19] -% |\begin{lstsample}|\marg{point list}\marg{left}\marg{right} +% |\begin{lstsample}|\oarg{point list}\marg{left}\marg{right} % % \leavevmode\hspace*{-\leftmargini}|\end{lstsample}| % @@ -15586,6 +15631,16 @@ % \end{macrocode} % % \paragraph{Commands for credits and helpers} +% There are two commands for credits and helpers: +% \begin{enumerate} +% \item |\lstthanks| is used to put a name of a contributor into the +% section ``Closing and credit''. It has two arguments: |#1| is the +% name, |#2| the email address---the email addres is not shown. +% \item |\lsthelper| must be used in the text to show the name of the +% helper (argument |#1|), the date of the contribution (argument |#2|) +% and a short text about the contribution (argument |#3|). Only the +% first argument is printed. +% \end{enumerate} % \begin{macrocode} \gdef\lst@emails{} \newcommand*\lstthanks[2] @@ -16651,6 +16706,12 @@ % \item new keys, multicharacter string delimiters, short inline listings, and more. % \item[1.5] 2013/06/27 % \item new maintainership +% \item[1.6] 2015/05/05 +% \item add discussion about using |\lstinline|\oarg{key=value list}\marg{source code}. +% \item add section ``Bugs and workarounds''. +% \item[1.7] 2018/09/02 +% \item some new or updated language definitions. +% \item several error corrections. % \end{itemize} % \endgroup % |