GROFF(1)

BEZEICHNUNG
groff - Frontend für das Dokumenten-Formatierungssystem Groff

ÜBERSICHT
groff [-abcegijklpstzCEGNRSUVXZ] [-d cs] [-D Arg] [-f Fam] [-F Verz] [-I Verz] [-K Arg] [-L Arg] [-m Name] [-M Verz] [-n Num] [-o Liste] [-P Arg] [-r cn] [-T Gerät] [-w Name] [-W Name] [Datei ...]
groff -h
groff --help
groff -v [Option ...]
groff --version [Option ...]

BESCHREIBUNG
Dieses Dokument beschreibt das Programm groff, das Haupt-Frontend für das Dokumenten-Formatierungssystem groff. Programm und Makrosuite groff bilden die Implementierung eines roff(7)-Systems innerhalb der Sammlung Freier Software von GNU (http://www.gnu.org) Das groff-System hat alle Funktionalitäten des klassischen roff, fügt aber viele Erweiterungen hinzu.

Das Programm groff erlaubt es, das gesamte groff-System mittels Befehlszeilenoptionen zu steuern. Dies ist eine großartige Vereinfachung, verglichen mit dem klassischen Fall (der nur Pipes benutzt).

OPTIONEN
Die Befehlszeile wird entsprechend den üblichen GNU-Konventionen ausgewertet. Zwischen einer Befehlszeilenoption und seinem Argument ist Leerraum erlaubt. Optionen können nach einem einzelnen ‘-’ (Minuszeichen) gruppiert werden. Der Dateiname - (Minuszeichen) kennzeichnet die Standardeingabe.

Da groff ein Wrapper von troff ist, nutzen die beiden Programme diverse Optionen gemeinsam. Das Programm groff hat aber einige zusätzliche, eigene Optionen und gibt einigen troff-Optionen eine neue Bedeutung. Andererseits können nicht alle troff-Optionen an groff übergeben werden.

  Eigene Groff-Optionen
Die folgenden Optionen gibt es entweder nicht bei troff oder sie werden von groff anders interpretiert.

-D Arg
    Die von preconv benutzte Standardeingabekodierung auf Arg setzen. Impliziert -k.

-e  Mit eqn vorverarbeiten.

-g  Mit grn vorverarbeiten.

-G  Mit grap vorverarbeiten. Impliziert -p.

-h
--help
    Einen Hilfetext ausgeben.

-I Verz
    Diese Option kann benutzt werden, um ein Suchverzeichnis für Dateien anzugeben (sowohl die auf der Befehlszeile als auch die in .psbb- und .so-Anfragen benannten, sowie \X'ps: import'-, \X'ps: file'- und \X'pdf: pdfpic'-Escape-Sequenzen). Das aktuelle Verzeichnis wird stets zuerst durchsucht. Diese Option kann mehr als einmal verwendet werden; die Verzeichnisse werden in der angegebenen Reihenfolge durchsucht. Für mit absolutem Pfad angegebene Dateien wird keine Verzeichnissuche durchgeführt. Diese Option impliziert die Option -s.

-j  Mit chem vorverarbeiten. Impliziert -p.

-k  Mit preconv vorverarbeiten. Dies wird vor allen anderen Präprozessoren ausgeführt. Lesen Sie bitte die Handbuchseite von preconv für dessen Verhalten, falls die Option -K (oder -D) nicht angeben wird.

-K Arg
    Die von preconv benutzte Eingabekodierung auf Arg setzen. Impliziert -k.

-l  Die Ausgabe zum Drucken an einen Spooler schicken. Der Befehl, der für dieses Gerät von dem Befehl print in der Gerätebeschreibungsdatei angegeben werden sollte; siehe groff_font(5). Wenn dieser Befehl nicht vorhanden ist, wird die Ausgabe in der Voreinstellung an das Programm lpr(1) weitergeleitet. Siehe die Optionen -L und -X.

-L Arg
    Arg dem Spooler übergeben. Mehrere Argumente sollten jeweils mit einer eigenen -L-Option angegeben werden. Bitte beachten Sie, dass groff Arg kein ‘-’ (Minuszeichen) voranstellt, bevor es dieses zum Spooler weiterreicht.

-N  Keine Zeilenumbrüche innerhalb von eqn-Trennsymbolen erlauben. Dies entspricht der Option -N in eqn.

-p  Mit pic vorverarbeiten.

-P -Option
-P -Option -P Arg
    -Option oder -Option Arg an den Postprozessor übergeben. Die Option muss mit dem oder den notwendigen vorangehenden Minuszeichen oder angegeben werden, weil groff ihr keine derartigen Zeichen vor dem Weiterreichen an den Postprozessor voranstellt. Um zum Beispiel einen Titel an den Postprozessor gxditview weiterzureichen, ist der Shell-Befehl

            groff -X -P -title -P 'groff it' foo

    gleichbedeutend mit

            groff -X -Z foo | gxditview -title 'groff it' -

-R  Mit refer vorverarbeiten. Es wird kein Mechanismus zum Weiterreichen von Argumenten an refer zur Verfügung gestellt, weil die meisten Optionen von refer gleichwertige Sprachelemente haben, die innerhalb des Dokuments angegeben werden können. Siehe refer(1) für weitere Details.

-s  Mit soelim vorverarbeiten.

-S  Modus mit erweiterter Sicherheit. Die Option -S an pic weiterreichen und die folgenden troff-Anfragen deaktivieren: .open, .opena, .pso, .sy und .pi. Aus Sicherheitsgründen ist der Modus mit erweiterter Sicherheit standardmäßig aktiviert.

-t  Mit tbl vorverarbeiten.

-T Gerät
    Setzt das Ausgabegerät auf Gerät. Für dieses Gerät erstellt troff die Zwischenausgabe; siehe groff_out(5). Dann ruft groff einen Postprozessor auf, um troffs Zwischenausgabe in ihr endgültiges Format umzuwandeln. Tatsächliche Geräte sind bei groff:

        dvi DVI-Format von TeX (Postprozessor ist grodvi)

        html
        xhtml
            HTML- und XHTML-Ausgabe (Präprozessoren sind soelim und pre-grohtml, Postprozessor ist post-grohtml)

        lbp CAPSL-Drucker von Canon (Laserdrucker der Serien LBP-4 und LBP-8; Postprozessor ist grolbp)

        lj4 HP-LaserJet4- oder andere PCL5-kompatible Drucker (Postprozessor ist grolj4)

        ps  PostScript-Ausgabe (Postprozessor ist grops)

        pdf Ausgabe im »Portable Document Format« (PDF) (Postprozessor ist gropdf)

    Für die folgenden TTY-Ausgabegeräte (Postprozessor ist immer grotty) wählt -T die Ausgabekodierung:

        ascii
            7bit ASCII

        cp1047
            Zeichensatz Latin-1 für EBCDIC-Umgebungen

        latin1
            ISO 8859-1

        utf8
            Unicode-Zeichensatz in der Kodierung UTF-8 Dieser Modus hat die nützlichsten Schriften für den TTY-Modus, daher ist er der beste Modus für TTY-Ausgabe.

    Die folgenden Argumente wählen gxditview als ‘Postprozessor’ (es ist vielmehr ein Betrachterprogramm):

        X75 Auflösung 75dpi, Grundschrift 10pt

        X75-12
            Auflösung 75dpi, Grundschrift 12pt

        X100
            Auflösung 100dpi, Grundschrift 10pt

        X100-12
            Auflösung 100dpi, Grundschrift 12pt

    Das Standardgerät ist ps.

-U  Unsicherer Modus. Hierbei wird das (alte) unsichere Verhalten aktiviert; siehe Option -S.

-v
--version
    Versionsinformationen von groff und allen Programmen, die es ausführt, ausgeben; das heißt, die angegebene Befehlszeile wird auf die übliche Weise analysiert, wobei allen Unterprogrammen -v weitergereicht wird.

-V  Die Pipe, die von groff (als Wrapper) ausgeführt würde, auf der Standardausgabe ausgeben, aber nicht ausführen. Wenn dies mehr als einmal angegeben wird, werden die Befehle sowohl auf der Standardfehlerausgabe angezeigt als auch ausgeführt.

-X  gxditview anstelle des üblichen Postprozessors benutzen, um ein Dokument (vorab) zu betrachten. Das Verhalten des Druckerspoolers, wie bei den Optionen -l und -L umrissen, wird durch das Ermitteln eines Arguments für die Option -printCommand von gxditview(1) nach gxditview(1) übertragen. Dies setzt die übliche Print-Ausführung und den entsprechenden Menüeintrag auf jenen Wert. -X ergibt lediglich mit -Tps, -TX75, -TX75-12, -TX100 und -TX100-12 gute Ergebnisse. Die Standardauflösung für die Vorschau der -Tps-Ausgabe ist 75dpi; dies kann geändert werden, indem die Option -resolution an gxditview weitergereicht wird, zum Beispiel

            groff -X -P-resolution -P100 -man foo.1

-z  Die von troff generierte Ausgabe unterdrücken. Nur Fehlermeldungen werden ausgegeben.

-Z  Die groff-Zwischenausgabe nicht automatisch auf die übliche Weise nachbereiten. Dies lässt die troff-Ausgabe auf der Standardausgabe erscheinen, was die übliche Ausgabe des Postprozessors ersetzt; siehe off_out(5).

  Transparente Optionen
Die folgenden Optionen werden dem Formatiererprogramm troff, das anschließend von groff aufgerufen wird, übergeben. Diese Optionen werden detaillierter in troff(1) beschrieben.

-a  ASCII-Schätzung der Ausgabe

-b  Bei Fehler oder Warnung eine Rückverfolgung ausgeben.

-c  Farbausgabe deaktivieren. In der Handbuchseite von grotty(1) finden Sie weitere Details hierzu.

-C  Kompatibilitätsmodus aktivieren.

-d cs
-d Name=s
    Eine Zeichenkette definieren.

-E  Fehlermeldungen von troff deaktivieren.

-f Fam
    Die Standard-Schriftfamilie festlegen.

-F Verz
    Pfad für Geräte-DESC-Dateien setzen.

-i  Nach den angegebenen Eingabedateien die Standardeingabe verarbeiten.

-m Name
    Die Makrodatei Name.tmac (oder tmac.Name) einbinden; siehe auch groff_tmac(5).

-M Verz
    Suchpfad für Makrodateien

-n Num
    Der ersten Seite die Nummer Num geben.

-o Liste
    Nur Seiten aus Liste ausgeben.

-r cn
-r Name=n
    Ein Nummernregister setzen.

-w Name
    Die Warnung Name aktivieren. In der Handbuchseite von troff(1) finden Sie eine Liste möglicher Namen.

-W Name
    Die Warnung Name deaktivieren. In der Handbuchseite von troff(1) finden Sie eine Liste möglicher Namen.

GROFF VERWENDEN
Das groff-System implementiert die Infrastruktur des klassischen Roffs; siehe roff(7) für eine Übersicht über die generelle Arbeitsweise eines roff-Systems. Aufgrund der innerhalb des groff-Systems verfügbaren Frontend-Programme ist die Benutzung von groff viel einfacher als die des klassischen Roffs. Dieser Abschnitt gibt einen Überblick aller Bestandteile, die das groff-System bilden. Es ergänzt roff(7) mit groff-spezifischen Funktionen. Dieser Abschnitt kann als Leitfaden der Dokumentation rund um das groff-System betrachtet werden.

  Papiergröße
Die virtuelle Papiergröße, die von troff zur Formatierung der Eingabe benutzt wird, wird mit den Anfragen .po, .pl und .ll global gesteuert. Siehe groff_tmac(5) für das Makropaket ‘papersize’, welches eine komfortable Schnittstelle bietet.

Die physische Papiergröße, in der die tatsächlichen Größen der Papierblätter festgelegt werden, wird durch die Ausgabegeräte wie grops mit der Befehlzeilenoption -p und -l gesteuert. Siehe groff_font(5) und die Handbuchseiten der Ausgabegeräte für weitere Details. groff verwendet die Befehlszeilenoption -P, um Optionen an die Ausgabegeräte weiterzugeben. Beispielsweise wählt die folgende Angabe A4-Papier im Querformat für das PS-Gerät:

        groff -Tps -P-pa4 -P-l …

  Frontends
Das groff-Programm ist ein Wrapper um das troff(1)-Programm. Es ermöglicht die Angabe des Präprozessors per Befehlszeilenoption und führt automatisch den für das ausgewählte Gerät geeigneten Postprozessor aus. Auf diese Weise kann der zum Teil umständliche Pipe-Mechanismus des klassischen roff(7) vermieden werden.

grog(1) kann dazu benutzt werden, die korrekte groff-Befehlszeile zur Formatierung einer Datei zu erraten.

groffer(1) ist ein Allzweck-Betrachter für groff-Dateien und -Handbuchseiten.

  Präprozessoren
Die groff-Präprozessoren sind Reimplementierungen der klassischen Präprozessoren mit leichten Erweiterungen. Die Standard-Präprozessoren, die im groff-Paket enthalten sind, lauten

eqn(1)
    für mathematische Formeln,

grn(1)
    für die Aufnahme von gremlin(1)-Bildern,

pic(1)
    zum Zeichnen von Diagrammen,

chem(1)
    für Diagramme chemischer Strukturen,

refer(1)
    für Literaturverweise,

soelim(1)
    für das Einlesen von Makrodateien aus Standardorten,

und

tbl(1)
    für Tabellen.

Ein neuer, im klassischen troff nicht verfügbarer Präprozessor ist preconv(1), der diverse Eingabekodierungen in eine für groff verständliche konvertiert. Er wird immer vor allen anderen Präprozessoren ausgeführt.

Darüber hinaus gibt es einige interne Präprozessoren, die automatisch mit bestimmten Geräten ausgeführt werden. Diese sind für den Benutzer nicht sichtbar.

  Makropakete
Makropakete können mit der Option -m eingebunden werden. Das groff-System implementiert und erweitert alle klassischen Makropakete in kompatibler Weise und fügt einige eigene Pakete hinzu. Im Einzelnen werden folgende Makropakete mit groff ausgeliefert:

man Das traditionelle Format für Handbuchseiten; siehe groff_man(7). Es kann auf der Befehlszeile mit -man oder -m man angegeben werden.

mandoc
    Das allgemeine Paket für Handbuchseiten; es erkennt automatisch, ob das Dokument das man- oder das mdoc-Format benutzt, und springt zum entsprechenden Makropaket. Es kann auf der Befehlszeile mit -mandoc oder -m mandoc angegeben werden.

mdoc
    Das Format für Handbuchseiten im BSD-Stil; siehe groff_mdoc(7). Es kann auf der Befehlszeile mit -mdoc oder -m mdoc angegeben werden.

me  Das klassische me-Dokumentenformat; siehe groff_me(7). Es kann auf der Befehlszeile mit -me oder -m me angegeben werden.

mm  Das klassische mm-Dokumentenformat; siehe groff_mm(7). Es kann auf der Befehlszeile mit -mm oder -m mm angegeben werden.

ms  Das klassische ms-Dokumentenformat; siehe groff_ms(7). Es kann auf der Befehlszeile mit -ms oder -m ms angegeben werden.

www HTML-ähnliche Makros für die Einbindung in beliebigen groff-Dokumenten; siehe groff_www(7).

Details zur Benennung von Makrodateien und ihren Platzierungen finden Sie in groff_tmac(5). Diese Handbuchseite dokumentiert auch einige andere, kleine Hilfsmakropakete, die hier nicht aufgeführt sind.

  Programmiersprache
Allgemeine Konzepte, die alle roff-Programmiersprachen betreffen, werden in roff(7) beschrieben.

Die groff-Erweiterungen der klassischen troff-Sprache sind in groff_diff(7) dokumentiert.

Ein Überblick über Sprachfunktionalitäten, einschließlich unterstützter Maskierungen und Anfragen, kann in groff(7) gefunden werden.

  Formatierer
Der zentrale roff-Formatierer innerhalb des groff-Systems ist troff(1). Er bietet die Funktionalitäten des klassischen troff und nroff sowie die groff-Erweiterungen. Die Befehlszeilenoption -C schaltet troff in den Kompatibilitätsmodus, der versucht, das klassische roff so gut wie möglich zu emulieren.

Das Shellskript nroff(1) emuliert das Verhalten des klassischen nroff. Es versucht, die passende Ausgabekodierung anhand der aktuellen Locale automatisch auszuwählen.

Der Formatierer generiert eine Zwischenausgabe; siehe groff_out(7).

  Geräte
In roff werden die Ausgabeziele Geräte genannt. Ein Gerät kann Hardware sein, wie etwa ein Drucker, oder ein Software-Dateiformat. Ein Gerät wird durch die Option -T angegeben. Es gibt die folgenden groff-Geräte:

ascii
    Textausgabe im ascii(7)-Zeichensatz.

cp1047
    Textausgabe mit der EBCDIC-Codepage IBM cp1047 (z. B. OS/390 Unix).

dvi DVI-Format von TeX.

html
    HTML-Ausgabe.

latin1
    Textausgabe im Zeichensatz ISO Latin-1 (ISO 8859-1); siehe iso_8859_1(7).

lbp Ausgabe für CAPSL-Drucker von Canon (Laserdrucker der Serien LBP-4 und LBP-8).

lj4 HP-LaserJet4- oder andere PCL5-kompatible Drucker.

ps  PostScript-Ausgabe; geeignet für Drucker und Vorschauprogramme wie gv(1).

pdf PDF-Dateien; geeignet zum Betrachten mit Programmen wie evince(1) und okular(1).

utf8
    Textausgabe im Unicode-Zeichensatz (ISO 10646) mit UTF-8-Kodierung; siehe unicode(7).

xhtml
    XHTML-Ausgabe.

X75 Ausgabe im 75-dpi-X-Window-System, geeignet für die Vorschauprogramme xditview(1x) und gxditview(1). Eine Variante für eine 12pt-Grundschrift ist X75-12.

X100
    Ausgabe im 100-dpi-X-Window-System, geeignet für die Vorschauprogramme xditview(1x) und gxditview(1). Eine Variante für eine 12pt-Grundschrift ist X75-12.

Der für ein Gerät zu verwendende Postprozessor wird mit dem postpro-Befehl in der Gerätebeschreibungsdatei angegeben; siehe groff_font(5). Dies kann mit der -X-Option außer Kraft gesetzt werden.

Das Standardgerät ist ps.

  Postprozessoren
groff bietet 3 Hardware-Postprozessoren:

grolbp(1)
    für einige Canon-Drucker,

grolj4(1)
    für Drucker kompatibel zu HP LaserJet 4 und PCL5,

grotty(1)
    für Textausgabe mit diversen Kodierungen, z. B. auf textorientierten Terminals oder Zeilendruckern.

Heutzutage wird die meiste Druck- oder Zeichen-Hardware vom Betriebssystem über Gerätetreiber oder Softwareschnittstellen, die üblicherweise PostScript akzeptieren, verwaltet. Folglich gibt es keinen dringenden Bedarf an weiteren Postprozessoren für Hardwaregeräte.

Die groff-Softwaregeräte für die Konvertierung in andere Dateiformate lauten

grodvi(1)
    für das DVI-Format,

grohtml(1)
    für HTML- und XHTML-Formate,

grops(1)
    für PostScript sowie

gropdf(1)
    für PDF.

Zusammen mit den vielen vorhandenen, freien Konvertierungswerkzeugen sollte dies ausreichend sein, ein troff-Dokument in praktisch jedes existierende Datenformat umzuwandeln.

  Werkzeuge
Die folgenden Dienstprogramme rund um groff sind verfügbar:

addftinfo(1)
    Informationen zu den troff-Schriftbeschreibungsdateien für die Benutzung mit groff hinzufügen.

afmtodit(1)
    Schriftbeschreibungsdateien für ein PostScript-Gerät erstellen.

eqn2graph(1)
    Ein eqn-Bild in ein zugeschnittenes Bild umwandeln.

gdiffmk(1)
    Die Unterschiede zwischen groff-, nroff- oder troff-Dateien markieren.

grap2graph(1)
    Ein grap-Diagramm in ein zugeschnittenes Bitmap-Bild umwandeln.

groffer(1)
    Allgemeines Betrachterprogramm für groff-Dateien und -Handbuchseiten.

gxditview(1)
    Der groff-X-Betrachter, die GNU-Version von xditview.

hpftodit(1)
    Schriftbeschreibungsdateien für ein lj4-Gerät erstellen.

indxbib(1)
    Zu bibliografischen Datenbanken den invertierten Index erstellen.

lkbib(1)
    Bibliografische Datenbanken durchsuchen.

lookbib(1)
    Bibliografische Datenbanken interaktiv durchsuchen.

pdfroff(1)
    PDF-Dokumente mittels groff erstellen.

pfbtops(1)
    Eine PostScript-Schrift im .pfb-Format nach ASCII übersetzen.

pic2graph(1)
    Ein pic-Diagramm in ein zugeschnittenes Bild umwandeln.

tfmtodit(1)
    Schriftbeschreibungsdateien für ein TeX-DVI-Gerät erstellen.

xditview(1x)
    Der im X-Window-System historisch mitgelieferte roff-Betrachter.

xtotroff(1)
    X-Schriftmetriken in GNU-troff-Schriftmetriken umwandeln.

UMGEBUNGSVARIABLEN
Normalerweise ist in den folgenden Umgebungsvariablen das Trennzeichen für Pfadangaben der Doppelpunkt; dies kann abhängig vom Betriebssystem variieren. Zum Beispiel nutzen DOS und Windows stattdessen ein Semikolon.

GROFF_BIN_PATH
    Dieser Suchpfad, gefolgt von PATH, wird für Befehle, die von groff ausgeführt werden, genutzt. Falls er nicht gesetzt ist, wird das Verzeichnis, in das die groff-Binärdateien installiert wurden, PATH vorangestellt.

GROFF_COMMAND_PREFIX
    Sollte es notwendig sein, verschiedene roff-Implementierungen zur selben Zeit laufen zu lassen, bietet groff die Möglichkeit, den meisten seiner Programme, die zur Laufzeit Namenskonflikte verursachen könnten, ein Präfix voranzustellen (Vorgabe ist ohne Präfix). Aus historischen Gründen ist dieses Präfix das Zeichen g, aber es kann beliebig sein. Beispielsweise stand gtroff für das Programm troff von groff, gtbl für die groff-Version von tbl. Durch Setzen von GROFF_COMMAND_PREFIX auf verschiedene Werte können die verschiedenen roff-Installationen angesprochen werden. Genauer: Ist es auf das Präfix xxx gesetzt, ruft groff als Wrapper intern xxxtroff anstelle von troff auf. Dies trifft auch auf die Präprozessoren eqn, grn, pic, refer, tbl und soelim sowie auf die Hilfsprogramme indxbib und lookbib zu. Diese Vorgehensweise wird auf keine anderen als die oben angeführten Programme angewendet (insbesondere nicht auf groff selbst), da diese einzig zum groff-Paket gehören.

GROFF_ENCODING
    Der Wert dieser Umgebungsvariable wird an den Präprozessor preconv übergeben, um die Kodierung der Eingabedateien auszuwählen. Das Setzen dieser Option impliziert groffs Befehlszeilenoption -k (folglich ruft groff dann immer preconv auf). Durch Setzen ohne Wert ruft groff preconv ohne Argumente auf. Eine explizite Befehlszeilenoption -K setzt den Wert von GROFF_ENCODING außer Kraft. Siehe preconv(1) für Details.

GROFF_FONT_PATH
    Eine Liste von Verzeichnissen zusätzlich zu den standardmäßigen, in denen nach dem Verzeichnis devName gesucht wird. Siehe troff(1) und groff_font(5) für weitere Details.

GROFF_TMAC_PATH
    Eine Liste von Verzeichnissen zusätzlich zu den standardmäßigen, in denen nach Makrodateien gesucht wird. Siehe troff(1) und groff_tmac(5) für weitere Details.

GROFF_TMPDIR
    Das Verzeichnis, in dem temporäre Dateien erstellt werden. Falls dies nicht aber stattdessen die Umgebungsvariable TMPDIR gesetzt ist, werden temporäre Dateien im Verzeichnis TMPDIR erstellt. Auf MS-DOS und Windows-Plattformen werden nach GROFF_TMPDIR und TMPDIR auch die Umgebungsvariablen TMP und TEMP (in dieser Reihenfolge) durchsucht. Andernfalls werden temporäre Dateien in /tmp erstellt. Die Befehle refer(1), groffer(1), grohtml(1) und grops(1) verwenden temporäre Dateien.

GROFF_TYPESETTER
    Das Vorgabegerät auswählen. Ist dies nicht gesetzt, wird das Gerät ps als Standard genutzt. Dieser Gerätename wird von der Option -T außer Kraft gesetzt.

BEISPIELE
Das folgende Beispiel veranschaulicht die Stärke von groff als Wrapper von troff.

Um eine roff-Datei mittels der Präprozessoren tbl und pic sowie der Makrogruppe me zu verarbeiten, musste das klassische troff aufgerufen werden mit

        pic foo.me | tbl | troff -me -Tlatin1 | grotty

Bei groff kann diese Pipe gekürzt werden auf den entsprechenden Befehl

        groff -p -t -me -T latin1 foo.me

Ein einfachere Möglichkeit für diesen Aufruf ist die Benutzung von grog(1), um die Präprozessoren und Makrooptionen zu raten und den somit generierten Befehl auszuführen (dabei kennzeichnen Backquotes eine Befehlssubstitution)

        `grog -Tlatin1 foo.me`

Der einfachste Weg ist das automatische Betrachten der Inhalte mittels des Aufrufs

        groffer foo.me

FEHLER
In EBCDIC-Umgebungen (z. B. OS/390 Unix) sind die Ausgabegeräte ascii und latin1 nicht verfügbar. Analog ist die Ausgabe für die EBCDIC-Codepage cp1047 auf ASCII-basierten Betriebssystemen nicht verfügbar.

INSTALLATIONSVERZEICHNISSE
groff installiert Dateien an verschiedene Stellen, abhängig von seiner Konfiguration zum Zeitpunkt der Kompilierung. Auf dieser Installation werden die folgenden Orte verwandt:

/usr/share/X11/app-defaults
    Vorgabenverzeichnis für die Anwendung gxditview(1)

/usr/bin
    Verzeichnis, das die ausführbaren Befehle von groff enthält

/usr/share/groff/1.22.4/eign
    Liste häufiger Wörter für indxbib(1)

/usr/share/groff/1.22.4
    Verzeichnis für Datendateien

/usr/dict/papers/Ind
    Vorgabeindex für lkbib(1) und refer(1)

/usr/share/doc/groff-1.22.4
    Dokumentationsverzeichnis

/usr/share/doc/groff-1.22.4/examples
    Beispielverzeichnis

/usr/share/groff/1.22.4/font
    Schriftenverzeichnis

/usr/share/doc/groff-1.22.4/html
    HTML-Dokumentationsverzeichnis

/usr/lib/font
    Ehemaliges Schriftartenverzeichnis

/usr/share/groff/site-font
    locales Schriftartenverzeichnis

/usr/share/groff/site-tmac
    Lokales Verzeichnis für Makropakete (tmac-Dateien)

/usr/share/groff/1.22.4/tmac
    Verzeichnis für Makropakete (tmac-Dateien)

/usr/share/groff/1.22.4/oldfont
    Schriftartenverzeichnis für die Kompatibilität mit älteren Versionen von groff; siehe grops(1).

/usr/share/doc/groff-1.22.4/pdf
    PDF-Dokumentationsverzeichnis

/usr/lib/groff/site-tmac
    Verzeichnis für Systemmakropakete (tmac-Dateien)

  Makroverzeichnis von Groff
Dieses enthält alle Informationen bezüglich Makropakete. Beachten Sie, dass mehr als nur ein einzelnes Verzeichnis nach diesen Dateien durchsucht wird, so wie auch in groff_tmac(5) dokumentiert. Bei der groff-Installation, auf die sich dieses Dokument bezieht, befindet es sich in /usr/share/groff/1.22.4/tmac. Die folgenden, im groff-Makroverzeichnis enthaltenen Dateien haben eine besondere Bedeutung:

troffrc
    Initialisierungsdatei für troff. Diese wird von troff eingelesen, noch vor den Makrogruppen und jeder Eingabe.

troffrc-end
    Abschließende Initialisierungsdatei für troff. Sie wird nach dem Einlesen aller Makrogruppen interpretiert.

Name.tmac
tmac.Name
    Makrodatei für Makropaket Name.

  Schriftartenverzeichnis von Groff
Dieses enthält alle Informationen bezüglich Ausgabegeräten. Beachten Sie, dass mehr als nur ein einzelnes Verzeichnis nach diesen Dateien durchsucht wird; siehe troff(1). Bei der groff-Installation, auf die sich dieses Dokument bezieht, befindet es sich in /usr/share/groff/1.22.4/font. Die folgenden, im groff-Schriftartenverzeichnis enthaltenen Dateien haben eine besondere Bedeutung:

devName/DESC
    Gerätebeschreibungsdatei für Gerät Name, siehe groff_font(5)

devName/F
    Schriftartendatei für Schrift S des Geräts Name

VERFÜGBARKEIT
Informationen, wie Sie groff beziehen können, und weitere Hinweise gibt es auf der Groff-Seite auf der GNU-Website (http://www.gnu.org/software/groff)

Es gibt drei groff-Mailinglisten:

    Fehlerdatenbankaktivitäten (nur lesbar) (bug-groff@gnu.org);

    generelle Diskussionen (groff@gnu.org), und

    Commit-Aktivitäten (nur lesbar) (groff-commit@gnu.org), die Änderungen am Quellcodedepot von groff durch seine Entwickler berichten.

Details zum Depot-Zugriff und vieles Weitere kann in der Datei README im Wurzelverzeichnis des groff-Quelltextpakets gefunden werden.

Eine freie Implementierung des Präprozessors grap, geschrieben von Ted Faber (faber@lunabase.org), kann auf der Grap-Website (http://www.lunabase.org/~faber/Vault/software/grap/) gefunden werden. Dies ist das einzige von groff unterstützte grap.

AUTOREN
groff wurde von James Clark (jjc@jclark.com) geschrieben. Dieses Dokument wurde 2002 durch Bernd Warken (groff-bernd.warken-72@web.de) neu geschrieben, erweitert und unter die FDL-Lizenz gestellt.

SIEHE AUCH
Groff: Die GNU-Implementierung von Troff, von Trent A. Fisher und Werner Lemberg, ist das primäre groff-Handbuch. Sie können es interaktiv mit »info groff« lesen.

Aufgrund seiner komplexen Struktur hat das groff-System viele Handbuchseiten. Sie können mit man(1) oder groffer(1) gelesen werden.

Es gibt aber besondere Abschnitte von Handbuchseiten. groff hat Handbuchseiten in den Abschnitten 1, 5 und 7. Falls es mehrere Handbuchseiten mit dem gleichen Namen in demselben man-Abschnitt gibt, wird die Handbuchseite mit der niedrigsten Abschnittsnummer zuerst angezeigt. Die anderen Handbuchseiten können angezeigt werden, indem die Nummer des Abschnitts als Option vor den Namen der Handbuchseite gestellt wird. Um die Handbuchseiten über die Sprache Groff zu lesen, muss folgendes eingegeben werden:
        man 7 groff
        groffer 7 groff

Einführung, Geschichte und weitere Lektüre:
    roff(7).

Betrachter für Groff-Dateien:
    groffer(1), gxditview(1), xditview(1x).

Wrapper für Formatierer:
    groff(1), grog(1).

Roff-Präprozessoren:
    eqn(1), grn(1), pic(1), chem(1), preconv(1), refer(1), soelim(1), tbl(1), grap(1).

Roff-Sprache mit den Groff-Erweiterungen:
    groff(7), groff_char(7), groff_diff(7), groff_font(5).

Roff-Formatierer:
    nroff(1), troff(1), ditroff(7).

Die Sprache der Zwischenausgabe:
    groff_out(7).

Postprozessoren für Ausgabegeräte:
    grodvi(1), grohtml(1), grolbp(1), grolj4(1), lj4_font(5), grops(1), gropdf(1), grotty(1).

Groff-Makropakete und makrospezifische Hilfswerkzeuge:
    groff_tmac(5), groff_man(7), groff_mdoc(7), groff_me(7), groff_mm(7), groff_mmse(7), groff_mom(7), groff_ms(7), groff_www(7), groff_trace(7), mmroff(7).

Die folgenden Hilfsprogramme sind verfügbar:
    addftinfo(1), afmtodit(1), eqn2graph(1), gdiffmk(1), grap2graph(1), groffer(1), gxditview(1), hpftodit(1), indxbib(1), lkbib(1), lookbib(1), pdfroff(1), pfbtops(1), pic2graph(1), tfmtodit(1), xtotroff(1).

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Florian Rehnisch <fm-r@gmx.de>, Frank Stähr <der-storch-85@gmx.net>, Mario Blättermann <mario.blaettermann@gmail.com>, Dr. Tobias Quathamer <toddy@debian.org> und Helge Kreutzmann <debian@helgefjell.de> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german@lists.debian.org>.