diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/listings/lstdrvrs.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/listings/lstdrvrs.dtx | 48 |
1 files changed, 38 insertions, 10 deletions
diff --git a/Master/texmf-dist/source/latex/listings/lstdrvrs.dtx b/Master/texmf-dist/source/latex/listings/lstdrvrs.dtx index f710ef02aeb..1d2f4cc5a2b 100644 --- a/Master/texmf-dist/source/latex/listings/lstdrvrs.dtx +++ b/Master/texmf-dist/source/latex/listings/lstdrvrs.dtx @@ -33,7 +33,7 @@ % \title{Language, Style and Format drivers\\ for \textsf{Listings}\\ % {\large by Carsten Heinz and individual authors:}} % \author{\InputIfFileExists{lstdrvrs.tmp}{}{}} -% \date{2020/03/24\enspace\enspace Version 1.8d\ \box\abstractbox} +% \date{2023/02/27\enspace\enspace Version 1.9\ \box\abstractbox} % % \ifhyper % \hypersetup{pdftitle={Language, Style and Format drivers for the @@ -137,7 +137,7 @@ % \endgroup % We mainly define default dialects. % \begin{macrocode} -\ProvidesFile{listings.cfg}[2020/03/24 1.8d listings configuration] +\ProvidesFile{listings.cfg}[2023/02/27 1.9 listings configuration] \def\lstlanguagefiles {lstlang0.sty,lstlang1.sty,lstlang2.sty,lstlang3.sty} \lstset{defaultdialect=[R/3 6.10]ABAP, @@ -184,7 +184,7 @@ %<+hansl-prf>\ProvidesFile{listings-hansl.prf} %<+lua-prf>\ProvidesFile{listings-lua.prf} %<+python-prf>\ProvidesFile{listings-python.prf} -%<-config> [2020/03/24 1.8d listings language file] +%<-config> [2023/02/27 1.9 listings language file] % \end{macrocode} % % @@ -1724,7 +1724,30 @@ % \begin{macrocode} %<*lang1> % \end{macrocode} -% The current version of Fortran (Fortran 2008) is defined by ISO/IEC +% The current version of Fortran (Fortran 2018) is defined by ISO/IEC +% 1539-1:2018, for a deeper insight have a look at +% \url{https://wg5-fortran.org/f2018.html}. It contains ? new keywords, ? +% of them consisting of +% two words: ^^A +% |FAIL IMAGE|, so +% the list of keywords contains the single parts |FAIL| and |IMAGE|. +% So there is the following definition of Fortran 2018 keywords +% \begin{macrocode} +\lst@definelanguage[18]{Fortran}[08]{Fortran}{% + morekeywords={FAIL, IMAGE, NON_RECURSIVE},% +% \end{macrocode} +% and procedures: +% \begin{macrocode} + morekeywords=[3]{GET_TEAM, TEAM_NUMBER, IMAGE_TEAMS, NUM_IMAGES, + THIS_IMAGE, FAILED_IMAGES, STOPPED_IMAGES, IMAGES_STATUS, CO_BROADCAST, + CO_MAX, CO_MIN, CO_SUM, CO_REDUCE, ATOMIC_ADD, ATOMIC_AND, ATOMIC_OR, + ATOMIC_XOR, ATOMIC_FETCH_ADD, ATOMIC_FETCH_AND, ATOMIC_FETCH_OR, + ATOMIC_FETCH_XOR, ATOMIC_FETCH_CAS, IEEE_GET_MODES, IEEE_SET_MODES, + IEEE_FMA, IEEE_SIGNBIT, IEEE_INT, IEEE_REM, IEEE_MAX_NUM, IEEE_MAX_NUM_MAG, IEEE_MIN_NUM, IEEE_MAX_NUM_MAG, IEEE_NEXT_DOWN, IEEE_NEXT_UP, IEEE_SUPPORT_DATATYPE, IEEE_QUIET_EQ, IEEE_QUIET_GE, IEEE_QUIET_GT, IEEE_QUIET_LE, IEEE_QUIET_LT, IEEE_QUIET_NE, IEEE_SIGNALING_EQ, IEEE_SIGNALING_GE, IEEE_SIGNALING_GT, IEEE_SIGNALING_LE, IEEE_SIGNALING_LT, IEEE_SIGNALING_NE}% +}% +% \end{macrocode} +% +% The Fortran 2008 version is defined by ISO/IEC % 1539-1:2010. It contains nine new keywords, four of them consisting of % two words: ^^A % |ERROR STOP|, |SYNC ALL|, |SYNC IMAGES|, |SYNC MEMORY|, so @@ -1733,7 +1756,7 @@ % \begin{macrocode} \lst@definelanguage[08]{Fortran}[03]{Fortran}{% morekeywords={ALL, BLOCK, CODIMENSION, CONCURRENT, CONTIGUOUS, CRITICAL,% - ERROR, LOCK, SUBMODULE, SYNC, UNLOCK},% + ERROR, IMAGES, LOCK, MEMORY, SUBMODULE, SYNC, UNLOCK},% % \end{macrocode} % New procedures in Fortran 2008: % \begin{macrocode} @@ -1781,8 +1804,8 @@ morekeywords={ALLOCATABLE, ALLOCATE, ASSIGNMENT, CASE, CONTAINS, CYCLE,% DEALLOCATE, DEFAULT, EXIT, INCLUDE, IN, NONE, OUT, INTENT, INTERFACE,% MODULE, NAMELIST, NULLIFY, ONLY, OPERATOR, OPTIONAL, OUT, POINTER,% - PRIVATE, PUBLIC, RECURSIVE, RESULT, SELECT, SEQUENCE, TARGET, USE,% - WHERE, WHILE, BLOCKDATA, DOUBLEPRECISION, ENDBLOCKDATA, ENDFILE,% + PRIVATE, PUBLIC, RECURSIVE, RESULT, SELECT, SEQUENCE, TARGET, TYPE,% + USE, WHERE, WHILE, BLOCKDATA, DOUBLEPRECISION, ENDBLOCKDATA, ENDFILE,% ENDFUNCTION, ENDINTERFACE, ENDMODULE, ENDPROGRAM, ENDSELECT,% ENDSUBROUTINE, ENDTYPE, ENDWHERE, INOUT, SELECTCASE,% % \end{macrocode} @@ -1835,8 +1858,8 @@ morecomment=[l]!% FILE, FORMAT, FUNCTION, GO, TO, GOTO, IF, IMPLICIT, % INQUIRE, INTEGER, INTRINSIC, LOGICAL, % OPEN, PARAMETER, PAUSE, PRECISION, PRINT, PROGRAM, READ, REAL, % - RETURN, REWIND, STOP, SUBROUTINE, THEN, % - WRITE, SAVE},% + RETURN, REWIND, SAVE, STOP, SUBROUTINE, THEN, % + WRITE},% morekeywords=[2]{ACCESS, BLANK, BLOCK, DIRECT, EOF, ERR, EXIST,% FMT, FORM, FORMATTED, IOSTAT, NAMED, NEXTREC, NUMBER, OPENED,% REC, RECL, SEQUENTIAL, STATUS, TYPE, UNFORMATTED, UNIT},% @@ -3703,7 +3726,7 @@ morecomment=[l]!% % % \subsection{Matlab} % -% I took the keywords from \texttt{http://www.utexas.edu/math/Matlab/Manual}, +% I (C.\,H.?) took the keywords from \texttt{http://www.utexas.edu/math/Matlab/Manual}, % but I removed the keywords |i|, |j| and |tmp|---the change was proposed by % \lsthelper{Kai Below}{below@tu-harburg.de}{1998/09/21}{Matlab: keywords % i,j,tmp removed}. @@ -3711,6 +3734,11 @@ morecomment=[l]!% % \begin{macrocode} %<*lang1> % \end{macrocode} +% From the revision history one can conclude that ``Matlab´´ means ``Matlab +% 5.1´´ which was released in 1997 +% \begin{macrocode} +\lst@definelanguage[5.1]{Matlab}[]{Matlab}{} +% \end{macrocode} % \begin{macrocode} \lst@definelanguage{Matlab}% {morekeywords={gt,lt,gt,lt,amp,abs,acos,acosh,acot,acoth,acsc,acsch,% |