View on GitHub

Begin-Latex-in-minutes

📜 Brief Intro to LaTeX for beginners that helps you use LaTeX with ease.

English · 中文 · Español · Português · Français · Русский · Deutsch · 日本語 · Polski


Mit LaTeX in Minuten beginnen

Vorwort: Alle Informationen stammen aus meinen Erfahrungen an der Hochschule und aus diversen anderen Quellen. Ich bin weder ein Profi noch ein Experte, sondern ein Student mit einer Leidenschaft für die Software. Jeder kann sich in das Projekt einbringen, entweder, in dem er auf Fehler hinweist, oder selbst einen Pull-Request anfragt. Falls du meine Arbeit unterstützen möchtest, kannst du gerne einen kleinen Beitrag spenden. (Spenden).

Inhaltsverzeichnis

Was ist LaTeX?

LaTeX, ausgesprochen «Lah-tech» oder «Lay-tech» (reimt sich auf «blech»), ist eine Software die ein hochqualitatives Textsatzsystem zur Verfügung stellt. LaTeX wird oft für technische und wissenschaftliche Dokumente eingesetzt, kann jedoch für beinahe jede Form von Veröffentlichungen, von Essays bis hin zu Büchern, verwendet werden.

Warum sollte ich LaTeX benutzen?

LaTeX kommt nicht ohne Nachteile, ist es aber trotzdem Wert, erlernt zu werden.

LaTeX einrichten

Folgendes wird benötigt:

  1. LaTeX Softwarepaket. Ich benutze MiKTeX für Windows.
  2. LaTeX Editor. Ich benutze TeXMaker für einfaches bearbeiten, allerdings kann jeder Texteditor LaTeX-Dateien erstellen und ändern.
  3. PDF-Software. (optional) Für die Anzeige des fertigen Dokuments ist jede PDF-Software geeignet.

Zusätzlich musst du einen Kompiler wählen. Die Voreinstellung der meisten Editoren ist pdfLaTeX, aber wenn du Unterstützung für Unicode oder TTF/OTF Fonts benötigst, benutze LuaLatex.

Oder du benutzt eine Onlinelösung wie ShareLaTeX. Unter Weitere Software findest du eine breitere Auswahl.

Die erste LaTeX-Datei

Lasst uns ein klassisches Hello World in LaTeX machen. Wenn du TexMaker installiert hast, erstelle eine neue Datei mit der Endung .tex. Dann gib den unten stehenden Code ein um “Hello World!” zu rendern und klicke auf “quick build”. In anderen Editoren sollte der Vorgang ähnlich einfach sein.

\documentclass[a4paper]{article}

\begin{document}

Hello World !  % This is your content

\end{document}

Es sollte in TexMaker ungefähr so aussehen:

Mehr Einblicke in LaTeX

:eyes: Ein genauerer Blick in deine erste LaTex-Datei zeigt:

:zap: Achtung :zap:

Benutzen von mehreren Sprachen

Einige sprachen funktionieren nicht ohne zusätzliche Konfiguration. Um TeX mit anderen Sprachen zu benutzen hast du ein paar Optionen.

:white_check_mark: Erste Methode :white_check_mark:

Die erste Methode benutzt “Pakete” (Du wirst später darüber lesen) weil pdfLaTex, der Standard-Kompiler, auf 256 Zeichen beschränkt ist und einige Kodierungsprobleme hat. Als Beispiel:

\documentclass[a4paper]{article}

\usepackage[T5]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}

Xin chào thế giới. This is Hello World in Vietnamese.

\end{document}

Wir benutzen hier die Packete usepackage[T5]{fontenc} und usepackage[utf8]{inputenc}. Das ist hier leicht verständlich, die Packete importieren die benötigen Font Kodierer um den Text richtig dar zu stellen. Wenn du TexMaker benutzt wird der obere Code das darstellen:

gegenüber ohne die Packete zu verwenden :package::

:umbrella: Mit Chinesisch-Japansich-Koreanischen Zeichen zu arbeiten ist etwas verzwickter. Hier macht sich usepackage{CJKutf8} mit \begin{CJK}{UTF8} und \end{CJK} nützlich. Hier ist Japanisch :jp::

\documentclass[a4paper]{article}
\usepackage{CJKutf8}

\begin{document}

\begin{CJK}{UTF8}{min}
この記事を読んでいただきありがとうございます。
%Thank you for reading this article.
\end{CJK}

\end{document}

So einfach wie :sushi: und :bento: zu essen:

:white_check_mark: Zweite Methode :white_check_mark:

