Stefan Karrmann

TeXnische Tricks von Stefan Karrmann

Da TeX ein sehr komplexes Paket ist und ich selber auch einige Tricks schon mehrfach neu entdecken mußte, veröffentliche ich an dieser Stelle einige meiner Tricks.

Falls man eine PDF (Portable Document Format von Adobe) Datei erzeugen möchte, kann man pdflatex nutzen oder ps2pdf ..

Ausührlichere Informationen zu TeX-Packeten kann man auf den Suns finden in der Datei /usr/local/teTeX/share/texmf/doc/newhelpindex.html.

Zweiseitiger Druck

Obwohl der Drucker merian zweiseitig drucken kann, wird es von dem Drucksystem CUPS&trademark; leider nicht unterstützt. Wenn man es dennoch erreichen will, muss man die Postscript-Datei selber ändern:
wenn man die nachstehenden 3 Zeilen nach dem obligatorischen %!PS....
ab Zeile 2 in ein Postscriptdokument einfuegt, dann wird der Job via
Duplex gedruckt:

%%BeginFeature:
  <</Duplex true /Tumble false>> setpagedevice
%%EndFeature

Folien

Das Paket seminar ist dafür praktisch. S.a. Muster Datei.
Alternativ (und einfacher mit anderen LaTeX-Paketen kombinierbar) ist foiltex (nicht auf den Suns). S.a. Muster Datei.

Verwaltung großer Dokumente

Immer dann wenn man etwas schreibt, daß länger als ein Artikel ist, sollte man eine Hauptdatei erstellen, die mittels \include{Teil1} die anderen Teile einbindet. Dabei sollte jeder Teil auf einer eigenen (bei zweiseitigen Dokumenten geraden) Seite anfangen. Dies ermöglich nämlich das Dokument schneller zu übersetzen, indem man in der Präambel den Befehl \includeonly{Teil1,Teil42} verwendet. Dann werden eben nur die entsprechenden Teile übersetzt. Trotzdem stimmen die Seitenzahlen und die Referenzen auch für die nichtübersetzten Teile!

Falls mehrere Autoren an dem Dokument arbeiten, finde ich CVS (Concurrent Version control System) praktisch. Die einzelnen Autoren können ihre Dateien bearbeiten (auch aus der Ferne!). Konflikte werden gemeldet und man hat den Zugriff auf alle Versionen.

Alternativ kann man diff bzw. mgdiff verwenden, um Unterschiede zu bearbeiten.

Nützliche Packete

Die folgenden Packete sind recht nützlich und werden in LaTeX importiert, wenn man in der Präambel \usepackage{Packet} bzw. \usepackage{Packet1,Packet2,...} angibt.

Für die Erstellungsphase

prelim2e
Zeigt im Fußbereich an, dass dies noch eine Vorläufige Version ist.
showkeys
Zeigt an wo Labels definiert bzw. referenziert werden.

Für die Mathematik oder die Mehrsprachigkeit

index
Ermvglicht das Erstellen mehrerer Indices. Bsp. \newindex{author}{adx}{and}{Namensverzeichnis} ... \index*[author]{Amann} \printindex[author] Man kann auch normal \index und auch \proofmodetrue bzw. \proofmodefalse verwenden. Alternative kann man auch multind benutzen. Mittels
\index{art}{eintrag}...\printindex{art}{Titel}
amsmath
Zusätliche (Formel-)Umgebungen. align,align*, aligned, gather, multline, u.v.a.
amsthm
Theoreme u.ä.
amssymb
Zusätliche nützliche Symbole.
bm
Fette mathematische Zeichen. Insbesondere N,Z,R,C, ich bevorzuge letztere da dies die ursprünglichen sind. Alternativ kann man natürlich auch bbm mit dem Befehl \mathbbm R benutzen.
url
Setzt (und trennt bei Bedarf) Web-Verweise u.ä.
babel
Mehrsprachigkeit. \usepackage[ngerman,british]{babel} wählt Britisch als Sprache aus.
\selectlanguage{ngerman}...
oder \foreignlanguage{ngerman}{...}.
natbib
Flexible Zitate. \cite, \citet, \citeauthor, ...
enumerate
Ermöglicht flexible (nummerierung per arabischer (1), kleiner römischer (i), großer römischer Zahlen (I), bzw. lateinischer Buchstaben (a oder A)) Aufzählungen mittels, z.B.
\begin{enumerate}[1:]

Makros

set
\set[element]{bedingung} oder \set{elemente}
\makeatletter
\renewcommand{\set}[2][\relax]{
\ifx#1\relax \ensuremath{
\left\lbrace#2\right\rbrace}
\else \ensuremath{%
  \setbox0=\hbox{\ensuremath{#2}}
  \dimen@\ht0
  \advance\dimen@ by \dp0
  \left\lbrace\left.#1\rule[-\dp0]{0pt}{\dimen@}\right|#2\right\rbrace}
\fi}
\makeatother
Betrag
\abs{Ausdruck}
\newcommand{\abs}[1]{\ensuremath{\left\vert#1\right\vert}}
Norm
\norm[Raum]{Vektor} oder \norm{Vektor}
\newcommand{\norm}[2][\relax]{
\ifx#1\relax \ensuremath{\left\Vert#2\right\Vert}
\else \ensuremath{\left\Vert#2\right\Vert_{#1}}
\fi}
Klammern
\enbrace{Ausruck}
\newcommand{\enbrace}[1]{\ensuremath{\left(#1\right)}}
Skalarprodukt
\sprod{x}{y}
\makeatletter
\newcommand{\sprod}[2]{\ensuremath{%
  \setbox0=\hbox{\ensuremath{#2}}
  \dimen@\ht0
  \advance\dimen@ by \dp0
  \left(\left.#1\rule[-\dp0]{0pt}{\dimen@}\right|#2\right)}}
\makeatother

Copyright © 1999, 2000, 2001 Stefan Karrmann.
Last Updated: 2001-11-30.
Best viewed with any browser. Valid XHTML 1.0! check it! Valid CSS! check it!