aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.editorconfig12
-rw-r--r--Makefile30
-rw-r--r--common.mk19
-rw-r--r--latex/common.tex19
-rw-r--r--latex/common_options.tex12
-rw-r--r--latex/common_packages.tex10
-rw-r--r--latex/handout.cls20
-rw-r--r--latex/images/Kleeblatt.jpgbin0 -> 9914 bytes
-rw-r--r--latex/images/LogoHansSachs.pngbin0 -> 4016591 bytes
-rw-r--r--latex/packages.tex110
-rw-r--r--latex/test.cls136
-rwxr-xr-xmake-lesson12
-rw-r--r--templates/.gitignore1
-rw-r--r--templates/Aufgaben/aufgabe.tex10
-rw-r--r--templates/schedule.md12
-rw-r--r--templates/test.tex28
16 files changed, 431 insertions, 0 deletions
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 00000000..cfaf9082
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,12 @@
+root = true
+
+[*]
+charset = utf-8
+trim_trailing_whitespace = true
+end_of_line = lf
+insert_final_newline = true
+spell_language = de
+
+[*.{md,tex}]
+indent_style = space
+indent_size = 2
diff --git a/Makefile b/Makefile
new file mode 100644
index 00000000..13993c53
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,30 @@
+# The full path to the Makefile
+MAKEFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
+# The path to the directory of the Makefile
+MAKEFILE_DIR := $(dir $(MAKEFILE_PATH))
+
+include $(MAKEFILE_DIR)/common.mk
+
+SRC_DIRS := $(shell find "(" -not -path "./templates/*" -a -not -path "./latex/*" -a -not -path "*/Aufgaben/*" -a "(" -name "*.md" -o -name "*.tex" ")" ")" -printf "%h\n" | uniq)
+
+# Hide or not the calls depending of VERBOSE
+ifeq ($(VERBOSE),TRUE)
+ HIDE :=
+else
+ HIDE := @
+endif
+
+.DEFAULT_GOAL := all
+all: $(SRC_DIRS)
+
+define generateRules
+$(1):
+ @echo \#\# Building $$@ \#\#
+ @pushd $$(@) >/dev/null && make-lesson || popd >/dev/null
+endef
+
+$(foreach dir, $(SRC_DIRS), $(eval $(call generateRules, $(dir))))
+$(eval $(call generateRules, templates))
+
+.PHONY: $(SRC_DIRS) templates
+
diff --git a/common.mk b/common.mk
new file mode 100644
index 00000000..825d00dc
--- /dev/null
+++ b/common.mk
@@ -0,0 +1,19 @@
+IMGS := $(wildcard img/*)
+
+SLIDES_OPTIONS := --slide-level 2 -t beamer
+SLIDES_FORMAT := markdown
+SCHEDULE_FORMAT := markdown+pipe_tables
+
+LATEX_BASE := $(MAKEFILE_DIR)latex
+ADDITIONAL_TEX_INPUTS := LATEX_BASE:
+
+RUBBER_OPTS := --pdf --shell-escape -I "$(LATEX_BASE)"
+
+schedule.pdf: schedule.md $(MAKEFILE_LIST)
+ pandoc $< -f $(SCHEDULE_FORMAT) -o $@
+
+slides.pdf: slides.md $(wildcard img/*) $(MAKEFILE_LIST)
+ pandoc $(SLIDES_OPTIONS) -f $(SLIDES_FORMAT) $< -o $@
+
+%.pdf: %.tex $(MAKEFILE_LIST)
+ rubber $(RUBBER_OPTS) $< && rubber --clean -q $<
diff --git a/latex/common.tex b/latex/common.tex
new file mode 100644
index 00000000..decebd24
--- /dev/null
+++ b/latex/common.tex
@@ -0,0 +1,19 @@
+\newcommand{\Signatur}{FIF}
+\newcommand{\Schule}{Hans-Sachs-Gymnasium Nürnberg}
+\newcommand{\LogoSchule}{images/logoHansSachs.png}
+
+\newtcolorbox{wiederholung}[1]{colback=orange!5!white,colframe=orange!75!black,fonttitle=\bfseries,title=Wiederholung: #1}
+
+\newcommand\kariert[2][0.5cm]{%
+ \begin{tikzpicture}[gray,step=#1]
+ \pgfmathtruncatemacro\anzahl{(\linewidth-\pgflinewidth)/#1} % maximale Anzahl Kästchen pro Zeile
+ \draw (0,0) rectangle (\anzahl*#1,#2*#1) (0,0) grid (\anzahl*#1,#2*#1);
+ \end{tikzpicture}
+}
+
+\newcommand{\liniert}[2][0.5cm]{%
+ \begin{tikzpicture}[gray]
+ \path[use as bounding box](0,0)rectangle(\linewidth,-#2*#1-0.5\pgflinewidth);
+ \foreach \n in {1,...,#2}\draw(0 ,-#1*\n )--(\linewidth,-#1*\n );
+ \end{tikzpicture}
+}
diff --git a/latex/common_options.tex b/latex/common_options.tex
new file mode 100644
index 00000000..0ef8b1cb
--- /dev/null
+++ b/latex/common_options.tex
@@ -0,0 +1,12 @@
+\RequirePackage{etoolbox}
+\newtoggle{lehrerversion}
+\DeclareOption{lehrerversion}{\toggletrue{lehrerversion}}
+
+\newtoggle{debug}
+\DeclareOption{debug}{\toggletrue{debug}}
+
+\ProcessOptions\relax
+
+\iftoggle{debug}{
+ \RequirePackage{showframe} % Seitenlayout anzeigen
+}{}
diff --git a/latex/common_packages.tex b/latex/common_packages.tex
new file mode 100644
index 00000000..e3e0cf94
--- /dev/null
+++ b/latex/common_packages.tex
@@ -0,0 +1,10 @@
+\RequirePackage{geometry}
+\RequirePackage[utf8]{inputenc}
+\RequirePackage{amssymb,amsthm,amsmath}
+\RequirePackage{ifthen}
+\RequirePackage{graphicx}
+\RequirePackage{tikz}
+\RequirePackage{multicol}
+\RequirePackage[most]{tcolorbox}
+\RequirePackage{xcolor}
+\RequirePackage{lmodern}
diff --git a/latex/handout.cls b/latex/handout.cls
new file mode 100644
index 00000000..5943769a
--- /dev/null
+++ b/latex/handout.cls
@@ -0,0 +1,20 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{handout}[muhq's simple handout class]
+
+\LoadClass{scrartcl}
+
+\input{common_packages.tex}
+\input{common_options.tex}
+\input{common.tex}
+
+\geometry{a4paper,margin=1cm,nohead}
+
+\newcommand{\solution}[1]{
+ \iftoggle{lehrerversion}{
+ #1
+ }{
+ \phantom{#1}
+ }
+}
+
+\newcommand{\gap}[1]{\underline{\solution{#1}}}
diff --git a/latex/images/Kleeblatt.jpg b/latex/images/Kleeblatt.jpg
new file mode 100644
index 00000000..3a5423b2
--- /dev/null
+++ b/latex/images/Kleeblatt.jpg
Binary files differ
diff --git a/latex/images/LogoHansSachs.png b/latex/images/LogoHansSachs.png
new file mode 100644
index 00000000..82e4dc43
--- /dev/null
+++ b/latex/images/LogoHansSachs.png
Binary files differ
diff --git a/latex/packages.tex b/latex/packages.tex
new file mode 100644
index 00000000..649d3fdc
--- /dev/null
+++ b/latex/packages.tex
@@ -0,0 +1,110 @@
+\renewcommand{\baselinestretch}{1,5}
+
+\usepackage{geometry}
+\geometry{a4paper, top=35mm, left=20mm, right=35mm, bottom=25mm,
+headsep=15mm, footskip=10mm}
+
+\usepackage{floatflt}
+\usepackage{footnote}
+\usepackage{amsthm}
+\usepackage{float}
+\usepackage[utf8]{inputenc}
+\usepackage[ngerman]{babel}
+\usepackage{underscore}
+\usepackage{amssymb,amsmath}
+\usepackage{comment}
+\usepackage{ifthen}
+\usepackage{graphicx}
+\newcommand{\Verteilung}{}
+
+\newtheoremstyle{Aufg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}: \ \Verteilung \hfill {/}\AnzahlPunkte \ BE}}
+
+\theoremstyle{Aufg}
+\newtheorem{Aufg}{Aufgabe}
+
+\newtheoremstyle{Lsg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnote{ (#3)}: }}
+
+
+
+\theoremstyle{Lsg}
+\newtheorem{Lsg}{Lösung}
+
+\newtheoremstyle{Bearbeitung}% name of the style to be used
+{0pt}% measure of space to leave above the theorem. E.g.: 3pt
+{25pt}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{ }% space after theorem head; " " = normal interword space
+{\thmname{#1} }
+
+\theoremstyle{Bearbeitung}
+\newtheorem{Bearbeitung}{}
+
+
+\newcommand{\centeredgraphics}[2][]{\[\includegraphics[#1]{images/#2}\]}
+\newcommand{\Ende}{ \ifdefined\PlatzKnapp \makebox(100,25)[c]{} \else \vspace*{\fill} \fi
+%\makebox(100,50)[c]{}
+\centeredgraphics[height=2.5cm]{Kleeblatt.jpg}
+\centerline{\textbf{Viel Erfolg!}} \newline}
+
+\newcommand{\AnzahlPunkte}{X} %%Anzahl der Punkte festlegen
+
+
+
+\makeindex
+\usepackage{setspace}
+
+%\usepackage{showframe} % Seitenlayout anzeigen
+
+\usepackage{fancyhdr}
+\pagestyle{fancy}
+\setlength{\headheight}{25 pt}
+\fancyhf{}
+\fancyhead[L]{\Schule}
+\fancyhead[R]{\HeaderText}
+
+
+
+\fancypagestyle{ErsteSeite}{%
+ \fancyhf{}%
+ \fancyhead[L]{\ifdefined\KeinLogo \else \includegraphics[width=0.3\textwidth]{\LogoSchule} \newline \fi \Schule}
+ \fancyhead[R]{\Large Name: \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
+
+}
+
+
+\usepackage{tikz}
+\newcommand\kariert[2][0.5cm]{%
+ \begin{tikzpicture}[gray,step=#1]
+ \pgfmathtruncatemacro\anzahl{(\linewidth-\pgflinewidth)/#1} % maximale Anzahl Kästchen pro Zeile
+ \draw (0,0) rectangle (\anzahl*#1,#2*#1) (0,0) grid (\anzahl*#1,#2*#1);
+ \end{tikzpicture}
+}
+
+\newcommand{\liniert}[2][0.5cm]{%
+ \begin{tikzpicture}[gray]
+ \path[use as bounding box](0,0)rectangle(\linewidth,-#2*#1-0.5\pgflinewidth);
+ \foreach \n in {1,...,#2}\draw(0 ,-#1*\n )--(\linewidth,-#1*\n );
+ \end{tikzpicture}}
+
+\newcommand{\Lehrerversion}{\excludecomment{Bearbeitung}}
+
+\newcommand{\Schuelerversion}{\excludecomment{Lsg}}
diff --git a/latex/test.cls b/latex/test.cls
new file mode 100644
index 00000000..64fdf54e
--- /dev/null
+++ b/latex/test.cls
@@ -0,0 +1,136 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{test}[muhq's test class]
+
+\renewcommand{\baselinestretch}{1,5}
+
+\LoadClass[a4paper,12pt]{scrartcl}
+
+\RequirePackage{floatflt}
+\RequirePackage{footnote}
+\RequirePackage{float}
+\RequirePackage[ngerman]{babel}
+\RequirePackage{underscore}
+\RequirePackage{comment}
+
+\input{common_packages.tex}
+\input{common_options.tex}
+\input{common.tex}
+
+\geometry{a4paper, top=35mm, left=20mm, right=35mm, bottom=25mm, headsep=15mm, footskip=10mm}
+
+\newcommand{\Verteilung}{}
+\newcommand{\AnzahlPunkte}{0} %%Anzahl der Punkte festlegen
+
+\newcommand{\Datum}{\today}
+\newcommand{\Klasse}{TODO}
+\newcommand{\TestNummer}{1}
+\newcommand{\TestArt}{Schulaufgabe}
+\newcommand{\Fach}{Mathemathik}
+\newcommand{\HeaderText}{\TestArt{} aus der \Fach}
+%\newcommand{\KeinLogo}{} %%FALLS Kein Logo erwünscht
+\newcommand{\EinleitungsSatz}{Achte auf eine korrekte Schreibweise und eine ordentliche äußere Form!}
+
+\definecolor{testgrauRGB}{rgb}{0.9,0.9,0.9}
+\definecolor{testgrauCMYK}{cmyk}{0.0,0.0,0.0,0.30}
+
+\newcommand{\AnzahlInsgesamtPunkte}{TODO} %%Anzahl der zu erreichenden Punkte
+
+\newtheoremstyle{Aufg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}: \ \Verteilung \hfill {/}\AnzahlPunkte \ BE}}
+
+\theoremstyle{Aufg}
+\newtheorem{Aufg}{Aufgabe}
+
+\newtheoremstyle{Lsg}% name of the style to be used
+{2pt}% measure of space to leave above the theorem. E.g.: 3pt
+{}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{\newline }% space after theorem head; " " = normal interword space
+{\textbf{\thmname{#1}\thmnote{ (#3)}:}}
+
+\theoremstyle{Lsg}
+\newtheorem{Lsg}{Lösung}
+
+\newtheoremstyle{Bearbeitung}% name of the style to be used
+{0pt}% measure of space to leave above the theorem. E.g.: 3pt
+{25pt}% measure of space to leave below the theorem. E.g.: 3pt
+{}% name of font to use in the body of the theorem
+{}% measure of space to indent
+{}% name of head font
+{}% punctuation between head and body
+{ }% space after theorem head; " " = normal interword space
+{\thmname{#1}}
+
+\theoremstyle{Bearbeitung}
+\newtheorem{Bearbeitung}{}
+
+\newcommand{\Lehrerversion}{\excludecomment{Bearbeitung}}
+\newcommand{\Schuelerversion}{\excludecomment{Lsg}}
+
+\iftoggle{lehrerversion}{
+ \Lehrerversion
+}{
+ \Schuelerversion
+}
+
+\newcommand{\Intro}{
+ \fcolorbox{black}{testgrauRGB}{%
+ \parbox{14.3cm}{
+ \centerline{\Large \bfseries \TestNummer{}. \TestArt{} aus der Mathematik}
+ \medskip
+ \centerline{\bfseries Klasse \Klasse}
+ \centerline{\bfseries -- am \Datum \ --}
+ }
+ }
+ \medskip
+ \newline
+ \centerline{\EinleitungsSatz}
+}
+
+\newcommand{\centeredgraphics}[2][]{\[\includegraphics[#1]{images/#2}\]}
+\newcommand{\Ende}{
+ \ifdefined\PlatzKnapp \makebox(100,25)[c]{}
+ \else \vspace*{\fill}
+ \fi
+ %\makebox(100,50)[c]{}
+ \centeredgraphics[height=2.5cm]{Kleeblatt.jpg}
+ \centerline{\textbf{Viel Erfolg! \Signatur}}
+ \newline
+
+ \makebox(1,50)[c]{}
+
+ %%Erstellt Summenzeichen und Erreichte Punktzahl
+ \centerline{\Large \bfseries $\sum$ \ \ \ \ \ \ \ \ \ \ {/}\AnzahlInsgesamtPunkte \ BE}
+ \makebox(1,25)[c]{} \newline
+ \ifdefined\PlatzKnapp
+ \else
+ \makebox(100,100)[c]{}
+ \fi
+}
+
+\makeindex
+\RequirePackage{setspace}
+
+\RequirePackage{fancyhdr}
+\pagestyle{fancy}
+\setlength{\headheight}{25 pt}
+\fancyhf{}
+\fancyhead[L]{\Schule}
+\fancyhead[R]{\HeaderText}
+
+\fancypagestyle{ErsteSeite}{%
+ \fancyhf{}%
+ \fancyhead[L]{\ifdefined\KeinLogo \else \includegraphics[width=0.3\textwidth]{\LogoSchule} \newline \fi \Schule}
+ \fancyhead[R]{\Large Name: \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
+
+}
diff --git a/make-lesson b/make-lesson
new file mode 100755
index 00000000..a82776d6
--- /dev/null
+++ b/make-lesson
@@ -0,0 +1,12 @@
+#!/usr/bin/bash
+MAKEFILE='Makefile'
+while [[ ! -f "${MAKEFILE}" ]]; do
+ MAKEFILE=../"${MAKEFILE}"
+done
+
+FIND="find . -maxdepth 1 '(' -name '*.md' -o -name '*.tex' ')' -a -not -name 'Aufgabe[0-9].tex'"
+
+if [[ -f "${MAKEFILE}" ]]; then
+ exec make -s -f "${MAKEFILE}" "$@" $(eval "${FIND}" | sed 's/.tex/.pdf/g' | sed 's/.md/.pdf/g')
+fi
+
diff --git a/templates/.gitignore b/templates/.gitignore
new file mode 100644
index 00000000..a1363379
--- /dev/null
+++ b/templates/.gitignore
@@ -0,0 +1 @@
+*.pdf
diff --git a/templates/Aufgaben/aufgabe.tex b/templates/Aufgaben/aufgabe.tex
new file mode 100644
index 00000000..ef86bf06
--- /dev/null
+++ b/templates/Aufgaben/aufgabe.tex
@@ -0,0 +1,10 @@
+\renewcommand{\AnzahlPunkte}{8} %%Anzahl der Punkte festlegen
+\renewcommand{\Verteilung}{4 + 4 BE} %%Anzahl der Punkte festlegen
+
+\begin{Aufg}
+Berechne $1+1$
+\end{Aufg}
+
+\begin{Lsg}
+$1 + 1 = 2$
+\end{Lsg}
diff --git a/templates/schedule.md b/templates/schedule.md
new file mode 100644
index 00000000..8d2c4ae1
--- /dev/null
+++ b/templates/schedule.md
@@ -0,0 +1,12 @@
+---
+lang: de
+geometry: margin=2cm
+---
+# Thema der Stunde
+
+## Lernziele
+
+## Verlaufplan
+
+| Zeit | Phase | Unterrichtsgeschehen | Ziel | Methode | Medien |
+|:-----|-------------|--------------------------------------|-----------------------------------------------------------|----------|------------------|
diff --git a/templates/test.tex b/templates/test.tex
new file mode 100644
index 00000000..b8dbed23
--- /dev/null
+++ b/templates/test.tex
@@ -0,0 +1,28 @@
+\documentclass[
+% debug, % Zeigt Rahmen der verwendeten frames
+lehrerversion, % Zeigt die Loesungen und versteckt den Platz zur Bearbeitung
+]{test}
+
+\begin{document}
+
+\thispagestyle{ErsteSeite}
+\Intro
+
+%%BEISPIEL AUFGABE MIT KARIERTER BEARBEITUNG
+\input{Aufgaben/aufgabe}
+%\newline
+\begin{Bearbeitung}
+\kariert[0.5cm]{17}
+%\liniert[0.5cm]{13}
+\end{Bearbeitung}
+
+%%%Hier die Darstellung am Ende
+%%Falls es das ganze auf eine andere Seite Schiebt und man alles komprimieren will
+%\newcommand{\PlatzKnapp}{}
+
+%%Optional neue Seite
+\newpage
+
+%%Bindet Kleeblatt mit Viel Erfolg ein und erstellt Platz darunter
+\Ende
+\end{document}