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