summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-12 23:58:08 +0000
committerKarl Berry <karl@freefriends.org>2006-01-12 23:58:08 +0000
commit6a8abbc4994582595d64361f7e1542800ded4a7b (patch)
treefdce9de1ebf0a9450d79c6e91c41fce7227cbbf1 /Master
parent5fa88075750e366e6d6353b7e3d55c9434dfd5ee (diff)
listings
git-svn-id: svn://tug.org/texlive/trunk@1045 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings.cfg45
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings.sty2002
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstdoc.sty451
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstlang1.sty1226
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstlang2.sty1532
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstlang3.sty1006
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstpatch.sty393
7 files changed, 6655 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/listings/listings.cfg b/Master/texmf-dist/tex/latex/listings/listings.cfg
new file mode 100644
index 00000000000..00c430d8b4f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/listings.cfg
@@ -0,0 +1,45 @@
+%%
+%% This is file `listings.cfg',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% 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.
+%%
+%% 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.
+%%
+%% This file is completely free and comes without any warranty.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+\ProvidesFile{listings.cfg}[2004/09/05 1.3 listings configuration]
+\def\lstlanguagefiles
+ {lstlang0.sty,lstlang1.sty,lstlang2.sty,lstlang3.sty}
+\lstset{defaultdialect=[R/3 6.10]ABAP,
+ defaultdialect=[95]Ada,
+ defaultdialect=[68]Algol,
+ defaultdialect=[gnu]Awk,
+ defaultdialect=[ANSI]C,
+ defaultdialect=[light]Caml,
+ defaultdialect=[1985]Cobol,
+ defaultdialect=[ISO]C++,
+ defaultdialect=[95]Fortran,
+ defaultdialect=[3.0]Mathematica,
+ defaultdialect=[OMG]OCL,
+ defaultdialect=[Standard]Pascal,
+ defaultdialect=[67]Simula,
+ defaultdialect=[plain]TeX,
+ defaultdialect=[97]VRML}
+\lstalias[]{TclTk}[tk]{tcl}
+\lstalias[6.1]{ABAP}[R/3 6.10]{ABAP}
+\lstalias[3.1]{ABAP}[R/3 3.1C]{ABAP}
+\lstalias[4.6]{ABAP}[R/3 4.6C]{ABAP}
+\endinput
+%%
+%% End of file `listings.cfg'.
diff --git a/Master/texmf-dist/tex/latex/listings/listings.sty b/Master/texmf-dist/tex/latex/listings/listings.sty
new file mode 100644
index 00000000000..7c3eceb9dcb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/listings.sty
@@ -0,0 +1,2002 @@
+%%
+%% This is file `listings.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% listings-1.3.dtx (with options: `kernel')
+%%
+%% Please read the software license in listings-1.3.dtx or listings-1.3.pdf.
+%%
+%% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed
+%% elsewhere in this file.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+\def\filedate{2004/09/07}
+\def\fileversion{1.3}
+\NeedsTeXFormat{LaTeX2e}
+\AtEndOfPackage{\ProvidesPackage{listings}
+ [\filedate\space\fileversion\space(Carsten Heinz)]}
+\def\lst@CheckVersion#1{\edef\reserved@a{#1}%
+ \ifx\lst@version\reserved@a \expandafter\@gobble
+ \else \expandafter\@firstofone \fi}
+\let\lst@version\fileversion
+\def\lst@InputCatcodes{%
+ \makeatletter \catcode`\"12%
+ \catcode`\^^@\active
+ \catcode`\^^I9%
+ \catcode`\^^L9%
+ \catcode`\^^M9%
+ \catcode`\%14%
+ \catcode`\~\active}
+\def\lst@RestoreCatcodes#1{%
+ \ifx\relax#1\else
+ \noexpand\catcode`\noexpand#1\the\catcode`#1\relax
+ \expandafter\lst@RestoreCatcodes
+ \fi}
+\edef\lst@RestoreCatcodes{%
+ \noexpand\lccode`\noexpand\/`\noexpand\/%
+ \lst@RestoreCatcodes\"\^^I\^^M\~\^^@\relax}
+\lst@InputCatcodes
+\AtEndOfPackage{\lst@RestoreCatcodes}
+\def\@lst{lst}
+\def\lst@IfSubstring#1#2{%
+ \def\lst@temp##1#1##2##3\relax{%
+ \ifx \@empty##2\expandafter\@secondoftwo
+ \else \expandafter\@firstoftwo \fi}%
+ \expandafter\lst@temp#2#1\@empty\relax}
+\def\lst@IfOneOf#1\relax#2{%
+ \def\lst@temp##1,#1,##2##3\relax{%
+ \ifx \@empty##2\expandafter\@secondoftwo
+ \else \expandafter\@firstoftwo \fi}%
+ \expandafter\lst@temp\expandafter,#2,#1,\@empty\relax}
+\def\lst@DeleteKeysIn#1#2{%
+ \expandafter\lst@DeleteKeysIn@\expandafter#1#2,\relax,}
+\def\lst@DeleteKeysIn@#1#2,{%
+ \ifx\relax#2\@empty
+ \expandafter\@firstoftwo\expandafter\lst@RemoveCommas
+ \else
+ \ifx\@empty#2\@empty\else
+ \def\lst@temp##1,#2,##2{%
+ ##1%
+ \ifx\@empty##2\@empty\else
+ \expandafter\lst@temp\expandafter,%
+ \fi ##2}%
+ \edef#1{\expandafter\lst@temp\expandafter,#1,#2,\@empty}%
+ \fi
+ \fi
+ \lst@DeleteKeysIn@#1}
+\def\lst@RemoveCommas#1{\edef#1{\expandafter\lst@RC@#1\@empty}}
+\def\lst@RC@#1{\ifx,#1\expandafter\lst@RC@ \else #1\fi}
+\def\lst@ReplaceIn#1#2{%
+ \expandafter\lst@ReplaceIn@\expandafter#1#2\@empty\@empty}
+\def\lst@ReplaceInArg#1#2{\lst@ReplaceIn@#1#2\@empty\@empty}
+\def\lst@ReplaceIn@#1#2#3{%
+ \ifx\@empty#3\relax\else
+ \def\lst@temp##1#2##2{%
+ \ifx\@empty##2%
+ \lst@lAddTo#1{##1}%
+ \else
+ \lst@lAddTo#1{##1#3}\expandafter\lst@temp
+ \fi ##2}%
+ \let\@tempa#1\let#1\@empty
+ \expandafter\lst@temp\@tempa#2\@empty
+ \expandafter\lst@ReplaceIn@\expandafter#1%
+ \fi}
+\providecommand*\@gobblethree[3]{}
+\def\lst@GobbleNil#1\@nil{}
+\def\lst@Swap#1#2{#2#1}
+\def\lst@true{\let\lst@if\iftrue}
+\def\lst@false{\let\lst@if\iffalse}
+\lst@false
+\def\lst@IfNextCharsArg#1{%
+ \def\lst@tofind{#1}\lst@IfNextChars\lst@tofind}
+\def\lst@IfNextChars#1#2#3{%
+ \let\lst@tofind#1\def\@tempa{#2}\def\@tempb{#3}%
+ \let\lst@eaten\@empty \lst@IfNextChars@}
+\def\lst@IfNextChars@{\expandafter\lst@IfNextChars@@\lst@tofind\relax}
+\def\lst@IfNextChars@@#1#2\relax#3{%
+ \def\lst@tofind{#2}\lst@lAddTo\lst@eaten{#3}%
+ \ifx#1#3%
+ \ifx\lst@tofind\@empty
+ \let\lst@next\@tempa
+ \else
+ \let\lst@next\lst@IfNextChars@
+ \fi
+ \expandafter\lst@next
+ \else
+ \expandafter\@tempb
+ \fi}
+\def\lst@IfNextCharActive#1#2#3{%
+ \begingroup \lccode`\~=`#3\lowercase{\endgroup
+ \ifx~}#3%
+ \def\lst@next{#1}%
+ \else
+ \def\lst@next{#2}%
+ \fi \lst@next #3}
+\def\lst@for#1\do#2{%
+ \def\lst@forbody##1{#2}%
+ \@for\lst@forvar:=#1\do
+ {\expandafter\lst@forbody\expandafter{\lst@forvar}}}
+\def\lst@MakeActive#1{%
+ \let\lst@temp\@empty \lst@MakeActive@#1%
+ \relax\relax\relax\relax\relax\relax\relax\relax\relax}
+\begingroup
+\catcode`\^^@=\active \catcode`\^^A=\active \catcode`\^^B=\active
+\catcode`\^^C=\active \catcode`\^^D=\active \catcode`\^^E=\active
+\catcode`\^^F=\active \catcode`\^^G=\active \catcode`\^^H=\active
+\gdef\lst@MakeActive@#1#2#3#4#5#6#7#8#9{\let\lst@next\relax
+ \ifx#1\relax
+ \else \lccode`\^^@=`#1%
+ \ifx#2\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@}}%
+ \else \lccode`\^^A=`#2%
+ \ifx#3\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A}}%
+ \else \lccode`\^^B=`#3%
+ \ifx#4\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B}}%
+ \else \lccode`\^^C=`#4%
+ \ifx#5\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B^^C}}%
+ \else \lccode`\^^D=`#5%
+ \ifx#6\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B^^C^^D}}%
+ \else \lccode`\^^E=`#6%
+ \ifx#7\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B^^C^^D^^E}}%
+ \else \lccode`\^^F=`#7%
+ \ifx#8\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B^^C^^D^^E^^F}}%
+ \else \lccode`\^^G=`#8%
+ \ifx#9\relax
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B^^C^^D^^E^^F^^G}}%
+ \else \lccode`\^^H=`#9%
+ \lowercase{\lst@lAddTo\lst@temp{^^@^^A^^B^^C^^D^^E^^F^^G^^H}}%
+ \let\lst@next\lst@MakeActive@
+ \fi \fi \fi \fi \fi \fi \fi \fi \fi
+ \lst@next}
+\endgroup
+\def\lst@DefActive#1#2{\lst@MakeActive{#2}\let#1\lst@temp}
+\def\lst@DefOther#1#2{%
+ \begingroup \def#1{#2}\escapechar\m@ne \expandafter\endgroup
+ \expandafter\lst@DefOther@\meaning#1\relax#1}
+\def\lst@DefOther@#1>#2\relax#3{\edef#3{\zap@space#2 \@empty}}
+\def\lst@InsideConvert#1{%
+ \lst@ifmathescape
+ \lst@InsideConvert@e#1$\@nil
+ \lst@if
+ \lst@InsideConvert@ey#1\@nil
+ \else
+ \lst@InsideConvert@#1 \@empty
+ \expandafter\@gobbletwo
+ \fi
+ \expandafter\lst@next
+ \else
+ \lst@InsideConvert@#1 \@empty
+ \fi}
+\begingroup \lccode`\~=`\ \relax \lowercase{%
+\gdef\lst@InsideConvert@#1 #2{%
+ \lst@MakeActive{#1}%
+ \ifx\@empty#2%
+ \lst@lExtend\lst@arg{\lst@temp}%
+ \else
+ \lst@lExtend\lst@arg{\lst@temp~}%
+ \expandafter\lst@InsideConvert@
+ \fi #2}
+}\endgroup
+\def\lst@InsideConvert@e#1$#2\@nil{%
+ \ifx\@empty#2\@empty \lst@false \else \lst@true \fi}
+\def\lst@InsideConvert@ey#1$#2$#3\@nil{%
+ \lst@InsideConvert@#1 \@empty
+ \lst@lAddTo\lst@arg{%
+ \lst@ifdropinput\else
+ \lst@TrackNewLines\lst@OutputLostSpace \lst@XPrintToken
+ \setbox\@tempboxa=\hbox\bgroup$\lst@escapebegin
+ #2%
+ \lst@escapeend$\egroup \lst@CalcLostSpaceAndOutput
+ \lst@whitespacefalse
+ \fi}%
+ \def\lst@next{\lst@InsideConvert{#3}}%
+}
+\def\lst@XConvert{\@ifnextchar\bgroup \lst@XConvertArg\lst@XConvert@}
+\def\lst@XConvertArg#1{%
+ {\lst@false \let\lst@arg\@empty
+ \lst@XConvert#1\@nil
+ \global\let\@gtempa\lst@arg}%
+ \lst@lExtend\lst@arg{\expandafter{\@gtempa}}%
+ \lst@XConvertNext}
+\def\lst@XConvert@#1{%
+ \ifx\@nil#1\else
+ \begingroup\lccode`\~=`#1\lowercase{\endgroup
+ \lst@lAddTo\lst@arg~}%
+ \expandafter\lst@XConvertNext
+ \fi}
+\def\lst@XConvertNext{%
+ \lst@if \expandafter\lst@XConvertX
+ \else \expandafter\lst@XConvert \fi}
+\def\lst@XConvertX#1{%
+ \ifx\@nil#1\else
+ \lst@XConvertX@#1\relax
+ \expandafter\lst@XConvert
+ \fi}
+\def\lst@XConvertX@#1#2\relax{%
+ \begingroup\lccode`\~=`#1\lowercase{\endgroup
+ \lst@XCConvertX@@~}{#2}}
+\def\lst@XCConvertX@@#1#2{\lst@lAddTo\lst@arg{{#1#2}}}
+\def\lst@Require#1#2#3#4#5{%
+ \begingroup
+ \aftergroup\lst@true
+ \ifx\@empty#3\@empty\else
+ \def\lst@prefix{#2}\let\lst@require\@empty
+ \edef\lst@temp{\expandafter\zap@space#3 \@empty}%
+ \lst@for\lst@temp\do{%
+ \ifx\@empty##1\@empty\else \lstKV@OptArg[]{##1}{%
+ #4[####1]{####2}%
+ \@ifundefined{\@lst\lst@prefix @\lst@malias $\lst@oalias}%
+ {\edef\lst@require{\lst@require,\lst@malias $\lst@oalias}}%
+ {}}%
+ \fi}%
+ \global\let\lst@loadaspects\@empty
+ \lst@InputCatcodes
+ \ifx\lst@require\@empty\else
+ \lst@for{#5}\do{%
+ \ifx\lst@require\@empty\else
+ \InputIfFileExists{##1}{}{}%
+ \fi}%
+ \fi
+ \ifx\lst@require\@empty\else
+ \PackageError{Listings}{Couldn't load requested #1}%
+ {The following #1s weren't loadable:^^J\@spaces
+ \lst@require^^JThis may cause errors in the sequel.}%
+ \aftergroup\lst@false
+ \fi
+ \ifx\lst@loadaspects\@empty\else
+ \lst@RequireAspects\lst@loadaspects
+ \fi
+ \fi
+ \endgroup}
+\def\lst@IfRequired[#1]#2{%
+ \lst@NormedDef\lst@temp{[#1]#2}%
+ \expandafter\lst@IfRequired@\lst@temp\relax}
+\def\lst@IfRequired@[#1]#2\relax#3{%
+ \lst@IfOneOf #2$#1\relax\lst@require
+ {\lst@DeleteKeysIn@\lst@require#2$#1,\relax,%
+ \global\expandafter\let
+ \csname\@lst\lst@prefix @#2$#1\endcsname\@empty
+ #3}}
+\let\lst@require\@empty
+\def\lst@NoAlias[#1]#2{%
+ \lst@NormedDef\lst@oalias{#1}\lst@NormedDef\lst@malias{#2}}
+\gdef\lst@LAS#1#2#3#4#5#6#7{%
+ \lst@Require{#1}{#2}{#3}#4#5%
+ #4#3%
+ \@ifundefined{lst#2@\lst@malias$\lst@oalias}%
+ {\PackageError{Listings}%
+ {#1 \ifx\@empty\lst@oalias\else \lst@oalias\space of \fi
+ \lst@malias\space undefined}%
+ {The #1 is not loadable. \@ehc}}%
+ {#6\csname\@lst#2@\lst@malias $\lst@oalias\endcsname #7}}
+\def\lst@RequireAspects#1{%
+ \lst@Require{aspect}{asp}{#1}\lst@NoAlias\lstaspectfiles}
+\let\lstloadaspects\lst@RequireAspects
+\@ifundefined{lstaspectfiles}
+ {\newcommand\lstaspectfiles{lstmisc0.sty,lstmisc.sty}}{}
+\gdef\lst@DefDriver#1#2#3#4{%
+ \@ifnextchar[{\lst@DefDriver@{#1}{#2}#3#4}%
+ {\lst@DefDriver@{#1}{#2}#3#4[]}}
+\gdef\lst@DefDriver@#1#2#3#4[#5]#6{%
+ \def\lst@name{#1}\let\lst@if#4%
+ \lst@NormedDef\lst@driver{\@lst#2@#6$#5}%
+ \lst@IfRequired[#5]{#6}{\begingroup \lst@true}%
+ {\begingroup}%
+ \lst@setcatcodes
+ \@ifnextchar[{\lst@XDefDriver{#1}#3}{\lst@DefDriver@@#3}}
+\gdef\lst@DefDriver@@#1#2{%
+ \lst@if
+ \global\@namedef{\lst@driver}{#1{#2}}%
+ \fi
+ \endgroup
+ \@ifnextchar[\lst@XXDefDriver\@empty}
+\gdef\lst@XXDefDriver[#1]{%
+ \ifx\@empty#1\@empty\else
+ \lst@if
+ \lstloadaspects{#1}%
+ \else
+ \@ifundefined{\lst@driver}{}%
+ {\xdef\lst@loadaspects{\lst@loadaspects,#1}}%
+ \fi
+ \fi}
+\gdef\lst@XDefDriver#1#2[#3]#4#5{\lst@DefDriver@@#2{also#1=[#3]#4,#5}}
+\let\lst@UserCommand\gdef
+\newcommand*\lst@BeginAspect[2][]{%
+ \def\lst@curraspect{#2}%
+ \ifx \lst@curraspect\@empty
+ \expandafter\lst@GobbleAspect
+ \else
+ \let\lst@next\@empty
+ \lst@IfRequired[]{#2}%
+ {\lst@RequireAspects{#1}%
+ \lst@if\else \let\lst@next\lst@GobbleAspect \fi}%
+ {\let\lst@next\lst@GobbleAspect}%
+ \expandafter\lst@next
+ \fi}
+\def\lst@EndAspect{%
+ \csname\@lst patch@\lst@curraspect\endcsname
+ \let\lst@curraspect\@empty}
+\long\def\lst@GobbleAspect#1\lst@EndAspect{\let\lst@curraspect\@empty}
+\def\lst@Key#1#2{%
+ \@ifnextchar[{\lstKV@def{#1}{#2}}%
+ {\def\lst@temp{\lst@Key@{#1}{#2}}
+ \afterassignment\lst@temp
+ \global\@namedef{KV@\@lst @#1}####1}}
+\def\lstKV@def#1#2[#3]{%
+ \global\@namedef{KV@\@lst @#1@default\expandafter}\expandafter
+ {\csname KV@\@lst @#1\endcsname{#3}}%
+ \def\lst@temp{\lst@Key@{#1}{#2}}\afterassignment\lst@temp
+ \global\@namedef{KV@\@lst @#1}##1}
+\def\lst@Key@#1#2{%
+ \ifx\relax#2\@empty\else
+ \begingroup \globaldefs\@ne
+ \csname KV@\@lst @#1\endcsname{#2}%
+ \endgroup
+ \fi}
+\def\lst@UseHook#1{\csname\@lst hk@#1\endcsname}
+\def\lst@AddToHook{\lst@ATH@\iffalse\lst@AddTo}
+\def\lst@AddToHookExe{\lst@ATH@\iftrue\lst@AddTo}
+\def\lst@AddToHookAtTop{\lst@ATH@\iffalse\lst@AddToAtTop}
+\long\def\lst@ATH@#1#2#3#4{%
+ \@ifundefined{\@lst hk@#3}{%
+ \expandafter\gdef\csname\@lst hk@#3\endcsname{}}{}%
+ \expandafter#2\csname\@lst hk@#3\endcsname{#4}%
+ \def\lst@temp{#4}%
+ #1% \iftrue|false
+ \begingroup \globaldefs\@ne \lst@temp \endgroup
+ \fi}
+\long\def\lst@AddTo#1#2{%
+ \expandafter\gdef\expandafter#1\expandafter{#1#2}}
+\def\lst@AddToAtTop#1#2{\def\lst@temp{#2}%
+ \expandafter\expandafter\expandafter\gdef
+ \expandafter\expandafter\expandafter#1%
+ \expandafter\expandafter\expandafter{\expandafter\lst@temp#1}}
+\def\lst@lAddTo#1#2{\expandafter\def\expandafter#1\expandafter{#1#2}}
+\def\lst@Extend#1#2{%
+ \expandafter\lst@AddTo\expandafter#1\expandafter{#2}}
+\def\lst@lExtend#1#2{%
+ \expandafter\lst@lAddTo\expandafter#1\expandafter{#2}}
+\RequirePackage{keyval}[1997/11/10]
+\def\lstKV@TwoArg#1#2{\gdef\@gtempa##1##2{#2}\@gtempa#1{}{}}
+\def\lstKV@ThreeArg#1#2{\gdef\@gtempa##1##2##3{#2}\@gtempa#1{}{}{}}
+\def\lstKV@FourArg#1#2{\gdef\@gtempa##1##2##3##4{#2}\@gtempa#1{}{}{}{}}
+\def\lstKV@OptArg[#1]#2#3{%
+ \gdef\@gtempa[##1]##2{#3}\lstKV@OptArg@{#1}#2\@}
+\def\lstKV@OptArg@#1{\@ifnextchar[\lstKV@OptArg@@{\lstKV@OptArg@@[#1]}}
+\def\lstKV@OptArg@@[#1]#2\@{\@gtempa[#1]{#2}}
+\def\lstKV@XOptArg[#1]#2#3{%
+ \global\let\@gtempa#3\lstKV@OptArg@{#1}#2\@}
+\def\lstKV@CSTwoArg#1#2{%
+ \gdef\@gtempa##1,##2,##3\relax{#2}%
+ \@gtempa#1,,\relax}
+\def\lstKV@SetIf#1{\lstKV@SetIf@#1\relax}
+\def\lstKV@SetIf@#1#2\relax#3{\lowercase{%
+ \expandafter\let\expandafter#3%
+ \csname if\ifx #1t}true\else false\fi\endcsname}
+\def\lstKV@SwitchCases#1#2#3{%
+ \def\lst@temp##1\\#1&##2\\##3##4\@nil{%
+ \ifx\@empty##3%
+ #3%
+ \else
+ ##2%
+ \fi
+ }%
+ \lst@temp\\#2\\#1&\\\@empty\@nil}
+\lst@UserCommand\lstset{\begingroup \lst@setcatcodes \lstset@}
+\def\lstset@#1{\endgroup \ifx\@empty#1\@empty\else\setkeys{lst}{#1}\fi}
+\def\lst@setcatcodes{\makeatletter \catcode`\==12\relax}
+\def\lst@NewMode#1{%
+ \ifx\@undefined#1%
+ \lst@mode\lst@newmode\relax \advance\lst@mode\@ne
+ \xdef\lst@newmode{\the\lst@mode}%
+ \global\chardef#1=\lst@mode
+ \lst@mode\lst@nomode
+ \fi}
+\newcount\lst@mode
+\def\lst@newmode{\m@ne}% init
+\lst@NewMode\lst@nomode % init (of \lst@mode :-)
+\def\lst@UseDynamicMode{%
+ \@tempcnta\lst@dynamicmode\relax \advance\@tempcnta\@ne
+ \edef\lst@dynamicmode{\the\@tempcnta}%
+ \expandafter\lst@Swap\expandafter{\expandafter{\lst@dynamicmode}}}
+\lst@AddToHook{InitVars}{\let\lst@dynamicmode\lst@newmode}
+\def\lst@EnterMode#1#2{%
+ \bgroup \lst@mode=#1\relax #2%
+ \lst@FontAdjust
+ \lst@lAddTo\lst@entermodes{\lst@EnterMode{#1}{#2}}}
+\lst@AddToHook{InitVars}{\let\lst@entermodes\@empty}
+\let\lst@entermodes\@empty % init
+\def\lst@LeaveMode{%
+ \ifnum\lst@mode=\lst@nomode\else
+ \egroup \expandafter\lsthk@EndGroup
+ \fi}
+\lst@AddToHook{EndGroup}{}% init
+\def\lst@InterruptModes{%
+ \lst@Extend\lst@modestack{\expandafter{\lst@entermodes}}%
+ \lst@LeaveAllModes}
+\lst@AddToHook{InitVars}{\global\let\lst@modestack\@empty}
+\def\lst@ReenterModes{%
+ \ifx\lst@modestack\@empty\else
+ \lst@LeaveAllModes
+ \global\let\@gtempa\lst@modestack
+ \global\let\lst@modestack\@empty
+ \expandafter\lst@ReenterModes@\@gtempa\relax
+ \fi}
+\def\lst@ReenterModes@#1#2{%
+ \ifx\relax#2\@empty
+ \gdef\@gtempa##1{#1}%
+ \expandafter\@gtempa
+ \else
+ \lst@AddTo\lst@modestack{{#1}}%
+ \expandafter\lst@ReenterModes@
+ \fi
+ {#2}}
+\def\lst@LeaveAllModes{%
+ \ifnum\lst@mode=\lst@nomode
+ \expandafter\lsthk@EndGroup
+ \else
+ \expandafter\egroup\expandafter\lst@LeaveAllModes
+ \fi}
+\lst@AddToHook{ExitVars}{\lst@LeaveAllModes}
+\lst@NewMode\lst@Pmode
+\lst@NewMode\lst@GPmode
+\def\lst@modetrue{\let\lst@ifmode\iftrue \lsthk@ModeTrue}
+\let\lst@ifmode\iffalse % init
+\lst@AddToHook{ModeTrue}{}% init
+\def\lst@Lmodetrue{\let\lst@ifLmode\iftrue}
+\let\lst@ifLmode\iffalse % init
+\lst@AddToHook{EOL}{\@whilesw \lst@ifLmode\fi \lst@LeaveMode}
+\def\lst@NormedDef#1#2{\lowercase{\edef#1{\zap@space#2 \@empty}}}
+\def\lst@NormedNameDef#1#2{%
+ \lowercase{\edef\lst@temp{\zap@space#1 \@empty}%
+ \expandafter\xdef\csname\lst@temp\endcsname{\zap@space#2 \@empty}}}
+\def\lst@GetFreeMacro#1{%
+ \@tempcnta\z@ \def\lst@freemacro{#1\the\@tempcnta}%
+ \lst@GFM@}
+\def\lst@GFM@{%
+ \expandafter\ifx \csname\lst@freemacro\endcsname \relax
+ \edef\lst@freemacro{\csname\lst@freemacro\endcsname}%
+ \else
+ \advance\@tempcnta\@ne
+ \expandafter\lst@GFM@
+ \fi}
+\newbox\lst@gtempboxa
+\newtoks\lst@token \newcount\lst@length
+\def\lst@ResetToken{\lst@token{}\lst@length\z@}
+\lst@AddToHook{InitVarsBOL}{\lst@ResetToken \let\lst@lastother\@empty}
+\lst@AddToHook{EndGroup}{\lst@ResetToken \let\lst@lastother\@empty}
+\def\lst@lettertrue{\let\lst@ifletter\iftrue}
+\def\lst@letterfalse{\let\lst@ifletter\iffalse}
+\lst@AddToHook{InitVars}{\lst@letterfalse}
+\def\lst@Append#1{\advance\lst@length\@ne
+ \lst@token=\expandafter{\the\lst@token#1}}
+\def\lst@AppendOther{%
+ \lst@ifletter \lst@Output\lst@letterfalse \fi
+ \futurelet\lst@lastother\lst@Append}
+\def\lst@AppendLetter{%
+ \lst@ifletter\else \lst@OutputOther\lst@lettertrue \fi
+ \lst@Append}
+\def\lst@SaveToken{%
+ \global\let\lst@gthestyle\lst@thestyle
+ \global\let\lst@glastother\lst@lastother
+ \xdef\lst@RestoreToken{\noexpand\lst@token{\the\lst@token}%
+ \noexpand\lst@length\the\lst@length\relax
+ \noexpand\let\noexpand\lst@thestyle
+ \noexpand\lst@gthestyle
+ \noexpand\let\noexpand\lst@lastother
+ \noexpand\lst@glastother}}
+\def\lst@IfLastOtherOneOf#1{\lst@IfLastOtherOneOf@ #1\relax}
+\def\lst@IfLastOtherOneOf@#1{%
+ \ifx #1\relax
+ \expandafter\@secondoftwo
+ \else
+ \ifx\lst@lastother#1%
+ \lst@IfLastOtherOneOf@t
+ \else
+ \expandafter\expandafter\expandafter\lst@IfLastOtherOneOf@
+ \fi
+ \fi}
+\def\lst@IfLastOtherOneOf@t#1\fi\fi#2\relax{\fi\fi\@firstoftwo}
+\newdimen\lst@currlwidth % \global
+\newcount\lst@column \newcount\lst@pos % \global
+\lst@AddToHook{InitVarsBOL}
+ {\global\lst@currlwidth\z@ \global\lst@pos\z@ \global\lst@column\z@}
+\def\lst@CalcColumn{%
+ \@tempcnta\lst@column
+ \advance\@tempcnta\lst@length
+ \advance\@tempcnta-\lst@pos}
+\newdimen\lst@lostspace % \global
+\lst@AddToHook{InitVarsBOL}{\global\lst@lostspace\z@}
+\def\lst@UseLostSpace{\ifdim\lst@lostspace>\z@ \lst@InsertLostSpace \fi}
+\def\lst@InsertLostSpace{%
+ \lst@Kern\lst@lostspace \global\lst@lostspace\z@}
+\def\lst@InsertHalfLostSpace{%
+ \global\lst@lostspace.5\lst@lostspace \lst@Kern\lst@lostspace}
+\newdimen\lst@width
+\lst@Key{basewidth}{0.6em,0.45em}{\lstKV@CSTwoArg{#1}%
+ {\def\lst@widthfixed{##1}\def\lst@widthflexible{##2}%
+ \ifx\lst@widthflexible\@empty
+ \let\lst@widthflexible\lst@widthfixed
+ \fi
+ \def\lst@temp{\PackageError{Listings}%
+ {Negative value(s) treated as zero}%
+ \@ehc}%
+ \let\lst@error\@empty
+ \ifdim \lst@widthfixed<\z@
+ \let\lst@error\lst@temp \let\lst@widthfixed\z@
+ \fi
+ \ifdim \lst@widthflexible<\z@
+ \let\lst@error\lst@temp \let\lst@widthflexible\z@
+ \fi
+ \lst@error}}
+\lst@AddToHook{FontAdjust}
+ {\lst@width=\lst@ifflexible\lst@widthflexible
+ \else\lst@widthfixed\fi \relax}
+\lst@Key{fontadjust}{false}[t]{\lstKV@SetIf{#1}\lst@iffontadjust}
+\def\lst@FontAdjust{\lst@iffontadjust \lsthk@FontAdjust \fi}
+\lst@AddToHook{InitVars}{\lsthk@FontAdjust}
+\def\lst@OutputBox#1{\lst@alloverstyle{\box#1}}
+\def\lst@alloverstyle#1{#1}% init
+\def\lst@Kern#1{%
+ \setbox\z@\hbox{{\lst@currstyle{\kern#1}}}%
+ \global\advance\lst@currlwidth \wd\z@
+ \lst@OutputBox\z@}
+\def\lst@CalcLostSpaceAndOutput{%
+ \global\advance\lst@lostspace \lst@length\lst@width
+ \global\advance\lst@lostspace-\wd\@tempboxa
+ \global\advance\lst@currlwidth \wd\@tempboxa
+ \global\advance\lst@pos -\lst@length
+ \setbox\@tempboxa\hbox{\let\lst@OutputBox\box
+ \ifdim\lst@lostspace>\z@ \lst@leftinsert \fi
+ \box\@tempboxa
+ \ifdim\lst@lostspace>\z@ \lst@rightinsert \fi}%
+ \lst@OutputBox\@tempboxa \lsthk@PostOutput}
+\lst@AddToHook{PostOutput}{}% init
+\def\lst@OutputToken{%
+ \lst@TrackNewLines \lst@OutputLostSpace
+ \lst@ifgobbledws
+ \lst@gobbledwhitespacefalse
+ \lst@@discretionary
+ \fi
+ \lst@CheckMerge
+ {\lst@thestyle{\lst@FontAdjust
+ \setbox\@tempboxa\lst@hbox
+ {\lsthk@OutputBox
+ \lst@lefthss
+ \expandafter\lst@FillOutputBox\the\lst@token\@empty
+ \lst@righthss}%
+ \lst@CalcLostSpaceAndOutput}}%
+ \lst@ResetToken}
+\lst@AddToHook{OutputBox}{}% init
+\def\lst@gobbledwhitespacetrue{\global\let\lst@ifgobbledws\iftrue}
+\def\lst@gobbledwhitespacefalse{\global\let\lst@ifgobbledws\iffalse}
+\lst@AddToHookExe{InitBOL}{\lst@gobbledwhitespacefalse}% init
+\def\lst@Delay#1{%
+ \lst@CheckDelay
+ #1%
+ \lst@GetOutputMacro\lst@delayedoutput
+ \edef\lst@delayed{\the\lst@token}%
+ \edef\lst@delayedlength{\the\lst@length}%
+ \lst@ResetToken}
+\def\lst@Merge#1{%
+ \lst@CheckMerge
+ #1%
+ \edef\lst@merged{\the\lst@token}%
+ \edef\lst@mergedlength{\the\lst@length}%
+ \lst@ResetToken}
+\def\lst@MergeToken#1#2{%
+ \advance\lst@length#2%
+ \lst@lExtend#1{\the\lst@token}%
+ \expandafter\lst@token\expandafter{#1}%
+ \let#1\@empty}
+\def\lst@CheckDelay{%
+ \ifx\lst@delayed\@empty\else
+ \lst@GetOutputMacro\@gtempa
+ \ifx\lst@delayedoutput\@gtempa
+ \lst@MergeToken\lst@delayed\lst@delayedlength
+ \else
+ {\lst@ResetToken
+ \lst@MergeToken\lst@delayed\lst@delayedlength
+ \lst@delayedoutput}%
+ \let\lst@delayed\@empty
+ \fi
+ \fi}
+\def\lst@CheckMerge{%
+ \ifx\lst@merged\@empty\else
+ \lst@MergeToken\lst@merged\lst@mergedlength
+ \fi}
+\let\lst@delayed\@empty % init
+\let\lst@merged\@empty % init
+\def\lst@column@fixed{%
+ \lst@flexiblefalse
+ \lst@width\lst@widthfixed\relax
+ \let\lst@OutputLostSpace\lst@UseLostSpace
+ \let\lst@FillOutputBox\lst@FillFixed
+ \let\lst@hss\hss
+ \def\lst@hbox{\hbox to\lst@length\lst@width}}
+\def\lst@FillFixed#1{#1\lst@FillFixed@}
+\def\lst@FillFixed@#1{%
+ \ifx\@empty#1\else \lst@hss#1\expandafter\lst@FillFixed@ \fi}
+\def\lst@column@flexible{%
+ \lst@flexibletrue
+ \lst@width\lst@widthflexible\relax
+ \let\lst@OutputLostSpace\lst@UseLostSpace
+ \let\lst@FillOutputBox\@empty
+ \let\lst@hss\@empty
+ \let\lst@hbox\hbox}
+\def\lst@column@fullflexible{%
+ \lst@column@flexible
+ \def\lst@OutputLostSpace{\lst@ifnewline \lst@UseLostSpace\fi}%
+ \let\lst@leftinsert\@empty
+ \let\lst@rightinsert\@empty}
+\def\lst@outputpos#1#2\relax{%
+ \def\lst@lefthss{\lst@hss}\let\lst@righthss\lst@lefthss
+ \let\lst@rightinsert\lst@InsertLostSpace
+ \ifx #1c%
+ \let\lst@leftinsert\lst@InsertHalfLostSpace
+ \else\ifx #1r%
+ \let\lst@righthss\@empty
+ \let\lst@leftinsert\lst@InsertLostSpace
+ \let\lst@rightinsert\@empty
+ \else
+ \let\lst@lefthss\@empty
+ \let\lst@leftinsert\@empty
+ \ifx #1l\else \PackageWarning{Listings}%
+ {Unknown positioning for output boxes}%
+ \fi
+ \fi\fi}
+\def\lst@flexibletrue{\let\lst@ifflexible\iftrue}
+\def\lst@flexiblefalse{\let\lst@ifflexible\iffalse}
+\lst@Key{columns}{[c]fixed}{\lstKV@OptArg[]{#1}{%
+ \ifx\@empty##1\@empty\else \lst@outputpos##1\relax\relax \fi
+ \expandafter\let\expandafter\lst@arg
+ \csname\@lst @column@##2\endcsname
+ \lst@arg
+ \ifx\lst@arg\relax
+ \PackageWarning{Listings}{Unknown column format `##2'}%
+ \else
+ \lst@ifflexible
+ \let\lst@columnsflexible\lst@arg
+ \else
+ \let\lst@columnsfixed\lst@arg
+ \fi
+ \fi}}
+\let\lst@columnsfixed\lst@column@fixed % init
+\let\lst@columnsflexible\lst@column@flexible % init
+\lst@Key{flexiblecolumns}\relax[t]{%
+ \lstKV@SetIf{#1}\lst@ifflexible
+ \lst@ifflexible \lst@columnsflexible
+ \else \lst@columnsfixed \fi}
+\newcount\lst@newlines
+\lst@AddToHook{InitVars}{\global\lst@newlines\z@}
+\lst@AddToHook{InitVarsBOL}{\global\advance\lst@newlines\@ne}
+\def\lst@NewLine{%
+ \ifx\lst@OutputBox\@gobble\else
+ \par\noindent \hbox{}%
+ \fi
+ \global\advance\lst@newlines\m@ne
+ \lst@newlinetrue}
+\def\lst@newlinetrue{\global\let\lst@ifnewline\iftrue}
+\lst@AddToHookExe{PostOutput}{\global\let\lst@ifnewline\iffalse}% init
+\def\lst@TrackNewLines{%
+ \ifnum\lst@newlines>\z@
+ \lsthk@OnNewLine
+ \lst@DoNewLines
+ \fi}
+\lst@AddToHook{OnNewLine}{}% init
+\lst@Key{emptylines}\maxdimen{%
+ \@ifstar{\lst@true\@tempcnta\@gobble#1\relax\lst@GobbleNil}%
+ {\lst@false\@tempcnta#1\relax\lst@GobbleNil}#1\@nil
+ \advance\@tempcnta\@ne
+ \edef\lst@maxempty{\the\@tempcnta\relax}%
+ \let\lst@ifpreservenumber\lst@if}
+\def\lst@DoNewLines{
+ \@whilenum\lst@newlines>\lst@maxempty \do
+ {\lst@ifpreservenumber
+ \lsthk@OnEmptyLine
+ \global\advance\c@lstnumber\lst@advancelstnum
+ \fi
+ \global\advance\lst@newlines\m@ne}%
+ \@whilenum \lst@newlines>\@ne \do
+ {\lsthk@OnEmptyLine \lst@NewLine}%
+ \ifnum\lst@newlines>\z@ \lst@NewLine \fi}
+\lst@AddToHook{OnEmptyLine}{}% init
+\lst@Key{identifierstyle}{}{\def\lst@identifierstyle{#1}}
+\lst@AddToHook{EmptyStyle}{\let\lst@identifierstyle\@empty}
+\def\lst@GotoTabStop{%
+ \ifnum\lst@newlines=\z@
+ \setbox\@tempboxa\hbox{\lst@outputspace}%
+ \setbox\@tempboxa\hbox to\wd\@tempboxa{{\lst@currstyle{\hss}}}%
+ \lst@CalcLostSpaceAndOutput
+ \else
+ \global\advance\lst@lostspace \lst@length\lst@width
+ \global\advance\lst@column\lst@length \lst@length\z@
+ \fi}
+\def\lst@OutputOther{%
+ \lst@CheckDelay
+ \ifnum\lst@length=\z@\else
+ \let\lst@thestyle\lst@currstyle
+ \lsthk@OutputOther
+ \lst@OutputToken
+ \fi}
+\lst@AddToHook{OutputOther}{}% init
+\let\lst@currstyle\relax % init
+\def\lst@Output{%
+ \lst@CheckDelay
+ \ifnum\lst@length=\z@\else
+ \ifx\lst@currstyle\relax
+ \let\lst@thestyle\lst@identifierstyle
+ \else
+ \let\lst@thestyle\lst@currstyle
+ \fi
+ \lsthk@Output
+ \lst@OutputToken
+ \fi
+ \let\lst@lastother\relax}
+\lst@AddToHook{Output}{}% init
+\def\lst@GetOutputMacro#1{%
+ \lst@ifletter \global\let#1\lst@Output
+ \else \global\let#1\lst@OutputOther\fi}
+\def\lst@PrintToken{%
+ \lst@ifletter \lst@Output \lst@letterfalse
+ \else \lst@OutputOther \let\lst@lastother\@empty \fi}
+\def\lst@XPrintToken{%
+ \lst@PrintToken \lst@CheckMerge
+ \ifnum\lst@length=\z@\else \lst@PrintToken \fi}
+\def\lst@BeginDropOutput#1{%
+ \xdef\lst@BDOnewlines{\the\lst@newlines}%
+ \global\let\lst@BDOifnewline\lst@ifnewline
+ \lst@EnterMode{#1}%
+ {\lst@modetrue
+ \let\lst@OutputBox\@gobble
+ \aftergroup\lst@BDORestore}}
+\def\lst@BDORestore{%
+ \global\lst@newlines\lst@BDOnewlines
+ \global\let\lst@ifnewline\lst@BDOifnewline}
+\let\lst@EndDropOutput\lst@LeaveMode
+\def\lst@ProcessLetter{\lst@whitespacefalse \lst@AppendLetter}
+\def\lst@ProcessOther{\lst@whitespacefalse \lst@AppendOther}
+\def\lst@ProcessDigit{%
+ \lst@whitespacefalse
+ \lst@ifletter \expandafter\lst@AppendLetter
+ \else \expandafter\lst@AppendOther\fi}
+\def\lst@whitespacetrue{\global\let\lst@ifwhitespace\iftrue}
+\def\lst@whitespacefalse{\global\let\lst@ifwhitespace\iffalse}
+\lst@AddToHook{InitVarsBOL}{\lst@whitespacetrue}
+\lst@Key{tabsize}{8}
+ {\ifnum#1>\z@ \def\lst@tabsize{#1}\else
+ \PackageError{Listings}{Strict positive integer expected}%
+ {You can't use `#1' as tabsize. \@ehc}%
+ \fi}
+\lst@Key{showtabs}f[t]{\lstKV@SetIf{#1}\lst@ifshowtabs}
+\lst@Key{tab}{\kern.06em\hbox{\vrule\@height.3ex}%
+ \hrulefill\hbox{\vrule\@height.3ex}}
+ {\def\lst@tab{#1}}
+\def\lst@ProcessTabulator{%
+ \lst@XPrintToken \lst@whitespacetrue
+ \global\advance\lst@column -\lst@pos
+ \@whilenum \lst@pos<\@ne \do
+ {\global\advance\lst@pos\lst@tabsize}%
+ \lst@length\lst@pos
+ \lst@PreGotoTabStop}
+\def\lst@PreGotoTabStop{%
+ \lst@ifshowtabs
+ \lst@TrackNewLines
+ \setbox\@tempboxa\hbox to\lst@length\lst@width
+ {{\lst@currstyle{\hss\lst@tab}}}%
+ \lst@CalcLostSpaceAndOutput
+ \else
+ \lst@ifkeepspaces
+ \@tempcnta\lst@length \lst@length\z@
+ \@whilenum \@tempcnta>\z@ \do
+ {\lst@AppendOther\lst@outputspace
+ \advance\@tempcnta\m@ne}%
+ \lst@OutputOther
+ \else
+ \lst@GotoTabStop
+ \fi
+ \fi
+ \lst@length\z@ \global\lst@pos\z@}
+\def\lst@outputspace{\ }
+\def\lst@visiblespace{\lst@ttfamily{\char32}\textvisiblespace}
+\lst@Key{showspaces}{false}[t]{\lstKV@SetIf{#1}\lst@ifshowspaces}
+\lst@Key{keepspaces}{false}[t]{\lstKV@SetIf{#1}\lst@ifkeepspaces}
+\lst@AddToHook{Init}
+ {\lst@ifshowspaces
+ \let\lst@outputspace\lst@visiblespace
+ \lst@keepspacestrue
+ \fi}
+\def\lst@keepspacestrue{\let\lst@ifkeepspaces\iftrue}
+\def\lst@ProcessSpace{%
+ \lst@ifkeepspaces
+ \lst@whitespacetrue
+ \lst@PrintToken
+ \lst@AppendOther\lst@outputspace
+ \lst@PrintToken
+ \else \ifnum\lst@newlines=\z@
+ \lst@AppendSpecialSpace
+ \else \ifnum\lst@length=\z@
+ \global\advance\lst@lostspace\lst@width
+ \global\advance\lst@pos\m@ne
+ \lst@whitespacetrue
+ \else
+ \lst@AppendSpecialSpace
+ \fi
+ \fi \fi}
+\def\lst@AppendSpecialSpace{%
+ \lst@ifwhitespace
+ \lst@PrintToken
+ \global\advance\lst@lostspace\lst@width
+ \global\advance\lst@pos\m@ne
+ \lst@gobbledwhitespacetrue
+ \else
+ \lst@whitespacetrue
+ \lst@PrintToken
+ \lst@AppendOther\lst@outputspace
+ \lst@PrintToken
+ \fi}
+\lst@Key{formfeed}{\bigbreak}{\def\lst@formfeed{#1}}
+\def\lst@ProcessFormFeed{%
+ \lst@XPrintToken
+ \ifnum\lst@newlines=\z@
+ \lst@EOLUpdate \lsthk@InitVarsBOL
+ \fi
+ \lst@formfeed
+ \lst@whitespacetrue}
+\def\lst@Def#1{\lccode`\~=#1\lowercase{\def~}}
+\def\lst@Let#1{\lccode`\~=#1\lowercase{\let~}}
+\lst@AddToAtTop{\try@load@fontshape}{\def\space{ }}
+\def\lst@SelectStdCharTable{%
+ \lst@Def{9}{\lst@ProcessTabulator}%
+ \lst@Def{12}{\lst@ProcessFormFeed}%
+ \lst@Def{32}{\lst@ProcessSpace}}
+\def\lst@CCPut#1#2{%
+ \ifnum#2=\z@
+ \expandafter\@gobbletwo
+ \else
+ \lccode`\~=#2\lccode`\/=#2\lowercase{\lst@CCPut@~{#1/}}%
+ \fi
+ \lst@CCPut#1}
+\def\lst@CCPut@#1#2{\lst@lAddTo\lst@SelectStdCharTable{\def#1{#2}}}
+\lst@CCPut \lst@ProcessOther
+ {"21}{"22}{"28}{"29}{"2B}{"2C}{"2E}{"2F}
+ {"3A}{"3B}{"3D}{"3F}{"5B}{"5D}
+ \z@
+\lst@CCPut \lst@ProcessDigit
+ {"30}{"31}{"32}{"33}{"34}{"35}{"36}{"37}{"38}{"39}
+ \z@
+\lst@CCPut \lst@ProcessLetter
+ {"40}{"41}{"42}{"43}{"44}{"45}{"46}{"47}
+ {"48}{"49}{"4A}{"4B}{"4C}{"4D}{"4E}{"4F}
+ {"50}{"51}{"52}{"53}{"54}{"55}{"56}{"57}
+ {"58}{"59}{"5A}
+ {"61}{"62}{"63}{"64}{"65}{"66}{"67}
+ {"68}{"69}{"6A}{"6B}{"6C}{"6D}{"6E}{"6F}
+ {"70}{"71}{"72}{"73}{"74}{"75}{"76}{"77}
+ {"78}{"79}{"7A}
+ \z@
+\def\lst@CCPutMacro#1#2#3{%
+ \ifnum#2=\z@ \else
+ \begingroup\lccode`\~=#2\relax \lccode`\/=#2\relax
+ \lowercase{\endgroup\expandafter\lst@CCPutMacro@
+ \csname\@lst @um/\expandafter\endcsname
+ \csname\@lst @um/@\endcsname /~}#1{#3}%
+ \expandafter\lst@CCPutMacro
+ \fi}
+\def\lst@CCPutMacro@#1#2#3#4#5#6{%
+ \lst@lAddTo\lst@SelectStdCharTable{\def#4{#5#1}}%
+ \def#1{\lst@UM#3}%
+ \def#2{#6}}
+\def\lst@UM#1{\csname\@lst @um#1@\endcsname}
+\lst@CCPutMacro
+ \lst@ProcessOther {"23}\#
+ \lst@ProcessLetter{"24}\textdollar
+ \lst@ProcessOther {"25}\%
+ \lst@ProcessOther {"26}\&
+ \lst@ProcessOther {"27}{\lst@ifupquote \textquotesingle
+ \else \char39\relax \fi}
+ \lst@ProcessOther {"2A}{\lst@ttfamily*\textasteriskcentered}
+ \lst@ProcessOther {"2D}{\lst@ttfamily{-{}}{$-$}}
+ \lst@ProcessOther {"3C}{\lst@ttfamily<\textless}
+ \lst@ProcessOther {"3E}{\lst@ttfamily>\textgreater}
+ \lst@ProcessOther {"5C}{\lst@ttfamily{\char92}\textbackslash}
+ \lst@ProcessOther {"5E}\textasciicircum
+ \lst@ProcessLetter{"5F}{\lst@ttfamily{\char95}\textunderscore}
+ \lst@ProcessOther {"60}{\lst@ifupquote \textasciigrave
+ \else \char96\relax \fi}
+ \lst@ProcessOther {"7B}{\lst@ttfamily{\char123}\textbraceleft}
+ \lst@ProcessOther {"7C}{\lst@ttfamily|\textbar}
+ \lst@ProcessOther {"7D}{\lst@ttfamily{\char125}\textbraceright}
+ \lst@ProcessOther {"7E}\textasciitilde
+ \lst@ProcessOther {"7F}-
+ \@empty\z@\@empty
+\def\lst@ttfamily#1#2{\ifx\f@family\ttdefault#1\relax\else#2\fi}
+\lst@AddToHook{Init}{\edef\ttdefault{\ttdefault}}
+\lst@Key{upquote}{false}[t]{\lstKV@SetIf{#1}\lst@ifupquote
+ \lst@ifupquote
+ \@ifundefined{textasciigrave}%
+ {\let\KV@lst@upquote\@gobble
+ \lstKV@SetIf f\lst@ifupquote \@gobble\fi
+ \PackageError{Listings}{Option `upquote' requires `textcomp'
+ package.\MessageBreak The option has been disabled}%
+ {Add \string\usepackage{textcomp} to your preamble.}}%
+ {}%
+ \fi}
+\AtBeginDocument{%
+ \@ifpackageloaded{upquote}{\RequirePackage{textcomp}%
+ \lstset{upquote}}{}%
+ \@ifpackageloaded{upquote2}{\lstset{upquote}}{}}
+\def\lst@activecharstrue{\let\lst@ifactivechars\iftrue}
+\def\lst@activecharsfalse{\let\lst@ifactivechars\iffalse}
+\lst@activecharstrue
+\def\lst@SelectCharTable{%
+ \lst@SelectStdCharTable
+ \lst@ifactivechars
+ \catcode9\active \catcode12\active \catcode13\active
+ \@tempcnta=32\relax
+ \@whilenum\@tempcnta<128\do
+ {\catcode\@tempcnta\active\advance\@tempcnta\@ne}%
+ \fi
+ \lst@ifec \lst@DefEC \fi
+ \let\do\lst@do@noligs \verbatim@nolig@list
+ \lsthk@SelectCharTable
+ \lst@DeveloperSCT
+\lst@DefRange
+ \ifx\lst@Backslash\relax\else
+ \lst@LetSaveDef{"5C}\lsts@backslash\lst@Backslash
+ \fi}
+\lst@Key{SelectCharTable}{}{\def\lst@DeveloperSCT{#1}}
+\lst@Key{MoreSelectCharTable}\relax{\lst@lAddTo\lst@DeveloperSCT{#1}}
+\lst@AddToHook{SetLanguage}{\let\lst@DeveloperSCT\@empty}
+\def\lst@do@noligs#1{%
+ \begingroup \lccode`\~=`#1\lowercase{\endgroup
+ \lst@do@noligs@~}}
+\def\lst@do@noligs@#1{%
+ \expandafter\expandafter\expandafter\def
+ \expandafter\expandafter\expandafter#1%
+ \expandafter\expandafter\expandafter{\expandafter\lst@NoLig#1}}
+\def\lst@NoLig{\advance\lst@length\m@ne \lst@Append\lst@nolig}
+\def\lst@nolig{\lst@UM\@empty}%
+\@namedef{\@lst @um@}{\leavevmode\kern\z@}
+\def\lst@SaveOutputDef#1#2{%
+ \begingroup \lccode`\~=#1\relax \lowercase{\endgroup
+ \def\lst@temp##1\def~##2##3\relax}{%
+ \global\expandafter\let\expandafter#2\@gobble##2\relax}%
+ \expandafter\lst@temp\lst@SelectStdCharTable\relax}
+\lst@SaveOutputDef{"5C}\lstum@backslash
+\lst@Key{extendedchars}{true}[t]{\lstKV@SetIf{#1}\lst@ifec}
+\def\lst@DefEC{%
+ \lst@CCECUse \lst@ProcessLetter
+ ^^80^^81^^82^^83^^84^^85^^86^^87^^88^^89^^8a^^8b^^8c^^8d^^8e^^8f%
+ ^^90^^91^^92^^93^^94^^95^^96^^97^^98^^99^^9a^^9b^^9c^^9d^^9e^^9f%
+ ^^a0^^a1^^a2^^a3^^a4^^a5^^a6^^a7^^a8^^a9^^aa^^ab^^ac^^ad^^ae^^af%
+ ^^b0^^b1^^b2^^b3^^b4^^b5^^b6^^b7^^b8^^b9^^ba^^bb^^bc^^bd^^be^^bf%
+ ^^c0^^c1^^c2^^c3^^c4^^c5^^c6^^c7^^c8^^c9^^ca^^cb^^cc^^cd^^ce^^cf%
+ ^^d0^^d1^^d2^^d3^^d4^^d5^^d6^^d7^^d8^^d9^^da^^db^^dc^^dd^^de^^df%
+ ^^e0^^e1^^e2^^e3^^e4^^e5^^e6^^e7^^e8^^e9^^ea^^eb^^ec^^ed^^ee^^ef%
+ ^^f0^^f1^^f2^^f3^^f4^^f5^^f6^^f7^^f8^^f9^^fa^^fb^^fc^^fd^^fe^^ff%
+ ^^00}
+\def\lst@CCECUse#1#2{%
+ \ifnum`#2=\z@
+ \expandafter\@gobbletwo
+ \else
+ \ifnum\catcode`#2=\active
+ \lccode`\~=`#2\lccode`\/=`#2\lowercase{\lst@CCECUse@#1~/}%
+ \else
+ \lst@ifactivechars \catcode`#2=\active \fi
+ \lccode`\~=`#2\lccode`\/=`#2\lowercase{\def~{#1/}}%
+ \fi
+ \fi
+ \lst@CCECUse#1}
+\def\lst@CCECUse@#1#2#3{%
+ \expandafter\def\csname\@lst @EC#3\endcsname{\lst@UM#3}%
+ \expandafter\let\csname\@lst @um#3@\endcsname #2%
+ \edef#2{\noexpand#1%
+ \expandafter\noexpand\csname\@lst @EC#3\endcsname}}
+\lst@AddToHook{Init}
+ {\let\lsts@nfss@catcodes\nfss@catcodes
+ \let\nfss@catcodes\lst@nfss@catcodes}
+\def\lst@nfss@catcodes{%
+ \lst@makeletter
+ ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\relax
+ \@makeother (\@makeother )\@makeother ,\@makeother :\@makeother\&%
+ \@makeother 0\@makeother 1\@makeother 2\@makeother 3\@makeother 4%
+ \@makeother 5\@makeother 6\@makeother 7\@makeother 8\@makeother 9%
+ \@makeother =\lsts@nfss@catcodes}
+\def\lst@makeletter#1{%
+ \ifx\relax#1\else\catcode`#111\relax \expandafter\lst@makeletter\fi}
+\lst@Key{useoutput}{2}{\edef\lst@useoutput{\ifcase#10 0\or 1\else 2\fi}}
+\lst@AddToHook{Init}
+{\edef\lst@OrgOutput{\the\output}%
+\ifcase\lst@useoutput\relax
+\or
+ \output{\global\setbox\lst@gtempboxa\box\@cclv
+ \expandafter\egroup
+ \lst@SaveToken
+ \lst@InterruptModes
+ \setbox\@cclv\box\lst@gtempboxa
+ \bgroup\lst@OrgOutput\egroup
+ \bgroup
+ \aftergroup\pagegoal\aftergroup\vsize
+ \aftergroup\lst@ReenterModes\aftergroup\lst@RestoreToken}%
+\else
+ \output{\lst@RestoreOrigCatcodes
+ \lst@ifec \lst@RestoreOrigExtendedCatcodes \fi
+ \lst@OrgOutput}%
+\fi}
+\def\lst@GetChars#1#2#3{%
+ \let#1\@empty
+ \@tempcnta#2\relax \@tempcntb#3\relax
+ \loop \ifnum\@tempcnta<\@tempcntb\relax
+ \lst@lExtend#1{\expandafter\catcode\the\@tempcnta=}%
+ \lst@lExtend#1{\the\catcode\@tempcnta\relax}%
+ \ifnum\the\catcode\@tempcnta=\active
+ \begingroup\lccode`\~=\@tempcnta
+ \lowercase{\endgroup
+ \lst@lExtend#1{\expandafter\let\expandafter~\csname
+ lstecs@\the\@tempcnta\endcsname}%
+ \expandafter\let\csname lstecs@\the\@tempcnta\endcsname~}%
+ \fi
+ \advance\@tempcnta\@ne
+ \repeat}
+\def\lst@ScanChars{%
+ \lst@GetChars\lst@RestoreOrigCatcodes\@ne {128}%
+ \lst@GetChars\lst@RestoreOrigExtendedCatcodes{128}{256}}
+\lst@Key{rescanchars}\relax{\lst@ScanChars}
+\AtBeginDocument{\lst@ScanChars}
+\lst@Key{alsoletter}\relax{%
+ \lst@DoAlso{#1}\lst@alsoletter\lst@ProcessLetter}
+\lst@Key{alsodigit}\relax{%
+ \lst@DoAlso{#1}\lst@alsodigit\lst@ProcessDigit}
+\lst@Key{alsoother}\relax{%
+ \lst@DoAlso{#1}\lst@alsoother\lst@ProcessOther}
+\lst@AddToHook{SelectCharTable}
+ {\lst@alsoother \lst@alsodigit \lst@alsoletter}
+\lst@AddToHookExe{SetLanguage}% init
+ {\let\lst@alsoletter\@empty
+ \let\lst@alsodigit\@empty
+ \let\lst@alsoother\@empty}
+\def\lst@DoAlso#1#2#3{%
+ \lst@DefOther\lst@arg{#1}\let#2\@empty
+ \expandafter\lst@DoAlso@\expandafter#2\expandafter#3\lst@arg\relax}
+\def\lst@DoAlso@#1#2#3{%
+ \ifx\relax#3\expandafter\@gobblethree \else
+ \begingroup \lccode`\~=`#3\relax \lowercase{\endgroup
+ \def\lst@temp##1\def~##2##3\relax{%
+ \edef\lst@arg{\def\noexpand~{\noexpand#2\expandafter
+ \noexpand\@gobble##2}}}}%
+ \expandafter\lst@temp\lst@SelectStdCharTable\relax
+ \lst@lExtend#1{\lst@arg}%
+ \fi
+ \lst@DoAlso@#1#2}
+\def\lst@SaveDef#1#2{%
+ \begingroup \lccode`\~=#1\relax \lowercase{\endgroup\let#2~}}
+\def\lst@DefSaveDef#1#2{%
+ \begingroup \lccode`\~=#1\relax \lowercase{\endgroup\let#2~\def~}}
+\def\lst@LetSaveDef#1#2{%
+ \begingroup \lccode`\~=#1\relax \lowercase{\endgroup\let#2~\let~}}
+\def\lst@CDef#1{\lst@CDef@#1}
+\def\lst@CDef@#1#2#3#4{\lst@CDefIt#1{#2}{#3}{#4#2#3}#4}
+\def\lst@CDefX#1{\lst@CDefX@#1}
+\def\lst@CDefX@#1#2#3{\lst@CDefIt#1{#2}{#3}{}}
+\def\lst@CDefIt#1#2#3#4#5#6#7#8{%
+ \ifx\@empty#2\@empty
+ \def#1{#6\def\lst@next{#7#4#8}\lst@next}%
+ \else \ifx\@empty#3\@empty
+ \def#1##1{%
+ #6%
+ \ifx##1#2\def\lst@next{#7#4#8}\else
+ \def\lst@next{#5##1}\fi
+ \lst@next}%
+ \else
+ \def#1{%
+ #6%
+ \lst@IfNextCharsArg{#2#3}{#7#4#8}%
+ {\expandafter#5\lst@eaten}}%
+ \fi \fi}
+\def\lst@CArgX#1#2\relax{%
+ \lst@DefActive\lst@arg{#1#2}%
+ \expandafter\lst@CArg\lst@arg\relax}
+\def\lst@CArg#1#2\relax{%
+ \lccode`\/=`#1\lowercase{\def\lst@temp{/}}%
+ \lst@GetFreeMacro{lst@c\lst@temp}%
+ \expandafter\lst@CArg@\lst@freemacro#1#2\@empty\@empty\relax}
+\def\lst@CArg@#1#2#3#4\@empty#5\relax#6{%
+ \let#1#2%
+ \ifx\@empty#3\@empty
+ \def\lst@next{#6{#2{}{}}}%
+ \else
+ \def\lst@next{#6{#2#3{#4}}}%
+ \fi
+ \lst@next #1}
+\def\lst@CArgEmpty#1\@empty{#1}
+\lst@Key{excludedelims}\relax
+ {\lsthk@ExcludeDelims \lst@NormedDef\lst@temp{#1}%
+ \expandafter\lst@for\lst@temp\do
+ {\expandafter\let\csname\@lst @ifex##1\endcsname\iftrue}}
+\def\lst@DelimPrint#1#2{%
+ #1%
+ \begingroup
+ \lst@mode\lst@nomode \lst@modetrue
+ #2\lst@XPrintToken
+ \endgroup
+ \lst@ResetToken
+ \fi}
+\def\lst@DelimOpen#1#2#3#4#5#6\@empty{%
+ \lst@TrackNewLines \lst@XPrintToken
+ \lst@DelimPrint#1{#6}%
+ \lst@EnterMode{#4}{\def\lst@currstyle#5}%
+ \lst@DelimPrint{#1#2}{#6}%
+ #3}
+\def\lst@DelimClose#1#2#3\@empty{%
+ \lst@TrackNewLines \lst@XPrintToken
+ \lst@DelimPrint{#1#2}{#3}%
+ \lst@LeaveMode
+ \lst@DelimPrint{#1}{#3}}
+\def\lst@BeginDelim{\lst@DelimOpen\iffalse\else{}}
+\def\lst@EndDelim{\lst@DelimClose\iffalse\else}
+\def\lst@BeginIDelim{\lst@DelimOpen\iffalse{}{}}
+\def\lst@EndIDelim{\lst@DelimClose\iffalse{}}
+\lst@AddToHook{SelectCharTable}{\lst@DefDelims}
+\lst@AddToHookExe{SetLanguage}{\let\lst@DefDelims\@empty}
+\def\lst@Delim#1{%
+ \lst@false \let\lst@cumulative\@empty \let\lst@arg\@empty
+ \@ifstar{\@ifstar{\lst@Delim@{#1}}%
+ {\let\lst@cumulative\relax
+ \lst@Delim@{#1}}}%
+ {\lst@true\lst@Delim@{#1}}}
+\def\lst@Delim@#1[#2]{%
+ \gdef\lst@delimtype{#2}%
+ \@ifnextchar[\lst@Delim@sty
+ {\lst@Delim@sty[#1]}}
+\def\lst@Delim@sty[#1]{%
+ \def\lst@delimstyle{#1}%
+ \ifx\@empty#1\@empty\else
+ \lst@Delim@sty@ #1\@nil
+ \fi
+ \@ifnextchar[\lst@Delim@option
+ \lst@Delim@delim}
+\def\lst@Delim@option[#1]{\def\lst@arg{[#1]}\lst@Delim@delim}
+\def\lst@Delim@sty@#1#2\@nil{%
+ \if\relax\noexpand#1\else
+ \edef\lst@delimstyle{\expandafter\noexpand
+ \csname\@lst @\lst@delimstyle\endcsname}%
+ \fi}
+\def\lst@Delim@delim#1\relax#2#3#4#5#6#7#8{%
+ \ifx #4\@empty \lst@Delim@delall{#2}\fi
+ \ifx\@empty#1\@empty
+ \ifx #4\@nil
+ \@ifundefined{\@lst @#2DM@\lst@delimtype}%
+ {\lst@Delim@delall{#2@\lst@delimtype}}%
+ {\lst@Delim@delall{#2DM@\lst@delimtype}}%
+ \fi
+ \else
+ \expandafter\lst@Delim@args\expandafter
+ {\lst@delimtype}{#1}{#5}#6{#7}{#8}#4%
+ \let\lst@delim\@empty
+ \expandafter\lst@IfOneOf\lst@delimtype\relax#3%
+ {\@ifundefined{\@lst @#2DM@\lst@delimtype}%
+ {\lst@lExtend\lst@delim{\csname\@lst @#2@\lst@delimtype
+ \expandafter\endcsname\lst@arg}}%
+ {\lst@lExtend\lst@delim{\expandafter\lst@UseDynamicMode
+ \csname\@lst @#2DM@\lst@delimtype
+ \expandafter\endcsname\lst@arg}}%
+ \ifx #4\@nil
+ \let\lst@temp\lst@DefDelims \let\lst@DefDelims\@empty
+ \expandafter\lst@Delim@del\lst@temp\@empty\@nil\@nil\@nil
+ \else
+ \lst@lExtend\lst@DefDelims\lst@delim
+ \fi}%
+ {\PackageError{Listings}{Illegal type `\lst@delimtype'}%
+ {#2 types are #3.}}%
+ \fi}
+\def\lst@Delim@args#1#2#3#4#5#6#7{%
+ \begingroup
+ \lst@false \let\lst@next\lst@XConvert
+ \@ifnextchar #4{\xdef\lst@delimtype{\expandafter\@gobble
+ \lst@delimtype}%
+ #5\lst@next#2\@nil
+ \lst@lAddTo\lst@arg{\@empty#6}%
+ \lst@GobbleNil}%
+ {\lst@next#2\@nil
+ \lst@lAddTo\lst@arg{\@empty#3}%
+ \lst@GobbleNil}%
+ #1\@nil
+ \global\let\@gtempa\lst@arg
+ \endgroup
+ \let\lst@arg\@gtempa
+ \ifx #7\@nil\else
+ \expandafter\lst@Delim@args@\expandafter{\lst@delimstyle}%
+ \fi}
+\def\lst@Delim@args@#1{%
+ \lst@if
+ \lst@lAddTo\lst@arg{{{#1}\lst@modetrue}}%
+ \else
+ \ifx\lst@cumulative\@empty
+ \lst@lAddTo\lst@arg{{{}#1}}%
+ \else
+ \lst@lAddTo\lst@arg{{{#1}}}%
+ \fi
+ \fi}
+\def\lst@Delim@del#1\@empty#2#3#4{%
+ \ifx #2\@nil\else
+ \def\lst@temp{#1\@empty#2#3}%
+ \ifx\lst@temp\lst@delim\else
+ \lst@lAddTo\lst@DefDelims{#1\@empty#2#3{#4}}%
+ \fi
+ \expandafter\lst@Delim@del
+ \fi}
+\def\lst@Delim@delall#1{%
+ \begingroup
+ \edef\lst@delim{\expandafter\string\csname\@lst @#1\endcsname}%
+ \lst@false \global\let\@gtempa\@empty
+ \expandafter\lst@Delim@delall@\lst@DefDelims\@empty
+ \endgroup
+ \let\lst@DefDelims\@gtempa}
+\def\lst@Delim@delall@#1{%
+ \ifx #1\@empty\else
+ \ifx #1\lst@UseDynamicMode
+ \lst@true
+ \let\lst@next\lst@Delim@delall@do
+ \else
+ \def\lst@next{\lst@Delim@delall@do#1}%
+ \fi
+ \expandafter\lst@next
+ \fi}
+\def\lst@Delim@delall@do#1#2\@empty#3#4#5{%
+ \expandafter\lst@IfSubstring\expandafter{\lst@delim}{\string#1}%
+ {}%
+ {\lst@if \lst@AddTo\@gtempa\lst@UseDynamicMode \fi
+ \lst@AddTo\@gtempa{#1#2\@empty#3#4{#5}}}%
+ \lst@false \lst@Delim@delall@}
+\gdef\lst@DefDelimB#1#2#3#4#5#6#7#8{%
+ \lst@CDef{#1}#2%
+ {#3}%
+ {\let\lst@bnext\lst@CArgEmpty
+ \lst@ifmode #4\else
+ #5%
+ \def\lst@bnext{#6{#7}{#8}}%
+ \fi
+ \lst@bnext}%
+ \@empty}
+\gdef\lst@DefDelimE#1#2#3#4#5#6#7{%
+ \lst@CDef{#1}#2%
+ {#3}%
+ {\let\lst@enext\lst@CArgEmpty
+ \ifnum #7=\lst@mode%
+ #4%
+ \let\lst@enext#6%
+ \else
+ #5%
+ \fi
+ \lst@enext}%
+ \@empty}
+\lst@AddToHook{Init}{\let\lst@bnext\relax \let\lst@enext\relax}
+\gdef\lst@DefDelimBE#1#2#3#4#5#6#7#8#9{%
+ \lst@CDef{#1}#2%
+ {#3}%
+ {\let\lst@bnext\lst@CArgEmpty
+ \ifnum #7=\lst@mode
+ #4%
+ \let\lst@bnext#9%
+ \else
+ \lst@ifmode\else
+ #5%
+ \def\lst@bnext{#6{#7}{#8}}%
+ \fi
+ \fi
+ \lst@bnext}%
+ \@empty}
+\gdef\lst@delimtypes{s,l}
+\gdef\lst@DelimKey#1#2{%
+ \lst@Delim{}#2\relax
+ {Delim}\lst@delimtypes #1%
+ {\lst@BeginDelim\lst@EndDelim}
+ i\@empty{\lst@BeginIDelim\lst@EndIDelim}}
+\lst@Key{delim}\relax{\lst@DelimKey\@empty{#1}}
+\lst@Key{moredelim}\relax{\lst@DelimKey\relax{#1}}
+\lst@Key{deletedelim}\relax{\lst@DelimKey\@nil{#1}}
+\gdef\lst@DelimDM@l#1#2\@empty#3#4#5{%
+ \lst@CArg #2\relax\lst@DefDelimB{}{}{}#3{#1}{#5\lst@Lmodetrue}}
+\gdef\lst@DelimDM@s#1#2#3\@empty#4#5#6{%
+ \lst@CArg #2\relax\lst@DefDelimB{}{}{}#4{#1}{#6}%
+ \lst@CArg #3\relax\lst@DefDelimE{}{}{}#5{#1}}
+\def\lst@ReplaceInput#1{\lst@CArgX #1\relax\lst@CDefX{}{}}
+\def\lst@Literatekey#1\@nil@{\let\lst@ifxliterate\lst@if
+ \def\lst@literate{#1}}
+\lst@Key{literate}{}{\@ifstar{\lst@true \lst@Literatekey}
+ {\lst@false\lst@Literatekey}#1\@nil@}
+\lst@AddToHook{SelectCharTable}
+ {\ifx\lst@literate\@empty\else
+ \expandafter\lst@Literate\lst@literate{}\relax\z@
+ \fi}
+\def\lst@Literate#1#2#3{%
+ \ifx\relax#2\@empty\else
+ \lst@CArgX #1\relax\lst@CDef
+ {}
+ {\let\lst@next\@empty
+ \lst@ifxliterate
+ \lst@ifmode \let\lst@next\lst@CArgEmpty \fi
+ \fi
+ \ifx\lst@next\@empty
+ \ifx\lst@OutputBox\@gobble\else
+ \lst@XPrintToken \let\lst@scanmode\lst@scan@m
+ \lst@token{#2}\lst@length#3\relax
+ \lst@XPrintToken
+ \fi
+ \let\lst@next\lst@CArgEmptyGobble
+ \fi
+ \lst@next}%
+ \@empty
+ \expandafter\lst@Literate
+ \fi}
+\def\lst@CArgEmptyGobble#1\@empty{}
+\def\lst@BeginDropInput#1{%
+ \lst@EnterMode{#1}%
+ {\lst@modetrue
+ \let\lst@OutputBox\@gobble
+ \let\lst@ifdropinput\iftrue
+ \let\lst@ProcessLetter\@gobble
+ \let\lst@ProcessDigit\@gobble
+ \let\lst@ProcessOther\@gobble
+ \let\lst@ProcessSpace\@empty
+ \let\lst@ProcessTabulator\@empty
+ \let\lst@ProcessFormFeed\@empty}}
+\let\lst@ifdropinput\iffalse % init
+\lst@Key{basicstyle}\relax{\def\lst@basicstyle{#1}}
+\lst@Key{inputencoding}\relax{\def\lst@inputenc{#1}}
+\lst@AddToHook{Init}
+ {\lst@basicstyle
+ \ifx\lst@inputenc\@empty\else
+ \@ifundefined{inputencoding}{}%
+ {\inputencoding\lst@inputenc}%
+ \fi}
+\lst@AddToHookExe{EmptyStyle}
+ {\let\lst@basicstyle\@empty
+ \let\lst@inputenc\@empty}
+\def\lst@parshape{\parshape\@ne \z@ \linewidth}
+\lst@AddToHookAtTop{EveryLine}{\lst@parshape}
+\lst@AddToHookAtTop{EndGroup}{\lst@parshape}
+\newcount\lst@lineno % \global
+\lst@AddToHook{InitVars}{\global\lst@lineno\@ne}
+\lst@Key{print}{true}[t]{\lstKV@SetIf{#1}\lst@ifprint}
+\lst@Key{firstline}\relax{\def\lst@firstline{#1\relax}}
+\lst@Key{lastline}\relax{\def\lst@lastline{#1\relax}}
+\lst@AddToHook{PreSet}
+ {\let\lst@firstline\@ne \def\lst@lastline{9999999\relax}}
+\lst@Key{linerange}\relax{\lstKV@OptArg[]{#1}{%
+ \def\lst@interrange{##1}\def\lst@linerange{##2,}}}
+\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}%
+\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{%
+ \ifx\@empty#1\@empty
+ \let\lst@firstline\@ne
+ \else
+ \def\lst@firstline{#1\relax}%
+ \fi
+ \ifx\@empty#2\@empty
+ \def\lst@lastline{9999999\relax}%
+ \else
+ \ifx -#2%
+ \let\lst@lastline\lst@firstline
+ \else
+ \def\lst@lastline{#2\relax}%
+ \fi
+ \fi}
+\lst@Key{nolol}{false}[t]{\lstKV@SetIf{#1}\lst@ifnolol}
+\def\lst@nololtrue{\let\lst@ifnolol\iftrue}
+\let\lst@ifnolol\iffalse % init
+\lst@Key{captionpos}{t}{\def\lst@captionpos{#1}}
+\lst@Key{abovecaptionskip}\smallskipamount{\def\lst@abovecaption{#1}}
+\lst@Key{belowcaptionskip}\smallskipamount{\def\lst@belowcaption{#1}}
+\lst@Key{label}\relax{\def\lst@label{#1}}
+\lst@Key{title}\relax{\def\lst@title{#1}\let\lst@caption\relax}
+\lst@Key{caption}\relax{\lstKV@OptArg[{#1}]{#1}%
+ {\def\lst@caption{##2}\def\lst@@caption{##1}}%
+ \let\lst@title\@empty}
+\lst@AddToHookExe{TextStyle}
+ {\let\lst@caption\@empty \let\lst@@caption\@empty
+ \let\lst@title\@empty \let\lst@label\@empty}
+\@ifundefined{thechapter}
+ {\newcounter{lstlisting}
+ \renewcommand\thelstlisting{\@arabic\c@lstlisting}}
+ {\newcounter{lstlisting}[chapter]
+ \renewcommand\thelstlisting
+ {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@lstlisting}}
+\lst@UserCommand\lstlistingname{Listing}
+\@ifundefined{abovecaptionskip}
+{\newskip\abovecaptionskip
+ \newskip\belowcaptionskip}{}
+\@ifundefined{@makecaption}
+{\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}%
+}{}
+\def\fnum@lstlisting{%
+ \lstlistingname
+ \ifx\lst@@caption\@empty\else~\thelstlisting\fi}%
+\def\lst@MakeCaption#1{%
+ \lst@ifdisplaystyle
+ \ifx #1t%
+ \ifx\lst@@caption\@empty\expandafter\lst@HRefStepCounter \else
+ \expandafter\refstepcounter
+ \fi {lstlisting}%
+ \ifx\lst@label\@empty\else \label{\lst@label}\fi
+ \let\lst@arg\lst@intname \lst@ReplaceIn\lst@arg\lst@filenamerpl
+ \global\let\lst@name\lst@arg \global\let\lstname\lst@name
+ \lst@ifnolol\else
+ \ifx\lst@@caption\@empty
+ \ifx\lst@caption\@empty
+ \ifx\lst@intname\@empty \else \def\lst@temp{ }%
+ \ifx\lst@intname\lst@temp \else
+ \addcontentsline{lol}{lstlisting}\lst@name
+ \fi\fi
+ \fi
+ \else
+ \addcontentsline{lol}{lstlisting}%
+ {\protect\numberline{\thelstlisting}\lst@@caption}%
+ \fi
+ \fi
+ \fi
+ \ifx\lst@caption\@empty\else
+ \lst@IfSubstring #1\lst@captionpos
+ {\begingroup \let\@@vskip\vskip
+ \def\vskip{\afterassignment\lst@vskip \@tempskipa}%
+ \def\lst@vskip{\nobreak\@@vskip\@tempskipa\nobreak}%
+ \par\@parboxrestore\normalsize\normalfont % \noindent (AS)
+ \ifx #1t\allowbreak \fi
+ \ifx\lst@title\@empty
+ \lst@makecaption\fnum@lstlisting\lst@caption % (AS)
+ \else
+ \lst@maketitle\lst@title % (AS)
+ \fi
+ \ifx #1b\allowbreak \fi
+ \endgroup}{}%
+ \fi
+ \fi}
+\def\lst@makecaption{\@makecaption}
+\def\lst@maketitle{\@makecaption\lst@title@dropdelim}
+\def\lst@title@dropdelim#1{\ignorespaces}
+\AtBeginDocument{%
+\@ifundefined{captionlabelfalse}{}{%
+ \def\lst@maketitle{\captionlabelfalse\@makecaption\@empty}}%
+\@ifundefined{caption@startrue}{}{%
+ \def\lst@maketitle{\caption@startrue\@makecaption\@empty}}%
+}
+\def\lst@HRefStepCounter#1{%
+ \begingroup
+ \c@lstlisting\lst@neglisting
+ \advance\c@lstlisting\m@ne \xdef\lst@neglisting{\the\c@lstlisting}%
+ \ifx\hyper@refstepcounter\@undefined\else
+ \hyper@refstepcounter{#1}%
+ \fi
+ \endgroup}
+\gdef\lst@neglisting{\z@}% init
+\lst@Key{boxpos}{c}{\def\lst@boxpos{#1}}
+\def\lst@boxtrue{\let\lst@ifbox\iftrue}
+\let\lst@ifbox\iffalse
+\lst@Key{float}\relax[\lst@floatplacement]{%
+ \lstKV@SwitchCases{#1}%
+ {true&\let\lst@floatdefault\lst@floatplacement
+ \let\lst@float\lst@floatdefault\\%
+ false&\let\lst@floatdefault\relax
+ \let\lst@float\lst@floatdefault
+ }{\def\lst@next{\@ifstar{\let\lst@beginfloat\@dblfloat
+ \let\lst@endfloat\end@dblfloat
+ \lst@KFloat}%
+ {\let\lst@beginfloat\@float
+ \let\lst@endfloat\end@float
+ \lst@KFloat}}
+ \edef\lst@float{#1}%
+ \expandafter\lst@next\lst@float\relax}}
+\def\lst@KFloat#1\relax{%
+ \ifx\@empty#1\@empty
+ \let\lst@float\lst@floatplacement
+ \else
+ \def\lst@float{#1}%
+ \fi}
+\lst@Key{floatplacement}{tbp}{\def\lst@floatplacement{#1}}
+\lst@AddToHook{PreSet}{\let\lst@float\lst@floatdefault}
+\lst@AddToHook{TextStyle}{\let\lst@float\relax}
+\let\lst@floatdefault\relax % init
+\lst@AddToHook{DeInit}{%
+ \ifx\lst@float\relax
+ \global\let\lst@doendpe\@doendpe
+ \else
+ \global\let\lst@doendpe\@empty
+ \fi}
+\AtBeginDocument{%
+\@ifundefined{c@float@type}%
+ {\edef\ftype@lstlisting{\ifx\c@figure\@undefined 1\else 4\fi}}
+ {\edef\ftype@lstlisting{\the\c@float@type}%
+ \addtocounter{float@type}{\value{float@type}}}%
+}
+\lst@Key{aboveskip}\medskipamount{\def\lst@aboveskip{#1}}
+\lst@Key{belowskip}\medskipamount{\def\lst@belowskip{#1}}
+\lst@AddToHook{TextStyle}
+ {\let\lst@aboveskip\z@ \let\lst@belowskip\z@}
+\lst@Key{everydisplay}{}{\def\lst@EveryDisplay{#1}}
+\lst@AddToHook{TextStyle}{\let\lst@ifdisplaystyle\iffalse}
+\lst@AddToHook{DisplayStyle}{\let\lst@ifdisplaystyle\iftrue}
+\let\lst@ifdisplaystyle\iffalse
+\def\lst@Init#1{%
+ \begingroup
+ \ifx\lst@float\relax\else
+ \edef\@tempa{\noexpand\lst@beginfloat{lstlisting}[\lst@float]}%
+ \expandafter\@tempa
+ \fi
+ \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}
+\let\lst@InitFinalize\@empty % init
+\lst@AddToHook{PreInit}
+ {\rightskip\z@ \leftskip\z@ \parfillskip=\z@ plus 1fil
+ \let\par\@@par}
+\lst@AddToHook{EveryLine}{}% init
+\lst@AddToHook{EveryPar}{}% init
+\lst@Key{showlines}f[t]{\lstKV@SetIf{#1}\lst@ifshowlines}
+\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
+ \ifx\lst@float\relax\else
+ \expandafter\lst@endfloat
+ \fi
+ \endgroup}
+\newdimen\lst@maxwidth % \global
+\lst@AddToHook{InitVars}{\global\lst@maxwidth\z@}
+\lst@AddToHook{InitVarsEOL}
+ {\ifdim\lst@currlwidth>\lst@maxwidth
+ \global\lst@maxwidth\lst@currlwidth
+ \fi}
+\def\lst@EOLUpdate{\lsthk@EOL \lsthk@InitVarsEOL}
+\def\lst@MProcessListing{%
+ \lst@XPrintToken \lst@EOLUpdate \lsthk@InitVarsBOL
+ \global\advance\lst@lineno\@ne
+ \ifnum \lst@lineno>\lst@lastline
+ \lst@ifdropinput \lst@LeaveMode \fi
+ \ifx\lst@linerange\@empty
+ \expandafter\expandafter\expandafter\lst@EndProcessListing
+ \else
+ \lst@interrange
+ \lst@GetLineInterval
+ \expandafter\expandafter\expandafter\lst@SkipToFirst
+ \fi
+ \else
+ \expandafter\lst@BOLGobble
+ \fi}
+\let\lst@EndProcessListing\endinput
+\lst@Key{gobble}{0}{\def\lst@gobble{#1}}
+\def\lst@BOLGobble{%
+ \ifnum\lst@gobble>\z@
+ \@tempcnta\lst@gobble\relax
+ \expandafter\lst@BOLGobble@
+\fi}
+\def\lst@BOLGobble@@{%
+ \ifnum\@tempcnta>\z@
+ \expandafter\lst@BOLGobble@
+ \fi}
+\def\lstenv@BOLGobble@@{%
+ \lst@IfNextChars\lstenv@endstring{\lstenv@End}%
+ {\advance\@tempcnta\m@ne \expandafter\lst@BOLGobble@@\lst@eaten}}
+\def\lst@BOLGobble@#1{%
+ \let\lst@next#1%
+ \ifx \lst@next\relax\else
+ \ifx \lst@next\lst@MProcessListing\else
+ \ifx \lst@next\lst@processformfeed\else
+ \ifx \lst@next\lstenv@backslash
+ \let\lst@next\lstenv@BOLGobble@@
+ \else
+ \let\lst@next\lst@BOLGobble@@
+ \ifx #1\lst@processtabulator
+ \advance\@tempcnta-\lst@tabsize\relax
+ \ifnum\@tempcnta<\z@
+ \lst@length-\@tempcnta \lst@PreGotoTabStop
+ \fi
+ \else
+ \advance\@tempcnta\m@ne
+ \fi
+ \fi \fi \fi \fi
+ \lst@next}
+\def\lst@processformfeed{\lst@ProcessFormFeed}
+\def\lst@processtabulator{\lst@ProcessTabulator}
+\lst@Key{name}\relax{\def\lst@intname{#1}}
+\lst@AddToHookExe{PreSet}{\global\let\lst@intname\@empty}
+\lst@AddToHook{PreInit}{%
+ \let\lst@arg\lst@intname \lst@ReplaceIn\lst@arg\lst@filenamerpl
+ \global\let\lst@name\lst@arg \global\let\lstname\lst@name}
+\def\lst@filenamerpl{_\textunderscore $\textdollar -\textendash}
+\def\l@lstlisting#1#2{\@dottedtocline{1}{1.5em}{2.3em}{#1}{#2}}
+\lst@UserCommand\lstlistlistingname{Listings}
+\lst@UserCommand\lstlistoflistings{\bgroup
+ \let\contentsname\lstlistlistingname
+ \let\lst@temp\@starttoc \def\@starttoc##1{\lst@temp{lol}}%
+ \tableofcontents \egroup}
+\@ifpackageloaded{scrlfile}
+{\newcommand*\lol@heading{\float@listhead{\lstlistlistingname}}
+ \renewcommand*\lstlistoflistings{%
+ \begingroup%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi
+ \lol@heading%
+ \@parskipfalse\@parskip@indent%
+ \@starttoc{lol}%
+ \if@restonecol\twocolumn\fi
+ \endgroup}%
+}{}
+\newcommand\lstinline[1][]{%
+ \leavevmode\bgroup % \hbox\bgroup --> \bgroup
+ \def\lst@boxpos{b}%
+ \lsthk@PreSet\lstset{flexiblecolumns,#1}%
+ \lsthk@TextStyle
+ \@ifnextchar\bgroup{\afterassignment\lst@InlineG \let\@let@token}%
+ \lstinline@}
+\def\lstinline@#1{%
+ \lst@Init\relax
+ \lst@IfNextCharActive{\lst@InlineM#1}{\lst@InlineJ#1}}
+\lst@AddToHook{TextStyle}{}% init
+\lst@AddToHook{SelectCharTable}{\lst@inlinechars}
+\global\let\lst@inlinechars\@empty
+\def\lst@InlineM#1{\gdef\lst@inlinechars{%
+ \lst@Def{`#1}{\lst@DeInit\egroup\global\let\lst@inlinechars\@empty}%
+ \lst@Def{13}{\lst@DeInit\egroup \global\let\lst@inlinechars\@empty
+ \PackageError{Listings}{lstinline ended by EOL}\@ehc}}%
+ \lst@inlinechars}
+\def\lst@InlineJ#1{%
+ \def\lst@temp##1#1{%
+ \let\lst@arg\@empty \lst@InsideConvert{##1}\lst@arg
+ \lst@DeInit\egroup}%
+ \lst@temp}
+\def\lst@InlineG{%
+ \lst@Init\relax
+ \lst@IfNextCharActive{\lst@InlineM\}}%
+ {\let\lst@arg\@empty \lst@InlineGJ}}
+\def\lst@InlineGJ{\futurelet\@let@token\lst@InlineGJTest}
+\def\lst@InlineGJTest{%
+ \ifx\@let@token\egroup
+ \afterassignment\lst@InlineGJEnd
+ \expandafter\let\expandafter\@let@token
+ \else
+ \ifx\@let@token\@sptoken
+ \let\lst@next\lst@InlineGJReadSp
+ \else
+ \let\lst@next\lst@InlineGJRead
+ \fi
+ \expandafter\lst@next
+ \fi}
+\def\lst@InlineGJEnd{\lst@arg\lst@DeInit\egroup}
+\def\lst@InlineGJRead#1{%
+ \lccode`\~=`#1\lowercase{\lst@lAddTo\lst@arg~}%
+ \lst@InlineGJ}
+\def\lst@InlineGJReadSp#1{%
+ \lccode`\~=`\ \lowercase{\lst@lAddTo\lst@arg~}%
+ \lst@InlineGJ#1}
+\def\lst@MakePath#1{\ifx\@empty#1\@empty\else\lst@MakePath@#1/\@nil/\fi}
+\def\lst@MakePath@#1/{#1/\lst@MakePath@@}
+\def\lst@MakePath@@#1/{%
+ \ifx\@nil#1\expandafter\@gobble
+ \else \ifx\@empty#1\else #1/\fi \fi
+ \lst@MakePath@@}
+\lst@Key{inputpath}{}{\edef\lst@inputpath{\lst@MakePath{#1}}}
+\def\lstinputlisting{%
+ \begingroup \lst@setcatcodes \lst@inputlisting}
+\newcommand\lst@inputlisting[2][]{%
+ \endgroup
+ \def\lst@set{#1}%
+ \IfFileExists{\lst@inputpath#2}%
+ {\expandafter\lst@InputListing\expandafter{\lst@inputpath#2}}%
+ {\filename@parse{\lst@inputpath#2}%
+ \edef\reserved@a{\noexpand\lst@MissingFileError
+ {\filename@area\filename@base}%
+ {\ifx\filename@ext\relax tex\else\filename@ext\fi}}%
+ \reserved@a}%
+ \lst@doendpe \@newlistfalse \ignorespaces}
+\def\lst@MissingFileError#1#2{%
+ \typeout{^^J! Package Listings Error: File `#1(.#2)' not found.^^J%
+ ^^JType X to quit or <RETURN> to proceed,^^J%
+ or enter new name. (Default extension: #2)^^J}%
+ \message{Enter file name: }%
+ {\endlinechar\m@ne \global\read\m@ne to\@gtempa}%
+ \ifx\@gtempa\@empty \else
+ \def\reserved@a{x}\ifx\reserved@a\@gtempa\batchmode\@@end\fi
+ \def\reserved@a{X}\ifx\reserved@a\@gtempa\batchmode\@@end\fi
+ \filename@parse\@gtempa
+ \edef\filename@ext{%
+ \ifx\filename@ext\relax#2\else\filename@ext\fi}%
+ \edef\reserved@a{\noexpand\IfFileExists %
+ {\filename@area\filename@base.\filename@ext}%
+ {\noexpand\lst@InputListing %
+ {\filename@area\filename@base.\filename@ext}}%
+ {\noexpand\lst@MissingFileError
+ {\filename@area\filename@base}{\filename@ext}}}%
+ \expandafter\reserved@a %
+ \fi}
+\let\lst@ifdraft\iffalse
+\DeclareOption{draft}{\let\lst@ifdraft\iftrue}
+\DeclareOption{final}{\let\lst@ifdraft\iffalse}
+\lst@AddToHook{PreSet}
+ {\lst@ifdraft
+ \let\lst@ifprint\iffalse
+ \@gobbletwo\fi\fi
+ \fi}
+\def\lst@InputListing#1{%
+ \begingroup
+ \lsthk@PreSet \gdef\lst@intname{#1}%
+ \expandafter\lstset\expandafter{\lst@set}%
+ \lsthk@DisplayStyle
+ \catcode\active=\active
+ \lst@Init\relax \let\lst@gobble\z@
+ \lst@SkipToFirst
+ \lst@ifprint \def\lst@next{\input{#1}}%
+ \else \let\lst@next\@empty \fi
+ \lst@next
+ \lst@DeInit
+ \endgroup}
+\def\lst@SkipToFirst{%
+ \ifnum \lst@lineno<\lst@firstline
+ \lst@BeginDropInput\lst@Pmode
+ \lst@Let{13}\lst@MSkipToFirst
+ \lst@Let{10}\lst@MSkipToFirst
+ \else
+ \expandafter\lst@BOLGobble
+ \fi}
+\def\lst@MSkipToFirst{%
+ \global\advance\lst@lineno\@ne
+ \ifnum \lst@lineno=\lst@firstline
+ \lst@LeaveMode \global\lst@newlines\z@
+ \lsthk@InitVarsBOL
+ \expandafter\lst@BOLGobble
+ \fi}
+\def\lstenv@DroppedWarning{%
+ \ifx\lst@dropped\@undefined\else
+ \PackageWarning{Listings}{Text dropped after begin of listing}%
+ \fi}
+\let\lst@dropped\@undefined % init
+\begingroup \lccode`\~=`\^^M\lowercase{%
+\gdef\lstenv@Process#1{%
+ \ifx~#1%
+ \lstenv@DroppedWarning \let\lst@next\lst@SkipToFirst
+ \else\ifx^^J#1%
+ \lstenv@DroppedWarning \let\lst@next\lstenv@ProcessJ
+ \else
+ \let\lst@dropped#1\let\lst@next\lstenv@Process
+ \fi \fi
+ \lst@next}
+}\endgroup
+\def\lstenv@ProcessJ{%
+ \let\lst@arg\@empty
+ \ifx\@currenvir\lstenv@name
+ \expandafter\lstenv@ProcessJEnv
+ \else
+ \expandafter\def\expandafter\lst@temp\expandafter##1%
+ \csname end\lstenv@name\endcsname
+ {\lst@InsideConvert{##1}\lstenv@ProcessJ@}%
+ \expandafter\lst@temp
+ \fi}
+\begingroup \lccode`\~=`\\\lowercase{%
+\gdef\lstenv@ProcessJ@{%
+ \lst@lExtend\lst@arg
+ {\expandafter\ \expandafter~\lstenv@endstring}%
+ \catcode10=\active \lst@Let{10}\lst@MProcessListing
+ \lst@SkipToFirst \lst@arg}
+}\endgroup
+\def\lstenv@ProcessJEnv#1\end#2{\def\lst@temp{#2}%
+ \ifx\lstenv@name\lst@temp
+ \lst@InsideConvert{#1}%
+ \expandafter\lstenv@ProcessJ@
+ \else
+ \lst@InsideConvert{#1\\end\{#2\}}%
+ \expandafter\lstenv@ProcessJEnv
+ \fi}
+\def\lstenv@backslash{%
+ \lst@IfNextChars\lstenv@endstring
+ {\lstenv@End}%
+ {\expandafter\lsts@backslash \lst@eaten}}%
+\def\lstenv@End{%
+ \ifx\@currenvir\lstenv@name
+ \edef\lst@next{\noexpand\end{\lstenv@name}}%
+ \else
+ \def\lst@next{\csname end\lstenv@name\endcsname}%
+ \fi
+ \lst@next}
+\lst@UserCommand\lstnewenvironment#1#2#{%
+ \@ifundefined{#1}%
+ {\let\lst@arg\@empty
+ \lst@XConvert{#1}\@nil
+ \expandafter\lstnewenvironment@\lst@arg{#1}{#2}}%
+ {\PackageError{Listings}{Environment `#1' already defined}\@eha
+ \@gobbletwo}}
+\def\@tempa#1#2#3{%
+\gdef\lstnewenvironment@##1##2##3##4##5{%
+ \begingroup
+ \global\@namedef{end##2}{\lstenv@Error{##2}}%
+ \global\@namedef{##2}{\def\lstenv@name{##2}%
+ \begingroup \lst@setcatcodes \catcode\active=\active
+ \csname##2@\endcsname}%
+ \let\l@ngrel@x\global
+ \let\@xargdef\lstenv@xargdef
+ \expandafter\new@command\csname##2@\endcsname##3%
+ {\lsthk@PreSet ##4%
+ \ifx\@currenvir\lstenv@name
+ \def\lstenv@endstring{#1#2##1#3}%
+ \else
+ \def\lstenv@endstring{#1##1}%
+ \fi
+ \@namedef{end##2}{\lst@DeInit ##5\endgroup
+ \lst@doendpe \@ignoretrue}%
+ \lsthk@DisplayStyle
+ \let\lst@EndProcessListing\lstenv@SkipToEnd
+ \lst@Init\lstenv@backslash
+ \lst@ifprint
+ \expandafter\expandafter\expandafter\lstenv@Process
+ \else
+ \expandafter\lstenv@SkipToEnd
+ \fi
+ \lst@insertargs}%
+ \endgroup}%
+}
+\let\lst@arg\@empty \lst@XConvert{end}\{\}\@nil
+\expandafter\@tempa\lst@arg
+\let\lst@insertargs\@empty
+\def\lstenv@xargdef#1{
+ \expandafter\lstenv@xargdef@\csname\string#1\endcsname#1}
+\def\lstenv@xargdef@#1#2[#3][#4]#5{%
+ \@ifdefinable#2{%
+ \gdef#2{%
+ \ifx\protect\@typeset@protect
+ \expandafter\lstenv@testopt
+ \else
+ \@x@protect#2%
+ \fi
+ #1%
+ {#4}}%
+ \@yargdef
+ #1%
+ \tw@
+ {#3}%
+ {#5}}}
+\long\def\lstenv@testopt#1#2{%
+ \@ifnextchar[{\catcode\active5\relax \lstenv@testopt@#1}%
+ {#1[{#2}]}}
+\def\lstenv@testopt@#1[#2]{%
+ \catcode\active\active
+ #1[#2]}
+\begingroup \lccode`\~=`\\\lowercase{%
+\gdef\lstenv@SkipToEnd{%
+ \long\expandafter\def\expandafter\lst@temp\expandafter##\expandafter
+ 1\expandafter~\lstenv@endstring{\lstenv@End}%
+ \lst@temp}
+}\endgroup
+\def\lstenv@Error#1{\PackageError{Listings}{Extra \string\end#1}%
+ {I'm ignoring this, since I wasn't doing a \csname#1\endcsname.}}
+\begingroup \lccode`\~=`\^^M\lowercase{%
+\gdef\lst@TestEOLChar#1{%
+ \def\lst@insertargs{#1}%
+ \ifx ~#1\@empty \else
+ \ifx^^J#1\@empty \else
+ \global\let\lst@intname\lst@insertargs
+ \let\lst@insertargs\@empty
+ \fi \fi}
+}\endgroup
+\lstnewenvironment{lstlisting}[2][]
+ {\lst@TestEOLChar{#2}%
+ \lstset{#1}%
+ \csname\@lst @SetFirstNumber\endcsname}
+ {\csname\@lst @SaveFirstNumber\endcsname}
+\lst@Key{fancyvrb}\relax[t]{%
+ \lstKV@SetIf{#1}\lst@iffancyvrb
+ \lstFV@fancyvrb}
+\ifx\lstFV@fancyvrb\@undefined
+ \gdef\lstFV@fancyvrb{\lst@RequireAspects{fancyvrb}\lstFV@fancyvrb}
+\fi
+\@ifundefined{ocp}{}
+ {\lst@AddToHook{OutputBox}%
+ {\let\lst@ProcessLetter\@firstofone
+ \let\lst@ProcessDigit\@firstofone
+ \let\lst@ProcessOther\@firstofone}}
+\DeclareOption*{\expandafter\lst@ProcessOption\CurrentOption\relax}
+\def\lst@ProcessOption#1#2\relax{%
+ \ifx #1!%
+ \lst@DeleteKeysIn\lst@loadaspects{#2}%
+ \else
+ \lst@lAddTo\lst@loadaspects{,#1#2}%
+ \fi}
+\@ifundefined{lst@loadaspects}
+ {\def\lst@loadaspects{strings,comments,escape,style,language,%
+ keywords,labels,lineshape,frames,emph,index}%
+ }{}
+\InputIfFileExists{lstpatch.sty}{}{}
+\let\lst@ifsavemem\iffalse
+\DeclareOption{savemem}{\let\lst@ifsavemem\iftrue}
+\DeclareOption{noaspects}{\let\lst@loadaspects\@empty}
+\ProcessOptions
+\lst@RequireAspects\lst@loadaspects
+\let\lst@loadaspects\@empty
+\lst@UseHook{SetStyle}\lst@UseHook{EmptyStyle}
+\lst@UseHook{SetLanguage}\lst@UseHook{EmptyLanguage}
+\InputIfFileExists{listings.cfg}{}{}
+\InputIfFileExists{lstlocal.cfg}{}{}
+\endinput
+%%
+%% End of file `listings.sty'.
diff --git a/Master/texmf-dist/tex/latex/listings/lstdoc.sty b/Master/texmf-dist/tex/latex/listings/lstdoc.sty
new file mode 100644
index 00000000000..3b9806fbe59
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/lstdoc.sty
@@ -0,0 +1,451 @@
+%%
+%% This is file `lstdoc.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% listings-1.3.dtx (with options: `doc')
+%%
+%% Please read the software license in listings-1.3.dtx or listings-1.3.pdf.
+%%
+%% (w)(c) 1996--2004 Carsten Heinz and/or any other author listed
+%% elsewhere in this file.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+\def\filedate{2004/09/07}
+\def\fileversion{1.3}
+\ProvidesPackage{lstdoc}
+ [\filedate\space\fileversion\space(Carsten Heinz)]
+\let\lstdoc@currversion\fileversion
+\RequirePackage[writefile]{listings}[2004/09/07]
+\newif\iffancyvrb \IfFileExists{fancyvrb.sty}{\fancyvrbtrue}{}
+\newif\ifcolor \IfFileExists{color.sty}{\colortrue}{}
+\lst@false
+\newif\ifhyper
+\@ifundefined{pdfoutput}
+ {}
+ {\ifnum\pdfoutput>\z@ \lst@true \fi}
+\@ifundefined{VTeXversion}
+ {}
+ {\ifnum\OpMode>\z@ \lst@true \fi}
+\lst@if \IfFileExists{hyperref.sty}{\hypertrue}{}\fi
+\newif\ifalgorithmic \IfFileExists{algorithmic.sty}{\algorithmictrue}{}
+\newif\iflgrind \IfFileExists{lgrind.sty}{\lgrindtrue}{}
+\iffancyvrb \RequirePackage{fancyvrb}\fi
+\ifhyper \RequirePackage[colorlinks]{hyperref}\else
+ \def\href#1{\texttt}\fi
+\ifcolor \RequirePackage{color}\fi
+\ifalgorithmic \RequirePackage{algorithmic}\fi
+\iflgrind \RequirePackage{lgrind}\fi
+\RequirePackage{nameref}
+\RequirePackage{url}
+\renewcommand\ref{\protect\T@ref}
+\renewcommand\pageref{\protect\T@pageref}
+\def\lst@BeginRemark#1{%
+ \begin{quote}\topsep0pt\let\small\footnotesize\small#1:}
+\def\lst@EndRemark{\end{quote}}
+\newenvironment{TODO}
+ {\lst@BeginRemark{To do}}{\lst@EndRemark}
+\newenvironment{ALTERNATIVE}
+ {\lst@BeginRemark{Alternative}}{\lst@EndRemark}
+\newenvironment{REMOVED}
+ {\lst@BeginRemark{Removed}}{\lst@EndRemark}
+\newenvironment{OLDDEF}
+ {\lst@BeginRemark{Old definition}}{\lst@EndRemark}
+\def\advise{\par\list\labeladvise
+ {\advance\linewidth\@totalleftmargin
+ \@totalleftmargin\z@
+ \@listi
+ \let\small\footnotesize \small\sffamily
+ \parsep \z@ \@plus\z@ \@minus\z@
+ \topsep6\p@ \@plus1\p@\@minus2\p@
+ \def\makelabel##1{\hss\llap{##1}}}}
+\let\endadvise\endlist
+\def\advisespace{\hbox{}\qquad}
+\def\labeladvise{$\to$}
+\newenvironment{syntax}
+ {\list{}{\itemindent-\leftmargin
+ \def\makelabel##1{\hss\lst@syntaxlabel##1,,,,\relax}}}
+ {\endlist}
+\def\lst@syntaxlabel#1,#2,#3,#4\relax{%
+ \llap{\scriptsize\itshape#3}%
+ \def\lst@temp{#2}%
+ \expandafter\lst@syntaxlabel@\meaning\lst@temp\relax
+ \rlap{\hskip-\itemindent\hskip\itemsep\hskip\linewidth
+ \llap{\ttfamily\lst@temp}\hskip\labelwidth
+ \def\lst@temp{#1}%
+ \ifx\lst@temp\lstdoc@currversion#1\fi}}
+\def\lst@syntaxlabel@#1>#2\relax
+ {\edef\lst@temp{\zap@space#2 \@empty}}
+\newcommand*\syntaxnewline{\newline\hbox{}\kern\labelwidth}
+\newcommand*\syntaxor{\qquad or\qquad}
+\newcommand*\syntaxbreak
+ {\hfill\kern0pt\discretionary{}{\kern\labelwidth}{}}
+\let\syntaxfill\hfill
+\def\alternative#1{\lst@true \alternative@#1,\relax,}
+\def\alternative@#1,{%
+ \ifx\relax#1\@empty
+ \expandafter\@gobble
+ \else
+ \ifx\@empty#1\@empty\else
+ \lst@if \lst@false \else $\vert$\fi
+ \textup{\texttt{#1}}%
+ \fi
+ \fi
+ \alternative@}
+\long\def\m@cro@#1#2#3{\endgroup \topsep\MacroTopsep \trivlist
+ \edef\saved@macroname{\string#3}%
+ \def\makelabel##1{\llap{##1}}%
+ \if@inlabel
+ \let\@tempa\@empty \count@\macro@cnt
+ \loop \ifnum\count@>\z@
+ \edef\@tempa{\@tempa\hbox{\strut}}\advance\count@\m@ne \repeat
+ \edef\makelabel##1{\llap{\vtop to\baselineskip
+ {\@tempa\hbox{##1}\vss}}}%
+ \advance \macro@cnt \@ne
+ \else \macro@cnt\@ne \fi
+ \edef\@tempa{\noexpand\item[%
+ #1%
+ \noexpand\PrintMacroName
+ \else
+ \expandafter\noexpand\csname Print#2Name\endcsname % MODIFIED
+ \fi
+ {\string#3}]}%
+ \@tempa
+ \global\advance\c@CodelineNo\@ne
+ #1%
+ \SpecialMainIndex{#3}\nobreak
+ \DoNotIndex{#3}%
+ \else
+ \csname SpecialMain#2Index\endcsname{#3}\nobreak % MODIFIED
+ \fi
+ \global\advance\c@CodelineNo\m@ne
+ \ignorespaces}
+\def\macro{\begingroup
+ \catcode`\\12
+ \MakePrivateLetters \m@cro@ \iftrue {Macro}}% MODIFIED
+\def\environment{\begingroup
+ \catcode`\\12
+ \MakePrivateLetters \m@cro@ \iffalse {Env}}% MODIFIED
+\def\newdocenvironment#1#2#3#4{%
+ \@namedef{#1}{#3\begingroup \catcode`\\12\relax
+ \MakePrivateLetters \m@cro@ \iffalse {#2}}%
+ \@namedef{end#1}{#4\endmacro}%
+ \@ifundefined{Print#2Name}{\expandafter
+ \let\csname Print#2Name\endcsname\PrintMacroName}{}%
+ \@ifundefined{SpecialMain#2Index}{\expandafter
+ \let\csname SpecialMain#2Index\endcsname\SpecialMainIndex}{}}
+\newdocenvironment{aspect}{Aspect}{}{}
+\def\PrintAspectName#1{}
+\def\SpecialMainAspectIndex#1{%
+ \@bsphack
+ \index{aspects:\levelchar\protect\aspectname{#1}\encapchar main}%
+ \@esphack}
+\newdocenvironment{lstkey}{Key}{}{}
+\def\PrintKeyName#1{\strut\keyname{#1}\ }
+\def\SpecialMainKeyIndex#1{%
+ \@bsphack
+ \index{keys\levelchar\protect\keyname{#1}\encapchar main}%
+ \@esphack}
+\newcounter{argcount}
+\def\labelargcount{\texttt{\#\arabic{argcount}}\hskip\labelsep$=$}
+\def\macroargs{\list\labelargcount
+ {\usecounter{argcount}\leftmargin=2\leftmargin
+ \parsep \z@ \@plus\z@ \@minus\z@
+ \topsep4\p@ \@plus\p@ \@minus2\p@
+ \itemsep\z@ \@plus\z@ \@minus\z@
+ \def\makelabel##1{\hss\llap{##1}}}}
+\def\endmacroargs{\endlist\@endparenv}
+\lst@RequireAspects{writefile}
+\newbox\lst@samplebox
+\lstnewenvironment{lstsample}[3][]
+ {\global\let\lst@intname\@empty
+ \gdef\lst@sample{#2}%
+ \setbox\lst@samplebox=\hbox\bgroup
+ \setkeys{lst}{language={},style={},tabsize=4,gobble=5,%
+ basicstyle=\small\ttfamily,basewidth=0.51em,point={#1}}
+ #3%
+ \lst@BeginAlsoWriteFile{\jobname.tmp}}
+ {\lst@EndWriteFile\egroup
+ \ifdim \wd\lst@samplebox>.5\linewidth
+ \begin{center}%
+ \hbox to\linewidth{\box\lst@samplebox\hss}%
+ \end{center}%
+ \lst@sampleInput
+ \else
+ \begin{center}%
+ \begin{minipage}{0.45\linewidth}\lst@sampleInput\end{minipage}%
+ \qquad
+ \begin{minipage}{0.45\linewidth}%
+ \hbox to\linewidth{\box\lst@samplebox\hss}%
+ \end{minipage}%
+ \end{center}%
+ \fi}
+\lst@InstallKeywords{p}{point}{pointstyle}\relax{keywordstyle}{}ld
+\lstnewenvironment{lstxsample}[1][]
+ {\begingroup
+ \setkeys{lst}{belowskip=-\medskipamount,language={},style={},%
+ tabsize=4,gobble=5,basicstyle=\small\ttfamily,%
+ basewidth=0.51em,point={#1}}
+ \lst@BeginAlsoWriteFile{\jobname.tmp}}
+ {\endgroup
+ \endgroup}
+\def\lst@sampleInput{%
+ \MakePercentComment\catcode`\^^M=10\relax
+ \small\lst@sample
+ {\setkeys{lst}{SelectCharTable=\lst@ReplaceInput{\^\^I}%
+ {\lst@ProcessTabulator}}%
+ \leavevmode \input{\jobname.tmp}}\MakePercentIgnore}
+\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
+ {1.25ex \@plus1ex \@minus.2ex}%
+ {-1em}%
+ {\normalfont\normalsize\bfseries}}
+\def\lstref#1{\emph{\ref{#1} \nameref{#1}}}
+\def\@part[#1]#2{\addcontentsline{toc}{part}{#1}%
+ {\parindent\z@ \raggedright \interlinepenalty\@M
+ \normalfont \huge \bfseries #2\markboth{}{}\par}%
+ \nobreak\vskip 3ex\@afterheading}
+\renewcommand*\l@section[2]{%
+ \addpenalty\@secpenalty
+ \addvspace{.25em \@plus\p@}%
+ \setlength\@tempdima{1.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \endgroup}
+\renewcommand*\l@subsection{\@dottedtocline{2}{0pt}{2.3em}}
+\renewcommand*\l@subsubsection{\@dottedtocline{3}{0pt}{3.2em}}
+\newcommand\ikeyname[1]{%
+ \lstkeyindex{#1}{}%
+ \lstaspectindex{#1}{}%
+ \keyname{#1}}
+\newcommand\ekeyname[1]{%
+ \@bsphack
+ \lstkeyindex{#1}{\encapchar usage}%
+ \lstaspectindex{#1}{\encapchar usage}%
+ \@esphack}
+\newcommand\rkeyname[1]{%
+ \@bsphack
+ \lstkeyindex{#1}{\encapchar main}%
+ \lstaspectindex{#1}{\encapchar main}%
+ \@esphack{\rstyle\keyname{#1}}}
+\newcommand\icmdname[1]{%
+ \@bsphack
+ \lstaspectindex{#1}{}%
+ \@esphack\texttt{\string#1}}
+\newcommand\rcmdname[1]{%
+ \@bsphack
+ \lstaspectindex{#1}{\encapchar main}%
+ \@esphack\texttt{\rstyle\string#1}}
+\def\lstaspectindex#1#2{%
+ \global\@namedef{lstkandc@\string#1}{}%
+ \@ifundefined{lstisaspect@\string#1}
+ {\index{unknown\levelchar
+ \protect\texttt{\protect\string\string#1}#2}}%
+ {\index{\@nameuse{lstisaspect@\string#1}\levelchar
+ \protect\texttt{\protect\string\string#1}#2}}%
+}
+\def\lstkeyindex#1#2{%
+}
+\def\lstisaspect[#1]#2{%
+ \global\@namedef{lstaspect@#1}{#2}%
+ \lst@AddTo\lst@allkeysandcmds{,#2}%
+ \@for\lst@temp:=#2\do
+ {\ifx\@empty\lst@temp\else
+ \global\@namedef{lstisaspect@\lst@temp}{#1}%
+ \fi}}
+\gdef\lst@allkeysandcmds{}
+\def\lstprintaspectkeysandcmds#1{%
+ \lst@true
+ \expandafter\@for\expandafter\lst@temp
+ \expandafter:\expandafter=\csname lstaspect@#1\endcsname\do
+ {\lst@if\lst@false\else, \fi \texttt{\lst@temp}}}
+\def\lstcheckreference{%
+ \@for\lst@temp:=\lst@allkeysandcmds\do
+ {\ifx\lst@temp\@empty\else
+ \@ifundefined{lstkandc@\lst@temp}
+ {\typeout{\lst@temp\space not in reference guide?}}{}%
+ \fi}}
+\newcommand*\lst{\texttt{lst}}
+\newcommand*\Cpp{C\texttt{++}}
+\let\keyname\texttt
+\let\keyvalue\texttt
+\let\hookname\texttt
+\newcommand*\aspectname[1]{{\normalfont\sffamily#1}}
+\DeclareRobustCommand\packagename[1]{%
+ {\leavevmode\text@command{#1}%
+ \switchfontfamily\sfdefault\rmdefault
+ \check@icl #1\check@icr
+ \expandafter}}%
+\renewcommand\packagename[1]{{\normalfont\sffamily#1}}
+\def\switchfontfamily#1#2{%
+ \begingroup\xdef\@gtempa{#1}\endgroup
+ \ifx\f@family\@gtempa\fontfamily#2%
+ \else\fontfamily#1\fi
+ \selectfont}
+\ifcolor
+ \definecolor{darkgreen}{rgb}{0,0.5,0}
+ \def\rstyle{\color{darkgreen}}
+\else
+ \let\rstyle\empty
+\fi
+\gdef\lst@emails{}
+\newcommand*\lstthanks[2]
+ {#1\lst@AddTo\lst@emails{,#1,<#2>}%
+ \ifx\@empty#2\@empty\typeout{Missing email for #1}\fi}
+\newcommand*\lsthelper[3]
+ {{\let~\ #1}%
+ \lst@IfOneOf#1\relax\lst@emails
+ {}{\typeout{^^JWarning: Unknown helper #1.^^J}}}
+\lstdefinelanguage[doc]{Pascal}{%
+ morekeywords={alfa,and,array,begin,boolean,byte,case,char,const,div,%
+ do,downto,else,end,false,file,for,function,get,goto,if,in,%
+ integer,label,maxint,mod,new,not,of,or,pack,packed,page,program,%
+ procedure,put,read,readln,real,record,repeat,reset,rewrite,set,%
+ text,then,to,true,type,unpack,until,var,while,with,write,writeln},%
+ sensitive=false,%
+ morecomment=[s]{(*}{*)},%
+ morecomment=[s]{\{}{\}},%
+ morestring=[d]{'}}
+\lstdefinestyle{}
+ {basicstyle={},%
+ keywordstyle=\bfseries,identifierstyle={},%
+ commentstyle=\itshape,stringstyle={},%
+ numberstyle={},stepnumber=1,%
+ pointstyle=\pointstyle}
+\def\pointstyle{%
+ {\let\lst@um\@empty \xdef\@gtempa{\the\lst@token}}%
+ \expandafter\lstkeyindex\expandafter{\@gtempa}{}%
+ \expandafter\lstaspectindex\expandafter{\@gtempa}{}%
+ \rstyle}
+\lstset{defaultdialect=[doc]Pascal,language=Pascal,style={}}
+\def\lstscanlanguages#1#2#3{%
+ \begingroup
+ \def\lst@DefDriver@##1##2##3##4[##5]##6{%
+ \lst@false
+ \lst@lAddTo\lst@scan{##6(##5),}%
+ \begingroup
+ \@ifnextchar[{\lst@XDefDriver{##1}##3}{\lst@DefDriver@@##3}}%
+ \def\lst@XXDefDriver[##1]{}%
+ \lst@InputCatcodes
+ \def\lst@dontinput{#3}%
+ \let\lst@scan\@empty
+ \lst@for{#2}\do{%
+ \lst@IfOneOf##1\relax\lst@dontinput
+ {}%
+ {\InputIfFileExists{##1}{}{}}}%
+ \global\let\@gtempa\lst@scan
+ \endgroup
+ \let#1\@gtempa}
+\def\lstprintlanguages#1{%
+ \def\do##1{\setbox\@tempboxa\hbox{##1\space\space}%
+ \ifdim\wd\@tempboxa<.5\linewidth \wd\@tempboxa.5\linewidth
+ \else \wd\@tempboxa\linewidth \fi
+ \box\@tempboxa\allowbreak}%
+ \begin{quote}
+ \par\noindent
+ \hyphenpenalty=\@M \rightskip=\z@\@plus\linewidth\relax
+ \lst@BubbleSort#1%
+ \expandafter\lst@NextLanguage#1\relax(\relax),%
+ \end{quote}}
+\def\lst@NextLanguage#1(#2),{%
+ \ifx\relax#1\else
+ \def\lst@language{#1}\def\lst@dialects{(#2),}%
+ \expandafter\lst@NextLanguage@
+ \fi}
+\def\lst@NextLanguage@#1(#2),{%
+ \def\lst@temp{#1}%
+ \ifx\lst@temp\lst@language
+ \lst@lAddTo\lst@dialects{(#2),}%
+ \expandafter\lst@NextLanguage@
+ \else
+ \do{\lst@language
+ \ifx\lst@dialects\lst@emptydialect\else
+ \expandafter\lst@NormedDef\expandafter\lst@language
+ \expandafter{\lst@language}%
+ \space(%
+ \lst@BubbleSort\lst@dialects
+ \expandafter\lst@PrintDialects\lst@dialects(\relax),%
+ )%
+ \fi}%
+ \def\lst@next{\lst@NextLanguage#1(#2),}%
+ \expandafter\lst@next
+ \fi}
+\def\lst@emptydialect{(),}
+\def\lst@PrintDialects(#1),{%
+ \ifx\@empty#1\@empty empty\else
+ \lst@PrintDialect{#1}%
+ \fi
+ \lst@PrintDialects@}
+\def\lst@PrintDialects@(#1),{%
+ \ifx\relax#1\else
+ , \lst@PrintDialect{#1}%
+ \expandafter\lst@PrintDialects@
+ \fi}
+\def\lst@PrintDialect#1{%
+ \lst@NormedDef\lst@temp{#1}%
+ \expandafter\ifx\csname\@lst dd@\lst@language\endcsname\lst@temp
+ \texttt{\underbar{#1}}%
+ \else
+ \texttt{#1}%
+ \fi}
+\def\lst@IfLE#1#2\@empty#3#4\@empty{%
+ \ifx #1\relax
+ \let\lst@next\@firstoftwo
+ \else \ifx #3\relax
+ \let\lst@next\@secondoftwo
+ \else
+ \lowercase{\ifx#1#3}%
+ \def\lst@next{\lst@IfLE#2\@empty#4\@empty}%
+ \else
+ \lowercase{\ifnum`#1<`#3}\relax
+ \let\lst@next\@firstoftwo
+ \else
+ \let\lst@next\@secondoftwo
+ \fi
+ \fi
+ \fi \fi
+ \lst@next}
+\def\lst@BubbleSort#1{%
+ \ifx\@empty#1\else
+ \lst@false
+ \expandafter\lst@BubbleSort@#1\relax,\relax,%
+ \expandafter\lst@BubbleSort@\expandafter,\lst@sorted
+ \relax,\relax,%
+ \let#1\lst@sorted
+ \lst@if
+ \def\lst@next{\lst@BubbleSort#1}%
+ \expandafter\expandafter\expandafter\lst@next
+ \fi
+ \fi}
+\def\lst@BubbleSort@#1,#2,{%
+ \ifx\@empty#1\@empty
+ \def\lst@sorted{#2,}%
+ \def\lst@next{\lst@BubbleSort@@}%
+ \else
+ \let\lst@sorted\@empty
+ \def\lst@next{\lst@BubbleSort@@#1,#2,}%
+ \fi
+ \lst@next}
+\def\lst@BubbleSort@@#1,#2,{%
+ \ifx\relax#1\else
+ \ifx\relax#2%
+ \lst@lAddTo\lst@sorted{#1,}%
+ \expandafter\expandafter\expandafter\lst@BubbleSort@@@
+ \else
+ \lst@IfLE #1\relax\@empty #2\relax\@empty
+ {\lst@lAddTo\lst@sorted{#1,#2,}}%
+ {\lst@true \lst@lAddTo\lst@sorted{#2,#1,}}%
+ \expandafter\expandafter\expandafter\lst@BubbleSort@@
+ \fi
+ \fi}
+\def\lst@BubbleSort@@@#1\relax,{}
+\endinput
+%%
+%% End of file `lstdoc.sty'.
diff --git a/Master/texmf-dist/tex/latex/listings/lstlang1.sty b/Master/texmf-dist/tex/latex/listings/lstlang1.sty
new file mode 100644
index 00000000000..c108403097d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/lstlang1.sty
@@ -0,0 +1,1226 @@
+%%
+%% This is file `lstlang1.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% 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.
+%%
+%% 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.
+%%
+%% This file is completely free and comes without any warranty.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+\ProvidesFile{lstlang1.sty}
+ [2004/09/05 1.3 listings language file]
+%%
+%% ACSL definition (c) 2000 by Andreas Matthias
+%%
+\lst@definelanguage{ACSL}[90]{Fortran}%
+ {morekeywords={algorithm,cinterval,constant,derivative,discrete,%
+ dynamic,errtag,initial,interval,maxterval,minterval,%
+ merror,xerror,nsteps,procedural,save,schedule,sort,%
+ table,terminal,termt,variable},%
+ sensitive=false,%
+ morecomment=[l]!%
+ }[keywords, comments]%
+%%
+%% Ada 95 definition (c) Torsten Neuer
+%%
+\lst@definelanguage[95]{Ada}[83]{Ada}%
+ {morekeywords={abstract,aliased,protected,requeue,tagged,until}}%
+\lst@definelanguage[83]{Ada}%
+ {morekeywords={abort,abs,accept,access,all,and,array,at,begin,body,%
+ case,constant,declare,delay,delta,digits,do,else,elsif,end,entry,%
+ exception,exit,for,function,generic,goto,if,in,is,limited,loop,%
+ mod,new,not,null,of,or,others,out,package,pragma,private,%
+ procedure,raise,range,record,rem,renames,return,reverse,select,%
+ separate,subtype,task,terminate,then,type,use,when,while,with,%
+ xor},%
+ sensitive=f,%
+ morecomment=[l]--,%
+ morestring=[m]",% percent not defined as stringizer so far
+ morestring=[m]'%
+ }[keywords,comments,strings]%
+%%
+%% awk definitions (c) Christoph Giess
+%%
+\lst@definelanguage[gnu]{Awk}[POSIX]{Awk}%
+ {morekeywords={and,asort,bindtextdomain,compl,dcgettext,gensub,%
+ lshift,mktime,or,rshift,strftime,strtonum,systime,xor,extension}%
+ }%
+\lst@definelanguage[POSIX]{Awk}%
+ {keywords={BEGIN,END,close,getline,next,nextfile,print,printf,%
+ system,fflush,atan2,cos,exp,int,log,rand,sin,sqrt,srand,gsub,%
+ index,length,match,split,sprintf,strtonum,sub,substr,tolower,%
+ toupper,if,while,do,for,break,continue,delete,exit,function,%
+ return},%
+ sensitive,%
+ morecomment=[l]\#,%
+ morecomment=[l]//,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+%%
+%% Visual Basic definition (c) 2002 Robert Frank
+%%
+\lst@definelanguage[Visual]{Basic}
+ {morekeywords={Abs,Array,Asc,AscB,AscW,Atn,Avg,CBool,CByte,CCur,%
+ CDate,CDbl,Cdec,Choose,Chr,ChrB,ChrW,CInt,CLng,Command,Cos,%
+ Count,CreateObject,CSng,CStr,CurDir,CVar,CVDate,CVErr,Date,%
+ DateAdd,DateDiff,DatePart,DateSerial,DateValue,Day,DDB,Dir,%
+ DoEvents,Environ,EOF,Error,Exp,FileAttr,FileDateTime,FileLen,%
+ Fix,Format,FreeFile,FV,GetAllStrings,GetAttr,%
+ GetAutoServerSettings,GetObject,GetSetting,Hex,Hour,IIf,%
+ IMEStatus,Input,InputB,InputBox,InStr,InstB,Int,Integer,IPmt,%
+ IsArray,IsDate,IsEmpty,IsError,IsMissing,IsNull,IsNumeric,%
+ IsObject,LBound,LCase,Left,LeftB,Len,LenB,LoadPicture,Loc,LOF,%
+ Log,Ltrim,Max,Mid,MidB,Min,Minute,MIRR,Month,MsgBox,Now,NPer,%
+ NPV,Oct,Partition,Pmt,PPmt,PV,QBColor,Rate,RGB,Right,RightB,Rnd,%
+ Rtrim,Second,Seek,Sgn,Shell,Sin,SLN,Space,Spc,Sqr,StDev,StDevP,%
+ Str,StrComp,StrConv,String,Switch,Sum,SYD,Tab,Tan,Time,Timer,%
+ TimeSerial,TimeValue,Trim,TypeName,UBound,Ucase,Val,Var,VarP,%
+ VarType,Weekday,Year},% functions
+ morekeywords=[2]{Accept,Activate,Add,AddCustom,AddFile,AddFromFile,%
+ AddFromTemplate,AddItem,AddNew,AddToAddInToolbar,%
+ AddToolboxProgID,Append,AppendChunk,Arrange,Assert,AsyncRead,%
+ BatchUpdate,BeginTrans,Bind,Cancel,CancelAsyncRead,CancelBatch,%
+ CancelUpdate,CanPropertyChange,CaptureImage,CellText,CellValue,%
+ Circle,Clear,ClearFields,ClearSel,ClearSelCols,Clone,Close,Cls,%
+ ColContaining,ColumnSize,CommitTrans,CompactDatabase,Compose,%
+ Connect,Copy,CopyQueryDef,CreateDatabase,CreateDragImage,%
+ CreateEmbed,CreateField,CreateGroup,CreateIndex,CreateLink,%
+ CreatePreparedStatement,CreatePropery,CreateQuery,%
+ CreateQueryDef,CreateRelation,CreateTableDef,CreateUser,%
+ CreateWorkspace,Customize,Delete,DeleteColumnLabels,%
+ DeleteColumns,DeleteRowLabels,DeleteRows,DoVerb,Drag,Draw,Edit,%
+ EditCopy,EditPaste,EndDoc,EnsureVisible,EstablishConnection,%
+ Execute,ExtractIcon,Fetch,FetchVerbs,Files,FillCache,Find,%
+ FindFirst,FindItem,FindLast,FindNext,FindPrevious,Forward,%
+ GetBookmark,GetChunk,GetClipString,GetData,GetFirstVisible,%
+ GetFormat,GetHeader,GetLineFromChar,GetNumTicks,GetRows,%
+ GetSelectedPart,GetText,GetVisibleCount,GoBack,GoForward,Hide,%
+ HitTest,HoldFields,Idle,InitializeLabels,InsertColumnLabels,%
+ InsertColumns,InsertObjDlg,InsertRowLabels,InsertRows,Item,%
+ KillDoc,Layout,Line,LinkExecute,LinkPoke,LinkRequest,LinkSend,%
+ Listen,LoadFile,LoadResData,LoadResPicture,LoadResString,%
+ LogEvent,MakeCompileFile,MakeReplica,MoreResults,Move,MoveData,%
+ MoveFirst,MoveLast,MoveNext,MovePrevious,NavigateTo,NewPage,%
+ NewPassword,NextRecordset,OLEDrag,OnAddinsUpdate,OnConnection,%
+ OnDisconnection,OnStartupComplete,Open,OpenConnection,%
+ OpenDatabase,OpenQueryDef,OpenRecordset,OpenResultset,OpenURL,%
+ Overlay,PaintPicture,Paste,PastSpecialDlg,PeekData,Play,Point,%
+ PopulatePartial,PopupMenu,Print,PrintForm,PropertyChanged,Pset,%
+ Quit,Raise,RandomDataFill,RandomFillColumns,RandomFillRows,%
+ rdoCreateEnvironment,rdoRegisterDataSource,ReadFromFile,%
+ ReadProperty,Rebind,ReFill,Refresh,RefreshLink,RegisterDatabase,%
+ Reload,Remove,RemoveAddInFromToolbar,RemoveItem,Render,%
+ RepairDatabase,Reply,ReplyAll,Requery,ResetCustom,%
+ ResetCustomLabel,ResolveName,RestoreToolbar,Resync,Rollback,%
+ RollbackTrans,RowBookmark,RowContaining,RowTop,Save,SaveAs,%
+ SaveFile,SaveToFile,SaveToolbar,SaveToOle1File,Scale,ScaleX,%
+ ScaleY,Scroll,Select,SelectAll,SelectPart,SelPrint,Send,%
+ SendData,Set,SetAutoServerSettings,SetData,SetFocus,SetOption,%
+ SetSize,SetText,SetViewport,Show,ShowColor,ShowFont,ShowHelp,%
+ ShowOpen,ShowPrinter,ShowSave,ShowWhatsThis,SignOff,SignOn,Size,%
+ Span,SplitContaining,StartLabelEdit,StartLogging,Stop,%
+ Synchronize,TextHeight,TextWidth,ToDefaults,TwipsToChartPart,%
+ TypeByChartType,Update,UpdateControls,UpdateRecord,UpdateRow,%
+ Upto,WhatsThisMode,WriteProperty,ZOrder},% methods
+ morekeywords=[3]{AccessKeyPress,AfterAddFile,AfterChangeFileName,%
+ AfterCloseFile,AfterColEdit,AfterColUpdate,AfterDelete,%
+ AfterInsert,AfterLabelEdit,AfterRemoveFile,AfterUpdate,%
+ AfterWriteFile,AmbienChanged,ApplyChanges,Associate,%
+ AsyncReadComplete,AxisActivated,AxisLabelActivated,%
+ AxisLabelSelected,AxisLabelUpdated,AxisSelected,%
+ AxisTitleActivated,AxisTitleSelected,AxisTitleUpdated,%
+ AxisUpdated,BeforeClick,BeforeColEdit,BeforeColUpdate,%
+ BeforeConnect,BeforeDelete,BeforeInsert,BeforeLabelEdit,%
+ BeforeLoadFile,BeforeUpdate,ButtonClick,ButtonCompleted,%
+ ButtonGotFocus,ButtonLostFocus,Change,ChartActivated,%
+ ChartSelected,ChartUpdated,Click,ColEdit,Collapse,ColResize,%
+ ColumnClick,Compare,ConfigChageCancelled,ConfigChanged,%
+ ConnectionRequest,DataArrival,DataChanged,DataUpdated,DblClick,%
+ Deactivate,DeviceArrival,DeviceOtherEvent,DeviceQueryRemove,%
+ DeviceQueryRemoveFailed,DeviceRemoveComplete,DeviceRemovePending,%
+ DevModeChange,Disconnect,DisplayChanged,Dissociate,%
+ DoGetNewFileName,Done,DonePainting,DownClick,DragDrop,DragOver,%
+ DropDown,EditProperty,EnterCell,EnterFocus,Event,ExitFocus,%
+ Expand,FootnoteActivated,FootnoteSelected,FootnoteUpdated,%
+ GotFocus,HeadClick,InfoMessage,Initialize,IniProperties,%
+ ItemActivated,ItemAdded,ItemCheck,ItemClick,ItemReloaded,%
+ ItemRemoved,ItemRenamed,ItemSeletected,KeyDown,KeyPress,KeyUp,%
+ LeaveCell,LegendActivated,LegendSelected,LegendUpdated,%
+ LinkClose,LinkError,LinkNotify,LinkOpen,Load,LostFocus,%
+ MouseDown,MouseMove,MouseUp,NodeClick,ObjectMove,%
+ OLECompleteDrag,OLEDragDrop,OLEDragOver,OLEGiveFeedback,%
+ OLESetData,OLEStartDrag,OnAddNew,OnComm,Paint,PanelClick,%
+ PanelDblClick,PathChange,PatternChange,PlotActivated,%
+ PlotSelected,PlotUpdated,PointActivated,PointLabelActivated,%
+ PointLabelSelected,PointLabelUpdated,PointSelected,%
+ PointUpdated,PowerQuerySuspend,PowerResume,PowerStatusChanged,%
+ PowerSuspend,QueryChangeConfig,QueryComplete,QueryCompleted,%
+ QueryTimeout,QueryUnload,ReadProperties,Reposition,%
+ RequestChangeFileName,RequestWriteFile,Resize,ResultsChanged,%
+ RowColChange,RowCurrencyChange,RowResize,RowStatusChanged,%
+ SelChange,SelectionChanged,SendComplete,SendProgress,%
+ SeriesActivated,SeriesSelected,SeriesUpdated,SettingChanged,%
+ SplitChange,StateChanged,StatusUpdate,SysColorsChanged,%
+ Terminate,TimeChanged,TitleActivated,TitleSelected,%
+ TitleActivated,UnboundAddData,UnboundDeleteRow,%
+ UnboundGetRelativeBookmark,UnboundReadData,UnboundWriteData,%
+ Unload,UpClick,Updated,Validate,ValidationError,WillAssociate,%
+ WillChangeData,WillDissociate,WillExecute,WillUpdateRows,%
+ WithEvents,WriteProperties},% VB-events
+ morekeywords=[4]{AppActivate,Base,Beep,Call,Case,ChDir,ChDrive,%
+ Const,Declare,DefBool,DefByte,DefCur,DefDate,DefDbl,DefDec,%
+ DefInt,DefLng,DefObj,DefSng,DefStr,Deftype,DefVar,DeleteSetting,%
+ Dim,Do,Else,ElseIf,End,Enum,Erase,Event,Exit,Explicit,FileCopy,%
+ For,ForEach,Friend,Function,Get,GoSub,GoTo,If,Implements,Kill,%
+ Let,LineInput,Lock,Lset,MkDir,Name,Next,OnError,On,Option,%
+ Private,Property,Public,Put,RaiseEvent,Randomize,ReDim,Rem,%
+ Reset,Resume,Return,RmDir,Rset,SavePicture,SaveSetting,%
+ SendKeys,SetAttr,Static,Sub,Then,Type,Unlock,Wend,While,Width,%
+ With,Write},% statements
+ sensitive=false,%
+ keywordcomment=rem,%
+ MoreSelectCharTable=\def\lst@BeginKC@{% chmod
+ \lst@ResetToken
+ \lst@BeginComment\lst@GPmode{{\lst@commentstyle}%
+ \lst@Lmodetrue\lst@modetrue}\@empty},%
+ morecomment=[l]{'},%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]",%
+ }[keywords,comments,strings,keywordcomments]
+\lst@definelanguage[ANSI]{C++}[ISO]{C++}{}%
+\lst@definelanguage[GNU]{C++}[ISO]{C++}%
+ {morekeywords={__attribute__,__extension__,__restrict,__restrict__,%
+ typeof,__typeof__},%
+ }%
+\lst@definelanguage[Visual]{C++}[ISO]{C++}%
+ {morekeywords={__asm,__based,__cdecl,__declspec,dllexport,%
+ dllimport,__except,__fastcall,__finally,__inline,__int8,__int16,%
+ __int32,__int64,naked,__stdcall,thread,__try,__leave},%
+ }%
+\lst@definelanguage[ISO]{C++}[ANSI]{C}%
+ {morekeywords={and,and_eq,asm,bad_cast,bad_typeid,bitand,bitor,bool,%
+ catch,class,compl,const_cast,delete,dynamic_cast,explicit,export,%
+ false,friend,inline,mutable,namespace,new,not,not_eq,operator,or,%
+ or_eq,private,protected,public,reinterpret_cast,static_cast,%
+ template,this,throw,true,try,typeid,type_info,typename,using,%
+ virtual,wchar_t,xor,xor_eq},%
+ }%
+%%
+%% Objective-C definition (c) 1997 Detlev Droege
+%%
+\lst@definelanguage[Objective]{C}[ANSI]{C}
+ {morekeywords={bycopy,id,in,inout,oneway,out,self,super,%
+ @class,@defs,@encode,@end,@implementation,@interface,@private,%
+ @protected,@protocol,@public,@selector},%
+ moredirectives={import}%
+ }%
+%%
+%% Handel-C definition, refer http://www.celoxica.com
+%%
+\lst@definelanguage[Handel]{C}[ANSI]{C}
+ {morekeywords={assert,chan,chanin,chanout,clock,delay,expr,external,%
+ external_divide,family,ifselect,in,inline,interface,internal,%
+ internal_divid,intwidth,let,macro,mpram,par,part,prialt,proc,ram,%
+ releasesema,reset,rom,select,sema,set,seq,shared,signal,try,%
+ reset,trysema,typeof,undefined,width,with,wom},%
+ }%
+\lst@definelanguage[ANSI]{C}%
+ {morekeywords={auto,break,case,char,const,continue,default,do,double,%
+ else,enum,extern,float,for,goto,if,int,long,register,return,%
+ short,signed,sizeof,static,struct,switch,typedef,union,unsigned,%
+ void,volatile,while},%
+ sensitive,%
+ morecomment=[s]{/*}{*/},%
+ morecomment=[l]//,% nonstandard
+ morestring=[b]",%
+ morestring=[b]',%
+ moredelim=*[directive]\#,%
+ moredirectives={define,elif,else,endif,error,if,ifdef,ifndef,line,%
+ include,pragma,undef,warning}%
+ }[keywords,comments,strings,directives]%
+%%
+%% C-Sharp definition (c) 2002 Martin Brodbeck
+%%
+\lst@definelanguage[Sharp]{C}%
+ {morekeywords={abstract,base,bool,break,byte,case,catch,char,checked,%
+ class,const,continue,decimal,default,delegate,do,double,else,%
+ enum,event,explicit,extern,false,finally,fixed,float,for,foreach,%
+ goto,if,implicit,in,int,interface,internal,is,lock,long,%
+ namespace,new,null,object,operator,out,override,params,private,%
+ protected,public,readonly,ref,return,sbyte,sealed,short,sizeof,%
+ static,string,struct,switch,this,throw,true,try,typeof,uint,%
+ ulong,unchecked,unsafe,ushort,using,virtual,void,while,%
+ as,volatile,stackalloc},% Kai K\"ohne
+ sensitive,%
+ morecomment=[s]{/*}{*/},%
+ morecomment=[l]//,%
+ morestring=[b]"
+ }[keywords,comments,strings]%
+%%
+%% csh definition (c) 1998 Kai Below
+%%
+\lst@definelanguage{csh}
+ {morekeywords={alias,awk,cat,echo,else,end,endif,endsw,exec,exit,%
+ foreach,glob,goto,history,if,logout,nice,nohup,onintr,repeat,sed,%
+ set,setenv,shift,source,switch,then,time,while,umask,unalias,%
+ unset,wait,while,@,env,argv,child,home,ignoreeof,noclobber,%
+ noglob,nomatch,path,prompt,shell,status,verbose,print,printf,%
+ sqrt,BEGIN,END},%
+ morecomment=[l]\#,%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% bash,sh definition (c) 2003 Riccardo Murri <riccardo.murri@gmx.it>
+%%
+\lst@definelanguage{bash}[]{sh}%
+ {morekeywords={alias,bg,bind,builtin,command,compgen,complete,%
+ declare,disown,enable,fc,fg,history,jobs,et,local,logout,printf,%
+ pushd,popd,select,set,suspend,shopt,source,times,type,typeset,%
+ ulimit,unalias,wait},%
+ }%
+\lst@definelanguage{sh}%
+ {morekeywords={awk,break,case,cat,cd,continue,do,done,echo,else,%
+ env,eval,exec,expr,exit,export,false,fi,for,function,getopts,%
+ hash,history,if,kill,nice,nohup,ps,pwd,read,readonly,return,%
+ sed,shift,test,then,times,trap,true,umask,unset,until,while},%
+ morecomment=[l]\#,%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+\lst@definelanguage[90]{Fortran}[95]{Fortran}{}
+\lst@definelanguage[95]{Fortran}[77]{Fortran}%
+ {deletekeywords=SAVE,%
+ morekeywords={ACTION,ADVANCE,ALLOCATE,ALLOCATABLE,ASSIGNMENT,CASE,%
+ CONTAINS,CYCLE,DEALLOCATE,DEFAULT,DELIM,EXIT,INCLUDE,IN,NONE,IN,%
+ OUT,INTENT,INTERFACE,IOLENGTH,KIND,LEN,MODULE,NAME,NAMELIST,NMT,%
+ NULLIFY,ONLY,OPERATOR,OPTIONAL,OUT,PAD,POINTER,POSITION,PRIVATE,%
+ PUBLIC,READWRITE,RECURSIVE,RESULT,SELECT,SEQUENCE,SIZE,STAT,%
+ TARGET,USE,WHERE,WHILE,BLOCKDATA,DOUBLEPRECISION,ELSEIF,%
+ ENDBLOCKDATA,ENDDO,ENDFILE,ENDFUNCTION,ENDIF,ENDINTERFACE,%
+ ENDMODULE,ENDPROGRAM,ENDSELECT,ENDSUBROUTINE,ENDTYPE,ENDWHERE,%
+ GOTO,INOUT,SELECTCASE},%
+ deletecomment=[f],% no fixed comment line: 1998 Magne Rudshaug
+ morecomment=[l]!%
+ }%
+\lst@definelanguage[77]{Fortran}%
+ {morekeywords={ACCESS,ASSIGN,BACKSPACE,BLANK,BLOCK,CALL,CHARACTER,%
+ CLOSE,COMMON,COMPLEX,CONTINUE,DATA,DIMENSION,DIRECT,DO,DOUBLE,%
+ ELSE,END,ENTRY,EOF,EQUIVALENCE,ERR,EXIST,EXTERNAL,FILE,FMT,FORM,%
+ FORMAT,FORMATTED,FUNCTION,GO,TO,IF,IMPLICIT,INQUIRE,INTEGER,%
+ INTRINSIC,IOSTAT,LOGICAL,NAMED,NEXTREC,NUMBER,OPEN,OPENED,%
+ PARAMETER,PAUSE,PRECISION,PRINT,PROGRAM,READ,REAL,REC,RECL,%
+ RETURN,REWIND,SEQUENTIAL,STATUS,STOP,SUBROUTINE,THEN,TYPE,%
+ UNFORMATTED,UNIT,WRITE,SAVE},%
+ sensitive=f,%% not Fortran standard %%
+ morecomment=[f]*,%
+ morecomment=[f]C,%
+ morecomment=[f]c,%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+\lst@definelanguage{HTML}%
+ {morekeywords={A,ABBR,ACRONYM,ADDRESS,APPLET,AREA,B,BASE,BASEFONT,%
+ BDO,BIG,BLOCKQUOTE,BODY,BR,BUTTON,CAPTION,CENTER,CITE,CODE,COL,%
+ COLGROUP,DD,DEL,DFN,DIR,DIV,DL,DOCTYPE,DT,EM,FIELDSET,FONT,FORM,%
+ FRAME,FRAMESET,HEAD,HR,H1,H2,H3,H4,H5,H6,HTML,I,IFRAME,IMG,INPUT,%
+ INS,ISINDEX,KBD,LABEL,LEGEND,LH,LI,LINK,LISTING,MAP,META,MENU,%
+ NOFRAMES,NOSCRIPT,OBJECT,OPTGROUP,OPTION,P,PARAM,PLAINTEXT,PRE,%
+ OL,Q,S,SAMP,SCRIPT,SELECT,SMALL,SPAN,STRIKE,STRING,STRONG,STYLE,%
+ SUB,SUP,TABLE,TBODY,TD,TEXTAREA,TFOOT,TH,THEAD,TITLE,TR,TT,U,UL,%
+ VAR,XMP,%
+ accesskey,action,align,alink,alt,archive,axis,background,bgcolor,%
+ border,cellpadding,cellspacing,charset,checked,cite,class,classid,%
+ code,codebase,codetype,color,cols,colspan,content,coords,data,%
+ datetime,defer,disabled,dir,event,error,for,frameborder,headers,%
+ height,href,hreflang,hspace,http-equiv,id,ismap,label,lang,link,%
+ longdesc,marginwidth,marginheight,maxlength,media,method,multiple,%
+ name,nohref,noresize,noshade,nowrap,onblur,onchange,onclick,%
+ ondblclick,onfocus,onkeydown,onkeypress,onkeyup,onload,onmousedown,%
+ profile,readonly,onmousemove,onmouseout,onmouseover,onmouseup,%
+ onselect,onunload,rel,rev,rows,rowspan,scheme,scope,scrolling,%
+ selected,shape,size,src,standby,style,tabindex,text,title,type,%
+ units,usemap,valign,value,valuetype,vlink,vspace,width,xmlns},%
+ tag=**[s]<>,%
+ sensitive=f,%
+ morestring=[d]",% ??? doubled
+ MoreSelectCharTable=%
+ \lst@CArgX--\relax\lst@DefDelimB{}{}%
+ {\ifnum\lst@mode=\lst@tagmode\else
+ \expandafter\@gobblethree
+ \fi}%
+ \lst@BeginComment\lst@commentmode{{\lst@commentstyle}}%
+ \lst@CArgX--\relax\lst@DefDelimE{}{}{}%
+ \lst@EndComment\lst@commentmode
+ }[keywords,comments,strings,html]%
+%%
+%% AspectJ definition (c) Robert Wenner
+%%
+\lst@definelanguage[AspectJ]{Java}[]{Java}%
+ {morekeywords={%
+ adviceexecution,after,args,around,aspect,aspectOf,before,%
+ call,cflow,cflowbelow,%
+ execution,get,handler,if,initialization,issingleton,pointcut,%
+ percflow,percflowbelow,perthis,pertarget,preinitialization,%
+ privileged,proceed,returning,set,staticinitialization,strictfp,%
+ target,this,thisEnclosingJoinPoint,thisJoinPoint,throwing,%
+ within,withincode},%
+ MoreSelectCharTable=%
+ \lst@DefSaveDef{`.}\lst@umdot{\lst@umdot\global\let\lst@derefop\@empty}%
+ \ifx\lst@derefinstalled\@empty\else
+ \global\let\lst@derefinstalled\@empty
+\lst@AddToHook{Output}%
+{\lst@ifkeywords
+ \ifx\lst@derefop\@empty
+ \global\let\lst@derefop\relax
+ \ifx\lst@thestyle\lst@gkeywords@sty
+ \ifx\lst@currstyle\relax
+ \let\lst@thestyle\lst@identifierstyle
+ \else
+ \let\lst@thestyle\lst@currstyle
+ \fi
+ \fi
+ \fi
+ \fi}
+\lst@AddToHook{BOL}{\global\let\lst@derefop\relax}%
+\lst@AddTo\lst@ProcessSpace{\global\let\lst@derefop\relax}%
+ \fi
+ }%
+\lst@definelanguage{Java}%
+ {morekeywords={abstract,boolean,break,byte,case,catch,char,class,%
+ const,continue,default,do,double,else,extends,false,final,%
+ finally,float,for,goto,if,implements,import,instanceof,int,%
+ interface,label,long,native,new,null,package,private,protected,%
+ public,return,short,static,super,switch,synchronized,this,throw,%
+ throws,transient,true,try,void,volatile,while},%
+ sensitive,%
+ morecomment=[l]//,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]",%
+ morestring=[b]',%
+ }[keywords,comments,strings]%
+%%
+%% ByteCodeJava definition (c) 2004 Martine Gautier
+%%
+\lst@definelanguage{JVMIS}%
+ {morekeywords={aaload,astore,aconst_null,aload,aload_0,aload_1,%
+ aload_2,aload_3,anewarray,areturn,arraylength,astore,astore_0,%
+ astore_1,astore_2,astore_3,athrow,baload,bastore,bipush,caload,%
+ castore,checkcast,d2f,d2i,d2l,dadd,daload,dastore,dcmpg,dcmpl,%
+ dconst_0,dconst_1,ddiv,dload,dload_0,dload_1,dload_2,dload_3,%
+ dmul,dneg,drem,dreturn,dstore,dstore_0,dstore_1,dstore_2,%
+ dstore_3,dsub,dup,dup_x1,dup_x2,dup2,dup2_x1,dup2_x2,f2d,%
+ f2i,f2l,fadd,faload,fastore,fcmpg,fcmpl,fconst_0,fconst_1,%
+ fconst_2,fdiv,fload,fload_0,fload_1,fload_2,fload_3,fmul,%
+ fneg,frem,freturn,fstore,fstore_0,fstore_1,fstore_2,fstore_3,%
+ fsub,getfield,getstatic,goto,goto_w,i2b,i2c,i2d,i2f,i2l,i2s,%
+ iadd,iaload,iand,iastore,iconst_0,iconst_1,iconst_2,iconst_3,%
+ iconst_4,iconst_5,idiv,if_acmpeq,if_acmpne,if_icmpeq,if_icmpne,%
+ if_icmplt,if_cmpge,if_cmpgt,if_cmple,ifeq,ifne,iflt,ifge,ifgt,%
+ ifle,ifnonnull,ifnull,iinc,iload,iload_0,iload_1,iload_2,%
+ iload_3,imul,ineg,instanceof,invokeinterface,invokespecial,%
+ invokestatic,invokevirtual,ior,irem,ireturn,ishl,ishr,istore,%
+ istore_0,istore_1,istore_2,istore_3,isub,iushr,ixor,jsr,jsr_w,%
+ l2d,l2f,l2i,ladd,laload,land,lastore,lcmp,lconst_0,lconst_1,%
+ ldc,ldc_w,ldc2_w,ldiv,lload,lload_0,lload_1,lload_2,lload_3,%
+ lmul,lneg,lookupswitch,lor,lrem,lreturn,lshl,lshr,lstore,%
+ lstore_0,lstore_1,lstore_2,lstore_3,lsub,lushr,lxor,%
+ monitorenter,monitorexit,multianewarray,new,newarray,nop,pop,%
+ pop2,putfield,putstatic,ret,return,saload,sastore,sipush,swap,%
+ tableswitch,wide,limit,locals,stack},%
+ }[keywords]%
+\lst@definelanguage{Matlab}%
+ {morekeywords={gt,lt,gt,lt,amp,abs,acos,acosh,acot,acoth,acsc,acsch,%
+ all,angle,ans,any,asec,asech,asin,asinh,atan,atan2,atanh,auread,%
+ auwrite,axes,axis,balance,bar,bessel,besselk,bessely,beta,%
+ betainc,betaln,blanks,bone,break,brighten,capture,cart2pol,%
+ cart2sph,caxis,cd,cdf2rdf,cedit,ceil,chol,cla,clabel,clc,clear,%
+ clf,clock,close,colmmd,Colon,colorbar,colormap,ColorSpec,colperm,%
+ comet,comet3,compan,compass,computer,cond,condest,conj,contour,%
+ contour3,contourc,contrast,conv,conv2,cool,copper,corrcoef,cos,%
+ cosh,cot,coth,cov,cplxpair,cputime,cross,csc,csch,csvread,%
+ csvwrite,cumprod,cumsum,cylinder,date,dbclear,dbcont,dbdown,%
+ dbquit,dbstack,dbstatus,dbstep,dbstop,dbtype,dbup,ddeadv,ddeexec,%
+ ddeinit,ddepoke,ddereq,ddeterm,ddeunadv,deblank,dec2hex,deconv,%
+ del2,delete,demo,det,diag,diary,diff,diffuse,dir,disp,dlmread,%
+ dlmwrite,dmperm,dot,drawnow,echo,eig,ellipj,ellipke,else,elseif,%
+ end,engClose,engEvalString,engGetFull,engGetMatrix,engOpen,%
+ engOutputBuffer,engPutFull,engPutMatrix,engSetEvalCallback,%
+ engSetEvalTimeout,engWinInit,eps,erf,erfc,erfcx,erfinv,error,%
+ errorbar,etime,etree,eval,exist,exp,expint,expm,expo,eye,fclose,%
+ feather,feof,ferror,feval,fft,fft2,fftshift,fgetl,fgets,figure,%
+ fill,fill3,filter,filter2,find,findstr,finite,fix,flag,fliplr,%
+ flipud,floor,flops,fmin,fmins,fopen,for,format,fplot,fprintf,%
+ fread,frewind,fscanf,fseek,ftell,full,function,funm,fwrite,fzero,%
+ gallery,gamma,gammainc,gammaln,gca,gcd,gcf,gco,get,getenv,%
+ getframe,ginput,global,gplot,gradient,gray,graymon,grid,griddata,%
+ gtext,hadamard,hankel,help,hess,hex2dec,hex2num,hidden,hilb,hist,%
+ hold,home,hostid,hot,hsv,hsv2rgb,if,ifft,ifft2,imag,image,%
+ imagesc,Inf,info,input,int2str,interp1,interp2,interpft,inv,%
+ invhilb,isempty,isglobal,ishold,isieee,isinf,isletter,isnan,%
+ isreal,isspace,issparse,isstr,jet,keyboard,kron,lasterr,lcm,%
+ legend,legendre,length,lin2mu,line,linspace,load,log,log10,log2,%
+ loglog,logm,logspace,lookfor,lower,ls,lscov,lu,magic,matClose,%
+ matDeleteMatrix,matGetDir,matGetFp,matGetFull,matGetMatrix,%
+ matGetNextMatrix,matGetString,matlabrc,matlabroot,matOpen,%
+ matPutFull,matPutMatrix,matPutString,max,mean,median,menu,mesh,%
+ meshc,meshgrid,meshz,mexAtExit,mexCallMATLAB,mexdebug,%
+ mexErrMsgTxt,mexEvalString,mexFunction,mexGetFull,mexGetMatrix,%
+ mexGetMatrixPtr,mexPrintf,mexPutFull,mexPutMatrix,mexSetTrapFlag,%
+ min,more,movie,moviein,mu2lin,mxCalloc,mxCopyCharacterToPtr,%
+ mxCopyComplex16ToPtr,mxCopyInteger4ToPtr,mxCopyPtrToCharacter,%
+ mxCopyPtrToComplex16,mxCopyPtrToInteger4,mxCopyPtrToReal8,%
+ mxCopyReal8ToPtr,mxCreateFull,mxCreateSparse,mxCreateString,%
+ mxFree,mxFreeMatrix,mxGetIr,mxGetJc,mxGetM,mxGetN,mxGetName,%
+ mxGetNzmax,mxGetPi,mxGetPr,mxGetScalar,mxGetString,mxIsComplex,%
+ mxIsFull,mxIsNumeric,mxIsSparse,mxIsString,mxIsTypeDouble,%
+ mxSetIr,mxSetJc,mxSetM,mxSetN,mxSetName,mxSetNzmax,mxSetPi,%
+ mxSetPr,NaN,nargchk,nargin,nargout,newplot,nextpow2,nnls,nnz,%
+ nonzeros,norm,normest,null,num2str,nzmax,ode23,ode45,orient,orth,%
+ pack,pascal,patch,path,pause,pcolor,pi,pink,pinv,plot,plot3,%
+ pol2cart,polar,poly,polyder,polyeig,polyfit,polyval,polyvalm,%
+ pow2,print,printopt,prism,prod,pwd,qr,qrdelete,qrinsert,quad,%
+ quad8,quit,quiver,qz,rand,randn,randperm,rank,rat,rats,rbbox,%
+ rcond,real,realmax,realmin,refresh,rem,reset,reshape,residue,%
+ return,rgb2hsv,rgbplot,rootobject,roots,rose,rosser,rot90,rotate,%
+ round,rref,rrefmovie,rsf2csf,save,saxis,schur,sec,sech,semilogx,%
+ semilogy,set,setstr,shading,sign,sin,sinh,size,slice,sort,sound,%
+ spalloc,sparse,spaugment,spconvert,spdiags,specular,speye,spfun,%
+ sph2cart,sphere,spinmap,spline,spones,spparms,sprandn,sprandsym,%
+ sprank,sprintf,spy,sqrt,sqrtm,sscanf,stairs,startup,std,stem,%
+ str2mat,str2num,strcmp,strings,strrep,strtok,subplot,subscribe,%
+ subspace,sum,surf,surface,surfc,surfl,surfnorm,svd,symbfact,%
+ symmmd,symrcm,tan,tanh,tempdir,tempname,terminal,text,tic,title,%
+ toc,toeplitz,trace,trapz,tril,triu,type,uicontrol,uigetfile,%
+ uimenu,uiputfile,unix,unwrap,upper,vander,ver,version,view,%
+ viewmtx,waitforbuttonpress,waterfall,wavread,wavwrite,what,%
+ whatsnew,which,while,white,whitebg,who,whos,wilkinson,wk1read,%
+ wk1write,xlabel,xor,ylabel,zeros,zlabel,zoom},%
+ sensitive,%
+ morecomment=[l]\%,%
+ morestring=[m]'%
+ }[keywords,comments,strings]%
+%%
+%% Mathematica definitions (c) 1999 Michael Wiese
+%%
+\lst@definelanguage[3.0]{Mathematica}[1.0]{Mathematica}%
+ {morekeywords={Abort,AbortProtect,AbsoluteDashing,AbsolutePointSize,%
+ AbsoluteThickness,AbsoluteTime,AccountingFormAiry,AiPrime,AiryBi,%
+ AiryBiPrime,Alternatives,AnchoredSearch,AxesEdge,AxesOrigin,%
+ AxesStyle,Background,BetaRegularized,BoxStyle,C,CheckAbort,%
+ Circle,ClebschGordan,CMYKColor,ColorFunction,ColorOutput,Compile,%
+ Compiled,CompiledFunction,ComplexExpand,ComposeList,Composition,%
+ ConstrainedMax,ConstrainedMin,Contexts,ContextToFilename,%
+ ContourLines,Contours,ContourShading,ContourSmoothing,%
+ ContourStyle,CopyDirectory,CopyFile,CosIntegral,CreateDirectory,%
+ Cuboid,Date,DeclarePackage,DefaultColor,DefaultFont,Delete,%
+ DeleteCases,DeleteDirectory,DeleteFile,Dialog,DialogIndent,%
+ DialogProlog,DialogSymbols,DigitQ,Directory,DirectoryStack,Disk,%
+ Dispatch,DownValues,DSolve,Encode,Epilog,Erfc,Evaluate,%
+ ExponentFunction,FaceGrids,FileByteCount,FileDate,FileNames,%
+ FileType,Find,FindList,FixedPointList,FlattenAt,Fold,FoldList,%
+ Frame,FrameLabel,FrameStyle,FrameTicks,FromCharacterCode,%
+ FromDate,FullGraphics,FullOptions,GammaRegularized,%
+ GaussianIntegers,GraphicsArray,GraphicsSpacing,GridLines,%
+ GroebnerBasis,Heads,HeldPart,HomeDirectory,Hue,IgnoreCases,%
+ InputStream,Install,InString,IntegerDigits,InterpolatingFunction,%
+ InterpolatingPolynomial,Interpolation,Interrupt,InverseFunction,%
+ InverseFunctions,JacobiZeta,LetterQ,LinearProgramming,ListPlay,%
+ LogGamma,LowerCaseQ,MachineNumberQ,MantissaExponent,MapIndexed,%
+ MapThread,MatchLocalNames,MatrixExp,MatrixPower,MeshRange,%
+ MeshStyle,MessageList,Module,NDSolve,NSolve,NullRecords,%
+ NullWords,NumberFormat,NumberPadding,NumberSigns,OutputStream,%
+ PaddedForm,ParentDirectory,Pause,Play,PlayRange,PlotRegion,%
+ PolygonIntersections,PolynomialGCD,PolynomialLCM,PolynomialMod,%
+ PostScript,PowerExpand,PrecisionGoal,PrimePi,Prolog,%
+ QRDecomposition,Raster,RasterArray,RealDigits,Record,RecordLists,%
+ RecordSeparators,ReleaseHold,RenameDirectory,RenameFile,%
+ ReplaceHeldPart,ReplacePart,ResetDirectory,Residue,%
+ RiemannSiegelTheta,RiemannSiegelZ,RotateLabel,SameTest,%
+ SampleDepth,SampledSoundFunction,SampledSoundList,SampleRate,%
+ SchurDecomposition,SessionTime,SetAccuracy,SetDirectory,%
+ SetFileDate,SetPrecision,SetStreamPosition,Shallow,SignPadding,%
+ SinIntegral,SixJSymbol,Skip,Sound,SpellingCorrection,%
+ SphericalRegion,Stack,StackBegin,StackComplete,StackInhibit,%
+ StreamPosition,Streams,StringByteCount,StringConversion,%
+ StringDrop,StringInsert,StringPosition,StringReplace,%
+ StringReverse,StringTake,StringToStream,SurfaceColor,%
+ SyntaxLength,SyntaxQ,TableAlignments,TableDepth,%
+ TableDirections,TableHeadings,TableSpacing,ThreeJSymbol,TimeUsed,%
+ TimeZone,ToCharacterCode,ToDate,ToHeldExpression,TokenWords,%
+ ToLowerCase,ToUpperCase,Trace,TraceAbove,TraceBackward,%
+ TraceDepth,TraceDialog,TraceForward,TraceOff,TraceOn,%
+ TraceOriginal,TracePrint,TraceScan,Trig,Unevaluated,Uninstall,%
+ UnsameQ,UpperCaseQ,UpValues,ViewCenter,ViewVertical,With,Word,%
+ WordSearch,WordSeparators},%
+ morendkeywords={Stub,Temporary,$Aborted,$BatchInput,$BatchOutput,%
+ $CreationDate,$DefaultFont,$DumpDates,$DumpSupported,$Failed,%
+ $Input,$Inspector,$IterationLimit,$Language,$Letters,$Linked,%
+ $LinkSupported,$MachineEpsilon,$MachineID,$MachineName,%
+ $MachinePrecision,$MachineType,$MaxMachineNumber,$MessageList,%
+ $MessagePrePrint,$MinMachineNumber,$ModuleNumber,$NewMessage,%
+ $NewSymbol,$Notebooks,$OperatingSystem,$Packages,$PipeSupported,%
+ $PreRead,$ReleaseNumber,$SessionID,$SoundDisplayFunction,%
+ $StringConversion,$StringOrder,$SyntaxHandler,$TimeUnit,%
+ $VersionNumber}%
+ }%
+\lst@definelanguage[1.0]{Mathematica}%
+ {morekeywords={Abs,Accuracy,AccurayGoal,AddTo,AiryAi,AlgebraicRules,%
+ AmbientLight,And,Apart,Append,AppendTo,Apply,ArcCos,ArcCosh,%
+ ArcCot,ArcCoth,ArcCsc,ArcCsch,ArcSec,ArcSech,ArcSin,ArcSinh,%
+ ArcTan,ArcTanh,Arg,ArithmeticGeometricMean,Array,AspectRatio,%
+ AtomQ,Attributes,Axes,AxesLabel,BaseForm,Begin,BeginPackage,%
+ BernoulliB,BesselI,BesselJ,BesselK,BesselY,Beta,Binomial,Blank,%
+ BlankNullSequence,BlankSequence,Block,Boxed,BoxRatios,Break,Byte,%
+ ByteCount,Cancel,Cases,Catch,Ceiling,CForm,Character,Characters,%
+ ChebyshevT,ChebyshevU,Check,Chop,Clear,ClearAll,ClearAttributes,%
+ ClipFill,Close,Coefficient,CoefficientList,Collect,ColumnForm,%
+ Complement,Complex,CompoundExpression,Condition,Conjugate,%
+ Constants,Context,Continuation,Continue,ContourGraphics,%
+ ContourPlot,Cos,Cosh,Cot,Coth,Count,Csc,Csch,Cubics,Cyclotomic,%
+ D,Dashing,Decompose,Decrement,Default,Definition,Denominator,%
+ DensityGraphics,DensityPlot,Depth,Derivative,Det,DiagonalMatrix,%
+ DigitBlock,Dimensions,DirectedInfinity,Display,DisplayFunction,%
+ Distribute,Divide,DivideBy,Divisors,DivisorSigma,Do,Dot,Drop,Dt,%
+ Dump,EdgeForm,Eigensystem,Eigenvalues,Eigenvectors,Eliminate,%
+ EllipticE,EllipticExp,EllipticF,EllipticK,EllipticLog,EllipticPi,%
+ EllipticTheta,End,EndPackage,EngineeringForm,Environment,Equal,%
+ Erf,EulerE,EulerPhi,EvenQ,Exit,Exp,Expand,ExpandAll,%
+ ExpandDenominator,ExpandNumerator,ExpIntegralE,ExpIntegralEi,%
+ Exponent,Expression,ExtendedGCD,FaceForm,Factor,FactorComplete,%
+ Factorial,Factorial2,FactorInteger,FactorList,FactorSquareFree,%
+ FactorSquareFreeList,FactorTerms,FactorTermsList,FindMinimum,%
+ FindRoot,First,Fit,FixedPoint,Flatten,Floor,FontForm,For,Format,%
+ FormatType,FortranForm,Fourier,FreeQ,FullDefinition,FullForm,%
+ Function,Gamma,GCD,GegenbauerC,General,Get,Goto,Graphics,%
+ Graphics3D,GrayLevel,Greater,GreaterEqual,Head,HermiteH,%
+ HiddenSurface,Hold,HoldForm,Hypergeometric0F1, Hypergeometric1F1,%
+ Hypergeometric2F1,HypergeometricU,Identity,IdentityMatrix,If,Im,%
+ Implies,In,Increment,Indent,Infix,Information,Inner,Input,%
+ InputForm,InputString,Insert,Integer,IntegerQ,Integrate,%
+ Intersection,Inverse,InverseFourier,InverseJacobiSN,%
+ InverseSeries,JacobiAmplitude,JacobiP,JacobiSN,JacobiSymbol,Join,%
+ Label,LaguerreL,Last,LatticeReduce,LCM,LeafCount,LegendreP,%
+ LegendreQ,LegendreType,Length,LerchPhi,Less,LessEqual,Level,%
+ Lighting,LightSources,Limit,Line,LinearSolve,LineBreak,List,%
+ ListContourPlot,ListDensityPlot,ListPlot,ListPlot3D,Literal,Log,%
+ LogicalExpand,LogIntegral,MainSolve,Map,MapAll,MapAt,MatchQ,%
+ MatrixForm,MatrixQ,Max,MaxBend,MaxMemoryUsed,MemberQ,%
+ MemoryConstrained,MemoryInUse,Mesh,Message,MessageName,Messages,%
+ Min,Minors,Minus,Mod,Modulus,MoebiusMu,Multinomial,N,NameQ,Names,%
+ NBernoulliB,Needs,Negative,Nest,NestList,NIntegrate,%
+ NonCommutativeMultiply,NonConstants,NonNegative,Normal,Not,%
+ NProduct,NSum,NullSpace,Number,NumberForm,NumberPoint,NumberQ,%
+ NumberSeparator,Numerator,O,OddQ,Off,On,OpenAppend,OpenRead,%
+ OpenTemporary,OpenWrite,Operate,Optional,Options,Or,Order,%
+ OrderedQ,Out,Outer,OutputForm,PageHeight,PageWidth,%
+ ParametricPlot,ParametricPlot3D,Part,Partition,PartitionsP,%
+ PartitionsQ,Pattern,Permutations,Plot,Plot3D,PlotDivision,%
+ PlotJoined,PlotLabel,PlotPoints,PlotRange,PlotStyle,Pochhammer,%
+ Plus,Point,PointSize,PolyGamma,Polygon,PolyLog,PolynomialQ,%
+ PolynomialQuotient,PolynomialRemainder,Position,Positive,Postfix,%
+ Power,PowerMod,PrecedenceForm,Precision,PreDecrement,Prefix,%
+ PreIncrement,Prepend,PrependTo,Prime,PrimeQ,Print,PrintForm,%
+ Product,Protect,PseudoInverse,Put,PutAppend,Quartics,Quit,%
+ Quotient,Random,Range,Rational,Rationalize,Raw,Re,Read,ReadList,%
+ Real,Rectangle,Reduce,Remove,RenderAll,Repeated,RepeatedNull,%
+ Replace,ReplaceAll,ReplaceRepeated,Rest,Resultant,Return,Reverse,%
+ RGBColor,Roots,RotateLeft,RotateRight,Round,RowReduce,Rule,%
+ RuleDelayed,Run,RunThrough,SameQ,Save,Scaled,Scan,ScientificForm,%
+ Sec,Sech,SeedRandom,Select,Sequence,SequenceForm,Series,%
+ SeriesData,Set,SetAttributes,SetDelayed,SetOptions,Shading,Share,%
+ Short,Show,Sign,Signature,Simplify,Sin,SingularValues,Sinh,%
+ Skeleton,Slot,SlotSequence,Solve,SolveAlways,Sort,%
+ SphericalHarmonicY,Splice,Sqrt,StirlingS1,StirlingS2,String,%
+ StringBreak,StringForm,StringJoin,StringLength,StringMatchQ,%
+ StringSkeleton,Subscript,Subscripted,Subtract,SubtractForm,Sum,%
+ Superscript,SurfaceGraphics,Switch,Symbol,Table,TableForm,TagSet,%
+ TagSetDelayed,TagUnset,Take,Tan,Tanh,ToString,TensorRank,TeXForm,%
+ Text,TextForm,Thickness,Thread,Through,Throw,Ticks,%
+ TimeConstrained,Times,TimesBy,Timing,ToExpression,Together,%
+ ToRules,ToString,TotalHeight,TotalWidth,Transpose,TreeForm,TrueQ,%
+ Unequal,Union,Unique,Unprotect,Unset,Update,UpSet,UpSetDelayed,%
+ ValueQ,Variables,VectorQ,ViewPoint,WeierstrassP,%
+ WeierstrassPPrime,Which,While,WorkingPrecision,Write,WriteString,%
+ Xor,ZeroTest,Zeta},%
+ morendkeywords={All,Automatic,Catalan,ComplexInfinity,Constant,%
+ Degree,E,EndOfFile,EulerGamma,False,Flat,GoldenRatio,HoldAll,%
+ HoldFirst,HoldRest,I,Indeterminate,Infinity,Listable,Locked,%
+ Modular,None,Null,OneIdentity,Orderless,Pi,Protected,%
+ ReadProtected,True,$CommandLine,$Context,$ContextPath,$Display,%
+ $DisplayFunction,$Echo,$Epilog,$IgnoreEOF,$Line,$Messages,%
+ $Output,$Path,$Post,$Pre,$PrePrint,$RecursionLimit,$System,%
+ $Urgent,$Version},%
+ sensitive,%
+ morecomment=[s]{(*}{*)},%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% Octave definition (c) 2001,2002 Ulrich G. Wortmann
+%%
+\lst@definelanguage{Octave}%
+ {morekeywords={gt,lt,gt,lt,amp,abs,acos,acosh,acot,acoth,acsc,acsch,%
+ all,angle,ans,any,asec,asech,asin,asinh,atan,atan2,atanh,auread,%
+ auwrite,axes,axis,balance,bar,bessel,besselk,bessely,beta,%
+ betainc,betaln,blanks,bone,break,brighten,capture,cart2pol,%
+ cart2sph,caxis,cd,cdf2rdf,cedit,ceil,chol,cla,clabel,clc,clear,%
+ clf,clock,close,colmmd,Colon,colorbar,colormap,ColorSpec,colperm,%
+ comet,comet3,compan,compass,computer,cond,condest,conj,contour,%
+ contour3,contourc,contrast,conv,conv2,cool,copper,corrcoef,cos,%
+ cosh,cot,coth,cov,cplxpair,cputime,cross,csc,csch,csvread,%
+ csvwrite,cumprod,cumsum,cylinder,date,dbclear,dbcont,dbdown,%
+ dbquit,dbstack,dbstatus,dbstep,dbstop,dbtype,dbup,ddeadv,ddeexec,%
+ ddeinit,ddepoke,ddereq,ddeterm,ddeunadv,deblank,dec2hex,deconv,%
+ del2,delete,demo,det,diag,diary,diff,diffuse,dir,disp,dlmread,%
+ dlmwrite,dmperm,dot,drawnow,echo,eig,ellipj,ellipke,else,elseif,%
+ end,engClose,engEvalString,engGetFull,engGetMatrix,engOpen,%
+ engOutputBuffer,engPutFull,engPutMatrix,engSetEvalCallback,%
+ engSetEvalTimeout,engWinInit,eps,erf,erfc,erfcx,erfinv,%
+ errorbar,etime,etree,eval,exist,exp,expint,expm,expo,eye,fclose,%
+ feather,feof,ferror,feval,fft,fft2,fftshift,fgetl,fgets,figure,%
+ fill,fill3,filter,filter2,find,findstr,finite,fix,flag,fliplr,%
+ flipud,floor,flops,fmin,fmins,fopen,for,format,fplot,fprintf,%
+ fread,frewind,fscanf,fseek,ftell,full,function,funm,fwrite,fzero,%
+ gallery,gamma,gammainc,gammaln,gca,gcd,gcf,gco,get,getenv,%
+ getframe,ginput,global,gplot,gradient,gray,graymon,grid,griddata,%
+ gtext,hadamard,hankel,help,hess,hex2dec,hex2num,hidden,hilb,hist,%
+ hold,home,hostid,hot,hsv,hsv2rgb,if,ifft,ifft2,imag,image,%
+ imagesc,Inf,info,input,int2str,interp1,interp2,interpft,inv,%
+ invhilb,isempty,isglobal,ishold,isieee,isinf,isletter,isnan,%
+ isreal,isspace,issparse,isstr,jet,keyboard,kron,lasterr,lcm,%
+ legend,legendre,length,lin2mu,line,linspace,load,log,log10,log2,%
+ loglog,logm,logspace,lookfor,lower,ls,lscov,lu,magic,matClose,%
+ matDeleteMatrix,matGetDir,matGetFp,matGetFull,matGetMatrix,%
+ matGetNextMatrix,matGetString,matlabrc,matlabroot,matOpen,%
+ matPutFull,matPutMatrix,matPutString,max,mean,median,menu,mesh,%
+ meshc,meshgrid,meshz,mexAtExit,mexCallMATLAB,mexdebug,%
+ mexErrMsgTxt,mexEvalString,mexFunction,mexGetFull,mexGetMatrix,%
+ mexGetMatrixPtr,mexPrintf,mexPutFull,mexPutMatrix,mexSetTrapFlag,%
+ min,more,movie,moviein,mu2lin,mxCalloc,mxCopyCharacterToPtr,%
+ mxCopyComplex16ToPtr,mxCopyInteger4ToPtr,mxCopyPtrToCharacter,%
+ mxCopyPtrToComplex16,mxCopyPtrToInteger4,mxCopyPtrToReal8,%
+ mxCopyReal8ToPtr,mxCreateFull,mxCreateSparse,mxCreateString,%
+ mxFree,mxFreeMatrix,mxGetIr,mxGetJc,mxGetM,mxGetN,mxGetName,%
+ mxGetNzmax,mxGetPi,mxGetPr,mxGetScalar,mxGetString,mxIsComplex,%
+ mxIsFull,mxIsNumeric,mxIsSparse,mxIsString,mxIsTypeDouble,%
+ mxSetIr,mxSetJc,mxSetM,mxSetN,mxSetName,mxSetNzmax,mxSetPi,%
+ mxSetPr,NaN,nargchk,nargin,nargout,newplot,nextpow2,nnls,nnz,%
+ nonzeros,norm,normest,null,num2str,nzmax,ode23,ode45,orient,orth,%
+ pack,pascal,patch,path,pause,pcolor,pi,pink,pinv,plot,plot3,%
+ pol2cart,polar,poly,polyder,polyeig,polyfit,polyval,polyvalm,%
+ pow2,print,printopt,prism,prod,pwd,qr,qrdelete,qrinsert,quad,%
+ quad8,quit,quiver,qz,rand,randn,randperm,rank,rat,rats,rbbox,%
+ rcond,real,realmax,realmin,refresh,rem,reset,reshape,residue,%
+ return,rgb2hsv,rgbplot,rootobject,roots,rose,rosser,rot90,rotate,%
+ round,rref,rrefmovie,rsf2csf,save,saxis,schur,sec,sech,semilogx,%
+ semilogy,set,setstr,shading,sign,sin,sinh,size,slice,sort,sound,%
+ spalloc,sparse,spaugment,spconvert,spdiags,specular,speye,spfun,%
+ sph2cart,sphere,spinmap,spline,spones,spparms,sprandn,sprandsym,%
+ sprank,sprintf,spy,sqrt,sqrtm,sscanf,stairs,startup,std,stem,%
+ str2mat,str2num,strcmp,strings,strrep,strtok,subplot,subscribe,%
+ subspace,sum,surf,surface,surfc,surfl,surfnorm,svd,symbfact,%
+ symmmd,symrcm,tan,tanh,tempdir,tempname,terminal,text,tic,title,%
+ toc,toeplitz,trace,trapz,tril,triu,type,uicontrol,uigetfile,%
+ uimenu,uiputfile,unix,unwrap,upper,vander,ver,version,view,%
+ 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},%
+ sensitive=f,%
+ morecomment=[l]\#,%
+ morecomment=[l]\#\#,%
+ morestring=[m]',%
+ morestring=[m]"%
+ }[keywords,comments,strings]%
+\lst@definelanguage[XSC]{Pascal}[Standard]{Pascal}
+ {deletekeywords={alfa,byte,pack,unpack},% 1998 Andreas Stephan
+ morekeywords={dynamic,external,forward,global,module,nil,operator,%
+ priority,sum,type,use,dispose,mark,page,release,cimatrix,%
+ cinterval,civector,cmatrix,complex,cvector,dotprecision,imatrix,%
+ interval,ivector,rmatrix,rvector,string,im,inf,re,sup,chr,comp,%
+ eof,eoln,expo,image,ival,lb,lbound,length,loc,mant,maxlength,odd,%
+ ord,pos,pred,round,rval,sign,substring,succ,trunc,ub,ubound}%
+ }%
+\lst@definelanguage[Borland6]{Pascal}[Standard]{Pascal}
+ {morekeywords={asm,constructor,destructor,implementation,inline,%
+ interface,nil,object,shl,shr,string,unit,uses,xor},%
+ morendkeywords={Abs,Addr,ArcTan,Chr,Concat,Copy,Cos,CSeg,DiskFree,%
+ DiskSize,DosExitCode,DosVersion,DSeg,EnvCount,EnvStr,Eof,Eoln,%
+ Exp,FExpand,FilePos,FileSize,Frac,FSearch,GetBkColor,GetColor,%
+ GetDefaultPalette,GetDriverName,GetEnv,GetGraphMode,GetMaxMode,%
+ GetMaxX,GetMaxY,GetModeName,GetPaletteSize,GetPixel,GetX,GetY,%
+ GraphErrorMsg,GraphResult,Hi,ImageSize,InstallUserDriver,%
+ InstallUserFont,Int,IOResult,KeyPressed,Length,Lo,MaxAvail,%
+ MemAvail,MsDos,Odd,Ofs,Ord,OvrGetBuf,OvrGetRetry,ParamCount,%
+ ParamStr,Pi,Pos,Pred,Ptr,Random,ReadKey,Round,SeekEof,SeekEoln,%
+ Seg,SetAspectRatio,Sin,SizeOf,Sound,SPtr,Sqr,Sqrt,SSeg,Succ,%
+ Swap,TextHeight,TextWidth,Trunc,TypeOf,UpCase,WhereX,WhereY,%
+ Append,Arc,Assign,AssignCrt,Bar,Bar3D,BlockRead,BlockWrite,ChDir,%
+ Circle,ClearDevice,ClearViewPort,Close,CloseGraph,ClrEol,ClrScr,%
+ Dec,Delay,Delete,DelLine,DetectGraph,Dispose,DrawPoly,Ellipse,%
+ Erase,Exec,Exit,FillChar,FillEllipse,FillPoly,FindFirst,FindNext,%
+ FloodFill,Flush,FreeMem,FSplit,GetArcCoords,GetAspectRatio,%
+ GetDate,GetDefaultPalette,GetDir,GetCBreak,GetFAttr,%
+ GetFillSettings,GetFTime,GetImage,GetIntVec,GetLineSettings,%
+ GetMem,GetPalette,GetTextSettings,GetTime,GetVerify,%
+ GetViewSettings,GoToXY,Halt,HighVideo,Inc,InitGraph,Insert,%
+ InsLine,Intr,Keep,Line,LineRel,LineTo,LowVideo,Mark,MkDir,Move,%
+ MoveRel,MoveTo,MsDos,New,NormVideo,NoSound,OutText,OutTextXY,%
+ OvrClearBuf,OvrInit,OvrInitEMS,OvrSetBuf,PackTime,PieSlice,%
+ PutImage,PutPixel,Randomize,Rectangle,Release,Rename,%
+ RestoreCrtMode,RmDir,RunError,Sector,Seek,SetActivePage,%
+ SetAllPalette,SetBkColor,SetCBreak,SetColor,SetDate,SetFAttr,%
+ SetFillPattern,SetFillStyle,SetFTime,SetGraphBufSize,%
+ SetGraphMode,SetIntVec,SetLineStyle,SetPalette,SetRGBPalette,%
+ SetTextBuf,SetTextJustify,SetTextStyle,SetTime,SetUserCharSize,%
+ SetVerify,SetViewPort,SetVisualPage,SetWriteMode,Sound,Str,%
+ SwapVectors,TextBackground,TextColor,TextMode,Truncate,%
+ UnpackTime,Val,Window}%
+ }%
+\lst@definelanguage[Standard]{Pascal}%
+ {morekeywords={alfa,and,array,begin,boolean,byte,case,char,const,div,%
+ do,downto,else,end,false,file,for,function,get,goto,if,in,%
+ integer,label,maxint,mod,new,not,of,or,pack,packed,page,program,%
+ put,procedure,read,readln,real,record,repeat,reset,rewrite,set,%
+ text,then,to,true,type,unpack,until,var,while,with,write,%
+ writeln},%
+ sensitive=f,%
+ morecomment=[s]{(*}{*)},%
+ morecomment=[s]{\{}{\}},%
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Perl}%
+ {morekeywords={abs,accept,alarm,atan2,bind,binmode,bless,caller,%
+ chdir,chmod,chomp,chop,chown,chr,chroot,close,closedir,connect,%
+ continue,cos,crypt,dbmclose,dbmopen,defined,delete,die,do,dump,%
+ each,else,elsif,endgrent,endhostent,endnetent,endprotoent,%
+ endpwent,endservent,eof,eval,exec,exists,exit,exp,fcntl,fileno,%
+ flock,for,foreach,fork,format,formline,getc,getgrent,getgrgid,%
+ getgrnam,gethostbyaddr,gethostbyname,gethostent,getlogin,%
+ getnetbyaddr,getnetbyname,getnetent,getpeername,getpgrp,%
+ getppid,getpriority,getprotobyname,getprotobynumber,getprotoent,%
+ getpwent,getpwnam,getpwuid,getservbyname,getservbyport,%
+ getservent,getsockname,getsockopt,glob,gmtime,goto,grep,hex,if,%
+ import,index,int,ioctl,join,keys,kill,last,lc,lcfirst,length,%
+ link,listen,local,localtime,log,lstat,m,map,mkdir,msgctl,msgget,%
+ msgrcv,msgsnd,my,next,no,oct,open,opendir,ord,pack,package,pipe,%
+ pop,pos,print,printf,prototype,push,q,qq,quotemeta,qw,qx,rand,%
+ read,readdir,readlink,recv,redo,ref,rename,require,reset,return,%
+ reverse,rewinddir,rindex,rmdir,s,scalar,seek,seekdir,select,%
+ semctl,semget,semop,send,setgrent,sethostent,setnetent,setpgrp,%
+ setpriority,setprotoent,setpwent,setservent,setsockopt,shift,%
+ shmctl,shmget,shmread,shmwrite,shutdown,sin,sleep,socket,%
+ socketpair,sort,splice,split,sprintf,sqrt,srand,stat,study,sub,%
+ substr,symlink,syscall,sysopen,sysread,system,syswrite,tell,%
+ telldir,tie,tied,time,times,tr,truncate,uc,ucfirst,umask,undef,%
+ unless,unlink,unpack,unshift,untie,until,use,utime,values,vec,%
+ wait,waitpid,wantarray,warn,while,write,y},%
+ sensitive,%
+ morecomment=[l]\#,%
+ morestring=[b]",%
+ morestring=[b]',%
+ MoreSelectCharTable=%
+ \lst@ReplaceInput{\$\#}{\lst@ProcessOther\$\lst@ProcessOther\#}%
+ }[keywords,comments,strings]%
+%%
+%% POV definition (c) 1999 Berthold H\"ollmann
+%%
+\lst@definelanguage{POV}%
+ {morekeywords={abs,absorption,acos,acosh,adaptive,adc_bailout,agate,%
+ agate_turb,all,alpha,ambient,ambient_light,angle,aperture,append,%
+ arc_angle,area_light,array,asc,asin,asinh,assumed_gamma,atan,%
+ atan2,atanh,average,background,bezier_spline,bicubic_patch,%
+ black_hole,blob,blue,blur_samples,bounded_by,box,boxed,bozo,%
+ break,brick,brick_size,brightness,brilliance,bumps,bump_map,%
+ bump_size,camera,case,caustics,ceil,checker,chr,clipped_by,clock,%
+ clock_delta,color,color_map,colour,colour_map,component,%
+ composite,concat,cone,confidence,conic_sweep,control0,control1,%
+ cos,cosh,count,crackle,crand,cube,cubic,cubic_spline,cubic_wave,%
+ cylinder,cylindrical,debug,declare,default,defined,degrees,%
+ density,density_file,density_map,dents,difference,diffuse,%
+ dimensions,dimension_size,direction,disc,distance,%
+ distance_maximum,div,eccentricity,else,emission,end,error,%
+ error_bound,exp,extinction,fade_distance,fade_power,falloff,%
+ falloff_angle,false,fclose,file_exists,filter,finish,fisheye,%
+ flatness,flip,floor,focal_point,fog,fog_alt,fog_offset,fog_type,%
+ fopen,frequency,gif,global_settings,gradient,granite,%
+ gray_threshold,green,height_field,hexagon,hf_gray_16,hierarchy,%
+ hollow,hypercomplex,if,ifdef,iff,ifndef,image_map,include,int,%
+ interior,interpolate,intersection,intervals,inverse,ior,irid,%
+ irid_wavelength,jitter,julia_fractal,lambda,lathe,leopard,%
+ light_source,linear_spline,linear_sweep,local,location,log,%
+ looks_like,look_at,low_error_factor,macro,mandel,map_type,marble,%
+ material,material_map,matrix,max,max_intersections,max_iteration,%
+ max_trace_level,media,media_attenuation,media_interaction,merge,%
+ mesh,metallic,min,minimum_reuse,mod,mortar,nearest_count,no,%
+ normal,normal_map,no_shadow,number_of_waves,object,octaves,off,%
+ offset,omega,omnimax,on,once,onion,open,orthographic,panoramic,%
+ perspective,pgm,phase,phong,phong_size,pi,pigment,pigment_map,%
+ planar,plane,png,point_at,poly,polygon,poly_wave,pot,pow,ppm,%
+ precision,prism,pwr,quadratic_spline,quadric,quartic,quaternion,%
+ quick_color,quick_colour,quilted,radial,radians,radiosity,radius,%
+ rainbow,ramp_wave,rand,range,ratio,read,reciprocal,%
+ recursion_limit,red,reflection,reflection_exponent,refraction,%
+ render,repeat,rgb,rgbf,rgbft,rgbt,right,ripples,rotate,roughness,%
+ samples,scale,scallop_wave,scattering,seed,shadowless,sin,%
+ sine_wave,sinh,sky,sky_sphere,slice,slope_map,smooth,%
+ smooth_triangle,sor,specular,sphere,spherical,spiral1,spiral2,%
+ spotlight,spotted,sqr,sqrt,statistics,str,strcmp,strength,strlen,%
+ strlwr,strupr,sturm,substr,superellipsoid,switch,sys,t,tan,tanh,%
+ text,texture,texture_map,tga,thickness,threshold,tightness,tile2,%
+ tiles,torus,track,transform,translate,transmit,triangle,%
+ triangle_wave,true,ttf,turbulence,turb_depth,type,u,%
+ ultra_wide_angle,undef,union,up,use_color,use_colour,use_index,%
+ u_steps,v,val,variance,vaxis_rotate,vcross,vdot,version,vlength,%
+ vnormalize,vrotate,v_steps,warning,warp,water_level,waves,while,%
+ width,wood,wrinkles,write,x,y,yes,z},%
+ moredirectives={break,case,debug,declare,default,else,end,fclose,%
+ fopen,local,macro,read,render,statistics,switch,undef,version,%
+ warning,write},%
+ moredelim=*[directive]\#,%
+ sensitive,%
+ morecomment=[l]//,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[d]",%
+ }[keywords,directives,comments,strings]%
+%%
+%% Python definition (c) 1998 Michael Weber
+%%
+\lst@definelanguage{Python}%
+ {morekeywords={access,and,break,class,continue,def,del,elif,else,%
+ except,exec,finally,for,from,global,if,import,in,is,lambda,not,%
+ or,pass,print,raise,return,try,while},%
+ sensitive=true,%
+ morecomment=[l]\#,%
+ morecomment=[s]{'''}{'''},% used for documentation text
+ morecomment=[s]{"""}{"""},% added by Philipp Matthias Hahn
+ morestring=[b]',%
+ morestring=[b]"%
+ }%
+%%
+%% Scilab definition (c) 2002,2003 Jean-Philippe Grivet
+%%
+\lst@definelanguage{Scilab}%
+ {morekeywords={abcd,abinv,abort,abs,acoshm,acosh,acosm,acos,addcolor,%
+ addf,addinter,addmenu,add_edge,add_node,adj2sp,adj_lists,aff2ab,%
+ amell,analpf,analyze,ans,apropos,arc_graph,arc_number,argn,arhnk,%
+ arl2,arma2p,armac,armax1,armax,arma,arsimul,artest,articul,ascii,%
+ asinhm,asinh,asinm,asin,atanhm,atanh,atanm,atan,augment,auread,%
+ auwrite,balanc,balreal,bandwr,basename,bdiag,besseli,besselj,%
+ besselk,bessely,best_match,bezout,bifish,bilin,binomial,black,%
+ bloc2exp,bloc2ss,bode,bool2s,boolean,boucle,break,bstap,buttmag,%
+ bvode,cainv,calerf,calfrq,call,canon,casc,case,ccontrg,cdfbet,%
+ cdfbin,cdfchi,cdfchn,cdffnc,cdff,cdfgam,cdfnbn,cdfnor,cdfpoi,%
+ cdft,ceil,center,cepstrum,chaintest,chain_struct,champ1,champ,%
+ chart,chdir,cheb1mag,cheb2mag,check_graph,check_io,chepol,chfact,%
+ chol,chsolve,circuit,classmarkov,clean,clearfun,clearglobal,%
+ clear,close,cls2dls,cmb_lin,cmndred,cmoment,code2str,coeff,coffg,%
+ coff,colcompr,colcomp,colinout,colormap,colregul,companion,comp,%
+ cond,conj,connex,contour2di,contour2d,contourf,contour,%
+ contract_edge,contrss,contr,cont_frm,cont_mat,convex_hull,convol,%
+ convstr,con_nodes,copfac,copy,correl,corr,coshm,cosh,cosm,cos,%
+ cotg,cothm,coth,covar,csim,cspect,ctr_gram,cumprod,cumsum,%
+ curblock,cycle_basis,czt,c_link,dasrt,dassl,datafit,date,dbphi,%
+ dcf,ddp,debug,dec2hex,deff,definedfields,degree,delbpt,%
+ delete_arcs,delete_nodes,delete,delip,delmenu,demos,denom,%
+ derivative,derivat,des2ss,des2tf,determ,detr,det,dft,dhinf,%
+ dhnorm,diag,diary,diff,diophant,dirname,dispbpt,dispfiles,disp,%
+ dlgamma,double,dragrect,drawaxis,drawlater,drawnow,draw,driver,%
+ dscr,dsearch,dsimul,dtsi,dt_ility,duplicate,edge_number,%
+ edit_curv,edit_graph_menus,edit_graph,edit,eigenmarkov,ell1mag,%
+ elseif,else,emptystr,endfunction,end,eqfir,eqiir,equil1,equil,%
+ ereduc,erfcx,erfc,erf,errbar,errcatch,errclear,error,eval3dp,%
+ eval3d,eval,evans,evstr,excel2sci,execstr,exec,exists,exit,expm,%
+ exp,external,eye,fac3d,factors,faurre,fchamp,fcontour2d,fcontour,%
+ fec,feedback,feval,ffilt,fftshift,fft,fgrayplot,figure,fileinfo,%
+ file,filter,findm,findobj,findx0BD,find_freq,find_path,find,%
+ findABCD,findAC,findBD,findBDK,findR,fit_dat,fix,floor,flts,foo,%
+ formatman,format,fort,for,fourplan,fplot2d,fplot3d1,fplot3d,%
+ fprintf,fprintfMat,frep2tf,freq,freson,frexp,frfit,frmag,fscanf,%
+ fscanfMat,fsfirlin,fsolve,fspecg,fstabst,fstair,ftest,ftuneq,%
+ fullrfk,fullrf,full,fun2string,funcprot,functions,function,%
+ funptr,fusee,gainplot,gamitg,gammaln,gamma,gcare,gcd,gcf,%
+ genfac3d,genlib,genmarkov,gen_net,geom3d,geomean,getblocklabel,%
+ getcolor,getcurblock,getcwd,getdate,getd,getenv,getfield,getfont,%
+ getf,getio,getlinestyle,getmark,getpid,getscicosvars,getsymbol,%
+ getvalue,getversion,get_function_path,get,gfare,gfrancis,girth,%
+ givens,glever,glist,global,glue,gpeche,graduate,grand,%
+ graphics_entities,graph_2_mat,graph_center,graph_complement,%
+ graph_diameter,graph_power,graph_simp,graph_sum,graph_union,%
+ graph-list,graycolormap,grayplot,graypolarplot,grep,group,%
+ gr_menu,gschur,gsort,gspec,gstacksize,gtild,g_margin,h2norm,halt,%
+ hamilton,hankelsv,hank,harmean,havewindow,help,hermit,hess,%
+ hex2dec,hilb,hinf,hist3d,histplot,horner,host,hotcolormap,%
+ householder,hrmt,htrianr,hypermat,h_cl,h_inf_st,h_inf,h_norm,%
+ iconvert,icon_edit,ieee,if,iirgroup,iirlp,iir,ilib_build,%
+ ilib_compile,ilib_for_link,ilib_gen_gateway,ilib_gen_loader,%
+ ilib_gen_Make,imag,impl,imrep2ss,imult,im_inv,inistate,input,%
+ int16,int2d,int32,int3d,int8,intc,intdec,integrate,interpln,%
+ interp,intersci,intersect,intg,intl,intppty,intsplin,inttrap,%
+ inttype,int,invr,invsyslin,inv_coeff,inv,iqr,isdef,isdir,isequal,%
+ iserror,isglobal,isinf,isnan,isoview,isreal,is_connex,jmat,%
+ justify,kalm,karmarkar,kernel,keyboard,knapsack,kpure,krac2,%
+ kroneck,kron,lasterror,lattn,lattp,lcf,lcmdiag,lcm,ldivf,ldiv,%
+ leastsq,legends,length,leqr,levin,lev,lex_sort,lft,lgfft,library,%
+ lib,lin2mu,lincos,lindquist,lines,line_graph,linfn,linf,link,%
+ linmeq,linpro,linsolve,linspace,lin,listfiles,list,lmisolver,%
+ lmitool,loadmatfile,loadplots,loadwave,load_graph,load,locate,%
+ log10,log1p,log2,logm,logspace,log,lotest,lqe,lqg2stan,lqg_ltr,%
+ lqg,lqr,lsq,lsslist,lstcat,lstsize,ltitr,ludel,lufact,luget,%
+ lusolve,lu,lyap,macglov,macr2lst,macrovar,macro,mad,make_graph,%
+ make_index,manedit,man,mapsound,markp2ss,matfile2sci,matrix,%
+ mat_2_graph,maxi,max_cap_path,max_clique,max_flow,max,mclearerr,%
+ mclose,meanf,mean,median,meof,mese,mesh2d,mfft,mfile2sci,mgeti,%
+ mgetl,mgetstr,mget,milk_drop,mine,mini,minreal,minss,%
+ min_lcost_cflow,min_lcost_flow1,min_lcost_flow2,min_qcost_flow,%
+ min_weight_tree,min,mlist,mode,modulo,moment,mopen,move,%
+ mps2linpro,mputl,mputstr,mput,mrfit,msd,mseek,mtell,mtlb_load,%
+ mtlb_mode,mtlb_save,mtlb_sparse,mu2lin,mulf,mvvacov,m_circle,%
+ names,nand2mean,nanmax,nanmeanf,nanmean,nanmedian,nanmin,%
+ nanstdev,nansum,narsimul,ndims,nearfloat,nehari,neighbors,%
+ netclose,netwindows,netwindow,newest,newfun,nextpow2,nf3d,nfreq,%
+ nlev,nnz,nodes_2_path,nodes_degrees,node_number,noisegen,norm,%
+ null,numdiff,numer,nyquist,obscont1,obscont,observer,obsvss,%
+ obsv_mat,obs_gram,odedc,odedi,odeoptions,ode_discrete,ode_root,%
+ ode,oldload,oldsave,ones,optim,orth,param3d1,param3d,%
+ paramfplot2d,parrot,part,pathconvert,path_2_nodes,pause,pbig,%
+ pdiv,pen2ea,pencan,penlaur,perctl,perfect_match,pertrans,pfss,%
+ phasemag,phc,pinv,pipe_network,playsnd,plot2d1,plot2d2,plot2d3,%
+ plot2d4,plot2d,plot3d1,plot3d2,plot3d3,plot3d,plotframe,%
+ plotprofile,plot_graph,plot,plzr,pmodulo,pol2des,pol2str,pol2tex,%
+ polarplot,polar,polfact,poly,portr3d,portrait,power,ppol,prbs_a,%
+ predecessors,predef,printf,printing,print,prod,profile,projsl,%
+ projspec,proj,psmall,pspect,pvm_addhosts,pvm_barrier,pvm_bcast,%
+ pvm_bufinfo,pvm_config,pvm_delhosts,pvm_error,pvm_exit,%
+ pvm_f772sci,pvm_getinst,pvm_gettid,pvm_get_timer,pvm_gsize,%
+ pvm_halt,pvm_joingroup,pvm_kill,pvm_lvgroup,pvm_mytid,pvm_parent,%
+ pvm_probe,pvm_recv,pvm_reduce,pvm_sci2f77,pvm_send,pvm_set_timer,%
+ pvm_spawn_independent,pvm_spawn,pvm_start,pvm_tasks,%
+ pvm_tidtohost,pvm,pwd,p_margin,qassign,qr,quapro,quart,quaskro,%
+ quit,randpencil,rand,range,rankqr,rank,rat,rcond,rdivf,read4b,%
+ readb,readc_,readmps,read,real,recur,reglin,regress,remezb,remez,%
+ repfreq,replot,residu,resume,return,riccati,riccsl,ricc,ric_desc,%
+ rlist,roots,rotate,round,routh_t,rowcompr,rowcomp,rowinout,%
+ rowregul,rowshuff,rpem,rref,rtitr,rubberbox,salesman,savewave,%
+ save_graph,save,scaling,scanf,schur,sci2exp,sci2for,sci2map,%
+ sciargs,scicosim,scicos,scifunc_block,sd2sci,secto3d,select,%
+ semidef,sensi,setbpt,seteventhandler,setfield,setmenu,%
+ setscicosvars,set,sfact,sgrid,shortest_path,showprofile,%
+ show_arcs,show_graph,show_nodes,sident,signm,sign,simp_mode,simp,%
+ sincd,sinc,sinc,sinhm,sinh,sinm,sin,size,sm2des,sm2ss,smooth,%
+ solve,sorder,sort,sound,sp2adj,spaninter,spanplus,spantwo,sparse,%
+ spchol,spcompack,specfact,spec,speye,spget,splin,split_edge,%
+ spones,sprand,sprintf,spzeros,sqroot,sqrtm,sqrt,squarewave,%
+ square,srfaur,srkf,ss2des,ss2ss,ss2tf,sscanf,sskf,ssprint,ssrand,%
+ stabil,stacksize,standard_define,standard_draw,standard_input,%
+ standard_origin,standard_output,startup,stdevf,stdev,steadycos,%
+ str2code,strange,strcat,strindex,strings,string,stripblanks,%
+ strong_connex,strong_con_nodes,strsubst,st_deviation,st_ility,%
+ subf,subgraph,subplot,successors,sum,supernode,sva,svd,svplot,%
+ sylm,sylv,sysconv,sysdiag,sysfact,syslin,syssize,systems,system,%
+ systmat,tabul,tangent,tanhm,tanh,tanm,tan,tdinit,testmatrix,%
+ texprint,tf2des,tf2ss,then,thrownan,timer,time_id,titlepage,%
+ tk_getdir,tk_getfile,tlist,toeplitz,tokenpos,tokens,trace,%
+ translatepaths,trans_closure,trans,trfmod,trianfml,tril,trimmean,%
+ trisolve,triu,trzeros,typename,typeof,type,uicontrol,uimenu,%
+ uint16,uint32,uint8,ui_observer,ulink,unglue,union,unique,unix_g,%
+ unix_s,unix_w,unix_x,unix,unobs,unsetmenu,user,varargin,%
+ varargout,variancef,variance,varn,warning,wavread,wavwrite,%
+ wcenter,wfir,what,whereami,whereis,where,while,whos,who_user,who,%
+ wiener,wigner,window,winsid,with_gtk,with_pvm,with_texmacs,%
+ with_tk,writb,write4b,write,xarcs,xarc,xarrows,xaxis,xbasc,%
+ xbasimp,xbasr,xchange,xclear,xclea,xclick,xclip,xdel,xend,xfarcs,%
+ xfarc,xfpolys,xfpoly,xfrect,xgetech,xgetfile,xgetmouse,xget,%
+ xgraduate,xgrid,xinfo,xinit,xlfont,xload,xname,xnumb,xpause,%
+ xpolys,xpoly,xrects,xrect,xrpoly,xs2fig,xs2gif,xs2ppm,xs2ps,%
+ xsave,xsegs,select,xsetech,xsetm,xset,xstringb,xstringl,xstring,%
+ xtape,xtitle,x_choices,x_choose,x_dialog,x_matrix,x_mdialog,%
+ x_message_modeless,x_message,yulewalk,zeropen,zeros,zgrid,zpbutt,%
+ zpch1,zpch2,zpell,mfprintf,mfscanf,mprintf,mscanf,msprintf,%
+ msscanf,mucomp,%
+ ABSBLK_f,AFFICH_f,ANDLOG_f,ANIMXY_f,BIGSOM_f,CLINDUMMY_f,CLKIN_f,%
+ CLKINV_f,CLKOUT_f,CLKOUTV_f,CLKSOM_f,CLKSOMV_f,CLKSPLIT_f,%
+ CLOCK_f,CLR_f,CLSS_f,CONST_f,COSBLK_f,CURV_f,DELAY_f,DELAYV_f,%
+ DEMUX_f,DLR_f,DLRADAPT_f,DLSS_f,EVENTSCOPE_f,EVTDLY_f,EVTGEN_f,%
+ EXPBLK_f,G_make,GAIN_f,GAINBLK_f,GENERAL_f,GENERIC_f,GENSIN_f,%
+ GENSQR_f,HALT_f,IFTHEL_f,IN_f,INTEGRAL_f,INTRP2BLK_f,INTRPLBLK_f,%
+ INVBLK_f,LOGBLK_f,LOOKUP_f,Matplot1,Matplot,MAX_f,MCLOCK_f,%
+ MFCLCK_f,MIN_f,MUX_f,NDcost,NEGTOPOS_f,OUT_f,POSTONEG_f,POWBLK_f,%
+ PROD_f,QUANT_f,RAND_f,READC_f,REGISTER_f,RELAY_f,RFILE_f,%
+ ScilabEval,Sfgrayplot,Sgrayplot,SAMPLEHOLD_f,SAT_f,SAWTOOTH_f,%
+ SCOPE_f,SCOPXY_f,SELECT_f,SINBLK_f,SOM_f,SPLIT_f,STOP_f,SUPER_f,%
+ TANBLK_f,TCLSS_f,TEXT_f,TIME_f,TK_EvalFile,TK_EvalStr,TK_GetVar,%
+ TK_SetVar,TRASH_f,WFILE_f,WRITEC_f,ZCROSS_f,%
+ \%asn,\%helps,\%k,\%sn},%
+ alsoletter=\%,% chmod
+ sensitive,%
+ morecomment=[l]//,%
+ morestring=[b]",%
+ morestring=[m]'%
+ }[keywords,comments,strings]%
+%%
+%% SQL definition (c) 1998 Christian Haul
+%% (c) 2002 Neil Conway
+%% (c) 2002 Robert Frank
+%% (c) 2003 Dirk Jesko
+%%
+\lst@definelanguage{SQL}%
+ {morekeywords={ABSOLUTE,ACTION,ADD,ALLOCATE,ALTER,ARE,AS,ASSERTION,%
+ AT,BETWEEN,BIT_LENGTH,BOTH,BY,CASCADE,CASCADED,CASE,CAST,%
+ CATALOG,CHAR_LENGTH,CHARACTER_LENGTH,CLUSTER,COALESCE,%
+ COLLATE,COLLATION,COLUMN,CONNECT,CONNECTION,CONSTRAINT,%
+ CONSTRAINTS,CONVERT,CORRESPONDING,CREATE,CROSS,CURRENT_DATE,%
+ CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,DAY,DEALLOCATE,%
+ DEC,DEFERRABLE,DEFERED,DESCRIBE,DESCRIPTOR,DIAGNOSTICS,%
+ DISCONNECT,DOMAIN,DROP,ELSE,END,EXEC,EXCEPT,EXCEPTION,EXECUTE,%
+ EXTERNAL,EXTRACT,FALSE,FIRST,FOREIGN,FROM,FULL,GET,GLOBAL,%
+ GRAPHIC,HAVING,HOUR,IDENTITY,IMMEDIATE,INDEX,INITIALLY,INNER,%
+ INPUT,INSENSITIVE,INSERT,INTO,INTERSECT,INTERVAL,%
+ ISOLATION,JOIN,KEY,LAST,LEADING,LEFT,LEVEL,LIMIT,LOCAL,LOWER,%
+ MATCH,MINUTE,MONTH,NAMES,NATIONAL,NATURAL,NCHAR,NEXT,NO,NOT,NULL,%
+ NULLIF,OCTET_LENGTH,ON,ONLY,ORDER,ORDERED,OUTER,OUTPUT,OVERLAPS,%
+ PAD,PARTIAL,POSITION,PREPARE,PRESERVE,PRIMARY,PRIOR,READ,%
+ RELATIVE,RESTRICT,REVOKE,RIGHT,ROWS,SCROLL,SECOND,SELECT,SESSION,%
+ SESSION_USER,SIZE,SPACE,SQLSTATE,SUBSTRING,SYSTEM_USER,%
+ TABLE,TEMPORARY,THEN,TIMEZONE_HOUR,%
+ TIMEZONE_MINUTE,TRAILING,TRANSACTION,TRANSLATE,TRANSLATION,TRIM,%
+ TRUE,UNIQUE,UNKNOWN,UPPER,USAGE,USING,VALUE,VALUES,%
+ VARGRAPHIC,VARYING,WHEN,WHERE,WRITE,YEAR,ZONE,%
+ AND,ASC,avg,CHECK,COMMIT,count,DECODE,DESC,DISTINCT,GROUP,IN,% FF
+ LIKE,NUMBER,ROLLBACK,SUBSTR,sum,VARCHAR2,% FF
+ MIN,MAX,UNION,UPDATE,% RF
+ ALL,ANY,CUBE,CUBE,DEFAULT,DELETE,EXISTS,GRANT,OR,RECURSIVE,% DJ
+ ROLE,ROLLUP,SET,SOME,TRIGGER,VIEW},% DJ
+ morendkeywords={BIT,BLOB,CHAR,CHARACTER,CLOB,DATE,DECIMAL,FLOAT,% DJ
+ INT,INTEGER,NUMERIC,SMALLINT,TIME,TIMESTAMP,VARCHAR},% moved here
+ sensitive=false,% DJ
+ morecomment=[l]--,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[d]',%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% VHDL definition (c) 1997 Kai Wollenweber
+%%
+\lst@definelanguage{VHDL}%
+ {morekeywords={ALL,ARCHITECTURE,ABS,AND,ASSERT,ARRAY,AFTER,ALIAS,%
+ ACCESS,ATTRIBUTE,BEGIN,BODY,BUS,BLOCK,BUFFER,CONSTANT,CASE,%
+ COMPONENT,CONFIGURATION,DOWNTO,ELSE,ELSIF,END,ENTITY,EXIT,%
+ FUNCTION,FOR,FILE,GENERIC,GENERATE,GUARDED,GROUP,IF,IN,INOUT,IS,%
+ INERTIAL,IMPURE,LIBRARY,LOOP,LABEL,LITERAL,LINKAGE,MAP,MOD,NOT,%
+ NOR,NAND,NULL,NEXT,NEW,OUT,OF,OR,OTHERS,ON,OPEN,PROCESS,PORT,%
+ PACKAGE,PURE,PROCEDURE,POSTPONED,RANGE,REM,ROL,ROR,REPORT,RECORD,%
+ RETURN,REGISTER,REJECT,SIGNAL,SUBTYPE,SLL,SRL,SLA,SRA,SEVERITY,%
+ SELECT,THEN,TYPE,TRANSPORT,TO,USE,UNITS,UNTIL,VARIABLE,WHEN,WAIT,%
+ WHILE,XOR,XNOR,%
+ DISCONNECT,ELIF,WITH},% Arnaud Tisserand
+ sensitive=f,% 1998 Gaurav Aggarwal
+ morecomment=[l]--,%
+ morestring=[d]{"}%
+ }[keywords,comments,strings]%
+%%
+%% VHDL-AMS definition (c) Steffen Klupsch
+%%
+\lst@definelanguage[AMS]{VHDL}[]{VHDL}%
+ {morekeywords={ACROSS,ARRAY,BREAK,DISCONNECT,NATURE,NOISE,PORT,%
+ PROCEDURAL,QUANTITY,SHARED,SPECTRUM,SUBNATURE,TERMINAL,THROUGH,%
+ TOLERANCE,UNAFFACTED,UNITS}}
+\lst@definelanguage{XSLT}[]{XML}%
+ {morekeywords={%
+ % main elements
+ xsl:stylesheet,xsl:transform,%
+ % childs of the main element
+ xsl:apply-imports,xsl:attribute-set,xsl:decimal-format,xsl:import,%
+ xsl:include,xsl:key,xsl:namespace-alias,xsl:output,xsl:param,%
+ xsl:preserve-space,xsl:strip-space,xsl:template,xsl:variable,%
+ % 21 directives
+ xsl:apply-imports,xsl:apply-templates,xsl:attribute,%
+ xsl:call-template,xsl:choose,xsl:comment,xsl:copy,xsl:copy-of,%
+ xsl:element,xsl:fallback,xsl:for-each,xsl:if,xsl:message,%
+ xsl:number,xsl:otherwise,xsl:processing-instruction,xsl:text,%
+ xsl:value-of,xsl:variable,xsl:when,xsl:with-param},%
+ alsodigit={-},%
+ }%
+\lst@definelanguage{Ant}[]{XML}%
+ {morekeywords={%
+ project,target,patternset,include,exclude,excludesfile,includesfile,filterset,%
+ filter,filtersfile,libfileset,custom,classpath,fileset,none,depend,mapper,%
+ filename,not,date,contains,selector,depth,or,and,present,majority,size,dirset,%
+ filelist,pathelement,path,param,filterreader,extension,filterchain,linecontainsregexp,%
+ regexp,classconstants,headfilter,tabstospaces,striplinebreaks,tailfilter,stripjavacomments,%
+ expandproperties,linecontains,replacetokens,token,striplinecomments,comment,prefixlines,%
+ classfileset,rootfileset,root,description,xmlcatalog,entity,dtd,substitution,%
+ extensionSet,propertyfile,entry,vsscheckin,sql,transaction,cvspass,csc,%
+ dirname,wlrun,wlclasspath,p4label,replaceregexp,get,jjtree,sleep,jarlib,%
+ dependset,targetfileset,srcfileset,srcfilelist,targetfilelist,zip,zipgroupfileset,zipfileset,%
+ patch,jspc,webapp,style,test,arg,jvmarg,sysproperty,testlet,env,tstamp,%
+ format,unwar,vsshistory,icontract,cvschangelog,user,p4submit,ccmcheckin,%
+ p4change,bzip2,vssadd,javadoc,bottom,source,doctitle,header,excludepackage,bootclasspath,%
+ doclet,taglet,packageset,sourcepath,link,footer,package,group,title,tag,%
+ translate,signjar,vajload,vajproject,jarlib,extensionset,WsdlToDotnet,buildnumber,%
+ jpcovmerge,tomcat,ejbjar,weblogictoplink,jboss,borland,weblogic,iplanet,jonas,%
+ support,websphere,wasclasspath,war,manifest,attribute,section,metainf,lib,%
+ classes,webinf,rename,sequential,serverdeploy,generic,property,move,%
+ copydir,cccheckin,wljspc,fixcrlf,sosget,pathconvert,map,record,p4sync,exec,%
+ p4edit,maudit,rulespath,searchpath,antlr,netrexxc,jpcovreport,reference,filters,%
+ coveragepath,execon,targetfile,srcfile,ccmcheckout,ant,xmlvalidate,xslt,%
+ iplanet,ccmcheckintask,gzip,native2ascii,starteam,ear,archives,input,%
+ rmic,extdirs,compilerarg,checksum,mail,bcc,message,cc,to,from,loadfile,vsscheckout,%
+ stylebook,soscheckin,mimemail,stlabel,gunzip,concat,cab,touch,parallel,splash,%
+ antcall,cccheckout,typedef,p4have,xmlproperty,copy,tomcat,antstructure,ccmcreatetask,%
+ rpm,delete,replace,replacefilter,replacetoken,replacevalue,mmetrics,waitfor,isfalse,%
+ equals,available,filepath,os,filesmatch,istrue,isset,socket,http,uptodate,srcfiles,%
+ untar,loadproperties,echoproperties,vajexport,stcheckout,bunzip2,copyfile,vsscreate,%
+ ejbc,unjar,tomcat,wsdltodotnet,mkdir,condition,cvs,commandline,marker,argument,%
+ tempfile,junitreport,report,taskdef,echo,ccupdate,java,renameext,vsslabel,basename,%
+ javadoc2,vsscp,tar,tarfileset,tomcat,vajimport,setproxy,wlstop,p4counter,ilasm,%
+ soscheckout,apply,ccuncheckout,jarlib,location,url,cvstagdiff,jlink,mergefiles,%
+ addfiles,javacc,pvcs,pvcsproject,jarlib,options,depends,chmod,jar,sound,fail,%
+ success,mparse,blgenclient,genkey,dname,javah,class,ccmreconfigure,unzip,javac,%
+ src,p4add,soslabel,jpcoverage,triggers,method,vssget,deltree,ddcreator},
+ deletekeywords={default},%
+ }
+\lst@definelanguage{XML}%
+ {keywords={,CDATA,DOCTYPE,ATTLIST,termdef,ELEMENT,EMPTY,ANY,ID,%
+ IDREF,IDREFS,ENTITY,ENTITIES,NMTOKEN,NMTOKENS,NOTATION,%
+ INCLUDE,IGNORE,SYSTEM,PUBLIC,NDATA,PUBLIC,%
+ PCDATA,REQUIRED,IMPLIED,FIXED,%%% preceded by #
+ xml,xml:space,xml:lang,version,standalone,default,preserve},%
+ alsoother=$,%
+ alsoletter=:,%
+ tag=**[s]<>,%
+ morestring=[d]",% ??? doubled
+ morestring=[d]',% ??? doubled
+ MoreSelectCharTable=%
+ \lst@CArgX--\relax\lst@DefDelimB{}{}%
+ {\ifnum\lst@mode=\lst@tagmode\else
+ \expandafter\@gobblethree
+ \fi}%
+ \lst@BeginComment\lst@commentmode{{\lst@commentstyle}}%
+ \lst@CArgX--\relax\lst@DefDelimE{}{}{}%
+ \lst@EndComment\lst@commentmode
+ \lst@CArgX[CDATA[\relax\lst@CDef{}%
+ {\ifnum\lst@mode=\lst@tagmode
+ \expandafter\lst@BeginCDATA
+ \else \expandafter\lst@CArgEmpty
+ \fi}%
+ \@empty
+ \lst@CArgX]]\relax\lst@CDef{}%
+ {\ifnum\lst@mode=\lst@GPmode
+ \expandafter\lst@EndComment
+ \else \expandafter\lst@CArgEmpty
+ \fi}%
+ \@empty
+ }[keywords,comments,strings,html]%
+\endinput
+%%
+%% End of file `lstlang1.sty'.
diff --git a/Master/texmf-dist/tex/latex/listings/lstlang2.sty b/Master/texmf-dist/tex/latex/listings/lstlang2.sty
new file mode 100644
index 00000000000..c1c9121806f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/lstlang2.sty
@@ -0,0 +1,1532 @@
+%%
+%% This is file `lstlang2.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% 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.
+%%
+%% 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.
+%%
+%% This file is completely free and comes without any warranty.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+\ProvidesFile{lstlang2.sty}
+ [2004/09/05 1.3 listings language file]
+%%
+%% Abap definition by Knut Lickert
+%%
+\lst@definelanguage[R/3 6.10]{ABAP}[R/3 4.6C]{ABAP}%
+ {morekeywords={try,endtry},%
+ }[keywords,comments,strings]
+\lst@definelanguage[R/3 4.6C]{ABAP}[R/3 3.1]{ABAP}%
+ {morekeywords={method,ref,class,create,object,%
+ methods,endmethod,private,protected,public,section,%
+ catch,system-exceptions,endcatch,%
+ },%
+ moreprocnamekeys={class},%
+ literate={->}{{$\rightarrow$}}1{=>}{{$\Rightarrow$}}1,%
+ }[keywords,comments,strings,procnames]
+\lst@definelanguage[R/3 3.1]{ABAP}[R/2 5.0]{ABAP}{}%
+\lst@definelanguage[R/2 5.0]{ABAP}%
+ {sensitive=f,%
+ procnamekeys={report,program,form,function,module},%
+ morekeywords={*,add,after,alias,analyzer,and,append,appending,area,assign,at,%
+ authority-check,before,binary,blank,break-point,calendar,call,%
+ case,change,changing,check,clear,cnt,co,collect,commit,common,%
+ component,compute,condense,corresponding,cos,cp,cs,currency-conversion,%
+ cursor,data,database,dataset,decimals,define,delete,deleting,dequeue,%
+ describe,detail,dialog,directory,div,divide,do,documentation,%
+ during,dynpro,else,end-of-page,end-of-selection,endat,endcase,%
+ enddo,endfor,endform,endif,endloop,endmodule,endselect,%
+ endwhile,enqueue,exceptions,exit,exp,export,exporting,extract,%
+ field,fields,field-groups,field-symbols,find,for,form,format,free,%
+ from,function,generating,get,giving,hide,id,if,import,%
+ importing,in,incl,include,initial,initialization,input,insert,%
+ interrupt,into,is,language,leave,leading,left-justified,like,line,lines,line-count,
+ line-selection,list-processing,load,local,log,logfile,loop,%
+ margin,mark,mask,memory,menue,message,mod,modify,module,move,%
+ move-text,multiply,na,new,new-line,new-page,no-gaps,np,ns,%
+ number,obligatory,occurs,of,on,or,others,output,parameter,%
+ parameters,parts,perform,pf-status,places,position,process,%
+ raise,raising,ranges,read,refresh,refresh-dynpro,reject,remote,%
+ replace,report,reserve,reset,restart,right-justified,run,screen,scroll,search,%
+ segments,select,select-options,selection-screen,set,shift,sin,%
+ single,sqrt,start-of-selection,statement,structure,submit,%
+ subtract,summary,summing,suppress,system,table,tables,task,%
+ text,time,to,top-of-page,trace,transaction,transfer,%
+ transfer-dynpro,translate,type,unpack,update,user-command,%
+ using,value,when,where,while,window,with,workfile,write,},%
+ morecomment=[l]",%
+ morecomment=[f][0]*,%
+ morestring=[d]'%
+ }[keywords,comments,strings,procnames]
+\lst@definelanguage[R/2 4.3]{ABAP}[R/2 5.0]{ABAP}%
+ {deletekeywords={function,importing,exporting,changing,exceptions,%
+ raise,raising}%
+ }[keywords,comments,strings]
+%%
+%% Corba IDL definition (c) 1999 Jens T. Berger Thielemann
+%%
+\lst@definelanguage[CORBA]{IDL}%
+ {morekeywords={any,attribute,boolean,case,char,const,context,default,%
+ double,enum,exception,fixed,float,in,inout,interface,long,module,%
+ native,Object,octet,oneway,out,raises,readonly,sequence,short,%
+ string,struct,switch,typedef,union,unsigned,void,wchar,wstring,%
+ FALSE,TRUE},%
+ sensitive,%
+ moredirectives={define,elif,else,endif,error,if,ifdef,ifndef,line,%
+ include,pragma,undef,warning},%
+ moredelim=*[directive]\#,%
+ morecomment=[l]//,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]"%
+ }[keywords,comments,strings,directives]%
+%%
+%% (Objective) Caml definition (c) 1999 Patrick Cousot
+%%
+%% Objective CAML and Caml light are freely available, together with a
+%% reference manual, at URL ftp.inria.fr/lang/caml-light for the Unix,
+%% Windows and Macintosh OS operating systems.
+%%
+\lst@definelanguage[Objective]{Caml}[light]{Caml}
+ {deletekeywords={not,prefix,value,where},%
+ morekeywords={assert,asr,class,closed,constraint,external,false,%
+ functor,include,inherit,land,lazy,lor,lsl,lsr,lxor,method,mod,%
+ module,new,open,parser,private,sig,struct,true,val,virtual,when,%
+ object,ref},% TH
+ }%
+\lst@definelanguage[light]{Caml}
+ {morekeywords={and,as,begin,do,done,downto,else,end,exception,for,%
+ fun,function,if,in,let,match,mutable,not,of,or,prefix,rec,then,%
+ to,try,type,value,where,while,with},%
+ sensitive,%
+ morecomment=[n]{(*}{*)},%
+ morestring=[b]",%
+ moredelim=*[directive]\#,%
+ moredirectives={open,close,include}%
+ }[keywords,comments,strings,directives]%
+\lst@definelanguage[ibm]{Cobol}[1985]{Cobol}%
+ {morekeywords={ADDRESS,BEGINNING,COMP-3,COMP-4,COMPUTATIONAL,%
+ COMPUTATIONAL-3,COMPUTATIONAL-4,DISPLAY-1,EGCS,EJECT,ENDING,%
+ ENTRY,GOBACK,ID,MORE-LABELS,NULL,NULLS,PASSWORD,RECORDING,%
+ RETURN-CODE,SERVICE,SKIP1,SKIP2,SKIP3,SORT-CONTROL,SORT-RETURN,%
+ SUPPRESS,TITLE,WHEN-COMPILED},%
+ }%
+\lst@definelanguage[1985]{Cobol}[1974]{Cobol}%
+ {morekeywords={ALPHABET,ALPHABETIC-LOWER,ALPHABETIC-UPPER,%
+ ALPHANUMERIC,ALPHANUMERIC-EDITED,ANY,CLASS,COMMON,CONTENT,%
+ CONTINUE,DAY-OF-WEEK,END-ADD,END-CALL,END-COMPUTE,END-DELETE,%
+ END-DIVIDE,END-EVALUATE,END-IF,END-MULTIPLY,END-PERFORM,END-READ,%
+ END-RECEIVE,END-RETURN,END-REWRITE,END-SEARCH,END-START,%
+ END-STRING,END-SUBTRACT,END-UNSTRING,END-WRITE,EVALUATE,EXTERNAL,%
+ FALSE,GLOBAL,INITIALIZE,NUMERIC-EDITED,ORDER,OTHER,%
+ PACKED-DECIMAL,PADDING,PURGE,REFERENCE,RELOAD,REPLACE,STANDARD-1,%
+ STANDARD-2,TEST,THEN,TRUE},%
+ }%
+\lst@definelanguage[1974]{Cobol}%
+ {morekeywords={ACCEPT,ACCESS,ADD,ADVANCING,AFTER,ALL,ALPHABETIC,ALSO,%
+ ALTER,ALTERNATE,AND,ARE,AREA,AREAS,ASCENDING,ASSIGN,AT,AUTHOR,%
+ BEFORE,BINARY,BLANK,BLOCK,BOTTOM,BY,CALL,CANCEL,CD,CF,CH,%
+ CHARACTER,CHARACTERS,CLOCK-UNITS,CLOSE,COBOL,CODE,CODE-SET,%
+ COLLATING,COLUMN,COMMA,COMMUNICATION,COMP,COMPUTE,CONFIGURATION,%
+ CONTAINS,CONTROL,CONTROLS,CONVERTING,COPY,CORR,CORRESPONDING,%
+ COUNT,CURRENCY,DATA,DATE,DATE-COMPILED,DATE-WRITTEN,DAY,DE,%
+ DEBUG-CONTENTS,DEGUB-ITEM,DEBUG-LINE,DEBUG-NAME,DEBUG-SUB1,%
+ DEBUG-SUB2,DEBUG-SUB3,DEBUGGING,DECIMAL-POINT,DECLARATIVES,%
+ DELETE,DELIMITED,DELIMITER,DEPENDING,DESCENDING,DESTINATION,%
+ DETAIL,DISABLE,DISPLAY,DIVIDE,DIVISION,DOWN,DUPLICATES,DYNAMIC,%
+ EGI,ELSE,EMI,ENABLE,END,END-OF-PAGE,ENTER,ENVIRONMENT,EOP,EQUAL,%
+ ERROR,ESI,EVERY,EXCEPTION,EXIT,EXTEND,FD,FILE,FILE-CONTROL,%
+ FILLER,FINAL,FIRST,FOOTING,FOR,FROM,GENERATE,GIVING,GO,GREATER,%
+ GROUP,HEADING,HIGH-VALUE,HIGH-VALUES,I-O,I-O-CONTROL,%
+ IDENTIFICATION,IF,IN,INDEX,INDEXED,INDICATE,INITIAL,INITIATE,%
+ INPUT,INPUT-OUTPUT,INSPECT,INSTALLATION,INTO,INVALID,IS,JUST,%
+ JUSTIFIED,KEY,LABEL,LAST,LEADING,LEFT,LENGTH,LESS,LIMIT,LIMITS,%
+ LINAGE,LINAGE-COUNTER,LINE,LINE-COUNTER,LINES,LINKAGE,LOCK,%
+ LOW-VALUE,LOW-VALUES,MEMORY,MERGE,MESSAGE,MODE,MODULES,MOVE,%
+ MULTIPLE,MULTIPLY,NATIVE,NEGATIVE,NEXT,NO,NOT,NUMBER,NUMERIC,%
+ OBJECT-COMPUTER,OCCURS,OF,OFF,OMITTED,ON,OPEN,OPTIONAL,OR,%
+ ORGANIZATION,OUTPUT,OVERFLOW,PAGE,PAGE-COUNTER,PERFORM,PF,PH,PIC,%
+ PICTURE,PLUS,POINTER,POSITION,PRINTING,POSITIVE,PRINTING,%
+ PROCEDURE,PROCEDURES,PROCEED,PROGRAM,PROGRAM-ID,QUEUE,QUOTE,%
+ QUOTES,RANDOM,RD,READ,RECEIVE,RECORD,RECORDING,RECORDS,REDEFINES,%
+ REEL,REFERENCES,RELATIVE,RELEASE,REMAINDER,REMOVAL,RENAMES,%
+ REPLACING,REPORT,REPORTING,REPORTS,RERUN,RESERVE,RESET,RETURN,%
+ REVERSED,REWIND,REWRITE,RF,RH,RIGHT,ROUNDED,RUN,SAME,SD,SEARCH,%
+ SECTION,SECURITY,SEGMENT,SEGMENT-LIMIT,SELECT,SEND,SENTENCE,%
+ SEPARATE,SEQUENCE,SEQUENTIAL,SET,SIGN,SIZE,SORT,SORT-MERGE,%
+ SOURCE,SOURCE-COMPUTER,SPACE,SPACES,SPECIAL-NAMES,STANDARD,START,%
+ STATUS,STOP,STRING,SUB-QUEUE-1,SUB-QUEUE-2,SUB-QUEUE-3,SUBTRACT,%
+ SUM,SYMBOLIC,SYNC,SYNCHRONIZED,TABLE,TALLYING,TAPE,TERMINAL,%
+ TERMINATE,TEXT,THAN,THROUGH,THRU,TIME,TIMES,TO,TOP,TRAILING,TYPE,%
+ UNIT,UNSTRING,UNTIL,UP,UPON,USAGE,USE,USING,VALUE,VALUES,VARYING,%
+ WHEN,WITH,WORDS,WORKING-STORAGE,WRITE,ZERO,ZEROES,ZEROS},%
+ alsodigit=-,%
+ sensitive=f,% ???
+ morecomment=[f][commentstyle][6]*,%
+ morestring=[d]"% ??? doubled
+ }[keywords,comments,strings]%
+\lst@definelanguage{Delphi}%
+ {morekeywords={and,as,asm,array,begin,case,class,const,constructor,%
+ destructor,div,do,downto,else,end,except,exports,file,finally,%
+ for,function,goto,if,implementation,in,inherited,inline,%
+ initialization,interface,is,label,library,mod,nil,not,object,of,%
+ or,packed,procedure,program,property,raise,record,repeat,set,%
+ shl,shr,string,then,to,try,type,unit,until,uses,var,while,with,%
+ xor,%
+ absolute,abstract,assembler,at,cdecl,default,dynamic,export,%
+ external,far,forward,index,name,near,nodefault,on,override,%
+ private,protected,public,published,read,resident,storedDir,%
+ virtual,write},%
+ morendkeywords={Abs,AddExitProc,Addr,AllocMem,AnsiCompareStr,%
+ AnsiCompareText,AnsiLowerCase,AnsiUpperCase,Append,AppendStr,%
+ ArcTan,AssignCrt,Assigned,AssignFile,BlockRead,BlockWrite,Break,%
+ ChangeFileExt,ChDir,Chr,CloseFile,ClrEol,ClrScr,Concat,Continue,%
+ Copy,Cos,CSeg,CursorTo,Date,DateTimeToFileDate,DateTimeToStr,%
+ DateTimeToString,DateToStr,DayOfWeek,Dec,DecodeDate,DecodeTime,%
+ Delete,DeleteFile,DiskFree,DiskSize,Dispose,DisposeStr,%
+ DoneWinCrt,DSeg,EncodeDate,EncodeTime,Eof,Eoln,Erase,Exclude,%
+ Exit,Exp,ExpandFileName,ExtractFileExt,ExtractFileName,%
+ ExtractFilePath,FileAge,FileClose,FileDateToDateTime,FileExists,%
+ FileGetAttr,FileGetDate,FileOpen,FilePos,FileRead,FileSearch,%
+ FileSeek,FileSetAttr,FileSetDate,FileSize,FillChar,FindClose,%
+ FindFirst,FindNext,FloatToDecimal,FloatToStrF,FloatToStr,%
+ FloatToText,FloatToTextFmt,Flush,FmtLoadStr,FmtStr,Format,%
+ FormatBuf,FormatDateTime,FormatFloat,Frac,Free,FreeMem,GetDir,%
+ GetMem,GotoXY,Halt,Hi,High,Inc,Include,InitWinCrt,Insert,Int,%
+ IntToHex,IntToStr,IOResult,IsValidIdent,KeyPressed,Length,Ln,Lo,%
+ LoadStr,Low,LowerCase,MaxAvail,MemAvail,MkDir,Move,New,NewStr,%
+ Now,Odd,Ofs,Ord,ParamCount,ParamStr,Pi,Pos,Pred,Ptr,Random,%
+ Randomize,Read,ReadBuf,ReadKey,Readln,ReAllocMem,Rename,%
+ RenameFile,Reset,Rewrite,RmDir,Round,RunError,ScrollTo,Seek,%
+ SeekEof,SeekEoln,Seg,SetTextBuf,Sin,SizeOf,SPtr,Sqr,Sqrt,SSeg,%
+ Str,StrCat,StrComp,StrCopy,StrDispose,StrECopy,StrEnd,StrFmt,%
+ StrLCat,StrIComp,StrLComp,StrLCopy,StrLen,StrLFmt,StrLIComp,%
+ StrLower,StrMove,StrNew,StrPas,StrPCopy,StrPos,StrScan,StrRScan,%
+ StrToDate,StrToDateTime,StrToFloat,StrToInt,StrToIntDef,%
+ StrToTime,StrUpper,Succ,Swap,TextToFloat,Time,TimeToStr,%
+ TrackCursor,Trunc,Truncate,TypeOf,UpCase,UpperCase,Val,WhereX,%
+ WhereY,Write,WriteBuf,WriteChar,Writeln},%
+ sensitive=f,%
+ morecomment=[s]{(*}{*)},%
+ morecomment=[s]{\{}{\}},%
+ morecomment=[l]{//},% 2001 Christian Gudrian
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Eiffel}%
+ {morekeywords={alias,all,and,as,BIT,BOOLEAN,CHARACTER,check,class,%
+ creation,Current,debug,deferred,do,DOUBLE,else,elseif,end,%
+ ensure,expanded,export,external,false,feature,from,frozen,if,%
+ implies,indexing,infix,inherit,inspect,INTEGER,invariant,is,%
+ like,local,loop,NONE,not,obsolete,old,once,or,POINTER,prefix,%
+ REAL,redefine,rename,require,rescue,Result,retry,select,%
+ separate,STRING,strip,then,true,undefine,unique,until,variant,%
+ when,xor},%
+ sensitive,%
+ morecomment=[l]--,%
+ morestring=[d]",%
+ }[keywords,comments,strings]%
+%%
+%% Euphoria definition (c) 1998 Detlef Reimers
+%%
+\lst@definelanguage{Euphoria}%
+ {morekeywords={abort,and,and_bits,append,arctan,atom,by,call,%
+ call_proc,call_func,c_proc,c_func,clear_screen,close,%
+ command_line,compare,constant,cos,do,date,else,elsif,end,exit,%
+ find,floor,for,function,getc,getenv,get_key,gets,global,%
+ get_pixel,if,include,integer,length,log,match,machine_func,%
+ machine_proc,mem_copy,mem_set,not,not_bits,or,object,open,%
+ or_bits,procedure,puts,position,prepend,print,printf,power,peek,%
+ poke,pixel,poke4,peek4s,peek4u,return,rand,repeat,remainder,%
+ routine_id,sequence,sqrt,sin,system,sprintf,then,type,to,time,%
+ trace,tan,while,with,without,xor,xor_bits},%
+ sensitive,%
+ morecomment=[l]--,%
+ morestring=[d]',%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% Guarded Command Language (GCL) definition
+%% (c) 2002 Mark van Eijk
+%%
+\lst@definelanguage{GCL}%
+ {morekeywords={const,con,var,array,of,skip,if,fi,do,od,div,mod},%
+ literate={|[}{\ensuremath{|\hskip -0.1em[}}2%
+ {]|}{\ensuremath{]\hskip -0.1em|}}2%
+ {[]}{\ensuremath{[\hskip -0.1em]}}2%
+ {->}{\ensuremath{\rightarrow}~}2%
+ {==}{\ensuremath{\equiv}~}2%
+ {>=}{\ensuremath{\geq}~}2%
+ {<=}{\ensuremath{\leq}~}2%
+ {/\\}{\ensuremath{\land}~}2%
+ {\\/}{\ensuremath{\lor}~}2%
+ {!}{\ensuremath{\lnot}}1%
+ {!=}{\ensuremath{\neq}~}2%
+ {max}{\ensuremath{\uparrow}}1%
+ {min}{\ensuremath{\downarrow}}1,%
+ sensitive=f,%
+ morecomment=[s]{\{}{\}},%
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+%%
+%% gnuplot definition (c) Christoph Giess
+%%
+\lst@definelanguage{Gnuplot}%
+ {keywords={abs,acos,acosh,arg,asin,asinh,atan,atan2,atanh,besj0,%
+ besj1,besy0,besy1,ceil,cos,cosh,erf,erfc,exp,floor,gamma,ibeta,%
+ inverf,igamma,imag,invnorm,int,lgamma,log,log10,norm,rand,real,%
+ sgn,sin,sinh,sqrt,tan,tanh,column,tm_hour,tm_mday,tm_min,tm_mon,%
+ tm_sec,tm_wday,tm_yday,tm_year,valid,cd,call,clear,exit,fit,%
+ help,if,load,pause,plot,print,pwd,quit,replot,reread,reset,save,%
+ set,show,shell,splot,test,update,angles,arrow,autoscale,border,%
+ boxwidth,clabel,clip,cntrparam,contour,data,dgrid3d,dummy,%
+ format,function,functions,grid,hidden3d,isosamples,key,keytitle,%
+ label,logscale,mapping,offsets,output,parametric,pointsize,%
+ polar,rrange,samples,size,style,surface,terminal,tics,time,%
+ timefmt,title,trange,urange,variables,view,vrange,xdata,xlabel,%
+ xmargin,xrange,xtics,mxtics,mytics,xdtics,xmtics,xzeroaxis,%
+ ydata,ylabel,yrange,ytics,ydtics,ymtics,yzeroaxis,zdata,zero,%
+ zeroaxis,zlabel,zrange,ztics,zdtics,zmtics,timefm,using,title,%
+ with,index,every,thru,smooth},%
+ sensitive,%
+ comment=[l]\#,%
+ morestring=[b]",%
+ morestring=[b]',%
+ }[keywords,comments,strings]%
+%%
+%% Haskell98 as implemented in Hugs98. See http://www.haskell.org
+%% All keywords from Prelude and Standard Libraries
+%% (c) 1999 Peter Bartke
+%%
+\lst@definelanguage{Haskell}%
+ {otherkeywords={=>},%
+ morekeywords={abstype,if,then,else,case,class,data,default,deriving,%
+ hiding,if,in,infix,infixl,infixr,import,instance,let,module,%
+ newtype,of,qualified,type,where,do,AbsoluteSeek,AppendMode,%
+ Array,BlockBuffering,Bool,BufferMode,Char,Complex,Double,Either,%
+ FilePath,Float,Int,Integer,IO,IOError,Ix,LineBuffering,Maybe,%
+ Ordering,NoBuffering,ReadMode,ReadWriteMode,ReadS,RelativeSeek,%
+ SeekFromEnd,SeekMode,ShowS,StdGen,String,Void,Bounded,Enum,Eq,%
+ Eval,ExitCode,exitFailure,exitSuccess,Floating,Fractional,%
+ Functor,Handle,HandlePosn,IOMode,Integral,List,Monad,MonadPlus,%
+ MonadZero,Num,Numeric,Ord,Random,RandomGen,Ratio,Rational,Read,%
+ Real,RealFloat,RealFrac,Show,System,Prelude,EQ,False,GT,Just,%
+ Left,LT,Nothing,Right,WriteMode,True,abs,accum,accumArray,%
+ accumulate,acos,acosh,all,and,any,ap,appendFile,applyM,%
+ approxRational,array,asTypeOf,asin,asinh,assocs,atan,atan2,atanh,%
+ bounds,bracket,bracket_,break,catch,catMaybes,ceiling,chr,cis,%
+ compare,concat,concatMap,conjugate,const,cos,cosh,curry,cycle,%
+ decodeFloat,delete,deleteBy,deleteFirstsBy,denominator,%
+ digitToInt,div,divMod,drop,dropWhile,either,elem,elems,elemIndex,%
+ elemIndices,encodeFloat,enumFrom,enumFromThen,enumFromThenTo,%
+ enumFromTo,error,even,exitFailure,exitWith,exp,exponent,fail,%
+ filter,filterM,find,findIndex,findIndices,flip,floatDigits,%
+ floatRadix,floatRange,floatToDigits,floor,foldl,foldM,foldl1,%
+ foldr,foldr1,fromDouble,fromEnum,fromInt,fromInteger,%
+ fromIntegral,fromJust,fromMaybe,fromRat,fromRational,%
+ fromRealFrac,fst,gcd,genericLength,genericTake,genericDrop,%
+ genericSplitAt,genericIndex,genericReplicate,getArgs,getChar,%
+ getContents,getEnv,getLine,getProgName,getStdGen,getStdRandom,%
+ group,groupBy,guard,hClose,hFileSize,hFlush,hGetBuffering,%
+ hGetChar,hGetContents,hGetLine,hGetPosn,hIsClosed,hIsEOF,hIsOpen,%
+ hIsReadable,hIsSeekable,hIsWritable,hLookAhead,hPutChar,hPutStr,%
+ hPutStrLn,hPrint,hReady,hSeek,hSetBuffering,hSetPosn,head,%
+ hugsIsEOF,hugsHIsEOF,hugsIsSearchErr,hugsIsNameErr,%
+ hugsIsWriteErr,id,ioError,imagPart,index,indices,init,inits,%
+ inRange,insert,insertBy,interact,intersect,intersectBy,%
+ intersperse,intToDigit,ioeGetErrorString,ioeGetFileName,%
+ ioeGetHandle,isAlreadyExistsError,isAlreadyInUseError,isAlpha,%
+ isAlphaNum,isAscii,isControl,isDenormalized,isDoesNotExistError,%
+ isDigit,isEOF,isEOFError,isFullError,isHexDigit,isIEEE,%
+ isIllegalOperation,isInfinite,isJust,isLower,isNaN,%
+ isNegativeZero,isNothing,isOctDigit,isPermissionError,isPrefixOf,%
+ isPrint,isSpace,isSuffixOf,isUpper,isUserError,iterate,ixmap,%
+ join,last,lcm,length,lex,lexDigits,lexLitChar,liftM,liftM2,%
+ liftM3,liftM4,liftM5,lines,listArray,listToMaybe,log,logBase,%
+ lookup,magnitude,makePolar,map,mapAccumL,mapAccumR,mapAndUnzipM,%
+ mapM,mapM_,mapMaybe,max,maxBound,maximum,maximumBy,maybe,%
+ maybeToList,min,minBound,minimum,minimumBy,mkPolar,mkStdGen,%
+ mplus,mod,msum,mzero,negate,next,newStdGen,not,notElem,nub,nubBy,%
+ null,numerator,odd,openFile,or,ord,otherwise,partition,phase,pi,%
+ polar,pred,print,product,properFraction,putChar,putStr,putStrLn,%
+ quot,quotRem,random,randomIO,randomR,randomRIO,randomRs,randoms,%
+ rangeSize,read,readDec,readFile,readFloat,readHex,readInt,readIO,%
+ readList,readLitChar,readLn,readParen,readOct,readSigned,reads,%
+ readsPrec,realPart,realToFrac,recip,rem,repeat,replicate,return,%
+ reverse,round,scaleFloat,scanl,scanl1,scanr,scanr1,seq,sequence,%
+ sequence_,setStdGen,show,showChar,showEFloat,showFFloat,%
+ showFloat,showGFloat,showInt,showList,showLitChar,showParen,%
+ showSigned,showString,shows,showsPrec,significand,signum,sin,%
+ sinh,snd,sort,sortBy,span,split,splitAt,sqrt,stderr,stdin,stdout,%
+ strict,subtract,succ,sum,system,tail,tails,take,takeWhile,tan,%
+ tanh,toEnum,toInt,toInteger,toLower,toRational,toUpper,transpose,%
+ truncate,try,uncurry,undefined,unfoldr,union,unionBy,unless,%
+ unlines,until,unwords,unzip,unzip3,unzip4,unzip5,unzip6,unzip7,%
+ userError,when,words,writeFile,zero,zip,zip3,zip4,zip5,zip6,zip7,%
+ zipWith,zipWithM,zipWithM_,zipWith3,zipWith4,zipWith5,zipWith6,%
+ zipWith7},%
+ sensitive,%
+ morecomment=[l]--,%
+ morecomment=[n]{\{-}{-\}},%
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+%%
+%% IDL definition (c) 1998 Juergen Heim
+%%
+\lst@definelanguage{IDL}%
+ {morekeywords={and,begin,case,common,do,else,end,endcase,endelse,%
+ endfor,endif,endrep,endwhile,eq,for,function,ge,goto,gt,if,le,lt,%
+ mod,ne,not,of,on_ioerror,or,pro,repeat,return,then,until,while,%
+ xor,on_error,openw,openr,openu,print,printf,printu,plot,read,%
+ readf,readu,writeu,stop},%
+ sensitive=f,%
+ morecomment=[l];,%
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+%%
+%% Inform definition (c) 2003 Jonathan Sauer
+%%
+\lst@definelanguage{inform}{%
+ % Language keywords
+ morekeywords={breakdo,else,false,for,has,hasnt,if,%
+ in,indirect,jump,notin,nothing,NULL,objectloop,ofclass,%
+ private,property,provides,return,rfalse,rtrue,self,string,%
+ switch,to,true,until,while,with,%
+ creature,held,multiexcept,multiheld,multiinside,noun,number,%
+ scope,topic},%
+ %
+ % Inform functions
+ morekeywords=[2]{box,child,children,font,give,inversion,metaclass,move,%
+ new_line,parent,print,print_ret,read,remove,restore,sibling,%
+ save,spaces,quit,style,bold,underline,reverse,roman remaining,%
+ create,destroy,recreate,copy},%
+ %
+ % Inform definitions
+ morekeywords=[3]{Attribute,Array,Class,Constant,Default,End,Endif,Extend,%
+ Global,Ifdef,Iffalse,Ifndef,Ifnot,Iftrue,Include,Object,%
+ Property,Verb,Release,Serial,Statusline},%
+ %
+ % Library attributes
+ morekeywords=[4]{absent,animate,clothing,concealed,container,door,edible,%
+ enterable,female,general,light,lockable locked,male,moved,%
+ neuter,on,open,openable,pluralname,proper,scenery,scored,%
+ static,supporter,switchable,talkable,transparent,visited,%
+ workflag,worn},%
+ %
+ % Libary properties
+ morekeywords=[5]{n_to,s_to,e_to,w_to,ne_to,nw_to,se_to,sw_to,in_to,%
+ out_to,u_to,d_to,add_to_scope,after,article,articles,before,%
+ cant_go,capacity,daemon,describe,description,door_dir,door_to,%
+ each_turn,found_in,grammar,initial,inside_description,invent,%
+ life,list_together,name number,orders,parse_name,plural,%
+ react_after,react_before,short_name,short_name_indef,time_left,%
+ time_out,when_closed,when_open,when_on,when_off,%
+ with_key},
+ %
+ % Library routines
+ morekeywords=[6]{Achieved,AfterRoutines,AllowPushDir,Banner,ChangePlayer,%
+ CommonAncestor,DictionaryLookup,GetGNAOfObject,HasLightSource,%
+ IndirectlyContains,IsSeeThrough,Locale,LoopOverScope,LTI_Insert,%
+ MoveFloatingObjects,NextWord,NextWordStopped,NounDomain,%
+ ObjectIsUntouchable OffersLight,ParseToken,PlaceInScope,PlayerTo,%
+ PronounNotice,PronounValue,ScopeWithin,SetPronoun,SetTime,%
+ StartDaemon,StartTimer,StopDaemon,StopTimer,TestScope,TryNumber,%
+ UnsignedCompare,WordAddress,WordInProperty,WordLength,%
+ WriteListFrom,YesOrNo},%
+ %
+ % Library,entry points
+ morekeywords=[7]{AfterLife,AfterPrompt,Amusing,BeforeParsing,ChooseObjects,%
+ DarkToDark,DeathMessage,GamePostRoutine GamePreRoutine,%
+ Initialise,InScope,LookRoutine,NewRoom,ParseNoun,ParseNumber,%
+ ParserError,PrintRank,PrintTaskName,PrintVerb,TimePasses,%
+ UnknownVerb},%
+ %
+ % Library constants
+ morekeywords=[8]{NEWLINE_BIT,INDENT_BIT,FULLINV_BIT,ENGLISH_BIT,RECURSE_BIT,%
+ ALWAYS_BIT,TERSE_BIT,PARTINV_BIT,DEFART_BIT,WORKFLAG_BIT,%
+ ISARE_BIT,CONCEAL_BIT},%
+ %
+ % Library,meta actions
+ morekeywords=[9]{Pronouns,Quit,Restart,Restore,Save,Verify,ScriptOn,ScriptOff,%
+ NotifyOn,NotifyOff,Places,Objects,Score,FullScore,Version,LMode1,%
+ LMode2,Lmode3},%
+ %
+ % Library,main actions
+ morekeywords=[10]{Close,Disrobe,Drop,Eat,Empty,EmptyT,Enter,Examine,Exit,GetOff,%
+ Give,Go,GoIn,Insert,Inv,InvTall,InvWide,Lock,Look,Open,PutOn,Remove,%
+ Search,Show,SwitchOff,SwitchOn,Take,Transfer,Unlock VagueGo,%
+ Wear},%
+ %
+ % Library,stub actions
+ morekeywords=[11]{Answer,Ask,AskFor,Attack,Blow,Burn,Buy,Climb,Consult,Cut,Dig,%
+ Drink,Fill,Jump,JumpOver,Kiss,Listen,LookUnder,Mild,No,Pray,Pull,%
+ Push,PushDir,Rub,Set,SetTo,Sing,Sleep,Smell,,Sleep,Smell,Sorry,%
+ Squeeze,Strong,Swim,Swing,Taste,Tell,Think,ThrowAt,Tie,Touch,Turn,%
+ Wait,Wake,WakeOther,Wave,WaveHands,Yes},%
+ %
+ otherkeywords={->,-->},%
+ sensitive=false,%
+ morestring=[d]{"},%
+ morecomment=[l]{!}%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Lisp}%
+ {morekeywords={abort,abs,acons,acos,acosh,adjoin,alphanumericp,alter,%
+ append,apply,apropos,aref,arrayp,ash,asin,asinh,assoc,atan,atanh,%
+ atom,bit,boole,boundp,break,butlast,byte,catenate,ceiling,cerror,%
+ char,character,characterp,choose,chunk,cis,close,clrhash,coerce,%
+ collect,commonp,compile,complement,complex,complexp,concatenate,%
+ conjugate,cons,consp,constantp,continue,cos,cosh,cotruncate,%
+ count,delete,denominator,describe,directory,disassemble,%
+ documentation,dpb,dribble,ed,eighth,elt,enclose,endp,eq,eql,%
+ equal,equalp,error,eval,evalhook,evenp,every,exp,expand,export,%
+ expt,fboundp,fceiling,fdefinition,ffloor,fifth,fill,find,first,%
+ float,floatp,floor,fmakunbound,format,fourth,fround,ftruncate,%
+ funcall,functionp,gatherer,gcd,generator,gensym,gentemp,get,getf,%
+ gethash,identity,imagpart,import,inspect,integerp,intern,%
+ intersection,tively,isqrt,keywordp,last,latch,lcm,ldb,ldiff,%
+ length,list,listen,listp,load,log,logand,logbitp,logcount,logeqv,%
+ logior,lognand,lognor,lognot,logtest,logxor,macroexpand,%
+ makunbound,map,mapc,mapcan,mapcar,mapcon,maphash,mapl,maplist,%
+ mask,max,member,merge,min,mingle,minusp,mismatch,mod,namestring,%
+ nbutlast,nconc,nintersection,ninth,not,notany,notevery,nreconc,%
+ nreverse,nsublis,nsubst,nth,nthcdr,null,numberp,numerator,nunion,%
+ oddp,open,packagep,pairlis,pathname,pathnamep,phase,plusp,%
+ position,positions,pprint,previous,princ,print,proclaim,provide,%
+ random,rassoc,rational,rationalize,rationalp,read,readtablep,%
+ realp,realpart,reduce,rem,remhash,remove,remprop,replace,require,%
+ rest,revappend,reverse,room,round,rplaca,rplacd,sbit,scan,schar,%
+ search,second,series,set,seventh,shadow,signal,signum,sin,sinh,%
+ sixth,sleep,some,sort,split,sqrt,streamp,string,stringp,sublis,%
+ subseq,subseries,subsetp,subst,substitute,subtypep,svref,sxhash,%
+ symbolp,tailp,tan,tanh,tenth,terpri,third,truename,truncate,%
+ typep,unexport,unintern,union,until,values,vector,vectorp,warn,%
+ write,zerop,and,assert,case,ccase,cond,ctypecase,decf,declaim,%
+ defclass,defconstant,defgeneric,defmacro,defmethod,defpackage,%
+ defparameter,defsetf,defstruct,deftype,defun,defvar,do,dolist,%
+ dotimes,ecase,encapsulated,etypecase,flet,formatter,gathering,%
+ incf,iterate,labels,let,locally,loop,macrolet,mapping,or,pop,%
+ producing,prog,psetf,psetq,push,pushnew,remf,return,rotatef,%
+ setf,shiftf,step,time,trace,typecase,unless,untrace,when},%
+ sensitive,% ???
+ alsodigit=-,%
+ morecomment=[l];,%
+ morecomment=[s]{\#|}{|\#},% 1997 Aslak Raanes
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+%%
+%% AutoLISP/VisualLISP - Stefan Lagotzki, info@lagotzki.de
+%%
+\lst@definelanguage[Auto]{Lisp}%
+ {morekeywords={abs,acad_colordlg,acad_helpdlg,acad_strlsort,%
+ action_tile,add_list,alert,alloc,and,angle,angtof,angtos,append,%
+ apply,arx,arxload,arxunload,ascii,assoc,atan,atof,atoi,atom,%
+ atoms-family,autoarxload,autoload,Boole,boundp,caddr,cadr,car,%
+ cdr,chr,client_data_tile,close,command,cond,cons,cos,cvunit,%
+ defun,defun-q,defun-q-list-ref,defun-q-list-set,dictadd,dictnext,%
+ dictremove,dictrename,dictsearch,dimx_tile,dimy_tile,distance,%
+ distof,done_dialog,end_image,end_list,entdel,entget,entlast,%
+ entmake,entmakex,entmod,entnext,entsel,entupd,eq,equal,*error*,%
+ eval,exit,exp,expand,expt,fill_image,findfile,fix,float,foreach,%
+ function,gc,gcd,get_attr,get_tile,getangle,getcfg,getcname,%
+ getcorner,getdist,getenv,getfiled,getint,getkword,getorient,%
+ getpoint,getreal,getstring,getvar,graphscr,grclear,grdraw,grread,%
+ grtext,grvecs,handent,help,if,initdia,initget,inters,itoa,lambda,%
+ last,layoutlist,length,list,listp,load,load_dialog,log,logand,%
+ logior,lsh,mapcar,max,mem,member,menucmd,menugroup,min,minusp,%
+ mode_tile,namedobjdict,nentsel,nentselp,new_dialog,not,nth,%
+ null,numberp,open,or,osnap,polar,prin1,princ,print,progn,prompt,%
+ quit,quote,read,read-char,read-line,redraw,regapp,rem,repeat,%
+ reverse,rtos,set,set_tile,setcfg,setenv,setfunhelp,setq,%
+ setvar,setview,sin,slide_image,snvalid,sqrt,ssadd,ssdel,ssget,%
+ ssgetfirst,sslength,ssmemb,ssname,ssnamex,sssetfirst,startapp,%
+ start_dialog,start_image,start_list,strcase,strcat,strlen,subst,%
+ substr,tablet,tblnext,tblobjname,tblsearch,term_dialog,terpri,%
+ textbox,textpage,textscr,trace,trans,type,unload_dialog,untrace,%
+ vector_image,ver,vl-acad-defun,vl-acad-undefun,vl-arx-import,%
+ vl-bb-ref,vl-bb-set,vl-catch-all-apply,%
+ vl-catch-all-error-message,vl-catch-all-error-p,vl-cmdf,vl-consp,%
+ vl-directory-files,vl-doc-export,vl-doc-import,vl-doc-ref,%
+ vl-doc-set,vl-every,vl-exit-with-error,vl-exit-with-value,%
+ vl-file-copy,vl-file-delete,vl-file-directory-p,vl-file-rename,%
+ vl-file-size,vl-file-systime,vl-filename-base,%
+ vl-filename-directory,vl-filename-extension,vl-filename-mktemp,%
+ vl-get-resource,vl-list*,vl-list->string,%
+ vl-list-exported-functions,vl-list-length,vl-list-loaded-vlx,%
+ vl-load-all,vl-load-com,vl-load-reactors,vl-member-if,%
+ vl-member-if-not,vl-position,vl-prin1-to-string,%
+ vl-princ-to-string,vl-propagate,vl-registry-delete,%
+ vl-registry-descendents,vl-registry-read,vl-registry-write,%
+ vl-remove,vl-remove-if,vl-remove-if-not,vl-some,vl-sort,%
+ vl-sort-i,vl-string->list,vl-string-elt,vl-string-left-trim,%
+ vl-string-mismatch,vl-string-position,vl-string-right-trim,%
+ vl-string-search,vl-string-subst,vl-string-translate,%
+ vl-string-trim,vl-symbol-name,vl-symbol-value,vl-symbolp,%
+ vl-unload-vlx,vl-vbaload,vl-vbarun,vl-vlx-loaded-p,vlax-3D-point,%
+ vlax-add-cmd,vlax-create-object,vlax-curve-getArea,%
+ vlax-curve-getDistAtParam,vlax-curve-getDistAtPoint,%
+ vlax-curve-getEndParam,vlax-curve-getEndPoint,%
+ vlax-curve-getParamAtDist,vlax-curve-getParamAtPoint,%
+ vlax-curve-getPointAtDist,vlax-curve-getPointAtParam,%
+ vlax-curve-getStartParam,vlax-curve-getStartPoint,%
+ vlax-curve-isClosed,vlax-curve-isPeriodic,vlax-curve-isPlanar,%
+ vlax-curve-getClosestPointTo,%
+ vlax-curve-getClosestPointToProjection,vlax-curve-getFirstDeriv,%
+ vlax-curve-getSecondDeriv,vlax-dump-object,%
+ vlax-ename->vla-object,vlax-erased-p,vlax-for,%
+ vlax-get-acad-object,vlax-get-object,vlax-get-or-create-object,%
+ vlax-get-property,vlax-import-type-library,vlax-invoke-method,%
+ vlax-ldata-delete,vlax-ldata-get,vlax-ldata-list,vlax-ldata-put,%
+ vlax-ldata-test,vlax-make-safearray,vlax-make-variant,%
+ vlax-map-collection,vlax-method-applicable-p,%
+ vlax-object-released-p,vlax-product-key,%
+ vlax-property-available-p,vlax-put-property,vlax-read-enabled-p,%
+ vlax-release-object,vlax-remove-cmd,vlax-safearray-fill,%
+ vlax-safearray-get-dim,vlax-safearray-get-element,%
+ vlax-safearray-get-l-bound,vlax-safearray-get-u-bound,%
+ vlax-safearray-put-element,vlax-safearray-type,%
+ vlax-safearray->list,vlax-tmatrix,vlax-typeinfo-available-p,%
+ vlax-variant-change-type,vlax-variant-type,vlax-variant-value,%
+ vlax-vla-object->ename,vlax-write-enabled-p,vlisp-compile,%
+ vlr-acdb-reactor,vlr-add,vlr-added-p,vlr-beep-reaction,%
+ vlr-command-reactor,vlr-current-reaction-name,vlr-data,%
+ vlr-data-set,vlr-deepclone-reactor,vlr-docmanager-reactor,%
+ vlr-dwg-reactor,vlr-dxf-reactor,vlr-editor-reactor,%
+ vlr-insert-reactor,vlr-linker-reactor,vlr-lisp-reactor,%
+ vlr-miscellaneous-reactor,vlr-mouse-reactor,vlr-notification,%
+ vlr-object-reactor,vlr-owner-add,vlr-owner-remove,vlr-owners,%
+ vlr-pers,vlr-pers-list,vlr-pers-p,vlr-pers-release,%
+ vlr-reaction-names,vlr-reaction-set,vlr-reactions,vlr-reactors,%
+ vlr-remove,vlr-remove-all,vlr-set-notification,%
+ vlr-sysvar-reactor,vlr-toolbar-reactor,vlr-trace-reaction,%
+ vlr-type,vlr-types,vlr-undo-reactor,vlr-wblock-reactor,%
+ vlr-window-reactor,vlr-xref-reactor,vports,wcmatch,while,%
+ write-char,write-line,xdroom,xdsize,zerop},%
+ alsodigit=->,%
+ otherkeywords={1+,1-},%
+ sensitive=false,%
+ morecomment=[l];,%
+ morecomment=[l];;,%
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+%%
+%% Make definitions (c) 2000 Rolf Niepraschk
+%%
+\lst@definelanguage[gnu]{make}%
+ {morekeywords={SHELL,MAKE,MAKEFLAGS,$@,$\%,$<,$?,$^,$+,$*,%
+ @,^,<,\%,+,?,*,% Markus Pahlow
+ export,unexport,include,override,define,ifdef,ifneq,ifeq,else,%
+ endif,vpath,subst,patsubst,strip,findstring,filter,filter-out,%
+ sort,dir,notdir,suffix,basename,addsuffix,addprefix,join,word,%
+ words,firstword,wildcard,shell,origin,foreach,%
+ @D,@F,*D,*F,\%D,\%F,<D,<F,^D,^F,+D,+F,?D,?F,%
+ AR,AS,CC,CXX,CO,CPP,FC,GET,LEX,PC,YACC,YACCR,MAKEINFO,TEXI2DVI,%
+ WEAVE,CWEAVE,TANGLE,CTANGLE,RM,M2C,LINT,COMPILE,LINK,PREPROCESS,%
+ CHECKOUT,%
+ ARFLAGS,ASFLAGS,CFLAGS,CXXFLAGS,COFLAGS,CPPFLAGS,FFLAGS,GFLAGS,%
+ LDFLAGS,LOADLIBES,LFLAGS,PFLAGS,RFLAGS,YFLAGS,M2FLAGS,MODFLAGS,%
+ LINTFLAGS,MAKEINFO_FLAGS,TEXI2DVI_FLAGS,COFLAGS,GFLAGS,%
+ OUTPUT_OPTION,SCCS_OUTPUT_OPTION,% missing comma: Markus Pahlow
+ .PHONY,.SUFFIXES,.DEFAULT,.PRECIOUS,.INTERMEDIATE,.SECONDARY,%
+ .IGNORE,.SILENT,.EXPORT_ALL_VARIABLES,MAKEFILES,VPATH,MAKESHELL,%
+ MAKELEVEL,MAKECMDGOALS,SUFFIXES},%
+ sensitive=true,
+ morecomment=[l]\#,%
+ morestring=[b]"%
+ }[keywords,comments,strings,make]%
+\lst@definelanguage{make}
+ {morekeywords={SHELL,MAKE,MAKEFLAGS,$@,$\%,$<,$?,$^,$+,$*},%
+ sensitive=true,%
+ morecomment=[l]\#,%
+ morestring=[b]"%
+ }[keywords,comments,strings,make]%
+%%
+%% Mercury definition (c) 1997 Dominique de Waleffe
+%% Extended (c) 2001 Ralph Becket
+%%
+\lst@definelanguage{Mercury}%
+ {otherkeywords={::,->,-->,--->,:-,==,=>,<=,<=>},%
+ morekeywords={module,include_module,import_module,interface,%
+ end_module,implementation,mode,is,failure,semidet,nondet,det,%
+ multi,erroneous,inst,in,out,di,uo,ui,type,typeclass,instance,%
+ where,with_type,pred,func,lambda,impure,semipure,if,then,else,%
+ some,all,not,true,fail,pragma,memo,no_inline,inline,loop_check,%
+ minimal_model,fact_table,type_spec,terminates,does_not_terminate,%
+ check_termination,promise_only_solution,unsafe_promise_unique,%
+ source_file,obsolete,import,export,c_header_code,c_code,%
+ foreign_code,foreign_proc,may_call_mercury,will_not_call_mercury,%
+ thread_safe,not_thread_safe},%
+ sensitive=t,%
+ morecomment=[l]\%,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[bd]",%
+ morestring=[bd]'%
+ }[keywords,comments,strings]%
+%%
+%% Miranda definition (c) 1998 Peter Bartke
+%%
+%% Miranda: pure lazy functional language with polymorphic type system,
+%% garbage collection and functions as first class citizens
+%%
+\lst@definelanguage{Miranda}%
+ {morekeywords={abstype,div,if,mod,otherwise,readvals,show,type,where,%
+ with,bool,char,num,sys_message,False,True,Appendfile,Closefile,%
+ Exit,Stderr,Stdout,System,Tofile,\%include,\%export,\%free,%
+ \%insert,abs,and,arctan,cjustify,code,concat,const,converse,cos,%
+ decode,digit,drop,dropwhile,entier,error,exp,filemode,filter,%
+ foldl,foldl1,foldr,foldr1,force,fst,getenv,hd,hugenum,id,index,%
+ init,integer,iterate,last,lay,layn,letter,limit,lines,ljustify,%
+ log,log10,map,map2,max,max2,member,merge,min,min2,mkset,neg,%
+ numval,or,pi,postfix,product,read,rep,repeat,reverse,rjustify,%
+ scan,seq,showfloat,shownum,showscaled,sin,snd,sort,spaces,sqrt,%
+ subtract,sum,system,take,takewhile,tinynum,tl,transpose,undef,%
+ until,zip2,zip3,zip4,zip5,zip6,zip},%
+ sensitive,%
+ morecomment=[l]||,%
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+%%
+%% ML definition (c) 1999 Torben Hoffmann
+%%
+\lst@definelanguage{ML}%
+ {morekeywords={abstype,and,andalso,as,case,do,datatype,else,end,%
+ eqtype,exception,fn,fun,functor,handle,if,in,include,infix,%
+ infixr,let,local,nonfix,of,op,open,orelse,raise,rec,sharing,sig,%
+ signature,struct,structure,then,type,val,with,withtype,while},%
+ sensitive,%
+ morecomment=[n]{(*}{*)},%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% Oz definition (c) Andres Becerra Sandoval
+%%
+\lst@definelanguage{Oz}%
+ {morekeywords={andthen,at,attr,case,catch,choice,class,%
+ cond,declare,define,dis,div,else,elsecase,%
+ elseif,end,export,fail,false,feat,finally,%
+ from,fun,functor,if,import,in,local,%
+ lock,meth,mod,not,of,or,orelse,%
+ prepare,proc,prop,raise,require,self,skip,%
+ then,thread,true,try,unit},%
+ sensitive=true,%
+ morecomment=[l]{\%},%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]",%
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+%%
+%% PHP definition by Luca Balzerani
+%%
+\lst@definelanguage{PHP}%
+ {morekeywords={%
+ %--- core language
+ <?,?>,::,break,case,continue,default,do,else,%
+ elseif,for,foreach,if,include,require,phpinfo,%
+ switch,while,false,FALSE,true,TRUE,%
+ %--- apache functions
+ apache_lookup_uri,apache_note,ascii2ebcdic,ebcdic2ascii,%
+ virtual,apache_child_terminate,apache_setenv,%
+ %--- array functions
+ array,array_change_key_case,array_chunk,array_count_values,%
+ array_filter,array_flip,array_fill,array_intersect,%
+ array_keys,array_map,array_merge,array_merge_recursive,%
+ array_pad,array_pop,array_push,array_rand,array_reverse,%
+ array_shift,array_slice,array_splice,array_sum,array_unique,%
+ array_values,array_walk,arsort,asort,compact,count,current,each,%
+ extract,in_array,array_search,key,krsort,ksort,list,natsort,%
+ next,pos,prev,range,reset,rsort,shuffle,sizeof,sort,uasort,%
+ usort,%
+ %--- aspell functions
+ aspell_new,aspell_check,aspell_check_raw,aspell_suggest,%
+ %--- bc functions
+ bcadd,bccomp,bcdiv,bcmod,bcmul,bcpow,bcscale,bcsqrt,bcsub,%
+ %--- bzip2 functions
+ bzclose,bzcompress,bzdecompress,bzerrno,bzerror,bzerrstr,%
+ bzopen,bzread,bzwrite,%
+ %--- calendar functions
+ JDToGregorian,GregorianToJD,JDToJulian,JulianToJD,JDToJewish,%
+ JDToFrench,FrenchToJD,JDMonthName,JDDayOfWeek,easter_date,%
+ unixtojd,jdtounix,cal_days_in_month,cal_to_jd,cal_from_jd,%
+ %--- ccvs functions
+ ccvs_init,ccvs_done,ccvs_new,ccvs_add,ccvs_delete,ccvs_auth,%
+ ccvs_reverse,ccvs_sale,ccvs_void,ccvs_status,ccvs_count,%
+ ccvs_report,ccvs_command,ccvs_textvalue,%
+ %--- classobj functions
+ call_user_method,call_user_method_array,class_exists,get_class,%
+ get_class_vars,get_declared_classes,get_object_vars,%
+ is_a,is_subclass_of,method_exists,%
+ %--- com functions
+ COM,VARIANT,com_load,com_invoke,com_propget,com_get,com_propput,%
+ com_set,com_addref,com_release,com_isenum,com_load_typelib,%
+ %--- cpdf functions
+ cpdf_add_annotation,cpdf_add_outline,cpdf_arc,cpdf_begin_text,%
+ cpdf_clip,cpdf_close,cpdf_closepath,cpdf_closepath_fill_stroke,%
+ cpdf_continue_text,cpdf_curveto,cpdf_end_text,cpdf_fill,%
+ cpdf_finalize,cpdf_finalize_page,%
+ cpdf_import_jpeg,cpdf_lineto,cpdf_moveto,cpdf_newpath,cpdf_open,%
+ cpdf_page_init,cpdf_place_inline_image,cpdf_rect,cpdf_restore,%
+ cpdf_rmoveto,cpdf_rotate,cpdf_rotate_text,cpdf_save,%
+ cpdf_scale,cpdf_set_char_spacing,cpdf_set_creator,%
+ cpdf_set_font,cpdf_set_horiz_scaling,cpdf_set_keywords,%
+ cpdf_set_page_animation,cpdf_set_subject,cpdf_set_text_matrix,%
+ cpdf_set_text_rendering,cpdf_set_text_rise,cpdf_set_title,%
+ cpdf_setdash,cpdf_setflat,cpdf_setgray,cpdf_setgray_fill,%
+ cpdf_setlinecap,cpdf_setlinejoin,cpdf_setlinewidth,%
+ cpdf_setrgbcolor,cpdf_setrgbcolor_fill,cpdf_setrgbcolor_stroke,%
+ cpdf_show_xy,cpdf_stringwidth,cpdf_set_font_directories,%
+ cpdf_set_viewer_preferences,cpdf_stroke,cpdf_text,%
+ cpdf_set_action_url,%
+ %--- crack functions
+ crack_opendict,crack_closedict,crack_check,crack_getlastmessage,%
+ %--- ctype functions
+ ctype_alnum,ctype_alpha,ctype_cntrl,ctype_digit,ctype_lower,%
+ ctype_print,ctype_punct,ctype_space,ctype_upper,ctype_xdigit,%
+ %--- curl functions
+ curl_init,curl_setopt,curl_exec,curl_close,curl_version,%
+ curl_error,curl_getinfo,%
+ %--- cybercash functions
+ cybercash_encr,cybercash_decr,cybercash_base64_encode,%
+ %--- cybermut functions
+ cybermut_creerformulairecm,cybermut_testmac,%
+ %--- cyrus functions
+ cyrus_connect,cyrus_authenticate,cyrus_bind,cyrus_unbind,%
+ cyrus_close,%
+ %--- datetime functions
+ checkdate,date,getdate,gettimeofday,gmdate,gmmktime,gmstrftime,%
+ microtime,mktime,strftime,time,strtotime,%
+ %--- dbase functions
+ dbase_create,dbase_open,dbase_close,dbase_pack,dbase_add_record,%
+ dbase_delete_record,dbase_get_record,%
+ dbase_numfields,dbase_numrecords,%
+ %--- dba functions
+ dba_close,dba_delete,dba_exists,dba_fetch,dba_firstkey,%
+ dba_nextkey,dba_popen,dba_open,dba_optimize,dba_replace,%
+ %--- dbm functions
+ dbmopen,dbmclose,dbmexists,dbmfetch,dbminsert,dbmreplace,%
+ dbmfirstkey,dbmnextkey,dblist,%
+ %--- dbx functions
+ dbx_close,dbx_connect,dbx_error,dbx_query,dbx_sort,dbx_compare,%
+ %--- dio functions
+ dio_open,dio_read,dio_write,dio_truncate,dio_stat,dio_seek,%
+ dio_close,%
+ %--- dir functions
+ chroot,chdir,dir,closedir,getcwd,opendir,readdir,rewinddir,%
+ %--- dotnet functions
+ dotnet_load,%
+ %--- errorfunc functions
+ error_log,error_reporting,restore_error_handler,%
+ trigger_error,user_error,%
+ %--- exec functions
+ escapeshellarg,escapeshellcmd,exec,passthru,system,shell_exec,%
+ %--- fbsql functions
+ fbsql_affected_rows,fbsql_autocommit,fbsql_change_user,%
+ fbsql_commit,fbsql_connect,fbsql_create_db,fbsql_create_blob,%
+ fbsql_database_password,fbsql_data_seek,fbsql_db_query,%
+ fbsql_drop_db,fbsql_errno,fbsql_error,fbsql_fetch_array,%
+ fbsql_fetch_field,fbsql_fetch_lengths,fbsql_fetch_object,%
+ fbsql_field_flags,fbsql_field_name,fbsql_field_len,%
+ fbsql_field_table,fbsql_field_type,fbsql_free_result,%
+ fbsql_list_dbs,fbsql_list_fields,fbsql_list_tables,%
+ fbsql_num_fields,fbsql_num_rows,fbsql_pconnect,fbsql_query,%
+ fbsql_read_clob,fbsql_result,fbsql_rollback,fbsql_set_lob_mode,%
+ fbsql_start_db,fbsql_stop_db,fbsql_tablename,fbsql_warnings,%
+ fbsql_get_autostart_info,fbsql_hostname,fbsql_password,%
+ fbsql_username,%
+ %--- fdf functions
+ fdf_open,fdf_close,fdf_create,fdf_save,fdf_get_value,%
+ fdf_next_field_name,fdf_set_ap,fdf_set_status,fdf_get_status,%
+ fdf_get_file,fdf_set_flags,fdf_set_opt,%
+ fdf_set_javascript_action,fdf_set_encoding,fdf_add_template,%
+ %--- filepro functions
+ filepro,filepro_fieldname,filepro_fieldtype,filepro_fieldwidth,%
+ filepro_fieldcount,filepro_rowcount,%
+ %--- filesystem functions
+ basename,chgrp,chmod,chown,clearstatcache,copy,delete,dirname,%
+ diskfreespace,disk_total_space,fclose,feof,fflush,fgetc,fgetcsv,%
+ fgetss,file_get_contents,file,file_exists,fileatime,filectime,%
+ fileinode,filemtime,fileowner,fileperms,filesize,filetype,flock,%
+ fopen,fpassthru,fputs,fread,fscanf,fseek,fstat,ftell,ftruncate,%
+ set_file_buffer,is_dir,is_executable,is_file,is_link,%
+ is_writable,is_writeable,is_uploaded_file,link,linkinfo,mkdir,%
+ parse_ini_file,pathinfo,pclose,popen,readfile,readlink,rename,%
+ rmdir,stat,lstat,realpath,symlink,tempnam,tmpfile,touch,umask,%
+ %--- fribidi functions
+ fribidi_log2vis,%
+ %--- ftp functions
+ ftp_connect,ftp_login,ftp_pwd,ftp_cdup,ftp_chdir,ftp_mkdir,%
+ ftp_nlist,ftp_rawlist,ftp_systype,ftp_pasv,ftp_get,ftp_fget,%
+ ftp_fput,ftp_size,ftp_mdtm,ftp_rename,ftp_delete,ftp_site,%
+ ftp_quit,ftp_exec,ftp_set_option,ftp_get_option,%
+ %--- funchand functions
+ call_user_func_array,call_user_func,create_function,%
+ func_get_args,func_num_args,function_exists,%
+ register_shutdown_function,register_tick_function,%
+ %--- gettext functions
+ bindtextdomain,bind_textdomain_codeset,dcgettext,dcngettext,%
+ dngettext,gettext,ngettext,textdomain,%
+ %--- gmp functions
+ gmp_init,gmp_intval,gmp_strval,gmp_add,gmp_sub,gmp_mul,%
+ gmp_div_r,gmp_div_qr,gmp_div,gmp_mod,gmp_divexact,gmp_cmp,%
+ gmp_com,gmp_abs,gmp_sign,gmp_fact,gmp_sqrt,gmp_sqrtrm,%
+ gmp_pow,gmp_powm,gmp_prob_prime,gmp_gcd,gmp_gcdext,gmp_invert,%
+ gmp_jacobi,gmp_random,gmp_and,gmp_or,gmp_xor,gmp_setbit,%
+ gmp_scan0,gmp_scan1,gmp_popcount,gmp_hamdist,%
+ %--- http functions
+ header,headers_sent,setcookie,%
+ %--- hw functions
+ hw_Array2Objrec,hw_Children,hw_ChildrenObj,hw_Close,hw_Connect,%
+ hw_Deleteobject,hw_DocByAnchor,hw_DocByAnchorObj,%
+ hw_Document_BodyTag,hw_Document_Content,hw_Document_SetContent,%
+ hw_ErrorMsg,hw_EditText,hw_Error,hw_Free_Document,hw_GetParents,%
+ hw_GetChildColl,hw_GetChildCollObj,hw_GetRemote,%
+ hw_GetSrcByDestObj,hw_GetObject,hw_GetAndLock,hw_GetText,%
+ hw_GetObjectByQueryObj,hw_GetObjectByQueryColl,%
+ hw_GetChildDocColl,hw_GetChildDocCollObj,hw_GetAnchors,%
+ hw_Mv,hw_Identify,hw_InCollections,hw_Info,hw_InsColl,hw_InsDoc,%
+ hw_InsertObject,hw_mapid,hw_Modifyobject,hw_New_Document,%
+ hw_Output_Document,hw_pConnect,hw_PipeDocument,hw_Root,%
+ hw_Who,hw_getusername,hw_stat,hw_setlinkroot,hw_connection_info,%
+ hw_insertanchors,hw_getrellink,hw_changeobject,%
+ %--- ibase functions
+ ibase_connect,ibase_pconnect,ibase_close,ibase_query,%
+ ibase_fetch_row,ibase_fetch_object,ibase_field_info,%
+ ibase_free_result,ibase_prepare,ibase_execute,ibase_trans,%
+ ibase_rollback,ibase_timefmt,ibase_num_fields,ibase_blob_add,%
+ ibase_blob_close,ibase_blob_create,ibase_blob_echo,%
+ ibase_blob_import,ibase_blob_info,ibase_blob_open,%
+ %--- icap functions
+ icap_open,icap_close,icap_fetch_event,icap_list_events,%
+ icap_delete_event,icap_snooze,icap_list_alarms,%
+ icap_rename_calendar,icap_delete_calendar,icap_reopen,%
+ %--- iconv functions
+ iconv,iconv_get_encoding,iconv_set_encoding,ob_iconv_handler,%
+ %--- ifx functions
+ ifx_connect,ifx_pconnect,ifx_close,ifx_query,ifx_prepare,ifx_do,%
+ ifx_errormsg,ifx_affected_rows,ifx_getsqlca,ifx_fetch_row,%
+ ifx_fieldtypes,ifx_fieldproperties,ifx_num_fields,ifx_num_rows,%
+ ifx_create_char,ifx_free_char,ifx_update_char,ifx_get_char,%
+ ifx_copy_blob,ifx_free_blob,ifx_get_blob,ifx_update_blob,%
+ ifx_textasvarchar,ifx_byteasvarchar,ifx_nullformat,%
+ ifxus_free_slob,ifxus_close_slob,ifxus_open_slob,%
+ ifxus_seek_slob,ifxus_read_slob,ifxus_write_slob,%
+ %--- iisfunc functions
+ iis_get_server_by_path,iis_get_server_by_comment,iis_add_server,%
+ iis_set_dir_security,iis_get_dir_security,iis_set_server_rights,%
+ iis_set_script_map,iis_get_script_map,iis_set_app_settings,%
+ iis_stop_server,iis_stop_service,iis_start_service,%
+ %--- image functions
+ exif_imagetype,exif_read_data,exif_thumbnail,getimagesize,%
+ imagealphablending,imagearc,imagefilledarc,imageellipse,%
+ imagechar,imagecharup,imagecolorallocate,imagecolordeallocate,%
+ imagecolorclosest,imagecolorclosestalpha,imagecolorclosestthwb,%
+ imagecolorexactalpha,imagecolorresolve,imagecolorresolvealpha,%
+ imagecolorset,imagecolorsforindex,imagecolorstotal,%
+ imagecopy,imagecopymerge,imagecopymergegray,imagecopyresized,%
+ imagecreate,imagecreatetruecolor,imagetruecolortopalette,%
+ imagecreatefromgd2,imagecreatefromgd2part,imagecreatefromgif,%
+ imagecreatefrompng,imagecreatefromwbmp,imagecreatefromstring,%
+ imagecreatefromxpm,imagedashedline,imagedestroy,imagefill,%
+ imagefilledrectangle,imagefilltoborder,imagefontheight,%
+ imagegd,imagegd2,imagegif,imagepng,imagejpeg,imagewbmp,%
+ imageline,imageloadfont,imagepalettecopy,imagepolygon,%
+ imagepsencodefont,imagepsfreefont,imagepsloadfont,%
+ imagepsslantfont,imagepstext,imagerectangle,imagesetpixel,%
+ imagesetstyle,imagesettile,imagesetthickness,imagestring,%
+ imagesx,imagesy,imagettfbbox,imageftbbox,imagettftext,%
+ imagetypes,jpeg2wbmp,png2wbmp,iptcembed,read_exif_data,%
+ %--- imap functions
+ imap_8bit,imap_alerts,imap_append,imap_base64,imap_binary,%
+ imap_bodystruct,imap_check,imap_clearflag_full,imap_close,%
+ imap_delete,imap_deletemailbox,imap_errors,imap_expunge,%
+ imap_fetchbody,imap_fetchheader,imap_fetchstructure,%
+ imap_getmailboxes,imap_getsubscribed,imap_header,%
+ imap_headers,imap_last_error,imap_listmailbox,%
+ imap_mail,imap_mail_compose,imap_mail_copy,imap_mail_move,%
+ imap_mime_header_decode,imap_msgno,imap_num_msg,imap_num_recent,%
+ imap_ping,imap_popen,imap_qprint,imap_renamemailbox,imap_reopen,%
+ imap_rfc822_parse_headers,imap_rfc822_write_address,%
+ imap_search,imap_setacl,imap_set_quota,imap_setflag_full,%
+ imap_status,imap_subscribe,imap_uid,imap_undelete,%
+ imap_utf7_decode,imap_utf7_encode,imap_utf8,imap_thread,%
+ %--- info functions
+ assert,assert_options,extension_loaded,dl,getenv,get_cfg_var,%
+ get_defined_constants,get_extension_funcs,getmygid,%
+ get_loaded_extensions,get_magic_quotes_gpc,%
+ getlastmod,getmyinode,getmypid,getmyuid,get_required_files,%
+ ini_alter,ini_get,ini_get_all,ini_restore,ini_set,phpcredits,%
+ phpversion,php_logo_guid,php_sapi_name,php_uname,putenv,%
+ set_time_limit,version_compare,zend_logo_guid,zend_version,%
+ %--- ircg functions
+ ircg_pconnect,ircg_fetch_error_msg,ircg_set_current,ircg_join,%
+ ircg_msg,ircg_notice,ircg_nick,ircg_topic,ircg_channel_mode,%
+ ircg_whois,ircg_kick,ircg_ignore_add,ircg_ignore_del,%
+ ircg_is_conn_alive,ircg_lookup_format_messages,%
+ ircg_set_on_die,ircg_set_file,ircg_get_username,%
+ ircg_nickname_unescape,%
+ %--- java functions
+ java_last_exception_clear,java_last_exception_get,%
+ %--- ldap functions
+ ldap_add,ldap_bind,ldap_close,ldap_compare,ldap_connect,%
+ ldap_delete,ldap_dn2ufn,ldap_err2str,ldap_errno,ldap_error,%
+ ldap_first_attribute,ldap_first_entry,ldap_free_result,%
+ ldap_get_dn,ldap_get_entries,ldap_get_option,ldap_get_values,%
+ ldap_list,ldap_modify,ldap_mod_add,ldap_mod_del,%
+ ldap_next_attribute,ldap_next_entry,ldap_read,ldap_rename,%
+ ldap_set_option,ldap_unbind,ldap_8859_to_t61,%
+ ldap_next_reference,ldap_parse_reference,ldap_parse_result,%
+ ldap_sort,ldap_start_tls,ldap_t61_to_8859,%
+ %--- mail functions
+ mail,ezmlm_hash,%
+ %--- math functions
+ abs,acos,acosh,asin,asinh,atan,atanh,atan2,base_convert,bindec,%
+ cos,cosh,decbin,dechex,decoct,deg2rad,exp,expm1,floor,%
+ hexdec,hypot,is_finite,is_infinite,is_nan,lcg_value,log,log10,%
+ max,min,mt_rand,mt_srand,mt_getrandmax,number_format,octdec,pi,%
+ rad2deg,rand,round,sin,sinh,sqrt,srand,tan,tanh,%
+ %--- mbstring functions
+ mb_language,mb_parse_str,mb_internal_encoding,mb_http_input,%
+ mb_detect_order,mb_substitute_character,mb_output_handler,%
+ mb_strlen,mb_strpos,mb_strrpos,mb_substr,mb_strcut,mb_strwidth,%
+ mb_convert_encoding,mb_detect_encoding,mb_convert_kana,%
+ mb_decode_mimeheader,mb_convert_variables,%
+ mb_decode_numericentity,mb_send_mail,mb_get_info,%
+ mb_ereg,mb_eregi,mb_ereg_replace,mb_eregi_replace,mb_split,%
+ mb_ereg_search,mb_ereg_search_pos,mb_ereg_search_regs,%
+ mb_ereg_search_getregs,mb_ereg_search_getpos,%
+ %--- mcal functions
+ mcal_open,mcal_popen,mcal_reopen,mcal_close,%
+ mcal_rename_calendar,mcal_delete_calendar,mcal_fetch_event,%
+ mcal_append_event,mcal_store_event,mcal_delete_event,%
+ mcal_list_alarms,mcal_event_init,mcal_event_set_category,%
+ mcal_event_set_description,mcal_event_set_start,%
+ mcal_event_set_alarm,mcal_event_set_class,mcal_is_leap_year,%
+ mcal_date_valid,mcal_time_valid,mcal_day_of_week,%
+ mcal_date_compare,mcal_next_recurrence,%
+ mcal_event_set_recur_daily,mcal_event_set_recur_weekly,%
+ mcal_event_set_recur_monthly_wday,mcal_event_set_recur_yearly,%
+ mcal_event_add_attribute,mcal_expunge,mcal_week_of_year,%
+ %--- mcrypt functions
+ mcrypt_get_cipher_name,mcrypt_get_block_size,%
+ mcrypt_create_iv,mcrypt_cbc,mcrypt_cfb,mcrypt_ecb,mcrypt_ofb,%
+ mcrypt_list_modes,mcrypt_get_iv_size,mcrypt_encrypt,%
+ mcrypt_module_open,mcrypt_module_close,mcrypt_generic_deinit,%
+ mcrypt_generic,mdecrypt_generic,mcrypt_generic_end,%
+ mcrypt_enc_is_block_algorithm_mode,%
+ mcrypt_enc_is_block_mode,mcrypt_enc_get_block_size,%
+ mcrypt_enc_get_supported_key_sizes,mcrypt_enc_get_iv_size,%
+ mcrypt_enc_get_modes_name,mcrypt_module_self_test,%
+ mcrypt_module_is_block_algorithm,mcrypt_module_is_block_mode,%
+ mcrypt_module_get_algo_key_size,%
+ %--- mhash functions
+ mhash_get_hash_name,mhash_get_block_size,mhash_count,mhash,%
+ %--- misc functions
+ connection_aborted,connection_status,connection_timeout,%
+ define,defined,die,eval,exit,get_browser,highlight_file,%
+ ignore_user_abort,iptcparse,leak,pack,show_source,sleep,uniqid,%
+ usleep,%
+ %--- mnogosearch functions
+ udm_add_search_limit,udm_alloc_agent,udm_api_version,%
+ udm_cat_list,udm_clear_search_limits,udm_errno,udm_error,%
+ udm_free_agent,udm_free_ispell_data,udm_free_res,%
+ udm_get_res_field,udm_get_res_param,udm_load_ispell_data,%
+ udm_check_charset,udm_check_stored,udm_close_stored,udm_crc32,%
+ %--- msession functions
+ msession_connect,msession_disconnect,msession_count,%
+ msession_destroy,msession_lock,msession_unlock,msession_set,%
+ msession_uniq,msession_randstr,msession_find,msession_list,%
+ msession_set_array,msession_listvar,msession_timeout,%
+ msession_getdata,msession_setdata,msession_plugin,%
+ %--- msql functions
+ msql,msql_affected_rows,msql_close,msql_connect,msql_create_db,%
+ msql_data_seek,msql_dbname,msql_drop_db,msql_dropdb,msql_error,%
+ msql_fetch_field,msql_fetch_object,msql_fetch_row,%
+ msql_field_seek,msql_fieldtable,msql_fieldtype,msql_fieldflags,%
+ msql_free_result,msql_freeresult,msql_list_fields,%
+ msql_list_dbs,msql_listdbs,msql_list_tables,msql_listtables,%
+ msql_num_rows,msql_numfields,msql_numrows,msql_pconnect,%
+ msql_regcase,msql_result,msql_select_db,msql_selectdb,%
+ %--- mssql functions
+ mssql_close,mssql_connect,mssql_data_seek,mssql_fetch_array,%
+ mssql_fetch_object,mssql_fetch_row,mssql_field_length,%
+ mssql_field_seek,mssql_field_type,mssql_free_result,%
+ mssql_min_error_severity,mssql_min_message_severity,%
+ mssql_num_fields,mssql_num_rows,mssql_pconnect,mssql_query,%
+ mssql_select_db,mssql_bind,mssql_execute,mssql_fetch_assoc,%
+ mssql_guid_string,mssql_init,mssql_rows_affected,%
+ %--- muscat functions
+ muscat_setup,muscat_setup_net,muscat_give,muscat_get,%
+ %--- mysql functions
+ mysql_affected_rows,mysql_change_user,mysql_character_set_name,%
+ mysql_connect,mysql_create_db,mysql_data_seek,mysql_db_name,%
+ mysql_drop_db,mysql_errno,mysql_error,mysql_escape_string,%
+ mysql_fetch_assoc,mysql_fetch_field,mysql_fetch_lengths,%
+ mysql_fetch_row,mysql_field_flags,mysql_field_name,%
+ mysql_field_seek,mysql_field_table,mysql_field_type,%
+ mysql_info,mysql_insert_id,mysql_list_dbs,mysql_list_fields,%
+ mysql_list_tables,mysql_num_fields,mysql_num_rows,%
+ mysql_ping,mysql_query,mysql_unbuffered_query,%
+ mysql_result,mysql_select_db,mysql_tablename,mysql_thread_id,%
+ mysql_get_host_info,mysql_get_proto_info,mysql_get_server_info,%
+ %--- network functions
+ checkdnsrr,closelog,debugger_off,debugger_on,%
+ fsockopen,gethostbyaddr,gethostbyname,gethostbynamel,getmxrr,%
+ getprotobynumber,getservbyname,getservbyport,ip2long,long2ip,%
+ pfsockopen,socket_get_status,socket_set_blocking,%
+ syslog,%
+ %--- nis functions
+ yp_get_default_domain,yp_order,yp_master,yp_match,yp_first,%
+ yp_errno,yp_err_string,yp_all,yp_cat,%
+ %--- oci8 functions
+ OCIDefineByName,OCIBindByName,OCILogon,OCIPLogon,OCINLogon,%
+ OCIExecute,OCICommit,OCIRollback,OCINewDescriptor,OCIRowCount,%
+ OCIResult,OCIFetch,OCIFetchInto,OCIFetchStatement,%
+ OCIColumnName,OCIColumnSize,OCIColumnType,OCIServerVersion,%
+ OCINewCursor,OCIFreeStatement,OCIFreeCursor,OCIFreeDesc,%
+ OCIError,OCIInternalDebug,OCICancel,OCISetPrefetch,%
+ OCISaveLobFile,OCISaveLob,OCILoadLob,OCIColumnScale,%
+ OCIColumnTypeRaw,OCINewCollection,OCIFreeCollection,%
+ OCICollAppend,OCICollAssignElem,OCICollGetElem,OCICollMax,%
+ OCICollTrim,%
+ %--- oracle functions
+ Ora_Bind,Ora_Close,Ora_ColumnName,Ora_ColumnSize,Ora_ColumnType,%
+ Ora_CommitOff,Ora_CommitOn,Ora_Do,Ora_Error,Ora_ErrorCode,%
+ Ora_Fetch,Ora_Fetch_Into,Ora_GetColumn,Ora_Logoff,Ora_Logon,%
+ Ora_Numcols,Ora_Numrows,Ora_Open,Ora_Parse,Ora_Rollback,%
+ %--- outcontrol functions
+ flush,ob_start,ob_get_contents,ob_get_length,ob_get_level,%
+ ob_flush,ob_clean,ob_end_flush,ob_end_clean,ob_implicit_flush,%
+ %--- ovrimos functions
+ ovrimos_connect,ovrimos_close,ovrimos_longreadlen,%
+ ovrimos_execute,ovrimos_cursor,ovrimos_exec,ovrimos_fetch_into,%
+ ovrimos_result,ovrimos_result_all,ovrimos_num_rows,%
+ ovrimos_field_name,ovrimos_field_type,ovrimos_field_len,%
+ ovrimos_free_result,ovrimos_commit,ovrimos_rollback,%
+ %--- pcntl functions
+ pcntl_fork,pcntl_signal,pcntl_waitpid,pcntl_wexitstatus,%
+ pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,%
+ pcntl_exec,%
+ %--- pcre functions
+ preg_match,preg_match_all,preg_replace,preg_replace_callback,%
+ preg_quote,preg_grep,Pattern Modifiers,Pattern Syntax,%
+ %--- pdf functions
+ pdf_add_annotation,pdf_add_bookmark,pdf_add_launchlink,%
+ pdf_add_note,pdf_add_outline,pdf_add_pdflink,pdf_add_thumbnail,%
+ pdf_arc,pdf_arcn,pdf_attach_file,pdf_begin_page,%
+ pdf_begin_template,pdf_circle,pdf_clip,pdf_close,pdf_closepath,%
+ pdf_closepath_stroke,pdf_close_image,pdf_close_pdi,%
+ pdf_concat,pdf_continue_text,pdf_curveto,pdf_delete,%
+ pdf_endpath,pdf_end_pattern,pdf_end_template,pdf_fill,%
+ pdf_findfont,pdf_get_buffer,pdf_get_font,pdf_get_fontname,%
+ pdf_get_image_height,pdf_get_image_width,pdf_get_parameter,%
+ pdf_get_pdi_value,pdf_get_majorversion,pdf_get_minorversion,%
+ pdf_initgraphics,pdf_lineto,pdf_makespotcolor,pdf_moveto,%
+ pdf_open,pdf_open_CCITT,pdf_open_file,pdf_open_gif,%
+ pdf_open_image_file,pdf_open_jpeg,pdf_open_memory_image,%
+ pdf_open_pdi_page,pdf_open_png,pdf_open_tiff,pdf_place_image,%
+ pdf_rect,pdf_restore,pdf_rotate,pdf_save,pdf_scale,pdf_setcolor,%
+ pdf_setflat,pdf_setfont,pdf_setgray,pdf_setgray_fill,%
+ pdf_setlinecap,pdf_setlinejoin,pdf_setlinewidth,pdf_setmatrix,%
+ pdf_setpolydash,pdf_setrgbcolor,pdf_setrgbcolor_fill,%
+ pdf_set_border_color,pdf_set_border_dash,pdf_set_border_style,%
+ pdf_set_duration,pdf_set_font,pdf_set_horiz_scaling,%
+ pdf_set_info_author,pdf_set_info_creator,pdf_set_info_keywords,%
+ pdf_set_info_title,pdf_set_leading,pdf_set_parameter,%
+ pdf_set_text_rendering,pdf_set_text_rise,pdf_set_text_matrix,%
+ pdf_set_word_spacing,pdf_show,pdf_show_boxed,pdf_show_xy,%
+ pdf_stringwidth,pdf_stroke,pdf_translate,%
+ %--- pfpro functions
+ pfpro_init,pfpro_cleanup,pfpro_process,pfpro_process_raw,%
+ %--- pgsql functions
+ pg_close,pg_affected_rows,pg_connect,pg_dbname,pg_end_copy,%
+ pg_query,pg_fetch_array,pg_fetch_object,pg_fetch_row,%
+ pg_field_name,pg_field_num,pg_field_prtlen,pg_field_size,%
+ pg_free_result,pg_last_oid,pg_host,pg_last_notice,pg_lo_close,%
+ pg_lo_export,pg_lo_import,pg_lo_open,pg_lo_read,pg_lo_seek,%
+ pg_lo_read_all,pg_lo_unlink,pg_lo_write,pg_num_fields,%
+ pg_options,pg_pconnect,pg_port,pg_put_line,pg_fetch_result,%
+ pg_client_encoding,pg_trace,pg_tty,pg_untrace,pg_get_result,%
+ pg_send_query,pg_cancel_query,pg_connection_busy,%
+ pg_connection_status,pg_copy_from,pg_copy_to,pg_escape_bytea,%
+ pg_result_error,%
+ %--- posix functions
+ posix_kill,posix_getpid,posix_getppid,posix_getuid,%
+ posix_getgid,posix_getegid,posix_setuid,posix_seteuid,%
+ posix_setegid,posix_getgroups,posix_getlogin,posix_getpgrp,%
+ posix_setpgid,posix_getpgid,posix_getsid,posix_uname,%
+ posix_ctermid,posix_ttyname,posix_isatty,posix_getcwd,%
+ posix_getgrnam,posix_getgrgid,posix_getpwnam,posix_getpwuid,%
+ %--- printer functions
+ printer_open,printer_abort,printer_close,printer_write,%
+ printer_set_option,printer_get_option,printer_create_dc,%
+ printer_start_doc,printer_end_doc,printer_start_page,%
+ printer_create_pen,printer_delete_pen,printer_select_pen,%
+ printer_delete_brush,printer_select_brush,printer_create_font,%
+ printer_select_font,printer_logical_fontheight,%
+ printer_draw_rectangle,printer_draw_elipse,printer_draw_text,%
+ printer_draw_chord,printer_draw_pie,printer_draw_bmp,%
+ %--- pspell functions
+ pspell_add_to_personal,pspell_add_to_session,pspell_check,%
+ pspell_config_create,pspell_config_ignore,pspell_config_mode,%
+ pspell_config_repl,pspell_config_runtogether,%
+ pspell_new,pspell_new_config,pspell_new_personal,%
+ pspell_store_replacement,pspell_suggest,%
+ %--- qtdom functions
+ qdom_tree,qdom_error,%
+ %--- readline functions
+ readline,readline_add_history,readline_clear_history,%
+ readline_info,readline_list_history,readline_read_history,%
+ %--- recode functions
+ recode_string,recode,recode_file,%
+ %--- regex functions
+ ereg,ereg_replace,eregi,eregi_replace,split,spliti,sql_regcase,%
+ %--- sem functions
+ sem_get,sem_acquire,sem_release,sem_remove,shm_attach,%
+ shm_remove,shm_put_var,shm_get_var,shm_remove_var,ftok,%
+ %--- sesam functions
+ sesam_connect,sesam_disconnect,sesam_settransaction,%
+ sesam_rollback,sesam_execimm,sesam_query,sesam_num_fields,%
+ sesam_diagnostic,sesam_fetch_result,sesam_affected_rows,%
+ sesam_field_array,sesam_fetch_row,sesam_fetch_array,%
+ sesam_free_result,%
+ %--- session functions
+ session_start,session_destroy,session_name,session_module_name,%
+ session_id,session_register,session_unregister,session_unset,%
+ session_get_cookie_params,session_set_cookie_params,%
+ session_encode,session_set_save_handler,session_cache_limiter,%
+ session_write_close,%
+ %--- shmop functions
+ shmop_open,shmop_read,shmop_write,shmop_size,shmop_delete,%
+ %--- snmp functions
+ snmpget,snmpset,snmpwalk,snmpwalkoid,snmp_get_quick_print,%
+ snmprealwalk,%
+ %--- strings functions
+ addcslashes,addslashes,bin2hex,chop,chr,chunk_split,%
+ count_chars,crc32,crypt,echo,explode,get_html_translation_table,%
+ hebrev,hebrevc,htmlentities,htmlspecialchars,implode,join,%
+ localeconv,ltrim,md5,md5_file,metaphone,nl_langinfo,nl2br,ord,%
+ print,printf,quoted_printable_decode,quotemeta,str_rot13,rtrim,%
+ setlocale,similar_text,soundex,sprintf,strncasecmp,strcasecmp,%
+ strcmp,strcoll,strcspn,strip_tags,stripcslashes,stripslashes,%
+ strlen,strnatcmp,strnatcasecmp,strncmp,str_pad,strpos,strrchr,%
+ strrev,strrpos,strspn,strstr,strtok,strtolower,strtoupper,%
+ strtr,substr,substr_count,substr_replace,trim,ucfirst,ucwords,%
+ vsprintf,wordwrap,%
+ %--- swf functions
+ swf_openfile,swf_closefile,swf_labelframe,swf_showframe,%
+ swf_getframe,swf_mulcolor,swf_addcolor,swf_placeobject,%
+ swf_removeobject,swf_nextid,swf_startdoaction,%
+ swf_actiongeturl,swf_actionnextframe,swf_actionprevframe,%
+ swf_actionstop,swf_actiontogglequality,swf_actionwaitforframe,%
+ swf_actiongotolabel,swf_enddoaction,swf_defineline,%
+ swf_definepoly,swf_startshape,swf_shapelinesolid,%
+ swf_shapefillsolid,swf_shapefillbitmapclip,%
+ swf_shapemoveto,swf_shapelineto,swf_shapecurveto,%
+ swf_shapearc,swf_endshape,swf_definefont,swf_setfont,%
+ swf_fontslant,swf_fonttracking,swf_getfontinfo,swf_definetext,%
+ swf_definebitmap,swf_getbitmapinfo,swf_startsymbol,%
+ swf_startbutton,swf_addbuttonrecord,swf_oncondition,%
+ swf_viewport,swf_ortho,swf_ortho2,swf_perspective,swf_polarview,%
+ swf_pushmatrix,swf_popmatrix,swf_scale,swf_translate,swf_rotate,%
+ %--- sybase functions
+ sybase_affected_rows,sybase_close,sybase_connect,%
+ sybase_fetch_array,sybase_fetch_field,sybase_fetch_object,%
+ sybase_field_seek,sybase_free_result,sybase_get_last_message,%
+ sybase_min_error_severity,sybase_min_message_severity,%
+ sybase_num_fields,sybase_num_rows,sybase_pconnect,sybase_query,%
+ sybase_select_db,%
+ %--- uodbc functions
+ odbc_autocommit,odbc_binmode,odbc_close,odbc_close_all,%
+ odbc_connect,odbc_cursor,odbc_do,odbc_error,odbc_errormsg,%
+ odbc_execute,odbc_fetch_into,odbc_fetch_row,odbc_fetch_array,%
+ odbc_fetch_object,odbc_field_name,odbc_field_num,%
+ odbc_field_len,odbc_field_precision,odbc_field_scale,%
+ odbc_longreadlen,odbc_num_fields,odbc_pconnect,odbc_prepare,%
+ odbc_result,odbc_result_all,odbc_rollback,odbc_setoption,%
+ odbc_tableprivileges,odbc_columns,odbc_columnprivileges,%
+ odbc_primarykeys,odbc_foreignkeys,odbc_procedures,%
+ odbc_specialcolumns,odbc_statistics,%
+ %--- url functions
+ base64_decode,base64_encode,parse_url,rawurldecode,rawurlencode,%
+ urlencode,%
+ %--- var functions
+ doubleval,empty,floatval,gettype,get_defined_vars,%
+ import_request_variables,intval,is_array,is_bool,is_double,%
+ is_int,is_integer,is_long,is_null,is_numeric,is_object,is_real,%
+ is_scalar,is_string,isset,print_r,serialize,settype,strval,%
+ unset,var_dump,var_export,is_callable,%
+ %--- vpopmail functions
+ vpopmail_add_domain,vpopmail_del_domain,%
+ vpopmail_add_domain_ex,vpopmail_del_domain_ex,%
+ vpopmail_add_user,vpopmail_del_user,vpopmail_passwd,%
+ vpopmail_auth_user,vpopmail_alias_add,vpopmail_alias_del,%
+ vpopmail_alias_get,vpopmail_alias_get_all,vpopmail_error,%
+ %--- w32api functions
+ w32api_set_call_method,w32api_register_function,%
+ w32api_deftype,w32api_init_dtype,%
+ %--- wddx functions
+ wddx_serialize_value,wddx_serialize_vars,wddx_packet_start,%
+ wddx_add_vars,wddx_deserialize,%
+ %--- xml functions
+ xml_parser_create,xml_set_object,xml_set_element_handler,%
+ xml_set_processing_instruction_handler,xml_set_default_handler,%
+ xml_set_notation_decl_handler,%
+ xml_parse,xml_get_error_code,xml_error_string,%
+ xml_get_current_column_number,xml_get_current_byte_index,%
+ xml_parser_free,xml_parser_set_option,xml_parser_get_option,%
+ utf8_encode,xml_parser_create_ns,%
+ xml_set_start_namespace_decl_handler,%
+ %--- xslt functions
+ xslt_set_log,xslt_create,xslt_errno,xslt_error,xslt_free,%
+ xslt_set_sax_handler,xslt_set_scheme_handler,%
+ xslt_set_base,xslt_set_encoding,xslt_set_sax_handlers,%
+ %--- yaz functions
+ yaz_addinfo,yaz_close,yaz_connect,yaz_errno,yaz_error,yaz_hits,%
+ yaz_database,yaz_range,yaz_record,yaz_search,yaz_present,%
+ yaz_scan,yaz_scan_result,yaz_ccl_conf,yaz_ccl_parse,%
+ yaz_wait,yaz_sort,%
+ %--- zip functions
+ zip_close,zip_entry_close,zip_entry_compressedsize,%
+ zip_entry_filesize,zip_entry_name,zip_entry_open,zip_entry_read,%
+ zip_read,%
+ %--- zlib functions
+ gzclose,gzeof,gzfile,gzgetc,gzgets,gzgetss,gzopen,gzpassthru,%
+ gzread,gzrewind,gzseek,gztell,gzwrite,readgzfile,gzcompress,%
+ gzdeflate,gzinflate,gzencode,},%
+ sensitive,%
+ morecomment=[l]\#,%
+ morecomment=[l]//,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]",%
+ morestring=[b]'%
+ }[keywords,comments,strings]%
+%%
+%% Prolog definition (c) 1997 Dominique de Waleffe
+%%
+\lst@definelanguage{Prolog}%
+ {morekeywords={op,mod,abort,ancestors,arg,ascii,ask,assert,asserta,%
+ assertz,atom,atomic,char,clause,close,concat,consult,ed,ef,em,%
+ eof,fail,file,findall,write,functor,getc,integer,is,length,%
+ listing,load,name,nl,nonvar,not,numbervars,op,or,pp,prin,print,%
+ private,prompt,putc,ratom,read,read_from_this_file,rename,repeat,%
+ retract,retractall,save,see,seeing,seen,sh,skip,statistics,%
+ subgoal_of,system,tab,tell,telling,time,told,trace,true,unload,%
+ untrace,var,write},%
+ sensitive=f,%
+ morecomment=[l]\%,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[bd]",%
+ morestring=[bd]'%
+ }[keywords,comments,strings]%
+%%
+%% classic rexx listings definition
+%% by Patrick TJ McPhee <ptjm@interlog.com>
+%%
+\lst@definelanguage{Rexx}
+ {morekeywords={address,arg,call,do,drop,else,end,exit,if,iterate,%
+ interpret,leave,nop,numeric,options,otherwise,parse,%
+ procedure,pull,push,queue,return,say,signal,then,to,%
+ trace,when},%
+ sensitive=false,%
+ morecomment=[n]{/*}{*/},%
+ morestring=[d]{'},%
+ morestring=[d]{"},%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Ruby}%
+ {morekeywords={__FILE__,__LINE__,BEGIN,END,alias,and,begin,break,%
+ case,class,def,defined?,do,else,elsif,end,ensure,false,for,%
+ if,in,module,next,nil,not,or,redo,rescue,retry,return,self,%
+ super,then,true,undef,unless,until,when,while,yield},%
+ sensitive=true,%
+ morecomment=[l]\#,%
+ morecomment=[l]\#\#,%
+ morecomment=[s]{=BEGIN}{=END},%
+ morestring=[b]',%
+ morestring=[b]",%
+ morestring=[b]/%
+ }[keywords,comments,strings]%
+%%
+%% SHELXL definition (c) 1999 Aidan Philip Heerdegen
+%%
+\lst@definelanguage{SHELXL}%
+ {morekeywords={TITL,CELL,ZERR,LATT,SYMM,SFAC,DISP,UNIT,LAUE,%
+ REM,MORE,TIME,END,HKLF,OMIT,SHEL,BASF,TWIN,EXTI,SWAT,%
+ MERG,SPEC,RESI,MOVE,ANIS,AFIX,HFIX,FRAG,FEND,EXYZ,EADP,%
+ EQIV,OMIT,CONN,PART,BIND,FREE,DFIX,BUMP,SAME,SADI,CHIV,%
+ FLAT,DELU,SIMU,DEFS,ISOR,SUMP,L.S.,CGLS,SLIM,BLOC,DAMP,%
+ WGHT,FVAR,BOND,CONF,MPLA,RTAB,LIST,ACTA,SIZE,TEMP,WPDB,%
+ FMAP,GRID,PLAN,MOLE},%
+ sensitive=false,%
+ alsoother=_,% Makes the syntax highlighting ignore the underscores
+ morecomment=[l]{! },%
+ }%
+%%
+%% Tcl/Tk definition (c) Gerd Neugebauer
+%%
+\lst@definelanguage[tk]{tcl}[]{tcl}%
+ {morekeywords={activate,add,separator,radiobutton,checkbutton,%
+ command,cascade,all,bell,bind,bindtags,button,canvas,canvasx,%
+ canvasy,cascade,cget,checkbutton,config,configu,configur,%
+ configure,clipboard,create,arc,bitmap,image,line,oval,polygon,%
+ rectangle,text,textwindow,curselection,delete,destroy,end,entry,%
+ entrycget,event,focus,font,actual,families,measure,metrics,names,%
+ frame,get,grab,current,release,status,grid,columnconfigure,%
+ rowconfigure,image,image,create,bitmap,photo,delete,height,types,%
+ widt,names,index,insert,invoke,itemconfigure,label,listbox,lower,%
+ menu,menubutton,message,move,option,add,clear,get,readfile,pack,%
+ photo,place,radiobutton,raise,scale,scroll,scrollbar,search,see,%
+ selection,send,stdin,stdout,stderr,tag,bind,text,tk,tkerror,%
+ tkwait,window,variable,visibility,toplevel,unknown,update,winfo,%
+ class,exists,ismapped,parent,reqwidth,reqheight,rootx,rooty,%
+ width,height,wm,aspect,client,command,deiconify,focusmodel,frame,%
+ geometry,group,iconbitmap,iconify,iconmask,iconname,iconposition,%
+ iconwindow,maxsize,minsize,overrideredirect,positionfrom,%
+ protocol,sizefrom,state,title,transient,withdraw,xview,yview,%
+ yposition,%
+ -accelerator,-activebackground,-activeborderwidth,%
+ -activeforeground,-after,-anchor,-arrow,-arrowshape,-aspect,%
+ -async,-background,-before,-bg,-bigincrement,-bitmap,-bordermode,%
+ -borderwidth,-button,-capstyle,-channel,-class,-closeenough,%
+ -colormap,-column,-columnspan,-command,-confine,-container,%
+ -count,-cursor,-data,-default,-detail,-digits,-direction,%
+ -displayof,-disableforeground,-elementborderwidth,-expand,%
+ -exportselection,-extend,-family,-fg,-file,-fill,-focus,-font,%
+ -fontmap,-foreground,-format,-from,-gamma,-global,-height,%
+ -highlightbackground,-highlightcolor,-highlightthickness,-icon,%
+ -image,-in,-insertbackground,-insertborderwidth,-insertofftime,%
+ -insertontime,-imsertwidth,-ipadx,-ipady,-joinstyle,-jump,%
+ -justify,-keycode,-keysym,-label,-lastfor,-length,-maskdata,%
+ -maskfile,-menu,-message,-mode,-offvalue,-onvalue,-orient,%
+ -outlien,-outlinestipple,-overstrike,-override,-padx,-pady,%
+ -pageanchor,-pageheight,-pagewidth,-pagey,-pagey,-palette,%
+ -parent,-place,-postcommand,-relheight,-relief,-relwidth,-relx,%
+ -rely,-repeatdelay,-repeatinterval,-resolution,-root,-rootx,%
+ -rooty,-rotate,-row,-rowspan,-screen,-selectcolor,-selectimage,%
+ -sendevent,-serial,-setgrid,-showvalue,-shrink,-side,-size,%
+ -slant,-sliderlength,-sliderrelief,-smooth,-splinesteps,-state,%
+ -sticky,-stipple,-style,-subsample,-subwindow,-tags,-takefocus,%
+ -tearoff,-tearoffcommand,-text,-textvariable,-tickinterval,-time,%
+ -title,-to,-troughcolor,-type,-underline,-use,-value,-variable,%
+ -visual,-width,-wrap,-wraplength,-x,-xscrollcommand,-y,%
+ -bgstipple,-fgstipple,-lmargin1,-lmargin2,-rmargin,-spacing1,%
+ -spacing2,-spacing3,-tabs,-yscrollcommand,-zoom,%
+ activate,add,addtag,bbox,cget,clone,configure,coords,%
+ curselection,debug,delete,delta,deselect,dlineinfo,dtag,dump,%
+ entrycget,entryconfigure,find,flash,fraction,get,gettags,handle,%
+ icursor,identify,index,insert,invoke,itemcget,itemconfigure,mark,%
+ moveto,own,post,postcascade,postscript,put,redither,ranges,%
+ scale,select,show,tag,type,unpost,xscrollcommand,xview,%
+ yscrollcommand,yview,yposition}%
+ }%
+\lst@definelanguage[]{tcl}%
+ {alsoletter={.:,*=&-},%
+ morekeywords={after,append,array,names,exists,anymore,donesearch,%
+ get,nextelement,set,size,startsearch,auto_mkindex,binary,break,%
+ case,catch,cd,clock,close,concat,console,continue,default,else,%
+ elseif,eof,error,eval,exec,-keepnewline,exit,expr,fblocked,%
+ fconfigure,fcopy,file,atime,dirname,executable,exists,extension,%
+ isdirectory,isfile,join,lstat,mtime,owned,readable,readlink,%
+ rootname,size,stat,tail,type,writable,-permissions,-group,-owner,%
+ -archive,-hidden,-readonly,-system,-creator,-type,-force,%
+ fileevent,flush,for,foreach,format,gets,glob,global,history,if,%
+ incr,info,argsbody,cmdcount,commands,complete,default,exists,%
+ globals,level,library,locals,patchlevel,procs,script,tclversion,%
+ vars,interp,join,lappend,lindex,linsert,list,llength,lrange,%
+ lreplace,lsearch,-exact,-regexp,-glob,lsort,-ascii,-integer,%
+ -real,-dictionary,-increasing,-decreasing,-index,-command,load,%
+ namespace,open,package,forget,ifneeded,provide,require,unknown,%
+ vcompare,versions,vsatisfies,pid,proc,puts,-nonewline,pwd,read,%
+ regexp,-indices,regsub,-all,-nocaserename,return,scan,seek,set,%
+ socket,source,split,string,compare,first,index,last,length,match,%
+ range,tolower,toupper,trim,trimleft,trimright,subst,switch,tell,%
+ time,trace,variable,vdelete,vinfo,unknown,unset,uplevel,upvar,%
+ vwait,while,acos,asin,atan,atan2,ceil,cos,cosh,exp,floor,fmod,%
+ hypot,log,log10,pow,sin,sinh,sqrt,tan,tanh,abs,double,int,round%
+ },%
+ morestring=[d]",%
+ MoreSelectCharTable=%
+ \lst@CArgX\#\relax\lst@DefDelimB{}{}%
+ {\ifx\lst@lastother\lstum@backslash
+ \expandafter\@gobblethree
+ \fi}%
+ \lst@BeginComment\lst@commentmode
+ {{\lst@commentstyle}\lst@Lmodetrue}%
+ }[keywords,comments,strings]%
+%%
+%% VBScript definition (c) 2000 Sonja Weidmann
+%%
+\lst@definelanguage{VBScript}%
+ {morekeywords={Call,Case,Const,Dim,Do,Each,Else,End,Erase,Error,Exit,%
+ Explicit,For,Function,If,Loop,Next,On,Option,Private,Public,%
+ Randomize,ReDim,Rem,Select,Set,Sub,Then,Wend,While,Abs,Array,Asc,%
+ Atn,CBool,CByte,CCur,CDate,CDbl,Chr,CInt,CLng,Cos,CreateObject,%
+ CSng,CStr,Date,DateAdd,DateDiff,DatePart,DateSerial,DateValue,%
+ Day,Exp,Filter,Fix,FormatCurrency,FormatDateTime,FormatNumber,%
+ FormatPercent,GetObject,Hex,Hour,InputBox,InStr,InStrRev,Int,%
+ IsArray,IsDate,IsEmpty,IsNull,IsNumeric,IsObject,Join,LBound,%
+ LCase,Left,Len,LoadPicture,Log,LTrim,Mid,Minute,Month,MonthName,%
+ MsgBox,Now,Oct,Replace,RGB,Right,Rnd,Round,RTrim,ScriptEngine,%
+ ScriptEngineBuildVersion,ScriptEngineMajorVersion,%
+ ScriptEngineMinorVersion,Second,Sgn,Sin,Space,Split,Sqr,StrComp,%
+ StrReverse,String,Tan,Time,TimeSerial,TimeValue,Trim,TypeName,%
+ UBound,UCase,VarType,Weekday,WeekdayName,Year, And,Eqv,Imp,Is,%
+ Mod,Not,Or,Xor,Add,BuildPath,Clear,Close,Copy,CopyFile,%
+ CopyFolder,CreateFolder,CreateTextFile,Delete,DeleteFile,%
+ DeleteFolder,Dictionary,Drive,DriveExists,Drives,Err,Exists,File,%
+ FileExists,FileSystemObject,Files,Folder,FolderExists,Folders,%
+ GetAbsolutePathName,GetBaseName,GetDrive,GetDriveName,%
+ GetExtensionName,GetFile,GetFileName,GetFolder,%
+ GetParentFolderName,GetSpecialFolder,GetTempName,Items,Keys,Move,%
+ MoveFile,MoveFolder,OpenAsTextStream,OpenTextFile,Raise,Read,%
+ ReadAll,ReadLine,Remove,RemoveAll,Skip,SkipLine,TextStream,Write,%
+ WriteBlankLines,WriteLine,Alias,Archive,CDROM,Compressed,%
+ Directory,Fixed,ForAppending,ForReading,ForWriting,Hidden,Normal,%
+ RAMDisk,ReadOnly,Remote,Removable,System,SystemFolder,%
+ TemporaryFolder,TristateFalse,TristateTrue,TristateUseDefault,%
+ Unknown,Volume,WindowsFolder,vbAbortRetryIgnore,%
+ vbApplicationModal,vbArray,vbBinaryCompare,vbBlack,vbBlue,%
+ vbBoolean,vbByte,vbCr,vbCrLf,vbCritical,vbCurrency,vbCyan,%
+ vbDataObject,vbDate,vbDecimal,vbDefaultButton1,vbDefaultButton2,%
+ vbDefaultButton3,vbDefaultButton4,vbDouble,vbEmpty,vbError,%
+ vbExclamation,vbFirstFourDays,vbFirstFullWeek,vbFirstJan1,%
+ vbFormFeed,vbFriday,vbGeneralDate,vbGreen,vbInformation,%
+ vbInteger,vbLf,vbLong,vbLongDate,vbLongTime,vbMagenta,vbMonday,%
+ vbNewLine,vbNull,vbNullChar,vbNullString,vbOKC,ancel,vbOKOnly,%
+ vbObject,vbObjectError,vbQuestion,vbRed,vbRetryCancel,vbSaturday,%
+ vbShortDate,vbShortTime,vbSingle,vbString,vbSunday,vbSystemModal,%
+ vbTab,vbTextCompare,vbThursday,vbTuesday,vbUseSystem,%
+ vbUseSystemDayOfWeek,vbVariant,vbVerticalTab,vbWednesday,vbWhite,%
+ vbYellow,vbYesNo,vbYesNoCancel},%
+ sensitive=f,%
+ morecomment=[l]',%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% VRML definition (c) 2001 Oliver Baum
+%%
+\lst@definelanguage[97]{VRML}
+ {morekeywords={DEF,EXTERNPROTO,FALSE,IS,NULL,PROTO,ROUTE,TO,TRUE,USE,%
+ eventIn,eventOut,exposedField,field,Introduction,Anchor,%
+ Appearance,AudioClip,Background,Billboard,Box,Collision,Color,%
+ ColorInterpolator,Cone,Coordinate,CoordinateInterpolator,%
+ Cylinder,CylinderSensor,DirectionalLight,ElevationGrid,Extrusion,%
+ Fog,FontStyle,Group,ImageTexture,IndexedFaceSet,IndexedLineSet,%
+ Inline,LOD,Material,MovieTexture,NavigationInfo,Normal,%
+ NormalInterpolator,OrientationInterpolator,PixelTexture,%
+ PlaneSensor,PointLight,PointSet,PositionInterpolator,%
+ ProximitySensor,ScalarInterpolator,Script,Shape,Sound,Sphere,%
+ SphereSensor,SpotLight,Switch,Text,TextureCoordinate,%
+ TextureTransform,TimeSensor,TouchSensor,Transform,Viewpoint,%
+ VisibilitySensor,WorldInfo},%
+ morecomment=[l]\#,% bug: starts comment in the first column
+ morestring=[b]"%
+ }[keywords,comments,strings]
+\endinput
+%%
+%% End of file `lstlang2.sty'.
diff --git a/Master/texmf-dist/tex/latex/listings/lstlang3.sty b/Master/texmf-dist/tex/latex/listings/lstlang3.sty
new file mode 100644
index 00000000000..b43bc9eac56
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/lstlang3.sty
@@ -0,0 +1,1006 @@
+%%
+%% This is file `lstlang3.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% 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.
+%%
+%% 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.
+%%
+%% This file is completely free and comes without any warranty.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+\ProvidesFile{lstlang3.sty}
+ [2004/09/05 1.3 listings language file]
+\lst@definelanguage[68]{Algol}%
+ {morekeywords={abs,and,arg,begin,bin,bits,bool,by,bytes,case,channel,%
+ char,co,comment,compl,conj,divab,do,down,elem,elif,else,empty,%
+ end,entier,eq,esac,exit,false,fi,file,flex,for,format,from,ge,%
+ goto,gt,heap,if,im,in,int,is,isnt,le,leng,level,loc,long,lt,lwb,%
+ minusab,mod,modab,mode,ne,nil,not,od,odd,of,op,or,ouse,out,over,%
+ overab,par,plusab,plusto,pr,pragmat,prio,proc,re,real,ref,repr,%
+ round,sema,shl,short,shorten,shr,sign,skip,string,struct,then,%
+ timesab,to,true,union,up,upb,void,while},%
+ sensitive=f,% ???
+ morecomment=[s]{\#}{\#},%
+ keywordcomment={co,comment}%
+ }[keywords,comments,keywordcomments]%
+\lst@definelanguage[60]{Algol}%
+ {morekeywords={array,begin,Boolean,code,comment,div,do,else,end,%
+ false,for,goto,if,integer,label,own,power,procedure,real,step,%
+ string,switch,then,true,until,value,while},%
+ sensitive=f,% ???
+ keywordcommentsemicolon={end}{else,end}{comment}%
+ }[keywords,keywordcomments]%
+%%
+%% x86masm definition (c) 2002 Andrew Zabolotny
+%%
+\lst@definelanguage[x86masm]{Assembler}%
+ {morekeywords={al,ah,ax,eax,bl,bh,bx,ebx,cl,ch,cx,ecx,dl,dh,dx,edx,%
+ si,esi,di,edi,bp,ebp,sp,esp,cs,ds,es,ss,fs,gs,cr0,cr1,cr2,cr3,%
+ db0,db1,db2,db3,db4,db5,db6,db7,tr0,tr1,tr2,tr3,tr4,tr5,tr6,tr7,%
+ st,aaa,aad,aam,aas,adc,add,and,arpl,bound,bsf,bsr,bswap,bt,btc,%
+ btr,bts,call,cbw,cdq,clc,cld,cli,clts,cmc,cmp,cmps,cmpsb,cmpsw,%
+ cmpsd,cmpxchg,cwd,cwde,daa,das,dec,div,enter,hlt,idiv,imul,in,%
+ inc,ins,int,into,invd,invlpg,iret,ja,jae,jb,jbe,jc,jcxz,jecxz,%
+ je,jg,jge,jl,jle,jna,jnae,jnb,jnbe,jnc,jne,jng,jnge,jnl,jnle,%
+ jno,jnp,jns,jnz,jo,jp,jpe,jpo,js,jz,jmp,lahf,lar,lea,leave,lgdt,%
+ lidt,lldt,lmsw,lock,lods,lodsb,lodsw,lodsd,loop,loopz,loopnz,%
+ loope,loopne,lds,les,lfs,lgs,lss,lsl,ltr,mov,movs,movsb,movsw,%
+ movsd,movsx,movzx,mul,neg,nop,not,or,out,outs,pop,popa,popad,%
+ popf,popfd,push,pusha,pushad,pushf,pushfd,rcl,rcr,rep,repe,%
+ repne,repz,repnz,ret,retf,rol,ror,sahf,sal,sar,sbb,scas,seta,%
+ setae,setb,setbe,setc,sete,setg,setge,setl,setle,setna,setnae,%
+ setnb,setnbe,setnc,setne,setng,setnge,setnl,setnle,setno,setnp,%
+ setns,setnz,seto,setp,setpe,setpo,sets,setz,sgdt,shl,shld,shr,%
+ shrd,sidt,sldt,smsw,stc,std,sti,stos,stosb,stosw,stosd,str,sub,%
+ test,verr,verw,wait,wbinvd,xadd,xchg,xlatb,xor,fabs,fadd,fbld,%
+ fbstp,fchs,fclex,fcom,fcos,fdecstp,fdiv,fdivr,ffree,fiadd,ficom,%
+ fidiv,fidivr,fild,fimul,fincstp,finit,fist,fisub,fisubr,fld,fld1,%
+ fldl2e,fldl2t,fldlg2,fldln2,fldpi,fldz,fldcw,fldenv,fmul,fnop,%
+ fpatan,fprem,fprem1,fptan,frndint,frstor,fsave,fscale,fsetpm,%
+ fsin,fsincos,fsqrt,fst,fstcw,fstenv,fstsw,fsub,fsubr,ftst,fucom,%
+ fwait,fxam,fxch,fxtract,fyl2x,fyl2xp1,f2xm1},%
+ morekeywords=[2]{.align,.alpha,assume,byte,code,comm,comment,.const,%
+ .cref,.data,.data?,db,dd,df,dosseg,dq,dt,dw,dword,else,end,endif,%
+ endm,endp,ends,eq,equ,.err,.err1,.err2,.errb,.errdef,.errdif,%
+ .erre,.erridn,.errnb,.errndef,.errnz,event,exitm,extrn,far,%
+ .fardata,.fardata?,fword,ge,group,gt,high,if,if1,if2,ifb,ifdef,%
+ ifdif,ife,ifidn,ifnb,ifndef,include,includelib,irp,irpc,label,%
+ .lall,le,length,.lfcond,.list,local,low,lt,macro,mask,mod,.model,%
+ name,ne,near,offset,org,out,page,proc,ptr,public,purge,qword,.%
+ radix,record,rept,.sall,seg,segment,.seq,.sfcond,short,size,%
+ .stack,struc,subttl,tbyte,.tfcond,this,title,type,.type,width,%
+ word,.xall,.xcref,.xlist},%
+ alsoletter=.,alsodigit=?,%
+ sensitive=f,%
+ morestring=[b]",%
+ morestring=[b]',%
+ morecomment=[l];%
+ }[keywords,comments,strings]
+%%
+%% Clean definition (c) 1999 Jos\'e Romildo Malaquias
+%%
+%% Clean 1.3 : some standard functional language: pure, lazy,
+%% polymorphic type system, modules, type classes,
+%% garbage collection, functions as first class citizens
+%%
+\lst@definelanguage{Clean}%
+ {otherkeywords={:,::,=,:==,=:,=>,->,<-,<-:,\{,\},\{|,|\},\#,\#!,|,\&,%
+ [,],!,.,\\\\,;,_},%
+ morekeywords={from,definition,implementation,import,module,system,%
+ case,code,if,in,let,let!,of,where,with,infix,infixl,infixr},%
+ morendkeywords={True,False,Start,Int,Real,Char,Bool,String,World,%
+ File,ProcId},%
+ sensitive,%
+ morecomment=[l]//,% missing comma: Markus Pahlow
+ morecomment=[n]{/*}{*/},%
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Comal 80}%
+ {morekeywords={AND,AUTO,CASE,DATA,DEL,DIM,DIV,DO,ELSE,ENDCASE,ENDIF,%
+ ENDPROC,ENDWHILE,EOD,EXEC,FALSE,FOR,GOTO,IF,INPUT,INT,LIST,LOAD,%
+ MOD,NEW,NEXT,NOT,OF,OR,PRINT,PROC,RANDOM,RENUM,REPEAT,RND,RUN,%
+ SAVE,SELECT,STOP,TAB,THEN,TRUE,UNTIL,WHILE,ZONE},%
+ sensitive=f,% ???
+ morecomment=[l]//,%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Elan}%
+ {morekeywords={ABS,AND,BOOL,CAND,CASE,CAT,COLUMNS,CONCR,CONJ,CONST,%
+ COR,DECR,DEFINES,DET,DIV,DOWNTO,ELIF,ELSE,END,ENDIF,ENDOP,%
+ ENDPACKET,ENDPROC,ENDREP,ENDSELECT,FALSE,FI,FILE,FOR,FROM,IF,%
+ INCR,INT,INV,LEAVE,LENGTH,LET,MOD,NOT,OF,OP,OR,OTHERWISE,PACKET,%
+ PROC,REAL,REP,REPEAT,ROW,ROWS,SELECT,SIGN,STRUCT,SUB,TEXT,THEN,%
+ TRANSP,TRUE,TYPE,UNTIL,UPTO,VAR,WHILE,WITH,XOR,%
+ maxint,sign,abs,min,max,random,initializerandom,subtext,code,%
+ replace,text,laenge,pos,compress,change,maxreal,smallreal,floor,%
+ pi,e,ln,log2,log10,sqrt,exp,tan,tand,sin,sind,cos,cosd,arctan,%
+ arctand,int,real,lastconversionok,put,putline,line,page,get,%
+ getline,input,output,sequentialfile,maxlinelaenge,reset,eof,%
+ close,complexzero,complexone,complexi,complex,realpart,imagpart,%
+ dphi,phi,vector,norm,replace,matrix,idn,row,column,sub,%
+ replacerow,replacecolumn,replaceelement,transp,errorsstop,stop},%
+ sensitive,%
+ morestring=[d]"%
+ }[keywords,strings]%
+%%
+%% Erlang definition (c) 2003 Daniel Gazard
+%%
+\lst@definelanguage{erlang}%
+ {morekeywords={abs,after,and,apply,atom,atom_to_list,band,binary,%
+ binary_to_list,binary_to_term,bor,bsl,bsr,bxor,case,catch,%
+ date,div,element,erase,end,exit,export,float,float_to_list,%
+ get,halt,hash,hd,if,info,import,integer,integer_to_list,%
+ length,link,list,list_to_atom,list_to_float,list_to_integer,%
+ list_to_tuple,module,node,nodes,now,of,or,pid,port,ports,%
+ processes,put,receive,reference,register,registered,rem,%
+ 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={->,!,[,],\{,\},},%
+ morecomment=[l]\%,%
+ morestring=[b]",%
+ morestring=[b]'%
+ }[keywords,comments,strings]%
+\lst@definelanguage{ksh}
+ {morekeywords={alias,awk,cat,echo,else,elif,fi,exec,exit,%
+ for,in,do,done,select,case,esac,while,until,function,%
+ time,export,cd,eval,fc,fg,kill,let,pwd,read,return,rm,%
+ glob,goto,history,if,logout,nice,nohup,onintr,repeat,sed,%
+ set,setenv,shift,source,switch,then,umask,unalias,%
+ unset,wait,@,env,argv,child,home,ignoreeof,noclobber,%
+ noglob,nomatch,path,prompt,shell,status,verbose,print,printf,%
+ sqrt,BEGIN,END},%
+ morecomment=[l]\#,%
+ morestring=[d]",%
+ morestring=[d]',%
+ morestring=[d]`%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Logo}%
+ {morekeywords={and,atan,arctan,both,break,bf,bl,butfirst,butlast,%
+ cbreak, close,co,continue,cos,count,clearscreen,cs,debquit,%
+ describe,diff,difference,ed,edit,either,emptyp,equalp,er,erase,%
+ errpause,errquit,fifp,filefprint,fifty,fileftype,fip,fileprint,%
+ fird,fileread,fity,filetype,fiwd,fileword,f,first,or,fp,fprint,%
+ fput,fty,ftype,full,fullscreen,go,bye,goodbye,gprop,greaterp,%
+ help,if,iff,iffalse,ift,iftrue,nth,item,keyp,llast,lessp,list,%
+ local,lput,make,max,maximum,memberp,memtrace,min,minimum,namep,%
+ not,numberp,oflush,openr,openread,openw,openwrite,op,output,%
+ pause,plist,pots,pow,pprop,pps,pr,print,product,quotient,random,%
+ rc,readchar,rl,readlist,remprop,repcount,repeat,request,rnd,run,%
+ se,sentence,sentencep,setc,setcolor,setipause,setqpause,po,show,%
+ sin,split,splitscreen,sqrt,stop,sum,test,text,textscreen,thing,%
+ to,tone,top,toplevel,type,untrace,wait,word,wordp,yaccdebug,is,%
+ mod,remainder,trace,zerop,back,bk,bto,btouch,fd,forward,fto,%
+ ftouch,getpen,heading,hit,hitoot,ht,hideturtle,loff,lampoff,lon,%
+ lampon,lt,left,lot,lotoot,lto,ltouch,penc,pencolor,pd,pendown,pe,%
+ penerase,penmode,pu,penup,px,penreverse,rt,right,rto,rtouch,%
+ scrunch,seth,setheading,setscrun,setscrunch,setxy,shownp,st,%
+ showturtle,towardsxy,clean,wipeclean,xcor,ycor,tur,turtle,%
+ display,dpy},%
+ sensitive=f% ???
+ }[keywords]%
+%%
+%% MetaPost definition (c) 2004 Brooks Moses
+%% This definition is based on the language specifications
+%% contained in the _User's Manual for Metapost_, with the core
+%% language enhancements that are described in the _Drawing
+%% Graphs with MetaPost_ documentation.
+%%
+\lst@definelanguage{MetaPost}%
+ {% keywords[1] = MetaPost primitives (not found in following tables)
+ morekeywords={end,begingroup,endgroup,beginfig,endfig,def,vardef,%
+ primary,secondary,tertiary,primarydef,secondarydef,tertiarydef,%
+ expr,suffix,text,enddef,if,fi,else,elseif,for,forsuffixes,%
+ forever,endfor,upto,downto,stop,until,tension,controls,on,off,%
+ btex,etex,within,input},
+ % keywords[2] = Operators (Tables 6-9 in MetaPost User's manual)
+ morekeywords=[2]{abs,and,angle,arclength,arctime,ASCII,bbox,bluepart,%
+ boolean,bot,ceiling,center,char,color,cosd,cutafter,cutbefore,%
+ cycle,decimal,dir,direction,directionpoint,directiontime,div,%
+ dotprod,floor,fontsize,greenpart,hex,infont,intersectionpoint,%
+ intersectiontimes,inverse,known,length,lft,llcorner,lrcorner,%
+ makepath,makepen,mexp,mlog,mod,normaldeviate,not,numeric,oct,%
+ odd,or,pair,path,pen,penoffset,picture,point,postcontrol,%
+ precontrol,redpart,reverse,rotated,round,rt,scaled,shifted,%
+ sind,slanted,sqrt,str,string,subpath,substring,top,transform,%
+ transformed,ulcorner,uniformdeviate,unitvector,unknown,%
+ urcorner,whatever,xpart,xscaled,xxpart,xypart,ypart,yscaled,%
+ yxpart,yypart,zscaled,of,reflectedabout,rotatedaround,ulft,urt,%
+ llft,lrt,readfrom,write,stroked,filled,textual,clipped,bounded,%
+ pathpart,penpart,dashpart,textpart,fontpart},%
+ % keywords[3] = Commands (Table 10)
+ morekeywords=[3]{addto,clip,cutdraw,draw,drawarrow,drawdblarrow,%
+ fill,filldraw,interim,let,loggingall,newinternal,pickup,%
+ save,setbounds,shipout,show,showdependencies,showtoken,%
+ showvariable,special,tracingall,tracingnone,undraw,unfill,%
+ unfilldraw,to,also,contour,doublepath,withcolor,withpen,%
+ dashed,randomseed},%
+ % keywords[4] = Function-Like Macros (Table 11)
+ morekeywords=[4]{boxit,boxjoin,bpath,buildcycle,circleit,dashpattern,%
+ decr,dotlabel,dotlabels,drawboxed,drawboxes,drawoptions,%
+ drawunboxed,fixpos,fixsize,incr,interpath,label,labels,max,min,pic,%
+ thelabel,z,image},%
+ % keywords[5] = Internal and Predefined Variables (Tables 3, 4)
+ morekeywords=[5]{ahangle,ahlength,bboxmargin,charcode,circmargin,%
+ day,defaultdx,defaultdy,defaultpen,defaultscale,labeloffset,%
+ linecap,linejoin,miterlimit,month,pausing,prologues,showstopping,%
+ time,tracingcapsules,tracingchoices,tracingcommands,%
+ tracingequations,tracinglostchars,tracingmacros,tracingonline,%
+ tracingoutput,tracingrestores,tracingspecs,tracingstats,%
+ tracingtitles,truecorners,warningcheck,year},
+ morekeywords=[5]{background,currentpen,currentpicture,cuttings,%
+ defaultfont},%
+ % keywords[6] = Predefined Constants (Table 5)
+ morekeywords=[6]{beveled,black,blue,bp,butt,cc,cm,dd,ditto,down,%
+ epsilon,evenly,false,fullcircle,green,halfcircle,identity,%
+ in,infinity,left,mitered,mm,nullpicture,origin,pc,pencircle,%
+ pt,quartercircle,red,right,rounded,squared,true,unitsquare,%
+ up,white,withdots},
+ sensitive=false,%
+ alsoother={0123456789$},%
+ morecomment=[l]\%,%
+ morestring=[mf]{input\ },%
+ morestring=[b]"%
+ }[keywords,comments,strings,mf]%
+%%
+%% Mizar definition (c) 2003 Adam Grabowski
+%%
+%% Mizar is freely available at URL www.mizar.org for the Linux x86,
+%% Solaris x86, and Windows operating systems.
+%%
+\lst@definelanguage{Mizar}%
+ {otherkeywords={->,(\#,\#),.=),\&},%
+ morekeywords={vocabulary,constructors,$1,$1,$2,$3,$4,$5,$6,$7,$8,%
+ @proof,according,aggregate,and,antonym,as,associativity,assume,%
+ asymmetry,attr,be,begin,being,by,canceled,case,cases,cluster,%
+ clusters,coherence,commutativity,compatibility,connectedness,%
+ consider,consistency,constructors,contradiction,correctness,def,%
+ deffunc,define,definition,definitions,defpred,end,environ,equals,%
+ ex,exactly,existence,for,from,func,given,hence,hereby,holds,%
+ idempotence,if,iff,implies,involutiveness,irreflexivity,is,it,%
+ let,means,mode,non,not,notation,now,of,or,otherwise,over,per,%
+ pred,prefix,projectivity,proof,provided,qua,reconsider,redefine,%
+ reflexivity,requirements,reserve,scheme,schemes,section,selector,%
+ set,st,struct,such,suppose,symmetry,synonym,take,that,the,then,%
+ theorem,theorems,thesis,thus,to,transitivity,uniqueness,%
+ vocabulary,where},%
+ sensitive=t,%
+ morecomment=[l]::%
+ }[keywords,comments]%
+\lst@definelanguage{Modula-2}%
+ {morekeywords={AND,ARRAY,BEGIN,BY,CASE,CONST,DIV,DO,ELSE,ELSIF,END,%
+ EXIT,EXPORT,FOR,FROM,IF,IMPLEMENTATION,IMPORT,IN,MOD,MODULE,NOT,%
+ OF,OR,POINTER,PROCEDURE,QUALIFIED,RECORD,REPEAT,RETURN,SET,THEN,%
+ TYPE,UNTIL,VAR,WHILE,WITH,ABS,BITSET,BOOLEAN,CAP,CARDINAL,CHAR,%
+ CHR,DEC,EXCL,FALSE,FLOAT,HALT,HIGH,INC,INCL,INTEGER,LONGCARD,%
+ LONGINT,LONGREAL,MAX,MIN,NIL,ODD,ORD,PROC,REAL,SIZE,TRUE,TRUNC,%
+ VAL,DEFINITION,LOOP},% added keywords due to Peter Bartke 99/07/22
+ sensitive,%
+ morecomment=[n]{(*}{*)},%
+ morestring=[d]',%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+\lst@definelanguage{MuPAD}{%
+ morekeywords={end,next,break,if,then,elif,else,end_if,case,end_case,%
+ otherwise,for,from,to,step,downto,in,end_for,while,end_while,%
+ repeat,until,end_repeat,or,and,not,xor,div,mod,union,minus,%
+ intersect,subset,proc,begin,end_proc,domain,end_domain,category,%
+ end_category,axiom,end_axiom,quit,delete,frame},%
+ morekeywords=[2]{NIL,FAIL,TRUE,FALSE,UNKNOWN,I,RD_INF,RD_NINF,%
+ RD_NAN,name,local,option,save,inherits,of,do},%
+ otherkeywords={\%if,?,!,:=,<,>,=,<=,<>,>=,==>,<=>,::,..,...,->,%
+ @,@@,\$},%
+ sensitive=true,%
+ morecomment=[l]{//},%
+ morecomment=[n]{/*}{*/},%
+ morestring=[b]",%
+ morestring=[d]{`}%
+ }[keywords,comments,strings]
+\lst@definelanguage{NASTRAN}
+ {morekeywords={ENDDATA},%
+ morecomment=[l]$,%
+ MoreSelectCharTable=%
+ \lst@CArgX BEGIN\ BULK\relax\lst@CDef{}%
+ {\lst@ifmode\else \ifnum\lst@length=\z@
+ \lst@EnterMode{\lst@GPmode}{\lst@modetrue
+ \let\lst@currstyle\lst@gkeywords@sty}%
+ \fi \fi}%
+ {\ifnum\lst@mode=\lst@GPmode
+ \lst@XPrintToken \lst@LeaveMode
+ \fi}%
+ }[keywords,comments]%
+\lst@definelanguage{Oberon-2}%
+ {morekeywords={ARRAY,BEGIN,BOOLEAN,BY,CASE,CHAR,CONST,DIV,DO,ELSE,%
+ ELSIF,END,EXIT,FALSE,FOR,IF,IMPORT,IN,INTEGER,IS,LONGINT,%
+ LONGREAL,LOOP,MOD,MODULE,NIL,OF,OR,POINTER,PROCEDURE,REAL,RECORD,%
+ REPEAT,RETURN,SET,SHORTINT,THEN,TO,TRUE,TYPE,UNTIL,VAR,WHILE,%
+ WITH,ABS,ASH,CAP,CHR,COPY,DEC,ENTIER,EXCL,HALT,INC,INCL,LEN,LONG,%
+ MAX,MIN,NEW,ODD,ORD,SHORT,SIZE},%
+ sensitive,%
+ morecomment=[n]{(*}{*)},%
+ morestring=[d]',%
+ morestring=[d]"%
+ }[keywords,comments,strings]%
+%%
+%% OCL definition (c) 2000 Achim D. Brucker
+%%
+%% You are allowed to use, modify and distribute this code either under
+%% the terms of the LPPL (version 1.0 or later) or the GPL (version 2.0
+%% or later).
+%%
+\lst@definelanguage[decorative]{OCL}[OMG]{OCL}
+ {otherkeywords={@pre},%
+ morendkeywords={name,attributes,associatoinEnds,operations,%
+ supertypes,allSupertypes,allInstances,oclIsKindOf,oclIsTypeOf,%
+ oclAsType,oclInState,oclIsNew,evaluationType,abs,floor,round,max,%
+ min,div,mod,size,concat,toUpper,toLower,substring,includes,%
+ excludes,count,includesAll,exludesAll,isEmpty,notEmpty,sum,%
+ exists,forAll,isUnique,sortedBy,iterate,union,intersection,%
+ including,excluding,symmetricDifference,select,reject,collect,%
+ asSequence,asBag,asSequence,asSet,append,prepend,subSequence,at,%
+ first,last,true,false,isQuery}%
+ }%
+\lst@definelanguage[OMG]{OCL}%
+ {morekeywords={context,pre,inv,post},%
+ ndkeywords={or,xor,and,not,implies,if,then,else,endif},%
+ morekeywords=[3]{Boolean,Integer,Real,String,Set,Sequence,Bag,%
+ OclType,OclAny,OclExpression,Enumeration,Collection,},%
+ sensitive=t,%
+ morecomment=[l]--,%
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+\lst@definelanguage{Plasm}%
+ {sensitive=false,%
+ morekeywords={aa,abs,ac,acolor,acos,actor,al,alias,align,and,%
+ animation,animation,appearance,apply,ar,arc,as,asin,assoc,atan,%
+ axialcamera,axialcameras,basehermite,bbox,bbox,bernstein,%
+ bernsteinbasis,bezier,beziercurve,beziermanifold,bezierstripe,%
+ beziersurface,bigger,biggest,bilinearsurface,binormal,%
+ biquadraticsurface,black,blend,blue,bottom,box,brown,bspize,%
+ bspline,bsplinebasis,c,cabinet,camera,cart,case,cat,catch,ceil,%
+ centeredcameras,centralcavalier,char,charseq,choose,circle,%
+ circumference,class,cmap,color,comp,computecoords,cone,%
+ conicalsurface,cons,control,convexcoords,convexhull,coonspatch,%
+ copy,cos,cosh,crease,crosspolytope,cube,cubiccardinal,%
+ cubiccardinalbasis,cubichermite,cubicubspline,cubicubsplinebasis,%
+ cuboid,curl,curvature,curve2cspath,curve2mapvect,cyan,cylinder,%
+ cylindricalsurface,d,deboor,def,depol,depth_sort,depth_test,%
+ derbernstein,derbernsteinbase,derbezier,determinant,difference,%
+ differencepr,dim,dimetric,dirproject,displaygraph,displaynubspline,%
+ displaynurbspline,distl,distr,div,divergence,dodecahedron,dot,down,%
+ dp,drawedges,drawforks,drawtree,ds,dsphere,dump,dumprep,ellipse,%
+ embed,end,eq,ex,exp,explode,export,extract_bodies,extract_polygons,%
+ extract_wires,extrude,extrusion,fact,false,feature,ff,fillcolor,%
+ filter,finitecone,first,flash,flashani,floor,fontcolor,fontheight,%
+ fontspacing,fontwidth,fractalsimplex,frame,frame,frameflash,fromto,%
+ gausscurvature,ge,grad,gradient,gradmap,gray,green,gt,help,hermite,%
+ hermitebasis,hermitesurface,hexahedron,icosahedron,id,idnt,if,in,%
+ inarcs,innerprod,inset,insl,insr,intersection,intersectionpr,%
+ intervals,intmax,intmin,intsto,inv,isa,isanimpol,isbool,ischar,%
+ isclosedshape,iscloseto,isempty,iseven,isfun,isfunvect,isge,isgt,%
+ isint,isintneg,isinto,isintpos,isle,islt,ismat,ismatof,isnat,%
+ isnull,isnum,isnumneg,isnumpos,isodd,isometric,isorthoshape,ispair,%
+ ispoint,ispointseq,ispol,ispoldim,ispolytope,ispurepol,isreal,%
+ isrealneg,isrealpos,isrealvect,isseq,isseqof,isshape,issimplex,%
+ issqrmat,isstring,isvect,iszero,jacobian,join,joints,k,last,le,%
+ left,leftcavalier,len,less,lesseq,lex,lift,light,linecolor,%
+ linesize,list,ln,load,loadlib,loop,lt,lxmy,magenta,map,mapshapes,%
+ markersize,mat,matdotprod,material,mathom,max,mean,meanpoint,med,%
+ merge,mesh,min,minkowski,mirror,mixedprod,mk,mkframe,mkpol,%
+ mkvector,mkversork,mod,model,move,mul,multextrude,mxby,mxmy,mxty,%
+ myfont,n,nat2string,neq,ngon,norm2,normalmap,not,nu_grid,nubspline,%
+ nubsplineknots,nurbspline,nurbsplineknots,octahedron,offset,%
+ onepoint,open,optimize,or,orange,ord,ortho,orthoproject,orthox,%
+ orthoy,orthoz,outarcs,outerloop,outerwarp,pairdiff,parallel,%
+ pascaltriangle,pdiff,pdifference,permutahedron,permutations,%
+ perspective,perspective,pi,pivotop,plane,planemapping,pmap,%
+ points2shape,polar,polyline,polymarker,polypoint,power,powerset,%
+ presort,principalnormal,print,prism,profileprodsurface,%
+ progressivesum,project,projection,purple,pyramid,q,quadarray,%
+ quadmesh,quote,r,raise,range,rationalbezier,rationalblend,%
+ rationalbspline,rationalize,red,rev,reverse,rgbacolor,right,%
+ rightcavalier,ring,rn,rotatedtext,rotationalsurface,rotn,rtail,%
+ ruledsurface,rxmy,s,save,scalarmatprod,scalarvectprod,schlegel2d,%
+ schlegel3d,sdifference,sdifferencepr,segment,sel,setand,setdiff,%
+ setfontcolor,setor,setxor,sex,shape_0,shape_1,shape2points,%
+ shape2pol,shapeclosed,shapecomb,shapediff,shapedist,%
+ shapeinbetweening,shapeinf,shapejoin,shapelen,shapenorm,%
+ shapenormal,shapeprod,shaperot,shapesum,shapesup,shapezero,shift,%
+ showprop,sign,signal,simplex,simplexpile,sin,sinh,size,skeleton,%
+ skew,smaller,smallest,solidifier,solidify,sort,sphere,spline,%
+ splinesampling,splitcells,splitpols,sqr,sqrt,star,string,%
+ stringtokens,struct,sub,svg,sweep,t,tail,tan,tangent,tanh,%
+ tensorprodsurface,tetrahedron,text,texture,textwithattributes,%
+ thinsolid,threepoints,time,tmax,tmin,top,torus,torusmap,trace,%
+ trans,tree,trianglefan,trianglestripe,trimetric,true,truncone,tt,%
+ tube,twopoints,uk,ukpol,ukpolf,union,unionpr,unitvect,unprune,up,%
+ vect2dtoangle,vect2mat,vectdiff,vectnorm,vectprod,vectsum,view,%
+ viewmodel,viewmodel,vrml,warp,warp,where,white,with,xcavalier,xor,%
+ xquadarray,xx,ycavalier,yellow},%
+ moredirectives={loadlib},%
+ otherkeywords={-,+,*,**,/,~,|,..,^,\&,\&\&,\#,\#\#},%
+ morecomment=[s]{\%}{\%},%
+ morestring=[b]',%
+ literate={~}{{$\sim$}}{1} {^}{$\wedge$}{1},%
+ }[keywords,directives,comments,strings]%
+\lst@definelanguage{PL/I}%
+ {morekeywords={ABS,ATAN,AUTOMATIC,AUTO,ATAND,BEGIN,BINARY,BIN,BIT,%
+ BUILTIN,BY,CALL,CHARACTER,CHAR,CHECK,COLUMN,COL,COMPLEX,CPLX,%
+ COPY,COS,COSD,COSH,DATA,DATE,DECIMAL,DEC,DECLARE,DCL,DO,EDIT,%
+ ELSE,END,ENDFILE,ENDPAGE,ENTRY,EXP,EXTERNAL,EXT,FINISH,FIXED,%
+ FIXEDOVERFLOW,FOFL,FLOAT,FORMAT,GET,GO,GOTO,IF,IMAG,INDEX,%
+ INITIAL,INIT,INTERNAL,INT,LABEL,LENGTH,LIKE,LINE,LIST,LOG,LOG2,%
+ LOG10,MAIN,MAX,MIN,MOD,NOCHECK,NOFIXEDOVERFLOW,NOFOFL,NOOVERFLOW,%
+ NOOFL,NOSIZE,NOUNDERFLOW,NOUFL,NOZERODIVIDE,NOZDIV,ON,OPTIONS,%
+ OVERFLOW,OFL,PAGE,PICTURE,PROCEDURE,PROC,PUT,READ,REPEAT,RETURN,%
+ RETURNS,ROUND,SIN,SIND,SINH,SIZE,SKIP,SQRT,STATIC,STOP,STRING,%
+ SUBSTR,SUM,SYSIN,SYSPRINT,TAN,TAND,TANH,THEN,TO,UNDERFLOW,UFL,%
+ VARYING,WHILE,WRITE,ZERODIVIDE,ZDIV},%
+ sensitive=f,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[d]'%
+ }[keywords,comments,strings]%
+%%
+%% Promela definition (c) 2004 William Thimbleby
+%%
+\lst@definelanguage{Promela}
+ {morekeywords={active,assert,atomic,bit,bool,break,byte,chan,d_step,%
+ Dproctype,do,else,empty,enabled,fi,full,goto,hidden,if,init,int,%
+ len,mtype,nempty,never,nfull,od,of,pcvalue,printf,priority,%
+ proctype,provided,run,short,skip,timeout,typedef,unless,unsigned,%
+ xr,xs,true,false,inline,eval},%
+ moredirectives={define,ifdef,ifndef,if,if,else,endif,undef,include},%
+ moredelim=*[directive]\#,%
+ morecomment=[s]{/*}{*/},%
+ morestring=[b]"%
+ }[keywords,comments,strings,directives]%
+%%
+%% Reduce definition (c) 2002 Geraint Paul Bevan
+%%
+\lst@definelanguage{Reduce}%
+ {morekeywords={%
+%% reserved identifiers
+abs,acos,acosh,acot,acoth,acsc,acsch,%
+adjprec,algebraic,algint,allbranch,allfac,and,%
+antisymmetric,append,arglength,array,asec,asech,%
+asin,asinh,atan,atan2,atanh,begin,bfspace,bye,%
+card_no,ceiling,clear,clearrules,coeff,coeffn,%
+cofactor,combineexpt,combinelogs,comment,comp,%
+complex,conj,cons,cont,cos,cosh,cot,coth,cramer,%
+cref,csc,csch,decompose,define,defn,deg,demo,den,%
+depend,det,df,difference,dilog,display,div,do,e,%
+echo,ed,editdef,ei,end,eps,eq,equal,erf,errcont,%
+evallhseqp,eval_mode,even,evenp,exp,expandlogs,%
+expr,expt,ezgcd,factor,factorial,factorize,fexpr,%
+first,fix,fixp,floor,for,forall,foreach,fort,%
+fort_width,freeof,fullroots,g,gcd,geq,go,goto,%
+greaterp,high_pow,hypot,i,if,ifactor,impart,in,%
+index,infinity,infix,input,int,integer,interpol,%
+intstr,k,korder,lambda,lcm,lcof,length,leq,lessp,%
+let,lhs,linear,linelength,lisp,list,listargp,%
+listargs,ln,load,load_package,log,log10,logb,%
+low_pow,lterm,macro,mainvar,mass,mat,match,%
+mateigen,matrix,max,mcd,member,memq,min,minus,mkid,%
+modular,msg,mshell,multiplicities,nat,neq,nero,%
+nextprime,nil,nodepend,noncom,nonzero,nosplit,%
+nospur,nullspace,num,numberp,odd,off,on,operator,%
+or,order,ordp,out,output,part,pause,period,pf,pi,%
+plus,precedence,precise,precision,pret,pri,primep,%
+print_precision,procedure,product,quit,quotient,%
+random,random_new_seed,rank,rat,ratarg,rational,%
+rationalize,ratpri,real,rederr,reduct,remainder,%
+remfac,remind,repart,repeat,rest,resultant,retry,%
+return,reverse,revpri,rhs,rlisp88,%
+root_multiplicity,round,roundall,roundbf,rounded,%
+saveas,savestructr,scalar,sec,sech,second,set,%
+setmod,setq,share,showrules,showtime,shut,sign,sin,%
+sinh,smacro,solve,solvesingular,spur,sqrt,structr,%
+sub,sum,symbolic,symmetric,t,tan,tanh,third,time,%
+times,tp,tra,trace,trfac,trigform,trint,until,%
+varname,vecdim,vector,weight,when,where,while,%
+write,ws,wtlevel,%
+%% identifiers with spaces
+%% for all,for each,go to,such that,%
+},%
+ sensitive=false,%
+ morecomment=[l]\%,%
+ morecomment=[s]{COMMENT}{;},%
+ morecomment=[s]{COMMENT}{$},%
+ morestring="%
+ }[keywords,comments,strings]%
+%%
+%% RSL definition (c) 2004 Brian Christensen
+%%
+\lst@definelanguage{RSL}%
+ {morekeywords={Bool,Char,devt_relation,Int,Nat,Real,Text,Unit,abs,any,%
+ as,axiom,card,case,channel,chaos,class,do,dom,elems,else,elsif,end,%
+ extend,false,for,hd,hide,if,in,inds,initialise,int,len,let,local,%
+ object,of,out,post,pre,read,real,rng,scheme,skip,stop,swap,%
+ test_case,theory,then,tl,true,type,until,use,value,variable,while,%
+ with,write},%
+literate=%
+{<}{$<$}{1}%
+{>}{$>$}{1}%
+{[}{$[$}{1}%%
+{]}{$]$}{1}%%
+{^}{{\mbox{$\widehat{\;}$}}}{1}%%
+{'}{{\raisebox{1ex}[1ex][0ex]{\protect\scriptsize$\prime$}}}{1}%%
+{||}{{\mbox{$\parallel$}}}{2}%%
+{|-}{$\vdash$}{1}%%
+{|=|}{{\mbox{$\lceil\!\rceil\!\!\!\!\!\!\;\lfloor\!\rfloor$}}}{1}%%
+{**}{$\uparrow$}{1}%
+{/\\}{$\wedge$}{1}%%
+{inter}{$\cap$}{1}%%
+{-\\}{$\lambda$}{1}%%
+{->}{$\rightarrow$}{1}%%
+{-m->}{{\mbox{$\rightarrow \hspace{-2.5\lst@width} _{m}\;$}}}{1}%
+{-~m->}{{\mbox{$\stackrel{\sim}{\mbox{$\rightarrow\hspace{-2.5\lst@width} _{m}\;$}}$}}}{1}%
+{-~->}{{\mbox{$\stackrel{\sim}{\rightarrow}$}}}{1}%%
+{-set}{\bf{-set}}{4}%%
+{-list}{{$^{\ast}$}}{1}%%
+{-inflist}{$^\omega$}{1}%
+{-infset}{{\mbox{{\bf -infset}}}}{7}%
+{\#}{$\circ$}{1}%
+{:-}{{\raisebox{.4ex}{\tiny $\bullet$}}}{1}%%
+{=}{$=$}{1}%%
+{==}{$==$}{2}%%
+{=>}{$\Rightarrow$}{1}%%
+{\ is\protect\^^M}{{$\;\equiv$}}{2}%
+{\ is\ }{{$\equiv$}}{3}%%
+{\ isin\protect\^^M}{$\;\in$}{2}%%
+{~}{$\sim$}{1}%%
+{~=}{$\neq$}{1}%%
+{~isin}{$\notin$}{1}%%
+{+>}{$\mapsto$}{1}%%
+{++}{}{1}%
+{|^|}{{\mbox{$\lceil\!\rceil$}}}{1}%%
+{\\/}{$\vee$}{1}%%
+{exists}{$\exists$}{1}%%
+{union}{$\cup$}{1}%%
+{>=}{$\geq$}{1}%%
+{><}{$\times$}{1}%%
+{>>}{$\supset$}{1}%
+{>>=}{$\supseteq$}{1}%%
+{<=}{$\leq$}{1}%%
+{<<}{$\subset$}{1}%
+{<.}{$\langle$}{1}%%
+{<<=}{$\subseteq$}{1}%%
+{<->}{$\leftrightarrow$}{1}%%
+{[=}{$\sqsubseteq$}{1}%%
+{\{=}{$\preceq$}{1}%%
+{\ all\protect\^^M}{$\forall$}{2}%%
+{\ all\ }{$\forall$}{3}%%
+{!!}{$\dagger$}{1}%%
+{always}{$\Box$}{1}%%
+{.>}{$\rangle$}{1}%%
+{`alpha}{$\alpha$}{1}%
+{`beta}{$\beta$}{1}%
+{`gamma}{$\gamma$}{1}%
+{`delta}{$\delta$}{1}%
+{`epsilon}{$\epsilon$}{1}%
+{`zeta}{$\zeta$}{1}%
+{`eta}{$\eta$}{1}%
+{`theta}{$\theta$}{1}%
+{`iota}{$\iota$}{1}%
+{`kappa}{$\kappa$}{1}%
+{`mu}{$\mu$}{1}%
+{`nu}{$\nu$}{1}%
+{`xi}{$\xi$}{1}%
+{`pi}{$\pi$}{1}%
+{`rho}{$\rho$}{1}%
+{`sigma}{$\sigma$}{1}%
+{`tau}{$\tau$}{1}%
+{`upsilon}{$\upsilon$}{1}%
+{`phi}{$\phi$}{1}%
+{`chi}{$\chi$}{1}%
+{`psi}{$\psi$}{1}%
+{`omega}{$\omega$}{1}%
+{`Gamma}{$\Gamma$}{1}%
+{`Delta}{$\Delta$}{1}%
+{`Theta}{$\Theta$}{1}%
+{`Lambda}{$\Lambda$}{1}%
+{`Xi}{$\Xi$}{1}%
+{`Pi}{$\Pi$}{1}%
+{`Sigma}{$\Sigma$}{1}%
+{`Upsilon}{$\Upsilon$}{1}%
+{`Phi}{$\Phi$}{1}%
+{`Psi}{$\Psi$}{1}%
+{`Omega}{$\Omega$}{1},%
+ sensitive=true,%
+ morecomment=[l]{--},%
+ morecomment=[s]{/*}{*/}%
+ }[keywords,comments]%
+\lst@definelanguage[IBM]{Simula}[DEC]{Simula}{}%
+\lst@definelanguage[DEC]{Simula}[67]{Simula}%
+ {morekeywords={and,eq,eqv,ge,gt,hidden,imp,le,long,lt,ne,not,%
+ options,or,protected,short}%
+ }%
+\lst@definelanguage[CII]{Simula}[67]{Simula}%
+ {morekeywords={and,equiv,exit,impl,not,or,stop}}%
+\lst@definelanguage[67]{Simula}%
+ {morekeywords={activate,after,array,at,before,begin,boolean,%
+ character,class,comment,delay,detach,do,else,end,external,false,%
+ for,go,goto,if,in,inner,inspect,integer,is,label,name,new,none,%
+ notext,otherwise,prior,procedure,qua,reactivate,real,ref,resume,%
+ simset,simulation,step,switch,text,then,this,to,true,until,value,%
+ virtual,when,while},%
+ sensitive=f,%
+ keywordcommentsemicolon={end}{else,end,otherwise,when}{comment},%
+ morestring=[d]",%
+ morestring=[d]'%
+ }[keywords,keywordcomments,strings]%
+\lst@definelanguage{S}[]{R}{}
+\lst@definelanguage[PLUS]{S}[]{R}{}
+\lst@definelanguage{R}%
+ {keywords={abbreviate,abline,abs,acos,acosh,action,add1,add,%
+ aggregate,alias,Alias,alist,all,anova,any,aov,aperm,append,apply,%
+ approx,approxfun,apropos,Arg,args,array,arrows,as,asin,asinh,%
+ atan,atan2,atanh,attach,attr,attributes,autoload,autoloader,ave,%
+ axis,backsolve,barplot,basename,besselI,besselJ,besselK,besselY,%
+ beta,binomial,body,box,boxplot,break,browser,bug,builtins,bxp,by,%
+ c,C,call,Call,case,cat,category,cbind,ceiling,character,char,%
+ charmatch,check,chol,chol2inv,choose,chull,class,close,cm,codes,%
+ coef,coefficients,co,col,colnames,colors,colours,commandArgs,%
+ comment,complete,complex,conflicts,Conj,contents,contour,%
+ contrasts,contr,control,helmert,contrib,convolve,cooks,coords,%
+ distance,coplot,cor,cos,cosh,count,fields,cov,covratio,wt,CRAN,%
+ create,crossprod,cummax,cummin,cumprod,cumsum,curve,cut,cycle,D,%
+ data,dataentry,date,dbeta,dbinom,dcauchy,dchisq,de,debug,%
+ debugger,Defunct,default,delay,delete,deltat,demo,de,density,%
+ deparse,dependencies,Deprecated,deriv,description,detach,%
+ dev2bitmap,dev,cur,deviance,off,prev,,dexp,df,dfbetas,dffits,%
+ dgamma,dgeom,dget,dhyper,diag,diff,digamma,dim,dimnames,dir,%
+ dirname,dlnorm,dlogis,dnbinom,dnchisq,dnorm,do,dotplot,double,%
+ download,dpois,dput,drop,drop1,dsignrank,dt,dummy,dump,dunif,%
+ duplicated,dweibull,dwilcox,dyn,edit,eff,effects,eigen,else,%
+ emacs,end,environment,env,erase,eval,equal,evalq,example,exists,%
+ exit,exp,expand,expression,External,extract,extractAIC,factor,%
+ fail,family,fft,file,filled,find,fitted,fivenum,fix,floor,for,%
+ For,formals,format,formatC,formula,Fortran,forwardsolve,frame,%
+ frequency,ftable,ftable2table,function,gamma,Gamma,gammaCody,%
+ gaussian,gc,gcinfo,gctorture,get,getenv,geterrmessage,getOption,%
+ getwd,gl,glm,globalenv,gnome,GNOME,graphics,gray,grep,grey,grid,%
+ gsub,hasTsp,hat,heat,help,hist,home,hsv,httpclient,I,identify,if,%
+ ifelse,Im,image,\%in\%,index,influence,measures,inherits,install,%
+ installed,integer,interaction,interactive,Internal,intersect,%
+ inverse,invisible,IQR,is,jitter,kappa,kronecker,labels,lapply,%
+ layout,lbeta,lchoose,lcm,legend,length,levels,lgamma,library,%
+ licence,license,lines,list,lm,load,local,locator,log,log10,log1p,%
+ log2,logical,loglin,lower,lowess,ls,lsfit,lsf,ls,machine,Machine,%
+ mad,mahalanobis,make,link,margin,match,Math,matlines,mat,matplot,%
+ matpoints,matrix,max,mean,median,memory,menu,merge,methods,min,%
+ missing,Mod,mode,model,response,mosaicplot,mtext,mvfft,na,nan,%
+ names,omit,nargs,nchar,ncol,NCOL,new,next,NextMethod,nextn,%
+ nlevels,nlm,noquote,NotYetImplemented,NotYetUsed,nrow,NROW,null,%
+ numeric,\%o\%,objects,offset,old,on,Ops,optim,optimise,optimize,%
+ options,or,order,ordered,outer,package,packages,page,pairlist,%
+ pairs,palette,panel,par,parent,parse,paste,path,pbeta,pbinom,%
+ pcauchy,pchisq,pentagamma,persp,pexp,pf,pgamma,pgeom,phyper,pico,%
+ pictex,piechart,Platform,plnorm,plogis,plot,pmatch,pmax,pmin,%
+ pnbinom,pnchisq,pnorm,points,poisson,poly,polygon,polyroot,pos,%
+ postscript,power,ppoints,ppois,predict,preplot,pretty,Primitive,%
+ print,prmatrix,proc,prod,profile,proj,prompt,prop,provide,%
+ psignrank,ps,pt,ptukey,punif,pweibull,pwilcox,q,qbeta,qbinom,%
+ qcauchy,qchisq,qexp,qf,qgamma,qgeom,qhyper,qlnorm,qlogis,qnbinom,%
+ qnchisq,qnorm,qpois,qqline,qqnorm,qqplot,qr,Q,qty,qy,qsignrank,%
+ qt,qtukey,quantile,quasi,quit,qunif,quote,qweibull,qwilcox,%
+ rainbow,range,rank,rbeta,rbind,rbinom,rcauchy,rchisq,Re,read,csv,%
+ csv2,fwf,readline,socket,real,Recall,rect,reformulate,regexpr,%
+ relevel,remove,rep,repeat,replace,replications,report,require,%
+ resid,residuals,restart,return,rev,rexp,rf,rgamma,rgb,rgeom,R,%
+ rhyper,rle,rlnorm,rlogis,rm,rnbinom,RNGkind,rnorm,round,row,%
+ rownames,rowsum,rpois,rsignrank,rstandard,rstudent,rt,rug,runif,%
+ rweibull,rwilcox,sample,sapply,save,scale,scan,scan,screen,sd,se,%
+ search,searchpaths,segments,seq,sequence,setdiff,setequal,set,%
+ setwd,show,sign,signif,sin,single,sinh,sink,solve,sort,source,%
+ spline,splinefun,split,sqrt,stars,start,stat,stem,step,stop,%
+ storage,strstrheight,stripplot,strsplit,structure,strwidth,sub,%
+ subset,substitute,substr,substring,sum,summary,sunflowerplot,svd,%
+ sweep,switch,symbol,symbols,symnum,sys,status,system,t,table,%
+ tabulate,tan,tanh,tapply,tempfile,terms,terrain,tetragamma,text,%
+ time,title,topo,trace,traceback,transform,tri,trigamma,trunc,try,%
+ ts,tsp,typeof,unclass,undebug,undoc,union,unique,uniroot,unix,%
+ unlink,unlist,unname,untrace,update,upper,url,UseMethod,var,%
+ variable,vector,Version,vi,warning,warnings,weighted,weights,%
+ which,while,window,write,\%x\%,x11,X11,xedit,xemacs,xinch,xor,%
+ xpdrows,xy,xyinch,yinch,zapsmall,zip},%
+ otherkeywords={!,!=,~,$,*,\&,\%/\%,\%*\%,\%\%,<-,<<-,_,/},%
+ alsoother={._$},%
+ sensitive,%
+ morecomment=[l]\#,%
+ morestring=[d]",%
+ morestring=[d]'% 2001 Robert Denham
+ }%
+\lst@definelanguage{SAS}%
+ {procnamekeys={proc},%
+ morekeywords={DATA,AND,OR,NOT,EQ,GT,LT,GE,LE,NE,INFILE,INPUT,DO,BY,%
+ TO,SIN,COS,OUTPUT,END,PLOT,RUN,LIBNAME,VAR,TITLE,FIRSTOBS,OBS,%
+ DELIMITER,DLM,EOF,ABS,DIM,HBOUND,LBOUND,MAX,MIN,MOD,SIGN,SQRT,%
+ CEIL,FLOOR,FUZZ,INT,ROUND,TRUNC,DIGAMMA,ERF,ERFC,EXP,GAMMA,%
+ LGAMMA,LOG,LOG2,LOG10,ARCOS,ARSIN,ATAN,COSH,SINH,TANH,TAN,%
+ POISSON,PROBBETA,PROBBNML,PROBCHI,PROBF,PROBGAM,PROBHYPR,%
+ PROBNEGB,PROBNORM,PROBT,BETAINV,CINV,FINV,GAMINV,PROBIT,TINV,CSS,%
+ CV,KURTOSIS,MEAN,NMISS,RANGE,SKEWNESS,STD,STDERR,SUM,USS,NORMAL,%
+ RANBIN,RANCAU,RANEXP,RANGAM,RANNOR,RANPOI,RANTBL,RANTRI,RANUNI,%
+ UNIFORM,IF,THEN,ELSE,WHILE,UNTIL,DROP,KEEP,LABEL,DEFAULT,ARRAY,%
+ MERGE,CARDS,CARDS4,PUT,SET,UPDATE,ABORT,DELETE,DISPLAY,LIST,%
+ LOSTCARD,MISSING,STOP,WHERE,ARRAY,DROP,KEEP,WINDOW,LENGTH,RENAME,%
+ RETAIN,MEANS,UNIVARIATE,SUMMARY,TABULATE,CORR,FREQ,FOOTNOTE,NOTE,%
+ SHOW},%
+ otherkeywords={!,!=,~,$,*,\&,_,/,<,>=,=<,>},%
+ morestring=[d]'%
+ }[keywords,comments,strings,procnames]%
+\lst@definelanguage[AlLaTeX]{TeX}[LaTeX]{TeX}%
+ {moretexcs={AtBeginDocument,AtBeginDvi,AtEndDocument,AtEndOfClass,%
+ AtEndOfPackage,ClassError,ClassInfo,ClassWarning,%
+ ClassWarningNoLine,CurrentOption,DeclareErrorFont,%
+ DeclareFixedFont,DeclareFontEncoding,DeclareFontEncodingDefaults,%
+ DeclareFontFamily,DeclareFontShape,DeclareFontSubstitution,%
+ DeclareMathAccent,DeclareMathAlphabet,DeclareMathAlphabet,%
+ DeclareMathDelimiter,DeclareMathRadical,DeclareMathSizes,%
+ DeclareMathSymbol,DeclareMathVersion,DeclareOldFontCommand,%
+ DeclareOption,DeclarePreloadSizes,DeclareRobustCommand,%
+ DeclareSizeFunction,DeclareSymbolFont,DeclareSymbolFontAlphabet,%
+ DeclareTextAccent,DeclareTextAccentDefault,DeclareTextCommand,%
+ DeclareTextCommandDefault,DeclareTextComposite,%
+ DeclareTextCompositeCommand,DeclareTextFontCommand,%
+ DeclareTextSymbol,DeclareTextSymbolDefault,ExecuteOptions,%
+ GenericError,GenericInfo,GenericWarning,IfFileExists,%
+ InputIfFileExists,LoadClass,LoadClassWithOptions,MessageBreak,%
+ OptionNotUsed,PackageError,PackageInfo,PackageWarning,%
+ PackageWarningNoLine,PassOptionsToClass,PassOptionsToPackage,%
+ ProcessOptionsProvidesClass,ProvidesFile,ProvidesFile,%
+ ProvidesPackage,ProvideTextCommand,RequirePackage,%
+ RequirePackageWithOptions,SetMathAlphabet,SetSymbolFont,%
+ TextSymbolUnavailable,UseTextAccent,UseTextSymbol},%
+ morekeywords={array,center,displaymath,document,enumerate,eqnarray,%
+ equation,flushleft,flushright,itemize,list,lrbox,math,minipage,%
+ picture,sloppypar,tabbing,tabular,trivlist,verbatim}%
+ }%
+\lst@definelanguage[LaTeX]{TeX}[common]{TeX}%
+ {moretexcs={a,AA,aa,addcontentsline,addpenalty,addtocontents,%
+ addtocounter,addtolength,addtoversion,addvspace,alph,Alph,and,%
+ arabic,array,arraycolsep,arrayrulewidth,arraystretch,author,%
+ baselinestretch,begin,bezier,bfseries,bibcite,bibdata,bibitem,%
+ bibliography,bibliographystyle,bibstyle,bigskip,boldmath,%
+ botfigrule,bottomfraction,Box,caption,center,CheckCommand,circle,%
+ citation,cite,cleardoublepage,clearpage,cline,columnsep,%
+ columnseprule,columnwidth,contentsline,dashbox,date,dblfigrule,%
+ dblfloatpagefraction,dblfloatsep,dbltextfloatsep,dbltopfraction,%
+ defaultscriptratio,defaultscriptscriptratio,depth,Diamond,%
+ displaymath,document,documentclass,documentstyle,doublerulesep,%
+ em,emph,endarray,endcenter,enddisplaymath,enddocument,%
+ endenumerate,endeqnarray,endequation,endflushleft,endflushright,%
+ enditemize,endlist,endlrbox,endmath,endminipage,endpicture,%
+ endsloppypar,endtabbing,endtabular,endtrivlist,endverbatim,%
+ enlargethispage,ensuremath,enumerate,eqnarray,equation,%
+ evensidemargin,extracolsep,fbox,fboxrule,fboxsep,filecontents,%
+ fill,floatpagefraction,floatsep,flushbottom,flushleft,flushright,%
+ fnsymbol,fontencoding,fontfamily,fontseries,fontshape,fontsize,%
+ fontsubfuzz,footnotemark,footnotesep,footnotetext,footskip,frac,%
+ frame,framebox,fussy,glossary,headheight,headsep,height,hline,%
+ hspace,I,include,includeonly,index,inputlineno,intextsep,%
+ itemindent,itemize,itemsep,iterate,itshape,Join,kill,label,%
+ labelsep,labelwidth,LaTeX,LaTeXe,leadsto,lefteqn,leftmargin,%
+ leftmargini,leftmarginii,leftmarginiii,leftmarginiv,leftmarginv,%
+ leftmarginvi,leftmark,lhd,lim,linebreak,linespread,linethickness,%
+ linewidth,list,listfiles,listfiles,listparindent,lrbox,%
+ makeatletter,makeatother,makebox,makeglossary,makeindex,%
+ makelabel,MakeLowercase,MakeUppercase,marginpar,marginparpush,%
+ marginparsep,marginparwidth,markboth,markright,math,mathbf,%
+ mathellipsis,mathgroup,mathit,mathrm,mathsf,mathsterling,mathtt,%
+ mathunderscore,mathversion,mbox,mdseries,mho,minipage,%
+ multicolumn,multiput,NeedsTeXFormat,newcommand,newcounter,%
+ newenvironment,newfont,newhelp,newlabel,newlength,newline,%
+ newmathalphabet,newpage,newsavebox,newtheorem,nobreakspace,%
+ nobreakspace,nocite,nocorr,nocorrlist,nofiles,nolinebreak,%
+ nonumber,nopagebreak,normalcolor,normalfont,normalmarginpar,%
+ numberline,obeycr,oddsidemargin,oldstylenums,onecolumn,oval,%
+ pagebreak,pagenumbering,pageref,pagestyle,paperheight,paperwidth,%
+ paragraphmark,parbox,parsep,partopsep,picture,poptabs,pounds,%
+ protect,pushtabs,put,qbezier,qbeziermax,r,raggedleft,raisebox,%
+ ref,refstepcounter,renewcommand,renewenvironment,restorecr,%
+ reversemarginpar,rhd,rightmargin,rightmark,rmfamily,roman,Roman,%
+ rootbox,rule,samepage,sbox,scshape,secdef,section,sectionmark,%
+ selectfont,setcounter,settodepth,settoheight,settowidth,sffamily,%
+ shortstack,showoutput,showoverfull,sloppy,sloppypar,slshape,%
+ smallskip,sqsubset,sqsupset,SS,stackrel,stepcounter,stop,stretch,%
+ subparagraphmark,subsectionmark,subsubsectionmark,sum,%
+ suppressfloats,symbol,tabbing,tabbingsep,tabcolsep,tabular,%
+ tabularnewline,textasciicircum,textasciitilde,textbackslash,%
+ textbar,textbf,textbraceleft,textbraceright,textbullet,%
+ textcircled,textcompwordmark,textdagger,textdaggerdbl,textdollar,%
+ textellipsis,textemdash,textendash,textexclamdown,textfloatsep,%
+ textfraction,textgreater,textheight,textit,textless,textmd,%
+ textnormal,textparagraph,textperiodcentered,textquestiondown,%
+ textquotedblleft,textquotedblright,textquoteleft,textquoteright,%
+ textregistered,textrm,textsc,textsection,textsf,textsl,%
+ textsterling,textsuperscript,texttrademark,texttt,textunderscore,%
+ textup,textvisiblespace,textwidth,thanks,thefootnote,thempfn,%
+ thempfn,thempfootnote,thepage,thepage,thicklines,thinlines,%
+ thispagestyle,title,today,topfigrule,topfraction,topmargin,%
+ topsep,totalheight,tracingfonts,trivlist,ttfamily,twocolumn,%
+ typein,typeout,unboldmath,unitlength,unlhd,unrhd,upshape,usebox,%
+ usecounter,usefont,usepackage,value,vector,verb,verbatim,vline,%
+ vspace,width,%
+ normalsize,small,footnotesize,scriptsize,tiny,large,Large,LARGE,%
+ huge,Huge}%
+ }%
+\lst@definelanguage[plain]{TeX}[common]{TeX}%
+ {moretexcs={advancepageno,beginsection,bf,bffam,bye,cal,cleartabs,%
+ columns,dosupereject,endinsert,eqalign,eqalignno,fiverm,fivebf,%
+ fivei,fivesy,folio,footline,hang,headline,it,itemitem,itfam,%
+ leqalignno,magnification,makefootline,makeheadline,midinsert,mit,%
+ mscount,nopagenumbers,normalbottom,of,oldstyle,pagebody,%
+ pagecontents,pageinsert,pageno,plainoutput,preloaded,proclaim,rm,%
+ settabs,sevenbf,seveni,sevensy,sevenrm,sl,slfam,supereject,%
+ tabalign,tabs,tabsdone,tabsyet,tenbf,tenex,teni,tenit,tenrm,%
+ tensl,tensy,tentt,textindent,topglue,topins,topinsert,tt,ttfam,%
+ ttraggedright,vfootnote}%
+ }%
+\lst@definelanguage[common]{TeX}[primitive]{TeX}
+ {moretexcs={active,acute,ae,AE,aleph,allocationnumber,allowbreak,%
+ alpha,amalg,angle,approx,arccos,arcsin,arctan,arg,arrowvert,%
+ Arrowvert,ast,asymp,b,backslash,bar,beta,bgroup,big,Big,bigbreak,%
+ bigcap,bigcirc,bigcup,bigg,Bigg,biggl,Biggl,biggm,Biggm,biggr,%
+ Biggr,bigl,Bigl,bigm,Bigm,bigodot,bigoplus,bigotimes,bigr,Bigr,%
+ bigskip,bigskipamount,bigsqcup,bigtriangledown,bigtriangleup,%
+ biguplus,bigvee,bigwedge,bmod,bordermatrix,bot,bowtie,brace,%
+ braceld,bracelu,bracerd,braceru,bracevert,brack,break,breve,%
+ buildrel,bullet,c,cap,cases,cdot,cdotp,cdots,centering,%
+ centerline,check,chi,choose,circ,clubsuit,colon,cong,coprod,%
+ copyright,cos,cosh,cot,coth,csc,cup,d,dag,dagger,dashv,ddag,%
+ ddagger,ddot,ddots,deg,delta,Delta,det,diamond,diamondsuit,dim,%
+ displaylines,div,do,dospecials,dot,doteq,dotfill,dots,downarrow,%
+ Downarrow,downbracefill,egroup,eject,ell,empty,emptyset,endgraf,%
+ endline,enskip,enspace,epsilon,equiv,eta,exists,exp,filbreak,%
+ flat,fmtname,fmtversion,footins,footnote,footnoterule,forall,%
+ frenchspacing,frown,gamma,Gamma,gcd,ge,geq,gets,gg,goodbreak,%
+ grave,H,hat,hbar,heartsuit,hglue,hideskip,hidewidth,hom,%
+ hookleftarrow,hookrightarrow,hphantom,hrulefill,i,ialign,iff,Im,%
+ imath,in,inf,infty,int,interdisplaylinepenalty,%
+ interfootnotelinepenalty,intop,iota,item,j,jmath,joinrel,jot,%
+ kappa,ker,l,L,lambda,Lambda,land,langle,lbrace,lbrack,lceil,%
+ ldotp,ldots,le,leavevmode,leftarrow,Leftarrow,leftarrowfill,%
+ leftharpoondown,leftharpoonup,leftline,leftrightarrow,%
+ Leftrightarrow,leq,lfloor,lg,lgroup,lhook,lim,liminf,limsup,line,%
+ ll,llap,lmoustache,ln,lnot,log,longleftarrow,Longleftarrow,%
+ longleftrightarrow,Longleftrightarrow,longmapsto,longrightarrow,%
+ Longrightarrow,loop,lor,lq,magstep,magstep,magstephalf,mapsto,%
+ mapstochar,mathhexbox,mathpalette,mathstrut,matrix,max,maxdimen,%
+ medbreak,medskip,medskipamount,mid,min,models,mp,mu,multispan,%
+ nabla,narrower,natural,ne,nearrow,neg,negthinspace,neq,newbox,%
+ newcount,newdimen,newfam,newif,newinsert,newlanguage,newmuskip,%
+ newread,newskip,newtoks,newwrite,next,ni,nobreak,nointerlineskip,%
+ nonfrenchspacing,normalbaselines,normalbaselineskip,%
+ normallineskip,normallineskiplimit,not,notin,nu,null,nwarrow,o,O,%
+ oalign,obeylines,obeyspaces,odot,oe,OE,offinterlineskip,oint,%
+ ointop,omega,Omega,ominus,ooalign,openup,oplus,oslash,otimes,%
+ overbrace,overleftarrow,overrightarrow,owns,P,parallel,partial,%
+ perp,phantom,phi,Phi,pi,Pi,pm,pmatrix,pmod,Pr,prec,preceq,prime,%
+ prod,propto,psi,Psi,qquad,quad,raggedbottom,raggedright,rangle,%
+ rbrace,rbrack,rceil,Re,relbar,Relbar,removelastskip,repeat,%
+ rfloor,rgroup,rho,rhook,rightarrow,Rightarrow,rightarrowfill,%
+ rightharpoondown,rightharpoonup,rightleftharpoons,rightline,rlap,%
+ rmoustache,root,rq,S,sb,searrow,sec,setminus,sharp,showhyphens,%
+ sigma,Sigma,sim,simeq,sin,sinh,skew,slash,smallbreak,smallint,%
+ smallskip,smallskipamount,smash,smile,sp,space,spadesuit,sqcap,%
+ sqcup,sqrt,sqsubseteq,sqsupseteq,ss,star,strut,strutbox,subset,%
+ subseteq,succ,succeq,sum,sup,supset,supseteq,surd,swarrow,t,tan,%
+ tanh,tau,TeX,theta,Theta,thinspace,tilde,times,to,top,tracingall,%
+ triangle,triangleleft,triangleright,u,underbar,underbrace,%
+ uparrow,Uparrow,upbracefill,updownarrow,Updownarrow,uplus,%
+ upsilon,Upsilon,v,varepsilon,varphi,varpi,varrho,varsigma,%
+ vartheta,vdash,vdots,vec,vee,vert,Vert,vglue,vphantom,wedge,%
+ widehat,widetilde,wlog,wp,wr,xi,Xi,zeta}%
+ }%
+\lst@definelanguage[primitive]{TeX}%
+ {moretexcs={above,abovedisplayshortskip,abovedisplayskip,aftergroup,%
+ abovewithdelims,accent,adjdemerits,advance,afterassignment,atop,%
+ atopwithdelims,badness,baselineskip,batchmode,begingroup,%
+ belowdisplayshortskip,belowdisplayskip,binoppenalty,botmark,box,%
+ boxmaxdepth,brokenpenalty,catcode,char,chardef,cleaders,closein,%
+ closeout,clubpenalty,copy,count,countdef,cr,crcr,csname,day,%
+ deadcycles,def,defaulthyphenchar,defaultskewchar,delcode,%
+ delimiter,delimiterfactor,delimitershortfall,dimen,dimendef,%
+ discretionary,displayindent,displaylimits,displaystyle,%
+ displaywidowpenalty,displaywidth,divide,doublehyphendemerits,dp,%
+ edef,else,emergencystretch,end,endcsname,endgroup,endinput,%
+ endlinechar,eqno,errhelp,errmessage,errorcontextlines,%
+ errorstopmode,escapechar,everycr,everydisplay,everyhbox,everyjob,%
+ everymath,everypar,everyvbox,exhyphenpenalty,expandafter,fam,fi,%
+ finalhypendemerits,firstmark,floatingpenalty,font,fontdimen,%
+ fontname,futurelet,gdef,global,globaldefs,halign,hangafter,%
+ hangindent,hbadness,hbox,hfil,hfill,hfilneg,hfuzz,hoffset,%
+ holdinginserts,hrule,hsize,hskip,hss,ht,hyphenation,hyphenchar,%
+ hyphenpenalty,if,ifcase,ifcat,ifdim,ifeof,iffalse,ifhbox,ifhmode,%
+ ifinner,ifmmode,ifnum,ifodd,iftrue,ifvbox,ifvmode,ifvoid,ifx,%
+ ignorespaces,immediate,indent,input,insert,insertpenalties,%
+ interlinepenalty,jobname,kern,language,lastbox,lastkern,%
+ lastpenalty,lastskip,lccode,leaders,left,lefthyphenmin,leftskip,%
+ leqno,let,limits,linepenalty,lineskip,lineskiplimits,long,%
+ looseness,lower,lowercase,mag,mark,mathaccent,mathbin,mathchar,%
+ mathchardef,mathchoice,mathclose,mathcode,mathinner,mathop,%
+ mathopen,mathord,mathpunct,mathrel,mathsurround,maxdeadcycles,%
+ maxdepth,meaning,medmuskip,message,mkern,month,moveleft,%
+ moveright,mskip,multiply,muskip,muskipdef,newlinechar,noalign,%
+ noboundary,noexpand,noindent,nolimits,nonscript,nonstopmode,%
+ nulldelimiterspace,nullfont,number,omit,openin,openout,or,outer,%
+ output,outputpenalty,over,overfullrule,overline,overwithdelims,%
+ pagedepth,pagefilllstretch,pagefillstretch,pagefilstretch,%
+ pagegoal,pageshrink,pagestretch,pagetotal,par,parfillskip,%
+ parindent,parshape,parskip,patterns,pausing,penalty,%
+ postdisplaypenalty,predisplaypenalty,predisplaysize,pretolerance,%
+ prevdepth,prevgraf,radical,raise,read,relax,relpenalty,right,%
+ righthyphenmin,rightskip,romannumeral,scriptfont,%
+ scriptscriptfont,scriptscriptstyle,scriptspace,scriptstyle,%
+ scrollmode,setbox,setlanguage,sfcode,shipout,show,showbox,%
+ showboxbreadth,showboxdepth,showlists,showthe,skewchar,skip,%
+ skipdef,spacefactor,spaceskip,span,special,splitbotmark,%
+ splitfirstmark,splitmaxdepth,splittopskip,string,tabskip,%
+ textfont,textstyle,the,thickmuskip,thinmuskip,time,toks,toksdef,%
+ tolerance,topmark,topskip,tracingcommands,tracinglostchars,%
+ tracingmacros,tracingonline,tracingoutput,tracingpages,%
+ tracingparagraphs,tracingrestores,tracingstats,uccode,uchyph,%
+ underline,unhbox,unhcopy,unkern,unpenalty,unskip,unvbox,unvcopy,%
+ uppercase,vadjust,valign,vbadness,vbox,vcenter,vfil,vfill,%
+ vfilneg,vfuzz,voffset,vrule,vsize,vskip,vsplit,vss,vtop,wd,%
+ widowpenalty,write,xdef,xleaders,xspaceskip,year},%
+ sensitive,%
+ alsoother={0123456789$_},%
+ morecomment=[l]\%%
+ }[keywords,tex,comments]%
+%%
+%% Verilog definition (c) 2003 Cameron H. G. Wright <c.h.g.wright@ieee.org>
+%% Based on the IEEE 1364-2001 Verilog HDL standard
+%% Ref: S. Palnitkar, "Verilog HDL: A Guide to Digital Design and Synthesis,"
+%% Prentice Hall, 2003. ISBN: 0-13-044911-3
+%%
+\lst@definelanguage{Verilog}%
+ {morekeywords={% reserved keywords
+ always,and,assign,automatic,begin,buf,bufif0,bufif1,case,casex,%
+ casez,cell,cmos,config,deassign,default,defparam,design,disable,%
+ edge,else,end,endcase,endconfig,endfunction,endgenerate,%
+ endmodule,endprimitive,endspecify,endtable,endtask,event,for,%
+ force,forever,fork,function,generate,genvar,highz0,highz1,if,%
+ ifnone,incdir,include,initial,inout,input,instance,integer,join,%
+ large,liblist,library,localparam,macromodule,medium,module,nand,%
+ negedge,nmos,nor,noshowcancelled,not,notif0,notif1,or,output,%
+ parameter,pmos,posedge,primitive,pull0,pull1,pulldown,pullup,%
+ pulsestyle_onevent,pulsestyle_ondetect,rcmos,real,realtime,reg,%
+ release,repeat,rnmos,rpmos,rtran,rtranif0,rtranif1,scalared,%
+ showcancelled,signed,small,specify,specparam,strong0,strong1,%
+ supply0,supply1,table,task,time,tran,tranif0,tranif1,tri,tri0,%
+ tri1,triand,trior,trireg,unsigned,use,vectored,wait,wand,weak0,%
+ weak1,while,wire,wor,xnor,xor},%
+ morekeywords=[2]{% system tasks and functions
+ $bitstoreal,$countdrivers,$display,$fclose,$fdisplay,$fmonitor,%
+ $fopen,$fstrobe,$fwrite,$finish,$getpattern,$history,$incsave,%
+ $input,$itor,$key,$list,$log,$monitor,$monitoroff,$monitoron,%
+ $nokey},%
+ morekeywords=[3]{% compiler directives
+ `accelerate,`autoexpand_vectornets,`celldefine,`default_nettype,%
+ `define,`else,`elsif,`endcelldefine,`endif,`endprotect,%
+ `endprotected,`expand_vectornets,`ifdef,`ifndef,`include,%
+ `no_accelerate,`noexpand_vectornets,`noremove_gatenames,%
+ `nounconnected_drive,`protect,`protected,`remove_gatenames,%
+ `remove_netnames,`resetall,`timescale,`unconnected_drive},%
+ alsoletter=\`,%
+ sensitive,%
+ morecomment=[s]{/*}{*/},%
+ morecomment=[l]//,% nonstandard
+ morestring=[b]"%
+ }[keywords,comments,strings]%
+\endinput
+%%
+%% End of file `lstlang3.sty'.
diff --git a/Master/texmf-dist/tex/latex/listings/lstpatch.sty b/Master/texmf-dist/tex/latex/listings/lstpatch.sty
new file mode 100644
index 00000000000..b07de3ef2e7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/listings/lstpatch.sty
@@ -0,0 +1,393 @@
+%%
+%% This is file `lstpatch.sty', generated manually.
+%%
+%% (w)(c) 2004 Carsten Heinz
+%%
+%% 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.
+%%
+%% Send comments and ideas on the package, error reports and additional
+%% programming languages to <cheinz@gmx.de>.
+%%
+%% 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)
+%%
+%%
+\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
+%%
+\endinput
+%%
+%% End of file `lstpatch.sty'.