Groff [] ist die GNU-Implementierung von troff, einem Textsatzsystem, das von AT&T für das Betriebssystem Unix entwickelt wurde. Auf vielen Unix- und GNU-basierten Systemen dient groff zur Anzeige von elektronischen Handbuchseiten (Manpages).

Geschichte Die erste 1990 freigegebene Version 0.3.1 wurde von James Clark innerhalb des GNU-Projektes weitestgehend in C++ implementiert. 1991 folgte mit Version 1.04 die erste stabile Version. 1999 übernahmen Werner Lemberg und Ted Harding die weitere Pflege.FFII-Nachrichten 1999 Woche 20. Die Neuimplementierung wurde vorgenommen, um Copyrightproblemen mit dem alten, proprietären Code vorzubeugen. Groff wird kontinuierlich weiterentwickelt.vgl. GNU troff, Git-Projektarchiv Wegen Lizenzproblemen ist Apple zu mandoc gewechselt, ähnlich dem Wechsel zur Z shell.

Unterschiede zu AT&T-troff

Auf Kompatibilität wurde bei der Entwicklung größtmögliches Augenmerk gelegt. Unterschiede sind in der Manpage dokumentiert.

Das Ditroff-Zwischenformat wurde beibehalten, allerdings mit einigen Erweiterungen. Es stehen unter anderem Treiber für PostScript, PCL und DVI zur Verfügung. Ebenso kann direkt HTML erzeugt werden.

nroff erzeugt formatierte Textdateien und kann dort auch Codes für die Terminalsteuerung einbetten, um Schriftschnitte wie Fett, Kursiv oder auch farbigen Text auf entsprechenden Terminals darzustellen. Zusätzlich beherrscht es die Ausgabe mehrerer Zeichensätze.

Da die meisten troff-Befehle äußerst primitiv sind, liegen groff einige sogenannte Makropakete bei. So gibt es z. B. die Pakete Mom, Me, Mm und Ms für Dokumente, Doc und Man für Manpages. Diese werden beim Aufruf von groff auf der Kommandozeile entsprechend mitgeladen.

Weblinks GNU troff (groff) – a GNU project Homepage (englisch) Mom – Makros for GNU troff (englisch) Groff and mom: an overview (PDF, englisch, grundlegende Konzepte von groff und Workflow)

Anmerkungen

Kategorie:Freie Typografie-Software Kategorie:Beschreibungssprache Kategorie:Unix-Software Kategorie:GNU-Paket