La Gaceta de Linux ...¡ haciendo a Linux un poco más divertido !

Frente y Reverso: Kile y LaTeX

Por Jimmy O'Regan

Traducción al español por Gustavo Conturzo
el día 28 de Marzo de 2005, para La Gaceta de Linux

Introducción

LaTeX es un sistema de preparación de documentos basado en TeX de Donald Knuth. LaTeX proporciona las facilidades necesarias para tipografiar artículos, libros y otros documentos. Kile es un entorno basado en KDE para la edición de documentos de LaTeX, lo cual simplifica el proceso y proporciona fácil acceso a comandos y etiquetas comúnmente usados.

Además de ofrecer atajos a varios de los comandos usados para convertir documentos LaTeX, y lanzar los visualizadores para estos formatos, Kile proporciona una ventana de salida, de modo que puedas ver los errores que puedan haber estado presentes en tu documento, y una ventana Konsole incorporada, así que fácilmente puedes lanzar cualquier otro comando que desees sin conmutar ventanas.

TeX es utilizado por muchas tantas de las varias herramientas de documentación disponibles para Linux de las que LaTeX merece la pena aprender, si ya que por ninguna otra razón está disponible en casi todas partes. TeX (y, por extensión, LaTeX) siguen teniendo la mejor representación disponible para matemáticas, así que si alguna vez planeas tipografiar un fórmula complicada, harías bien en aprenderlo. LaTeX está siendo utilizado por el Proyecto Gutenberg para libros de matemática, y un subconjunto de sintaxis matemática de TeX es utilizado por Wikipedia.

Si has escrito HTML antes, LaTeX básico no debería ser demasiado difícil de comprender. Por ejemplo, el texto en cursivas se escribe como esto en HTML: <i>texto en cursivas</i>; y como esto en LaTeX: \textit{texto en cursivas}.

Confesando

Ahora, no hay mucho que decir acerca del uso de Kile. Kile es útil - ciertamente ahora mucho tiempo al poder seleccionar las etiquetas que quieras desde un menú. También ahora tiempo al utilizar la barra de herramientas de creación de documentos - los comandos que estas herramientas invocan se pueden resumir, de izquierda a derecha (ver abajo), como sigue:
Tool icons

  1. latex nombre_de_archivo.tex
  2. kdvi nombre_de_archivo.dvi
  3. dvips nombre_de_archivo.dvi -o nombre_de_archivo.ps
  4. kghostview nombre_de_archivo.ps
  5. pdflatex nombre_de_archivo.tex
  6. kpdf nombre_de_archivo.pdf

Fíjate que Kile utiliza pdflatex. Esta, en mi opinión, no es la mejor manera de generar un archivo PDF de LaTeX. En mi experiencia, pdflatex ha fallado para incluir imágenes. Mi forma preferida para generar archivos PDF (utilizando un  artículo sobre SuperKaramba que nunca logré difundir para terminar como un ejemplo) es:

latex sk.tex
dvips sk.dvi -o sk.ps
ps2pdf sk.ps sk.pdf

Comenzar un Nuevo Documento

Kile es una aplicación KDE, así que para iniciar un nuevo documento se hace de la misma manera que con cualquier otra aplicación KDE: Archivo->Nuevo, o Ctrl-N. Kile ofrece la opción de "Documento Vacío", "Artículo", "Libro", "Carta", o "Reporte". Supondré que quieres utilizar "Artículo" - Estaré utilizando (partes de) este artículo como ejemplo - pero no debería ser demasiado difícil utilizar las otras plantillas.

\documentclass[a4paper,10pt]{article}


%opening
\title{}
\author{}

\begin{document}

\maketitle

\begin{abstract}

\end{abstract}

\section{}

\end{document}

No te asustes demasiado, ¡estoy seguro que estarás de acuerdo! La mayoría de los comandos básicos tienen la misma  fórmula: \comando{parámetro}. Hay algunas diferencias, como \maketitle, pero es cierto para la mayoría de los comandos más comunes. Rellenar esto se parece a esto:

\documentclass[a4paper,10pt]{article}
\usepackage{hyperref}

