Herramientas de usuario

¡Esta es una revisión vieja del documento!


Tutorial de groff -ms

Introducción

Empecemos a usar groff -ms para crear documentos técnicos hermosos. Comencaremos con lo básico para poder utilizar el paquete de macros -ms para obtener documentos PDF de apariencia profesional.

Si quiere explorar groff, puede necesitar instalar los paquetes restantes: en Fedora Linux, podría querer usar esto:

$ sudo dnf install 'groff-*'

Historia

El paquete de macros -ms tiene una larga historia, pero la resumiré de esta manera: Cuando Ken Thompson creó Unix en los Laboratorios Bell, uno de los primeros programas fue el sistema de formateo de texto de Joe Ossana, roff. Se trataba de una versión del formateador RUNOFF de Jerry Saltzer, que sólo soportaba las versiones abreviadas de los comandos de RUNOFF.

Mas adelante, tras una solicitud del equipo de Legales a fin de poder afrontar la preparación de formularios y aplicaciones de patentes, el equipo de UNIX actualizó roff agregándole soporte de formato más avanzado (denominándolo nroff o “nuevo roff”).

Mucho después, los Laboratorios Bell adquirieron una fotocomponedora Graphic Systems modelo C/A/T, y Ossana nuevamente volvió a actualizar el nroff para aprovechar su impresión de gran calidad.

nroff hacía fácil redactar papers en una teletipo, y obtener impresión con una apariencia profesional.

A lo largo de estos avances, los trabajadores de los Laboratorios Bell fueron conformando una gran colección de de macros de formateo destinados a la escritura técnica avanzada: el paquete de macros -ms posibilitaba facilitar la preparación de documentos para lograr una excelente presentación impresa.

La mayoría de la gente prepara documentos en nroff recurriendo un paquete de macros, y al principio yo use el -me macros, de Eric Allman.

Exploremos cómo empezar con groff -ms para crear documentos.

Usaremos un editor de texto para crearemos un fichero llamado paper.ms. Por ejemplo:

nano paper.ms

Actualmente los sistemas similares a UNIX ofrece fomateadores compatibles con nroff y troff (algunas distribuciones instalan un groff mínimo por defecto, apenas lo suficiente para dar formato a páginas de manual que lo usan).

Estructura de documento

El -ms macros asume una estructura de documento determinada, y usa este orde de precedencia:

  1. Si escribe un documento formal con una página de tapa, comience con .RP
  2. Defina los registros y cadenas para establecer una fuente personalizada, tamaño de fuente y márgenes, etcétera.
  3. Información de documento, como el título y el autor.
  4. El cuerpo del texto, usando encabezados y párrafos.

Si está satisfecho con las opciones por defecto, su documento puede iniciarse con la información de documento, y luego el cuerpo del texto.

Información del documento

El macro -ms provee muchas opciones para definir la información del documento, pero como principiante, nos abocaremos a unas pocas:

Comience el título con el macro .TL, cualquier línea que le siga a continuación resultará formateada como título.

Defina el autor usando .AU y mecanografíe el nombre del autor en las líneas que siguen a continuación. Para incluir la institución del autor (por ejemplo, para completar un paper académico), usando el macro .AI, y la institución en la siguiente línea.

Para incluir una fecha en el pie de página del documento, recurra al macro .DA, en una línea en sí misma. También puede darle un argumento de fecha específico, para aportar una fecha específica.

Si su documento requiere un anstract. use el macro .AB para darle inicio, y .AE para finalizar el abstract. El abstract - si es provisto - debería ser el último ítem provisto antes de mecanografiar el cuerpo del texto.

.TL
Este es el título
.AU
Jim Hall
.AI
Mi institución
.DA "today"
.AB
Este es el abstract.
Podría querer proveer un abstract si está redactando
un paper científico pensado para su publicación
académica.
.AE

Sample output from groff -ms Sample output from groff -ms

Cuerpo del Documento

Los documentos a menudo están estructurados usando encabezados y párrafos. Use .NH para comenzar un encabezado enumerado, y en las línea siguiente ingrese el título de sección. Para los encabezados no numerados, use el macro .SH en su lugar, también con el título de sección en la línea a continuación.

