schulmathematik/schulma.sty

170 lines
3.1 KiB
TeX

% schulmathematik bundle: package schulma
% Version 1.5
% 21. Juni 2023
\ProvidesExplPackage{schulma}{2023-06-21}{1.5}{Befehle für die Schulmathematik}
\bool_new:N \g_schulma_icomma_bool
\bool_gset_true:N \g_schulma_icomma_bool
\DeclareOption {ohne-icomma}
{
\bool_gset_false:N \g_schulma_icomma_bool
}
\ProcessOptions \relax
\RequirePackage [intlimits] {mathtools}
\RequirePackage {autoaligne}
\RequirePackage {pgfplots}
\bool_if:NT \g_schulma_icomma_bool
{
\RequirePackage {icomma}
}
\ExplSyntaxOff
\usetikzlibrary{shapes.misc}
\ExplSyntaxOn
\pgfplotsset
{
compat = newest ,
axis~lines = middle ,
every~axis/.append~style =
{
font = \small
},
ticklabel~style =
{
font = \footnotesize ,
/pgf/number~format/use~comma ,
/pgf/number~format/fixed ,
/pgf/number~format/set~thousands~separator = {\,}
},
tick~style = {thick} ,
scaled~ticks = false ,
every~axis~plot/.append~style =
{
semithick
}
}
\NewDocumentEnvironment {Kosy} {o}
{
\tl_set:Nn \l_tmpa_tl
{
xlabel = {$x$} , ylabel = {$y$} ,
minor~tick~num = 1 , minor~tick~length = 0pt ,
grid = both
}
\begin {tikzpicture}
\IfValueTF {#1}
{
\begin {axis} [ \l_tmpa_tl , #1 ]
}
{
\begin {axis} [\l_tmpa_tl]
}
}
{
\end {axis}
\end {tikzpicture}
}
\NewDocumentCommand \LGS {m}
{
\ensuremath
{
\left |
\,
\autoaligne {#1}
\,
\right |
}
}
\tl_new:N \g_schulma_eulersche_zahl_tl
\tl_new:N \g_schulma_differential_tl
\AtBeginDocument
{
\tl_gset:Nx \g_schulma_eulersche_zahl_tl
{
\@ifpackageloaded {euler} {e} { \exp_not:N \mathrm {e} }
}
\tl_gset:Nx \g_schulma_differential_tl
{
\@ifpackageloaded {euler} {d} { \exp_not:N \mathrm {d} }
}
}
\NewDocumentCommand \ehoch {m}
{
\g_schulma_eulersche_zahl_tl ^ {#1}
}
\NewDocumentCommand \diff {m}
{
\g_schulma_differential_tl
#1
}
\NewDocumentCommand \Pkt {o m m}
{
\ensuremath
{
\IfValueT {#1} {#1}
\mathopen {} % Zusatzabstand entfernen
\left( {#2} \, \middle| \, {#3} \right)
}
}
\NewDocumentCommand \PktR {o m m m}
{
\ensuremath
{
\IfValueT {#1} {#1}
\mathopen {} % Zusatzabstand entfernen
\left( {#2} \, \middle| \, {#3} \, \middle| \, {#4} \right)
}
}
\NewDocumentCommand \Vek {m m m}
{
\ensuremath
{
\begin {pmatrix}
#1 \\ #2 \\ #3
\end {pmatrix}
}
}
\NewDocumentCommand \VekBr {m m m}
{
\ensuremath
{
\begin {pmatrix}
#1 \\[0,5ex] #2 \\[0,5ex] #3
\end {pmatrix}
}
}
\NewDocumentCommand \GTRY {mo}
{
\texttt { Y \textsubscript {#1} }
\IfValueT {#2} { \texttt {=} \, \ensuremath {#2} }
}
% Knotentyp zum Setzen von Kreuzen ins Koordinatensystem:
\tikzset
{
Kreuz/.style =
{
cross~out ,
draw ,
minimum~size = 5pt ,
inner~sep = 0pt ,
outer~sep = 0pt
}
}