\documentclass[12pt,a4paper,oneside]{article}
% alternativ: {article/report/book oder (aus KOMA-Script) scrartcl/scrreprt/scrbook/typearea}
% ------------------------------
\usepackage[utf8]{inputenc}	% Der einzig wahre Zeichensatz, nötig um ü statt \"u zu schreiben.
\usepackage[ngerman]{babel}	% Makro für deutsche Sprache (``Verändert`` auch andere Pakete)
\usepackage[T1]{fontenc}	% Schriftcodierung in T1
\usepackage{lmodern}		% Andere Schrift
\usepackage{amsmath}		% Nötig für Formeln: \begin{equation}
\usepackage{listings}		% Programmcode einbinden
\usepackage{upgreek}		% Griechische Zeichen (Trick/Tricks), z.B. $\uppi$
\usepackage{marvosym}		% zahllose Symbole, z.B. \euro
\usepackage{wasysym}		% weitere Sonderzeichen
\usepackage{enumitem}		% Erweiterte Listen
\usepackage{graphicx}		% Erweitertes Grafikpaket
\usepackage{color}		% Farben [rgb/cmyk/gray]
\usepackage{array}		% Mehrere Spalten
\usepackage{longtable}		% Tabelle mit Seitenumbruch: \begin{longtable}
\usepackage{hyperref}		% Dokument intern verlinken (z.B. Inhaltsverzeichnis)
\usepackage{floatflt}		% Bilder in Fließtext integrieren, macht mit neuem Ubuntu ärger (s.U.)
\usepackage{totpages}		% Anzahl der Seiten angeben: \totpages
\usepackage{framed}		% Rahmen zeichnen: \begin{framed}
\usepackage{setspace}		% Zeilenabstand: \singlespacing \onehalfspacing \doublespacing
\usepackage{scrpage2}		% Kopzeilen anpassen (alternativ: \usepackage{fancyhdr})
\usepackage[normalem]{ulem}	% Unterstreichungen: \uline \uuline \sout \xout \uwave
\usepackage{multicol}		% Mehrspaltiger Textbereich: \begin{multicols}{2}
\usepackage{mathptmx}		% Schriften auf Times/Helvetica/Courier 
\usepackage[scaled=.92]{helvet}	% s.o.
\usepackage{courier}		% s.o.
\usepackage[top=2cm,bottom=2cm,left=3cm,right=3cm]{geometry} % Seitenlayout ändern
\usepackage{makeidx}		% einen Index erstelle : \index{Schlüssel}, \printindex
\makeindex			% Nötig für \usepackage{makeidx}
\usepackage[usenames,dvipsnames]{pstricks}
\usepackage{epsfig}
\usepackage{pst-grad} % For gradients
\usepackage{pst-plot} % For axes

\onehalfspacing			% Anderthalbzeilig
\setlength{\parindent}{1em} 	% Absatzeinzug
\setcounter{section}{0}
% ------------------------------
%	 Titelei
% ------------------------------
\begin{document}
%\frontmatter			% Nicht bei allen Dokumenttypen
%\begin{titlepage}		% Titelseite
{\centering			% Zentrieren im aktuellen Bereich
\textsc{\textbf{\LARGE{\LaTeX -Kurzanleitung/Beispielsammlung}}}}
%\end{titlepage}
\tableofcontents
%\mainmatter			% Nur bei ''Book``
%\geometry{a4paper,includehead,includefoot,verbose,pdftex,portrait,marginparwidth=2cm,marginparsep=3mm,headsep=5mm,footskip=5mm}
% ------------------------------
%	Hauptext
% ------------------------------
\section*{Vorwort}
Diese Blitzanleitung für \LaTeX ~soll primär als eine Beispielsammlung dienen, um die Dinge festzuhalten, die ich selber gelegentlich brauch(t)e. Sie kann aber auch in aller Kürze sehr effizient in \LaTeX ~einführen um schnell erstaunliche Ergebnisse zu erzielen. Dann sollte aber eine Grundkenntnis vorhanden sein, entweder in \LaTeX ~oder anderen Programmiersprachen, und Google schnell zur Hand!

