summaryrefslogtreecommitdiff
path: root/info/lshort/german/eingabefile.tex
blob: c21adc334e543bd6c9bcad7b37c84f968222c47d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
%!TEX root = l2kurz.tex
% Siehe https://github.com/texdoc/l2kurz


\section{Eingabefile}

Das Eingabefile für \LaTeX{} ist ein Textfile mit der Endung \lstinline+.tex+.
Es  wird mit einem Editor erstellt und enthält sowohl den Text, der gedruckt
werden  soll, als auch die Befehle, aus denen \LaTeX\ erfährt, wie der Text
gesetzt  werden soll. Als Editor bietet sich ein spezieller \LaTeX-Editor an
wie beispielsweise Texmaker (\href{http://www.xm1math.net/texmaker}{\nolinkurl
{www.xm1math.net/texmaker}}). Diese Editoren bieten neben Syntaxhervorhebung
und "=überprüfung auch vordefinierte Arbeitsabläufe, so dass der Benutzer sich
auf die Erstellung des Texts konzentrieren kann. Es ist aber auch möglich und
gängige Praxis, \emph{normale} Texteditoren wie emacs, vim oder notepad++ zu
benutzen.


\subsection{Leerstellen}

"`Unsichtbare"' Zeichen wie das Leerzeichen, Tabulatoren und das Zeilenende
werden von \LaTeX{} einheitlich als Leerzeichen behandelt. \emph{Mehrere}
Leerzeichen werden wie \emph{ein} Leerzeichen behandelt. Wenn man andere als
die normalen Wort- und Zeilenabstände will, kann man dies also nicht durch die
Eingabe von zusätzlichen Leerzeichen oder Leerzeilen erreichen, sondern nur mit
entsprechenden \LaTeX-Befehlen.

Eine Leerzeile zwischen Textzeilen bedeutet das Ende eines Absatzes.
\emph{Mehrere} Leerzeilen werden wie \emph{eine} Leerzeile behandelt.


\subsection{\LaTeX-Befehle und Gruppen}

Die meisten \LaTeX-Befehle haben eines der beiden folgenden Formate: Entweder
sie beginnen mit einem Backslash~(\lstinline|\|) und haben dann einen nur aus
Buchstaben bestehenden Namen, der durch ein oder mehrere Leerzeichen oder
durch ein nachfolgendes Sonderzeichen beendet wird; oder sie bestehen aus
einem Backslash und genau einem Sonderzeichen. Groß- und Kleinbuchstaben haben
auch in Befehlsnamen \emph{verschiedene}  Bedeutung. Wenn man nach einem
Befehlsnamen eine Leerstelle erhalten will, muss  man~\lstinline|{}| zur
Beendigung des Befehlsnamens oder einen eigenen Befehl für die Leerstelle
verwenden.

% PG: würde ich drin lassen
%\renewcommand{\today}{31.~Mai 2012}  % to make sure that the
% line breaks look good, regardless of the date of printing.
%MD: obeylines zu besseren Darstellung eingefuegt
%MD: Redefinition von \today lokal halten
\begin{LTXexample}[firstline=4]
\renewcommand*\today{%
  \the\numexpr\year-1978\relax.~Mai \the\year}
\obeylines
Heute ist der \today.
Oder: Heute ist der \today .
Falsch ist:
 Am \today regnet es.
Richtig ist:
 Am \today{} scheint die Sonne.
 Oder: Am \today\ schneit es.
\end{LTXexample}



Manche Befehle haben Parameter, die zwischen geschwungenen Klammern angegeben
werden müssen. Manche Befehle haben Parameter, die weggelassen oder zwischen
eckigen Klammern angegeben werden können. Manche Befehle haben Varianten, die
durch das Hinzufügen eines Sterns an den Befehlsnamen unterschieden werden.

Geschwungene Klammern können auch dazu verwendet werden, Gruppen (\emph{groups})
zu bilden. Die Wirkung von Befehlen, die innerhalb von Gruppen oder Umgebungen
(\emph{environments}) angegeben werden, endet immer mit dem Ende der Gruppe
bzw.\ der Umgebung.  Im obigen Beispiel ist~\lstinline|{}| eine leere Gruppe, die
außer der Beendigung des Befehlsnamens \texttt{today} keine Wirkung hat.

\subsection{Kommentare}

