LEXGROG(1)

NOMBRE
lexgrog - interpreta información de cabecera en páginas man

SINOPSIS
lexgrog [-m|-c] [-dfw?V] [-E codificando] fichero ...

DESCRIPCIÓN
lexgrog es una interpretación de la tradicional “groff guess” utilidad en lex. Lee la lista de ficheros en su línea de órdenes o como fichero de origen de una página man o como “cat” páginas preformateadas, y enseña su nombre y descripción como se utilizó por apropos y whatis, la lista de filtros preprocesados requeridos por la página man antes que sea pasada por nroff o troff, o ambos.

Si esta entrada está formateado equivocadamente, lexgrog escribirá “parse fallado”; esta quizá sea útil para programas externos que requeirean comprobar páginas man para correcciones. Si uno de los ficheros de entrada de lexgrog es “-”, leerá desde entrada comúnM si cualquier fichero entrante está comprimido, una versión descomprimida será se leerá automáticamente.

OPCIONES

-d, --debug
    Muestra información depurativa.

-m, --man
    Interreta entrada como fichero origen de página man. Esto es lo predefinido si ni --man ni --cat es dado.

-c, --cat
    Entrada interpretada como páginas (“cat”) man preformateada. --man y --cat quizá no son dadas simultáneamente.

-w, --whatis
    Enseña el nombre y descripción desde la cabecera de la página del man, tal emplado por apropósito y qué es. Esto es lo predeterminado si ni --watis ni --filters está dado.

-f, --filters
    Enseña la lista de filtros necesarios para preprocesar la página man antes de formatear con nroff o troff.

-E codificación, --encoding codificación
    Sobrescribe el conjunto de caracteres deseado para la página a codificación.

-?, --help
    Escribe un mensaje de ayuda y termina.

--usage
    Escribe mensaje breve sobre uso del programa y termina.

-V, --version
    Enseña la versión de información.

ESTADO DE SALIDA

0   Ejecución del programa correcta.

1   Error de uso.

2   lexgrog falló al interpretar uno o más de ficheros entrantes.

EJEMPLOS
  $ lexgrog man.1
  man.1: «man - un interfaz para manuales referenciados por conexión»
  $ lexgrog -fw man.1
  man.1 (t): «man - un interfaz para manuales referenciados por conexión»
  $ lexgrog -c whatis.cat1
  whatis.cat1: «whatis - enseña páginas descritas del manual»
  $ lexgrog broken.1
  broken.1: interpretador fallado

INTERPRETACIÓN “WHATIS”
mandb (el cual emplea el mismo código que lexgrog interpreta la sección NOMBRE al techo de cada página del manual buscando nombres y descripciones de las características documentadas en cada una. Mientras el interprete está muy toletante, como tiene ocuparse con un número de formatos diferentes que tiene históricamente sido empleada, quizá algunas veces fallan al extraer la información requerida.

Cuando utilice la macro tradicional man, una sección correcta NOMBRE aparecerá algo como esto:

    .SH NOMBRE
    rellena \- programa para hacer algo

Algunos paginadores manuales requieren la ‘\-’ esté exactamente como muestran; mandb es más tolerante, pero para compatibilidad con otros sistemas no es una buena idea para retener la barra invertida.

En el lado izquierdo, quizá hay varios nombres, separados por comas. Los nombres conteniendo espacios en blanco serán ignorados para evitar comportamiento patológico en ciertos formatos de secciones NOMBRE. El texto en el lado derecho tiene formato libre, y quizá está desplegado por múltiples líneas. Si varias características con descripciones diferentes están siendo documentadas en la misma página del manual, el siguiente formato está ya utilizado:

    .SH NAME
    esto, aquello \- programas para hacer algo
    .br
    baz \- programa para no hacer nada

(Una macro la cual inicia un parágrafo nuevo, como .PP, quizá está utilizado en lugar de ruptura de macro .br.)

Cuando utilice las derivaciones BSD el conjunto de macro mdoc, un NOMBRE de sección correcto parece algo como esto:

    .Sh NOMBRE
    .Nm lo que sea
    .Nd programa para hacer algo
Hay distintas razones comunes por las que interpretaciones fallan. Algunas veces los autores de las páginas del manual sustituyen ‘.SH NOMBRE’ por ‘.SH MIPROGRAMA’, y entonces mandb no puede encontrar la sección desde la cual extraer la información que necesita. Algunas veces los autores inclyen una sección NOMBRE, pero colocan texto de formato-libre en lugar de ‘name \- description’. Sin embargo, cualquier sintaxis analizada encima debería ser aceptada.

VEA ADEMÁS
apropos(1), man(1), whatis(1), mandb(8)

ANOTACIONES
lexgrog intenta entender ficheros conteniendo peticiones .so, perot no serán capaces de hacer tan correctamente si los ficheros son propiamente instalados dentro de una jerarquía de página del manual.

AUTOR
El código utilizado por lexgrog para analizar páginas man fue escrito por:

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

Colin Watson escribió la actual encarnación dela línea de órdenes frontal, así como esta página del man.