Also: unter Linux Kile\index{Kile}\label{kile} (mein Favorit), unter Windows Mik\TeX \index{Mik\TeX}~installieren und per Copy/Paste einfach mal Die Präambel\ref{praambel}, die Titelei\ref{titelei}, etwas Inhalt und unten ein \texttt{\textbackslash end{document}} einfügen, schon ist das erste Dokument fertig!

Die Anleitung ist bewusst äußert kurz, aber trotzdem mit allen nötigen Beispielen gehalten, um schnell und ohne viele Umschweife das Gesuchte zu finden. Dabei ist aller wichtiger Code für dieses Dokument selbst auch darin genannt, um schnell per Copy/Paste seine Lösungen zu haben, denn Fragen beantwortet schließlich Google. Daher höhre ich auch jetzt auf zu schwafeln und wünsche viel Erfolg mit deinem Projekt!
\begin{flushright}
Marburg, den \today

Dirk Winkel
\end{flushright}

\section{Grundsätzliches}
\subsection{Die Präambel}
Jedes \LaTeX-Quelldokument ist eine Textdatei mit der Endung \texttt{.txt}. Den Anfang bildet dabei die sogenannte \emph{Präambel}\index{Präambel}, wo grundsätzliche Einstellungen für das Dokument gemacht werden und verwendete \emph{Pakete}\index{Paket}, welche jeweils unterschiedliche Funktionen bereitstellen, eingebunden werden. Solche Pakete sind notwendig, um zum Beispiel Formeln oder Bilder einzubinden.

Die Präambel, die ich zur Zeit für alle Projekte verwende, ist im Anhang zu finden. Auch wenn ich nicht immer alle Pakete verwende, ich habe keine Lust immer die Präambel zu kürzen. Man kann sie einfach mal so übernehmen und dann Projekt für Projekt seinen Bedürfnissen anpassen.

\subsection{Titelei}
Anschließend folgen Anfangselemente des Dokumentes wie das \emph{Titelblatt}\index{Titelblatt} oder das \emph{Inhaltsverzeichnis}\index{Inhaltsverzeichnis}. In diesem Dokument sieht es folgendermaßen aus:
\label{titelei}
\begin{verbatim}
\onehalfspacing			% Anderthalbzeilig
\setlength{\parindent}{1em} 	% Absatzeinzug
\setcounter{section}{0}
% ------------------------------
%	 Titelei
% ------------------------------
\begin{document}
%\frontmatter			% Nur bei ''book``
\begin{titlepage}		% Titelseite
\centering			% Zentrieren im aktuellen Bereich
\textsc{\textbf{\LARGE{\LaTeX -Beispieldokument}}}
\end{titlepage}
\tableofcontents
\end{verbatim}

Der Anhang kann durch \texttt{\textbackslash appendix} eingeleitet werden.

\section{Textfluss}
\subsection{Absätze}
Normaler Fließtext kann einfach eingegeben werden. Ein \emph{Zeilenumbruch}\index{Zeilenumbruch} wie der folgende ist im Code aber ein doppelter oder \texttt{\textbackslash \textbackslash}! Ein \emph{Leerzeichen}\index{Leerzeichen} kann mit \texttt{\~} erzwungen werden.

\emph{Absätze}\index{Absatz} lassen sich wie folgt einstellen:
\begin{verbatim}
\onehalfspacing			% Anderthalbzeilig
\setlength{\parindent}{1em} 	% Absatzeinzug
\setcounter{section}{0}
\end{verbatim}

\texttt{\textbackslash enlargethispage\{2cm\}} kann eine \emph{Seite verlängern}\index{Seite verlängern}, um einzelne Zeilen noch unterzubringen.

\begin{verbatim}
\hspace{x cm}
\vspace{x cm}
\end{verbatim}
gibt \emph{Abstände}\index{Abstände} manuell an.