%opening
\title{Frente y Reverso: Kile y LaTeX}
\author{Jimmy O'Regan}

\begin{document}

\maketitle

\begin{abstract}
Kile es un frontend amigable al usuario para \LaTeX{}. Este artículo discute el uso de
Kile, y el uso de \LaTeX{} sin éste.
\end{abstract}

\section{Introducción}

\href{http://www.latex-project.org/}{\LaTeX{}} es un sistema de preparación de
documentos basado en \TeX{} de Donald Knuth. \LaTeX{} proporciona las facilidades
necesarias para escribir artículos, libros y otros documentos.
\href{http://kile.sourceforge.net}{Kile} es un entorno basado en KDE para edición de
documentos LaTeX, lo que simplifica el proceso y proporciona fácil acceso a los
comandos y etiquetas usados comúnmente.

Fíjate en la línea \usepackage{hyperref}: esto le dice a LaTeX que utilice el paquete hyperref, el que agrega algunos comandos extras para enlaces Web (Yo lo utilizo para el comando \href{}{}). Una diferencia entre HTML y LaTeX es que LaTeX no requiere un comando para un nuevo párrafo; simplemente dejas una línea en blanco entre los párrafos, y LaTeX lo comprende. LaTeX tiene un número de caracteres especiales que HTML no: la mayoría de estos puede ser utilizados al escaparlos con una barra invertida ('\'), pero la barra invertida en sí se debe insertar como $\backslash$, porque una doble barra invertida ('\\') se utiliza para forzar un salto de línea. Aquí está una tabla de algunas etiquetas HTML comunes y sus equivalentes en LaTeX:

HTML LaTeX
Cursivas <i>Cursivas</i> \textit{Cursivas}
Negritas <b>Negritas</b> \textbf{Negritas}
Mecanografía <tt>Tipeo</tt> \texttt{Tipeo}
Hipervínculo <a href="http://">text</a> \href{text}{http://}
Encabezado <h1>Encabezado</h1> \section{Encabezado}
Subencabezado <h2>Subencabezado</h2> \subsection{Subencabezado}
< &lt; $<$
> &gt; $>$
& &amp; \&

Entornos

Las cosas más complicadas en LaTeX se hacen en diferentes entornos - estos comandos se parecen a esto:

\begin{environment}
...
\end{environment}

Kile amablemente rellena la parte \end{} por ti automáticamente, después de una línea en blanco. Es un pequeño ahorro de tiempo, pero es útil.

La mayoría de estos entornos pueden tener adjunta una etiqueta \label{}, que te permite establecer una descripción que "sigue" al entorno. Este archivo contiene un ejemplo del uso de la etiqueta label, adjuntada a un entorno verbatim.

Listas diferentes están disponibles como entornos, por ejemplo; <ol> en HTML se traduce a \begin{enumerate}, y <ul> se traduce a \begin{itemize}. La etiqueta \item se utiliza en lugar de <li>. Esta lista:

  1. Primero
  2. Segundo

Se ve como esta:

\begin{enumerate}
\item Primero
\item Segundo
\end{enumerate}

Otro equivalente HTML común es el entorno "verbatim" en lugar de la etiqueta <pre>. Aunque el entorno "verbatim" es diferente de la etiqueta "pre" de HTML; los elementos HTML deben estar escapados, mientras que en el entorno "verbatim" todos los procesos se detienen hasta la etiqueta \end{verbatim}, así que nada necesita estar escapado.

Cosas no disponibles en HTML

Debido a que LaTeX es un sistema de preparación de documentos, tiene bastantes comandos que no tienen equivalentes en HTML, pero que son útiles para crear documentos tales como libros. Etiquetas como \chapter{} son explicativas por sí mismas, una cosa que podría proporcionar una pequeña confusión es el uso de notas al pie de página.

Aunque en el entorno de párrafo, una nota al pie de página puede ser insertada simplemente al agregar  \footnote{Texto de la nota al pie de página}. En otros entornos, sin embargo, tienes que utilizar la etiqueta  \footnotemark mientras estás dentro del entorno, seguido por \footnotetext{Texto de la nota al pie de página} cuando estás fuera de ese entorno. Así que, si quisiste agregar una nota al pie de página dentro de una nota al pie de página (si eres un fanático de Terry Pratchett, lo entenderás), se vería como esto:

Aquí tendrías tu texto, como de costumbre\footnote{O como inusual\footnotemark}. 
Luego puedes continuar tu texto de párrafo.

\footnotetext{Al menos espero que encuentres notas al pie de pagina dentro de notas al pie de paginas inusuales}

(Este archivo, una versión de mi artículo RDF del mes pasado, contiene un ejemplo del uso de notas al pie de página).

Símbolos no Ingleses

LaTeX soporta la mayoría de los lenguajes modernos (en mi parte del mundo, al menos) son las letras del alfabeto Griego, y varios símbolos utilizados en el alfabeto Latino, tales como las diéresis y acentos.

Kile amablemente proporciona un panel lateral para el Griego, y otro con muchos de los símbolos Latinos. Aquí está otra tabla de algunos símbolos, con sus equivalentes HTML y LaTeX:

HTML LaTeX
α &alpha; \alpha
ä &auml; \"a
é &eacute; \'e
Æ &AElig; \AE{}
Ç &Ccedil; \c{C}
ù &ugrave; \`u
ô &ocirc; \^o
ñ &ntilde; \~n
ß &szlig; \ss{}
œ &oelig; \oe{}
å &ring; \aa{}
ø &oslash; \o{}

A veces corrijo para Distributed Proofreaders, donde de vez en cuando hay libros que utilizan cosas extrañas tales como una ligadura AE con un acento (\'\AE{}). Un libro que se envió recientemente es JUAN MASILI Ó Ang pinuno n~g tulisán, el cual está en Tagalog antiguo. El Tagalog antiguo utiliza una g con una tilde. HTML no soporta esto, pero  LaTeX sí: \~g. Hay muchos, muchos caracteres extraños disponibles para uso en LaTeX - tantos, que no voy a ir a buscarlos a todos (bien... eso, y pereza).

Tablas

Probablemente sea mejor mostrar un ejemplo de una tabla que intentar hablar demasiado sobre ésta:

\begin{tabular}{rcl}
1 & 2 & 3 \\
4 & 5 & 6
\end{tabular}

{rcl} quiere decir que hay tres columnas en esta tabla, la primera está alineada a la derecha (right), la segunda está centrada (centred), y la tercera está alineada a la izquierda (left). Cada columna está separada con un ampersand (&); cada fila está separada con un salto de línea (\\). La separación de filas y columnas utilizada en esta tabla también se utiliza en entornos similares, tales como matrices y ecuaciones, de modo que es importante saber cómo utilizar tablas si quieres tipear ecuaciones complicadas en LaTeX.

Vamos a ver parte de la primera tabla, formateada por LaTeX:

\begin{tabular}{cll}
& HTML & \LaTeX{} \\
Italics & $<$i$>$ & $\backslash$textit\{Italics\} \\
Bold & $<$b$>$Bold$<$/b$>$ & $\backslash$textbf\{Bold\} \\
Hyperlink & $<$a href="http://"$>$text$<$/a$>$ & $\backslash$href\{text\}\{http://\} \\
$<$ & \&lt; & \$$<$\$ \\
$>$ & \&gt; & \$$>$\$ \\
\& & \&amp; & $\backslash$\&
\end{tabular}

(¡Y quizás ahora veas porqué no hago de nuevo este artículo completo como un ejemplo, como había pensado originalmente!)

Matemáticas

Mencioné que LaTeX es el sistema tipográfico para matemáticas... tampoco quiero entrar en demasiada profundidad, pues la tipografía de ecuaciones matemáticas en LaTeX es asunto digno de un libro, no de un artículo.

En general, las matemáticas simples se pueden incluir al encerrarlas dentro de signos pesos:

$2 + 2 = 4$
Esto podría explicar porqué ciertas cosas, tales como los símbolos "menor que" (<) y "mayor que" (>) necesitan estar encerrados por signos pesos. LaTeX también te permite utilizar los símbolos de multiplicación y división "propiamente dichos":
$x = 2 \times 3 \div y$
Veamos una imagen y el LaTeX utilizado para generarlo:

Formula

\left(\frac{a}{b}\right)^2 = \frac{a}{b} \times \frac{a}{b} = \frac{a^2}{b^2}

Aquí tenemos numerosos paréntesis (\left(, \right)), fracciones (\frac{}{}), y superíndices simples (a^2). Para utilizar más de un solo caracter en un superíndice o subíndice (_), ellos se encierran con llaves: a^{13 + 2}_{4 - 6}. (Este ejemplo está tomado de A First Book in Algebra (Un Primer Libro en Álgebra), el cual recientemente fue enviado al Proyecto Gutenberg. Si quieres aprender sobre la tipografía matemática con LaTeX, dale una mirada al fuente de este libro).

Veamos un simple arreglo. Como mencioné anteriormente, muchos de los entornos matemáticos son casos especiales de tablas:

\begin{array}{cc}
3 & 4 \\
4 & 5
\end{array}

Otro ejemplo es un arreglo de ecuación, el cual se utiliza para alinear una fórmula, normalmente al símbolo "igual" (la convención es escribir esto como &=&, para mostrar más claramente la alineación):

\begin{eqnarray}
a &=& 5 + 6 \\
b + 6 - 3 &=& 2 - a
\end{eqnarray}

Esto es casi lo mismo que esta tabla, excepto que la ecuación está centrada, y cada línea está numerada:

\begin{tabular}{rcl}
a &=& 5 + 6 \\
b + 6 - 3 &=& 2 - a
\end{tabular}

Conclusión

LaTeX es un poderoso lenguaje de formateo de texto, y he cubierto apenas la punta del iceberg en este artículo. Kile es una herramienta estupenda para asistirte en el uso de LaTeX (aunque apenas lo he cubierto en todo) - realmente puede ahorrarte tiempo recordándote qué entorno necesitas al ofrecértelo desde un menú, y por eso nuevo para LaTeX, puede ser un regalo del cielo.

Si no quieres editar LaTeX por ti mismo, hay herramientas disponibles que generarán LaTeX desde otros formatos. html2latex, por ejemplo, convierte HTML a LaTeX, y este sitio convierte artículos de Wikipedia a LaTeX. (Ejemplo).

 


[BIO]Jimmy ha estado usando computadoras desde la tierna edad de siete años, cuando su padre heredó una Amstrad PCW8256. Después de unos breves flirteos con una Atari ST y numerosas versiones de DOS y Windows, Jimmy se introdujo a Linux en 1998 y no ha mirado hacia atrás.

Jimmy es padre de un tecno-entendedor de siete años de edad llamado Mark. En el tiempo libre él disfruta salir de su círculo personal de Hell, trabajando en una fábrica, a Jimmy le gusta tocar guitarra y editar Wikipedia.

Copyright © 2004, Jimmy O'Regan. Publicado bajo los términos de la Open Publication license

Publicado en el Número 106 de la Gaceta de Linux, Septiembre de 2004