Kommandos definieren

Nutzen eigener LaTeX Kommandos

Wenn man einen längeren Text erstellt, dann ist es oftmals recht schwierig, die Einheitlichkeit von Wörtern, Aufzählungen, Abkürzungen, usw. durchgängig zu sichern. Auch ist es häufig recht mühsam, immer wieder die gleichen viel zu langen Latex Kommandos einzugeben. So sollte man immer z.\,B. für z.B. eingeben, damit Latex einen festen Leerschritt, also ein Leerzeichen, dass am Zeilenende nicht umgebrochen werden kann, ordnungsgemäß einzugeben. Eigentlich würde man erwarten, dass das alles irgendwie einfacher gehen muss…

Nun gibt es mehrere Möglichkeiten, wie man das lösen kann. So könnte man sich entschließen, sich zunächst gar nicht darum zu kümmern, sondern den Text einfach erst mal zu schreiben. Erst am Ende würde man dann in einer gesonderten Aktion den gesamten Text durchgehen und alle Stellen gerade ziehen. Prinzipiell ist dies nicht die schlechteste Strategie, da man sich so erst mal auf den Inhalt konzentrieren kann, ohne sich um solchen Firlefanz zu kümmern.

Eine vielleicht noch elegantere Lösung ist aber, sich eigene Kommandos zu definieren, die einem die Arbeit abnehmen. Wie schön wäre es zum Beispiel, wenn man statt z.\,B. nur noch \zB tippen müsste?!

Latex bietet natürlich für genau solche Sachen eine Lösung, nämlich die Definition von eigenen Kommandos. Schauen wir uns zunächst ein einfaches Beispiel (tex-Datei, pdf-Datei) an, in dem eben genau für z.B. ein eigenes Kommando definiert und angewendet wird.

% das Papierformat zuerst
\documentclass[a4paper, 11pt]{article}
 
% hier wird ein neues Kommando definiert 
\newcommand{\zB}{z.\,B. } 
 
% hier beginnt das Dokument
\begin{document}

Dies ist \zB ein Satz.
 
% das ist wohl jetzt das Ende des Dokumentes
\end{document}

Der Befehl \newcommand

Mit dem Befehl \newcommand kann man also ein neues Kommando definieren. Der erste Parameter in den geschweiften Klammern gibt den Namen des neuen Kommandos an, in diesem Fall also \zB. Der zweite Parameter dahinter gibt an, was Latex machen soll, wenn es diesen Befehl findet.

Nun kann man neben solchen einfachen Kommandos auch komplexere Kommandos definieren. So kann man den neuen Kommandos natürlich auch Parameter übergeben. Dies demonstriert das folgende Beispiel (tex-Datei, pdf-Datei).

% das Papierformat zuerst
\documentclass[a4paper, 11pt]{article}
 
% hier wird ein neues Kommando definiert 
\newcommand{\code}[1]{\textsf{#1}} 
 
% hier beginnt das Dokument
\begin{document}

Um in Java eine Variable i um 1 zu vermehren, kann man \code{i = i + 1;} oder aber auch nur \code{i += 1;} schreiben.
 
% das ist wohl jetzt das Ende des Dokumentes
\end{document}

In diesem Beispiel habe ich ein neues Kommando \code definiert. Immer wenn dieses Kommando benutzt wird, dann wird das Kommando \textsf{...} aufgerufen. Die 3 Punkte werden dabei durch den ersten Parameter ersetzt, den ich beim Aufruf des Kommandos angebe.

Ich persönlich setze neue Kommandos primär für Abkürzungen ein. Aber gerade Kommandos mit Parametern kann man natürlich recht vielfältig nutzen. So könnte man sich ein Kommando \autor{Schmidt}{Meier}{Fischer} definieren, dass dann im Text stattdessen z.B. Schmidt et al. oder Schmidt, Meier und Fischer ausgibt. Will man diese Ausgabe verändern, dann muss man lediglich das Kommando anpassen und schon erscheint an allen Stellen im Text die geänderte Schreibweise. Dies kann gerade bei größeren Arbeiten enormen Aufwand sparen.