Die \emph{Textausrichtung}\index{Ausrichtung} kann mit
\begin{verbatim}
\begin{flushleft}
links aliniert
\end{flushleft}
\end{verbatim}
geändert werden.

\emph{Abschnitte}\index{Abschnitt} werden wie folgt notiert:
\begin{verbatim}
\chapter{Titel} % nur bei "book"
\section{Titel}
\subsection{Titel}
\subsubsection{Titel}
\end{verbatim}
Wobei ein \texttt{\textbackslash section*} die Nummerierung wegläßt, wie hier zum Beispiel im Vorwort.

\subsubsection{Merspaltig}
\emph{Mehrspaltigkeit}\index{Spalten (Text)} kann durch
\begin{verbatim}
\begin{multicols}{2}
Als Blindtext wird Text bezeichnet...
\end{multicols}
\end{verbatim}
Erreicht werden. Hier ein Beispiel:
\begin{multicols}{2}
Als Blindtext wird Text bezeichnet, den man bei der Gestaltung von Publikationen  verwendet, wenn der eigentliche Text noch nicht vorliegt. Mit Hilfe des Blindtextes kann die Verteilung des Textes auf der Seite (Layout oder Satzspiegel) sowie Lesbarkeit  und Platzbedarf der verwendeten Schriftarten (Typografie) beurteilt werden. Er besteht aus einer mehr oder minder sinnlosen Folge von Wörtern, oft auch nur aus wortähnlichen Silbenfolgen. Komponisten  von Liedern  benutzen Blindtexte beim Komponieren von Melodien und singen diese, bevor der Liedtext gedichtet wird.
\end{multicols}

\subsubsection{Zitate}
\emph{Zitate}\index{Zitate} können wie hier hervorgehoben werden:
\begin{verbatim}
\begin{quote}
\end{quote}
\end{verbatim}
\begin{quote}
Als Blindtext wird Text bezeichnet, den man bei der Gestaltung von Publikationen  verwendet, wenn der eigentliche Text noch nicht vorliegt. Mit Hilfe des Blindtextes kann die Verteilung des Textes auf der Seite (Layout oder Satzspiegel) sowie Lesbarkeit  und Platzbedarf der verwendeten Schriftarten (Typografie) beurteilt werden. Er besteht aus einer mehr oder minder sinnlosen Folge von Wörtern, oft auch nur aus wortähnlichen Silbenfolgen. Komponisten  von Liedern  benutzen Blindtexte beim Komponieren von Melodien und singen diese, bevor der Liedtext gedichtet wird.
\end{quote}

\subsection{Textformatierungen}
Klassiche Formatierungen sind: \emph{emph}\index{Hervorheben}, \textbf{textbf}\index{Fettschrift}, \textit{textit}\index{Kursiv}, \textmd{textmd}, \textrm{textrm}, \textsc{textsc}\index{Serifenlos}, \textsf{textsf}, \textsl{textsl}, \texttt{texttt}\index{Monospace}, \textup{textup}, jeweils mit Folgendem Syntax: \texttt{\textbackslash textbf\{Text in Fettschrift\}}

Eine \emph{Silbentrennung}\index{Silbentrennung} kann mit \texttt{\textbackslash -} vorgeschlagen werden wenn \LaTeX ~das Wort nicht kennt. Ansonsten gibt es eine automatische Silbentrennung.

Folgende \emph{Schriftgrößen}\index{Schriftgröße} stehen zur Verfügung:
{\tiny tiny}
{\scriptsize scriptsize}
{\footnotesize footnotesize}
{\small small}
{\normalsize normalsize}
{\large large}
{\Large Large}
{\LARGE LARGE}
{\huge huge}
{\Huge Huge}.
Verwendet werden kann es allgemein oder in einem {\scriptsize mit geschweiften Klammern abgeschlossenen Block}: \texttt{\textbackslash scriptsize Text in Scriptsize}

