summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/changes/userdoc
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/changes/userdoc
Initial commit
Diffstat (limited to 'macros/latex/contrib/changes/userdoc')
-rw-r--r--macros/latex/contrib/changes/userdoc/changes.de.tex1000
-rw-r--r--macros/latex/contrib/changes/userdoc/changes.en.tex1008
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_added.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_comment.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_definechangesauthor.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_deleted.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_highlight.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_listofchanges.tex5
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_replaced.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setaddedmarkup.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setauthormarkup.tex3
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setauthormarkupposition.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setauthormarkuptext.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setcommentmarkup.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setdeletedmarkup.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_sethighlightmarkup.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setsocextension.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setsummarytowidth.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_setsummarywidth.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_settruncatewidth.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_addedmarkup_changes.tex3
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkup_changes.tex3
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkupposition_changes.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkuptext_changes.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_commentmarkup_changes.tex3
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_deletedmarkup_changes.tex3
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_highlightmarkup_changes.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_markup_changes.tex4
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_todonotes_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_truncate_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_ulem_changes.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/ex_usepackage_xcolor_changes.tex2
-rw-r--r--macros/latex/contrib/changes/userdoc/in_added.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_comment.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_definechangesauthor.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_deleted.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_highlight.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_listofchanges.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_path_doc_examples.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_path_script.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_replaced.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setaddedmarkup.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setauthormarkup.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setauthormarkupposition.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setauthormarkuptext.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setcommentmarkup.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setdeletedmarkup.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_sethighlightmarkup.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setsocextension.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setsummarytowidth.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_setsummarywidth.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_settruncatewidth.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_addedmarkup_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_authormarkup_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_authormarkupposition_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_authormarkuptext_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_commentmarkup_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_deletedmarkup_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_draft_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_final_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_highlightmarkup_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_markup_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_options_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_todonotes_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_truncate_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_ulem_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/in_usepackage_xcolor_changes.tex1
-rw-r--r--macros/latex/contrib/changes/userdoc/script_pymergechanges.tex6
-rw-r--r--macros/latex/contrib/changes/userdoc/script_pymergechanges_empty.tex1
70 files changed, 2131 insertions, 0 deletions
diff --git a/macros/latex/contrib/changes/userdoc/changes.de.tex b/macros/latex/contrib/changes/userdoc/changes.de.tex
new file mode 100644
index 0000000000..f63ad7309d
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/changes.de.tex
@@ -0,0 +1,1000 @@
+%^^A ---- introduction
+\section{Einleitung}
+
+Dieses Paket dient dazu, manuelle Änderungsmarkierung zu ermöglichen.
+
+Verbesserungsvorschläge, Gedanken oder Kritik sind willkommen.
+Das Paket wird auf \emph{gitlab} gehalten, bitte gehen Sie zu
+
+\url{http://edgesoft.de/projects/latex/changes/}
+
+für Links zum Quellcodezugang, Fehler- und Featuretracker etc.
+Wenn Sie mich direkt kontaktieren wollen, mailen Sie bitte an \href{mailto:ekleinod@edgesoft.de}{ekleinod@edgesoft.de}.
+Bitte starten Sie Ihr Mail-Subject mit \texttt{[changes]}.
+
+\begin{quote}
+ Das changes-Paket dient zur manuellen Markierung von geändertem Text, insbesondere Einfügungen, Löschungen und Ersetzungen.
+ Der geänderte Text wird farbig markiert und, bei gelöschtem Text, durchgestrichen.
+ Zusätzlich kann Text hervorgehoben und/oder kommentiert werden.
+ Das Paket ermöglicht die freie Definition von Autoren und deren zugeordneten Farben.
+ Es erlaubt zusätzlich die Änderung des Änderungs-, Autor-, Hervorhebungs- und Kommentarmarkups.
+\end{quote}
+
+Ein kurzes Beispiel für Änderungsmarkierung:
+
+\begin{quote}
+ Das ist \added[id=EK, comment={fehlendes Wort}]{zugefügter} Text.
+ In diesem Satz ersetze ich ein \replaced[id=EK]{gutes}{schlechtes} Wort.
+ Und jetzt noch ein \deleted[id=EK]{schlechtes} Wort zum Löschen.
+ Text kann auch \highlight[id=EK]{hervorgehoben} oder nur \comment[id=EK]{Aus Spaß!} kommentiert werden.
+\end{quote}
+
+Im gleichen Ordner wie dieses Handbuch befindet sich ein Ordner "`examples"', der eine reichhaltige Auswahl an Anwendungsbeispielen für das Paket und dessen Befehle enthält.
+Bitte sehen Sie die Beispiele als Inspiration oder erste Fehlerlösungsquelle an.
+
+
+%^^A ---- usage
+\cleardoublepage
+\section{Benutzung des \chpackage{changes}-Pakets}
+\label{sec:usage}
+
+In diesem Kapitel wird die Nutzung des \chpackage{changes}-Pakets beschrieben.
+Dabei wird ein typischer Anwendungsfall geschildert.
+Die ausführliche Beschreibung der Paketoptionen und neuen Befehle finden Sie nicht hier, sondern in \autoref{sec:ui}.
+
+Ausgangslage ist ein Text, an dem Änderungen vorgenommen werden sollen.
+Diese Änderungen sollen markiert werden, und zwar für jeden Autor einzeln.
+Eine solche Änderungsmarkierung ist \zB von WYSIWYG-Textprogrammen wie \emph{LibreOffice}, \emph{OpenOffice} oder \emph{Word} bekannt.
+
+Zu diesem Zweck wurde das \chpackage{changes}-Paket entwickelt.
+Das Paket stellt Befehle zur Verfügung, um verschiedene Autoren zu definieren und Text als zugefügt, gelöscht oder geändert zu markieren.
+Zusätzlich kann Text hervorgehoben oder kommentiert werden.
+Um das Paket zu nutzen, sollten Sie folgende Schritte ausführen:
+
+\begin{enumerate}
+ \item \chpackage{changes}-Paket einbinden
+ \item Autoren definieren
+ \item Textänderungen markieren
+ \item Text hervorheben und kommentieren
+ \item Dokument mit \hologo{LaTeX} setzen
+ \item Liste von Änderungen anzeigen lassen
+ \item Markierungen entfernen
+\end{enumerate}
+
+\minisec{\chpackage{changes}-Paket einbinden}
+
+Um die Änderungsverfolgung zu aktivieren, ist das \chpackage{changes}-Paket wie folgt einzubinden:
+
+\chinline{usepackage_changes}
+
+bzw.
+
+\chinline{usepackage_options_changes}
+
+Mit den verfügbaren Optionen bestimmen Sie hauptsächlich das Aussehen der Änderungsmarkierungen.
+Sie können das Aussehen der Änderungsmarkierungen auch nach Einbinden des \chpackage{changes}-Pakets verändern.
+
+Für Details lesen Sie bitte \autoref{sec:ui:options} und \autoref{sec:ui:customizingoutput}.
+
+\minisec{Autoren definieren}
+
+Das \chpackage{changes}-Paket stellt einen vordefinierten anonymen Autor zur Verfügung.
+Wenn Sie jedoch die Änderungen per Autor\_in verfolgen wollen, müssen Sie die entsprechenden Autor\_innen definieren.
+Dies geht wie folgt:
+
+\chinline{definechangesauthor}
+
+Über die ID werden der/die Autor\_in und die zugehörigen Textänderungen eindeutig identifiziert.
+Optional können Sie einen Namen angeben und dem/der Autor\_in eine eigene Farbe zuweisen.
+
+Für Details lesen Sie bitte \autoref{sec:ui:authormanagement}.
+
+\minisec{Textänderungen markieren}
+
+Jetzt ist alles vorbereitet, um den geänderten Text zu markieren.
+Benutzen Sie bitte je nach Änderung die folgenden Befehle:
+
+für neu zugefügten Text:
+
+\chinline{added}
+
+für gelöschten Text:
+
+\chinline{deleted}
+
+für geänderten Text:
+
+\chinline{replaced}
+
+Die Angabe von Autoren-ID und eines Kommentars ist optional.
+
+Für Details lesen Sie bitte \autoref{sec:ui:changemanagement}.
+
+
+\minisec{Text hervorheben und kommentieren}
+
+Vielleicht möchten Sie noch Text hervorheben oder kommentieren?
+
+Text hervorheben:
+
+\chinline{highlight}
+
+Text kommentieren:
+
+\chinline{comment}
+
+Die Angabe der Autoren-ID und des Kommentars für Hervorhebungen ist optional.
+
+Für Details lesen Sie bitte \autoref{sec:ui:comment}.
+
+
+\minisec{Dokument mit \hologo{LaTeX} setzen}
+
+Nachdem Sie die Änderungen im \hologo{LaTeX}-Text markiert haben, können Sie sie im erzeugten Dokument sichtbar machen, indem Sie das Dokument ganz normal übersetzen.
+Durch die Übersetzung wird der geänderte Text so markiert, wie Sie das mittels der Optionen bzw.\ speziellen Befehle eingestellt haben.
+
+\minisec{Liste von Änderungen anzeigen lassen}
+
+Sie können sich eine Liste der Änderungen ausgeben lassen.
+Dies erfolgt mit dem Kommando:
+
+\chinline{listofchanges}
+
+Die Ausgabe ist gedacht als Analogon zur Liste von Tabellen oder Abbildungen.
+
+Die Angabe des Stils ist optional, standardmäßig wird \choption{style=list} gewählt.
+Um einen schnellen Überblick über Art und Anzahl der Änderungen abhängig von dem/der Autor\_in zu bekommen, verwenden Sie den Befehl mit der Option \choption{style=summary} oder \choption{style=compactsummary}.
+Zeigen Sie nur bestimme Änderungstypen mit der \choption{show}-Option.
+
+Bei jedem \hologo{LaTeX}-Lauf werden die Daten für diese Liste in eine Hilfsdatei geschrieben.
+Beim nächsten \hologo{LaTeX}-Lauf werden dann diese Daten genutzt, um die Änderungsliste anzuzeigen.
+Daher sind nach jeder Änderung zwei \hologo{LaTeX}-Läufe notwendig, um eine aktuelle Änderungsliste anzuzeigen.
+
+Für Details lesen Sie bitte \autoref{sec:ui:overview}.
+
+\minisec{Markierungen entfernen}
+
+Oft ist es der Fall, dass die Änderungen eines Dokuments angenommen oder abgelehnt werden und nach diesem Prozess die Änderungsmarkierungen entfernt werden sollen.
+Sie können die Ausgabe der Änderungsmarkierungen per Option beim Einbinden des \chpackage{changes}-Pakets unterdrücken:
+
+\chinline{usepackage_final_changes}
+
+Die Entfernung der Markierungen aus dem Quelltext müssen Sie von Hand vornehmen, dafür steht auch ein Script von Yvon Cui zur Verfügung.
+Das Script liegt im Verzeichnis:
+
+\chinline[, language=bash]{path_script}
+
+Das Script entfernt alle Markierungen, indem die Änderungen angenommen oder abgelehnt werden.
+Sie können die zu entfernenden Markierungen individuell im interaktiven Modus selektieren bzw.\ selektieren, indem Sie das Skript ohne Optionen starten.
+
+Das Skript benötigt \emph{python3}.
+
+Nutzen Sie das Skript wie folgt:
+
+\chinputlisting{, language=bash}{userdoc/script_pymergechanges}
+
+Starten Sie das Skript ohne Optionen und Dateien für eine kurze Hilfe:
+
+\chinputlisting{, language=bash}{userdoc/script_pymergechanges_empty}
+
+Bekannte Probleme:
+
+\begin{itemize}
+ \item entfernt nur Markierungen, die in einer Zeile stehen, Markierungen, die mehrere Zeilen umfassen, werden ignoriert
+ \item Probleme mit vernesteten Kommandos
+\end{itemize}
+
+
+
+%^^A ---- limitations
+\cleardoublepage
+\section{Einschränkungen und Erweiterungsmöglichkeiten}
+\label{sec:limitations}
+
+Das \chpackage{changes}-Paket ist sorgfältig programmiert und getestet worden.
+Dennoch kann es vorkommen, dass Fehler im Paket sind, dass die Benutzung problematisch ist oder dass eine Funktion fehlt, die Sie gerne hätten.
+In diesem Fall gehen Sie bitte zu
+
+\url{http://changes.sourceforge.net/}
+
+Dort finden Sie Links, wie Fehler oder Verbesserungen gemeldet werden können, wie Tips für andere Nutzerinnen angegeben werden können oder wie Sie bei der Entwicklung des Pakets mithelfen können.
+
+Eine Übersicht über alle mir bekannten Probleme und eventuell vorhandenen Lösungen finden Sie in \autoref{sec:known-problems}.
+Bitte sehen Sie dort zunächst nach, ob Ihr Problem schon bekannt ist und es eine Lösung gibt.
+
+Sie können mir auch eine Mail schreiben an \href{mailto:ekleinod@edgesoft.de}{ekleinod@edgesoft.de}, in diesem Fall starten Sie bitte Ihr Mail-Subject mit \texttt{[changes]}.
+
+Die Änderungsmarkierung von Text funktioniert recht gut, es können auch ganze Absätze markiert werden.
+Die Markierung ist eingeschränkt oder nicht möglich für:
+
+\begin{itemize}
+ \item Abbildungen
+ \item Tabellen
+ \item Überschriften
+ \item manche Kommandos
+ \item mehrere Absätze (manchmal)
+\end{itemize}
+
+Sie können versuchen, solchen Text in eine eigene Datei auszulagern, und diese mit \texttt{input} einzubinden.
+Manchmal hilft das, oft ist es einen Versuch wert.
+Danke an Charly Arenz für diesen Tip.
+
+
+
+%^^A ---- user interface
+\cleardoublepage
+\section{Die Benutzerschnittstelle des \chpackage{changes}-Pakets}
+\label{sec:ui}
+
+In diesem Kapitel wird die Nutzerschnittstelle des \chpackage{changes}-Pakets vorgestellt, \dh alle Optionen und Kommandos.
+Jede Option bzw. jedes neue Kommando werden beschrieben.
+Wenn Sie die Optionen und Kommandos im Beispiel sehen wollen, sehen Sie bitte in das Beispielverzeichnis unter
+
+\chinline[, language=bash]{path_doc_examples}
+
+Die Beispieldateien sind mit der benutzten Option bzw. dem benutzten Kommando benannt.
+
+%^^A -- options
+\subsection{Paketoptionen}
+\label{sec:ui:options}
+
+\chinline{usepackage_options_changes}
+
+Die Paketoptionen bestimmen das Verhalten des Gesamtpakets, \dh aller Befehle.
+
+Die folgenden Optionen sind definiert:
+
+\localtableofcontents
+
+
+
+\subsubsection{draft}
+
+\chinline{usepackage_draft_changes}
+
+Die \choption{draft}-Option bewirkt, dass alle Änderungen markiert werden.
+Die Änderungsliste kann durch \chcommand{listofchanges} ausgegeben werden.
+Diese Option ist automatisch voreingestellt.
+
+Die Angabe von \choption{draft} in \chcommand{documentclass} wird vom \chpackage{changes}-Paket mitgenutzt.
+Die lokale Angabe von \choption{final} überstimmt die Angabe von \choption{draft} in \chcommand{documentclass}.
+
+\subsubsection{final}
+
+\chinline{usepackage_final_changes}
+
+Die \choption{final}-Option bewirkt, dass alle Änderungsmarkierungen ausgeblendet werden und nur noch der korrekte Text ausgegeben wird.
+Die Änderungsliste wird ebenfalls unterdrückt.
+
+Die Angabe von \choption{final} in \chcommand{documentclass} wird vom \chpackage{changes}-Paket mitgenutzt.
+Die lokale Angabe von \choption{draft} überstimmt die Angabe von \choption{final} in \chcommand{documentclass}.
+
+\subsubsection{markup}
+
+\chinline{usepackage_markup_changes}
+
+Die \choption{markup}-Option wählt ein vordefiniertes visuelles Markup für geänderten Text.
+Das default-Markup wird gewählt, wenn die Option nicht gesetzt wird.
+Das mit \choption{markup} gewählte Markup kann mit den spezielleren Optionen \choption{addedmarkup}, \choption{deletedmarkup}, \choption{commentmarkup} oder \choption{highlightmarkup} geändert werden.
+
+Die folgenden Werte für \emph{markup} sind definiert:
+\begin{description}
+ \item [\choption{default}] default für zugefügten, gelöschten und hervorgehobenen Text sowie Kommentare (default)
+ \item [\choption{underlined}] zugefügter Text wird unterstrichen, gewellt unterstrichen für Hervorhebungen, default für gelöschten Text sowie Kommentare
+ \item [\choption{bfit}] fetter zugefügter Text, schräger gelöschter Text, default für hervorgehobenen Text sowie Kommentare
+ \item [\choption{nocolor}] es werden keine Farben verwendet, zugefügter Text wird unterstrichen, gewellt unterstrichen für Hervorhebungen, default für gelöschten Text sowie Kommentare
+\end{description}
+
+\chexample{usepackage_markup_changes}
+
+Wenn von farbigem zu nichtfarbigem Markup oder umgekehrt gewechselt wird und eine Hilfsdatei existiert werden einige Kompilierfehler angezeigt.
+Über diese ist hinwegzuspringen, beim zweiten Durchlauf sollten die Fehler verschwunden sein.
+
+
+\subsubsection{addedmarkup}
+
+\chinline{usepackage_addedmarkup_changes}
+
+Die \choption{addedmarkup}-Option wählt ein vordefiniertes visuelles Markup für zugefügten Text.
+Das default-Markup wird gewählt, wenn die Option nicht gesetzt wird.
+Die Option \choption{addedmarkup} überschreibt das mit \choption{markup} gewählte Markup.
+
+Die folgenden Werte für \emph{addedmarkup} sind definiert:
+\begin{description}
+ \item [\choption{colored}] kein Textmarkup, nur farbige Kennzeichnung -- {\color{orange} Beispiel} (default)
+ \item [\choption{uline}] unterstrichener Text -- \uline{Beispiel}
+ \item [\choption{uuline}] doppelt unterstrichener Text -- \uuline{Beispiel}
+ \item [\choption{uwave}] gewellt unterstrichener Text -- \uwave{Beispiel}
+ \item [\choption{dashuline}] gestrichelt unterstrichener Text -- \dashuline{Beispiel}
+ \item [\choption{dotuline}] gepunktet unterstrichener Text -- \dotuline{Beispiel}
+ \item [\choption{bf}] fetter Text -- \textbf{Beispiel}
+ \item [\choption{it}] italic Text -- \textit{Beispiel}
+ \item [\choption{sl}] schräger Text -- \textsl{Beispiel}
+ \item [\choption{em}] hervorgehobener Text -- \emph{Beispiel}
+\end{description}
+
+Die Ausgabe ersetzten Texts ist ein Kombination von zugefügtem und gelöschten Text, daher beeinflusst deren Layoutänderung auch das Layout ersetzen Texts.
+
+\chexample{usepackage_addedmarkup_changes}
+
+
+\subsubsection{deletedmarkup}
+\label{sec:ui:options:deletedmarkup}
+
+\chinline{usepackage_deletedmarkup_changes}
+
+Die \choption{addedmarkup}-Option wählt ein vordefiniertes visuelles Markup für zugefügten Text.
+Die \choption{deletedmarkup}-Option wählt analog ein vordefiniertes visuelles Markup für gelöschten Text.
+Das default-Markup wird gewählt, wenn die Option nicht gesetzt wird.
+Die Optionen \choption{addedmarkup} und \choption{deletedmarkup} überschreiben das mit \choption{markup} gewählte Markup.
+
+Die folgenden Werte für \emph{addedmarkup} sind definiert:
+
+\begin{description}
+ \item [\choption{sout}] durchgestrichener Text -- \sout{Beispiel} (default)
+ \item [\choption{xout}] schräg durchgestrichener Text -- \xout{Beispiel}
+ \item [\choption{colored}] kein Textmarkup, nur farbige Kennzeichnung -- {\color{orange} Beispiel}
+ \item [\choption{uline}] unterstrichener Text -- \uline{Beispiel}
+ \item [\choption{uuline}] doppelt unterstrichener Text -- \uuline{Beispiel}
+ \item [\choption{uwave}] gewellt unterstrichener Text -- \uwave{Beispiel}
+ \item [\choption{dashuline}] gestrichelt unterstrichener Text -- \dashuline{Beispiel}
+ \item [\choption{dotuline}] gepunktet unterstrichener Text -- \dotuline{Beispiel}
+ \item [\choption{bf}] fetter Text -- \textbf{Beispiel}
+ \item [\choption{it}] italic Text -- \textit{Beispiel}
+ \item [\choption{sl}] schräger Text -- \textsl{Beispiel}
+ \item [\choption{em}] hervorgehobener Text -- \emph{Beispiel}
+\end{description}
+
+Die Ausgabe ersetzten Texts ist ein Kombination von zugefügtem und gelöschten Text, daher beeinflusst deren Layoutänderung auch das Layout ersetzen Texts.
+
+\chexample{usepackage_deletedmarkup_changes}
+
+
+\subsubsection{highlightmarkup}
+
+\chinline{usepackage_highlightmarkup_changes}
+
+Die \choption{highlightmarkup}-Option wählt ein vordefiniertes visuelles Markup für hervorgehobenen Text.
+Das default-Markup wird gewählt, wenn die Option nicht gesetzt wird.
+Die Option \choption{highlightmarkup} überschreibt das mit \choption{markup} gewählte Markup.
+
+Die folgenden Werte für \emph{highlightmarkup} sind definiert:
+
+\begin{description}
+ \item [\choption{background}] Hervorhebung durch Hintergrundfarbe -- \colorbox{orange!30}{Beispiel} (default)
+ \item [\choption{uuline}] doppelt unterstrichener Text -- \uuline{Beispiel}
+ \item [\choption{uwave}] gewellt unterstrichener Text -- \uwave{Beispiel}
+\end{description}
+
+\chexample{usepackage_highlightmarkup_changes}
+
+
+\subsubsection{commentmarkup}
+
+\chinline{usepackage_commentmarkup_changes}
+
+Die \choption{commentmarkup}-Option wählt ein vordefiniertes visuelles Markup für Kommentare.
+Das default-Markup wird gewählt, wenn die Option nicht gesetzt wird.
+Die Option \choption{commentmarkup} überschreibt das mit \choption{markup} gewählte Markup.
+
+Die folgenden Werte für \emph{commentmarkup} sind definiert:
+
+\begin{description}
+ \item [\choption{todo}] Kommentar als ToDo-Notiz, die nicht in der Liste der ToDos erscheint\todo{Beispielkommentar} (default)
+ \item [\choption{margin}] Kommentar im Seitenrand\marginpar{Beispielkommentar}
+ \item [\choption{footnote}] Kommentar als Fußnote\footnote{Beispielkommentar}
+ \item [\choption{uwave}] gewellt unterstrichener Text -- \uwave{Beispielkommentar}
+\end{description}
+
+\chexample{usepackage_commentmarkup_changes}
+
+
+\subsubsection{authormarkup}
+
+\chinline{usepackage_authormarkup_changes}
+
+Die \choption{authormarkup}-Option wählt ein vordefiniertes visuelles Markup für die Autor-Identifizierung.
+Das default-Markup wird gewählt, wenn die Option nicht gesetzt wird.
+
+Die folgenden Werte für \emph{authormarkup} sind definiert:
+
+\begin{description}
+ \item [\choption{superscript}] hochgestellter Text -- Text\textsuperscript{Autor} (default)
+ \item [\choption{subscript}] tiefgestellter Text -- Text\textsubscript{Autor}
+ \item [\choption{brackets}] Text in Klammern -- Text(Autor)
+ \item [\choption{footnote}] Text in einer Fußnote -- Text\footnote{Autor}
+ \item [\choption{none}] keine Autor-Identifizierung
+\end{description}
+
+\chexample{usepackage_authormarkup_changes}
+
+
+\subsubsection{authormarkupposition}
+
+\chinline{usepackage_authormarkupposition_changes}
+
+Die \choption{authormarkupposition}-Option gibt an, wo die Autor-Identifizierung gesetzt wird.
+Der default-Wert wird gewählt, wenn die Option nicht gesetzt wird.
+
+Die folgenden Werte für \emph{authormarkupposition} sind definiert:
+
+\begin{description}
+ \item [\choption{right}] rechts vom Text -- Text\textsuperscript{Autor} (default)
+ \item [\choption{left}] links vom Text -- \textsuperscript{Autor}Text
+\end{description}
+
+\chexample{usepackage_authormarkupposition_changes}
+
+
+\subsubsection{authormarkuptext}
+
+\chinline{usepackage_authormarkuptext_changes}
+
+Die \choption{authormarkuptext}-Option gibt an, was für die Autor-Identifizierung genutzt wird.
+Der default-Wert wird gewählt, wenn die Option nicht gesetzt wird.
+
+Die folgenden Werte für \emph{authormarkuptext} sind definiert:
+
+\begin{description}
+ \item [\choption{id}] Autoren-ID -- Text\textsuperscript{ID} (default)
+ \item [\choption{name}] Autorenname -- Text\textsuperscript{Autorenname}
+\end{description}
+
+\chexample{usepackage_authormarkuptext_changes}
+
+
+\subsubsection{todonotes}
+
+\chinline{usepackage_todonotes_changes}
+
+Optionen für das \chpackage{todonotes}-Paket können als Parameter der \choption{todonotes}-Option angegeben werden.
+Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden.
+
+\chexample{usepackage_todonotes_changes}
+
+
+
+\subsubsection{truncate}
+
+\chinline{usepackage_truncate_changes}
+
+Optionen für das \chpackage{truncate}-Paket können als Parameter der \choption{truncate}-Option angegeben werden.
+Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden.
+
+\chexample{usepackage_truncate_changes}
+
+
+
+\subsubsection{ulem}
+
+\chinline{usepackage_ulem_changes}
+
+Optionen für das \chpackage{ulem}-Paket können als Parameter der \choption{ulem}-Option angegeben werden.
+Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden.
+
+\chexample{usepackage_ulem_changes}
+
+
+
+\subsubsection{xcolor}
+
+\chinline{usepackage_xcolor_changes}
+
+Optionen für das \chpackage{xcolor}-Paket können als Parameter der \choption{xcolor}-Option angegeben werden.
+Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden.
+
+\chexample{usepackage_xcolor_changes}
+
+
+%^^A ---- change management
+
+\subsection{Änderungsmanagement}
+\label{sec:ui:changemanagement}
+
+\localtableofcontents
+
+\chnewcmd{added}
+
+\chinline{added}
+
+Der Befehl \chcommand{added} markiert zugefügten Text.
+Der neue Text wird in geschweiften Klammern übergeben.
+
+Das optionale Argument enthält Key-Value-Paare für die Angabe von Autor-ID sowie eines Kommentars.
+Die Autor-ID muss mit einer mit dem \chcommand{definechangesauthor}-Befehl definierten ID übereinstimmen.
+Enthält der Kommentar Sonderzeichen oder Leerzeichen, ist er in geschweifte Klammern einzuschließen.
+
+Wenn ein Kommentar angegeben wurde, wird das direkte Autormarkup am geänderten Text unterdrückt, da es im Kommentar erscheint.
+
+\chexample{added}
+\chresult{added}
+
+
+\chnewcmd{deleted}
+
+\chinline{deleted}
+
+Der Befehl \chcommand{deleted} markiert gelöschten Text.
+Der gelöschte Text wird in geschweiften Klammern übergeben.
+
+Optionale Argumente: siehe \chcommand{added} (\autoref{sec:ui:cmd:added}).
+
+\chexample{deleted}
+\chresult{deleted}
+
+
+\chnewcmd{replaced}
+
+\chinline{replaced}
+
+Der Befehl \chcommand{replaced} markiert geänderten Text.
+Der neue sowie der alte Text werden in dieser Reihenfolge jeweils in geschweiften Klammern übergeben.
+
+Optionale Argumente: siehe \chcommand{added} (\autoref{sec:ui:cmd:added}).
+
+Die Ausgabe ersetzten Texts ist ein Kombination von zugefügtem und gelöschten Text, daher beeinflusst deren Layoutänderung auch das Layout ersetzen Texts.
+
+\chexample{replaced}
+\chresult{replaced}
+
+
+
+%^^A -- Highlighting and Comments ------------------------------------------------------
+\subsection{Hervorhebungen und Kommentare}
+\label{sec:ui:comment}
+
+\localtableofcontents
+
+\chnewcmd{highlight}
+
+\chinline{highlight}
+
+Der Befehl \chcommand{highlight} markiert hervorgehobenen Text.
+Der hervorzuhebende Text wird in geschweiften Klammern übergeben.
+
+Optionale Argumente: siehe \chcommand{added} (\autoref{sec:ui:cmd:added}).
+
+\chexample{highlight}
+\chresult{highlight}
+
+
+\chnewcmd{comment}
+
+\chinline{comment}
+
+Der Befehl \chcommand{comment} fügt dem Dokument einen Kommentar hinzu.
+Der Kommentar wird als in geschweiften Klammern übergeben.
+
+Der Befehl besitzt nur ein optionales Argument: ein Key-Value-Paar für die Angabe der Autor-ID.
+Die Autor-ID muss mit einer mit dem \chcommand{definechangesauthor}-Befehl definierten ID übereinstimmen.
+
+Die Kommentare werden durchnumeriert, die Nummer erscheint im Kommentar.
+
+\chexample{comment}
+\chresult{comment}
+
+
+
+
+
+
+%^^A -- Overview of changes
+\subsection{Änderungsübersicht}
+\label{sec:ui:overview}
+
+
+\chnewcmd{listofchanges}
+
+\chinline{listofchanges}
+
+Der Befehl \chcommand{listofchanges} gibt eine Liste oder Zusammenfassung der Änderungen aus.
+Im ersten \hologo{LaTeX}-Lauf wird eine Hilfsdatei angelegt, deren Daten im zweiten Durchlauf eingebunden werden.
+Für eine aktuelle Liste der Änderungen sind daher zwei \hologo{LaTeX}-Läufe notwendig.
+
+Es können drei optionale Argumente angegeben werden:
+
+\begin{description}
+ \item[\choption{style}] Listenstil
+ \item[\choption{title}] individueller Titel
+ \item[\choption{show}] Änderungstypen
+\end{description}
+
+\paragraph{style}
+Über das Argument \choption{style} können verschiedene Listenstile für die Anzeige ausgewählt werden.
+Es sind folgende drei Stile definiert:
+
+\begin{description}
+ \item[\choption{list}] gibt die Änderungsliste wie ein Inhaltsverzeichnis aus (default)
+ \item[\choption{summary}] gibt die Anzahl der Änderungen gruppiert nach Autor aus
+ \item[\choption{compactsummary}] wie \choption{summary}, jedoch werden Änderungen mit Anzahl 0 nicht ausgegeben
+\end{description}
+
+\paragraph{title}
+Mit dem Argument \choption{title} kann ein eigener Titel für die Änderungsliste angegeben werden.
+Wenn Sie Sonderzeichen oder Leerzeichen im Titel benutzen wollen, klammern Sie den Titel geschweift ein.
+
+\paragraph{show}
+Das Argument \choption{show} gibt an, welche Änderungstypen in der Änderungsliste ausgegeben werden.
+Sie können die Typen mit Hilfe des Zeichens \texttt{|} kombinieren.
+Wenn Sie \zB alle neuen Texte und alle Löschungen anzeigen wollen, geben Sie \texttt{show=added|deleted} an.
+
+Die folgenden Werte sind definiert:
+
+\begin{description}
+ \item[\choption{all}] alle Typen (default)
+ \item[\choption{added}] nur neue Texte
+ \item[\choption{deleted}] nur Löschungen
+ \item[\choption{replaced}] nur Ersetzungen
+ \item[\choption{highlight}] nur Hervorhebungen
+ \item[\choption{comment}] nur Kommentare
+\end{description}
+
+\chexample{listofchanges}
+
+
+
+%^^A ---- Author management
+
+\subsection{Autorenverwaltung}
+\label{sec:ui:authormanagement}
+
+\chnewcmd{definechangesauthor}
+
+\chinline{definechangesauthor}
+
+Der Befehl \chcommand{definechangesauthor} definiert einen neuen Autor/eine neue Autorin für Änderungen.
+Es muss eine eindeutige Autor-ID angegeben werden, die keine Sonder- oder Leerzeichen enthalten darf.
+
+Optional kann eine Farbe und ein Name angegeben werden.
+Wird keine Farbe angegeben, wird blau genutzt.
+
+Der Name wird in der Änderungsliste sowie im Markup benutzt, im Markup jedoch nur, wenn die entsprechende Option gesetzt ist.
+
+Das Paket definiert einen anonymen Autor vor, der ohne ID genutzt werden kann.
+
+\chexample{definechangesauthor}
+
+
+%^^A ---- Adaptation of the output
+\subsection{Anpassung der Ausgabe}
+\label{sec:ui:customizingoutput}
+
+\localtableofcontents
+
+\chnewcmd{setaddedmarkup}
+
+\chinline{setaddedmarkup}
+
+Der Befehl \chcommand{setaddedmarkup} legt fest, wie neuer Text ausgezeichnet wird.
+Ohne andere Definition gilt, dass der Text farbig oder je nach Option \choption{markup} bzw.\ \choption{addedmarkup} erscheint.
+
+Werte für die Definition:
+
+\begin{itemize}
+ \item beliebige \hologo{LaTeX}-Befehle
+ \item neuer Text wird mit "`\#1"' genutzt
+\end{itemize}
+
+\chexample{setaddedmarkup}
+
+
+\chnewcmd{setdeletedmarkup}
+
+\chinline{setdeletedmarkup}
+
+Der Befehl \chcommand{setdeletedmarkup} legt fest, wie gelöschter Text ausgezeichnet wird.
+Ohne andere Definition gilt, dass der Text durchgestrichen wird oder je nach Option \choption{markup} bzw.\ \choption{deletedmarkup} erscheint.
+
+Werte für die Definition:
+
+\begin{itemize}
+ \item beliebige \hologo{LaTeX}-Befehle
+ \item gelöschter Text wird mit "`\#1"' genutzt
+\end{itemize}
+
+Die Ausgabe ersetzten Texts ist ein Kombination von zugefügtem und gelöschten Text, daher beeinflusst deren Layoutänderung auch das Layout ersetzen Texts.
+
+\chexample{setdeletedmarkup}
+
+
+\chnewcmd{sethighlightmarkup}
+
+\chinline{sethighlightmarkup}
+
+Der Befehl \chcommand{sethighlightmarkup} legt fest, wie hervorgehobene Texte gesetzt werden.
+Ohne andere Definition gilt, dass die Hervorhebung über die Hintergrundfarbe erfolgt oder je nach Option \choption{markup} bzw.\ \choption{commentmarkup} erscheint.
+
+Werte für die Definition:
+
+\begin{itemize}
+ \item beliebige \hologo{LaTeX}-Befehle
+ \item hervorgehobener Text wird mit "`\#1"' genutzt
+ \item \chpackage{ifthenelse} boolscher Test auf farbigen Text mit ``\chcommand{isColored}''
+ \item Autorenfarbe wird mit ``authorcolor'' genutzt
+\end{itemize}
+
+\chexample{sethighlightmarkup}
+
+
+\chnewcmd{setcommentmarkup}
+
+\chinline{setcommentmarkup}
+
+Der Befehl \chcommand{setcommentmarkup} legt fest, wie Kommentare gesetzt werden.
+Ohne andere Definition gilt, dass Kommentare im Rand oder je nach Option \choption{markup} bzw.\ \choption{commentmarkup} erscheint.
+
+Werte für die Definition:
+
+\begin{itemize}
+ \item beliebige \hologo{LaTeX}-Befehle
+ \item Kommentar wird mit "`\#1"' genutzt
+ \item Autor-ID wird mit ``\#2'' genutzt
+ \item Autor-Ausgabe (ID oder Name) wird mit ``\#3'' genutzt
+ \item \chpackage{ifthenelse} boolscher Test auf anonymen Autor Text mit ``\chcommand{isAnonymous}''
+ \item \chpackage{ifthenelse} boolscher Test auf farbigen Text mit ``\chcommand{isColored}''
+ \item Autorenfarbe wird mit ``authorcolor'' genutzt
+ \item Kommentaranzahl wird mit ``authorcommentcount'' genutzt
+\end{itemize}
+
+\chexample{setcommentmarkup}
+
+
+\chnewcmd{setauthormarkup}
+
+\chinline{setauthormarkup}
+
+Der Befehl \chcommand{setauthormarkup} legt fest, wie der Autortext im Text angezeigt wird.
+Ohne andere Definition gilt, dass der Autor hochgestellt erscheint.
+
+Werte für die Definition:
+
+\begin{itemize}
+ \item beliebige \hologo{LaTeX}-Befehle
+ \item Autor-Ausgabe (ID oder Name) wird mit ``\#1'' genutzt
+\end{itemize}
+
+\chexample{setauthormarkup}
+
+
+\chnewcmd{setauthormarkupposition}
+
+\chinline{setauthormarkupposition}
+
+Der Befehl \chcommand{setauthormarkupposition} legt fest, auf welcher Seite der Autor im Text angezeigt wird.
+Ohne andere Definition gilt, dass der Autor rechts von den Änderungen erscheint.
+
+Die folgenden Werte für \emph{authormarkupposition} sind definiert:
+
+\begin{description}
+ \item [\choption{right}] rechts vom Text -- Text\textsuperscript{Autor} (default)
+ \item [\choption{left}] links vom Text -- \textsuperscript{Autor}Text
+\end{description}
+
+\chexample{setauthormarkupposition}
+
+
+\chnewcmd{setauthormarkuptext}
+
+\chinline{setauthormarkuptext}
+
+Der Befehl \chcommand{setauthormarkuptext} legt fest, welche Information des Autors im Text angezeigt wird.
+Ohne andere Definition gilt, dass die Autor-ID genutzt wird.
+
+Die folgenden Werte für \emph{authormarkuptext} sind definiert:
+
+\begin{description}
+ \item [\choption{id}] Autoren-ID -- Text\textsuperscript{ID} (default)
+ \item [\choption{name}] Autorenname -- Text\textsuperscript{Autorenname}
+\end{description}
+
+\chexample{setauthormarkuptext}
+
+
+
+\chnewcmd{settruncatewidth}
+
+\chinline{settruncatewidth}
+
+Der Befehl \chcommand{settruncatewidth} legt die Breite der Textkürzung in der Änderungsliste fest.
+Die Standardbreite ist \texttt{0.6}\chcommand{textwidth}.
+
+\chexample{settruncatewidth}
+
+
+
+\chnewcmd{setsummarywidth}
+
+\chinline{setsummarywidth}
+
+Der Befehl \chcommand{setsummarywidth} legt die Breite der Änderungsliste mit Stil \choption{summary} bzw.\ \choption{compactsummary} fest.
+Die Standardbreite ist \texttt{0.3}\chcommand{textwidth}.
+
+\chexample{setsummarywidth}
+
+
+
+\chnewcmd{setsummarytowidth}
+
+\chinline{setsummarytowidth}
+
+Der Befehl \chcommand{setsummarytowidth} legt die Breite der Änderungsliste mit Stil \choption{summary} bzw.\ \choption{compactsummary} anhand der Breite des übergebenen Texts fest.
+
+\chexample{setsummarytowidth}
+
+
+
+\chnewcmd{setsocextension}
+
+\chinline{setsocextension}
+
+Der Befehl \chcommand{setsocextension} legt die Dateierweiterung der Hilfsdatei für die Änderungszusammenfassung (soc-Datei\footnote{%
+ "`soc"' steht dabei für "`summary of changes"'.
+}) fest.
+Ohne andere Definition gilt das Suffix "`\texttt{soc}"'.
+
+Im angegebenen Beispiel würde für "`\texttt{foo.tex}"' eine Hilfsdatei erzeugt werden, die "`\texttt{foo.changes}"' bzw.\ "`\texttt{foo.chg}"' statt des Standardnamens "`\texttt{foo.soc}"' hieße.
+
+\chexample{setsocextension}
+
+\chimportant{Nutzen Sie keine Standard-\hologo{LaTeX}-Dateierweiterungen wie "`toc"' oder "`loc"', da das den normalen \hologo{LaTeX}-Lauf stören würde.}
+
+
+%^^A ---- packages
+\subsection{Benötigte Pakete}
+\label{sec:ui:packages}
+
+Das \chpackage{changes}-Paket bindet bereits Pakete ein, die für die Funktion des Pakets notwendig sind.
+Eine genauere Beschreibung der einzelnen Pakete ist in der Dokumentation der Pakete selbst zu finden.
+
+Die folgenden Pakete sind zwingend notwendig und müssen für die Nutzung des \chpackage{changes}-Pakets installiert sein:
+\begin{description}
+ \item [xifthen] stellt eine verbesserte \texttt{if}-Abfrage sowie eine \texttt{while}-Schleife zur Verfügung
+ \item [xkeyval] Eingabe von Optionen mit Werteübergabe
+ \item [xstring] verbesserte Stringoperationen
+\end{description}
+
+Die folgenden Pakete sind manchmal notwendig und müssen installiert sein, wenn sie über die entsprechende Option genutzt werden:
+\begin{description}
+ \item [pdfcolmk] wird geladen, wenn farbiger Text genutzt wird (default Markup); löst das Problem farbigen Texts über Seitenumbrüche hinweg (bei pdflatex)
+ \item [todonotes] wird geladen, wenn Kommentare als ToDo-Notizen gesetzt werden (default Markup)
+ \item [ulem] wird geladen, wenn Text durchgestrichen oder ausge-x-t wird (default Markup)
+ \item [xcolor] wird geladen, wenn farbiger Text genutzt wird (default Markup)
+\end{description}
+
+
+%^^A ---- Known problems and solutions
+\cleardoublepage
+\section{Bekannte Probleme und Lösungen}
+\label{sec:known-problems}
+
+In diesem Kapitel sammle ich die häufigsten Probleme und mir dazu bekannte Lösungen.
+Wenn Ihr Problem hier nicht aufgeführt ist, sehen Sie bitte im Issue-Tracker auf gitlab nach, ob das Problem dort beschrieben ist (es gibt eine Suche):
+
+\url{https://gitlab.com/ekleinod/changes/issues}
+
+Wenn das alles zu nichts führt, öffnen Sie bitte ein neues Issue für das Problem, beschreiben Sie das Problem genau und liefern Sie, wenn möglich, eine kleine Beispieldatei mit dem problematischen Verhalten mit.
+
+\subsection{Besondere Inhalte}
+
+Die Änderungsmarkierung von Text funktioniert recht gut, es können auch ganze Absätze markiert werden.
+Die Markierung ist eingeschränkt oder nicht möglich für:
+
+\begin{itemize}
+ \item Abbildungen
+ \item Tabellen
+ \item Überschriften
+ \item manche Kommandos
+ \item mehrere Absätze (manchmal)
+\end{itemize}
+
+Sie können versuchen, solchen Text in eine eigene Datei auszulagern, und diese mit \texttt{input} einzubinden.
+Manchmal hilft das, oft ist es einen Versuch wert.
+Danke an Charly Arenz für diesen Tip.
+
+\subsection{Fußnoten und Randnotizen}
+
+Fußnoten oder Randnotizen werden in bestimmten Umgebungen, \zB Tabellen oder der \emph{tabbing}-Umgebung, nicht korrekt gesetzt.
+Vermeiden Sie das Markup, wenn Sie diese Umgebungen benutzen.
+
+\subsection{Das \chpackage{ulem}-Paket}
+
+Ich verwende standardmäßig das \chpackage{ulem}-Paket für das Durchstreichen von Text.
+Das führt bei manchen Befehlen und Umgebungen zu Problemen, \zB
+
+\begin{itemize}
+ \item im Mathemodus
+ \item bei Verwendung des \chpackage{siunitx}-Pakets
+ \item bei Nutzung der \chcommand{citet}- oder \chcommand{citep}-Befehle
+\end{itemize}
+
+In dem Fall gibt es wenig gute Möglichkeiten, am besten ist es, das Markup für Löschungen selbst zu definieren und das \chpackage{ulem}-Paket zu vermeiden.
+Siehe
+
+\begin{itemize}
+ \item \autoref{sec:ui:options:deletedmarkup}
+ \item \autoref{sec:ui:cmd:setdeletedmarkup}
+\end{itemize}
+
+%^^A ---- Authors
+\cleardoublepage
+\section{Autorinnen und Autoren}
+\label{sec:authors}
+
+Am \chpackage{changes}-Paket haben mehrere Autorinnen und Autoren mitgewirkt.
+Viele Probleme wurden in de.comp.text.tex gelöst oder deren Lösung durch Lösungsansätzen inspiriert.
+Danke.
+
+Die Autorinnen und Autoren sind in alphabetischer Reihenfolge:
+\begin{itemize}
+ \item Chiaradonna, Silvano
+ \item Cui, Yvon
+ \item Fischer, Ulrike
+ \item Giovannini, Daniele
+ \item Kleinod, Ekkart
+ \item Mittelbach, Frank
+ \item Voss, Herbert
+ \item Wölfel, Philipp
+ \item Wolter, Steve
+\end{itemize}
+
+
+
+%^^A ---- Versions
+\cleardoublepage
+\section{Versionen}
+\label{sec:versions}
+
+Für eine Liste der verfügbaren Versionen und deren Änderungen gehen Sie bitte zu
+
+\url{https://gitlab.com/ekleinod/changes/blob/master/changelog.md}
+
+Dort sind auch die bereits implementierten aber noch nicht veröffentlichten Änderungen verzeichnet.
+
+Wenn Sie an geplanten, zukünftigen Änderungen interessiert sind, finden Sie diese unter
+
+\url{https://gitlab.com/ekleinod/changes/milestones}
+
+
+%^^A ---- copyright, license
+\cleardoublepage
+\section{Weitergabe, Copyright, Lizenz}
+
+Copyright 2007-2019 Ekkart Kleinod (\href{mailto:ekleinod@edgesoft.de}{ekleinod@edgesoft.de})
+
+Dieses Paket darf unter der "`\hologo{LaTeX} Project Public License"' Version~1.3 oder jeder späteren Version weitergegeben und/oder geändert werden.
+Die neueste Version dieser Lizenz steht auf \url{http://www.latex-project.org/lppl.txt} Version~1.3 und spätere Versionen sind Teil aller \hologo{LaTeX}-Distributionen ab Version~2005/12/01.
+
+Dieses Paket besitzt den Status "`maintained"' (verwaltet).
+Der aktuelle Verwalter dieses Pakets ist Ekkart Kleinod.
+
+Dieses Paket besteht aus den Dateien
+
+\begin{tabbing}
+ mm\=\kill
+ \>\texttt{source/latex/changes/changes.drv}\\
+ \>\texttt{source/latex/changes/changes.dtx}\\
+ \>\texttt{source/latex/changes/changes.ins}\\
+ \>\texttt{source/latex/changes/examples.dtx}\\
+ \>\texttt{source/latex/changes/README}\\
+ \>\texttt{source/latex/changes/userdoc/*.tex}\\
+
+ \>\texttt{scripts/changes/pyMergeChanges.py}
+\end{tabbing}
+
+
+und den generierten Dateien
+
+\begin{tabbing}
+ mm\=\kill
+ \>\texttt{doc/latex/changes/changes.english.pdf}\\
+ \>\texttt{doc/latex/changes/changes.english.withcode.pdf}\\
+ \>\texttt{doc/latex/changes/changes.ngerman.pdf}\\
+
+ \>\texttt{doc/latex/changes/examples/changes.example.*.tex}\\
+ \>\texttt{doc/latex/changes/examples/changes.example.*.pdf}\\
+
+ \>\texttt{tex/latex/changes/changes.sty}
+\end{tabbing}
+
+
+%^^A end of user documentation
diff --git a/macros/latex/contrib/changes/userdoc/changes.en.tex b/macros/latex/contrib/changes/userdoc/changes.en.tex
new file mode 100644
index 0000000000..2a6fb3964a
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/changes.en.tex
@@ -0,0 +1,1008 @@
+%^^A ---- introduction
+\section{Introduction}
+
+This package provides means for manual change markup.
+
+Any comments, thoughts or improvements are welcome.
+The package is maintained at \emph{gitlab}, please see
+
+\url{http://edgesoft.de/projects/latex/changes/}
+
+for links to source code access, bug and feature tracker, etc.
+If you want to contact me directly, please send an email to \href{mailto:ekleinod@edgesoft.de}{ekleinod@edgesoft.de}.
+Please start your email subject with \texttt{[changes]}.
+
+\begin{quote}
+ The changes-package allows the user to manually markup changes of text, such as additions, deletions, or replacements.
+ Changed text is shown in a different color; deleted text is striked out.
+ Additionally, text can be highlighted and/or commented.
+ The package allows free definition of additional authors and their associated color.
+ It also allows you to change the markup of changes, authors, highlights or comments.
+\end{quote}
+
+Here is a short example of change markup:
+
+\begin{quote}
+ This is \added[id=EK, comment={missing word}]{new} text.
+ In this sentence, I replace a \replaced[id=EK]{good}{bad} word.
+ And, to sum up the text changes, there is another \deleted[id=EK]{obsolete} word to delete.
+ Furthermore, text can be \highlight[id=EK]{highlighted} or just \comment[id=EK]{For the fun of it.}commented.
+\end{quote}
+
+Parallel to this manual is a folder ``examples'' which contains an extensive collection of example files, both \hologo{LaTeX} and PDF files.
+Please refer to these examples for inspiration and first problem solving.
+
+
+%^^A ---- usage
+\cleardoublepage
+\section{Using the \chpackage{changes}-package}
+\label{sec:usage}
+
+In this section a typical use case of the \chpackage{changes}-package is described.
+You can find the detailed description of the package options and new commands in \autoref{sec:ui}.
+
+We start with the text you want to change.
+You want to markup the changes for each author individually.
+Such a change markup is well-known in WYSIWYG text processors such as \emph{LibreOffice}, \emph{OpenOffice}, or \emph{Word}.
+
+The \chpackage{changes}-package was developed in order to support such change markup.
+The package provides commands for defining authors, and for marking text as added, deleted, or replaced.
+Additionally, text can be highlighted or commented.
+In order to use the package, you should follow these steps:
+
+\begin{enumerate}
+ \item use \chpackage{changes}-package
+ \item define authors
+ \item markup text changes
+ \item highlight and comment text
+ \item typeset the document with \hologo{LaTeX}
+ \item output list of changes
+ \item remove markup
+\end{enumerate}
+
+
+\minisec{Use \chpackage{changes}-package}
+
+In order to activate change management, use the \chpackage{changes}-package as follows:
+
+\chinline{usepackage_changes}
+
+respectively
+
+\chinline{usepackage_options_changes}
+
+You can use the options for defining the layout of the change markup.
+You can change the layout after using the \chpackage{changes}-package as well.
+
+For detailed information please refer to \autoref{sec:ui:options} and \autoref{sec:ui:customizingoutput}.
+
+
+\minisec{Define authors}
+
+The \chpackage{changes}-package provides a default anonymous author.
+If you want to track your changes depending on the author, you have to define the needed authors as follows:
+
+\chinline{definechangesauthor}
+
+Every author is uniquely identified through his or her id.
+You can give every author an optional name and/or color.
+
+For detailed information please refer to \autoref{sec:ui:authormanagement}.
+
+
+\minisec{Markup text changes}
+
+Now everything is set to markup the changed text.
+Please use the following commands according to your change:
+
+for added text:
+
+\chinline{added}
+
+for deleted text:
+
+\chinline{deleted}
+
+for replaced text:
+
+\chinline{replaced}
+
+Stating the author's id and/or a comment is optional.
+
+For detailed information please refer to \autoref{sec:ui:changemanagement}.
+
+
+\minisec{Highlight and comment text}
+
+Maybe you want to highlight orcomment some text?
+
+highlight text:
+
+\chinline{highlight}
+
+comment text:
+
+\chinline{comment}
+
+Stating the author's id and/or a comment for highlights is optional.
+
+For detailed information please refer to \autoref{sec:ui:comment}.
+
+
+\minisec{Typeset the document with \hologo{LaTeX}}
+
+After marking your changes in the text you are able to display them in the generated document by processing it as usual with \hologo{LaTeX}.
+By processing your document the changed text is layouted as you stated by the corresponding options and/or special commands.
+
+\minisec{Output list of changes}
+
+You can print a list of changes using:
+
+\chinline{listofchanges}
+
+The list is meant to be the analogon to the list of tables, or the list of figures.
+
+Stating the style is optional, default is \choption{style=list}.
+In order to print a quick overview of the number and kind of changes of every author, use the option \choption{style=summary} or \choption{style=compactsummary}.
+Show only specific changes by using the \choption{show} option.
+
+By running \hologo{LaTeX} the data of the list is written into an auxiliary file.
+This data is used in the next \hologo{LaTeX} run for typesetting the list of changes.
+Therefore, two \hologo{LaTeX} runs are needed after every change in order to typeset an up-to-date list of changes.
+
+For detailed information please refer to \autoref{sec:ui:overview}.
+
+
+\minisec{Remove markup}
+
+Often you want to remove the change markup after acknowledging or rejecting the changes.
+You can suppress the output of changes with:
+
+\chinline{usepackage_final_changes}
+
+In order to remove the markup from the \hologo{LaTeX} files, you have to remove the commands by hand or use the script by Yvon Cui.
+You find the script in the directory:
+
+\chinline[, language=bash]{path_script}
+
+The script removes all markups either keeping or rejecting the change.
+You can select or deselect markup from removal using the interactive mode by starting the script without options.
+
+The script requires \emph{python3}.
+
+Use the script as follows:
+
+\chinputlisting{, language=bash}{userdoc/script_pymergechanges}
+
+Run the script with no options and files for a short help text:
+
+\chinputlisting{, language=bash}{userdoc/script_pymergechanges_empty}
+
+Known issues:
+
+\begin{itemize}
+ \item removes only markup that is used in one line, not markup that spans multiple lines
+ \item problems with nested commands
+\end{itemize}
+
+
+
+
+
+%^^A ---- limitations
+\cleardoublepage
+\section{Limitations and possible enhancements}
+\label{sec:limitations}
+
+The \chpackage{changes}-package was carefully programmed and tested.
+Yet the possibility of errors in the package exists, you might encounter problem during use, or you might miss functionality.
+In that case, please go to
+
+\url{http://changes.sourceforge.net/}
+
+There you find information on how to report errors or improvements, give advice to other users, or participate in the development of the package.
+
+You can find a list of known problems and possible solutions in \autoref{sec:known-problems}.
+Please refer to the section first if your problem is known and is a solution exists.
+
+You can write me an email too, please send it to \href{mailto:ekleinod@edgesoft.de}{ekleinod@edgesoft.de}.
+In that case, please start your email subject with \texttt{[changes]}.
+
+Change markup of texts works well, it is possible to markup whole paragraphs.
+You cannot markup:
+
+\begin{itemize}
+ \item figures
+ \item tables
+ \item headings
+ \item some commands
+ \item several paragraphs (sometimes)
+\end{itemize}
+
+You can try putting such text in an extra file and include in with \texttt{input}.
+This works sometimes, give it a try.
+Kudos to Charly Arenz for this tip.
+
+
+%^^A ---- user interface
+\cleardoublepage
+\section{User interface of the \chpackage{changes}-package}
+\label{sec:ui}
+
+This section describes the user interface of the \chpackage{changes}-package, i.e.\ all options and commands of the package.
+Every option and new command is described.
+If you want to see the options and commands in action, please refer to the examples in
+
+\chinline[, language=bash]{path_doc_examples}
+
+The example files are named with the used option respectively command.
+
+%^^A -- options
+\subsection{Package Options}
+\label{sec:ui:options}
+
+\chinline{usepackage_options_changes}
+
+The package options control the behavior of the overall package, i.\,e.\ all markup commands.
+
+The following options are defined:
+
+\localtableofcontents
+
+
+
+\subsubsection{draft}
+
+\chinline{usepackage_draft_changes}
+
+The \choption{draft}-option enables markup of changes.
+The list of changes is available via \chcommand{listofchanges}.
+This option is the default option, if no other option is selected.
+
+The \chpackage{changes} package reuses the declaration of \choption{draft} in \chcommand{documentclass}.
+The local declaration of \choption{final} overrules the declaration of \choption{draft} in \chcommand{documentclass}.
+
+\subsubsection{final}
+
+\chinline{usepackage_final_changes}
+
+The \choption{final}-option disables markup of changes, only the correct text will be shown.
+The list of changes is disabled, too.
+
+The \chpackage{changes} package reuses the declaration of \choption{final} in \chcommand{documentclass}.
+The local declaration of \choption{draft} overrules the declaration of \choption{final} in \chcommand{documentclass}.
+
+
+\subsubsection{markup}
+
+\chinline{usepackage_markup_changes}
+
+The \choption{markup} option chooses a predefined visual markup of changed text.
+The default markup is chosen if no explicit markup is given.
+The markup chosen with \choption{markup} can be overwritten with the more special markup options \choption{addedmarkup}, \choption{deletedmarkup}, \choption{commentmarkup}, or \choption{highlightmarkup}.
+
+The following values for \emph{markup} are defined:
+
+\begin{description}
+ \item [\choption{default}] default markup for added and deleted text, comments and highlighted text (default markup)
+ \item [\choption{underlined}] underlined for added text, wavy underlined for highlighted text, default for deleted text, and comments
+ \item [\choption{bfit}] bold added text, italic deleted text, default for comments and highlighted text
+ \item [\choption{nocolor}] no colored markup, underlined for added text, wavy underlined for highlighted text, default for deleted text and comments
+\end{description}
+
+\chexample{usepackage_markup_changes}
+
+When changing from color markup to markup without color and vice versa, some errors occur if an auxiliary file exists.
+Please ignore the errors, they vanish in the second run.
+
+\subsubsection{addedmarkup}
+
+\chinline{usepackage_addedmarkup_changes}
+
+The \choption{addedmarkup} option chooses a predefined visual markup of added text.
+The default markup is chosen if no explicit markup is given.
+The option \choption{addedmarkup} overwrites the markup chosen with \choption{markup}.
+
+The following values for \emph{addedmarkup} are defined:
+
+\begin{description}
+ \item [\choption{colored}] no text markup, just coloring -- {\color{orange} example} (default)
+ \item [\choption{uline}] underlined text -- \uline{example}
+ \item [\choption{uuline}] double underlined text -- \uuline{example}
+ \item [\choption{uwave}] wavy underlined text -- \uwave{example}
+ \item [\choption{dashuline}] dashed underlined text -- \dashuline{example}
+ \item [\choption{dotuline}] dotted underlined text -- \dotuline{example}
+ \item [\choption{bf}] bold text -- \textbf{example}
+ \item [\choption{it}] italic text -- \textit{example}
+ \item [\choption{sl}] slanted text -- \textsl{example}
+ \item [\choption{em}] emphasized text -- \emph{example}
+\end{description}
+
+The output of replaced text is a combination of added and deleted text, thus any change in their layout influences the layout of replaced text.
+
+\chexample{usepackage_addedmarkup_changes}
+
+
+\subsubsection{deletedmarkup}
+\label{sec:ui:options:deletedmarkup}
+
+\chinline{usepackage_deletedmarkup_changes}
+
+The \choption{deletedmarkup} option chooses a predefined visual markup of deleted texty.
+The default markup is chosen if no explicit markup is given.
+The option \choption{deletedmarkup} overwrites the markup chosen with \choption{markup}.
+
+The following values for \emph{deletedmarkup} are defined:
+
+\begin{description}
+ \item [\choption{sout}] striked out text -- \sout{example} (default)
+ \item [\choption{xout}] crossed out text -- \xout{example}
+ \item [\choption{colored}] no text markup, just coloring -- {\color{orange} example}
+ \item [\choption{uline}] underlined text -- \uline{example}
+ \item [\choption{uuline}] double underlined text -- \uuline{example}
+ \item [\choption{uwave}] wavy underlined text -- \uwave{example}
+ \item [\choption{dashuline}] dashed underlined text -- \dashuline{example}
+ \item [\choption{dotuline}] dotted underlined text -- \dotuline{example}
+ \item [\choption{bf}] bold text -- \textbf{example}
+ \item [\choption{it}] italic text -- \textit{example}
+ \item [\choption{sl}] slanted text -- \textsl{example}
+ \item [\choption{em}] emphasized text -- \emph{example}
+\end{description}
+
+The output of replaced text is a combination of added and deleted text, thus any change in their layout influences the layout of replaced text.
+
+\chexample{usepackage_deletedmarkup_changes}
+
+
+\subsubsection{highlightmarkup}
+
+\chinline{usepackage_highlightmarkup_changes}
+
+The \choption{highlightmarkup} option chooses a predefined visual markup for highlighted text.
+The default markup is chosen if no explicit markup is given.
+The option \choption{highlightmarkup} overwrites the markup chosen with \choption{markup}.
+
+The following values for \emph{highlightmarkup} are defined:
+
+\begin{description}
+ \item [\choption{background}] markup by background color -- \colorbox{orange!30}{example} (default)
+ \item [\choption{uuline}] double underlined text -- \uuline{example}
+ \item [\choption{uwave}] wavy underlined text -- \uwave{example}
+\end{description}
+
+\chexample{usepackage_highlightmarkup_changes}
+
+
+
+\subsubsection{commentmarkup}
+
+\chinline{usepackage_commentmarkup_changes}
+
+The \choption{commentmarkup} option chooses a predefined visual markup for comments.
+The default markup is chosen if no explicit markup is given.
+The option \choption{commentmarkup} overwrites the markup chosen with \choption{markup}.
+
+The following values for \emph{commentmarkup} are defined:
+
+\begin{description}
+ \item [\choption{todo}] comment as todo note, which is not added to list of todos \todo{example comment}(default)
+ \item [\choption{margin}] comment in margin\marginpar{example comment}
+ \item [\choption{footnote}] comment as footnote\footnote{example comment}
+ \item [\choption{uwave}] wavy underlined text -- \uwave{example comment}
+\end{description}
+
+\chexample{usepackage_commentmarkup_changes}
+
+
+\subsubsection{authormarkup}
+
+\chinline{usepackage_authormarkup_changes}
+
+The \choption{authormarkup} option chooses a predefined visual markup of the author's identification.
+The default markup is chosen if no explicit markup is given.
+
+The following values for \emph{authormarkup} are defined:
+
+\begin{description}
+ \item [\choption{superscript}] superscripted text -- text\textsuperscript{author} (default)
+ \item [\choption{subscript}] subscripted text -- text\textsubscript{author}
+ \item [\choption{brackets}] text in brackets -- text(author)
+ \item [\choption{footnote}] text in footnote -- text\footnote{author}
+ \item [\choption{none}] no author identification
+\end{description}
+
+\chexample{usepackage_authormarkup_changes}
+
+
+\subsubsection{authormarkupposition}
+
+\chinline{usepackage_authormarkupposition_changes}
+
+The \choption{authormarkupposition} option chooses the position of the author's identification.
+The default value is chosen if no explicit markup is given.
+
+The following values for \emph{authormarkupposition} are defined:
+
+\begin{description}
+ \item [\choption{right}] right of the text -- text\textsuperscript{author} (default)
+ \item [\choption{left}] left of the text -- \textsuperscript{author}text
+\end{description}
+
+\chexample{usepackage_authormarkupposition_changes}
+
+
+
+\subsubsection{authormarkuptext}
+
+\chinline{usepackage_authormarkuptext_changes}
+
+The \choption{authormarkuptext} option chooses the text that is used for the author's identification.
+The default value is chosen if no explicit markup is given.
+
+The following values for \emph{authormarkuptext} are defined:
+
+\begin{description}
+ \item [\choption{id}] author's id -- text\textsuperscript{id} (default)
+ \item [\choption{name}] author's name -- text\textsuperscript{authorname}
+\end{description}
+
+\chexample{usepackage_authormarkuptext_changes}
+
+
+\subsubsection{todonotes}
+
+\chinline{usepackage_todonotes_changes}
+
+Options for the \chpackage{todonotes} package can be specified as parameters of the \choption{todonotes}-option.
+Several options or options with special characters have to be put in curly brackets.
+
+\chexample{usepackage_todonotes_changes}
+
+
+
+\subsubsection{truncate}
+
+\chinline{usepackage_truncate_changes}
+
+Options for the \chpackage{truncate} package can be specified as parameters of the \choption{truncate}-option.
+Several options or options with special characters have to be put in curly brackets.
+
+\chexample{usepackage_truncate_changes}
+
+
+\subsubsection{ulem}
+
+\chinline{usepackage_ulem_changes}
+
+Options for the \chpackage{ulem} package can be specified as parameters of the \choption{ulem}-option.
+Several options or options with special characters have to be put in curly brackets.
+
+\chexample{usepackage_ulem_changes}
+
+
+\subsubsection{xcolor}
+
+\chinline{usepackage_xcolor_changes}
+
+Options for the \chpackage{xcolor} package can be specified as parameters of the \choption{xcolor}-option.
+Several options or options with special characters have to be put in curly brackets.
+
+\chexample{usepackage_xcolor_changes}
+
+
+
+%^^A -- Change management ----------------------------------------------------------
+\subsection{Change management}
+\label{sec:ui:changemanagement}
+
+\localtableofcontents
+
+\chnewcmd{added}
+
+\chinline{added}
+
+The command \chcommand{added} marks newly added text.
+The new text is given in curly braces.
+
+The optional argument contains key-value-pairs for author-id and comment.
+The author-id has to be defined using \chcommand{definechangesauthor}.
+If the comment contains special characters or spaces, use curly brackets to enclose the comment.
+
+If a comment is given, the direct author markup at the changes text is omitted, because the author is printed in the comment.
+
+\chexample{added}
+\chresult{added}
+
+
+\chnewcmd{deleted}
+
+\chinline{deleted}
+
+The command \chcommand{deleted} marks deleted text.
+The deleted text is given in curly braces.
+
+For the optional arguments see \chcommand{added} (\autoref{sec:ui:cmd:added}).
+
+\chexample{deleted}
+\chresult{deleted}
+
+
+
+\chnewcmd{replaced}
+
+\chinline{replaced}
+
+The command \chcommand{replaced} marks replaced text.
+The new and the replaced text are given in this order in curly braces.
+
+For the optional arguments see \chcommand{added} (\autoref{sec:ui:cmd:added}).
+
+The output of replaced text is a combination of added and deleted text, thus any change in their layout influences the layout of replaced text.
+
+\chexample{replaced}
+\chresult{replaced}
+
+
+
+%^^A -- Highlighting and Comments ------------------------------------------------------
+\subsection{Highlighting and Comments}
+\label{sec:ui:comment}
+
+\localtableofcontents
+
+\chnewcmd{highlight}
+
+\chinline{highlight}
+
+The command \chcommand{highlight} highlights text.
+The highlighted text is given in curly braces.
+
+For the optional arguments see \chcommand{added} (\autoref{sec:ui:cmd:added}).
+
+\chexample{highlight}
+\chresult{highlight}
+
+
+\chnewcmd{comment}
+
+\chinline{comment}
+
+The command \chcommand{comments} adds a comment to the document.
+The comment is given in curly braces.
+
+The command has only one optional argument: a key-value-pair for the author-id.
+The author-id has to be defined using \chcommand{definechangesauthor}.
+
+The comments are numbered automatically, the number is printed in the comment.
+
+\chexample{comment}
+\chresult{comment}
+
+
+
+
+%^^A -- Overview of changes
+\subsection{Overview of changes}
+\label{sec:ui:overview}
+
+
+\chnewcmd{listofchanges}
+
+\chinline{listofchanges}
+
+The command \chcommand{listofchanges} outputs a list or summary of changes.
+The first \hologo{LaTeX}-run creates an auxiliary file, the second run uses the data of this file.
+Therefore you need two \hologo{LaTeX}-runs for an up-to-date list of changes.
+
+There are three optional arguments:
+
+\begin{description}
+ \item[\choption{style}] list style
+ \item[\choption{title}] individual title
+ \item[\choption{show}] markup types
+\end{description}
+
+\paragraph{style}
+The \choption{style} argument defines the layout of the list of changes.
+Three styles are defined:
+
+\begin{description}
+ \item[\choption{list}] prints the list of changes like a list of figures (default)
+ \item[\choption{summary}] prints the number of changes grouped by author
+ \item[\choption{compactsummary}] same as \choption{summary} but entries with count 0 are omitted
+\end{description}
+
+\paragraph{title}
+The \choption{title} argument is used to change the title for the list.
+If you want to use special characters or spaces in the title, enclose it in curly braces.
+
+\paragraph{show}
+The \choption{show} argument defines which types of change markup are shown in the list of changes.
+You can combine the values using the \texttt{|} character.
+For example if you want to show all additions and deletions, use \texttt{show=added|deleted}.
+
+The following values are defined:
+
+\begin{description}
+ \item[\choption{all}] show all types (default)
+ \item[\choption{added}] show only additions
+ \item[\choption{deleted}] show only deletions
+ \item[\choption{replaced}] show only replacements
+ \item[\choption{highlight}] show only highlights
+ \item[\choption{comment}] show only comments
+\end{description}
+
+\chexample{listofchanges}
+
+
+
+%^^A -- Author management -----------------------------------------------------
+\subsection{Author management}
+\label{sec:ui:authormanagement}
+
+\chnewcmd{definechangesauthor}
+
+\chinline{definechangesauthor}
+
+The command \chcommand{definechangesauthor} defines a new author for changes.
+You have to define a unique author's id, special characters or spaces are not allowed within the author's id.
+
+You may define a corresponding color and the author's name.
+If you do not define a color, blue is used.
+
+The author's name is used in the list of changes and in the markup if you set the corresponding option.
+
+The package predefines one anonymous author without id.
+
+\chexample{definechangesauthor}
+
+
+%^^A -- Adaptation of the output -----------------------------------------------------
+\subsection{Adaptation of the output}
+\label{sec:ui:customizingoutput}
+
+\localtableofcontents
+
+\chnewcmd{setaddedmarkup}
+
+\chinline{setaddedmarkup}
+
+The command \chcommand{setaddedmarkup} defines the layout of added text.
+The default markup is colored text, or the markup set with the option \choption{markup} respectively \choption{addedmarkup}.
+
+Values for definition:
+
+\begin{itemize}
+ \item any \hologo{LaTeX}-commands
+ \item added text can be used with ``\#1''
+\end{itemize}
+
+The output of replaced text is a combination of added and deleted text, thus any change in their layout influences the layout of replaced text.
+
+\chexample{setaddedmarkup}
+
+
+\chnewcmd{setdeletedmarkup}
+
+\chinline{setdeletedmarkup}
+
+The command \chcommand{setdeletedmarkup} defines the layout of deleted text.
+The default markup is striked-out, or the markup set with the option \choption{markup} respectively \choption{deletedmarkup}.
+
+Values for definition:
+
+\begin{itemize}
+ \item any \hologo{LaTeX}-commands
+ \item deleted text can be used with ``\#1''
+\end{itemize}
+
+The output of replaced text is a combination of added and deleted text, thus any change in their layout influences the layout of replaced text.
+
+\chexample{setdeletedmarkup}
+
+
+\chnewcmd{sethighlightmarkup}
+
+\chinline{sethighlightmarkup}
+
+The command \chcommand{sethighlightmarkup} defines the layout of highlighted text.
+The default markup is via a background color, or the markup set with the option \choption{markup} respectively \choption{highlightmarkup}.
+
+Values for definition:
+
+\begin{itemize}
+ \item any \hologo{LaTeX}-commands
+ \item highlighted text can be used with ``\#1''
+ \item \chpackage{ifthenelse} boolean test for colored text ``\chcommand{isColored}''
+ \item author's color can be used with color ``authorcolor''
+\end{itemize}
+
+\chexample{sethighlightmarkup}
+
+
+\chnewcmd{setcommentmarkup}
+
+\chinline{setcommentmarkup}
+
+The command \chcommand{setcommentmarkup} defines the layout of comments.
+The default markup is a margin note, or the markup set with the option \choption{markup} respectively \choption{commentmarkup}.
+
+Values for definition:
+
+\begin{itemize}
+ \item any \hologo{LaTeX}-commands
+ \item comment can be used with ``\#1''
+ \item author's id can be used with ``\#2''
+ \item author output (id or name) can be used with ``\#3''
+ \item \chpackage{ifthenelse} boolean test for anonymous author ``\chcommand{isAnonymous}''
+ \item \chpackage{ifthenelse} boolean test for colored text ``\chcommand{isColored}''
+ \item author's color can be used with color ``authorcolor''
+ \item comment count of the autor can be used with counter ``authorcommentcount''
+\end{itemize}
+
+\chexample{setcommentmarkup}
+
+
+\chnewcmd{setauthormarkup}
+
+\chinline{setauthormarkup}
+
+The command \chcommand{setauthormarkup} defines the layout of the author's markup in the text.
+The default markup is a superscripted author's text.
+
+Values for definition:
+
+\begin{itemize}
+ \item any \hologo{LaTeX}-commands
+ \item author output (id or name) can be used with ``\#1''
+\end{itemize}
+
+\chexample{setauthormarkup}
+
+
+\chnewcmd{setauthormarkupposition}
+
+\chinline{setauthormarkupposition}
+
+The command \chcommand{setauthormarkupposition} defines the position of the author's markup relative to the changed text.
+The default position is right of the changed text.
+
+The following values for \emph{authormarkupposition} are defined:
+
+\begin{description}
+ \item [\choption{right}] right of the text -- text\textsuperscript{author} (default)
+ \item [\choption{left}] left of the text -- \textsuperscript{author}text
+\end{description}
+
+\chexample{setauthormarkupposition}
+
+
+\chnewcmd{setauthormarkuptext}
+
+\chinline{setauthormarkuptext}
+
+The command \chcommand{setauthormarkuptext} defines the text for the author's markup.
+The default markup is the author's id.
+
+The following values for \emph{authormarkuptext} are defined:
+
+\begin{description}
+ \item [\choption{id}] author's id -- text\textsuperscript{id} (default)
+ \item [\choption{name}] author's name -- text\textsuperscript{authorname}
+\end{description}
+
+\chexample{setauthormarkuptext}
+
+
+
+\chnewcmd{settruncatewidth}
+
+\chinline{settruncatewidth}
+
+The command \chcommand{settruncatewidth} sets the width of the truncation in the list of changes to the given width.
+The default width is \texttt{0.6}\chcommand{textwidth}.
+
+\chexample{settruncatewidth}
+
+
+
+\chnewcmd{setsummarywidth}
+
+\chinline{setsummarywidth}
+
+The command \chcommand{setsummarywidth} sets the width of the list of changes in summary style to the given width.
+The default width is \texttt{0.3}\chcommand{textwidth}.
+
+\chexample{setsummarywidth}
+
+
+
+\chnewcmd{setsummarytowidth}
+
+\chinline{setsummarytowidth}
+
+The command \chcommand{setsummarytowidth} sets the width of the list of changes in summary style to the width of the given text.
+
+\chexample{setsummarytowidth}
+
+
+
+\chnewcmd{setsocextension}
+
+\chinline{setsocextension}
+
+The command \chcommand{setsocextension} sets the extension of the auxiliary file for the summary of changes (soc-file\footnote{%
+ ``soc'' stands for ``summary of changes''.
+}).
+The default extension is ``\texttt{soc}''.
+
+In the example, the soc-file for ``\texttt{foo.tex}'' would be named ``\texttt{foo.changes}'' resp.\ ``\texttt{foo.chg}'' instead of the default name ``\texttt{foo.soc}''.
+
+\chexample{setsocextension}
+
+\chimportant{Do not use a \hologo{LaTeX} standard file extension, such as ``toc'' or ``loc'', as this would collide with the normal \hologo{LaTeX} run.}
+
+
+
+%^^A -- packages
+\subsection{Used packages}
+\label{sec:ui:packages}
+
+The \chpackage{changes}-package uses already existing packages for it's functions.
+You will find detailed description of the packages in their distributions.
+
+The following packages are always required and have to be installed for the \chpackage{changes}-package:
+\begin{description}
+ \item [xifthen] provides an enhanced \chcommand{if}-command as well as a \texttt{while}-loop
+ \item [xkeyval] provides options with key-value-pairs
+ \item [xstring] improves string operations
+\end{description}
+
+The following packages are sometimes required and have to be installed if used by the corresponding option:
+\begin{description}
+ \item [pdfcolmk] loaded if colored text is used for markup (default markup); solves the problem of colored text and page breaks (with pdflatex)
+ \item [todonotes] loaded if comments are layouted as todo notes (default markup)
+ \item [ulem] loaded if text has to be striked or exed out (default markup)
+ \item [xcolor] loaded if colored text is used for markup (default markup)
+\end{description}
+
+
+%^^A ---- Known problems and solutions
+\cleardoublepage
+\section{Known problems and solutions}
+\label{sec:known-problems}
+
+This section contains known problems and their solutions as far as I know some.
+If your problem is not listed here, please see the issue tracker on gitlab if it contains your problem (a search exists):
+
+\url{https://gitlab.com/ekleinod/changes/issues}
+
+If your problem is not listed, please open a new issue for your problem.
+Describe your problem as specific as possible, if possible, include a small example file with the problematic behavior.
+
+\subsection{Special content}
+
+Change markup of texts works well, it is possible to markup whole paragraphs.
+You cannot markup:
+
+\begin{itemize}
+ \item figures
+ \item tables
+ \item headings
+ \item some commands
+ \item several paragraphs (sometimes)
+\end{itemize}
+
+You can try putting such text in an extra file and include in with \texttt{input}.
+This works sometimes, give it a try.
+Kudos to Charly Arenz for this tip.
+
+\subsection{Footnotes and margin notes}
+
+There is a problem of typesetting footnotes or margin notes in special environments, such as tables or tabbings.
+Avoid such markup when using these environments.
+
+
+\subsection{The \chpackage{ulem} package}
+
+I am using the \chpackage{ulem} package for striking out text as default.
+This leads to problems with some commands or environments, e.g.
+
+\begin{itemize}
+ \item in math mode
+ \item when using the \chpackage{siunitx} package
+ \item when using the \chcommand{citet} or \chcommand{citep} command
+\end{itemize}
+
+In that case there are only a few good solutions, the best way is to avoid using the \chpackage{ulem} package by defining your own deletion markup.
+See
+
+\begin{itemize}
+ \item \autoref{sec:ui:options:deletedmarkup}
+ \item \autoref{sec:ui:cmd:setdeletedmarkup}
+\end{itemize}
+
+
+%^^A -- Authors -------------------------------------------------------------
+\cleardoublepage
+\section{Authors}
+\label{sec:authors}
+
+Several authors contributed to the \chpackage{changes}-package.
+Many bugs and problems were solved or their solution inspired via de.comp.text.tex.
+Thanks.
+
+The authors are (in alphabetical order):
+\begin{itemize}
+ \item Chiaradonna, Silvano
+ \item Cui, Yvon
+ \item Fischer, Ulrike
+ \item Giovannini, Daniele
+ \item Kleinod, Ekkart
+ \item Mittelbach, Frank
+ \item Voss, Herbert
+ \item Wölfel, Philipp
+ \item Wolter, Steve
+\end{itemize}
+
+
+
+%^^A -- Versions -------------------------------------------------------------
+\cleardoublepage
+\section{Versions}
+\label{sec:versions}
+
+For a list of versions and the changes within these version, please refer to
+
+\url{https://gitlab.com/ekleinod/changes/blob/master/changelog.md}
+
+Here you too find the implemented but not released changes for the new version.
+
+If you are interested in planned new features, please see
+
+\url{https://gitlab.com/ekleinod/changes/milestones}
+
+
+%^^A ---- copyright, license
+\cleardoublepage
+\section{Distribution, Copyright, License}
+
+Copyright 2007-2019 Ekkart Kleinod (\href{mailto:ekleinod@edgesoft.de}{ekleinod@edgesoft.de})
+
+This work may be distributed and/or modified under the conditions of the \hologo{LaTeX} Project Public License, either version~1.3 of this license or any later version.
+The latest version of this license is in \url{http://www.latex-project.org/lppl.txt} and version~1.3 or later is part of all distributions of \hologo{LaTeX} version 2005/12/01 or later.
+
+This work has the LPPL maintenance status ``maintained''.
+The current maintainer of this work is Ekkart Kleinod.
+
+This work consists of the files
+
+\begin{tabbing}
+ mm\=\kill
+ \>\texttt{source/latex/changes/changes.drv}\\
+ \>\texttt{source/latex/changes/changes.dtx}\\
+ \>\texttt{source/latex/changes/changes.ins}\\
+ \>\texttt{source/latex/changes/examples.dtx}\\
+ \>\texttt{source/latex/changes/README}\\
+ \>\texttt{source/latex/changes/userdoc/*.tex}\\
+
+ \>\texttt{scripts/changes/pyMergeChanges.py}
+\end{tabbing}
+
+
+and the derived files
+
+\begin{tabbing}
+ mm\=\kill
+ \>\texttt{doc/latex/changes/changes.english.pdf}\\
+ \>\texttt{doc/latex/changes/changes.english.withcode.pdf}\\
+ \>\texttt{doc/latex/changes/changes.ngerman.pdf}\\
+
+ \>\texttt{doc/latex/changes/examples/changes.example.*.tex}\\
+ \>\texttt{doc/latex/changes/examples/changes.example.*.pdf}\\
+
+ \>\texttt{tex/latex/changes/changes.sty}
+\end{tabbing}
+
+
+%^^A end of user documentation
diff --git a/macros/latex/contrib/changes/userdoc/ex_added.tex b/macros/latex/contrib/changes/userdoc/ex_added.tex
new file mode 100644
index 0000000000..917cd78746
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_added.tex
@@ -0,0 +1,4 @@
+This is \added{new} text.
+This is \added[id=EK]{new} text too.
+This is more \added[id=EK, comment={has to be in it}]{new} text.
+This is the last \added[comment=anonymous]{new} text.
diff --git a/macros/latex/contrib/changes/userdoc/ex_comment.tex b/macros/latex/contrib/changes/userdoc/ex_comment.tex
new file mode 100644
index 0000000000..2b0655a2c4
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_comment.tex
@@ -0,0 +1,2 @@
+This is \comment{Sure}commented text.
+This is \comment[id=EK]{Correct.}commented text too.
diff --git a/macros/latex/contrib/changes/userdoc/ex_definechangesauthor.tex b/macros/latex/contrib/changes/userdoc/ex_definechangesauthor.tex
new file mode 100644
index 0000000000..278fcc6e04
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_definechangesauthor.tex
@@ -0,0 +1,4 @@
+\definechangesauthor{EK}
+\definechangesauthor[color=orange]{EK}
+\definechangesauthor[name={Ekkart Kleinod}]{EK}
+\definechangesauthor[name={Ekkart Kleinod}, color=orange]{EK}
diff --git a/macros/latex/contrib/changes/userdoc/ex_deleted.tex b/macros/latex/contrib/changes/userdoc/ex_deleted.tex
new file mode 100644
index 0000000000..3ae710b378
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_deleted.tex
@@ -0,0 +1,4 @@
+This is \deleted{old} text.
+This is \deleted[id=EK]{old} text too.
+This is more \deleted[id=EK, comment={too old}]{old} text.
+This is the last \deleted[comment=away]{old} text.
diff --git a/macros/latex/contrib/changes/userdoc/ex_highlight.tex b/macros/latex/contrib/changes/userdoc/ex_highlight.tex
new file mode 100644
index 0000000000..f7ae9fcfb5
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_highlight.tex
@@ -0,0 +1,4 @@
+This is \highlight{highlighted} text.
+This is \highlight[id=EK]{highlighted} text too.
+This is more \highlight[id=EK, comment={Good one.}]{highlighted} text.
+This is the last \highlight[comment=remember]{highlighted} text.
diff --git a/macros/latex/contrib/changes/userdoc/ex_listofchanges.tex b/macros/latex/contrib/changes/userdoc/ex_listofchanges.tex
new file mode 100644
index 0000000000..28670de33e
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_listofchanges.tex
@@ -0,0 +1,5 @@
+\listofchanges
+\listofchanges[style=list] !\Corresponds! \listofchanges
+\listofchanges[style=summary, title={My Summary}]
+\listofchanges[title={List of comments}, show=comment]}
+\listofchanges[style=compactsummary, show=added|deleted|replaced, title={Text changes}]}
diff --git a/macros/latex/contrib/changes/userdoc/ex_replaced.tex b/macros/latex/contrib/changes/userdoc/ex_replaced.tex
new file mode 100644
index 0000000000..e1040929f7
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_replaced.tex
@@ -0,0 +1,4 @@
+This is \replaced{new}{replaced} text.
+This is \replaced[id=EK]{new}{replaced} text too.
+This is more \replaced[id=EK, comment={better}]{new}{replaced} text.
+This is the last \replaced[comment=improved]{new}{replaced} text.
diff --git a/macros/latex/contrib/changes/userdoc/ex_setaddedmarkup.tex b/macros/latex/contrib/changes/userdoc/ex_setaddedmarkup.tex
new file mode 100644
index 0000000000..49e9386fc3
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setaddedmarkup.tex
@@ -0,0 +1,2 @@
+\setaddedmarkup{\emph{#1}}
+\setaddedmarkup{+++: #1}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setauthormarkup.tex b/macros/latex/contrib/changes/userdoc/ex_setauthormarkup.tex
new file mode 100644
index 0000000000..51592c856b
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setauthormarkup.tex
@@ -0,0 +1,3 @@
+\setauthormarkup{(#1)}
+\setauthormarkup{(#1)~--~}
+\setauthormarkup{\marginpar{#1}}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setauthormarkupposition.tex b/macros/latex/contrib/changes/userdoc/ex_setauthormarkupposition.tex
new file mode 100644
index 0000000000..a94425ea8a
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setauthormarkupposition.tex
@@ -0,0 +1,2 @@
+\setauthormarkupposition{right}
+\setauthormarkupposition{left}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setauthormarkuptext.tex b/macros/latex/contrib/changes/userdoc/ex_setauthormarkuptext.tex
new file mode 100644
index 0000000000..f9b15959f5
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setauthormarkuptext.tex
@@ -0,0 +1,2 @@
+\setauthormarkuptext{id}
+\setauthormarkuptext{name}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setcommentmarkup.tex b/macros/latex/contrib/changes/userdoc/ex_setcommentmarkup.tex
new file mode 100644
index 0000000000..121e2d9dc8
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setcommentmarkup.tex
@@ -0,0 +1,4 @@
+\setcommentmarkup{-- #1 --}
+\setcommentmarkup{\ifthenelse{\isColored}{\color{authorcolor}}{}#1}
+\setcommentmarkup{\ifthenelse{\isAnonymous{#2}}{}{\textbf{#3: }}#1}
+\setcommentmarkup{[\arabic{authorcommentcount}] #1}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setdeletedmarkup.tex b/macros/latex/contrib/changes/userdoc/ex_setdeletedmarkup.tex
new file mode 100644
index 0000000000..f7ed2e2114
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setdeletedmarkup.tex
@@ -0,0 +1,2 @@
+\setdeletedmarkup{\emph{#1}}
+\setdeletedmarkup{---: #1}
diff --git a/macros/latex/contrib/changes/userdoc/ex_sethighlightmarkup.tex b/macros/latex/contrib/changes/userdoc/ex_sethighlightmarkup.tex
new file mode 100644
index 0000000000..e731735ce2
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_sethighlightmarkup.tex
@@ -0,0 +1,2 @@
+\sethighlightmarkup{\emph{#1}}
+\sethighlightmarkup{\ifthenelse{\isColored}{\color{authorcolor}}{}\#\#: #1}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setsocextension.tex b/macros/latex/contrib/changes/userdoc/ex_setsocextension.tex
new file mode 100644
index 0000000000..381c411114
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setsocextension.tex
@@ -0,0 +1,2 @@
+\setsocextension{changes}
+\setsocextension{chg}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setsummarytowidth.tex b/macros/latex/contrib/changes/userdoc/ex_setsummarytowidth.tex
new file mode 100644
index 0000000000..ad5a04fe3e
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setsummarytowidth.tex
@@ -0,0 +1,2 @@
+\setsummarytowidth{Highlighted \qquad}
+\setsummarytowidth{The longest text you can imagine for the summary.}
diff --git a/macros/latex/contrib/changes/userdoc/ex_setsummarywidth.tex b/macros/latex/contrib/changes/userdoc/ex_setsummarywidth.tex
new file mode 100644
index 0000000000..75cfda0de5
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_setsummarywidth.tex
@@ -0,0 +1,2 @@
+\setsummarywidth{3cm}
+\setsummarywidth{.5\textwidth}
diff --git a/macros/latex/contrib/changes/userdoc/ex_settruncatewidth.tex b/macros/latex/contrib/changes/userdoc/ex_settruncatewidth.tex
new file mode 100644
index 0000000000..e9b76536f6
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_settruncatewidth.tex
@@ -0,0 +1,2 @@
+\settruncatewidth{5cm}
+\settruncatewidth{.3\textwidth}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_addedmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_addedmarkup_changes.tex
new file mode 100644
index 0000000000..32a2415bf3
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_addedmarkup_changes.tex
@@ -0,0 +1,3 @@
+\usepackage[addedmarkup=colored]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[addedmarkup=uline]{changes}
+\usepackage[addedmarkup=bf]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkup_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkup_changes.tex
new file mode 100644
index 0000000000..4008a8f784
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkup_changes.tex
@@ -0,0 +1,3 @@
+\usepackage[authormarkup=superscript]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[authormarkup=brackets]{changes}
+\usepackage[authormarkup=none]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkupposition_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkupposition_changes.tex
new file mode 100644
index 0000000000..9467a99c55
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkupposition_changes.tex
@@ -0,0 +1,2 @@
+\usepackage[authormarkupposition=right]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[authormarkupposition=left]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkuptext_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkuptext_changes.tex
new file mode 100644
index 0000000000..9d07908314
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_authormarkuptext_changes.tex
@@ -0,0 +1,2 @@
+\usepackage[authormarkuptext=id]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[authormarkuptext=name]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_commentmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_commentmarkup_changes.tex
new file mode 100644
index 0000000000..5d590fa14f
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_commentmarkup_changes.tex
@@ -0,0 +1,3 @@
+\usepackage[commentmarkup=todo]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[commentmarkup=footnote]{changes}
+\usepackage[commentmarkup=uwave]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_deletedmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_deletedmarkup_changes.tex
new file mode 100644
index 0000000000..474ad61388
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_deletedmarkup_changes.tex
@@ -0,0 +1,3 @@
+\usepackage[deletedmarkup=sout]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[deletedmarkup=xout]{changes}
+\usepackage[deletedmarkup=uwave]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_highlightmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_highlightmarkup_changes.tex
new file mode 100644
index 0000000000..282d033540
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_highlightmarkup_changes.tex
@@ -0,0 +1,2 @@
+\usepackage[highlightmarkup=background]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[highlightmarkup=uuline]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_markup_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_markup_changes.tex
new file mode 100644
index 0000000000..897656139c
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_markup_changes.tex
@@ -0,0 +1,4 @@
+\usepackage[markup=default]{changes} !\Corresponds! \usepackage{changes}
+\usepackage[markup=underlined]{changes}
+\usepackage[markup=bfit]{changes}
+\usepackage[markup=nocolor]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_todonotes_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_todonotes_changes.tex
new file mode 100644
index 0000000000..be450838ed
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_todonotes_changes.tex
@@ -0,0 +1 @@
+\usepackage[todonotes={textsize=tiny}]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_truncate_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_truncate_changes.tex
new file mode 100644
index 0000000000..075ec61a80
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_truncate_changes.tex
@@ -0,0 +1 @@
+\usepackage[truncate=hyphenate]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_ulem_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_ulem_changes.tex
new file mode 100644
index 0000000000..54aba86502
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_ulem_changes.tex
@@ -0,0 +1,2 @@
+\usepackage[ulem=UWforbf]{changes}
+\usepackage[ulem={normalem,normalbf}]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/ex_usepackage_xcolor_changes.tex b/macros/latex/contrib/changes/userdoc/ex_usepackage_xcolor_changes.tex
new file mode 100644
index 0000000000..36409ef3e4
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/ex_usepackage_xcolor_changes.tex
@@ -0,0 +1,2 @@
+\usepackage[xcolor=dvipdf]{changes}
+\usepackage[xcolor={dvipdf,gray}]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_added.tex b/macros/latex/contrib/changes/userdoc/in_added.tex
new file mode 100644
index 0000000000..0bd19a7a55
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_added.tex
@@ -0,0 +1 @@
+\added[id=<id>, comment=<comment>]{<new text>}
diff --git a/macros/latex/contrib/changes/userdoc/in_comment.tex b/macros/latex/contrib/changes/userdoc/in_comment.tex
new file mode 100644
index 0000000000..851b22f22f
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_comment.tex
@@ -0,0 +1 @@
+\comment[id=<id>]{<comment>}
diff --git a/macros/latex/contrib/changes/userdoc/in_definechangesauthor.tex b/macros/latex/contrib/changes/userdoc/in_definechangesauthor.tex
new file mode 100644
index 0000000000..196c911dec
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_definechangesauthor.tex
@@ -0,0 +1 @@
+\definechangesauthor[name=<name>, color=<color>]{<id>}
diff --git a/macros/latex/contrib/changes/userdoc/in_deleted.tex b/macros/latex/contrib/changes/userdoc/in_deleted.tex
new file mode 100644
index 0000000000..0a6b6fa444
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_deleted.tex
@@ -0,0 +1 @@
+\deleted[id=<id>, comment=<comment>]{<old text>}
diff --git a/macros/latex/contrib/changes/userdoc/in_highlight.tex b/macros/latex/contrib/changes/userdoc/in_highlight.tex
new file mode 100644
index 0000000000..ef6a26c546
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_highlight.tex
@@ -0,0 +1 @@
+\highlight[id=<id>, comment=<comment>]{<text>}
diff --git a/macros/latex/contrib/changes/userdoc/in_listofchanges.tex b/macros/latex/contrib/changes/userdoc/in_listofchanges.tex
new file mode 100644
index 0000000000..62eed33347
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_listofchanges.tex
@@ -0,0 +1 @@
+\listofchanges[style=<style>, title=<title>, show=<type>]
diff --git a/macros/latex/contrib/changes/userdoc/in_path_doc_examples.tex b/macros/latex/contrib/changes/userdoc/in_path_doc_examples.tex
new file mode 100644
index 0000000000..ebd4eab862
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_path_doc_examples.tex
@@ -0,0 +1 @@
+<texpath>/doc/latex/changes/examples/
diff --git a/macros/latex/contrib/changes/userdoc/in_path_script.tex b/macros/latex/contrib/changes/userdoc/in_path_script.tex
new file mode 100644
index 0000000000..fe17199aed
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_path_script.tex
@@ -0,0 +1 @@
+<texpath>/scripts/changes/
diff --git a/macros/latex/contrib/changes/userdoc/in_replaced.tex b/macros/latex/contrib/changes/userdoc/in_replaced.tex
new file mode 100644
index 0000000000..3c51087abf
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_replaced.tex
@@ -0,0 +1 @@
+\replaced[id=<id>, comment=<comment>]{<new text>}{<old text>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setaddedmarkup.tex b/macros/latex/contrib/changes/userdoc/in_setaddedmarkup.tex
new file mode 100644
index 0000000000..b0038e3640
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setaddedmarkup.tex
@@ -0,0 +1 @@
+\setaddedmarkup{<definition>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setauthormarkup.tex b/macros/latex/contrib/changes/userdoc/in_setauthormarkup.tex
new file mode 100644
index 0000000000..b5f1edba8b
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setauthormarkup.tex
@@ -0,0 +1 @@
+\setauthormarkup{<definition>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setauthormarkupposition.tex b/macros/latex/contrib/changes/userdoc/in_setauthormarkupposition.tex
new file mode 100644
index 0000000000..d66708d743
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setauthormarkupposition.tex
@@ -0,0 +1 @@
+\setauthormarkupposition{<authormarkupposition>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setauthormarkuptext.tex b/macros/latex/contrib/changes/userdoc/in_setauthormarkuptext.tex
new file mode 100644
index 0000000000..bcb95276bd
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setauthormarkuptext.tex
@@ -0,0 +1 @@
+\setauthormarkuptext{<authormarkuptext>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setcommentmarkup.tex b/macros/latex/contrib/changes/userdoc/in_setcommentmarkup.tex
new file mode 100644
index 0000000000..ad8bd1bba1
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setcommentmarkup.tex
@@ -0,0 +1 @@
+\setcommentmarkup{<definition>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setdeletedmarkup.tex b/macros/latex/contrib/changes/userdoc/in_setdeletedmarkup.tex
new file mode 100644
index 0000000000..41f404cd9c
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setdeletedmarkup.tex
@@ -0,0 +1 @@
+\setdeletedmarkup{<definition>}
diff --git a/macros/latex/contrib/changes/userdoc/in_sethighlightmarkup.tex b/macros/latex/contrib/changes/userdoc/in_sethighlightmarkup.tex
new file mode 100644
index 0000000000..b67cec700a
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_sethighlightmarkup.tex
@@ -0,0 +1 @@
+\sethighlightmarkup{<definition>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setsocextension.tex b/macros/latex/contrib/changes/userdoc/in_setsocextension.tex
new file mode 100644
index 0000000000..d0d3339e82
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setsocextension.tex
@@ -0,0 +1 @@
+\setsocextension{<extension>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setsummarytowidth.tex b/macros/latex/contrib/changes/userdoc/in_setsummarytowidth.tex
new file mode 100644
index 0000000000..25238fc21a
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setsummarytowidth.tex
@@ -0,0 +1 @@
+\setsummarytowidth{<text>}
diff --git a/macros/latex/contrib/changes/userdoc/in_setsummarywidth.tex b/macros/latex/contrib/changes/userdoc/in_setsummarywidth.tex
new file mode 100644
index 0000000000..4d84a18bf1
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_setsummarywidth.tex
@@ -0,0 +1 @@
+\setsummarywidth{<width>}
diff --git a/macros/latex/contrib/changes/userdoc/in_settruncatewidth.tex b/macros/latex/contrib/changes/userdoc/in_settruncatewidth.tex
new file mode 100644
index 0000000000..c6de5edfb6
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_settruncatewidth.tex
@@ -0,0 +1 @@
+\settruncatewidth{<width>}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_addedmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_addedmarkup_changes.tex
new file mode 100644
index 0000000000..ffeb96ce16
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_addedmarkup_changes.tex
@@ -0,0 +1 @@
+\usepackage[addedmarkup=<addedmarkup>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkup_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkup_changes.tex
new file mode 100644
index 0000000000..b02ea84a5f
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkup_changes.tex
@@ -0,0 +1 @@
+\usepackage[authormarkup=<authormarkup>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkupposition_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkupposition_changes.tex
new file mode 100644
index 0000000000..a031eda5e9
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkupposition_changes.tex
@@ -0,0 +1 @@
+\usepackage[authormarkupposition=<authormarkupposition>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkuptext_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkuptext_changes.tex
new file mode 100644
index 0000000000..e824e626f0
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_authormarkuptext_changes.tex
@@ -0,0 +1 @@
+\usepackage[authormarkuptext=<authormarkuptext>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_changes.tex
new file mode 100644
index 0000000000..0f542f61dc
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_changes.tex
@@ -0,0 +1 @@
+\usepackage{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_commentmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_commentmarkup_changes.tex
new file mode 100644
index 0000000000..6f92a4bccd
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_commentmarkup_changes.tex
@@ -0,0 +1 @@
+\usepackage[commentmarkup=<commentmarkup>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_deletedmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_deletedmarkup_changes.tex
new file mode 100644
index 0000000000..4678399b55
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_deletedmarkup_changes.tex
@@ -0,0 +1 @@
+\usepackage[deletedmarkup=<deletedmarkup>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_draft_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_draft_changes.tex
new file mode 100644
index 0000000000..5d6c17eea2
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_draft_changes.tex
@@ -0,0 +1 @@
+\usepackage[draft]{changes} !\Corresponds! \usepackage{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_final_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_final_changes.tex
new file mode 100644
index 0000000000..50e96e334c
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_final_changes.tex
@@ -0,0 +1 @@
+\usepackage[final]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_highlightmarkup_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_highlightmarkup_changes.tex
new file mode 100644
index 0000000000..b834ac3fee
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_highlightmarkup_changes.tex
@@ -0,0 +1 @@
+\usepackage[highlightmarkup=<highlightmarkup>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_markup_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_markup_changes.tex
new file mode 100644
index 0000000000..0b1b3e4e45
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_markup_changes.tex
@@ -0,0 +1 @@
+\usepackage[markup=<markup>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_options_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_options_changes.tex
new file mode 100644
index 0000000000..6adf76a9dc
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_options_changes.tex
@@ -0,0 +1 @@
+\usepackage[<options>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_todonotes_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_todonotes_changes.tex
new file mode 100644
index 0000000000..4761059b90
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_todonotes_changes.tex
@@ -0,0 +1 @@
+\usepackage[todonotes=<options>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_truncate_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_truncate_changes.tex
new file mode 100644
index 0000000000..4afeb2fa49
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_truncate_changes.tex
@@ -0,0 +1 @@
+\usepackage[truncate=<options>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_ulem_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_ulem_changes.tex
new file mode 100644
index 0000000000..ea60df8a49
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_ulem_changes.tex
@@ -0,0 +1 @@
+\usepackage[ulem=<options>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/in_usepackage_xcolor_changes.tex b/macros/latex/contrib/changes/userdoc/in_usepackage_xcolor_changes.tex
new file mode 100644
index 0000000000..6a99177d82
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/in_usepackage_xcolor_changes.tex
@@ -0,0 +1 @@
+\usepackage[xcolor=<options>]{changes}
diff --git a/macros/latex/contrib/changes/userdoc/script_pymergechanges.tex b/macros/latex/contrib/changes/userdoc/script_pymergechanges.tex
new file mode 100644
index 0000000000..7c677fa4ab
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/script_pymergechanges.tex
@@ -0,0 +1,6 @@
+python pyMergeChanges.py [-arh] <Input File> <Output File>
+Options:
+ -a: accept all added, deleted and replaced
+ -r: reject all added, deleted and replaced
+ -h: remove all highlights
+If no option is given, runs interactively.
diff --git a/macros/latex/contrib/changes/userdoc/script_pymergechanges_empty.tex b/macros/latex/contrib/changes/userdoc/script_pymergechanges_empty.tex
new file mode 100644
index 0000000000..7715bb0989
--- /dev/null
+++ b/macros/latex/contrib/changes/userdoc/script_pymergechanges_empty.tex
@@ -0,0 +1 @@
+python pyMergeChanges.py