Aaron Fischer Ingenieur, Vater, Heimwerker, Problemlöser

12 Oktober, 2012

Why I One-Space

Text

Ok, auf HN kocht das Thema wieder hoch: Wie beende ich einen Satz korrekt? Eigentlich ist dieses Problem schon sehr lange gelöst. Nach einem Satz folgt ein einziges Leerzeichen, wenn darauf ein weiterer Satz folgt. Zwei Sätze werden nicht mit zwei, drei oder gar einem return getrennt (so ein Schwachsinn!). Und wenn danach nichts mehr kommt, braucht man auch kein Leerzeichen mehr zu schreiben. So einfach ist das!

Aber warum schreiben dann trotzdem so viele Menschen diese unnötigen Leerzeichen? Selbst die Vim Doku ist voll davon. Dafür gibt es vermutlich wieder mehrere Gründe: In USA wird dieser Stil in der Schule gelehrt -- meist von der old-school Generation, welche noch mit einer Schreibmaschine aufgewachsen sind. Eine Schreibmaschine sieht für jeden Buchstaben eine fixe Breite vor. Da dieser Umstand das Erkennen eines Satzes etwas schwerer macht, gab es damals Tasten für 1/2 und 1/4 Leerzeichen. Damit konnte man dem Text etwas typografischen Zucker einstreuen. Auf einem normalen 105 Tasten Keyboard gibt es diese Taste nicht mehr und man hat sich mit zwei Leerzeichen beholfen.

Bei Monospace Schriftarten, bei denen jeder Buchstabe gleich breit ist, kann ich das gut gemeinte Leerzeichen noch ansatzweise verstehen, doch stört mich da auch die Kluft zwischen den Sätzen. Zudem ist es syntaktisch einfach nicht korrekt. Beim Lesen will ich keine Pausen machen, man spricht ja nicht umsonst vom Lesefluss. Bei proportionaler Schrift kann ich die zwei Leerzeichen gar nicht verstehen, hier erledigt das Hinting, Kerning und die Schrift an sich das typografische Manko einer Typewriter Schrift.

Ein Argument hat mich aber etwas grübeln lassen. In den GNU Coding Guidelines steht folgendes:

[...] Please put two spaces after the end of a sentence in your comments, so that the Emacs sentence commands will work. [...]

Hier ist also das eigentliche Problem vergraben! Um automatisiert einen vollständigen Satz zu erkennen, genügen die definierten Satzzeichen nicht. Fragezeichen und Ausrufezeichen sind klare Satztrenner. Der Punkt ist aber nicht kontextfrei. In Vim hat man ähnliche Probleme, hier kann man sich mit set cpo+=J aushelfen. Damit gibt man den zwei Leerzeichen die Bedeutung eines Satztrenners (mehr dazu unter :help sentence).

Für mich schreit das eher nach einem Quick Hack, um das Problem des kontextbehafteten Punktes zu umgehen. Das eigentliche Problem wird hier nur umgangen. Wieso ist das also so, dass man dem Punkt mehrere Bedeutungen gegeben hat? Als Abkürzungspunkt (z.B., usw. Dr. med., ...), als Ordnungspunkt (22. März, 2. Auflage) und als Dezimalgliederungspunkt (Kapitel 2.4, Kernel 2.6.32). Ich hab die Antwort darauf leider noch nicht gefunden. Vermutlich sah man damals dieses Problem einfach noch nicht oder man wollte nicht noch mehr Satzzeichen einführen.

Satzzeichen (Die gebräuchlichsten Satzzeichen in deutscher Sprache)

Aber um einen Satz zu erkennen gibt es noch weitere Möglichkeiten. Das heißt für mich im Umkehrschluss, dass man diese bescheuerten doppelten Leerzeichen eigentlich nur braucht, weil die Tools und Editoren noch zu primitiv sind. Was also tun? Warten bis die Programme besser werden oder weiterhin mit der Behelfslösung leben?

Wie macht ihr das? Trennt ihr Semantik und Typographie und lasst dann den Browser oder LaTeX die überschüssigen Leerzeichen entfernen oder behaltet ihr überall die Syntax konform und nehmt die schlechtere Toolunterstützung in Kauf?