LEXGROG

NAVN
SYNOPSIS
BESKRIVELSE
TILVALG
AFSLUT−STATUS
EKSEMPLER
WHATIS−FORTOLKNING
SE OGSÃ
NOTER
FORFATTER
FEJL


NAVN

lexgrog − fortolk hovedfilsinformation i manualsider

SYNOPSIS

lexgrog [−m|−c] [−dfw?V] [−E kodning] fil

BESKRIVELSE

lexgrog er en implementering af det traditionelle “groff guess”−redskab i lex. Det læser listen med filer pÃ¥ kommandolinjen som enten manualsidekildefiler eller præformaterede “cat”−sider, og viser deres navn og beskrivelse som brugt af apropos og whatis, listen med forhÃ¥ndsbehandlede filtre krævet af manualsiden før den sendes til nroff eller troff, eller begge.

Hvis inddata er dÃ¥rligt formateret vil lexgrog vise “parse failed”; dette kan være nyttigt for eksterne programmer, som skal kontrollere manualsider for korrekthed. Hvis en af lexgrog’s inddatafiler er “−”, sÃ¥ vil det læse fra standardinddata; hvis nogle af inddatafilerne er komprimeret, sÃ¥ vil en udpakket version blive læst automatisk.

TILVALG

−d, −−debug

Vis fejlsøgningsinformation.

−m, −−man

Fortolk inddata som kildefiler for manualsider. Dette er standarden hvis hverken −−man eller −−cat er angivet.

−c, −−cat

Fortolk inddata som præformaterede manualsider (“cat pages”). −−man og −−cat kan ikke angives simultant.

−w, −−whatis

Vis navnet og beskrivelsen fra manualsidens teksthoved, som brugt af apropos og whatis. Dette er standarden hvis hverken −−whatis eller −−filters er angivet.

−f, −−filters

Vis listen med filtre krævet for at forbehandle manualsiden før formatering med nroff eller troff.

−E kodning, −−encoding kodning

Overstyr det gættede tegnsæt for siden til encoding.

−?, −−help

Vis en hjælpebesked og afslut.

−−usage

Vis en kort hjælpebesked og afslut.

−V, −−version

Vis versionsinformation.

AFSLUT−STATUS

0

Programkørsel endt uden fejl.

1

Fejl i anvendelse.

2

lexgrog mislykkedes i at fortolke en eller flere af dets inddatafiler.

EKSEMPLER

$ 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

WHATIS−FORTOLKNING

mandb (som bruger den samme kode som lexgrog) fortolker afsnittet NAME øverst for hver manualside på udkig efter navne og beskrivelser for funktionerne dokumenteret i hver. Selvom fortolkeren er ret så tolerant, da den skal håndtere et antal forskellige formularer, som historik er blevet anvendt, så kan den fejle i sit udtræk af den krævede information.

NÃ¥r det traditionelle makrosæt man anvendes, sÃ¥ ser et korrekt NAME−afsnit cirka sÃ¥dan her ud:

.SH NAME
foo − program til udførsel

Nogle manualsøgere kræver at ‘−’ to er præcis som vist; mandb er mere tolerant, men af kompatibilitetsÃ¥rsager er det alligevel en god ide at bevare skrÃ¥stregen.

PÃ¥ den venstre side, kan der være flere navne, adskilt af kommaer. Navne indeholdende mellemrum vil blive ignoreret for at undgÃ¥ patologisk opførsel pÃ¥ bestemet forkert udformet NAME−sektioner. Teksten pÃ¥ den højre side er fri, og kan spredes over flere linjer. Hvis flere funktioner med forskellige beskrivelser bliver dokumenteret pÃ¥ den samme manualside, sÃ¥ bruges den følgende form:

.SH NAME
foo, bar − programmer til at gøre noget
.br
baz − program til ikke at gøre noget

(En makro som starter et nyt afsnit, sÃ¥som .PP, kan bruges i stedet for break−makroen .br.)

NÃ¥r der bruges det BSD−afledte mdoc−makrosæt, sÃ¥ ligner en korrekt NAME−sektion noget lignende dette:

.Sh NAVN
.Nm foo
.Nd program der skal udføre noget

Der er flere gængse Ã¥rsager til at whatis−fortolkning mislykkes. Nogle gange erstatter forfattere af manualsider ‘.SH NAME’ med ‘.SH MYPROGRAM’, og sÃ¥ kan mandb ikke finde afsnittet hvorfra informationen, den har brug for, skal udtrækkes. Undertiden inkluderer forfatteren et NAVNE−afsnit, men placerer fri−form tekst der frem for ‘name − beskrivelse’. Dog bør enhver syntaks der ligner ovenstÃ¥ende blive accepteret.

SE OGSÃ

apropos(1), man(1), whatis(1), mandb(8)

NOTER

lexgrog forsøger at fortolke filer der indeholder .so−forespørgsler, men vil kun kunne gøre det korrekt hvis filerne er korrekt installeret i et manualsidehierarki.

FORFATTER

Koden brugt af lexgrog til at skanne manualsider blev skrevet af:

Wilf. (G.Wilford@ee.surrey.ac.uk).
Fabrizio Polacco (fpolacco@debian.org).
Colin Watson (cjwatson@debian.org).

Colin Watson skrev den aktuelle inkarnation af kommandolinjebrugerfladen, samt denne manualside.

FEJL

https://savannah.nongnu.org/bugs/?group=man-db