
Ich erinnere mich, ich habe einen Artikel in einer technischen Zeitschrift gelesen, in dem der Autor den Leser auf viele Leute aufmerksam machte, die verwirrt warenSatzsprachenUndAuszeichnungssprachen.
Wie kann ich sicher erkennen, ob es sich bei einer Sprache um eine Satzsprache oder eine Auszeichnungssprache handelt?
Soweit ich weiß, ist TeX eine Satzsprache und LaTeX implementiert eine Auszeichnungssprache auf TeX. Ist das die korrekte Art, es auszudrücken?
Antwort1
Soweit ich weiß, ist TeX eine Satzsprache und LaTeX implementiert eine Auszeichnungssprache auf TeX. Ist das die korrekte Art, es auszudrücken?
ja, das ist sowohl genau als auch prägnant.
Eine Satzsprache stellt die Werkzeuge bereit, um einen Eingabestrom in die Ausgabe auf einer Oberfläche umzuwandeln. Zu den Werkzeugen gehören
- Zugriff auf Schriftarten und Befehle zum Auswählen und/oder Wechseln zwischen ihnen
- Befehle zum Bewegen entlang der Oberfläche in verschiedene Richtungen
- ein Mechanismus, um einen Eingabestrom in Zeilen oder Absätze und das Ergebnis in Seiten aufzuteilen
- Befehle, um die "grundlegenden" Befehle effizienter anzuwenden
Als Beispiel für den letzten Punkt: Eine sehr wertvolle Funktion von Tex ist das Konzept der Gruppierung. Dies ist in anderen Satzprogrammen, die ich verwendet habe, nicht vorhanden. In einem solchen System gab es beispielsweise einen Befehl, um einen hochgestellten Index auf die richtige Höhe anzuheben, und einen „Umkehren“-Befehl, um um dieselbe Distanz wieder herauszutreten. (Er setzte einen Index nicht immer genau auf die ursprüngliche Grundlinie zurück.) Tex hingegen speichert die ursprünglichen Werte, wenn eine neue Gruppe gestartet wird, wendet die lokalen Werte für die Gruppe an, vergisst dann die lokalen Werte und stellt die gespeicherten Werte wieder her.
Ein Markup-System hingegen identifiziert Material anhand seiner Funktion oder Struktur und nicht anhand dessen, wie es auf einer Oberfläche aussehen soll. So gibt es Bezeichner für „Titel“, „Autor“, „Kapitel“, „Abschnitt“, „Theorem“ usw., und diese werden während der Verarbeitung konvertiert, um entsprechende Satzbefehle zu verwenden. Dieses strukturelle Markup ermöglicht ein einfaches Wechseln des Ausgabeformats, vorausgesetzt, es werden ein gemeinsames Vokabular und eine gemeinsame Syntax verwendet. Latex und XML sind zwei Beispiele für Markup-Systeme. Keines von beiden kann ohne „Back-End“-Unterstützung verwendet werden. In Latex ist diese Unterstützung integriert, während XML separate Tools erfordert. In beiden Fällen werden jedoch die strukturellen Elemente identifiziert, nicht das endgültige Erscheinungsbild, daher „Markup“.
Antwort2
@barbara beeton - Sehr interessanter Artikel und ich stimme voll und ganz zu. Eigentlich wollte ich den folgenden Beitrag als Kommentar hinzufügen, aber er war zu lang und deshalb habe ich ihn als Antwort geschrieben. Ich mag den Begriff „Satzsprache“, auch wenn ich seine Definition nicht in Wikipedia finden konnte. Daher bin ich auf die folgende Beziehung bzw. Analogie gekommen:
(Digitale) Typografie & Manuskript vs. Stylesheet-Sprache & Markup-Sprache: Basierend auf den Definitionen zu (digitaler) Typografie, Manuskripten, Stylesheet-Sprache und Markup-Sprache ist eine Stylesheet-Sprache eine Form der digitalen Typografie mit dem Ziel, ein markiertes Manuskript bzw. ein in einer Markup-Sprache verfasstes Dokument lesbar, lesbar und ansprechend darzustellen. Die Stylesheet-Sprachfunktionalität: „Syntax“, „Selektoren“, „Eigenschaften“, „Werte und Einheiten“, „Wertverbreitungsmechanismus“ und „Formatierungsmodell“ enthält unter anderem alle formalen Informationen, die für den Satz erforderlich sind: Schriftarten, Punktgrößen, Zeilenlängen, Zeilenabstände, Buchstabenabstände und Leerzeichen zwischen Buchstabenpaaren.