Eine andere Methode ist es deinen TeX Kompiler zu LuaLaTeX (oder XeLaTeX) zu wechseln. Nutzt man nun fontspec und polyglossia funktioniert Unicode ohne weitere Konfiguration:

\documentclass[a4paper]{article}

\usepackage{fontspec}
\usepackage{polyglossia}
%\setmainfont[]{DejaVu Serif}

\begin{document}

Xin chào thế giới. This is Hello World in Vietnamese.

\end{document}

Das Standardfont (Latin Modern) unterstützt nicht alle Zeichen. Du kannst aber fast alle auf deinem System installierten Fonts benutzen, indem du die \setmainfont Zeile auskommentierst. (TTF und OTF Fonts haben volle Unterstützung.)

Listen

:straight_ruler: Es ist sehr wichtig dein Dokument ordentlich zu halten. Deswegen beginnen wir jetzt damit deine Objekte in Listen zu schreiben. Die zwei üblichen Typen von Listen sind die ungeordnete und die geordnete Liste. Beide können mit Leichtigkeit in Latex benutzt werden:

Hier ist die Ausgabe der zwei Listen:

Paragrafen und Abschnitte

:blue_book: Wir beginnen Abschnitte mit \section und Paragrafen mit \paragraph. :orange_book: Du kannst auch Unterabschnitte mit \subsection und Unterabsätze mit \subparagraph erstellen.

Ein Inhaltsverzeichnis erstellen

:metal: Es ist nützlich deine Abschnitte und Unterabschnitte mit einem \tableofcontents zu eröffnen

Beispiel:

:bangbang: Tipp: Du kannst \newpage benutzen wenn du deine neue Seite beginnen willst.

Fußnoten

Es ist kinderleicht footnote+label+ref zu benutzen um jederlei Fu0noten zu erstellen. Als Beispiel:

Hi let me introduce myself\footnote{\label{myfootnote}Hello footnote}.
... (later on)
I'm referring to myself \ref{myfootnote}.

:point_down: :point_down: Siehst du? :point_down: :point_down:

:bangbang: Tipp: Du kannst \newline benutzen um eine neue Zeile zu beginnen.

Was ist ein Paket?

LaTeX bietet standardmäßig viele Funktionen, allerdings gibt es Situationen in denen ein so genanntes Packet nützlich ist. Um ein Packet in LaTeX zu importieren musst du nur \usepackage benutzen :package: In diesem Beispiel benutzen wir ein Packet um mathematische Gleichungen zu zeigen:

Noch eindrucksvoller ist die Ausgabe von Schaltplänen:

:construction: Du solltest Google benutzen um ein Packet zu finden, dass deinen Anforderungen erfüllt. asmath beispielsweise wird oft für mathematische Gleichungen benutzt und hat eine Menge Funktionen, circuitikz wird zum designen von Schaltplänen benutzt, etc… Alle Pakete zu erwähnen würde den Rahmen dieser Anleitung sprengen.

Tabellen

Ein praktisches Beispiel :thought_balloon::

\begin{table}[h!]
  \centering
  \caption{Caption for the table.}
  \label{tab:table1}
  \begin{tabular}{l|c||r}
    1 & 2 & 3\\
    \hline
    a & b & c\\
  \end{tabular}
\end{table}

:star2: Das ist die Ergebnis :star2::

Nun schauen wir uns das genauer an :eyes::

:bangbang: Tipp: Du kannst ein Paket :package: namens booktabs \usepackage{booktabs} benutzen für visuell bessere Tabellen.

Bilder einfügen

Um ein Bild in einer LaTeX Datei einzufügen musst du eine “figure”-Umgebung und das graphicx Packet benutzen. Benutze \usepackage{graphicx} und

\begin{figure}
  \includegraphics[width=\linewidth]{filename.jpg}
  \caption{What is it about?}
  \label{fig:whateverlabel}
\end{figure}

:bangbang: Tipp: Schreibe [width=\linewidth] um das Bild auf die Breite des Dokuments zu skalieren. Das “fig” wird für spätere Referenzen benutzt, also benenne deine Bilder mit Bedacht. Wenn das Bild im Text gleiten soll, musst du dem “begin” ein bestimmtes Attribut mitgeben:

\begin{figure}[h!]

:passport_control: Erlaubte Attribute sind:

So wird das Bild nun angezeigt:

Code in LaTeX einfügen

:white_check_mark: Erste Methode :white_check_mark:

Ein Aspekt der Texterstellung, der für Programmierer und Entwickler von größter Bedeutung ist, ist das professionelle Einfügen von Codes in das Dokument.

