diff options
author | Karl Berry <karl@freefriends.org> | 2018-12-17 21:34:06 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-12-17 21:34:06 +0000 |
commit | c4541e083cf32e2c9a372f5eb53277e416d866ac (patch) | |
tree | f1e745b732afa6bf95a2358263a39d45749872c5 /Master/texmf-dist | |
parent | 6b1a8094f0a744aa5cd6bf002eab62c21fcee76a (diff) |
changes (17dec18)
git-svn-id: svn://tug.org/texlive/trunk@49442 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
77 files changed, 1295 insertions, 1023 deletions
diff --git a/Master/texmf-dist/doc/latex/changes/changes.english.pdf b/Master/texmf-dist/doc/latex/changes/changes.english.pdf Binary files differindex 5854b9e0ac6..41a6fe2c78a 100644 --- a/Master/texmf-dist/doc/latex/changes/changes.english.pdf +++ b/Master/texmf-dist/doc/latex/changes/changes.english.pdf diff --git a/Master/texmf-dist/doc/latex/changes/changes.english.withcode.pdf b/Master/texmf-dist/doc/latex/changes/changes.english.withcode.pdf Binary files differindex c467f61778a..ab38ef13a14 100644 --- a/Master/texmf-dist/doc/latex/changes/changes.english.withcode.pdf +++ b/Master/texmf-dist/doc/latex/changes/changes.english.withcode.pdf diff --git a/Master/texmf-dist/doc/latex/changes/changes.ngerman.pdf b/Master/texmf-dist/doc/latex/changes/changes.ngerman.pdf Binary files differindex b40908f9e68..805d841d0fd 100644 --- a/Master/texmf-dist/doc/latex/changes/changes.ngerman.pdf +++ b/Master/texmf-dist/doc/latex/changes/changes.ngerman.pdf diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/changes.de.tex b/Master/texmf-dist/doc/latex/changes/userdoc/changes.de.tex index bd7cedd7828..7d717bc739f 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/changes.de.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/changes.de.tex @@ -13,7 +13,6 @@ Wenn Sie mich direkt kontaktieren wollen, mailen Sie bitte an \href{mailto:eklei Bitte starten Sie Ihr Mail-Subject mit \texttt{[changes]}. \begin{quote} - \small\textsc{README:} 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. @@ -23,10 +22,15 @@ Bitte starten Sie Ihr Mail-Subject mit \texttt{[changes]}. Ein kurzes Beispiel für Änderungsmarkierung: -Das ist \added[id=EK]{zugefügter} Text. -In diesem Satz ersetze ich ein \replaced[id=EK, comment={Weil ein gutes Wort besser ist.}]{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. +\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 @@ -36,16 +40,16 @@ Text kann auch \highlight[id=EK]{hervorgehoben} oder nur \comment[id=EK]{Aus Spa 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:user}. +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 z.\,B.\ von WYSIWYG-Textprogrammen wie \emph{LibreOffice}, \emph{OpenOffice} oder \emph{Word} bekannt. +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, müssen Sie folgende Schritte ausführen: +Um das Paket zu nutzen, sollten Sie folgende Schritte ausführen: \begin{enumerate} \item \chpackage{changes}-Paket einbinden @@ -61,16 +65,16 @@ Um das Paket zu nutzen, müssen Sie folgende Schritte ausführen: Um die Änderungsverfolgung zu aktivieren, ist das \chpackage{changes}-Paket wie folgt einzubinden: -\input{userdoc/in_usepackage_changes} +\chinline{usepackage_changes} bzw. -\input{userdoc/in_usepackage_options_changes} +\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:user:options} und \autoref{sec:user:customizingoutput}. +Für Details lesen Sie bitte \autoref{sec:ui:options} und \autoref{sec:ui:customizingoutput}. \minisec{Autoren definieren} @@ -78,45 +82,50 @@ Das \chpackage{changes}-Paket stellt einen vordefinierten anonymen Autor zur Ver Wenn Sie jedoch die Änderungen per Autor\_in verfolgen wollen, müssen Sie die entsprechenden Autor\_innen definieren. Dies geht wie folgt: -\input{userdoc/in_definechangesauthor_options} +\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:user:authormanagement}. +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:\\ -\chcommand{added[id=<ID>, comment=<Kommentar>]\{neuer Text\}} +für neu zugefügten Text: + +\chinline{added} + +für gelöschten Text: -für gelöschten Text:\\ -\chcommand{deleted[id=<ID>, comment=<Kommentar>]\{alter Text\}} +\chinline{deleted} -für geänderten Text:\\ -\chcommand{replaced[id=<ID>, comment=<Kommentar>]\{neuer Text\}\{alter Text\}} +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:user:changemanagement}. +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:\\ -\chcommand{highlight[id=<id>, comment=<comment>]\{text\}} +Text hervorheben: + +\chinline{highlight} -Text kommentieren:\\ -\chcommand{comment[id=<ID>]\{Kommentar\}} +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:user:comment}. +Für Details lesen Sie bitte \autoref{sec:ui:comment}. \minisec{Dokument mit \hologo{LaTeX} setzen} @@ -129,8 +138,7 @@ Durch die Übersetzung wird der geänderte Text so markiert, wie Sie das mittels Sie können sich eine Liste der Änderungen ausgeben lassen. Dies erfolgt mit dem Kommando: -\chcommand{listofchanges}\texttt{[style=<list|summary|compactsummary>, title=<Titel>,}\\ -\hspace*{2em}\texttt{show=<Typ>]} +\chinline{listofchanges} Die Ausgabe ist gedacht als Analogon zur Liste von Tabellen oder Abbildungen. @@ -142,27 +150,40 @@ Bei jedem \hologo{LaTeX}-Lauf werden die Daten für diese Liste in eine Hilfsdat 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:user:overview}. +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: -\chcommand{usepackage[final]\{changes\}} - -\subsection{Verfügbare Skripte} +\chinline{usepackage_final_changes} -Für die Entfernung der Markierungen aus dem Quelltext steht ein Script von Silvano Chiaradonna zur Verfügung. +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: -\texttt{<texpath>/scripts/changes/} +\chinline[, language=bash]{path_script} -Das Script entfernt alle Markierungen. -Sie können die zu entfernenden Markierungen selektieren bzw.\ selektieren, indem Sie den interaktiven Modus einschalten. -Der interaktive Modus wird mit dem Skriptparameter \texttt{-i} eingeschaltet. +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} -Das Skript ist noch nicht an die Kommentar- und Hervorhebungsbefehle angepasst. %^^A ---- limitations @@ -176,15 +197,21 @@ In diesem Fall gehen Sie bitte zu \url{http://changes.sourceforge.net/} -Dort können Sie Fehler melden, im Forum um Hilfe fragen oder Tips einstellen. -Sie können dort den Quellcode ansehen und nach Ihren Wünschen ändern bzw.\ erweitern. -Ich werde mich dann bemühen, Ihre Änderungen einzuarbeiten. -Sie können als Co-Autor am Paket mitarbeiten, wenn Sie bei \emph{sourceforge} angemeldet sind. +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. 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 von mehreren Absätzen gleichzeitig, von Bildern und Tabellen ist eingeschränkt oder nicht möglich. +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. @@ -194,7 +221,8 @@ Fußnoten oder Randnotizen werden in bestimmten Umgebungen, \zB Tabellen oder de Vermeiden Sie das Markup, wenn Sie diese Umgebungen benutzen. Das Paket bietet Raum für Erweiterungen, die ich ich jedoch nicht selbst programmieren werde (weil mir Zeit und oft auch die Fähigkeit fehlt). -Ich liste hier einige Möglichkeiten auf, eine komplettere Liste finden Sie auf der \emph{gitlab}-Seite: +Ich liste hier einige Möglichkeiten auf, die aktuelle Liste finden Sie im Issue-Tracker auf \emph{gitlab}: + \begin{itemize} \item Auswahl der anzunehmenden/abzulehnenden Änderungen mit entsprechendem Löschen des Textes \item Markierung von mehreren Absätzen @@ -208,25 +236,34 @@ Ich liste hier einige Möglichkeiten auf, eine komplettere Liste finden Sie auf %^^A ---- user interface \cleardoublepage \section{Die Benutzerschnittstelle des \chpackage{changes}-Pakets} -\label{sec:user} +\label{sec:ui} -In diesem Kapitel wird die Nutzerschnittstelle des \chpackage{changes}-Pakets vorgestellt, d.\,h.\ alle Optionen und Kommandos. +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 -\texttt{<texpath>/doc/latex/changes/examples/} +\chinline[, language=bash]{path_doc_examples} Die Beispieldateien sind mit der benutzten Option bzw. dem benutzten Kommando benannt. -Eine Vorbemerkung zum Setzen von ersetztem Text: ersetzter Text wird immer wie folgt gesetzt: \meta{neuer Text}\meta{alter Text}. -Daher gibt es keine Möglichkeit, die Ausgabe ersetzten Texts direkt zu beeinflussen, sondern nur über die Änderung der Ausgabe neuen bzw.\ gelöschten Texts. - %^^A -- options \subsection{Paketoptionen} -\label{sec:user:options} +\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. @@ -234,260 +271,246 @@ 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}. -\chcommand{usepackage[draft]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}} - \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}. -\chcommand{usepackage[final]\{changes\}} - \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 sind erlaubt: +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-Markup) + \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} -\begin{chusage} - \>\chcommand{usepackage[markup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[markup=default]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[markup=underlined]\{changes\}}\\ - \>\chcommand{usepackage[markup=bfit]\{changes\}}\\ - \>\chcommand{usepackage[markup=nocolor]\{changes\}} -\end{chusage} +\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, deletedmarkup} +\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} + +\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 sind erlaubt: +Die folgenden Werte für \emph{addedmarkup} sind definiert: + \begin{description} - \item [\choption{colored}] kein Textmarkup, nur farbige Kennzeichnung -- {\color{orange} Beispiel} (default-Markup für zugefügten Text) + \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{sout}] durchgestrichener Text (nur gelöschter Text) -- \sout{Beispiel} (default-Markup für gelöschten Text) - \item [\choption{xout}] schräg durchgestrichener Text (nur gelöschter Text) -- \xout{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} -\begin{chusage} - \>\chcommand{usepackage[addedmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[addedmarkup=colored]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[addedmarkup=uline]\{changes\}}\\ -\end{chusage} +Die Ausgabe ersetzten Texts ist ein Kombination von zugefügtem und gelöschten Text, daher beeinflusst deren Layoutänderung auch das Layout ersetzen Texts. -\begin{chusage} - \>\chcommand{usepackage[deletedmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[deletedmarkup=sout]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[deletedmarkup=xout]\{changes\}}\\ - \>\chcommand{usepackage[deletedmarkup=uwave]\{changes\}} -\end{chusage} +\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 sind erlaubt: +Die folgenden Werte für \emph{highlightmarkup} sind definiert: + \begin{description} - \item [\choption{background}] Hervorhebung durch Hintergrundfarbe -- \colorbox{orange!30}{Beispiel (default-Markup für Hervorhebungen)} + \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} -\begin{chusage} - \>\chcommand{usepackage[highlightmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[highlightmarkup=background]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[highlightmarkup=uwave]\{changes\}}\\ -\end{chusage} - +\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 sind erlaubt: +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-Markup für Kommentare) - \item [\choption{margin}] Kommentar im Seitenrand -- \marginpar{Beispielkommentar} - \item [\choption{footnote}] Kommentar als Fußnote -- \footnote{Beispielkommentar} + \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} -\begin{chusage} - \>\chcommand{usepackage[commentmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[commentmarkup=todo]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[commentmarkup=footnote]\{changes\}}\\ -\end{chusage} +\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 sind erlaubt: +Die folgenden Werte für \emph{authormarkup} sind definiert: + \begin{description} - \item [\choption{superscript}] hochgestellter Text -- Text\textsuperscript{Beispiel} (default-Markup) - \item [\choption{subscript}] tiefgestellter Text -- Text\textsubscript{Beispiel} - \item [\choption{brackets}] Text in Klammern -- Text(Beispiel) - \item [\choption{footnote}] Text in einer Fußnote -- Text\footnote{Beispiel} + \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} -\begin{chusage} - \>\chcommand{usepackage[authormarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[authormarkup=superscript]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=subscript]\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=brackets]\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=footnote]\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=none]\{changes\}} -\end{chusage} - +\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 sind erlaubt: +Die folgenden Werte für \emph{authormarkupposition} sind definiert: + \begin{description} - \item [\choption{right}] rechts vom Text -- Text\textsuperscript{Beispiel} (default value) - \item [\choption{left}] links vom Text -- \textsuperscript{Beispiel}Text + \item [\choption{right}] rechts vom Text -- Text\textsuperscript{Autor} (default) + \item [\choption{left}] links vom Text -- \textsuperscript{Autor}Text \end{description} -\begin{chusage} - \>\chcommand{usepackage[authormarkupposition=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[authormarkupposition=right]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[authormarkupposition=left]\{changes\}} -\end{chusage} - +\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 sind erlaubt: +Die folgenden Werte für \emph{authormarkuptext} sind definiert: + \begin{description} - \item [\choption{id}] Autoren-ID -- Text\textsuperscript{ID} (default-Wert) + \item [\choption{id}] Autoren-ID -- Text\textsuperscript{ID} (default) \item [\choption{name}] Autorenname -- Text\textsuperscript{Autorenname} \end{description} -\begin{chusage} - \>\chcommand{usepackage[authormarkuptext=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[authormarkuptext=id]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[authormarkuptext=name]\{changes\}} -\end{chusage} - +\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. -Zwei oder mehr Optionen müssen in geschweifte Klammern gesetzt werden. +Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden. -\begin{chusage} - \>\chcommand{usepackage[todonotes=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[todonotes=\{textsize=tiny\}]\{changes\}} -\end{chusage} +\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. -Zwei oder mehr Optionen müssen in geschweifte Klammern gesetzt werden. +Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden. -\begin{chusage} - \>\chcommand{usepackage[truncate=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[truncate=hyphenate]\{changes\}} -\end{chusage} +\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. -Zwei oder mehr Optionen müssen in geschweifte Klammern gesetzt werden. +Mehrere Optionen oder Angaben mit Sonderzeichen müssen in geschweifte Klammern gesetzt werden. -\begin{chusage} - \>\chcommand{usepackage[ulem=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[ulem=normalem]\{changes\}}\\ - \>\chcommand{usepackage[ulem=\{normalem,normalbf\}]\{changes\}} -\end{chusage} +\chexample{usepackage_ulem_changes} \subsubsection{xcolor} -Optionen für das \chpackage{xcolor}-Paket können als Parameter der \choption{xcolor}-Option angegeben werden. -Zwei oder mehr Optionen müssen in geschweifte Klammern gesetzt werden. +\chinline{usepackage_xcolor_changes} -\begin{chusage} - \>\chcommand{usepackage[xcolor=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[xcolor=dvipdf]\{changes\}}\\ - \>\chcommand{usepackage[xcolor=\{dvipdf,gray\}]\{changes\}} -\end{chusage} +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:user:changemanagement} +\label{sec:ui:changemanagement} + +\localtableofcontents -Alle Beispiele nutzen als Kommentarformatierung \emph{uwave}, da Randnotizen und ToDo-Notizen in \emph{tabbing}-Umgebungen nicht erlaubt sind (siehe \autoref{sec:limitations}). +\chnewcmd{added} +\label{sec:ui:cmd:added} -\subsubsection{\chcommand{added}} -\DescribeMacro{\added} +\chinline{added} Der Befehl \chcommand{added} markiert zugefügten Text. -Der neue Text wird als notwendiges Argument in geschweiften Klammern übergeben. +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. @@ -495,92 +518,72 @@ Enthält der Kommentar Sonderzeichen oder Leerzeichen, ist er in geschweifte Kla Wenn ein Kommentar angegeben wurde, wird das direkte Autormarkup am geänderten Text unterdrückt, da es im Kommentar erscheint. -\begin{chusage} - \>\chcommand{added[id=\meta{Autor-ID}, comment=\meta{Kommentar}]\{\meta{neuer Text}\}}\\ - \usageexample - \>\texttt{Das ist \chcommand{added}[id=EK]\{neuer\} Text.}\\ - \>Das ist \added[id=EK]{neuer} Text.\\ - \>\texttt{Das ist \chcommand{added}[id=EK, comment=\{muss rein\}]\{neuer\} Text.}\\ - \>Das ist \added[id=EK, comment={muss rein}]{neuer} Text.\\ - \>\texttt{Das ist \chcommand{added}[comment=anonym]\{neuer\} Text.}\\ - \>Das ist \added[comment=anonym]{neuer} Text. -\end{chusage} +\chexample{added} +\chresult{added} -\subsubsection{\chcommand{deleted}} -\DescribeMacro{\deleted} +\chnewcmd{deleted} + +\chinline{deleted} Der Befehl \chcommand{deleted} markiert gelöschten Text. -Argumente: siehe \chcommand{added}. +Der gelöschte Text wird in geschweiften Klammern übergeben. + +Optionale Argumente: siehe \chcommand{added} (\autoref{sec:ui:cmd:added}). -\begin{chusage} - \>\chcommand{deleted[id=\meta{Autor-ID}, comment=\meta{Kommentar}]\{\meta{gelöschter Text}\}}\\ - \usageexample - \>\texttt{Das ist \chcommand{deleted}[comment=obsolet]\{schlechter\} Text.}\\ - \>Das ist \deleted[comment=obsolet]{schlechter} Text. -\end{chusage} +\chexample{deleted} +\chresult{deleted} -\subsubsection{\chcommand{replaced}} -\DescribeMacro{\replaced} +\chnewcmd{replaced} + +\chinline{replaced} Der Befehl \chcommand{replaced} markiert geänderten Text. -Notwendige Argumente sind der neue sowie der alte Text. -Optionale Argumente: siehe \chcommand{added}. +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}). -\begin{chusage} - \>\chcommand{replaced[id=\meta{Autor-ID}, comment=\meta{Kommentar}]\{\meta{neuer Text}\}\{\meta{alter Text}\}}\\ - \usageexample - \>\texttt{Das ist \chcommand{replaced}[id=EK]\{schöner\}\{schlechter\} Text.}\\ - \>Das ist \replaced[id=EK]{schöner}{schlechter} Text. -\end{chusage} +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:user:comment} +\label{sec:ui:comment} + +\localtableofcontents + +\chnewcmd{highlight} -\subsubsection{\chcommand{highlight}} -\DescribeMacro{\highlight} +\chinline{highlight} Der Befehl \chcommand{highlight} markiert hervorgehobenen Text. -Der hervorzuhebende Text wird als notwendiges Argument in geschweiften Klammern übergeben. +Der hervorzuhebende 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. +Optionale Argumente: siehe \chcommand{added} (\autoref{sec:ui:cmd:added}). -Wenn ein Kommentar angegeben wurde, wird das direkte Autormarkup am geänderten Text unterdrückt, da es im Kommentar erscheint. +\chexample{highlight} +\chresult{highlight} -\begin{chusage} - \>\chcommand{highlight[id=\meta{Autor-ID}, comment=\meta{Kommentar}]\{\meta{hervorgehobener Text}\}}\\ - \usageexample - \>\texttt{Das ist \chcommand{highlight}[id=EK, comment=\{Mein Kommentar\}]\{hervorgehobener\} Text.}\\ - \>Das ist \highlight[id=EK, comment={Mein Kommentar}]{hervorgehobener} Text.\\ - \>\texttt{Das ist \chcommand{highlight}[comment=\{Anonymer Kommentar\}]\{anonym hervorgehobener\} Text.}\\ - \>Das ist \highlight[comment={Anonymer Kommentar}]{anonym hervorgehobener} Text. -\end{chusage} -\subsubsection{\chcommand{comment}} -\DescribeMacro{\comment} +\chnewcmd{comment} + +\chinline{comment} Der Befehl \chcommand{comment} fügt dem Dokument einen Kommentar hinzu. -Der Kommentar wird als notwendiges Argument in geschweiften Klammern übergeben. +Der Kommentar wird als in geschweiften Klammern übergeben. -Das optionale Argument enthält ein Key-Value-Paar für die Angabe der Autor-ID. +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. -\begin{chusage} - \>\chcommand{comment[id=\meta{Autor-ID}]\{\meta{Kommentar}\}}\\ - \usageexample - \>\texttt{Das ist kommentierter\chcommand{comment}[id=EK]\{Mein Kommentar\} Text.}\\ - \>Das ist kommentierter\comment[id=EK]{Mein Kommentar} Text.\\ - \>\texttt{Das ist kommentierter\chcommand{comment}\{Anonymer Kommentar\} Text.}\\ - \>Das ist kommentierter\comment{Anonymer Kommentar} Text. -\end{chusage} +\chexample{comment} +\chresult{comment} @@ -589,11 +592,12 @@ Die Kommentare werden durchnumeriert, die Nummer erscheint im Kommentar. %^^A -- Overview of changes \subsection{Änderungsübersicht} -\label{sec:user:overview} +\label{sec:ui:overview} + +\chnewcmd{listofchanges} -\subsubsection{\chcommand{listofchanges}} -\DescribeMacro{\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. @@ -601,21 +605,21 @@ Für eine aktuelle Liste der Änderungen sind daher zwei \hologo{LaTeX}-Läufe n Es können drei optionale Argumente angegeben werden: -\begin{itemize} - \item style - \item title - \item show -\end{itemize} +\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 erlaubt: +Es sind folgende drei Stile definiert: -\begin{itemize} - \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{itemize} +\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. @@ -623,179 +627,185 @@ Wenn Sie Sonderzeichen oder Leerzeichen im Titel benutzen wollen, klammern Sie d \paragraph{show} Das Argument \choption{show} gibt an, welche Änderungstypen in der Änderungsliste ausgegeben werden. -Die folgenden Werte sind erlaubt: +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. -\begin{itemize} - \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{itemize} +Die folgenden Werte sind definiert: -Sie können die Werte 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. +\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} -\begin{chusage} - \>\chcommand{listofchanges}\texttt{[style=<list|summary|compactsummary>, title=<Titel>,}\\ - \>\>\texttt{show=<Typ>]}\\ - \usageexample - \>\chcommand{listofchanges}\\ - \>\chcommand{listofchanges[style=list]} \Corresponds\ \chcommand{listofchanges}\\ - \>\chcommand{listofchanges[style=summary, title=\{Meine Zusammenfassung\}]}\\ - \>\chcommand{listofchanges[title=\{Kommentare\}, show=comment]} -\end{chusage} +\chexample{listofchanges} %^^A ---- Author management \subsection{Autorenverwaltung} -\label{sec:user:authormanagement} +\label{sec:ui:authormanagement} -\subsubsection{\chcommand{definechangesauthor}} -\DescribeMacro{\definechangesauthor} +\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 Autor\_innenname wird in der Änderungsliste sowie im Markup benutzt, im Markup jedoch nur, wenn die entsprechende Option gesetzt ist. -\begin{chusage} - \>\chcommand{definechangesauthor[name=\{\meta{author's name}\}, color=\{\meta{color}\}]\{\meta{author's id}\}}\\ - \usageexample - \>\chcommand{definechangesauthor\{EK\}}\\ - \>\chcommand{definechangesauthor[color=orange]\{EK\}}\\ - \>\chcommand{definechangesauthor[name=\{Ekkart Kleinod\}]\{EK\}}\\ - \>\chcommand{definechangesauthor[name=\{Ekkart Kleinod\}, color=orange]\{EK\}} -\end{chusage} +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:user:customizingoutput} +\label{sec:ui:customizingoutput} -\subsubsection{\chcommand{setaddedmarkup}} -\DescribeMacro{\setaddedmarkup} +\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 Definition: beliebige \hologo{LaTeX}-Befehle, der neue Text wird mit "`\#1"' eingesetzt. +Werte für die Definition: + +\begin{itemize} + \item beliebige \hologo{LaTeX}-Befehle + \item neuer Text wird mit "`\#1"' genutzt +\end{itemize} -\begin{chusage} - \>\chcommand{setaddedmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setaddedmarkup\{}\chcommand{emph\{\#1\}}\}\\ - \>\chcommand{setaddedmarkup\{+++: \#1\}} -\end{chusage} +\chexample{setaddedmarkup} -\subsubsection{\chcommand{setdeletedmarkup}} -\DescribeMacro{\setdeletedmarkup} +\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 Definition: beliebige \hologo{LaTeX}-Befehle, der gelöschte Text wird mit "`\#1"' eingesetzt. +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} -\begin{chusage} - \>\chcommand{setdeletedmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setdeletedmarkup\{}\chcommand{emph\{\#1\}}\}\\ - \>\chcommand{setdeletedmarkup\{-\,-\,-: \#1\}} -\end{chusage} +\chnewcmd{sethighlightmarkup} -\subsubsection{\chcommand{sethighlightmarkup}} -\DescribeMacro{\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 Definition: beliebige \hologo{LaTeX}-Befehle, der hervorgehobene Text wird mit "`\#1"' eingesetzt. -Die Autorenfarbe kann mit ``authorcolor'' genutzt werden. +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} -\begin{chusage} - \>\chcommand{sethighlightmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{sethighlightmarkup\{}\chcommand{emph\{\#1\}}\}\\ - \>\chcommand{sethighlightmarkup\{\chcommand{ifthenelse}\{\chcommand{isColored}\}\{\chcommand{color}\{authorcolor!60\}\}\{\}!!: \#1\}} -\end{chusage} +\chexample{sethighlightmarkup} -\subsubsection{\chcommand{setcommentmarkup}} -\DescribeMacro{\setcommentmarkup} +\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 Definition: beliebige \hologo{LaTeX}-Befehle, der Kommentar wird mit "`\#1"' eingesetzt, die Autor-ID mit ``\#2'' und die Autor-Ausgabe (ID oder Name) mit ``\#3''. -Die Autorenfarbe kann mit ``authorcolor'' genutzt werden und die Kommentaranzahl mit ``authorcommentcount''. +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} -\begin{chusage} - \>\chcommand{setcommentmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setcommentmarkup\{--- \#1 ---\}}\\ - \>\chcommand{setcommentmarkup}\{\chcommand{ifthenelse}\{\chcommand{isColored}\}\{\chcommand{color}\{authorcolor\}\}\{\}\#1\}\\ - \>\chcommand{setcommentmarkup}\{\chcommand{ifthenelse}\{\chcommand{isAnonymous\{\#2\}}\}\{\}\{\chcommand{textbf}\{\#3: \}\}\#1\}\\ - \>\chcommand{setcommentmarkup}\{[\chcommand{arabic}\{authorcommentcount\}] \#1\} -\end{chusage} +\chexample{setcommentmarkup} -\subsubsection{\chcommand{setauthormarkup}} -\DescribeMacro{\setauthormarkup} +\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 Definition: beliebige \hologo{LaTeX}-Befehle, der Autortext wird mit "`\#1"' eingesetzt. +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} -\begin{chusage} - \>\chcommand{setauthormarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setauthormarkup\{(\#1)\}}\\ - \>\chcommand{setauthormarkup\{(\#1)\textasciitilde{}-{}-\textasciitilde{}\}}\\ - \>\chcommand{setauthormarkup\{}\chcommand{marginpar\{\#1\}\}} -\end{chusage} +\chnewcmd{setauthormarkupposition} -\subsubsection{\chcommand{setauthormarkupposition}} -\DescribeMacro{\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. -Mögliche Werte: \emph{left} == links von den Änderungen; alles andere: rechts +Die folgenden Werte für \emph{authormarkupposition} sind definiert: -\begin{chusage} - \>\chcommand{setauthormarkupposition\{\meta{position}\}}\\ - \usageexample - \>\chcommand{setauthormarkupposition\{left\}} -\end{chusage} +\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} -\subsubsection{\chcommand{setauthormarkuptext}} -\DescribeMacro{\setauthormarkuptext} +\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. -Mögliche Werte: \emph{name} == Autorenname; alles andere: Autor-ID +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} -\begin{chusage} - \>\chcommand{setauthormarkuptext\{\meta{text}\}}\\ - \usageexample - \>\chcommand{setauthormarkuptext\{name\}} -\end{chusage} +\chnewcmd{settruncatewidth} -\subsubsection{\chcommand{settruncatewidth}} -\DescribeMacro{\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}. @@ -804,8 +814,9 @@ Die Standardbreite ist \texttt{0.6}\chcommand{textwidth}. -\subsubsection{\chcommand{setsummarywidth}} -\DescribeMacro{\setsummarywidth} +\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}. @@ -814,8 +825,9 @@ Die Standardbreite ist \texttt{0.3}\chcommand{textwidth}. -\subsubsection{\chcommand{setsummarytowidth}} -\DescribeMacro{\setsummarytowidth} +\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. @@ -823,26 +835,25 @@ Der Befehl \chcommand{setsummarytowidth} legt die Breite der Änderungsliste mit -\subsubsection{\chcommand{setsocextension}} -\DescribeMacro{\setsocextension} +\chnewcmd{setsocextension} -Der Befehl \chcommand{setsocextension} legt das Suffix der Hilfsdatei für die Änderungszusammenfassung (soc-Datei\footnote{% +\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 unten angegebenen Beispiel würde für "`\texttt{foo.tex}"' eine Hilfsdatei erzeugt werden, die "`\texttt{foo.changes}"' statt des Standardnamens "`\texttt{foo.soc}"' hieße. -\begin{chusage} - \>\chcommand{setsocextension\{\meta{extension}\}}\\ - \usageexample - \>\chcommand{setsocextension\{changes\}} -\end{chusage} +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:user:packages} +\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. @@ -875,6 +886,7 @@ 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 diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/changes.en.tex b/Master/texmf-dist/doc/latex/changes/userdoc/changes.en.tex index 757e434191e..3949b2459bb 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/changes.en.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/changes.en.tex @@ -13,7 +13,6 @@ If you want to contact me directly, please send an email to \href{mailto:ekleino Please start your email subject with \texttt{[changes]}. \begin{quote} - \small\textsc{README:} 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. @@ -23,10 +22,16 @@ Please start your email subject with \texttt{[changes]}. Here is a short example of change markup: -This is \added[id=EK]{new} text. -In this sentence, I replace a \replaced[id=EK, comment={a good word is better than a bad one}]{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. +\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 @@ -34,7 +39,7 @@ Furthermore, text can be \highlight[id=EK]{highlighted} or just \comment[id=EK]{ \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:user}. +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. @@ -43,7 +48,7 @@ Such a change markup is well-known in WYSIWYG text processors such as \emph{Libr 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 have to follow these steps: +In order to use the package, you should follow these steps: \begin{enumerate} \item use \chpackage{changes}-package @@ -56,80 +61,84 @@ In order to use the package, you have to follow these steps: \end{enumerate} -\minisec{use \chpackage{changes}-package} +\minisec{Use \chpackage{changes}-package} In order to activate change management, use the \chpackage{changes}-package as follows: -\input{userdoc/in_usepackage_changes} +\chinline{usepackage_changes} respectively -\input{userdoc/in_usepackage_options_changes} +\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:user:options} and \autoref{sec:user:customizingoutput}. +For detailed information please refer to \autoref{sec:ui:options} and \autoref{sec:ui:customizingoutput}. -\minisec{define authors} +\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: -\input{userdoc/in_definechangesauthor_options} +\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:user:authormanagement}. +For detailed information please refer to \autoref{sec:ui:authormanagement}. -\minisec{markup text changes} +\minisec{Markup text changes} Now everything is set to markup the changed text. Please use the following commands according to your change: -for newly added text:\\ -\chcommand{added[id=<id>, comment=<comment>]\{new text\}} +for added text: + +\chinline{added} -for deleted text:\\ -\chcommand{deleted[id=<id>, comment=<comment>]\{old text\}} +for deleted text: -for replaced text:\\ -\chcommand{replaced[id=<id>, comment=<comment>]\{\meta{new text}\}\{\meta{old 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:user:changemanagement}. +For detailed information please refer to \autoref{sec:ui:changemanagement}. -\minisec{highlight and comment text} +\minisec{Highlight and comment text} Maybe you want to highlight orcomment some text? -highlight text:\\ -\chcommand{highlight[id=<id>, comment=<comment>]\{text\}} +highlight text: + +\chinline{highlight} -comment text:\\ -\chcommand{comment[id=<id>]\{comment\}} +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:user:comment}. +For detailed information please refer to \autoref{sec:ui:comment}. -\minisec{typeset the document with \hologo{LaTeX}} +\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} +\minisec{Output list of changes} You can print a list of changes using: -\chcommand{listofchanges}\texttt{[style=<list|summary|compactsummary>, title=<title>,}\\ -\hspace*{2em}\texttt{show=<type>]} +\chinline{listofchanges} The list is meant to be the analogon to the list of tables, or the list of figures. @@ -137,32 +146,46 @@ 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. +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:user:overview}. +For detailed information please refer to \autoref{sec:ui:overview}. -\minisec{remove markup} +\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: -\chcommand{usepackage[final]\{changes\}} - -\subsection{Available scripts} +\chinline{usepackage_final_changes} -In order to remove the markup from the \hologo{LaTeX}\ source code you can use a script from Silvano Chiaradonna. +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: -\texttt{<texpath>/scripts/changes/} +\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} -The script removes all markups. -You can select or deselect markup from removal using the interactive mode. -Switch on the interactive mode with the script parameter \texttt{-i}. -The script is not adapted yet to the comment and highlight commands. @@ -172,22 +195,26 @@ The script is not adapted yet to the comment and highlight commands. \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 functionionality. +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 can report errors, ask for help in the forum, or give advice to other users. -You can view the source code, and change it according to your needs. -I will try to include your changes in the maintained package. -If you are a registered \emph{sourceforge} user you can be a co-author of the \chpackage{changes}-package. +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 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 can markup more than one paragraph at a time but occasionally this leads to errors. -You cannot markup figures or tables. +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. @@ -198,7 +225,7 @@ Avoid such markup when using these environments. There are several possibilities of enhancing the \chpackage{changes}-package. I will describe but a few here, I will not implement them due to lack of time and/or skill. -You can have a look at the more complete list of enhancements on the \emph{gitlab} page. +You can have a look at the complete list of enhancements in the issue tracker of \emph{gitlab}. \begin{itemize} \item selecting of acknowledged and rejected texts; deletion of the corresponding markup @@ -212,26 +239,34 @@ You can have a look at the more complete list of enhancements on the \emph{gitla %^^A ---- user interface \cleardoublepage \section{User interface of the \chpackage{changes}-package} -\label{sec:user} +\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 respectively new command is described. +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 -\texttt{<texpath>/doc/latex/changes/examples/} +\chinline[, language=bash]{path_doc_examples} The example files are named with the used option respectively command. -A preliminary remark regarding typesetting of replaced text: replaced text is always typeset as follows: \meta{new text}\meta{old text}. -Thus, there is no possiblity to influence the output of replaced text directly, but via changing the output of added respectively deleted text. - - %^^A -- options \subsection{Package Options} -\label{sec:user: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. @@ -239,25 +274,27 @@ 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}. -\chcommand{usepackage[draft]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}} - \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}. -\chcommand{usepackage[final]\{changes\}} - \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 are allowed: +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 @@ -265,234 +302,218 @@ The following values are allowed: \item [\choption{nocolor}] no colored markup, underlined for added text, wavy underlined for highlighted text, default for deleted text and comments \end{description} -\begin{chusage} - \>\chcommand{usepackage[markup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[markup=default]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[markup=underlined]\{changes\}}\\ - \>\chcommand{usepackage[markup=bfit]\{changes\}}\\ - \>\chcommand{usepackage[markup=nocolor]\{changes\}} -\end{chusage} +\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, deletedmarkup} +\subsubsection{addedmarkup} + +\chinline{usepackage_addedmarkup_changes} The \choption{addedmarkup} option chooses a predefined visual markup of added text. -The \choption{deletedmarkup} option chooses a predefined visual markup of deleted text respectively. The default markup is chosen if no explicit markup is given. -The options \choption{addedmarkup} and \choption{deletedmarkup} overwrite the markup chosen with \choption{markup}. +The option \choption{addedmarkup} overwrites the markup chosen with \choption{markup}. + +The following values for \emph{addedmarkup} are defined: -The following values are allowed: \begin{description} - \item [\choption{colored}] no text markup, just coloring -- {\color{orange} example} (default markup for added text) + \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{sout}] striked out text (deleted text only) -- \sout{example} (default markup for deleted text) - \item [\choption{xout}] crossed out text (deleted text only) -- \xout{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} -\begin{chusage} - \>\chcommand{usepackage[addedmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[addedmarkup=colored]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[addedmarkup=uline]\{changes\}}\\ -\end{chusage} +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} + -\begin{chusage} - \>\chcommand{usepackage[deletedmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[deletedmarkup=sout]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[deletedmarkup=xout]\{changes\}}\\ - \>\chcommand{usepackage[deletedmarkup=uwave]\{changes\}} -\end{chusage} +\subsubsection{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 are allowed: +The following values for \emph{highlightmarkup} are defined: \begin{description} - \item [\choption{background}] markup by background color -- \colorbox{orange!30}{example (default markup for highlighted text)} + \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} -\begin{chusage} - \>\chcommand{usepackage[highlightmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[highlightmarkup=background]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[highlightmarkup=uwave]\{changes\}}\\ -\end{chusage} +\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 are allowed: +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 markup for comments) - \item [\choption{margin}] comment in margin -- \marginpar{example comment} - \item [\choption{footnote}] comment as footnote -- \footnote{example comment} + \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} -\begin{chusage} - \>\chcommand{usepackage[commentmarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[commentmarkup=todo]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[commentmarkup=footnote]\{changes\}}\\ -\end{chusage} - +\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 are allowed: +The following values for \emph{authormarkup} are defined: + \begin{description} - \item [\choption{superscript}] superscripted text -- text\textsuperscript{author} (default markup) + \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} -\begin{chusage} - \>\chcommand{usepackage[authormarkup=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[authormarkup=superscript]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=subscript]\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=brackets]\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=footnote]\{changes\}}\\ - \>\chcommand{usepackage[authormarkup=none]\{changes\}} -\end{chusage} - +\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 are allowed: +The following values for \emph{authormarkupposition} are defined: + \begin{description} - \item [\choption{right}] right of the text -- text\textsuperscript{example} (default value) - \item [\choption{left}] left of the text -- \textsuperscript{example}text + \item [\choption{right}] right of the text -- text\textsuperscript{author} (default) + \item [\choption{left}] left of the text -- \textsuperscript{author}text \end{description} -\begin{chusage} - \>\chcommand{usepackage[authormarkupposition=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[authormarkupposition=right]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[authormarkupposition=left]\{changes\}} -\end{chusage} +\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 are allowed: +The following values for \emph{authormarkuptext} are defined: + \begin{description} - \item [\choption{id}] author's id -- text\textsuperscript{id} (default value) + \item [\choption{id}] author's id -- text\textsuperscript{id} (default) \item [\choption{name}] author's name -- text\textsuperscript{authorname} \end{description} -\begin{chusage} - \>\chcommand{usepackage[authormarkuptext=\meta{markup}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[authormarkuptext=id]\{changes\}} \Corresponds\ \chcommand{usepackage\{changes\}}\\ - \>\chcommand{usepackage[authormarkuptext=name]\{changes\}} -\end{chusage} - +\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. -Two or more options have to be put in curly brackets. +Several options or options with special characters have to be put in curly brackets. -\begin{chusage} - \>\chcommand{usepackage[todonotes=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[todonotes=\{textsize=tiny\}]\{changes\}} -\end{chusage} +\chexample{usepackage_todonotes_changes} \subsubsection{truncate} -Options for the \chpackage{truncate} package can be specified as parameters of the \choption{truncate}-option. -Two or more options have to be put in curly brackets. +\chinline{usepackage_truncate_changes} -\begin{chusage} - \>\chcommand{usepackage[truncate=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[truncate=hyphenate]\{changes\}} -\end{chusage} +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} -Options for the \chpackage{ulem} package can be specified as parameters of the \choption{ulem}-option. -Two or more options have to be put in curly brackets. +\chinline{usepackage_ulem_changes} -\begin{chusage} - \>\chcommand{usepackage[ulem=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[ulem=UWforbf]\{changes\}}\\ - \>\chcommand{usepackage[ulem=\{normalem,normalbf\}]\{changes\}} -\end{chusage} +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. -Two or more option have to be embraced in curly brackets. +Several options or options with special characters have to be put in curly brackets. -\begin{chusage} - \>\chcommand{usepackage[xcolor=\meta{options}]\{changes\}}\\ - \usageexample - \>\chcommand{usepackage[xcolor=dvipdf]\{changes\}}\\ - \>\chcommand{usepackage[xcolor=\{dvipdf,gray\}]\{changes\}} -\end{chusage} +\chexample{usepackage_xcolor_changes} %^^A -- Change management ---------------------------------------------------------- \subsection{Change management} -\label{sec:user:changemanagement} +\label{sec:ui:changemanagement} + +\localtableofcontents -All examples use comment markup \emph{uwave}, because todo notes or margin notes are not allowed in tabbing environments (see \autoref{sec:limitations}). +\chnewcmd{added} -\subsubsection{\chcommand{added}} -\DescribeMacro{\added} +\chinline{added} -The command \chcommand{added} marks new text. -The new text is the mandatory argument for the command, thus it is written in curly braces. +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}. @@ -500,103 +521,85 @@ If the comment contains special characters or spaces, use curly brackets to encl If a comment is given, the direct author markup at the changes text is omitted, because the author is printed in the comment. -\begin{chusage} - \>\chcommand{added[id=\meta{author's id}, comment=\meta{comment}]\{\meta{new text}\}}\\ - \usageexample - \>\texttt{This is \chcommand{added}[id=EK]\{new\} text.}\\ - \>This is \added[id=EK]{new} text.\\ - \>\texttt{This is \chcommand{added}[id=EK, comment=\{has to be in it\}]\{new\} text.}\\ - \>This is \added[id=EK, comment={has to be in it}]{new} text.\\ - \>\texttt{This is \chcommand{added}[comment=anonymous]\{new\} text.}\\ - \>This is \added[comment=anonymous]{new} text. -\end{chusage} +\chexample{added} +\chresult{added} -\subsubsection{\chcommand{deleted}} -\DescribeMacro{\deleted} +\chnewcmd{deleted} + +\chinline{deleted} The command \chcommand{deleted} marks deleted text. -For arguments see \chcommand{added}. +The deleted text is given in curly braces. + +For the optional arguments see \chcommand{added} (\autoref{sec:ui:cmd:added}). + +\chexample{deleted} +\chresult{deleted} -\begin{chusage} - \>\chcommand{deleted[id=\meta{author's id}, comment=\meta{comment}]\{\meta{deleted text}\}}\\ - \usageexample - \>\texttt{This is \chcommand{deleted}[comment=obsolete]\{bad\} text.}\\ - \>This is \deleted[comment=obsolete]{bad} text. -\end{chusage} -\subsubsection{\chcommand{replaced}} -\DescribeMacro{\replaced} +\chnewcmd{replaced} + +\chinline{replaced} The command \chcommand{replaced} marks replaced text. -Mandatory arguments are the new text and the old text. -For optional arguments see \chcommand{added}. +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}). -\begin{chusage} - \>\chcommand{replaced[id=\meta{author's id}, comment=\meta{comment}]\{\meta{new text}\}\{\meta{old text}\}}\\ - \usageexample - \>\texttt{This is \chcommand{replaced}[id=EK]\{nice\}\{bad\} text.}\\ - \>This is \replaced[id=EK]{nice}{bad} text. -\end{chusage} +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:user:comment} +\label{sec:ui:comment} -\subsubsection{\chcommand{highlight}} -\DescribeMacro{\highlight} +\localtableofcontents -The command \chcommand{highlight} highlights text and adds a comment to the document. -The highlighted text is the mandatory argument for the command, thus it is written in curly braces. +\chnewcmd{highlight} -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. +\chinline{highlight} -If a comment is given, the direct author markup at the changes text is omitted, because the author is printed in the comment. +The command \chcommand{highlight} highlights text. +The highlighted text is given in curly braces. -\begin{chusage} - \>\chcommand{highlight[id=\meta{author's id}, comment=\meta{comment}]\{\meta{highlighted text}\}}\\ - \usageexample - \>\texttt{This is \chcommand{highlight}[id=EK, comment=\{my comment\}]\{highlighted\} text.}\\ - \>This is \highlight[id=EK, comment={my comment}]{highlighted} text.\\ - \>\texttt{This is \chcommand{highlight}[comment=\{anonymous comment\}\{anonymously highlighted\} text.}\\ - \>This is \highlight[comment={anonymous comment}]{anonymously highlighted} text. -\end{chusage} +For the optional arguments see \chcommand{added} (\autoref{sec:ui:cmd:added}). -\subsubsection{\chcommand{comment}} -\DescribeMacro{\comment} +\chexample{highlight} +\chresult{highlight} + + +\chnewcmd{comment} + +\chinline{comment} The command \chcommand{comments} adds a comment to the document. -The comment is the mandatory argument for the command, thus it is written in curly braces. +The comment is given in curly braces. -The optional argument contains a key-value-pair for the author-id. +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, the number is printed in the comment. +The comments are numbered automatically, the number is printed in the comment. -\begin{chusage} - \>\chcommand{comment[id=\meta{author's id}]\{\meta{comment}\}}\\ - \usageexample - \>\texttt{This is commented\chcommand{comment}[id=EK]\{my comment\} text.}\\ - \>This is commented\comment[id=EK]{my comment} text.\\ - \>\texttt{This is commented\chcommand{comment}\{anonymous comment\} text.}\\ - \>This is commented\comment{anonymous comment} text. -\end{chusage} +\chexample{comment} +\chresult{comment} %^^A -- Overview of changes \subsection{Overview of changes} -\label{sec:user:overview} +\label{sec:ui:overview} + +\chnewcmd{listofchanges} -\subsubsection{\chcommand{listofchanges}} -\DescribeMacro{\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. @@ -604,21 +607,21 @@ Therefore you need two \hologo{LaTeX}-runs for an up-to-date list of changes. There are three optional arguments: -\begin{itemize} - \item style - \item title - \item show -\end{itemize} +\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. -There are three styles allowed: +Three styles are defined: -\begin{itemize} - \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{itemize} +\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. @@ -626,200 +629,208 @@ If you want to use special characters or spaces in the title, enclose it in curl \paragraph{show} The \choption{show} argument defines which types of change markup are shown in the list of changes. -The following values are allowed: - -\begin{itemize} - \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{itemize} - 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}. -\begin{chusage} - \>\chcommand{listofchanges}\texttt{[style=<list|summary|compactsummary>, title=<title>,}\\ - \>\>\texttt{show=<type>]}\\ - \usageexample - \>\chcommand{listofchanges}\\ - \>\chcommand{listofchanges[style=list]} \Corresponds\ \chcommand{listofchanges}\\ - \>\chcommand{listofchanges[style=summary, title=\{My Summary\}]}\\ - \>\chcommand{listofchanges[title=\{List of comments\}, show=comment]} -\end{chusage} +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:user:authormanagement} +\label{sec:ui:authormanagement} -\subsubsection{\chcommand{definechangesauthor}} -\DescribeMacro{\definechangesauthor} +\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. -\begin{chusage} - \>\chcommand{definechangesauthor[name=\{\meta{author's name}\}, color=\{\meta{color}\}]\{\meta{author's id}\}}\\ - \usageexample - \>\chcommand{definechangesauthor\{EK\}}\\ - \>\chcommand{definechangesauthor[color=orange]\{EK\}}\\ - \>\chcommand{definechangesauthor[name=\{Ekkart Kleinod\}]\{EK\}}\\ - \>\chcommand{definechangesauthor[name=\{Ekkart Kleinod\}, color=orange]\{EK\}} -\end{chusage} +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:user:customizingoutput} +\label{sec:ui:customizingoutput} + +\localtableofcontents +\chnewcmd{setaddedmarkup} -\subsubsection{\chcommand{setaddedmarkup}} -\DescribeMacro{\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: any \hologo{LaTeX}-commands, added text can be used with ``\#1''. +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} -\begin{chusage} - \>\chcommand{setaddedmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setaddedmarkup\{}\chcommand{emph\{\#1\}}\}\\ - \>\chcommand{setaddedmarkup\{+++: \#1\}} -\end{chusage} +\chnewcmd{setdeletedmarkup} -\subsubsection{\chcommand{setdeletedmarkup}} -\DescribeMacro{\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: any \hologo{LaTeX}-commands, deleted text can be used with ``\#1''. +Values for definition: -\begin{chusage} - \>\chcommand{setdeletedmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setdeletedmarkup\{}\chcommand{emph\{\#1\}}\}\\ - \>\chcommand{setdeletedmarkup\{-\,-\,-: \#1\}} -\end{chusage} +\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. -\subsubsection{\chcommand{sethighlightmarkup}} -\DescribeMacro{\sethighlightmarkup} +\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: any \hologo{LaTeX}-commands, highlighted text can be used with ``\#1''. -The author's color can be used with ``authorcolor''. +Values for definition: -\begin{chusage} - \>\chcommand{sethighlightmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{sethighlightmarkup\{}\chcommand{emph\{\#1\}}\}\\ - \>\chcommand{sethighlightmarkup\{\chcommand{ifthenelse}\{\chcommand{isColored}\}\{\chcommand{color}\{authorcolor!60\}\}\{\}!!: \#1\}} -\end{chusage} +\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} -\subsubsection{\chcommand{setcommentmarkup}} -\DescribeMacro{\setcommentmarkup} + +\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: any \hologo{LaTeX}-commands, comment text can be used with ``\#1'', author's id with ``\#2'', and author output (id or name) with ``\#3''. -The author's color can be used with ``authorcolor'' and the comment count of the autor is stored in ``authorcommentcount''. +Values for definition: -\begin{chusage} - \>\chcommand{setcommentmarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setcommentmarkup\{--- \#1 ---\}}\\ - \>\chcommand{setcommentmarkup}\{\chcommand{ifthenelse}\{\chcommand{isColored}\}\{\chcommand{color}\{authorcolor\}\}\{\}\#1\}\\ - \>\chcommand{setcommentmarkup}\{\chcommand{ifthenelse}\{\chcommand{isAnonymous\{\#2\}}\}\{\}\{\chcommand{textbf}\{\#3: \}\}\#1\}\\ - \>\chcommand{setcommentmarkup}\{[\chcommand{arabic}\{authorcommentcount\}] \#1\} -\end{chusage} +\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} -\subsubsection{\chcommand{setauthormarkup}} -\DescribeMacro{\setauthormarkup} +\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: any \hologo{LaTeX}-commands, author's text can be used with ``\#1''. +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} -\begin{chusage} - \>\chcommand{setauthormarkup\{\meta{definition}\}}\\ - \usageexample - \>\chcommand{setauthormarkup\{(\#1)\}}\\ - \>\chcommand{setauthormarkup\{(\#1)\textasciitilde{}-{}-\textasciitilde{}\}}\\ - \>\chcommand{setauthormarkup\{}\chcommand{marginpar\{\#1\}\}} -\end{chusage} +\chnewcmd{setauthormarkupposition} -\subsubsection{\chcommand{setauthormarkupposition}} -\DescribeMacro{\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. -Possible values: \emph{left} == left of the changes; all other values: right +The following values for \emph{authormarkupposition} are defined: -\begin{chusage} - \>\chcommand{setauthormarkupposition\{\meta{position}\}}\\ - \usageexample - \>\chcommand{setauthormarkupposition\{left\}} -\end{chusage} +\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} -\subsubsection{\chcommand{setauthormarkuptext}} -\DescribeMacro{\setauthormarkuptext} +\chnewcmd{setauthormarkuptext} + +\chinline{setauthormarkuptext} The command \chcommand{setauthormarkuptext} defines the text for the author's markup. The default markup is the author's id. -Possible values: \emph{name} == author's name; all other values: 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} -\begin{chusage} - \>\chcommand{setauthormarkuptext\{\meta{text}\}}\\ - \usageexample - \>\chcommand{setauthormarkuptext\{name\}} -\end{chusage} +\chexample{setauthormarkuptext} -\subsubsection{\chcommand{settruncatewidth}} -\DescribeMacro{\settruncatewidth} +\chnewcmd{settruncatewidth} -The command \chcommand{settruncatewidth} sets the width of the truncation in the list of changes to the given value. +\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} -\subsubsection{\chcommand{setsummarywidth}} -\DescribeMacro{\setsummarywidth} +\chnewcmd{setsummarywidth} + +\chinline{setsummarywidth} -The command \chcommand{setsummarywidth} sets the width of the list of changes in summary style to the given length. +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} -\subsubsection{\chcommand{setsummarytowidth}} -\DescribeMacro{\setsummarytowidth} +\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. @@ -827,26 +838,26 @@ The command \chcommand{setsummarytowidth} sets the width of the list of changes -\subsubsection{\chcommand{setsocextension}} -\DescribeMacro{\setsocextension} +\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 stated below, the soc-file for ``\texttt{foo.tex}'' would be named ``\texttt{foo.changes}'' instead of the default name ``\texttt{foo.soc}''. -\begin{chusage} - \>\chcommand{setsocextension\{\meta{extension}\}}\\ - \usageexample - \>\chcommand{setsocextension\{changes\}} -\end{chusage} +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:user: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. @@ -879,6 +890,7 @@ Thanks. The authors are (in alphabetical order): \begin{itemize} \item Chiaradonna, Silvano + \item Cui, Yvon \item Fischer, Ulrike \item Giovannini, Daniele \item Kleinod, Ekkart @@ -912,8 +924,8 @@ If you are interested in planned new features, please see Copyright 2007-2018 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 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. diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_added.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_added.tex new file mode 100644 index 00000000000..917cd787461 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_comment.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_comment.tex new file mode 100644 index 00000000000..2b0655a2c4b --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_definechangesauthor.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_definechangesauthor.tex new file mode 100644 index 00000000000..278fcc6e045 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_deleted.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_deleted.tex new file mode 100644 index 00000000000..3ae710b378f --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_highlight.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_highlight.tex new file mode 100644 index 00000000000..f7ae9fcfb55 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_listofchanges.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_listofchanges.tex new file mode 100644 index 00000000000..28670de33ea --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_replaced.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_replaced.tex new file mode 100644 index 00000000000..e1040929f7c --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_setaddedmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setaddedmarkup.tex new file mode 100644 index 00000000000..49e9386fc37 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setaddedmarkup.tex @@ -0,0 +1,2 @@ +\setaddedmarkup{\emph{#1}} +\setaddedmarkup{+++: #1} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkup.tex new file mode 100644 index 00000000000..51592c856b2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkup.tex @@ -0,0 +1,3 @@ +\setauthormarkup{(#1)} +\setauthormarkup{(#1)~--~} +\setauthormarkup{\marginpar{#1}} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkupposition.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkupposition.tex new file mode 100644 index 00000000000..a94425ea8a6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkupposition.tex @@ -0,0 +1,2 @@ +\setauthormarkupposition{right} +\setauthormarkupposition{left} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkuptext.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkuptext.tex new file mode 100644 index 00000000000..f9b15959f5a --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setauthormarkuptext.tex @@ -0,0 +1,2 @@ +\setauthormarkuptext{id} +\setauthormarkuptext{name} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_setcommentmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setcommentmarkup.tex new file mode 100644 index 00000000000..121e2d9dc82 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_setdeletedmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setdeletedmarkup.tex new file mode 100644 index 00000000000..f7ed2e21149 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setdeletedmarkup.tex @@ -0,0 +1,2 @@ +\setdeletedmarkup{\emph{#1}} +\setdeletedmarkup{---: #1} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_sethighlightmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_sethighlightmarkup.tex new file mode 100644 index 00000000000..e731735ce2a --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_sethighlightmarkup.tex @@ -0,0 +1,2 @@ +\sethighlightmarkup{\emph{#1}} +\sethighlightmarkup{\ifthenelse{\isColored}{\color{authorcolor}}{}\#\#: #1} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_setsocextension.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setsocextension.tex new file mode 100644 index 00000000000..381c411114e --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_setsocextension.tex @@ -0,0 +1,2 @@ +\setsocextension{changes} +\setsocextension{chg} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_addedmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_addedmarkup_changes.tex new file mode 100644 index 00000000000..32a2415bf3a --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_authormarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_authormarkup_changes.tex new file mode 100644 index 00000000000..4008a8f7849 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_authormarkupposition_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_authormarkupposition_changes.tex new file mode 100644 index 00000000000..9467a99c556 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_authormarkuptext_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_authormarkuptext_changes.tex new file mode 100644 index 00000000000..9d079083145 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_commentmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_commentmarkup_changes.tex new file mode 100644 index 00000000000..5d590fa14f5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_deletedmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_deletedmarkup_changes.tex new file mode 100644 index 00000000000..474ad61388d --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_highlightmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_highlightmarkup_changes.tex new file mode 100644 index 00000000000..282d033540a --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_markup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_markup_changes.tex new file mode 100644 index 00000000000..897656139c9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_todonotes_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_todonotes_changes.tex new file mode 100644 index 00000000000..be450838ede --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_todonotes_changes.tex @@ -0,0 +1 @@ +\usepackage[todonotes={textsize=tiny}]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_truncate_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_truncate_changes.tex new file mode 100644 index 00000000000..075ec61a805 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_truncate_changes.tex @@ -0,0 +1 @@ +\usepackage[truncate=hyphenate]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_ulem_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_ulem_changes.tex new file mode 100644 index 00000000000..54aba865029 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_ulem_changes.tex @@ -0,0 +1,2 @@ +\usepackage[ulem=UWforbf]{changes} +\usepackage[ulem={normalem,normalbf}]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_xcolor_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_xcolor_changes.tex new file mode 100644 index 00000000000..36409ef3e46 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/ex_usepackage_xcolor_changes.tex @@ -0,0 +1,2 @@ +\usepackage[xcolor=dvipdf]{changes} +\usepackage[xcolor={dvipdf,gray}]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_added.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_added.tex new file mode 100644 index 00000000000..0bd19a7a55e --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_added.tex @@ -0,0 +1 @@ +\added[id=<id>, comment=<comment>]{<new text>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_comment.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_comment.tex new file mode 100644 index 00000000000..851b22f22f8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_comment.tex @@ -0,0 +1 @@ +\comment[id=<id>]{<comment>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_definechangesauthor.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_definechangesauthor.tex new file mode 100644 index 00000000000..196c911decf --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_definechangesauthor.tex @@ -0,0 +1 @@ +\definechangesauthor[name=<name>, color=<color>]{<id>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_definechangesauthor_options.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_definechangesauthor_options.tex deleted file mode 100644 index 44bcf546071..00000000000 --- a/Master/texmf-dist/doc/latex/changes/userdoc/in_definechangesauthor_options.tex +++ /dev/null @@ -1 +0,0 @@ -\lstinline!\definechangesauthor[<options>]{<id>}! diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_deleted.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_deleted.tex new file mode 100644 index 00000000000..0a6b6fa444f --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_deleted.tex @@ -0,0 +1 @@ +\deleted[id=<id>, comment=<comment>]{<old text>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_highlight.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_highlight.tex new file mode 100644 index 00000000000..ef6a26c546b --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_highlight.tex @@ -0,0 +1 @@ +\highlight[id=<id>, comment=<comment>]{<text>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_listofchanges.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_listofchanges.tex new file mode 100644 index 00000000000..62eed33347e --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_listofchanges.tex @@ -0,0 +1 @@ +\listofchanges[style=<style>, title=<title>, show=<type>] diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_path_doc_examples.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_path_doc_examples.tex new file mode 100644 index 00000000000..ebd4eab8622 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_path_doc_examples.tex @@ -0,0 +1 @@ +<texpath>/doc/latex/changes/examples/ diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_path_script.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_path_script.tex new file mode 100644 index 00000000000..fe17199aed2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_path_script.tex @@ -0,0 +1 @@ +<texpath>/scripts/changes/ diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_replaced.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_replaced.tex new file mode 100644 index 00000000000..3c51087abf4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_replaced.tex @@ -0,0 +1 @@ +\replaced[id=<id>, comment=<comment>]{<new text>}{<old text>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setaddedmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setaddedmarkup.tex new file mode 100644 index 00000000000..b0038e36409 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setaddedmarkup.tex @@ -0,0 +1 @@ +\setaddedmarkup{<definition>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkup.tex new file mode 100644 index 00000000000..b5f1edba8b2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkup.tex @@ -0,0 +1 @@ +\setauthormarkup{<definition>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkupposition.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkupposition.tex new file mode 100644 index 00000000000..d66708d7430 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkupposition.tex @@ -0,0 +1 @@ +\setauthormarkupposition{<authormarkupposition>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkuptext.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkuptext.tex new file mode 100644 index 00000000000..bcb95276bda --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setauthormarkuptext.tex @@ -0,0 +1 @@ +\setauthormarkuptext{<authormarkuptext>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setcommentmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setcommentmarkup.tex new file mode 100644 index 00000000000..ad8bd1bba19 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setcommentmarkup.tex @@ -0,0 +1 @@ +\setcommentmarkup{<definition>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setdeletedmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setdeletedmarkup.tex new file mode 100644 index 00000000000..41f404cd9c4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setdeletedmarkup.tex @@ -0,0 +1 @@ +\setdeletedmarkup{<definition>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_sethighlightmarkup.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_sethighlightmarkup.tex new file mode 100644 index 00000000000..b67cec700af --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_sethighlightmarkup.tex @@ -0,0 +1 @@ +\sethighlightmarkup{<definition>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setsocextension.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setsocextension.tex new file mode 100644 index 00000000000..d0d3339e822 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setsocextension.tex @@ -0,0 +1 @@ +\setsocextension{<extension>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarytowidth.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarytowidth.tex index 0156e231346..25238fc21a9 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarytowidth.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarytowidth.tex @@ -1 +1 @@ -\lstinline!\setsummarytowidth{<text>}! +\setsummarytowidth{<text>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarywidth.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarywidth.tex index 3e821561eda..4d84a18bf12 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarywidth.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_setsummarywidth.tex @@ -1 +1 @@ -\lstinline!\setsummarywidth{<length>}! +\setsummarywidth{<width>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_settruncatewidth.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_settruncatewidth.tex index eaee7c01711..c6de5edfb60 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/in_settruncatewidth.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_settruncatewidth.tex @@ -1 +1 @@ -\lstinline!\settruncatewidth{<length>}! +\settruncatewidth{<width>} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_addedmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_addedmarkup_changes.tex new file mode 100644 index 00000000000..ffeb96ce16c --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_addedmarkup_changes.tex @@ -0,0 +1 @@ +\usepackage[addedmarkup=<addedmarkup>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkup_changes.tex new file mode 100644 index 00000000000..b02ea84a5f8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkup_changes.tex @@ -0,0 +1 @@ +\usepackage[authormarkup=<authormarkup>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkupposition_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkupposition_changes.tex new file mode 100644 index 00000000000..a031eda5e96 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkupposition_changes.tex @@ -0,0 +1 @@ +\usepackage[authormarkupposition=<authormarkupposition>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkuptext_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkuptext_changes.tex new file mode 100644 index 00000000000..e824e626f0b --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_authormarkuptext_changes.tex @@ -0,0 +1 @@ +\usepackage[authormarkuptext=<authormarkuptext>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_changes.tex index 56659b0aef4..0f542f61dc0 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_changes.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_changes.tex @@ -1 +1 @@ -\lstinline!\usepackage{changes}! +\usepackage{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_commentmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_commentmarkup_changes.tex new file mode 100644 index 00000000000..6f92a4bccd9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_commentmarkup_changes.tex @@ -0,0 +1 @@ +\usepackage[commentmarkup=<commentmarkup>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_deletedmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_deletedmarkup_changes.tex new file mode 100644 index 00000000000..4678399b55b --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_deletedmarkup_changes.tex @@ -0,0 +1 @@ +\usepackage[deletedmarkup=<deletedmarkup>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_draft_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_draft_changes.tex new file mode 100644 index 00000000000..5d6c17eea20 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_draft_changes.tex @@ -0,0 +1 @@ +\usepackage[draft]{changes} !\Corresponds! \usepackage{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_final_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_final_changes.tex new file mode 100644 index 00000000000..50e96e334c6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_final_changes.tex @@ -0,0 +1 @@ +\usepackage[final]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_highlightmarkup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_highlightmarkup_changes.tex new file mode 100644 index 00000000000..b834ac3feef --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_highlightmarkup_changes.tex @@ -0,0 +1 @@ +\usepackage[highlightmarkup=<highlightmarkup>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_markup_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_markup_changes.tex new file mode 100644 index 00000000000..0b1b3e4e45c --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_markup_changes.tex @@ -0,0 +1 @@ +\usepackage[markup=<markup>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_options_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_options_changes.tex index c3e60d24716..6adf76a9dca 100644 --- a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_options_changes.tex +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_options_changes.tex @@ -1 +1 @@ -\lstinline!\usepackage[<options>]{changes}! +\usepackage[<options>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_todonotes_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_todonotes_changes.tex new file mode 100644 index 00000000000..4761059b902 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_todonotes_changes.tex @@ -0,0 +1 @@ +\usepackage[todonotes=<options>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_truncate_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_truncate_changes.tex new file mode 100644 index 00000000000..4afeb2fa499 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_truncate_changes.tex @@ -0,0 +1 @@ +\usepackage[truncate=<options>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_ulem_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_ulem_changes.tex new file mode 100644 index 00000000000..ea60df8a494 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_ulem_changes.tex @@ -0,0 +1 @@ +\usepackage[ulem=<options>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_xcolor_changes.tex b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_xcolor_changes.tex new file mode 100644 index 00000000000..6a99177d828 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/in_usepackage_xcolor_changes.tex @@ -0,0 +1 @@ +\usepackage[xcolor=<options>]{changes} diff --git a/Master/texmf-dist/doc/latex/changes/userdoc/script_pymergechanges.tex b/Master/texmf-dist/doc/latex/changes/userdoc/script_pymergechanges.tex new file mode 100644 index 00000000000..7c677fa4ab1 --- /dev/null +++ b/Master/texmf-dist/doc/latex/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/Master/texmf-dist/doc/latex/changes/userdoc/script_pymergechanges_empty.tex b/Master/texmf-dist/doc/latex/changes/userdoc/script_pymergechanges_empty.tex new file mode 100644 index 00000000000..7715bb09894 --- /dev/null +++ b/Master/texmf-dist/doc/latex/changes/userdoc/script_pymergechanges_empty.tex @@ -0,0 +1 @@ +python pyMergeChanges.py diff --git a/Master/texmf-dist/scripts/changes/delcmdchanges.bash b/Master/texmf-dist/scripts/changes/delcmdchanges.bash deleted file mode 100755 index 6f18194ee7b..00000000000 --- a/Master/texmf-dist/scripts/changes/delcmdchanges.bash +++ /dev/null @@ -1,249 +0,0 @@ -#!/bin/bash - -################################################################################ -# -# Copyright (C) 2011 Silvano Chiaradonna (ISTI-CNR) -# -# Macro: delcmdchanges.bash -# -# License: -# This program is free software; you can redistribute -# it and/or modify it under the terms of the -# GNU General Public License as published by the Free -# Software Foundation; either version 2 of the License, -# or (at your option) any later version. -# -# This program is distributed in the hope that it will -# be useful, but WITHOUT ANY WARRANTY; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. See the GNU General Public -# License for more details. -# -# You should have received a copy of the GNU General -# Public License along with this program; if not, -# write to the Free Software Foundation, Inc., 59 -# Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# An on-line copy of the GNU General Public License can -# be downloaded from the FSF web page at: -# http://www.gnu.org/copyleft/gpl.html -# -# Version: 1.0 -# -# Purpose: -# This script deletes all changes-commands of the package changes.sty, accepting changes. If option -i is specified you will be prompted to accept or reject changes interactively. -# -# Usage: -# delcmdchanges.bash [-i] [-h] <inputfile> <outputfile> -# -# Requirements: -# linux systems -# -################################################################################ - -usage() -{ - cat << EOF -usage: $0 [options] <inputfile> <outputfile> - -This script deletes all changes-commands of the package changes.sty, accepting changes. If option -i is specified you will be prompted to accept or reject changes interactively. - -options: - -h show this message - -i interactive mode -EOF -} - -#-----------------------MAIN---------------- - -while getopts ":ih" opt; do - case $opt in - i) - imode="1" - shift - ;; - h) - usage - exit - ;; - \?) - echo "Invalid option: -$OPTARG" >&2 - usage - exit - ;; - esac -done - -if [ ! -e "$1" ]; then - echo "Input file not found: $1" >&2 - exit -fi - -INFILE="$1" -OUTFILE="$2" - -rm -f "${OUTFILE}" -touch "${OUTFILE}" - -awk -v im=${imode} -v fn=${OUTFILE} ' -# remove commands (accepting changes): -# \added[<authorid>][<remark>]{<new text>} -# \deleted[<authorid>][<remark>]{<deleted text>} -# \replaced[<authorid>][<remark>]{<new text>}{<old text>} - - BEGIN { EOT = SUBSEP } - -{ line[NR] = $0 } - -END { - do { - buf0 = "" - found = 0 - added = 0 - deleted = 0 - replaced = 0 - while (!found && (c = getc()) != EOT) { # parsing commands - buf0 = buf0 c - if( match(buf0, /\\added[[:space:]]*\[[^\]]*\][[:space:]]*\[[^\]]*\][[:space:]]*{/) || - match(buf0, /\\added[[:space:]]*\[[^\]]*\][[:space:]]*{/) || - match(buf0, /\\added[[:space:]]*{/) ) { # found command \added[<authorid>][<remark>]{<new text>} - added = 1 - found = 1 - balance = 1 - } else - if( match(buf0, /\\deleted[[:space:]]*\[[^\]]*\][[:space:]]*\[[^\]]*\][[:space:]]*{/) || - match(buf0, /\\deleted[[:space:]]*\[[^\]]*\][[:space:]]*{/) || - match(buf0, /\\deleted[[:space:]]*{/) ) { # found command \deleted[<authorid>][<remark>]{<deleted text>} - deleted = 1 - found = 1 - balance = 1 - } else - if( match(buf0, /\\replaced[[:space:]]*\[[^\]]*\][[:space:]]*\[[^\]]*\][[:space:]]*{/) || - match(buf0, /\\replaced[[:space:]]*\[[^\]]*\][[:space:]]*{/) || - match(buf0, /\\replaced[[:space:]]*{/) ) { # found command \replaced[<authorid>][<remark>]{<new text>}{<old text>} - replaced = 1 - found = 1 - balance = 1 - } - } - if( RLENGTH == -1 ) # command not found - pbuf0 = buf0 - else { # command found - pbuf0 = substr(buf0, 1, RSTART-1) - cmd = substr(buf0, RSTART, RLENGTH) # the command - } - printf("%s", pbuf0) >> fn # print text preceding command - if (c == EOT) - break - buf = "" - if( added ) { # command \added[][]{} - while (found && balance > 0 && (c = getc()) != EOT) # parsing <new text> - buf = buf c # <new text> - cmd = cmd buf # the command - if ( im ) { # interactive mode - printf("\nat line: %d\n%s\n", nr,cmd) - printf("Accept added text, Reject added text, Ignore or Finish accepting changes? [A|r|i|f]") - getline imoderes < "/dev/tty" - if( imoderes != "r" && imoderes != "i" ) { # accept added text - pbuf = substr(buf, 1, length(buf)-1) # remove ending curly brace "}" - printf("%s", pbuf) >> fn # print <new text> - if( imoderes == "f" ) # finish accepting changes - im = 0 # normal mode - } else - if( imoderes == "i" ) # ignore cmd - printf("%s", cmd) >> fn - } else { # accept change - pbuf = substr(buf, 1, length(buf)-1) # remove ending curly brace "}" - printf("%s", pbuf) >> fn # print <new text> - } - } # \added[][]{} - else - if( deleted ) { # command \deleted[][]{} - while (found && balance > 0 && (c = getc()) != EOT) # parsing <deleted text> - buf = buf c # <deleted text> to skip - cmd = cmd buf # the command - if ( im ) { # interactive mode - printf("\nat line: %d\n%s\n", nr,cmd) - printf("Accept to remove text, Reject deletion, Ignore or Finish accepting changes? [A|r|i|f]") - getline imoderes < "/dev/tty" - if( imoderes == "r" ) { # reject deletion - pbuf = substr(buf, 1, length(buf)-1) # remove ending curly brace "}" - printf("%s", pbuf) >> fn # print <deleted text> - } else - if( imoderes == "i" ) # ignore cmd - printf("%s", cmd) >> fn - else # accept changes - if( imoderes == "f" ) # finish accepting changes - im = 0 # normal mode - } # else accept changes - } # \deleted[][]{} - else - if ( replaced ) { # command \replaced[][]{}{} - while (replaced && balance > 0 && (c = getc()) != EOT) # parsing <new text> - buf = buf c # <new text> - cmd = cmd buf # the command - pbufnt = substr(buf, 1, length(buf)-1) # new text - buf = "" - skip=0 - while ( !skip && (c = getc()) != EOT ) { # skip first curly brace "{" - buf = buf c - if ( c !~ /[[:space:]]/ ) - skip = 1 - } - cmd = cmd buf # the command - if ( c != "{" ) { # found "{" - printf("\nOps! Syntax error at line %d of input file: \"%s\"\nPlease fix command \\replaced[][]{}{}: \"{\" is expected.\n\n", nr+1, cmd) - break - } - buf = "" - balance = 1 # reset balance - while (replaced && balance > 0 && (c = getc()) != EOT) # parsing <old text> - buf = buf c # <old text> - cmd = cmd buf # the command - pbufot = substr(buf, 1, length(buf)) # old text - if ( im ) { # interactive mode - printf("\nat line: %d\n%s\n", nr,cmd) - printf("Accept change, Reject change, Ignore or Finish accepting changes? [A|r|i|f]") - getline imoderes < "/dev/tty" - if( imoderes == "r" ) { # reject change - printf("%s", pbufot) >> fn # print <old text> - } else - if( imoderes == "i" ) { # ignore cmd - printf("%s", cmd) >> fn - } else { # accept change - printf("%s", pbufnt) >> fn # print <new text> - if( imoderes == "f" ) # finish accepting changes - im = 0 # normal mode - } - } else { # accept change - printf("%s", pbufnt) >> fn # print <new text> - } - } # \replaced[][]{}{} - } while(c != EOT) -} - -function getc() -{ - if (!nr) { - nr = 1 - nc = 1 - } - - if (nr > NR) - return EOT - if (nc > length(line[nr])) { - ++nr - nc = 1 - return "\n" - } - c = substr(line[nr], nc, 1) - ++nc - if (c == "{") - ++balance - else if (c == "}") - --balance - if (balance < 0) - balance = 0 - return c -} ' "${INFILE}" - diff --git a/Master/texmf-dist/scripts/changes/pyMergeChanges.py b/Master/texmf-dist/scripts/changes/pyMergeChanges.py new file mode 100755 index 00000000000..37209bdc649 --- /dev/null +++ b/Master/texmf-dist/scripts/changes/pyMergeChanges.py @@ -0,0 +1,277 @@ +#!/usr/bin/python +""" + pymergechanges: Merge commits made with changes package into text + Copyright (C) 2018 Y. Cui + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + +pymergechanges: Merge commits made with changes package into text + +Requires Python version 3; Tested on Python 3.6.6 + +Supported commands: added, deleted, replaced, highlight +Usage: python pyMergeChanges.py [-arh] <Input File> <Output File> +<Output File> will be overwritten and must be different than <Input 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. + +Created on Wed Dec 5 20:28:40 2018 + +""" + +import sys +import re +import codecs + +def parse_param(parstr): + if all(p in parstr for p in ('a', 'r')): + print('You cannot accept and reject at the same time.') + sys.exit(1) + parout = '' + for par in parstr[1:]: + if par == 'a': + print('Accepting all added, deleted and replaced') + parout += 'a' + elif par == 'r': + print('Rejecting all added, deleted and replaced') + parout += 'r' + elif par == 'h': + print('Removing all highlights.') + parout += 'h' + else: + print('Unknown parameter: ' + par) + sys.exit(1) + if not parout: + parout = 'i' + return parout + +def ask1(): # accept, reject, keep, break + if PARAMS == 'i': + while True: + ans = input('[a]ccept or [r]eject or [k]eep or [b]reak ? ').lower() + if ans == 'a': + print('Accepted.') + break + elif ans == 'r': + print('Rejected.') + break + elif ans == 'k': + print('Kept.') + break + elif ans == 'b': + print('Alright.') + break + elif any(p == 'a' for p in PARAMS): + print('Accepted.') + ans = 'a' + elif any(p == 'r' for p in PARAMS): + print('Rejected.') + ans = 'r' + else: + ans = 'k' + return ans + +def ask2(): # remove, keep, break + if PARAMS == 'i': + while True: + ans = input('[r]emove or [k]eep or [b]reak ? ').lower() + if ans == 'r': + print('Removed.') + break + elif ans == 'k': + print('Kept.') + break + elif ans == 'b': + print('Alright.') + break + return ans + elif any(p == 'h' for p in PARAMS): + print('Removed.') + ans = 'r' + else: + print('Kept.') + ans = 'k' + return ans + +def trim_space(line, pos): # trim two consecutive white spaces + if line[pos-1:pos+1] == ' ': + line = line[:pos] + line[pos+1:] + return line + +# BEGIN OF SCRIPT + +if len(sys.argv) not in [3, 4]: + print(__doc__) + sys.exit(1) + +# parse input parameters +if len(sys.argv) == 3: + print('Running in interactive mode. ') + INPUTFILE, OUTPUTFILE = sys.argv[1:] + PARAMS = "i" +if len(sys.argv) == 4: + PARAMLIST, INPUTFILE, OUTPUTFILE = sys.argv[1:] + PARAMS = parse_param(PARAMLIST) + +if INPUTFILE == OUTPUTFILE: + print('Input File and Output File must be different.') + sys.exit(1) + +RE_ADDED = re.compile(r'\\added(\[[^\]]*\]){0,1}\{([^\}]*)\}') +RE_DELETED = re.compile(r'\\deleted(\[[^\]]*\]){0,1}\{([^\}]*)\}') +RE_REPLACED = re.compile(r'\\replaced(\[[^\]]*\]){0,1}\{([^\}]*)\}\{([^\}]*)\}') +RE_HIGHLIGHT = re.compile(r'\\highlight(\[[^\]]*\]){0,1}\{([^\}]*)\}') +RE_COMMENT = re.compile(r'\\comment(\[[^\]]*\]){0,1}\{([^\}]*)\}') + +codecs.open(OUTPUTFILE, mode='w', encoding='utf8').close() +with codecs.open(INPUTFILE, mode='r', encoding='utf8') as fin, \ +codecs.open(OUTPUTFILE, mode='a', encoding='utf8') as fout: + LINE_COUNT = 0 + FLAG_FAST_BREAK = False # if you want to halt merging for some reason + for linein in fin: + if FLAG_FAST_BREAK: + fout.write(linein) + continue + LINE_COUNT += 1 + lineout = linein + matchAdded = RE_ADDED.search(lineout) + matchDeleted = RE_DELETED.search(lineout) + matchReplaced = RE_REPLACED.search(lineout) + matchHighlight = RE_HIGHLIGHT.search(lineout) + matchComment = RE_COMMENT.search(lineout) + flagHasCommit = matchAdded or matchDeleted or matchReplaced or matchHighlight or matchComment + if flagHasCommit: + print('\n******** In Line %i :\n %s' % (LINE_COUNT, lineout)) + next_pos = 0 + while matchAdded: + if FLAG_FAST_BREAK: + break + print('\n** add commit ** \n' + matchAdded.group()) + answer = ask1() + if answer == 'a': + lineout = (lineout[:matchAdded.start(0)] + + matchAdded.group(2) + lineout[matchAdded.end(0):]) + lineout = trim_space(lineout, matchAdded.start(0) + + len(matchAdded.group(2))) + lineout = trim_space(lineout, matchAdded.start(0)) + elif answer == 'r': + lineout = (lineout[:matchAdded.start(0)] + lineout[matchAdded.end(0):]) + lineout = trim_space(lineout, matchAdded.start(0)) + elif answer == 'k': + lineout = lineout + next_pos = matchAdded.end(0) + elif answer == 'b': + FLAG_FAST_BREAK = True + break + matchAdded = RE_ADDED.search(lineout, next_pos) # redo matching for updated text + + next_pos = 0 + while matchDeleted: + if FLAG_FAST_BREAK: + break + print('\n** delete commit ** \n' + matchDeleted.group()) + answer = ask1() + if answer == 'a': + lineout = (lineout[:matchDeleted.start(0)] + lineout[matchDeleted.end(0):]) + lineout = trim_space(lineout, matchDeleted.start(0)) + elif answer == 'r': + lineout = (lineout[:matchDeleted.start(0)] + matchDeleted.group(2) + + lineout[matchDeleted.end(0):]) + elif answer == 'k': + lineout = lineout + next_pos = matchDeleted.end(0) + elif answer == 'b': + FLAG_FAST_BREAK = True + break + matchDeleted = RE_DELETED.search(lineout, next_pos) + + next_pos = 0 + while matchReplaced: + if FLAG_FAST_BREAK: + break + print('\n** replace commit ** \n' + matchReplaced.group()) + answer = ask1() + if answer == 'a': + lineout = (lineout[:matchReplaced.start(0)] + + matchReplaced.group(2) + lineout[matchReplaced.end(0):]) + lineout = trim_space(lineout, matchReplaced.start(0) + + len(matchReplaced.group(2))) + lineout = trim_space(lineout, matchReplaced.start(0)) + elif answer == 'r': + lineout = (lineout[:matchReplaced.start(0)] + + matchReplaced.group(3) + lineout[matchReplaced.end(0):]) + lineout = trim_space(lineout, matchReplaced.start(0) + + len(matchReplaced.group(3))) + lineout = trim_space(lineout, matchReplaced.start(0)) + elif answer == 'k': + lineout = lineout + next_pos = matchReplaced.end(0) + elif answer == 'b': + FLAG_FAST_BREAK = True + break + matchReplaced = RE_REPLACED.search(lineout, next_pos) + + next_pos = 0 + while matchHighlight: + if FLAG_FAST_BREAK: + break + print('\n** highlight commit ** \n' + matchHighlight.group()) + answer = ask2() + if answer == 'r': + lineout = (lineout[:matchHighlight.start(0)] + + matchHighlight.group(2) + lineout[matchHighlight.end(0):]) + lineout = trim_space(lineout, matchHighlight.start(0) + + len(matchHighlight.group(2))) + lineout = trim_space(lineout, matchHighlight.start(0)) + elif answer == 'k': + lineout = lineout + next_pos = matchHighlight.end(0) + elif answer == 'b': + FLAG_FAST_BREAK = True + break + matchHighlight = RE_HIGHLIGHT.search(lineout, next_pos) + + next_pos = 0 + while matchComment: + if FLAG_FAST_BREAK: + break + print('\n** comment commit ** \n' + matchComment.group()) + answer = ask2() + if answer == 'r': + lineout = (lineout[:matchComment.start(0)] + + matchComment.group(2) + lineout[matchComment.end(0):]) + lineout = trim_space(lineout, matchComment.start(0) + + len(matchComment.group(2))) + lineout = trim_space(lineout, matchComment.start(0)) + elif answer == 'k': + lineout = lineout + next_pos = matchComment.end(0) + elif answer == 'b': + FLAG_FAST_BREAK = True + break + matchComment = RE_COMMENT.search(lineout, next_pos) + + if lineout.isspace(): + print('\nResult is empty line and not stored.') + else: + print('\nResult: \n' + lineout + '\n') + fout.write(lineout) + + else: + fout.write(linein) +# +# END OF SCRIPT diff --git a/Master/texmf-dist/source/latex/changes/changes.drv b/Master/texmf-dist/source/latex/changes/changes.drv index cfd116554cc..3fdbe3a5228 100644 --- a/Master/texmf-dist/source/latex/changes/changes.drv +++ b/Master/texmf-dist/source/latex/changes/changes.drv @@ -19,7 +19,7 @@ identifierstyle=\color{DimGrey}, morekeywords={ }, - keywordstyle=\color{LightSlateBlue}, + keywordstyle=\color{SteelBlue}, commentstyle=\itshape\color{Thistle}, backgroundcolor=\color{PapayaWhip}, columns=fixed, @@ -43,39 +43,117 @@ changes, color, comment, - compactsummary, deleted, definechangesauthor, highlight, - id, listofchanges, - name, replaced, - setsummarywidth, - setsummarytowidth, - settruncatewidth, style, +% + draft, + final, + markup, + addedmarkup, + deletedmarkup, + highlightmarkup, + commentmarkup, + authormarkup, + authormarkupposition, + authormarkuptext, + todonotes, + truncate, + ulem, xcolor, +% + default, + underlined, + bfit, + nocolor, +% + colored, + uline, + uuline, + uwave, + dashuline, + dotuline, + bf, + it, + sl, + em, +% + sout, + xout, +% + background, +% + todo, + margin, + footnote, +% + superscript, + subscript, + brackets, + none, +% + right, + left, +% + id, + name, +% + title, + show, +% + list, + summary, + compactsummary, +% + setaddedmarkup, + setdeletedmarkup, + sethighlightmarkup, + setcommentmarkup, + setauthormarkup, + setauthormarkupposition, + setauthormarkuptext, + settruncatewidth, + setsummarywidth, + setsummarytowidth, + setsocextension, }, - keywordstyle=\color{Chocolate}, + keywordstyle=\color{Peru}, moredelim=[s][\color{SlateGrey}]{<}{>}, - classoffset=0 + classoffset=0, + escapechar=! } -% todo notes -\usepackage{todonotes} +% minitocs +\usepackage{etoc} +\etocsettocstyle{}{} % language selection \selectlanguage{english} % use change management ;) -\usepackage[commentmarkup=uwave]{changes} -%\usepackage{changes} -\definechangesauthor[name={Ekkart Kleinod}, color=orange]{EK} - -% improve list layout -\usepackage{enumitem} -\setlist{noitemsep} +\usepackage{changes} +\definechangesauthor[name={Ekkart Kleinod}, color=Sienna]{EK} +\setcommentmarkup{% + \ifthenelse{\isColored}% + {% + \ifthenelse{\isAnonymous{#2}}% + {% + \todo[color=authorcolor!10, bordercolor=authorcolor, linecolor=authorcolor!70, nolist]{\footnotesize\textbf{[\arabic{authorcommentcount}]} #1}% + }{% + \todo[color=authorcolor!10, bordercolor=authorcolor, linecolor=authorcolor!70, nolist]{\footnotesize\textbf{[#3~\arabic{authorcommentcount}]} #1}% + }% + }{% + \ifthenelse{\isAnonymous{#2}}% + {% + \todo[color=black!0, bordercolor=black, linecolor=black!70, nolist]{\footnotesize\textbf{[\arabic{authorcommentcount}]} #1}% + }{% + \todo[color=black!0, bordercolor=black, linecolor=black!70, nolist]{\footnotesize\textbf{[#3~\arabic{authorcommentcount}]:} #1}% + }% + }% +}% % full index \EnableCrossrefs @@ -89,19 +167,10 @@ \newcommand{\chfile}[1]{\texttt{#1}} \newcommand{\chcommand}[1]{\texttt{\textbackslash{}#1}} -% makro headings -\makeatletter -\def\Describe@Macro#1{% - \endgroup% - \fbox{\PrintDescribeMacro{#1}}\par% - \SpecialUsageIndex{#1}\@esphack\ignorespaces% -} -\def\Describe@Env#1{% - \endgroup% - \fbox{\PrintDescribeEnv{#1}}\par% - \SpecialEnvIndex{#1}\@esphack\ignorespaces -} -\makeatother +% additional description list formatting +\newlength{\mylabelwidth} +\settowidth{\mylabelwidth}{\texttt{compactsummarym}} +\setlist[description]{style=nextline, font=\normalfont, leftmargin=\mylabelwidth} % catchall - english \newif\ifENGLISH @@ -113,17 +182,42 @@ \iflanguage{ngerman}{\GERMANtrue\ENGLISHfalse}{} \iflanguage{german}{\GERMANtrue\ENGLISHfalse}{} -% new language example: french -% \newif\ifFRENCH -% \FRENCHfalse -% \iflanguage{french}{\FRENCHtrue\ENGLISHfalse}{} - % example environment +\newcommand{\chinputlisting}[2]{% + \lstinputlisting[% + backgroundcolor=\color{white},% + xleftmargin=.5em,% + xrightmargin=.5em,% + frame=none,% + belowskip=0pt% + #1% + ]{#2}% +} +\newcommand{\chinline}[2][]{% + \chinputlisting{#1}{userdoc/in_#2}% +} \newcommand{\chexample}[1]{ - \input{userdoc/in_#1} - + \ifENGLISH + \minisec{Examples} + \fi + \ifGERMAN + \minisec{Beispiele} + \fi \lstinputlisting{userdoc/ex_#1} } +\newcommand{\chresult}[1]{ + \ifENGLISH + \minisec{Result} + \fi + \ifGERMAN + \minisec{Resultat} + \fi + \begin{quote} + \input{userdoc/ex_#1} + \end{quote} +} + + \newenvironment{chusage}{ \small \begin{tabbing} @@ -149,14 +243,28 @@ \fi } +% important things +\newcommand{\chimportant}[1]{% + \begin{quote}% + \color{Teal}% + #1% + \end{quote}% +} + +% new commands +\newcommand{\chnewcmd}[1]{ + \subsubsection{\chcommand{#1}} + \label{sec:ui:cmd:#1} +} + % document title \ifENGLISH \title{The \chpackage{changes}-package} - \subtitle{Manual change markup --- version 3.0.0} + \subtitle{Manual change markup --- version 3.1.0} \fi \ifGERMAN \title{Das \chpackage{changes}-Paket} - \subtitle{Manuelle Änderungsmarkierung -- Version 3.0.0} + \subtitle{Manuelle Änderungsmarkierung -- Version 3.1.0} \fi \author{Ekkart Kleinod} diff --git a/Master/texmf-dist/source/latex/changes/changes.dtx b/Master/texmf-dist/source/latex/changes/changes.dtx index 16ceb41975d..49da4a088d6 100644 --- a/Master/texmf-dist/source/latex/changes/changes.dtx +++ b/Master/texmf-dist/source/latex/changes/changes.dtx @@ -55,6 +55,7 @@ % \changes{v2.0.4}{2015/04/27}{unknown language does not lead to error: fallback English} % \changes{v2.1.0}{2018/10/10}{fixed problems with final option and additional spaces/blanks, warning for wrong list style} % \changes{v3.0.0}{2018/11/04}{commands for commenting and highlighting text, rewriting a lot of code, remark is now comment} +% \changes{v3.1.0}{2018/12/17}{new script for markup removal, improved user manual} % \GetFileInfo{changes.dtx} % \RecordChanges % @@ -95,8 +96,8 @@ % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{changes} -[2018/11/04 v3.0.0 changes package] -\typeout{*** changes package 2018/11/04 v3.0.0 ***} +[2018/12/17 v3.1.0 changes package] +\typeout{*** changes package 2018/12/17 v3.1.0 ***} % \end{macrocode} % % Package \chpackage{xkeyval} provides options with key-value-pairs. diff --git a/Master/texmf-dist/source/latex/changes/changes.ins b/Master/texmf-dist/source/latex/changes/changes.ins index 00129d5b1bd..a72f67b115f 100644 --- a/Master/texmf-dist/source/latex/changes/changes.ins +++ b/Master/texmf-dist/source/latex/changes/changes.ins @@ -1,6 +1,6 @@ %% This file creates the needed files from changes.dtx %% -\def\filedate{2018/11/04} +\def\filedate{2018/12/17} \def\batchfile{changes.ins} \input docstrip diff --git a/Master/texmf-dist/tex/latex/changes/changes.sty b/Master/texmf-dist/tex/latex/changes/changes.sty index b33624b9a60..fd4500bbac5 100644 --- a/Master/texmf-dist/tex/latex/changes/changes.sty +++ b/Master/texmf-dist/tex/latex/changes/changes.sty @@ -41,8 +41,8 @@ %% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{changes} -[2018/11/04 v3.0.0 changes package] -\typeout{*** changes package 2018/11/04 v3.0.0 ***} +[2018/12/17 v3.1.0 changes package] +\typeout{*** changes package 2018/12/17 v3.1.0 ***} \RequirePackage{xkeyval} \RequirePackage{xifthen} \RequirePackage{xstring} |