summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/mdframed/ltxmdf.cls
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/mdframed/ltxmdf.cls
Initial commit
Diffstat (limited to 'macros/latex/contrib/mdframed/ltxmdf.cls')
-rw-r--r--macros/latex/contrib/mdframed/ltxmdf.cls538
1 files changed, 538 insertions, 0 deletions
diff --git a/macros/latex/contrib/mdframed/ltxmdf.cls b/macros/latex/contrib/mdframed/ltxmdf.cls
new file mode 100644
index 0000000000..cad31bf5c8
--- /dev/null
+++ b/macros/latex/contrib/mdframed/ltxmdf.cls
@@ -0,0 +1,538 @@
+%% documentclass only for the documentation of mdframed
+%% This documentclass isn't maintanened or efficient for writing
+%%
+%%
+%% Copyright (c) 2012 Marco Daniel
+%%
+%% This package may be distributed under the terms of the LaTeX Project
+%% Public License, as described in lppl.txt in the base LaTeX distribution.
+%% Either version 1.0 or, at your option, any later version.
+
+
+%%$Id: ltxmdf.cls 431 2012-06-20 16:40:42Z marco $
+%%$Rev: 431 $
+%%$Author: marco $
+%%$Date: 2012-06-20 18:40:42 +0200 (Mi, 20 Jun 2012) $
+
+\RequirePackage{expl3}
+\GetIdInfo$Id: ltxmdf.cls 431 2012-06-20 16:40:42Z marco $
+ {documentation class for Marco Daniel}
+
+\ProvidesExplClass{\ExplFileName}
+ {\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
+
+\RequirePackage{l3keys2e,xparse}
+\keys_define:nn { ltxmdf }
+ {
+ tocdepth .int_set:N = \l_ltxmdf_tocdepth_int ,
+ lipsum .bool_set:N = \l_ltxmdf_lipsum_bool ,
+ showframe .bool_set:N = \l_ltxmdf_showframe_bool ,
+ }
+\keys_set:nn { ltxmdf }
+ {
+ tocdepth = 2
+ }
+
+\ProcessKeysOptions { ltxmdf }
+
+\LoadClassWithOptions { scrartcl }
+\cs_set_eq:NN \c_keys_code_root_tl \c__keys_code_root_tl
+
+\RequirePackage{ifxetex,ifluatex}
+
+\RequirePackage{etoolbox}
+\RequirePackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm]{geometry}
+
+\pdftex_if_engine:TF
+ {
+ \RequirePackage{selinput}
+ \SelectInputMappings{
+ adieresis = {ä} ,
+ germandbls = {ß} ,
+ Euro = {€} ,
+ }
+ \RequirePackage[T1]{fontenc}
+ \RequirePackage[scaled=0.82]{beramono}
+ \RequirePackage{microtype}
+ }
+ {
+ \RequirePackage{fontspec}
+ \setmonofont[Mapping=tex-text]{DejaVu Sans}
+ }
+\ExplSyntaxOff
+\RequirePackage[french=quotes]{csquotes}
+\RequirePackage{xspace}
+\begingroup
+ \text@command\relax
+ \global\let\xspace@check@icr\check@icr
+\endgroup
+\xspaceaddexceptions{\xspace@check@icr}
+\RequirePackage{multicol}\columnseprule0.4pt
+\RequirePackage{scrpage2}
+\RequirePackage[inline]{enumitem}
+\RequirePackage{amsmath}
+\RequirePackage{listings}
+\RequirePackage[amsmath]{ntheorem}
+\RequirePackage{array,booktabs}
+\RequirePackage{xcolor,tikz}
+\RequirePackage{graphicx}
+\RequirePackage[numbered]{hypdoc}
+\ExplSyntaxOn
+%set columns of index
+\c@IndexColumns = 2
+
+\hypersetup{%
+ breaklinks=true,
+ pdftitle={Documenation of mdframed},%
+ pdfauthor={Marco Daniel},%
+ colorlinks=true,%
+ linkcolor=ltxmdfblue,
+ urlcolor=cyan,
+ bookmarksdepth= \int_use:N \l_ltxmdf_tocdepth_int,
+}
+\bool_if:NT \l_ltxmdf_showframe_bool
+ {
+ \RequirePackage{showframe}
+ }
+\bool_if:NT \l_ltxmdf_lipsum_bool
+ {
+ \RequirePackage{lipsum}
+ \RequirePackage{kantlipsum}
+ }
+
+%Kopf- und Fusszeilen
+\clearscrheadfoot
+\pagestyle{scrheadings}
+\automark[subsection]{section}
+\renewcommand{\sectionmark}[1]{\markboth{\sectionmarkformat #1}{}}%
+\renewcommand{\subsectionmark}[1]{\markright{\subsectionmarkformat #1}}
+\ihead{\rightmark}
+\ohead{\leftmark}
+\ofoot{\pagemark}
+\providecommand\mdfmaindate{2012/09/20}
+\providecommand\mdfrevision{1}
+\ifoot{{\mdfmaindate}\qquad revision:~{\mdfrevision}\qquad{\jobname}}
+
+%%Maketitle angepasst:
+\prop_new:N \l_ltxmdf_maketitleinformation_prop
+\cs_set:Npn \title #1
+ {
+ \prop_put:Nnn \l_ltxmdf_maketitleinformation_prop { title } { #1 }
+ }
+\cs_set:Npn \subtitle #1
+ {
+ \prop_put:Nnn \l_ltxmdf_maketitleinformation_prop { subtitle } { #1 }
+ }
+\cs_set:Npn \author #1
+ {
+ \prop_put:Nnn \l_ltxmdf_maketitleinformation_prop { author } { #1 }
+ }
+\cs_set:Npn \version #1
+ {
+ \prop_put:Nnn \l_ltxmdf_maketitleinformation_prop { version } { #1 }
+ }
+\cs_set:Npn \date #1
+ {
+ \prop_put:Nnn \l_ltxmdf_maketitleinformation_prop { date } { #1 }
+ }
+\cs_set:Npn \introduction #1
+ {
+ \prop_put:Nnn \l_ltxmdf_maketitleinformation_prop { introduction } { #1 }
+ }
+
+\def\maketitle{%
+ \clearpage
+ \thispagestyle{empty}
+ \group_begin:
+ \group_begin:
+ \pdfbookmark[1]{Title}{titlebook}
+ \parindent\c_zero_dim
+ \centering
+ \color{ltxmdfblue}\Large\bfseries\sffamily
+ \prop_get:Nn \l_ltxmdf_maketitleinformation_prop { title }
+ \par
+ \skip_vertical:n {.5\baselineskip}
+ \normalfont\large\normalcolor
+ \prop_get:Nn \l_ltxmdf_maketitleinformation_prop { subtitle }
+ \par\kern.5\baselineskip\null\quad
+ \prop_get:Nn \l_ltxmdf_maketitleinformation_prop { author }
+ \hfill
+ \prop_get:Nn \l_ltxmdf_maketitleinformation_prop { version }
+ \hfill
+ \prop_get:Nn \l_ltxmdf_maketitleinformation_prop { date }
+ \hfill\quad\null
+ \group_end:
+ \par
+ \skip_vertical:n {.5\baselineskip}
+ \begin{abstract}
+ \prop_get:Nn \l_ltxmdf_maketitleinformation_prop { introduction }
+ \end{abstract}
+ \par
+ \skip_vertical:n {.2\baselineskip}
+ \pdfbookmark[1]{\contentsname}{tocbook}
+ \tableofcontents
+ \group_end:
+}
+
+%table of contens anpassen:
+\renewcommand\tableofcontents{%
+ \int_set_eq:NN \c@tocdepth \l_ltxmdf_tocdepth_int
+%\int_use:N \l_ltxmdf_tocdepth_int
+%\setcounter{tocdepth}{\l_ltxmdf_tocdepth_int}%
+ \begin{multicols}{2}[\centering\textbf{\sffamily\Large\contentsname}]
+ \@starttoc{toc}
+ \end{multicols}
+}
+
+
+%Modifkation of code
+\tl_gput_left:Nn \theCodelineNo { \color{gray} }
+\dim_set:Nn \MacroTopsep { 10pt }
+\tl_gput_right:Nn \MacroFont { \color{ltxmdfblue} }
+\NewDocumentCommand \MacroFontExpl {}
+ {
+ \MacroFont\color{ltxmdfblue}\bfseries
+ }
+
+%Anweisung zur Darstellung
+
+\NewDocumentCommand \Opt { m }
+ {
+ {\MacroFont #1}\xspace
+ }
+
+\NewDocumentCommand \Env { m }
+ {
+ {\MacroFont #1}\xspace
+ }
+
+\NewDocumentCommand \Cmd { m }
+ {
+ {\MacroFont\textbackslash #1}\xspace
+ }
+
+\NewDocumentCommand \Pack { m }
+ {
+ \texttt { #1 } \xspace
+ }
+
+\NewDocumentCommand \NOTE {}
+ {
+ \minisec{Note}
+ }
+
+\NewDocumentCommand \limitation { O{TikZ} }
+ {
+ \newline{\small~This~works~only~with~\Opt{framemethod=#1}.}
+ }
+
+\NewDocumentCommand \ExplOpt { o m }
+ {
+ \par
+ \skip_vertical:n { .2\baselineskip }
+ \noindent
+ \hbox_to_wd:nn { \c_zero_dim }
+ {
+ \skip_horizontal:n { -2em }
+ \@bsphack
+ \MacroFontExpl #2
+ \SpecialOptIndex{#2}
+ \@esphack
+ }
+ \hfill\null
+ \IfNoValueF { #1 }
+ {
+ \hbox:n { \small default=\ttfamily #1 }
+ }
+ \par
+ \skip_vertical:n { .5ex }
+ \noindent\ignorespaces
+ }
+
+\NewDocumentCommand \ExplEnv { o m }
+ {
+ \par
+ \skip_vertical:n { .2\baselineskip }
+ \noindent
+ \hbox_to_wd:nn { \c_zero_dim }
+ {
+ \skip_horizontal:n { -2em }
+ \@bsphack
+ \MacroFontExpl #2
+ \SpecialEnvIndex{#2}
+ \@esphack
+ }
+ \hfill\null
+ \IfNoValueF { #1 }
+ {
+ \hbox:n { \small default=\ttfamily #1 }
+ }
+ \par
+ \skip_vertical:n { .5ex }
+ \noindent\ignorespaces
+ }
+
+\NewDocumentCommand \ExplCmd { o m }
+ {
+ \par
+ \skip_vertical:n { .2\baselineskip }
+ \noindent
+ \hbox_to_wd:nn { \c_zero_dim }
+ {
+ \skip_horizontal:n { -2em }
+ \@bsphack
+ \MacroFontExpl\textbackslash #2
+ \SpecialUsageIndex{#2}
+ \@esphack
+ }
+ \hfill\null
+ \IfNoValueF { #1 }
+ {
+ \hbox:n { \small default=\ttfamily #1 }
+ }
+ \par
+ \skip_vertical:n { .5ex }
+ \noindent\ignorespaces
+ }
+
+
+\IndexPrologue{
+ \section*{Index}%
+ \markboth{Index}{Index}
+ The~index~only~collect~package~relevant~words.
+}
+
+
+\ExplSyntaxOff
+%Tikz und Farbe
+%tikzlibrary needs special handling
+
+
+
+\usetikzlibrary{calc,backgrounds,arrows,matrix}
+
+\colorlet{ltxmdfblue}{blue!30!black}
+
+
+\lst@RequireAspects{writefile}
+
+\lstset{keywordstyle=\bfseries}
+\lstdefinestyle{lstltxmdf}{%
+ basicstyle=\small\ttfamily,
+ language={[LaTeX]TeX},
+ basicstyle=\small,%
+ xleftmargin=20pt,%
+ xrightmargin=20pt,%
+ frame=none,%
+ rulecolor=\color{ltxmdfblue},%
+ framesep=5pt,%
+ framerule=1.2pt,%
+ texcsstyle=*\color{red!50!black}\bfseries,
+ moretexcs=intertext,
+ keywordstyle=\color{blue!60!black}\bfseries,%
+ columns=fullflexible,%
+ fontadjust=true,%
+ basewidth=0.65em,%
+ breakatwhitespace=true,
+ morekeywords=[2]{@length},
+ keywordstyle=[2]\color{red!50!black}\bfseries,
+ morekeywords={outerlinewidth,leftmargin,rightmargin,backgroundcolor,
+ outerlinecolor,innertopmargin,splittopskip,skipbelow,
+ skipabove,ntheorem,theorem,lemma,mdframed,linecolor,
+ frametitle,infobox,innerlinewidth,roundcorner,leftline,
+ topline,splitbottomskip,middlelinewidth,middlelinecolor,
+ tikzsetting,rightline,bottomline,innerrightmargin,style,
+ linewidth,lem,section,definedstyle,mdfapptodefinestyle,
+ needspace,mdf@globalstyle@cnt,framemethod,ExampleText,
+ titregris,draw,gray,thick,fill,white,shading,exersicetitle,
+ exersicebackground,color,green,black,exercise,exercisepoints,
+ text,rectangle,rounded,corners,right,minimum,height,xshift,
+ at,exercisestyle,settings,frametitlefont,innerbottommargin,
+ innerleftmargin,frametitlerule,frametitlebelowskip,
+ frametitleaboveskip,frametitlebackgroundcolor,
+ frametitlerulecolor,picins,figure,hidealllines,fontcolor,
+ firstextra,secondextra,middleextra,singleextra,overlay,node,
+ pstricksappsetting,apptotikzsetting,frametitlerulewidth,
+ userdefinedwidth,mdfbackground,append,mdfframetitlebackground,
+ left,shade,align,exampledefault},
+ moretexcs={newmdtheoremenv,newmdenv,theoremstyle,mdfsetup,@length,
+ md@putbox@single,@tempboxa,mdf@,mdf@linewidth,
+ mdf@leftmargin@length,interruptlength,setlength,newrobustcmd,
+ overlaplines,appto,md@frame@leftline@singe,color,
+ md@frame@leftline@single,mdf@innerbottommargin@length,
+ mdf@middlelinewidth@length,mdfboundingboxheight,
+ md@frame@rightline@single,mdfboundingboxwidth,
+ mdf@innerrightmargin@length,mdfdefinestyle,
+ mdfapptodefinestyle,defcounter,tikzstyle,
+ pgfdeclarehorizontalshading,theexercise,mdf@@exercisepoints,
+ define@key,renewrobustcmd,mdfcreateextratikz,node,ifdefempty,
+ mdf@frametitlefont,dimexpr,mdframedtitleenv,ifstrempty,
+ @undefined,mdtheorem,surroundwithmdframed,@captype,@dblarg,
+ @newcaption,newcaption,mdflength,tikzset,path,p1,p2,
+ IfFileExists,includegraphics,mdfsubtitle,lipsum,kant,%
+ Examplesec,%
+ },%
+}
+
+
+\lstnewenvironment{tltxmdfexample}[1][]
+ {\lstset{style=lstltxmdf,#1}}%
+ {}
+
+\def\mdf@sampleInput#1{%
+ \MakePercentComment\catcode`\^^M=10\relax%
+ {\setkeys{lst}{SelectCharTable=\lst@ReplaceInput{\^\^I}%
+ {\lst@ProcessTabulator}}%
+ \leavevmode \input{#1}}\MakePercentIgnore}
+\def\highlightinputenv{flushleft}
+\lstnewenvironment{tltxmdfexample*}[1][]%
+ {%
+ \begingroup%
+ \lstset{style=lstltxmdf,#1}%
+ \setbox\@tempboxa\hbox\bgroup
+ \lst@BeginWriteFile{\jobname.tmp}%
+ }%
+ {
+ \lst@EndWriteFile\egroup%
+ \begin{\highlightinputenv}
+ \lstinputlisting{\jobname.tmp}%
+ \end{\highlightinputenv}
+ \mdf@sampleInput{\jobname.tmp}%
+ \endgroup%
+ }
+
+
+\lstnewenvironment{exltxmdfexample}[1][]
+ {\lstset{style=lstltxmdf,#1}}%
+ {}
+
+
+\lstMakeShortInline[basicstyle=\small\ttfamily\color{blue!60!black}]{|}
+\def\macro#1{%
+ \MakePrivateLetters
+ \topsep\MacroTopsep \trivlist
+ \edef\saved@macroname{#1}%
+ \def\makelabel##1{\makebox[0pt][l]{\kern-2em ##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
+ \toks@={\@gobble}%
+ \@for\next:=#1\do
+ {\toks@=\expandafter{\the\expandafter\toks@%
+ \expandafter\\%
+ \expandafter\PrintMacroName\expandafter{\next}}}%
+ \item[\fbox{\begin{tabular}{@{\textbackslash}>{}l}
+ \the\toks@
+ \end{tabular}}]%
+ \leavevmode\par\kern\MacroTopsep\noindent\ignorespaces
+ \global\advance\c@CodelineNo\@ne
+ \@for\next:=#1\do
+ {%
+ \expandafter\SpecialMainIndex\expandafter{\next}\nobreak
+ \expandafter\DoNotIndex\expandafter{\next}}%
+ \global\advance\c@CodelineNo\m@ne
+ \ignorespaces}
+
+
+\def\SpecialOptIndex#1{\@bsphack
+ \index{#1\actualchar{\protect\ttfamily#1}
+ (option)\encapchar usage}%
+ \index{options:\levelchar#1\actualchar{\protect\ttfamily#1}\encapchar
+ usage}\@esphack}
+
+
+
+%%NOT IN INDEX
+%@
+\DoNotIndex{\@captype,\@endparenv,\@endparpenalty,\@endpetrue,\@floatpenalty,
+ \@footnotetext,\@ifnextchar,\@undefined,\@tempboxa,\@M,\@empty,
+ \@height,\@mpfn,\@mpfootins,\@mpfootnotetext,\@nil,\@plus,\@width,
+ \@afterheading,\@afterindentfalse,\@firstoftwo,\@gobble,
+ \@ifpackageloaded,\@nobreaktrue,\@nobreakfalse,\@secondoftwo,
+ \@tempa,\@tempdima}
+%A
+\DoNotIndex{\addpenalty,\addvspace,\advance,\afterassignment,
+ \AfterEndEnvironment,\appto}
+%B
+\DoNotIndex{\baselineskip,\begin,\boolfalse,\begingroup,\box,
+ \BeforeBeginEnvironment,\bfseries,\bgroup,\boxmaxdepth}
+%C
+\DoNotIndex{\color@endgroup,\color@setgroup,\columnwidth,\csdef,\c@mpfootnote,
+ \csname,\clip,\color,\color@begingroup,\coordinate,\csappta,\csuse,
+ \csxdef,\Currentoption}
+%D
+\DoNotIndex{\dimexpr,\DeclareBoolOption,\DeclareListParser,\def,\define@key,
+ \dimen@,\dimen@i,\dp,\deflength,\DeclareDefaultOption,\defcounter,
+ \DisableKeyvaloption}
+%E
+\DoNotIndex{\eject,\end,\endtrivlist,\edef,\endcsname,\endinput
+ \expandafter,\endgroup,\egroup,\enlargethispage}
+%F
+\DoNotIndex{\fwd@reserved@a,\fwd@reserveda,\fill,\forcsvlist}
+%G
+\DoNotIndex{\gdef}
+%H
+\DoNotIndex{\hbox,\height,\hrule,\hsize,\hspace,\ht,\hb@xt@,\hss}
+%I
+\DoNotIndex{\if@minipage,\if@twocolumn,\if@twoside,\ifbool,\ifdim,\ifdimequal,
+ \ifdimgreater,\ifdimless,\iffwd@footnoteinside,\ifinner,\ifnum,
+ \ifodd,\ifblank,\ifboolexpr,\ifcase,\ifcsundef,\IfFileExists,
+ \ifnumequal,\ifstrequal,\iftoggle,\ifundef,\input,
+ \kernel@ifnextchar,\ifvoid,\ifx,\item}
+%J
+\DoNotIndex{}
+%K
+\DoNotIndex{\kern}
+%L
+\DoNotIndex{\leftline,\let,\linewidth,\lrbox,\large,\letcs,\listadd,\llap,
+ \lowercase}
+%M
+\DoNotIndex{\maxdimen,\medskipamount,\MessageBreak,\makebox}
+%N
+\DoNotIndex{\NeedsTeXFormat,\newcounter,\newlength,\newrobustcmd,\nobreak,
+ \normalcolor,\number,\newbool,\newcommand,\newenvironment,
+ \newtheorem,\newtoggle,\node,\noindent,\notblank,\notbool,\null,
+ \newpsstyle,\next}
+%O
+\DoNotIndex{\or}
+%P
+\DoNotIndex{\p@,\PackageInfo,\PackageWarning,\pagegoal,\pagetotal,\partopsep,
+ \patchcmd,\penalty,\ProcessKeyvalOptions,\ProvidesPackage,
+ \providecommand,\path,\protected@edef,\ProvidesFile,\psframe,
+ \psline,\psset,\pst@number,\psxunit,\par,\parfillskip,\parindent,
+ \PassOptionsToPackage,\pgfmathsetlengthmacro}
+%Q
+\DoNotIndex{}
+%R
+\DoNotIndex{\relax,\RequirePackage,\raggedright,\renewcommand,\rlap,\rput,\rule}
+%S
+\DoNotIndex{\setbox,\setkeys,\setlength,\SetupKeyvalOptions,\splitmaxdepth,
+ \splittopskip,\stepcounter,\strutbox,\setbool,\settoggle,\space,
+ \string}
+%T
+\DoNotIndex{\textwidth,\the,\thempfn,\thempfootnote,\topsep,\trivlist,\tw@,
+ \tikzset}
+%U
+\DoNotIndex{\unskip,\unvbox}
+%V
+\DoNotIndex{\value,\vbox,\vfill,\vsize,\vskip,\vsplit,\vspace,\version}
+%W
+\DoNotIndex{\width,\wd}
+%X
+\DoNotIndex{\xifinlist,\xdef,\x}
+%Y
+\DoNotIndex{\y}
+%Z
+\DoNotIndex{\z@,\z@skip,\zref@addprop,\zref@extract,\zref@label,\zref@newprop,
+ \zref@refused,\ZREF@mainlist}
+
+%%%%
+
+\endinput
+%\tex_endinput:D
+