Wenn seine Eingabe schlecht formatiert ist, wird lexgrog »parse failed« ausgeben. Das können externe Programme nutzen, die Handbuchseiten auf Fehlerfreiheit prüfen. Wenn einer der Eingabedateien von lexgrog »-« ist, wird das Programm von der Standardeingabe lesen. Ist eine Eingabedatei komprimiert, wird sie automatisch dekomprimiert.
$ lexgrog man.1 man.1: "man - an interface to the system reference manuals" $ lexgrog -fw man.1 man.1 (t): "man - an interface to the system reference manuals" $ lexgrog -c whatis.cat1 whatis.cat1: "whatis - display manual page descriptions" $ lexgrog broken.1 broken.1: parse failed
Wenn Sie die den traditionellen Makrosatz »man« verwenden, wird ein gültiger BEZEICHNUNGs-Abschnitt ungefähr so aussehen:
.SH BEZEICHNUNG foo \- Programm, das etwas erledigt
Einige Handbuchanzeigeprogramme erfordern das '\-q genau in dieserReihenfolge. mandb ist toleranter, aber für die Kompatibilität mit anderen Systemen ist es dennoch eine gute Idee, den Backslash (umgekehrten Schrägstrich) beizubehalten.
Auf der linken Seite können verschiedene, durchs Kommas getrennte Namen stehen. Namen mit Leerzeichen werden ignoriert, um bestimmte »krankhafte« Verhaltensweisen bei schlecht formatierten BEZEICHNUNGs-Abschnitten zu vermeiden. Der Text auf der rechten Seite unterliegt keinen Formvorschriften und kann sich über mehrere Zeilen erstrecken. Wenn in der Handbuchseite mehrere Merkmale mit unterschiedlichen Beschreibungen dokumentiert werden, wird das folgende Format verwendet:
.SH BEZEICHNUNG foo, bar \- Programme, die etwas erledigen .br baz \- Programme, die in der Hängematte liegen
(Anstelle des Zeilenvorschub-Makros .br kann auch ein Makro verwendet werden, das einen neuen Absatz beginnt, z.B. .PP.)
Wird der von BSD abgeleitete mdoc-Makrosatz verwendet, hat ein gültiger BEZEICHNUNGs-Abschnitt ungefähr das folgende Aussehen:
.Sh BEZEICHNUNG .Nm foo .Nd Programm, das etwas erledigt
Es gibt mehrere häufige Gründe dafür, dass die von Whatis durchgeführte Auswertung fehlschlägt. Manchmal ersetzen Autoren von Handbuchseiten '.SH BEZEICHNUNG' durch '.SH MEINPROGRAMM'. Dann kann mandb den Abschnitt nicht finden, aus dem es die benötigten Informationen entnehmen soll. Manchmal verfassen Autoren einen Abschnitt BEZEICHNUNG, aber platzieren dort anstelle von 'Name \- Beschreibung'. frei formatierten Text. Es sollten aber beliebige, dem oben Beschriebenen ähnliche Schreibweisen akzeptiert werden.
Wilf. (G.Wilford@ee.surrey.ac.uk).Fabrizio Polacco (fpolacco@debian.org).Colin Watson (cjwatson@debian.org).
Colin Watson hat sowohl das aktuelle Befehlszeilen-Frontend als auch die Handbuchseite geschrieben.