% !TEX TS-program = ConTeXt (LuaTeX 1.0.9)
% !TEX encoding = UTF-8 Unicode

% Copyright 2018 - 2019 Axel Kielhorn
% Lizenz: CC-BY-SA 4.0 Unported http://creativecommons.org/licenses/by-sa/4.0/deed.de

\enablemode[change]
\setuphyphenation[method=expanded]

\language[de]
\mainlanguage[de]
\setbreakpoints[compound]

\setuppapersize [A4][A4]
\setuplayout    [width=middle,  backspace=1.5in, cutspace=1.5in,
                 height=middle, topspace=0.75in, bottomspace=0.75in]

\setupbodyfont[11pt]

% Register für Version

\defineregister [changev]
\setupregister  [changev] [
  indicator=no          %% no letter
      style=sansbold,   %% headings
  textstyle=slanted,    %% entries
  pagestyle=bolditalic, %% page refs
          n=1,          %% columns
]

% Register für Datum

\defineregister [changed]
\setupregister  [changed] [
  indicator=no          %% no letter
      style=sansbold,   %% headings
  textstyle=slanted,    %% entries
  pagestyle=bolditalic, %% page refs
          n=1,          %% columns
]

\def\ChangeV#1#2{\changev{#1+#2}\doifmode{change}{\inmargin{\tx #1}{\blue #2\par}}}
\def\ChangeD#1#2{\changed{#1+#2}\doifmode{change}{\inmargin{\tx #1}{\blue #2\par}}}

% Paragraph added
\def\ChangeA#1#2{\doifmode{change}{\inmargin{\tx #1}\startsidebar[rulecolor=darkgreen]}#2\doifmode{change}{\stopsidebar}}
% Paragraph removed
\def\ChangeR#1#2{\doifmode{change}{\inmargin{\tx #1}\startsidebar[rulecolor=red]#2\stopsidebar}}

\def\Changer#1{{\doifmode{change}{\red #1}}}
\def\Changea#1{{\doifmode{change}{\darkgreen}#1}}
\def\Changec#1#2{{\doifmode{change}{\red #1\darkgreen}#2}}

\starttext

\ChangeV{V. 1.0}{Fertig!}
\ChangeR{V. 2.0}{\input knuth}

\ChangeD{2018-12-22}{Fertig!}

\ChangeD{2018-12-23}{Letzter Fehler beseitigt.}
\ChangeA{V. 2.0}{\input knuth}

\ChangeD{2018-12-23}{Allerletzter Fehler beseitigt.}

In diesem Satz war ein \Changec{Fähler}{Fehler}.

\ChangeV{V. 2.0}{Farben geändert}
\ChangeA{V. 2.0}{Die Änderungskommentare werden jetzt in {\blue blau} ausgegeben, da {\red rot} für gelöschte Texte und {\darkgreen grün} für hinzugefügte Texte verwendet wird.}

\ChangeV{V. 2.0}{Neue Befehle \type{ChangeA}, \type{ChangeR}, \type{Changea}, \type{Changer} und \type{Changec}}
\ChangeA{V. 2.0}{Mit den Befehlen \type{\ChangeA} und \type{\ChangeR} werden hinzugefügte bzw. gelöschte Absätze gekennzeichnet.}

\ChangeA{V. 2.0}{Mit den Befehlen \type{\Changea}, \type{\Changer} und \type{\Changec} werden hinzugefügte, gelöschte oder geänderte Satzteile gekennzeichnet. Der Befehl \type{\Changec} hat zwei Argumente: alter Text und neuer Text.}

Ende

\startsection[title={History}]

Nach Versionsnummer:

\placechangev

\blank[big]
Nach Datum:

\placechanged

\stopsection

\stoptext