\section{Textinhalte}
\subsection{Linien}
\index{Horizontale Linie}
\begin{verbatim}
Beispieltext \hrulefill \\
\vspace{0.3cm}\hrule~ \\
\vspace{0.3cm}\hrule
\end{verbatim}
Beispieltext \hrulefill \\
\vspace{0.3cm}\hrule~ \\
\vspace{0.3cm}\hrule

\subsection{Verweise}
Mit \texttt{\textbackslash ref\{Name\}}\ref{Name} wird ein \emph{Verweis}\index{Verweis} auf ein \texttt{\textbackslash ref\{label\}}\label{Name} erzeugt. \texttt{\textbackslash pageref\{Name\}} Verweist auf die Seite.\pageref{Name}

\section{Abbildungen}
\subsection{Grafiken}
\emph{Bilder}\index{Bilder} einbinden:
\begin{verbatim}
\begin{figure}[h!]{3cm}
\includegraphics[width=0.5\textwidth]{dateiname ohne Endung} 
\caption{Bildunterschrift}
\end{figure}
\end{verbatim}
wobei \texttt{[h!]} bedeutet, dass es zwingend an der Textstelle eingebaut werden soll. Für oben auf den Seite o.ä. stehen noch die Funktionen \texttt{htbp} zur Verfügung.

Bilder sollten für PDF\LaTeX im jpg oder png-Format, für DVI\LaTeX ~im eps-Format vorliegen. Das weglassen der Endung macht es möglich den Code mit beiden zu übersetzen, es wird dann stets die richtige Datei verwendet.

Mit \texttt{floatingfigure} lassen sich bilder im Textfluss einbauen.

\subsection{Zeichnungen}
\emph{Rahmen}\index{Rahmen} können wie folgt gezeichnet werden:

Im Textfluss \texttt{\textbackslash framebox[2,5cm][c]\{Rahmen\}}: \framebox[2,5cm][c]{\textbf{Rahmen}}

Wenn der Textfluss unterbrochen werden soll:
\begin{verbatim}
\begin{framed}
Beispieltext
\end{framed}
\end{verbatim}
\begin{framed}
Beispieltext
\end{framed}

Mit dem Programm \emph{LaTexDraw}\index{LaTeXDraw} kann der Code für pstricks-\emph{Zeichnungen}\index{Zeichnen} komfortabel erstellt werden. Er kann per Copy-Paste in die Quelldatei übernommen werden, aber leider nur von DVI\LaTeX ~übersetzt werden!

\scalebox{1} % Change this value to rescale the drawing.
{
\begin{pspicture}(0,-0.97483546)(1.8748355,0.9)
\definecolor{color7g}{rgb}{1.0,1.0,0.7843137254901961}
\pscircle[linewidth=0.04,dimen=outer,shadow=true,fillstyle=gradient,gradlines=2000,gradbegin=color7g,gradend=yellow,gradmidpoint=1.0](0.9,0.0){0.9}
\psbezier[linewidth=0.04](0.4,-0.1)(0.4,-0.9)(1.4,-0.9)(1.4,-0.1)
\psdots[dotsize=0.12](0.6,0.3)
\psdots[dotsize=0.12](1.2,0.3)
\end{pspicture} 
}

Will man ein pdf haben kann in Kile der QuickBuild-Befehl entsprechend verändert werden. Dazu unter Settings->Configure->Build->QuickBuild oben "LaTeX+DVItoPS+PStoPDF+ViewPDF" auswählen (ohnehin sinnvoll, da DVI der LaTex-Standart ist, PS der allgemeine Seitenbeschreibungs-Standart und PDF der Bildschirmstandart)

\emph{Schaltungen}\index{Schaltkreise} und Optik kann mit dem Paket Circ gezeichnet werden, für mehr Information einfach Googlen.

