From d73c922e3d1cc0085aab0488d1b8d2c7ff4f09d9 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Wed, 22 Aug 2018 21:20:03 +0000
Subject: restore schule, tikz symbols and all

git-svn-id: svn://tug.org/texlive/trunk@48453 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/schule/schule.sty | 304 ++++++++++++++++++++++++++
 1 file changed, 304 insertions(+)
 create mode 100644 Master/texmf-dist/tex/latex/schule/schule.sty

(limited to 'Master/texmf-dist/tex/latex/schule/schule.sty')

diff --git a/Master/texmf-dist/tex/latex/schule/schule.sty b/Master/texmf-dist/tex/latex/schule/schule.sty
new file mode 100644
index 00000000000..151249576d4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/schule/schule.sty
@@ -0,0 +1,304 @@
+\NeedsTeXFormat{LaTeX2e}[2011/11/11]
+\ProvidesPackage{schule}[2018/08/12 v0.8 %
+                         Kommandos fuer die Schule]
+
+
+% TODO: Seitenzahlen in Lösungen und EWH beginnen bei 1. Dies führt
+% zu Warnungen beim Übersetzen, da pdfTeX nun keine eindeutigen Anker
+% mehr setzen kann. Lösung: Eigene Counter einführen. Problem ist
+% allerdings bisher kosmetischer Natur.
+
+% ********************************************************************
+% * Paketoptionen                                                    *
+% ********************************************************************
+
+% Abhängigkeiten
+% ********************************************************************
+\RequirePackage{pgfopts}
+\RequirePackage{xifthen}
+
+% Boolesche Optionen
+% ********************************************************************
+%\newboolean{schule@boolwert}
+\newboolean{schule@debug}
+
+% Standardwerte
+% ********************************************************************
+%\newcommand{\schule@wert}{Standard}
+\newcommand{\schule@typ}{schuleALT} % Für Kompatibilitätsmoduss
+\newcommand{\schule@fach}{ohne} % Keine Fachspezifika
+\newcommand{\schule@weitereFaecher}{}
+\newcommand{\schule@module}{}
+\newcommand{\schule@sprache}{}
+
+% Definition der Paketoptionen
+% ********************************************************************
+\pgfkeys{
+	/schule/.cd,
+	fach/.store in=\schule@fach,
+	weitereFaecher/.store in=\schule@weitereFaecher,
+	module/.store in=\schule@module,
+	typ/.store in=\schule@typ,
+	sprache/.store in=\schule@sprache,
+	debug/.value forbidden,
+	debug/.code=\setboolean{schule@debug}{true},
+	.unknown/.code={}, % Unbekannte Optionen ignorieren.
+}
+
+% Frühe Paketoptionen verarbeiten (etwa die zu ladenden Module und den
+% Typ des Dokuments)
+% ********************************************************************
+\ProcessPgfPackageOptions{/schule}
+
+
+% ********************************************************************
+% * Basisfunktionen und deren Abhängigkeiten                         *
+% ********************************************************************
+
+% Fehlerbehandlung und -ausgabe
+% ********************************************************************
+\newcommand{\swarnung}[1]{\PackageWarning{schule}{#1}}
+\newcommand{\sfehler}[1]{\PackageError{schule}{#1}}
+\newcommand{\sinfo}[1]{\PackageInfo{schule}{#1}}
+
+% Debugvarianten
+\newcommand{\sdwarnung}[1]{
+	\ifthenelse{\boolean{schule@debug}}{
+		\swarnung{#1}
+	}{
+		% stillschweigend ignorieren
+	}
+}
+\newcommand{\sdinfo}[1]{
+	\ifthenelse{\boolean{schule@debug}}{
+		\sinfo{#1}
+	}{
+		% stillschweigend ignorieren
+	}
+}
+
+
+% unschädliche Warnungen im Normalbetrieb unterdrücken
+\ifthenelse{\boolean{schule@debug}}{}{
+	\usepackage{silence}
+
+	% Kompatiblität von ctable zu TikZ
+	\WarningFilter{ctable}{Transp}
+}
+
+% Laden von Dokumenttypen
+% ********************************************************************
+% Laden der jeweiligen Dokumenttyp-Definition. Falls keine gefunden
+% wurde und das Paket nicht eingebettet verwendet wird, wird die
+% Definition für Arbeitsblätter geladen.
+
+% \schule@typDateiLaden{Dokumenttyp}{Abschnitt}
+\newcommand{\schule@typDateiLaden}[2]{
+	\ifthenelse{\equal{\schule@typ}{ohne}}{
+		\sdinfo{Eingebetteter Modus. Es wird kein Dokumenttyp geladen!}
+	}{
+		\IfFileExists{Dokumenttypen/#1/#2.tex}{
+			% Wenn die Datei existiert
+			\input{Dokumenttypen/#1/#2.tex}
+			\sdinfo{Dokumenttyp #1/#2 geladen!}
+		}{
+			% Wenn die Datei nicht existiert, lade Arbeitsblatt.
+			\sdwarnung{Dokumenttyp #1/#2 nicht gefunden, %
+				lade Arbeitsblatt!}
+			\IfFileExists{Dokumenttypen/ab/#2.tex}{
+				% Wenn die Datei existiert
+				\input{Dokumenttypen/ab/#2.tex}
+				\sdinfo{Dokumenttyp ab/#2 geladen!}
+			}{
+				% Wenn die Datei nicht existiert, lade Arbeitsblatt.
+				\sdwarnung{Dokumenttyp ab/#2 nicht gefunden!}
+			}
+		}
+	}
+}
+
+% Modullader
+% ********************************************************************
+% Um Kollisionen zu vermeiden muss gespeichert werden, ob eine Datei
+% bereits geladen wurde. So können Module auch mehrfach angegeben
+% und von anderen Modulen verwendet werden.
+
+% \schule@modulDateiLaden{Kategorie}{Modulname}{Abschnitt}
+\newcommand{\schule@modulDateiLaden}[3]{
+	\IfFileExists{#1/#2/#3.tex}{
+		% Wenn die Datei existiert
+		\ifcsname schule@geladen#1#2#3\endcsname
+			% Wenn die Datei bereits geladen wurde
+			\sdwarnung{Moduldatei #1/#2/#3 war bereits geladen!}
+		\else
+			% Wenn die Datei nicht bereits geladen wurde
+			\input{#1/#2/#3.tex}
+			\expandafter\def
+				\csname schule@geladen#1#2#3\endcsname{true}
+			\expandafter\def
+				\csname schule@geladen#1#2\endcsname{true}
+			\sdinfo{Moduldatei #1/#2/#3 geladen!}
+		\fi
+	}{
+		% Wenn die Datei nicht existiert
+		\sdwarnung{Moduldatei #1/#2/#3 nicht gefunden!}
+	}
+}
+
+
+% \schule@modulNachladen{Modulname}
+% Lädt ein Modul mit allen Abschnitten. Interne Hilfsfunktion für
+% Erfüllung von Abhängigkeiten in Modulen. Die Verwendung zu anderen
+% Zwecken wird nicht empfohlen.
+\newcommand{\schule@modulNachladen}[1]{
+	\schule@modulDateiLaden{Module}{#1}{optionen}
+	\ProcessPgfPackageOptions{/schule}
+	\schule@modulDateiLaden{Module}{#1}{pakete}
+	\schule@modulDateiLaden{Module}{#1}{code}
+}
+
+% Modulliste
+% ********************************************************************
+\RequirePackage{forarray}
+% Standardmodule laden und um optionale Module ergänzen
+\ifthenelse{\equal{\schule@typ}{ohne}}{
+	\edef\schule@ladeModule{%
+		Metadaten, %
+		Format, %
+		\schule@module
+	}
+}{
+	\edef\schule@ladeModule{%
+		Metadaten, %
+		Format, %
+		Aufgaben, %
+		\schule@module
+	}
+}
+
+% ********************************************************************
+% * Paketoptionen der Module                                         *
+% ********************************************************************
+
+% Definitionen der Paketoptionen der Module laden
+% ********************************************************************
+\ForEachX{,}{
+	\schule@modulDateiLaden{Module}{\thislevelitem}{optionen}
+}{\schule@ladeModule}
+
+% Definitionen der Paketabhängigkeiten der Fächer laden
+% ********************************************************************
+\schule@modulDateiLaden{Faecher}{\schule@fach}{optionen}
+
+% Weitere Fächer
+\ForEachX{,}{
+	\schule@modulDateiLaden{Faecher}{\thislevelitem}{optionen}
+}{\schule@weitereFaecher}
+
+% Definitionen der Paketabhängigkeiten des Dokumenttyps laden
+% ********************************************************************
+\schule@typDateiLaden{\schule@typ}{optionen}
+
+% Paketoptionen verarbeiten
+% ********************************************************************
+% Zurücksetzen der unbekannten Optionen
+%\def\schule@unbekannteOptionen{}
+% TODO: Evtl. Warnung, falls unbekannte Option gesetzt.
+% Erneutes Verarbeiten der Optionen
+\ProcessPgfPackageOptions{/schule}
+
+% ********************************************************************
+% * Kompatibilitätsmodus BEGINN                                      *
+% ********************************************************************
+
+\ifthenelse{\equal{\schule@typ}{schuleALT}}{
+	\RequirePackage{schulealt}
+}{
+
+% ********************************************************************
+% * Paketabhängigkeiten                                              *
+% ********************************************************************
+
+% Allgemeine Paketabhängigkeiten
+% ********************************************************************
+
+% Eingabe und Sprache
+\RequirePackage[\schule@sprache,ngerman]{babel}
+\RequirePackage[utf8]{inputenc}
+\RequirePackage[TS1,T1]{fontenc}
+
+% Makros
+\RequirePackage{xparse}
+\RequirePackage{xstring}
+\RequirePackage{environ}
+
+% Referenzen
+
+% Mathematisches
+\RequirePackage{amsmath}
+
+% Grafik
+\PassOptionsToPackage{table,dvipsnames}{xcolor}
+\RequirePackage{xcolor}
+\RequirePackage{tikz}
+\RequirePackage{graphicx}
+
+
+% Paketabhängigkeiten der Module
+% ********************************************************************
+\ForEachX{,}{
+	\schule@modulDateiLaden{Module}{\thislevelitem}{pakete}
+}{\schule@ladeModule}
+
+% Paketabhängigkeiten der Fächer
+% ********************************************************************
+% Fachspezifische Paketabhängigkeiten
+\schule@modulDateiLaden{Faecher}{\schule@fach}{pakete}
+
+% Weitere Fächer
+\ForEachX{,}{
+	\schule@modulDateiLaden{Faecher}{\thislevelitem}{pakete}
+}{\schule@weitereFaecher}
+
+% Paketabhängigkeiten des Dokumenttyps
+% ********************************************************************
+\schule@typDateiLaden{\schule@typ}{pakete}
+
+%Hyperref nach allen anderen Paketen laden um möglichen Problemen aus dem Weg zu gehen.
+\RequirePackage{hyperref}
+
+
+% ********************************************************************
+% * Module laden                                                     *
+% ********************************************************************
+
+\ForEachX{,}{
+	\schule@modulDateiLaden{Module}{\thislevelitem}{code}
+}{\schule@ladeModule}
+
+
+% ********************************************************************
+% * Fachspezifischen Code einbinden                                  *
+% ********************************************************************
+
+% Einbinden der fachspezifischen Module
+\schule@modulDateiLaden{Faecher}{\schule@fach}{code}
+
+\schule@modulDateiLaden{Faecher}{\schule@fach}{standalone}
+
+% Weitere Fächer
+\ForEachX{,}{
+	\schule@modulDateiLaden{Faecher}{\thislevelitem}{code}
+}{\schule@weitereFaecher}
+
+% ********************************************************************
+% * Code des Dokumenttyps einbinden                                  *
+% ********************************************************************
+\schule@typDateiLaden{\schule@typ}{code}
+
+
+% ********************************************************************
+% * Kompatibilitätsmodus ENDE                                      *
+% ********************************************************************
+
+}
-- 
cgit v1.2.3