Comience los párrafos regulares con el macro .PP en una línea especófoca. Por defecto, este será un párrafo con sangrado de primera línea, que es corriente en la mayoría de los documentos académicos y profesionales. Si necesita en su lugar un párrafo justificado a izquierdas, recurra al macro .LP.

Las citas utilizan un formato diferente, donde la primer línea está “desangrado” (en vez de sangrada) y las líneas siguientes resultan sangradas. Para formatear como un párrado “desangrado”, use el macro .XP.

Para distintos tipos de énfasis dentro del texto, use texto en negrita o cursiva. El macro .B pondrá el texto a continuación en negrita, mientras que el macro .I pondrá el texto a continuación en cursiva. Para cualquiera de ellas también puede proveer un argumento que formatee sólo dicho texto en negrita o cursiva. Si provee argumentos a continuación, serán el “post” o “pre” texto, respectivamente. Esto es útil si usted necesita formatear una frase en negrita, pero no quiere que la coma final esté en negrita. O podría necesitar formatear texto en cursiva, pero también dentro de paréntesis, pero prefiere que las paréntesis continúen en tipografía normal.

Si utiliza .B o .I en una línea aislada, todo el texto a continuación aparecerá en negrita o cursiva. Para impedir que el texto normal (llamado texto “roman”), use la macro .R.

.TL
Este es el título
.AU
Jim Hall
.AI
Mi institución
.DA "today"
.AB
Este es el abstract.
Podría necesitar proveer un abstract si está redactando
un paper científico pensado para su publicación académica.
.AE
.NH
Introducción
.LP
En la mayoría de los documentos, podría querer usar
párrafos con sangrado en la primera línea. Pero si
desea que su documento tenga una apariencia muy
interesante, considere utilizar un párrafo justificado
a izquierdas después de los encabezados de sección y
después de la presentación de imágenes grandes.
.PP
Después de eso, use párrafos sangrados en primera
línea. También puede usar un número de registro para
definitr la cantidad de espacio para el sangrado de
la primer línea.
.SH
Trabajos
Citedos
.XP
Autor, A.B. Título de Artículo.
.I "Title of periodical" ,
.I "vol num"
.I "issue num" ), (
pages.
(aquí hau algún texto extra para hacer que un párrafo desangrado se corte, para que pueda ver su apariencia)

Formato de Dos Columnas

Muchos jornales científicos prefieren publicar artículos en formato de dos columnas. Las columnas más angostas a menudo hacen que el texto sea más fácil de leer, si el texto no es demasiado largo.

Para formatear su documento en formato de dos columnas, agregue el macro .2C, pero recuerde la estructura del docuumento que espera -ms; el macro .2C se considera formateo de texto de cuerpo, de modo que debe ir después del abstract y antes de su primer encabezado de sección. Aquí hau un ejemplo más largo que incluye algún texto “lorem ipsum” en su lugar, para que pueda ver la salida del formato en dos columnas:

.TL
This is the title
.AU
Jim Hall
.AI
My Institution
.DA "today"
.AB
This is the abstract.
You might need to provide an abstract if you are
writing a scientific paper intended for academic
publication.
.AE
.2C
.NH
Introduction
 
...
 
.SH
Works
Cited
.XP
Author, A.B. Title of article.
.I "Title of periodical" ,
.I "vol num"
.I "issue num" ), (
pages.
(here is some extra text to cause the exdented paragraph
to wrap, so you can see what it looks like)

Redactando con groff

Si bien groff es algo nicho estos días, le permitirá escribir un documento profesional recurriendo a su editor de texto favorito.

Con groff podrá enfocarme en el contenido de lo que estoy redactando, con poca distracción. Después de un tiempo, encuentro que los “comandos punto” para dar formato a mi documento se vuelven casi naturales, o al menos muy poco distractivos.

Con groff, puede producir diferente tipos de salida, incluyendo HTML para la entrega en la world wide web, PDF para ver en línea, y PostScript para salida impresa. Por ejemplo, para formatear un paper usando groff -ms como un PDF, escriba:

$ groff -ms -Tpdf paper.ms > paper.pdf

Para aprender más sobre dar formato con los macros -ms, lea el man de groff en su sistema con:

$ man groff_ms

Este sitio web utiliza cookies para guardar datos esenciales de su actividad, como su autenticación. Al entrar acepta el uso de cookies.

Más información