\section{Formatierungselemente}
\subsection{Listen und Aufzählungen}
\index{Listen}\index{Aufzählung}
\begin{verbatim}
\begin{description}
\item[erstens] Punkt 1
\item[zweitens] Punkt 2
\end{description}
\end{verbatim}
\begin{description}
\item[Blindtext] Als Blindtext wird Text bezeichnet, den man bei der Gestaltung von Publikationen  verwendet, wenn der eigentliche Text noch nicht vorliegt. Mit Hilfe des Blindtextes kann die Verteilung des Textes auf der Seite...
\item[kein Blindtext] Dies ist trotzdem Blindtext.
\end{description}
ist ein Beispiel für eine \texttt{description}\index{Wörterbuch}. Auch möglich ist: \texttt{enumerate}, also nummerierte Aufzählungen, und \texttt{itemize}, wobei bei Aufzählungen (itemize) mit \texttt{[label=\{\textbackslash Square\}]} das Icon verändert werden kann.

\subsection{Tabellen}
\index{Tabellen}
\begin{verbatim}
\begin{tabular}{p{2cm}|p{7.5cm}|p{1.5cm}|p{2cm}}
\textbf{1} & \textbf{2} & \textbf{3} & \textbf{4} \\
\hline
\hline
Inhalt & der & Tabelle & 
\end{tabular}
\end{verbatim}
\begin{tabular}{p{2cm}|p{7.5cm}|p{1.5cm}|p{2cm}}
\textbf{1} & \textbf{2} & \textbf{3} & \textbf{4} \\
\hline
\hline
Inhalt & der & Tabelle & 
\end{tabular}

Mehrseitige Tabellen müssen mit \texttt{\textbackslash longtable} deklariert werden.

\subsection{Verzeichnisse}
\subsubsection{Literaturverzeichnis}
\begin{verbatim}
\begin{thebibliography}{}
 \bibitem[Label im Text]{internes Label}\textsc{Autor}: \textit{Titel}. Verlag, Ort und Datum.
\end{thebibliography}
\end{verbatim}
\begin{thebibliography}{}
 \bibitem[Label im Text]{internes Label}\textsc{Autor}: \textit{Titel}. Verlag, Ort und Datum.
\end{thebibliography}
Mit \texttt{\textbackslash cite\{internel Label\}} wird im Text darauf verwiesen.

\subsubsection{Abbildungsverzeichnis}
\texttt{\textbackslash listoffigures}

\subsubsection{Index}
Ein \emph{Index}\index{Index} wird mit \texttt{\textbackslash printindex} erstellt. Dabei werden im Text die Stellen mit \texttt{\textbackslash index\{Schlüsselwort\}} mit dem Schlüsselwort versehen.

\subsection{Formeln}
\index{Formeln}
Im Text einfach mit \texttt{\$} einschließen: $1+1=2$

Einzelnd stehend:
\begin{verbatim}
\begin{align*}
x &= ax + b^2 &&| -ax \\
(1-a)x &= b^2 &&| :(1-a) \\
x &= \frac{b^2}{1-a}
\end{align*}
\end{verbatim}
\begin{align*}
x &= ax + b^2 &&| -ax \\
(1-a)x &= b^2 &&| :(1-a) \\
x &= \frac{b^2}{1-a}
\end{align*}

Mehrere Formeln werden dabei am \& und \&\& ausgerichtet. Für den Syntax der einzelnen Formelelemente bringt Kile\ref{kile} einiges mit, sonst gibt es ja auch noch Google.

\subsection{Quelltext}
Durch ein
\begin{verbatim}
\begin{verbatim}
\end{verbatim}
werden in diesem Dokument die Codeumgebungen eingeleitet. Solche Umgebungen müssen dabei stets mit einem \texttt{\textbackslash end\{Umgebung\}} geschlossen werden. Eine schönere Möglichkeit Code darzustellen ist jedoch:
\begin{verbatim}
\lstset{numbers=left, numberstyle=\tiny, numbersep=5pt}
\lstset{language=Python}
\begin{lstlisting}[caption=Beispielcode]{Name}
print "hello world"
\end{lstlisting}
\end{verbatim}
Was dann folgendermaßen aussieht:
\lstset{numbers=left, numberstyle=\tiny, numbersep=5pt} \lstset{language=Python}
\begin{lstlisting}[caption=Beispielcode]{Name}
print "hello world"
\end{lstlisting}