Alles, was hinter einem Prozentzeichen (\lstinline|%|) steht (bis zum Ende der
Eingabezeile), wird von \LaTeX{} ignoriert. Dies kann für Notizen des Autors
verwendet werden, die nicht oder noch nicht ausgedruckt werden sollen.
\begin{LTXexample}
Das ist ein % dummes
% Besser: ein lehrreiches <----
Beispiel.
\end{LTXexample}

\subsection{Aufbau}

Der erste Befehl in einem \LaTeX-Eingabefile muss der Befehl
\begin{lstlisting}
 \documentclass
\end{lstlisting}
sein. Er legt fest, welche Art von Schriftstück überhaupt erzeugt werden soll
(Bericht, Buch, Brief usw.). Danach können weitere Befehle folgen bzw.
deklariert werden, die für das gesamte Dokument gelten sollen.  Dieser Teil des
Dokuments wird auch als \emph{Vorspann} oder \emph{Präambel} bezeichnet. Mit dem
Befehl
\begin{lstlisting}
 \begin{document}
\end{lstlisting}
endet der Vorspann, und es beginnt das Setzen des Schriftstücks. Nun folgen der
Text und alle \LaTeX-Befehle, die das Ausdrucken des Schriftstücks bewirken.
Die Eingabe muss mit dem Befehl
\begin{lstlisting}
 \end{document}
\end{lstlisting}
beendet werden. Falls nach diesem Befehl noch Eingaben folgen, werden sie von
\LaTeX{} ignoriert.

Listing~\ref{mini} zeigt ein \emph{minimales} \LaTeX-File. Ein etwas
komplizierteres File ist in Listing~\ref{dokument} skizziert.

\begin{example}[caption={Ein minimales \LaTeX-File},label={mini}]
\documentclass{article}
\begin{document}
 Small is beautiful.
\end{document}
\end{example}

\begin{example}[caption={Aufbau eines Artikels},label={dokument}]
\documentclass[11pt,a4paper,ngerman]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\date{29. Februar 1998}
\author{H.~Partl}
\title{Über kurz oder lang}

\begin{document}
\maketitle
\tableofcontents

\section{Start}
Hier beginnt mein schönes Werk ...

\section{Ende}
... und hier endet es.

\end{document}
\end{example}


\subsection{Dokumentklassen}\label{docsty}

Die am Beginn des Eingabefiles  mit
\begin{lstlisting}
 \documentclass[<optionen>]{<klasse>}
\end{lstlisting}
definierte "`Klasse"' eines Dokumentes enthält Vereinbarungen über das Layout
und die logischen Strukturen, z.\,B.\ die Gliederungseinheiten (Kapitel etc.\@),
die für alle Dokumente dieses Typs gemeinsam sind.

Zwischen den geschwungenen Klammern \emph{muss} genau eine Dokumentklasse
angegeben werden.  Tabelle~\vref{docstyles} führt
Klassen auf, die in jeder vollständigen \LaTeX-Installation existieren.

Zwischen den eckigen Klammern \emph{können}, durch Kommas getrennt, eine oder
mehrere Optionen für das Klassenlayout angegeben werden. Die wichtigsten
Optionen für die Standardklassen sind in der Tabelle~\vref{options} angeführt.
Das Eingabefile für diese Beschreibung beginnt z.\,B.\ mit:
\begin{lstlisting}
 \documentclass[11pt,a4paper]{article}
\end{lstlisting}


\begin{longtable}[c]{@{}>{\raggedright\arraybackslash\ttfamily}p{2.2cm}%
                         p{\dimexpr 0.95\linewidth-2.2cm-2\tabcolsep\relax}@{}}
 \caption{Dokumentklassen}\label{docstyles} \\\toprule
\endfirsthead
 \caption[]{Dokumentklassen}\\\toprule
\endhead
 \multicolumn{2}{r}{\small Forsetzung nächste Seite}\\
\endfoot
\endlastfoot
 article &
 für Artikel in wissenschaftlichen Zeitschriften,  kürzere Berichte u.\,v.\,a.
\\
 report &
 für längere Berichte, die aus mehreren Kapiteln bestehen, Diplomarbeiten,
 Dissertationen u.\,ä.
\\
 book   &
 für Bücher
