Editor

Die App besteht aus einen Viewer und einem Editor, wobei mit dem Editor Markdowntexte geschrieben werden können, die dann geparst und zu HTML umgeformt werden. HTML kann dann vom Browser gerendert werden. Speziell an diesem Parser ist vor allem, dass er

A. Markdown

Der Markdown Dialekt ist GFM (Github's Markdown). Siehe dazu beliebige Cheatsheets im Internet, zum Beipiel hier.

B. Latex Formeln

Inline Latex Formeln werden im Editor mit Dollarzeichen umrahmt, etwa $x^2$, was dann zu x2x^2 gerendert wird. Block Formeln sind mit zwei Dollarzeichen umrahmt. Speziell zum normalen Latex ist, dass die Dollarzeichen auf eigenen Linien stehen müssen:

$$
\int_0^3 x^2\, dx
$$

was dann gerendert wird zu

03x2dx\int_0^3 x^2\, dx

Makros

Katex hat einen limitierten Befehlssatz (im Vergleich zu Latex). Einige Befehle sind mit Makros hinzufügt worden:

  1. Katex kennt den Befehl \unit[]{} nicht, und er lässt sich nicht emulieren, da Katex optionale Argumente nicht kennt (die Logik fehlt). Simon hat zwei Makros geschrieben:

    • Nur die Einheit $10\unit{cm}$: 10cm10\unit{cm}
    • Zahl und Einheit $\qty{10}{mm}$: 10  mm\qty{10}{mm}
  2. Makros für Zahlenmengen sind $\R, \Q, \Z, \N, \irrational$: R,Q,Z,N,I\R, \Q, \Z, \N, \irrational

C. Markdown Komponenten (MDC)

Markdown Komponenten beginnen mit einem : (Tools) oder mit einen :: (Umgebungen).

Tools

Tools sind Befehle, eventuell mit Argumenten:

Open in GeoGebra

Umgebungen (Envs)

Umgebungen sind Boxen, in der Text formatiert wird. Alle Umgebungen sind ähnlich aufgebaut. Sie haben einen Hintergrund und einen Titel, und es können Untertitel, Text, und aufklappbare Beweis oder Lösung hinzugefügt werden (Slots). Einige Umgebungen (Beipiel, Aufgabe, Definition) werden innerhalb eines Kapitels automatisch numeriert. Und jede Umgebung lässt sich als .png ins Clipboard kopieren. Umgebungen starten und enden mit ::, wobei auch Argumente mitgegeben werden können (was die jetztigen Umgebungen aber noch nicht brauchen).

::example{title="title on same line"}

#title

#content

#solution (oder #proof)

::

Umgebungen können auch beliebig verschachtelt werden (wir starten und beenden sie dann wir drei Doppelpunkten), obwohl dies wohl eher selten vorkommen wird. Innere Umgebungen beginnen und enden mit einem Doppelpunkt mehr.

Einzelne Slots können auch weggelassen werden.

Example 1: Beispiel mit Untertitel, Text und Lösung.

Und hier ist Text, etwa eine Aufgabe1

Solution

Und hier die Lösung

Example 2

Beispiel ohne Untertitel, mit Text und Lösung

Solution

Lösung ist hier.

oder ganz kurz

Example 3

Text ohne Untertitle und ohne Lösung.

Example 4: Title on same line

Text mit Titel auf gleicher Linie wie "example"

Footnotes

  1. yep!