\appendix

\section{Präambel dieses Dokumentes}
\label{praambel}
\begin{verbatim}
\documentclass[12pt,a4paper,oneside]{article}
% alternativ: {article/report/book/scrartcl/scrreprt/scrbook/typearea}
% ------------------------------
\usepackage[utf8]{inputenc}	
% Der einzig wahre Zeichensatz, nötig um ü statt \"u zu schreiben.
\usepackage[ngerman]{babel}	
% Makro für deutsche Sprache (``Verändert`` auch andere Pakete)
\usepackage[T1]{fontenc}	
% Schriftcodierung in T1
\usepackage{lmodern}		
% Andere Schrift
\usepackage{amsmath}		
% Nötig für Formeln: \begin{equation}
\usepackage{listings}		
% Programmcode einbinden
\usepackage{upgreek}		
% Griechische Zeichen (Trick/Tricks), z.B. $\uppi$
\usepackage{marvosym}		
% zahllose Symbole, z.B. \euro
\usepackage{wasysym}		
% weitere Sonderzeichen
\usepackage{enumitem}		
% Erweiterte Listen
\usepackage{graphicx}		
% Erweitertes Grafikpaket
\usepackage{color}		
% Farben [rgb/cmyk/gray]
\usepackage{array}		
% Mehrere Spalten
\usepackage{longtable}		
% Tabelle mit Seitenumbruch: \begin{longtable}
\usepackage{hyperref}		
% Dokument intern verlinken (z.B. Inhaltsverzeichnis)
\usepackage{floatflt}		
% Bilder in Fließtext integrieren, macht mit neuem Ubuntu ärger (s.U.)
\usepackage{totpages}		
% Anzahl der Seiten angeben: \totpages
\usepackage{framed}		
% Rahmen zeichnen: \begin{framed}
\usepackage{setspace}		
% Zeilenabstand: \singlespacing \onehalfspacing \doublespacing
\usepackage{scrpage2}		
% Kopzeilen anpassen (alternativ: \usepackage{fancyhdr})
\usepackage[normalem]{ulem}	
% Unterstreichungen: \uline \uuline \sout \xout \uwave
\usepackage{multicol}		
% Mehrspaltiger Textbereich: \begin{multicols}{2}
\usepackage{mathptmx}		
% Schriften auf Times/Helvetica/Courier 
\usepackage[scaled=.92]{helvet}	% s.o.
\usepackage{courier}		% s.o.
\usepackage[top=2cm,bottom=2cm,left=3cm,right=3cm]{geometry} 
% Seitenlayout ändern
\usepackage{makeidx}		
% einen Index erstelle : \index{Schlüssel}, \printindex
\makeindex			
% Nötig für \usepackage{makeidx}

\onehalfspacing			% Anderthalbzeilig
\setlength{\parindent}{1em} 	% Absatzeinzug
\setcounter{section}{0}
\end{verbatim}

\section{Hinweis}
Unter Ubuntu ist das Paket floatflt nicht installiert (Lizenzgründe). Es kann mit folgenden Befehlen nachinstalliert werden (per copy/paste in die Konsole):
\begin{verbatim}
mkdir -p /usr/share/texmf-texlive/tex/latex/floatflt
cd /usr/share/texmf-texlive/tex/latex/floatflt
rm -f floatflt.* float*.tex
wget http://mirror.ctan.org/macros/latex/contrib/floatflt/floatflt.ins
wget http://mirror.ctan.org/macros/latex/contrib/floatflt/floatflt.dtx
latex floatflt.ins
texhash /usr/share/texmf-texlive
\end{verbatim}

\printindex

\end{document}
