Groff
groff o GNU troff, es un conjunto de programas de aplicacion y macros de composicion pensadas para dar formato a textos. A traves de “comandos punto”, describe el formato de documentos a aplicar.
Con groff puede producir diferente tipos de salida de aspecto profesional, incluyendo HTML para la difusion en la world wide web, y PostScript para salida impresa, o bien PDF para ver en linea.
Ver tambien: Tutorial de Groff.
Historia
La historia del paquete de macros -ms se remonta a los origenes de UNIX en los Laboratorios Bell. Uno de sus primeros utilitarios fue el sistema de formato de texto escrito por Joe Ossana, roff. Este consistio en una implementacion simplificada del formateador RUNOFF de CTSS, aunque solo soportaba versiones minimalistas de los comandos del RUNOFF original.
Mas adelante, tras una solicitud del equipo de Legales tendiente a poder afrontar la preparacion de formularios y aplicaciones de Patentes en los Laboratorios, el equipo de desarrollo de UNIX actualizo roff agregandole soporte a formatos mas avanzado. Esta version potenciada fue denominada "nuevo roff" o nroff).
Anos despues, los Laboratorios Bell adquirieron una fotocomponedora Graphic Systems modelo C/A/T, y Ossana nuevamente volvio a actualizar nroff para aprovechar su impresion de gran calidad, convirtiendolo en troff.
nroff hacia facil redactar papers en una teletipo, y obtener impresion con una apariencia profesional.
Esta secuencia de desarrollo fue acompanada por la creacion y de una gran coleccion de macros de formato, destinados a distintos tipos de formatos y tecnicas de escritura. La mayoria de los documentalistas preparan su material en nroff recurriendo a ellos, utilizando en principio el paquete de macros -me, de Eric Allman.
El paquete de macros -ms en particular, posibilita la preparacion de documentos academicos de excelente presentacion impresa.
Actualmente los sistemas similares a UNIX ofrece fomateadores compatibles con nroff y troff. Especialmente utilizado es la version del Proyecto GNU, GNU troff o groff.
Las paginas de manual del sistema UNIX, muchos libros de software, documentos de sistemas, estandars y documentos corporativos. La salida de texto de roff aun no tiene parangon, y su salida grafica tiene la misma calidad que otros programas de fotocomposicion libres, y es incluso superior a algunos sistemas comerciales.
Comandos de Groff
General
Comando | Funcionalidad |
---|---|
.RP [no] |
Imprime pagina de cubierta aislada. Puede ser evitada con .RP no |
.TL |
Titulo del documento. |
.AU |
Nombre del autor. |
.AI |
Institucion del autor. |
Bloque .AB [no] y .AE |
Comienzo y final del bloque Abstract. .AB no asegura que la palabra clave abstract sea silenciada. |
.DA [XXX] |
Fecha actual en la pagina de titulo y pies de pagina. |
.ND [XXX] |
Fecha actual solo en la pagina de titulo |
.1C |
Texto a una columna |
.2C |
Texto a dos columnas |
.MC [WIDTH[GUTTER]] |
Diseno de multiples columnas (por defecto 2) |
.XS num_pag y .XE |
Bloque de Tabla de Contenidos |
.XA num_pag |
Entrada en el Bloque de Tabla de Contenidos |
.PX |
Imprime una tabla generada manualmente de contenidos sin reajustar numerado de paginas. |
Formato de Texto
Comando | Funcionalidad |
---|---|
.B |
Negrita |
.I |
Cursiva |
.BI |
Negrita y cursiva |
.P1 |
Imprime el encabezado en pag 1. Por defecto se suprimiria el encabezado. |
.BX |
Cuadro |
.UL |
Subrayado |
.LG |
Imprime todo el texto siguiente en tipografia mayor (2 picas mas grandes que el tamano de tipografia actual) |
.SM |
Imprime todo el texto siguiente en tipografia menor (2 picas menor que la tipografia actual) |
.NL |
Imprime todo el texto siguiente en tipografia de tamano normal |
.R |
Configura su primer argumento en tipografia roman (o regular). Opera de manera similar a la macro .B . |
.CW |
Configura su primer argumento en tipografia cursiva. Opera de manera similar a la macro .B . |
Formato de Parrafo
Comando | Funcionalidad |
---|---|
.PP |
Parrafo estandar |
.QP |
Parrafo citado |
.XP |
La macro XP produce un parrafo desangrado. La primer linea del parrafo comienza en el margen izquierdo, y las lineas subsecuentes se sangran (lo puesto a PP). |
.RS y .RE |
Comienzo y final de una seccion de texto sangrado, respectivamente. El registro PI controla la cantidad de sangrado. |
.IP |
Listado de puntos. Use .IP \(bu [ancho] para listados no ordenados (bullets) con un ancho determinado. Use .IP [nro.] para listados ordenados. |
.TA |
Tabulado |
Encabezados
Comando | Funcionalidad |
---|---|
.NH xxx |
Encabezado de Seccion numerado, donde se especifican niveles de titulado |
.SH xxx |
Encabezado de Seccion (no ordenado) |
.LH |
Encabezado izquierda |
.CH |
Encabezado centrado |
.RH |
Encabezado derecho |
.LF |
Pie de pagina izquierdo |
.CF |
Pie de pagina centrado |
.RF |
Pie de pagina derecho |
.OH |
Encabezado para paginas impares. ej: .OH 'left'center'right' |
.EH |
Encabezado para paginas pares. |
Pre Procesado
Comando | Funcionalidad |
---|---|
.TS [H] y .TE |
Denota una tabla, que sera procesada por el preprocesador. Un argumento H opcional instruye a groff a crear un encabezado corrido con la informacion de la macro TH . |
.PS y .PE |
Denota una grafica, a ser procesada por el preprocesador de imagenes. Puede crear un fichero de imagen a mano, o usando un programa grafico. |
.EQ [align] y .EN |
Denota una ecuacion, a ser procesada por el prprocesador. El argumento align opcional puede ser C , L , o I para centrar (defecto), justificar a izquierda, o indentar la ecuacion. |
.[ y .] |
Referencias y bloque de citas, a ser procesados por el procesador de referencias. |
Macros personalizadas
Comando | Funcionalidad |
---|---|
.de y .. |
Puede definir macros entre este bloque. Ellos pueden ser llamados por el mismo fichero asi como por otros ficheros. |
.so fichero |
Llama a macros desde fichero |
Graficos
Comando | Funcionalidad |
---|---|
.PSPIC -[L/R/C/I n] [width[Height]] fichero.eps |
Inserta una imagen Postscript en groff. |
.PDFPIC -[L/R/C/I n] [width[Height]] fichero.eps |
Inserta una imagen PDF en groff. |
Configurar papel
Puede configurar el tamano de su papel virtual usando el
postprocesador incorporado en groff. Se usa -P
para pasar
argumentos al postprocesador:
groff -k -Tpdf -P-pa4 -P-l -ms fichero.ms > fichero.pdf
Para tomar un papel virtual tamano A4 en orientacion horizontal. Otros formatos validos son las paginas de tamano A, B, D, junto con tamano letter, statement, ledger, y tabloid.
Manual de Groff
Si deseas aprender Groff al completo, ten a bien leer el Manual de Groff (pdf)