\\
 scrartcl, scrreprt, scrbook &
 Die sog. KOMA-Klassen sind Varianten der o.\,g. Klassen mit besserer Anpassung
 an DIN-Papierformate und "`europäische"' Typographie. Zudem erlauben sie
 mittels Optionen die Anpassung des Layouts. Entgegen den Standardklassen
 existiert eine deutsche und englische Dokumenation (siehe \cite{scrguide})
\\
 beamer &
 für Präsentationen
\\
\bottomrule
\end{longtable}



\begin{longtable}[c]{@{}>{\raggedright\arraybackslash\ttfamily}p{2.2cm}%
                         p{\dimexpr 0.95\linewidth-2.2cm-2\tabcolsep\relax}@{}}
 \caption[Klassenoptionen]{Klassenoptionen für die Standardklassen}\label{options} \\\toprule
\endfirsthead
 \caption[]{Klassenoptionen für die Standardklassen}\\\toprule
\endhead
 \multicolumn{2}{r}{\small Forsetzung nächste Seite}\\
\endfoot
\endlastfoot
 10pt 11pt  12pt &
 wählt die normale Schriftgröße des Dokuments aus. 10\,pt hohe Schrift ist die
 Voreinstellung; diese Beschreibung benutzt 11\,pt.
\\
 a4paper &
 für Papier im DIN\,A4-Format. Ohne diese Option nehmen die Standardklassen das
 amerikanisches Papierformat.
\\
 fleqn &
 für linksbündige statt zentrierte mathematische Gleichungen
\\
 leqno &
 für Gleichungsnummern links statt rechts von jeder   nummerierten Gleichung
\\
 titlepage  notitlepage &
 legt fest, ob Titel und Zusammenfassung auf einer eigenen Seite erscheinen
 sollen.  \texttt{titlepage} ist die Voreinstellung für die Klassen
 \texttt{report} und \texttt{book}.
\\
 onecolumn   twocolumn &
 für ein- oder zweispaltigen Satz.  Die Voreinstellung ist immer
 \texttt{onecolumn}.
\\
 oneside   twoside &
 legt fest, ob die Seiten für ein- oder zweiseitigen  Druck gestaltet werden
 sollen. \texttt{oneside} ist die Voreinstellung für alle Klassen außer
 \texttt{book}.
\\\bottomrule
\end{longtable}




\subsection{Pakete}\label{packages}

Mit dem Befehl
\begin{lstlisting}
 \usepackage[<optionen>]{<paket>}
\end{lstlisting}
können im Vorspann ergänzende Makropakete (\emph{packages}) geladen werden, die das
Layout der Dokumentklasse modifizieren oder zusätzliche Funktionalität
bereitstellen. Eine Auswahl von Paketen findet sich in der Tabelle~\vref{pack}. Der Befehl \lstinline+\usepackage+ erlaubt das Laden
mehrerer Pakete, wobei eine Optionenübergabe nicht möglich ist, bzw. die Optionen für alle Pakete gelten.



\begin{longtable}[c]{@{}>{\raggedright\arraybackslash\ttfamily}p{2.2cm}%
                         p{\dimexpr 0.95\linewidth-2.2cm-2\tabcolsep\relax}@{}}
 \caption{Pakete (eine Auswahl)}\label{pack} \\\toprule
\endfirsthead
 \caption[]{Pakete (eine Auswahl)}\\\toprule
\endhead
 \multicolumn{2}{r}{\small Fortsetzung nächste Seite}\\
\endfoot
\endlastfoot
 amsmath, amssymb &
 Mathematischer Formelsatz mit erweiterten Fähigkeiten, zusätzliche
 mathematische Schriften und Symbole; Beschreibung siehe \cite{mathmode}.
\\
 array &
 Verbesserte und erweiterte Versionen der Umgebungen  \texttt{array},
 \texttt{tabular} und \texttt{tabular*}.
\\
 babel &
 Anpassungen für viele verschiedene Sprachen. Die  gewählten Sprachen werden
 als Optionen angegeben.
\\
csquotes  & Mächtiges Paket zum korrekten Setzen (fremdsprachlicher) Anführungszeichen \\
 fontenc &
 Erlaubt die Verwendung von Schriften mit  unterschiedlicher Kodierung
 (Zeichenvorrat, Anordnung).
\\
 geometry &
 Manipulation des Seitenlayouts.\\
 graphicx &
 Einbindung von extern erzeugten Graphiken. Die umfangreichen Möglichkeiten
 dieses Pakets werden in~\cite{grfguide} und~\cite{grfcomp} beschrieben.