Für LaTeX ist der Prozess simple und sehr professionell. Wir umhüllen den Code einfach mit vordefinierten Textstücken und sind fertig.

Beispiel:

\documentclass[a4paper]{article}

\begin{document}

Hello world!

\begin{verbatim}
#include <iostream>

int main()
{
	std::cout << "hello world!\n";
	return 0;
}
\end{verbatim}

\end{document}

:speech_balloon: LaTeX unterstützt die Syntax für diese Sprachen :speech_balloon:

Wie du siehst, kannst du mit {verbatim} deinen Code einfach einfügen ohne dir Gedanken über die Syntaxformatierung zu machen. So sieht es ohne weitere Konfiguration aus, sauber und professionell:

:white_check_mark: :white_check_mark: Zweite Methode :white_check_mark: :white_check_mark:

Diese Methode gibt dir mehr Einstellungsmöglichkeiten, einschließlich das Einfügen von Code inline, einen eigenen Code-Stil erstellen, eine spezifische Sprache für den Code wählen, Code von einer anderen Datei im selben Verzeichnis zu importieren… Mit dieser Methode benutzt du nicht {verbatim}, sondern importierst das Paket :package: mit dem Namen listings.

Folgendes dient als Beispiel:

\documentclass[a4paper]{article}

\usepackage{listings}
\usepackage{color}

\lstdefinestyle{mystyle}{
keywordstyle=\color{magenta},
backgroundcolor=\color{yellow},
commentstyle=\color{green},
basicstyle=\footnotesize,
}
\lstset{style=mystyle}

\begin{document}


Hello world!

\begin{lstlisting}[language=Python]

print "Hello World!"

\end{lstlisting}

\lstinputlisting[language=C++]{hello.cpp}

Lorem ipsum dolor sit amet \lstinline{print "Hello World"} , consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.


\end{document}

Aus dem Beispiel erkennen wir:

  1. Um einen Codeblock einzufügen starten man mit \begin{lstlisting} und endet mit \end{lstlisting}
  2. Um Code aus einer anderen Datei im selben Verzeichnis zu importieren benutzt man lstinputlisiting{name_of_file}
  3. Um eine Sprache für den Code fest zu legen benutzt man [language=C++]
  4. Um Code inline einzufügen benutzt man \lstinline
  5. Um einen eigenen Code-Stil zu erstellen wird das \usepackage{color} importiert und der eigene Stil definiert, dann legt man den zu benutzenden Stil für das Objekt fest (Bitte schaue die Dokumentation hier drunter an). Man kann viele Dinge selbst definieren, in der Dokumentation findet man dafür die richtigen Namen der Eigenschaften.
  6. Interessiert? Mehr gibt es hier.

Hier ist die Ausgabe des oberen Codes in TexMaker:

Mehrere Dateien in LaTeX

Wenn wir LaTeX benutzen kann es vorkommen, dass das Dokument zu lang ist um es zu verarbeiten. Deswegen sollten wir die Datei aufteilen, damit der Inhalt leichter zu bearbeiten ist.

Sehen wir uns ein Beispiel an:

% main.tex
\documentclass[a4paper]{article}

\begin{document}

Hello Latex, This is my first part.

Hello Latex, This is my second part.

\end{document}

Das ist nur eine normale LaTeX Datei. Nun lasst uns die Datei in zwei Zeile aufteilen, dazu benutzen wir \input:

% main.tex
\documentclass[a4paper]{article}

\begin{document}

Hello Latex, This is my first part.

\input{second_file}

\end{document}
% second_file.tex
Hello Latex, This is my second part.

Jetzt sieht die Hauptdatei anders aus, kann aber besser dokumentiert werden. Hier ist das Ergebnis in TexMaker:

multi_file.png

:bangbang: Tipp: Für die Lesbarkeit, Deutlichkeit und für Wartungszwecke wird nahegelegt, dass die Hauptdatei systematisch, hierarchisch und wissenschaftlich eingeteilt wird. Teile die Datei nicht grundlos, da es sonst zu einem Durcheinander kommen kann.

Weitere Software

Softwarepakete

LaTeX Editoren

LaTeX Compiler

Hurrah!!

:tada: Danke, dass du diese Anleitung gelesen hast. Du weißt jetzt alles, um mit LaTeX zu beginnen. :hammer:
Wenn du noch mehr wissen möchtest, ist hier ein guter Einstiegspunkt.

Lizenz

DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE Copyright (C) 2016 Luong Vo Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it is allowed as long as the name is changed. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION: You just DO WHAT THE FUCK YOU WANT TO.

Ein Bier in deinem Land kostet soviel wie eine Mahlzeit in meinem Land.