Befehle wie \TeX und \LaTeX sind kein normaler Text, sondern setzen ein Logo, bei dem Buchstaben angehoben, abgesenkt und eng gekernt werden. Drei Punkte sollte man sich merken. Standard-LaTeX stellt nur drei Logos bereit: \TeX, \LaTeX und \LaTeXe; Engine-Logos wie XeTeX oder LuaTeX brauchen ein Paket. Wenn viele Engine-Logos einheitlich gesetzt werden sollen, ist hologo die bequeme Wahl. Und: Es sind Textmodusbefehle, keine Mathematik, mit einer Falle: Sie verschlucken das folgende Leerzeichen.
Wie die Logos aufgebaut sind
Das TeX-Logo ist nicht dasselbe wie einfach „TeX“ zu tippen. Mit \TeX wird das Wort so gesetzt, dass das mittlere E abgesenkt wird (unter die Grundlinie) und die Buchstaben eng gekernt sind. Dadurch entsteht die charakteristische Form. Es ist eine Art Wortmarke, die Knuth mit TeXs eigenen Satzmitteln entworfen hat; in Fließtext verweist man daher üblicherweise mit diesem Befehl auf TeX statt mit den bloßen Buchstaben „TeX“.
Das \LaTeX-Logo folgt derselben Idee. Vor \TeX setzt es ein kleines angehobenes A (hochgestellt wirkend), um „La“ zu bilden, und verbindet es dann mit dem TeX-Logo. Ein angehobenes kleines A plus ein abgesenktes E prägen also die LaTeX-Wortmarke. \LaTeXe hängt danach ein abgesenktes griechisches ε (Epsilon) an dieses LaTeX-Logo an und ergibt die Marke „LaTeX2ε“ für das aktuelle LaTeX; die 2 und ε stehen für „Version 2e“.
Technisch entstehen sie aus \raisebox (zum Anheben oder Absenken einer Box) und Kerning, das die Buchstaben zusammenzieht. Deshalb hängt die genaue Form des ausgegebenen Logos von der verwendeten Schrift ab; ein Schriftwechsel kann den Sitz der Buchstaben verschieben. Das unten beschriebene Paket metalogo ist genau dafür gedacht, diese Abstände anpassen zu können.
Nur drei gehören zu LaTeX
Das ist die erste Stolperfalle. Reines LaTeX definiert nur drei Logobefehle: \TeX, \LaTeX und \LaTeXe; sie funktionieren ohne Paket. Logos für Engine- und Werkzeugnamen wie \XeTeX, \LuaTeX, \pdfTeX oder \BibTeX sind nicht eingebaut. Schreibt man sie direkt, entsteht ein Fehler „undefined control sequence“, daher muss eines der Pakete aus dem nächsten Abschnitt geladen werden.
% 標準 LaTeX だけで使える三つ(プリアンブル不要)
\TeX% TeX ロゴ(E が下がる)
\LaTeX% LaTeX ロゴ(小さい A が上がり E が下がる)
\LaTeXe% LaTeX2e ロゴ(末尾に下がった ε)Mit amsmath/amstex erhält man zusätzlich das AMS-Logo \AmS (die „AMS“-Wortmarke in ihrer besonderen Form); \AmS-\LaTeX erzeugt das Logo „AMS-LaTeX“. Für die Logos von MetaFont und MetaPost sind \MF und \MP aus dem Paket mflogo die übliche Wahl.
Engine-Logos — metalogo und hologo
Für Logos wie XeTeX oder LuaTeX gibt es zwei Hauptwege. Der eine ist das Paket metalogo: Mit \usepackage{metalogo} stehen \XeTeX, \XeLaTeX, \LuaTeX und \LuaLaTeX zur Verfügung. Auch das Kennzeichen des XeTeX-Logos, das gespiegelte E (eine Ǝ-ähnliche Form), wird so gesetzt. Die Stärke von metalogo ist die feine Abstandskontrolle: Mit Befehlen wie \setlogokern{Te}{...} lassen sich Kerning pro Buchstabenpaar, die Höhe des angehobenen A in \LaTeX und mehr an die Schrift anpassen. Es ist für XeLaTeX-Nutzer gedacht, die mit vielen Schriften arbeiten.
Der andere Weg ist das Paket hologo, das diese Seite empfiehlt. Es wurde 2010 von Heiko Oberdiek veröffentlicht und wird heute von der Oberdiek Package Support Group gepflegt. Nach \usepackage{hologo} setzt ein einziger Befehl, der den Logonamen als Argument nimmt, etwa \hologo{XeTeX}, viele Engine- und Werkzeuglogos nach einheitlichen Regeln. Soll der erste Buchstabe großgeschrieben werden, etwa am Satzanfang, verwendet man \Hologo{...}. Der Vorteil: Man ruft Logos über ihren Namen ab, zum Beispiel \hologo{pdfTeX}, \hologo{LuaTeX}, \hologo{BibTeX}, \hologo{ConTeXt} oder \hologo{KOMAScript}, ohne für jedes Logo ein eigenes Makro zu lernen.
\usepackage{hologo}
% ...
% 名前を渡すだけで多数のロゴが一貫して組める
\hologo{pdfTeX}, \hologo{XeTeX}, \hologo{LuaTeX} は
\hologo{TeX} の後継エンジンです。\hologo{BibTeX} で文献を、
\hologo{ConTeXt} は別系統のフォーマット。
% 文頭などで先頭を大文字に
\Hologo{pdfLaTeX} を使います。hologo deckt sehr viele Logos ab, darunter auch die in japanischen Umgebungen vertrauten \hologo{pLaTeX}, \hologo{upLaTeX}, \hologo{pTeX} und \hologo{upTeX}. Für Artikel oder Handbücher, die im Fließtext viele Engine-Namen nennen, eignet sich hologo besonders gut, weil es die Schreibweise einheitlich hält. Wenn im Text dagegen nur \LaTeX vorkommt, reichen die eingebauten Befehle aus und es ist kein Paket nötig.
Kurzreferenz für Logobefehle
Hier stehen die wichtigsten Logobefehle mit dem erzeugten Logo und dem benötigten Paket. „Befehl“ ist die Quelle, die man schreibt, „Logo“ ist die gesetzte Wortmarke, rechts steht das nötige Paket. Die hologo-Einträge können ebenso geschrieben werden, indem man den Namen übergibt, etwa \hologo{XeTeX}.
| Befehl | Ausgabe / Paket | |
|---|---|---|
\TeX | TeX (abgesenktes E) | Basis-LaTeX (kein Paket) |
\LaTeX | LaTeX (angehobenes kleines A) | Basis-LaTeX (kein Paket) |
\LaTeXe | LaTeX2ε (nachgestelltes abgesenktes ε) | Basis-LaTeX (kein Paket) |
\AmS | AMS (besondere Form) | amsmath / amstex |
\XeTeX | XeTeX (gespiegeltes E) | metalogo |
\XeLaTeX | XeLaTeX | metalogo |
\LuaTeX | LuaTeX | metalogo |
\LuaLaTeX | LuaLaTeX | metalogo |
\hologo{pdfTeX} | pdfTeX | hologo |
\hologo{XeTeX} | XeTeX (gespiegeltes E) | hologo |
\hologo{LuaTeX} | LuaTeX | hologo |
\hologo{BibTeX} | BibTeX | hologo |
\hologo{ConTeXt} | ConTeXt | hologo |
\hologo{KOMAScript} | KOMA-Script | hologo |
\hologo{pLaTeX} | pLaTeX | hologo |
\hologo{upLaTeX} | upLaTeX | hologo |
\MF | METAFONT | mflogo |
\MP | METAPOST | mflogo |
Einige Logos gibt es sowohl in metalogo als auch in hologo, etwa \XeTeX gegenüber \hologo{XeTeX}. Werden beide gleichzeitig geladen, können Definitionen wie \XeTeX kollidieren; deshalb ist es am sichersten, sich auf eines zu standardisieren. Als Faustregel gilt: hologo für viele Engine-Logos, metalogo, wenn \LaTeX und verwandte Logos fein an die Schrift angepasst werden sollen.
Praktische Fallen — Leerzeichen und Modus
Die größte Falle ist, dass diese Makros das folgende Leerzeichen verschlucken. Ein aus Buchstaben bestehender Befehl wie \TeX oder \LaTeX nimmt das Leerzeichen danach als Ende des Befehlsnamens auf. \LaTeX is great wird daher als „LaTeXis great“ ausgegeben, das Logo klebt also am nächsten Wort. Um das zu verhindern, setzt man leere geschweifte Klammern {} nach dem Befehl oder fügt ein Backslash-Leerzeichen \ (ein Kontrollleerzeichen) ein.
% 悪い例:空白が食われて「LaTeXis」になる
\LaTeX is great.
% 良い例:空の波括弧で区切る
\LaTeX{} is great.
% 良い例:バックスラッシュ+空白(制御綴の空白)
\LaTeX\ is great.
% 直後が句読点ならそのままでよい
\LaTeX, \TeX.Folgt direkt ein Komma, Punkt oder anderes Zeichen, gibt es kein Leerzeichen zu verschlucken; dann kann man den Befehl einfach schreiben. Manche verwenden das Paket xspace, um das nachfolgende Leerzeichen automatisch wiederherzustellen, doch es kann falsch raten und selbst der Autor empfiehlt es nicht mehr. Verlässlich ist daher die explizite Schreibweise mit {} oder \ .
Zweiter Hinweis: Das sind Textmodusbefehle. \TeX und \LaTeX gehören direkt in den Fließtext, nicht in den Mathematikmodus ($...$). Soll ein Logo in einer Formel erscheinen, wechselt man zuerst zurück in Text, etwa mit \text{\LaTeX}. Früher konnten Logobefehle in einem moving argument wie einer Überschrift oder Fußnote Fehler verursachen; in modernem LaTeX sind diese Befehle robust, sodass man sie normalerweise ohne Sorge verwenden kann.