\\
 hyperref &
 Ermöglicht Hyperlinks zwischen Textstellen und zu externen Dokumenten;
 besonders sinnvoll einsetzbar, wenn mit \TeX\ eine Ausgabedatei im
 \textsc{pdf}- oder \textsc{html}-Format erzeugt wird.
\\
 imakeidx &
 Unterstützt das Erstellen eines Index.
\\
 listings & Flexible Erweiterung der \texttt{verbatim}-Umgebung.
\\
 longtable &
 für Tabellen über mehrere Seiten mit automatischem Seitenumbruch.
\\
microtype & Verändert den Absatzumbruch leicht, um bessere Zeilenumbrüche zu erzeugen; optischer Randausgleich. \\
 multicol &
 Mehrspaltiger Satz mit Kolumnenausgleich.
\\
 selinput &
 Deklaration der Zeichenkodierung im Eingabefile.
\\
siunitx   & Formatierung von Zahlen und physikalischen Einheiten  \\
 tabularx &
 für Tabellen mit automatisch an den vorhandenen Platz angepasster Breite der
 Spalten.
\\
 textcomp &
 Bindet Schriften mit zusätzlichen Textsymbolen ein.
 \\
 xcolor &
 Unterstützung für Farbausgabe;  Beschreibung  siehe~\cite{grfguide}
 und~\cite{grfcomp}.
\\
\bottomrule
\end{longtable}


\subsection{Eingabezeichensatz}\label{inputenc}

Bei jedem \LaTeX-System dürfen mindestens die folgenden Zeichen zur Eingabe von
Text verwendet werden:
\begin{quote}
  \ttfamily
  a\dots z A\dots Z 0\dots 9 \\
  . : ; , ? ! ` ' ( ) [ ] - / * @ + =
\end{quote}
Die folgenden Eingabezeichen haben für \LaTeX{} eine Spezialbedeutung oder sind
nur innerhalb von mathematischen Formeln erlaubt:
\begin{quote}
\verb.$ & % # _ { }  ~  ^  "  \  | < >.
\end{quote}
Für Zeichen, die über obige Liste hinausgehen, beispielsweise die Umlaute, sind
unterschiedliche Kodierungen in
Gebrauch. Die Kodierung ist hierbei vom Betriebssystem sowie vom Editor
abhängig. Um Umlaute direkt zu nutzen ohne auf spezielle Kodierung einzugehen,
bietet sich das Paket \texttt{selinput} an. Es ermittelt während des
Kompilierungsvorgangs die verwendete Kodierung. Um dies sicher zu stellen, muss
das Paket wie folgt in der Präambel eingebunden werden:
\begin{example}[caption={Bestimmung der Kodierung für die Nutzung von Umlauten},]
 \usepackage{selinput}
 \SelectInputMappings{
  adieresis={ä},
  germandbls={ß},
 }
 % Wörter mit Umlauten werden getrennt:
 \usepackage[T1]{fontenc}
\end{example}

Neben dem Paket \texttt{selinput} existiert auch das Paket \texttt{inputenc}.
Hier gibt man die zu verwendende Kodierung als Paketoption vor, diese muss man
jedoch dafür in Erfahrung bringen, was nicht immer einfach ist. Im Falle von
UTF-8 als Eingabekodierung ist das:

\begin{beispiel}
	\lstinline+\usepackage[utf8]{inputenc}+
\end{beispiel}

Falls \LaTeX{} ein eingegebenes Zeichen nicht darstellen kann, was meist für die
sogenannten "`Pseudografik-Zeichen"' gilt,  bekommt man eine entsprechende
Fehlermeldung. Auch sind manche Zeichen nur im Text, andere nur in
mathematischen Formeln erlaubt.

Man beachte, dass der in der \emph{Ausgabe} darstellbare Zeichenvorrat von
\LaTeX{} nicht davon abhängt, welche Zeichen als \emph{Eingabe} erlaubt sind:
Für jedes überhaupt darstellbare Zeichen -- also auch diejenigen, die nicht im
Zeichensatz des jeweiligen Betriebssystems enthalten sind -- gibt es einen
\LaTeX-Befehl oder eine Ersatzdarstellung, die ausschließlich mit ASCII-Zeichen
auskommt.  Näheres darüber erfahren Sie in Abschnitt \ref{spezial}.

\endinput