diff options
author | Karl Berry <karl@freefriends.org> | 2022-05-24 20:23:29 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-05-24 20:23:29 +0000 |
commit | d1a45dc92e84130c08386511a72d4ba1bc95b1b9 (patch) | |
tree | 0b41d5e406b7fb349d9c8a6fe3e05e255e2b92a9 /Master/texmf-dist/doc/latex/stex/stex-docheader.tex | |
parent | 36e380761892b6ddfed9ad4e5cd585a8b3ae17cc (diff) |
stex (24may22)
git-svn-id: svn://tug.org/texlive/trunk@63390 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/stex/stex-docheader.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/stex/stex-docheader.tex | 520 |
1 files changed, 307 insertions, 213 deletions
diff --git a/Master/texmf-dist/doc/latex/stex/stex-docheader.tex b/Master/texmf-dist/doc/latex/stex/stex-docheader.tex index d0f13e90b33..d16b19703bd 100644 --- a/Master/texmf-dist/doc/latex/stex/stex-docheader.tex +++ b/Master/texmf-dist/doc/latex/stex/stex-docheader.tex @@ -7,14 +7,15 @@ \RequirePackage{tikzinput} \usetikzlibrary{fit} -\usepackage[debug=all,lang=en, mathhub=./tests]{stex} +% \usepackage[debug=all,lang=en, mathhub=./tests]{stex} +\usepackage[lang=en, mathhub=./tests]{stex} \usepackage{url,array,float,textcomp} \usepackage[show]{ed} \usepackage[hyperref=auto,style=alphabetic]{biblatex} -\addbibresource{\bibfolder/kwarcpubs.bib} -\addbibresource{\bibfolder/extpubs.bib} -\addbibresource{\bibfolder/kwarccrossrefs.bib} -\addbibresource{\bibfolder/extcrossrefs.bib} +\addbibresource{\bibfolder{kwarcpubs.bib}} +\addbibresource{\bibfolder{extpubs.bib}} +\addbibresource{\bibfolder{kwarccrossrefs.bib}} +\addbibresource{\bibfolder{extcrossrefs.bib}} \usepackage{amssymb} \usepackage{amsfonts} \usepackage{xspace} @@ -26,73 +27,121 @@ \floatname{exfig}{Example} \usepackage{listings} - -\ExplSyntaxOn - -\keys_define:nn { stex-tests } { - do .bool_set:N = \stex_dtx_tests_bool -} - -\ProcessKeysOptions { stex-tests } - -\prg_new_conditional:Nnn \stex_indtx: { T } { - \bool_if:NTF \stex_dtx_tests_bool - \prg_return_true: \prg_return_false: +\usepackage{lststex} + +\lstdefinelanguage{sTeX}{ + sensitive=true, + numbers=left, + numbersep=3pt, + xleftmargin=3pt, + alsodigit={\$}, + %gobble=4, + alsoletter={\\}, + %moredelim = [s][\itshape]{$}{$}, + %moredelim = [s][\itshape\bfseries]{\\[}{\\]}, + classoffset=0,keywordstyle=\bfseries,morekeywords={ + \\begin,\\end,\\ExplSyntaxOn,\\ExplSyntaxOff,\\documentclass, + \\usepackage,\\def,\\[,\\],\\else,\\fi,$\iffalse$\fi, + \\newcommand, \\renewcommand, \\let + }, + classoffset=1,keywordstyle=\itshape\color{OliveGreen},morekeywords={ + \\defeq,\\geometricSeries,\\infinitesum,\\realdivide, + \\realpower, + \\symbolname,\\binarysymbol,\\newbinarysymbol,\\addition, + \\summation,\\ascendingchain,\\quantforall,\\set,\\funtype, + \\Nat,\\successor,\\multiplication,\\Int,\\zero,\\uminus, + \\intmonoid + }, + classoffset=2,keywordstyle=\color{blue},morekeywords={ + \\symdecl,\\symdef,\\notation,\\vardef,\\varseq,\\instantiate, + \\varinstantiate, \\renamedecl, \\assign, \\setnotation, + \\STEXexport + }, + classoffset=3,keywordstyle=\color{BurntOrange},morekeywords={ + \\importmodule,\\usemodule,\\libinput,\\inputref,\\mhinput, + \\libusepackage,\\addmhbibresource,\\ifinputref + }, + classoffset=4,keywordstyle=\color{Purple},morekeywords={ + \\definiendum,\\definame,\\symref,\\symname,\\comp, + \\compemph,\\definiens,\\svar,\\infprec,\\neginfprec,\\ellipses, + \\Symname,\\arg + }, + classoffset=5,keywordstyle=\color{magenta},morekeywords={ + smodule,sdefinition,sassertion,sparagraph,sexample, + sproof,subproof,spfcases,spfcase,spfstep,spfcomment, + \\spfidea,\\spfsketch,\\spfcasesketch,\\sproofend, + \\spfjust,\\premise,\\justarg, + copymodule,interpretmodule,mathstructure,sexample + }, + classoffset=6,keywordstyle=\color{cyan},morekeywords={ + sfragment,blindfragment,\\skipfragment, + \\currentsectionlevel,\\Currentsectionlevel + \\prematurestop,\\afterprematurestop, + \\setSGvar,\\useSGvar,\\ifSGvar + }, + classoffset=7,keywordstyle=\color{brown},morekeywords={ + frame,note,\\ifnotes,\\setslidelogo,\\setsource,\\setlicensing + slides,notes,sectocframes,frameimages,fiboxed, + nparagraph, nparagraph, ndefinition, nexample, nsproof, nassertion, + \\frameimage,\\mhframeimage,\\textwarning, + \\activateexcursion,\\printexcursion,\\excursionref,\\excursiongroup + }, + classoffset=8,keywordstyle=\color{red},morekeywords={ + frame,note + } } -\ExplSyntaxOff - -\lstdefinestyle{mylatex}{ - keywordstyle=\color{BurntOrange} -} -\lstdefinelanguage{mylatex}{ - emphstyle=\underbar, - alsodigit={:}, - %alsoletter={_}, - alsoletter={\\} - sensitive=true, - classoffset=0,keywordstyle=\bfseries, - morekeywords={\\begin,\\end,\\ExplSyntaxOn,\\ExplSyntaxOff}, - classoffset=1,keywordstyle=\color{blue}, - morekeywords={ - \\symdecl, - \\symdef, - \\notation, - \\abbrdef, - \\importmodule, - \\usemodule, - \\STEXwithbrackets, - \\symref - }, - classoffset=2,keywordstyle=\color{Purple}, - morekeywords={ - \\stex_path_from_string:Nn, - \\stex_path_to_string:NN, - \\stex_path_to_string:N, - \\stex_require_repository:n, - \\stex_modules_current_namespace:, - \\stex_debug:n, - \\stex_set_current_repository:n, - \\stex_file_in_smsmode:nn, - \\stex_get_symbol:n, - }, - classoffset=3,keywordstyle=\color{SkyBlue}, - morekeywords={ - \\l_stex_modules_ns_str, - \\g_stex_currentfile_seq, - \\l_stex_current_module_prop, - \\l_stex_get_symbol_uri_str, - } - classoffset=0, -%^^A morecomment=[l][\color{Gray}]{//}, -%^^A morecomment=[s][\color{Gray}]{/*}{*/}, - morecomment=[s][\color{Green}]{$}{$},, - morecomment=[s][\color{OliveGreen}]{\\[}{\\]}, +%\lstdefinestyle{mylatex}{ +% keywordstyle=\color{BurntOrange} +%} +%\lstdefinelanguage{mylatex}{ +% emphstyle=\underbar, +% alsodigit={:}, +% %alsoletter={_}, +% alsoletter={\\} +% sensitive=true, +% classoffset=0,keywordstyle=\bfseries, +% morekeywords={\\begin,\\end,\\ExplSyntaxOn,\\ExplSyntaxOff}, +% classoffset=1,keywordstyle=\color{blue}, +% morekeywords={ +% \\symdecl, +% \\symdef, +% \\notation, +% \\abbrdef, +% \\importmodule, +% \\usemodule, +% \\STEXwithbrackets, +% \\symref +% }, +% classoffset=2,keywordstyle=\color{Purple}, +% morekeywords={ +% \\stex_path_from_string:Nn, +% \\stex_path_to_string:NN, +% \\stex_path_to_string:N, +% \\stex_require_repository:n, +% \\stex_modules_current_namespace:, +% \\stex_debug:n, +% \\stex_set_current_repository:n, +% \\stex_file_in_smsmode:nn, +% \\stex_get_symbol:n, +% }, +% classoffset=3,keywordstyle=\color{SkyBlue}, +% morekeywords={ +% \\l_stex_module_ns_str, +% \\g_stex_currentfile_seq, +% \\l_stex_current_module_prop, +% \\l_stex_get_symbol_uri_str, +% } +% classoffset=0, +%%^^A morecomment=[l][\color{Gray}]{//}, +%%^^A morecomment=[s][\color{Gray}]{/*}{*/}, +% morecomment=[s][\color{Green}]{$}{$},, +% morecomment=[s][\color{OliveGreen}]{\\[}{\\]}, %^^A morestring=[b][\color{Purple}]\$, -} -\lstnewenvironment{latexcode}[1][language=mylatex]{\lstset{language=mylatex,basicstyle=\tiny,inputencoding=utf8,#1,alsoletter={\\,*},alsoother={\$}}}{} - +%} +\lstnewenvironment{latexcode}[1][]{\lstset{language=sTeX,#1}}{} +\def\stexcode{\lstinline[language=sTeX]} \usepackage{mdframed,realboxes} \usepackage[most]{tcolorbox} @@ -103,13 +152,13 @@ \newenvironment{stextest@output} { - \begin{mdframed}[linewidth=1pt,backgroundcolor=white]\tiny + \begin{mdframed}[linewidth=1pt,backgroundcolor=white]\small } {\end{mdframed}} \newenvironment{stextest@input} { - \begin{mdframed}[linewidth=1pt,backgroundcolor=lightgray]\tiny + \begin{mdframed}[linewidth=1pt,backgroundcolor=white]\small } {\end{mdframed}} @@ -118,47 +167,49 @@ \newcount\test@counter\test@counter=0 \newcount\example@counter\example@counter=0 -\newenvironment{stextest@border} -{ - \global\advance\test@counter by 1 - \newtcolorbox{stextestborderbox}{ - empty, - title={Test \the\test@counter}, - attach boxed title to top left, - minipage boxed title, - boxed title style={empty,size=minimal,toprule=0pt,top=4pt,left=3mm,overlay={}}, - coltitle=red,fonttitle=\bfseries, - before=\par\medskip\noindent,parbox=false,boxsep=0pt,left=3mm,right=0mm,top=2pt,breakable,pad at break=0mm, - before upper=\csname @totalleftmargin\endcsname0pt, - overlay unbroken={\draw[red,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, - overlay first={\draw[red,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, - overlay middle={\draw[red,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, - overlay last={\draw[red,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, - } -%^^A\refstepcounter{remark} -\begin{stextestborderbox}\small +\newtcolorbox{exampleborderbox}{ + empty, + title={Example \the\example@counter}, + attach boxed title to top left, + minipage boxed title, + boxed title style={empty,size=minimal,toprule=0pt,top=1pt,left=3mm,overlay={}}, + coltitle=blue,fonttitle=\bfseries, + parbox=false,boxsep=0pt,left=3mm,right=0mm,top=2pt,breakable,pad at break=0mm, + before upper=\csname @totalleftmargin\endcsname0pt, + overlay unbroken={\draw[blue,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, + overlay first={\draw[blue,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, + overlay middle={\draw[blue,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, + overlay last={\draw[blue,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, + outer arc=4pt } -{\end{stextestborderbox}} + + +%\newtcolorbox{exampleborderbox}{ +% enhanced, +% left=0pt, +% title={Example \the\example@counter}, +% right=0pt, +% top=8pt, +% bottom=8pt, +% colback=white, +% colframe=blue, +% width=\textwidth, +% enlarge left by=0mm, +% boxsep=5pt, +% fontupper=\small, +% arc=4pt, +% outer arc=4pt, +% leftupper=1.5cm, +% fonttitle=\bfseries, +% coltitle=blue, +% boxed title style={empty,size=minimal,toprule=0pt,top=1pt,left=3mm,overlay={}}, +%} \newenvironment{example@border} { \global\advance\example@counter by 1 - \newtcolorbox{exampleborderbox}{ - empty, - title={Example \the\example@counter}, - attach boxed title to top left, - minipage boxed title, - boxed title style={empty,size=minimal,toprule=0pt,top=1pt,left=3mm,overlay={}}, - coltitle=blue,fonttitle=\bfseries, - parbox=false,boxsep=0pt,left=3mm,right=0mm,top=2pt,breakable,pad at break=0mm, - before upper=\csname @totalleftmargin\endcsname0pt, - overlay unbroken={\draw[blue,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, - overlay first={\draw[blue,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, - overlay middle={\draw[blue,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, - overlay last={\draw[blue,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, - } %^^A\refstepcounter{remark} -\begin{exampleborderbox}\small +\begin{exampleborderbox} } {\end{exampleborderbox}} @@ -172,97 +223,134 @@ \ExplSyntaxOn -\AddToHook{begindocument}{ - \stex_indtx:T { - \newwrite\alltestsoutfile - \immediate\openout\alltestsoutfile=alltests.tst - } -} - - \def\stextest{ - \begingroup - \catcode`\\=12\relax - \catcode`\#=12\relax - \catcode`\&=12\relax - \catcode`\$=12\relax - \catcode`\^=12\relax - \catcode`\_=12\relax - \catcode`^^J=12\relax - \endlinechar=`^^J - \newlinechar=-1 +\def\stexexample{ + \begingroup + \catcode`\\=12\relax + \catcode`\#=12\relax + \catcode`\&=12\relax + \catcode`\$=12\relax + \catcode`\^=12\relax + \catcode`\_=12\relax + \catcode`\ =12\relax + \catcode`^^J=12\relax + \endlinechar=`^^J + \newlinechar=-1 %^^A \everyeof{\noexpand} - \test_a:n - } - \long\def \test_a:n #1 { - \endgroup - \stex_indtx:T { - \immediate\write\alltestsoutfile{% - ^^J\c_backslash_str stextest{\detokenize{^^J^^J#1^^J}}^^J - } + \example_a:n +} +\long\def\example_a:n #1 { + \endgroup + \begin{example@border} + \immediate\openout\testoutfile=stextest.tex + \immediate\write\testoutfile{ + \c_backslash_str begin{latexcode} + \detokenize{^^J}#1 + \c_backslash_str end{latexcode} } - \begin{stextest@border} - \immediate\openout\testoutfile=stextest.tst - \immediate\write\testoutfile{ - \c_backslash_str begin{latexcode} - \detokenize{^^J^^J#1^^J} - \c_backslash_str end{latexcode} - } - \immediate\closeout\testoutfile - \begin{stextest@input} - \catcode`\#=12\relax - \input{stextest.tst} - \end{stextest@input} - \immediate\openout\testoutfile=stextest.tst - \immediate\write\testoutfile{\detokenize{#1}} - \immediate\closeout\testoutfile - \stex_indtx:T { - \begin{stextest@output} - \input{stextest.tst} - \end{stextest@output} - } - \end{stextest@border} - } + \immediate\closeout\testoutfile + + Input: + + \begin{stextest@input} + \catcode`\#=12\relax + \input{stextest.tex} + \end{stextest@input} + \immediate\openout\testoutfile=stextest.tex + \immediate\write\testoutfile{#1} + \immediate\closeout\testoutfile + + Output: + + \begin{stextest@output} + \input{stextest.tex} + \end{stextest@output} + \end{example@border} +} - \def\stexexample{ - \begingroup - \catcode`\\=12\relax - \catcode`\#=12\relax - \catcode`\&=12\relax - \catcode`\$=12\relax - \catcode`\^=12\relax - \catcode`\_=12\relax - \catcode`^^J=12\relax - \endlinechar=`^^J - \newlinechar=-1 -%^^A \everyeof{\noexpand} - \example_a:n - } - \long\def \example_a:n #1 { - \endgroup - \begin{example@border} - \immediate\openout\testoutfile=stextest.tst - \immediate\write\testoutfile{ - \c_backslash_str begin{latexcode} - \detokenize{^^J}#1 - \c_backslash_str end{latexcode} - } - \immediate\closeout\testoutfile - \begin{stextest@input} - \catcode`\#=12\relax - \input{stextest.tst} - \end{stextest@input} - \immediate\openout\testoutfile=stextest.tst - \immediate\write\testoutfile{#1} - \immediate\closeout\testoutfile - \begin{stextest@output} - \input{stextest.tst} - \end{stextest@output} - \end{example@border} - } +\ExplSyntaxOff - \long\def\test#1{} +\def\textwarning{\includegraphics[width=1.2em]{stex-dangerous-bend}\xspace} +\newtcolorbox{dangerbox}{ + breakable, + enhanced, + left=0pt, + right=0pt, + top=8pt, + bottom=8pt, + colback=white, + colframe=red, + width=\textwidth, + enlarge left by=0mm, + boxsep=5pt, + fontupper=\small, + arc=4pt, + outer arc=4pt, + leftupper=1.5cm, + overlay={ + \node[anchor=west] at ([xshift=10pt]$(frame.north west)!0.5!(frame.south west)$) + {\includegraphics[width=1cm,height=1cm]{stex-dangerous-bend}};} +} -\ExplSyntaxOff +\usetikzlibrary{decorations.pathmorphing,shapes,arrows,calc} +% Taken from pgflibrarytikzmmt.code.tex +\newcommand{\mmtarrowtip}{angle 45} +\newcommand{\mmtarrowtipmonoright}{right hook} + +\tikzstyle{include}=[\mmtarrowtipmonoright-\mmtarrowtip,thick] +\tikzstyle{morph}=[-\mmtarrowtip,thick] +\tikzstyle{preview}=[decorate, decoration={coil,aspect=0,amplitude=1pt, + segment length=6pt, + pre=lineto,pre length=3pt, + post=lineto,post length=5pt}, thick] +\tikzstyle{view}=[preview,-\mmtarrowtip] + +% TIKZ RULES +\def\mmtlogo{ +\begin{tikzpicture} + + % White Background (Margins are eyeballed) + % This is necessary because we paste white over arrows later. + % If somebody want's to do the full song and dance with + % interrupted arrows to get transparent background, be my guest. + + \fill[white!] (-0.01,0.15) rectangle (1.11,-0.95); + + % Arrows + \draw [blue, include] (0,0) -- (1.1,0); + \draw [green, morph] (0,-0.4) -- (1.1,-0.4); + \draw [red, view] (-0,-0.8) -- (1.1,-0.8); + + % Cutout for letters + \fill[white] (0.33,0.1) rectangle (0.66,-0.9); + + % Letters + \node at (0.18,0) (nodeM1) {\large M}; + \node at (0.18,-0.4) (nodeM2) {\large M}; + \node at (0.21,-0.8) (nodeT) {\large T}; + +\end{tikzpicture} +} + +\newtcolorbox{mmtbox}{ + breakable, + enhanced, + left=0pt, + right=0pt, + top=8pt, + bottom=8pt, + colback=white, + colframe=green, + width=\textwidth, + enlarge left by=0mm, + boxsep=5pt, + fontupper=\small, + arc=4pt, + outer arc=4pt, + leftupper=1.5cm, + overlay={ + \node[anchor=west] at ([xshift=10pt]$(frame.north west)!0.5!(frame.south west)$) + {\mmtlogo};} +} \MakeShortVerb{\|} @@ -283,7 +371,7 @@ \def\atwintoo#1#2#3{{#1 #2 #3}\atwin{#1}{#2}{#3}} \def\cT{\mathcal{T}}\def\cD{\mathcal{D}} -\def\fileversion{3.0} +\def\fileversion{3.1} \def\filedate{\today} \RequirePackage{pdfcomment} @@ -322,7 +410,7 @@ \newif\ifinfulldoc\infulldocfalse \makeatother -\def\basedocurl{https://github.com/slatex/sTeX/blob/latex3/doc} +\def\basedocurl{https://github.com/slatex/sTeX/blob/main/doc} \newcounter{module} \NewDocumentEnvironment {module}{}{ @@ -331,25 +419,31 @@ }{ } -\stexpatchmodule{\begin{module}}{\end{module}} - -\def\compemph#1{\textcolor{blue}{#1}} -\def\symrefemph#1{\textcolor{green}{#1}} - -\RequirePackage{pdfcomment} -\makeatletter -\protected\def\compemph@uri#1#2{% - \pdftooltip{% - \srefsymuri{#2}{\compemph{#1}}% - }{% - URI: \detokenize{#2}% - }% +\stexpatchmodule[visible]{\begin{module}}{\end{module}} + +\usepackage{stexthm} + + +\newtcolorbox{remarkbox}[1][]{ + empty, + title={Remark \theremark: #1}, + attach boxed title to top left, + minipage boxed title, + boxed title style={empty,size=minimal,toprule=0pt,top=4pt,left=3mm,overlay={}}, + fonttitle=\bfseries,coltitle=black, + before=\par\medskip\noindent,parbox=false,boxsep=0pt,left=3mm,right=0mm,top=2pt,breakable,pad at break=0mm, + before upper=\csname @totalleftmargin\endcsname0pt, + overlay unbroken={\draw[black,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, + overlay first={\draw[black,line width=2pt] ([xshift=-0pt]title.north west) -- ([xshift=-0pt]frame.south west); }, + overlay middle={\draw[black,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, + overlay last={\draw[black,line width=2pt] ([xshift=-0pt]frame.north west) -- ([xshift=-0pt]frame.south west); }, } -\protected\def\symrefemph@uri#1#2{% - \pdftooltip{% - \srefsymuri{#2}{\symrefemph{#1}}% - }{% - URI: \detokenize{#2}% - }% + +\renewenvironment{remark}[1][]{ + \refstepcounter{remark}\begin{remarkbox}[#1] + \begin{mdframed}[linewidth=1pt,backgroundcolor=lightgray!33!white] +}{ +\end{mdframed}\end{remarkbox}\endlist } -\makeatother
\ No newline at end of file + +\usepackage{rustex} |