LEXGROG(1) Vaerktojer til manualsider LEXGROG(1) 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 laeser listen med filer pa kommandolinjen som enten manualsidekildefiler eller praeformaterede "cat"-sider, og viser deres navn og beskrivelse som brugt af apropos og whatis, listen med forhandsbehandlede filtre kraevet af manualsiden for den sendes til nroff eller troff, eller begge. Hvis inddata er darligt formateret vil lexgrog vise "parse failed"; dette kan vaere nyttigt for eksterne programmer, som skal kontrollere manualsider for korrekthed. Hvis en af lexgrog's inddatafiler er "-", sa vil det laese fra standardinddata; hvis nogle af inddatafilerne er komprimeret, sa vil en udpakket version blive laest automatisk. TILVALG -d, --debug Vis fejlsogningsinformation. -m, --man Fortolk inddata som kildefiler for manualsider. Dette er standarden hvis hverken --man eller --cat er angivet. -c, --cat Fortolk inddata som praeformaterede 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 kraevet for at forbehandle manualsiden for formatering med nroff eller troff. -E kodning, --encoding kodning Overstyr det gaettede tegnsaet for siden til encoding. -?, --help Vis en hjaelpebesked og afslut. --usage Vis en kort hjaelpebesked og afslut. -V, --version Vis versionsinformation. AFSLUT-STATUS 0 Programkorsel 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 overst for hver manualside pa udkig efter navne og beskrivelser for funktionerne dokumenteret i hver. Selvom fortolkeren er ret sa tolerant, da den skal handtere et antal forskellige formularer, som historik er blevet anvendt, sa kan den fejle i sit udtraek af den kraevede information. Nar det traditionelle makrosaet man anvendes, sa ser et korrekt NAME-afsnit cirka sadan her ud: .SH NAME foo \- program to do something Nogle manualsogere kraever at `\-' to er praecis som vist; mandb er mere tolerant, men af kompatibilitetsarsager er det alligevel en god ide at bevare skrastregen. Pa den venstre side, kan der vaere flere navne, adskilt af kommaer. Navne indeholdende mellemrum vil blive ignoreret for at undga patologisk opforsel pa bestemet forkert udformet NAME-sektioner. Teksten pa den hojre side er fri, og kan spredes over flere linjer. Hvis flere funktioner med forskellige beskrivelser bliver dokumenteret pa den samme manualside, sa bruges den folgende form: .SH NAME foo, bar \- programs to do something .br baz \- program to do nothing (A macro which starts a new paragraph, like .PP, may be used instead of the break macro .br.) Nar der bruges det BSD-afledte mdoc-makrosaet, sa ligner en korrekt NAME-sektion noget lignende dette: .Sh NAME .Nm foo .Nd program to do something Der er flere gaengse arsager til at whatis-fortolkning mislykkes. Nogle gange erstatter forfattere af manualsider `.SH NAME' med `.SH MYPROGRAM', og sa kan mandb ikke finde afsnittet hvorfra informationen, den har brug for, skal udtraekkes. Undertiden inkluderer forfatteren et NAVNE-afsnit, men placerer fri-form tekst der frem for `name \- beskrivelse'. Dog bor enhver syntaks der ligner ovenstaende blive accepteret. SE OGSA apropos(1), man(1), whatis(1), mandb(8) NOTER lexgrog forsoger at fortolke filer der indeholder .so-foresporgsler, men vil kun kunne gore 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://gitlab.com/man-db/man-db/-/issues https://savannah.nongnu.org/bugs/?group=man-db 2.12.1 2024-04-05 LEXGROG(1)