diff options
Diffstat (limited to 'macros/latex/contrib/tudscr/source/doc/tutorials/mathswap.tex')
-rw-r--r-- | macros/latex/contrib/tudscr/source/doc/tutorials/mathswap.tex | 227 |
1 files changed, 227 insertions, 0 deletions
diff --git a/macros/latex/contrib/tudscr/source/doc/tutorials/mathswap.tex b/macros/latex/contrib/tudscr/source/doc/tutorials/mathswap.tex new file mode 100644 index 0000000000..92e081b5b6 --- /dev/null +++ b/macros/latex/contrib/tudscr/source/doc/tutorials/mathswap.tex @@ -0,0 +1,227 @@ +\documentclass[english,ngerman]{tudscrartcl} +\ifpdftex{ + \usepackage[T1]{fontenc} + \usepackage[ngerman=ngerman-x-latest]{hyphsubst} +}{ + \usepackage{fontspec} +} + +\usepackage{tudscrtutorial} +\lstset{% + inputencoding=utf8,extendedchars=true, + literate=% + {ä}{{\"a}}1 {ö}{{\"o}}1 {ü}{{\"u}}1 + {Ä}{{\"A}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1 + {~}{{\textasciitilde}}1 {ß}{{\ss}}1 +} + +\usepackage{mathswap} +\usepackage{bookmark} + +\begin{document} +\begin{Bundle}{\Package{mathswap}} +\date{07.11.2016} +\author{Falk Hanisch\thanks{\noexpand\scriptsize\noexpand\mailto{\tudscrmail}}} +\title{Änderung der Trennzeichen im Mathematikmodus} +\makeatletter +\begingroup% + \def\and{, }% + \let\thanks\@gobble% + \let\footnote\@gobble% + \hypersetup{% + pdfauthor = {\@author},% + pdftitle = {\@title},% + pdfsubject = {Mathematiksatz in \hologo{LaTeXe}},% + pdfkeywords = {LaTeX, \TUDScript, Tutorial, Mathematiksatz},% + }% +\endgroup% +\markright{\@title} +\makeatother +\StartTutorial[% + Werden in einer wissenschaftlichen Abhandlung vielerlei Daten importiert und + beispielsweise tabellarisch dargestellt, kann es durchaus sein, dass diese + importierten Datensätze bezüglich der darin enthaltenen Gruppierungs- und + Dezimaltrennzeichen nicht dem Zahlenformat entsprechen, welches für die + verwendete Dokumentsprache normalerweise notwendig wäre. + + Dieses Tutorial behandelt die typografischen Eigenheiten von Gruppierungs- + und Dezimaltrennzeichen bei der Angabe von Zahlen in einem + \hologo{LaTeXe}"=Dokument. Sowohl bei der Einbindung von externen Daten als + auch bei der Erstellung von fremdsprachigen Dokumenten ist dies ein durchaus + relevantes Thema. Um sich die manuelle Konvertierung der Daten zu ersparen, + kann alternativ dazu die Möglichkeit genutzt werden, dies mit Hilfe von + \hologo{LaTeXe} selbst zu bewerkstelligen. + + Es wird beschrieben, wie das \TUDScript-Paket \Package{mathswap}'manual' für + diese Zwecke genutzt werden kann. Wird es in einer der \TUDScript-Klassen + geladen, so wird das angenommene Zahlenformat an die gewählte Dokumentsprache + angepasst. Alternativ dazu kann auch das Paket \Package{ionumbers}()'manual' + verwendet werden. +] +Bevor das eigentliche Tutorial beginnt, werden sowohl eine Dokumentklasse als +auch die für jedes \hologo{pdfLaTeX}-Dokument meiner Meinung nach sinnvollen +Pakete geladen. +% +\begin{Preamble} +\documentclass[english,ngerman]{tudscrartcl}% andere Klassen möglich +\usepackage[T1]{fontenc} +\ifpdftex{\usepackage[ngerman=ngerman-x-latest]{hyphsubst}}{} +\usepackage{babel} +\usepackage{microtype} + +\end{Preamble} +% +Zusätzlich wird das Paket \Package{mathswap}'manual' aus dem \TUDScript-Bundle +geladen, welches die Änderung der Gruppierungs- und Dezimaltrennzeichen im +Mathematikmodus ermöglicht. Dadurch werden einerseits Zahlen im zur jeweiligen +Dokumentsprache gehörigen Format typografisch korrekt gesetzt. Andererseits ist +es so möglich, Zahlen im englischen Format typografisch korrekt in deutschen +Texten zu setzen~-- et vice versa. +% +\begin{Preamble} +\usepackage{mathswap} +\end{Preamble} +% +\addsec{Typografisch korrekte Ausgabe für deutschsprachige Dokumente} +% +Für dieses Tutorial wird zunächst angenommen, dass die wissenschaftlichen +Abhandlung in deutscher Sprache verfasst wird. Ohne die Nutzung eines +speziellen Paketes zur Ausgabeformatierung von Zahlen werden diese durch +\hologo{LaTeXe} im mathematischen Modus bei der Angabe im deutschen +Zahlenformat~-- Punkt~(\PValue{.}) als Gruppierungs- und Komma~(\PValue{,}) als +Dezimaltrennzeichen~-- folgendermaßen ausgegeben:% +\footnote{% + Da in der Präambel dieses Dokumentes das Paket \Package{mathswap}'manual' + bereits geladen wurde, wird mit \Macro{mathswapoff}'manual' auf das + Standardverhalten von \hologo{LaTeXe} geschaltet. Die Funktionalität wird mit + \Macro{mathswapon}'manual' wieder aktiviert.% +} +% +\CodePreamble{% + Ohne \Package{mathswap}'manual' keine typografische Zifferngruppierung% +} +\begin{Trunk*} +\mathswapoff +\(4.523,58\) +\mathswapon + +\end{Trunk*} +% +Mit dem Paket \Package{mathswap}'manual' wird das Ziel verfolgt, unabhängig vom +genutzten Zahlenformat für die Eingabe, eine typografisch korrekte Ausgabe zu +erzeugen. Wird das Paket zusammen mit einer \TUDScript-Klasse verwendet, werden +die Gruppierungs- und Dezimaltrennzeichen bei der Eingabe im Mathematikmodus +sprachabhängig interpretiert. Bei der Nutzung einer \KOMAScript-Dokumentklasse +respektive einer \hologo{LaTeX}-Standardklasse werden diese im Mathematikmodus +immer nach dem englischen Zahlenformat~-- Komma~(\PValue{,}) als Gruppierungs- +und Punkt~(\PValue{,}) als Dezimaltrennzeichen~-- betrachtet. + +Da dieses Dokument mit einer \TUDScript-Klasse (\TUDClassName) gesetzt wird und +die Spracheinstellung~\PValue{ngerman} gewählt wurde, wird für die folgenden +Zahlen das deutsche Eingabeformat angenommen. Wird nun die bereits zuvor +verwendete Zahl bei aktiver Funktionalität von \Package{mathswap}'manual' im +Mathematikmodus angegeben werden, so wird diese den typografischen Konventionen +folgend~-- halbes Leerzeichen zur Zahlengruppierung und Komma ohne umgebenden +Leerraum als Dezimaltrennzeichen~-- entsprechend ausgegeben: +% +\CodePreamble{% + Zifferngruppierung korrekt (Spracheinstellung~\PValue{ngerman})% +} +\begin{Trunk*} +\(4.523,58\) + +\end{Trunk*} +% +Wird die gleiche Zahl in englischer Formatierung angegeben, funktioniert dies +nicht mehr: +% +\CodePreamble{% + Zifferngruppierung falsch (Spracheinstellung~\PValue{ngerman})% +} +\begin{Trunk*} +\(4,523.58\) + +\end{Trunk*} +% +Um nun Zahlen, welche in englischer Formatierung eingegeben oder importiert +werden, in deutschsprachigen Dokumenten typografisch korrekt auszugeben, können +die beiden Befehle \Macro{commaswap}[\PParameter{\dots}]'manual' sowie +\Macro{dotswap}[\PParameter{\dots}]'manual' genutzt werden. Mit diesen lässt +sich festlegen, wie die im Mathematikmodus zur Zifferngruppierung eingegeben +Trennzeichen~-- Komma~(\PValue{,}) und Punkt~(\PValue{.})~-- substituiert +werden sollen, um damit die gewünschte Typografie zu erhalten. Die Argumente +der beiden Befehle geben also an, wodurch im mathematischen Modus Komma und +Punkt bei der Ausgabe ersetzt werden sollen. + +Im englischen Zahlenformat wird bei der Eingabe das Komma~(\PValue{,}) als +Gruppierungs- und der Punkt~(\PValue{.}) als Dezimaltrennzeichen genutzt. Bei +der Ausgabe für deutschsprachige Dokumente nach den typografischen Konventionen +muss folglich das Komma durch ein halbes Leerzeichen (\Macro*{,}) ersetzt +werden. Dies lässt sich mit \Macro{commaswap}[\PParameter{\Macro*{,}}] +bewerkstelligen. Der Punkt ist demzufolge mit einem Komma durch die Angabe von +\Macro{dotswap}[\PParameter{,}] zu ersetzen:% +\footnote{% + Die Verwendung von \Macro*{begingroup} und \Macro*{endgroup} führt hierbei + dazu, dass die Änderungen der beiden Trennzeichen nur lokal innerhalb dieser + Gruppe erfolgt. +} +% +\CodePreamble{% + Englisches Zahlenformat in korrekter deutscher Zifferngruppierung% +} +\begin{Trunk*} +\begingroup + \commaswap{\,} + \dotswap{,} + \(4,523.58\) +\endgroup + +\end{Trunk*} +% +Somit können in einem deutschsprachigen Dokument Zahlen im englischen Format +problemlos verwendet beziehungsweise importiert und dennoch typografisch +korrekt gesetzt werden. +% +\addsec{Typografisch korrekte Ausgabe für englischsprachige Dokumente} +% +Wird das Paket \Package{mathswap}'manual' zusammen mit einer \TUDScript-Klasse +verwendet, werden die Gruppierungs- und Dezimaltrennzeichen im Mathematikmodus +sprachabhängig definiert. Wird also die Dokumentsprache auf \PValue{english} +gesetzt, so werden die Trennzeichen standardmäßig nach dem englischsprachigen +Zahlenformat interpretiert. +% +\CodePreamble{% + Zifferngruppierung (Spracheinstellung~\PValue{english})% +} +\begin{Trunk*} +\begingroup + \selectlanguage{english}% + \(4,523.58\)\newline + \(4.523,58\) +\endgroup + +\end{Trunk*} +% +Für englischsprachige Dokumente wird für die Auszeichnung der Gruppierung von +Ziffern ebenfalls ein halbes Leerzeichen und als Dezimaltrennzeichen ein Punkt +verwendet. Werden nun Zahlen in der deutschen Formatierung eingelesen, so muss +folglich das Komma durch einen Punkt \Macro{commaswap}[\PParameter{.}] und der +Punkt mit \Macro{dotswap}[\PParameter{\Macro*{,}}] durch ein halbes Leerzeichen +ersetzt werden:% +% +\CodePreamble{% + Deutsches Zahlenformat in korrekter englischer Zifferngruppierung% +} +\begin{Trunk*} +\begingroup + \selectlanguage{english}% + \commaswap{.} + \dotswap{\,} + \(4.523,58\) +\endgroup +\end{Trunk*} +% +\FinishTutorial +\ListOfToDo +\end{Bundle} +\end{document} |