Versión PDF | Fuentes del documento |
F. Javier Pueyo Mena
kiko
e-mail: kiko@sindominio.net
mayo 13, 2000
Este micro manual está hecho con LATEX2e, un formato especial de TEX pensado para artículos, libros e informes técnicos, en el cual se automatizan numerosas tareas típicas de trabajos científicos: tablas, figuras, ecuaciones, referencias internas, bibliografías, etc. Es especialmente bueno para producir matemáticas, pero ya se está usando más (demasiado poco) en humanidades (curiosamente entregadas, con gran vergüenza, al software y a formatos propietarios).
Supongamos que nunca antes habíamos usado TEX ni LATEX, y supongamos que
nuestra distribución de Linux
traía TEX, y supongamos que lo habíamos
instalado, y supongamos que alguien nos manda un artículo que ha escrito para
que lo leamos y le hagamos sugerencias (y supongamos que no es alguien de
humanidades y resulta que el artículo no está en Word) y supongamos que se
llama articulo.tex
y supogamos que lo abrimos con nuestro editor y nos
encontramos un fichero completamente en texto plano pero con un montón de
marcas que empiezan con \
(barra inclinada) y que no entendemos. Dada
la extensión del fichero y dadas las marcas juraríamos que está escrito en
TEX o en LATEX...premio.
Podríamos leerlo tal cual, pero sería un poco incómodo, así que nos preguntamos cómo demonios podemos transformar tanta marca en algo legible e imprimible. Digamos que está en LATEX. Fácil. En nuestra consola tecleamos:
NuestraConsola$: latex articulo.tex
Y ya está. La primera vez que se usa LATEX2e en Linux
tardará un poco
en procesar el fichero porque estará creando las fuentes estándar de TEX...
Pero esto de las fuentes es otra historia y debe ser contada en otra ocasión.
El caso es que el comando latex
es un atajo. LATEX no es un
programa. El programa que realmente interpreta el texto y las fuentes y tiene
los algoritmos para cortar líneas, páginas, palabras y caracteres es TEX,
creado por Donald E. Knuth hace mil años con la intención de conseguir que los
ordenadores pudieran hacer un trabajo de edición un poco parecido en calidad
al de las imprentas manuales. Lo consiguió. LATEX es lo que se llama un
formato, un conjunto de macros --muy complejas-- que hacen que TEX sea más
fácil de usar y que se automaticen muchas tareas. Así que cuando estamos
tecleando latex
en nuestra consola, en realidad estamos tecleando:
NuestraConsola$: tex &latex articulo.tex
Es decir, TEXéame articulo.tex
usando el formato LATEX. A su vez
LATEX es fácilmente modificable y se puden escribir macros que lo adapten a
nuestras necesidades...Pero esto es otra historia y debe ser contada en
otra ocasión.
Una vez que hemos LATEXeado un fichero, TEX normalmente produce otro
fichero (en realidad más de uno, pero nos interesa este) con la extensión
dvi
: device independence. Es decir, un fichero en un formato
estándar que no depende ni de la arquitectura del ordenador que esamos usando
ni, por supuesto, del sistema operativo, ni por supuesto de ningún programa en
particular, ni de ningún sistema específico de impresión. La filosofía:
cualquiera puede usarlo en cualquier sitio con cualquier cosa y obtener el
mismo resultado. Cuando a Knuth se le ocurrió lo de estos dvi
no había
inventado ni ps
ni pdf
ni nada parecido. Ahora hay versiones
especiales de TEX que por defecto producen PostScript o PDF. También hay
programas a parte que convierten los dvi
a estos formatos.
Pero primero lo primero. ¿Cómo veo o imprimo el « o utput» estándar de LATEX?
Pues depende mucho de los programas que traiga tu distribución de Linux
y sobre todo de si tienes X Windows o no. Si tienes X y quieres ver
directamente el fichero articulo.dvi
que ha salido de
articulo.tex
, entonces teclea en una XTerm:
NuestraXTerm$: xdvi articulo.dvi
y lo verás...
Es posible encontrar en la red programas para UNIX que nos permitan ver los
dvi
en la consola, yo los he visto para DOS...Pero eso es otra
historia y debe ser contada en otra ocasión...
Pero hay otras posibilidades. La más obvia en sistemas UNIX es producir un
fichero PostScript y mandarlo directamente a una impresora PostScript. Pero
como la probabilidad de que cualquiera tenga una impresora PS tiende a cero y
como la cantidad de árboles que nos están dejando también, es mejor usar un
visualizador de PS (que a su vez pueda imprimirlo a cualquier impresora que no
sea winprinter), el cual sí pueda tener todo el mundo, porque sea libre: por
ejemplo, ghostscript
y/o ghostview
que suele venir en todas las
distribuciones de Linux
.
Por pasos. Lo primero que hacemos es crear un fichero articulo.ps
a
partir de nuestro articulo.dvi
con un programa que viene en cualquier
distribución de TEX para linux
, y que se llama dvips
:
NuestraConsola$: dvips -o articulo.ps articulo.dvi
Si asumimos que la opción -o equivale a «output», la línea se explica sola.
Lo segundo es verlo. Usamos ghostview
y otra vez necesitamos las X:
NuestraXTerm$: gv articulo.ps
Y otra posibilidad es usar pdflatex
o pdftex
en lugar del
LATEX o TEX estándares. Suelen venir en la distribución normal de TEX para Linux
. Los pasos entonces son:
NuestraConsola$: pdflatex articulo.tex
Y lo que obtenemos, en lugar de articulo.dvi
o articulo.ps
es
un lindo gatito: articulo.pdf
. No está mal, para ser software libre
:)
.
Para verlo o imprimirlo, por ejemplo:
NuestraXTerm$: xpdf articulo.pdf
Sí, otra vez las X.
A diferencia de los que sólo pueden decir cosas como esta en una sola lengua, TEX y LATEX (a pesar de ser nativos de inglés) son más que bilingües, son multilingües.
Pero de primeras LATEX asume que estamos en la parte anglófona de
California y hay que decirle que no. Lo más difícil es decirle que use el
sistema de división de palabras del castellano o del catalán o del checo o del
latín. Y digo que es lo más difícil, porque otras cosas referentes a la lengua
las podremos especificar en un documento cualquiera, pero esto de dividir las
palabras en sílabas (o en lo que sea) son algoritmos complicados que hay que
dárselos a TEX masticados, es decir, compilados. Afortunadamente no hay que
recompilar TEX, sino recompilar los formatos que vamos a usar: en nuestro
caso LATEX. Los formatos grandes como LATEX o plain
TEX no es
obligatorio compilarlos, pero es muy conveniente ya que la velocidad y los
recursos consumidos aumentan y disminuyen a la vez. Una vez que una colección
de macros está compilada, TEX pone las instrucciones en su memoria sin
interpretarlas. Esta compilación se realiza con una versión especial de TEX,
que siempre viene con TEX porque es el alma de TEX se llama
IniTeX
, y si ini
equivale a inicialización, pues el nombre del
programa se explica solo.
Por lo general, los formatos como LATEX o plain
TEX viene
compilados ya, pero vienen sin las reglas de guionado de otras que no sean el
inglés, el alemán o el francés. Y nosotros necesitamos otras. Así que
necesitamos recompilar nuestro formato de LATEX y/o nuestro formato de
pdflatex
. Veamos lo que hay que hacer:
Lo primero hay que localizar en nuestra distribución un fichero que se llama,
curiosamente, language.dat
. Si tu distribución de Linux
incluye
te-TEX la estructura de directorios es una estándar de TEX, es decir, la
TDS (TEX Directory Structure), que significa que el directorio raiz
de todo el sistema TEX y metafont
comenzará a partir del directorio
/texmf
. Los ejemplos que doy siguen la TDS. En fin, editamos
language.dat
, como root
:
NuestraConsola#: emacs /usr/lib/texmf/tex/generic/config/language.dat
por ejemplo, y antes de las líneas que dicen:
american ushyph1.tex
=USenglish
nosotros por el morro, ponemos esto (eso sí en inglés):
spanish sphyph.tex
o
catalan cahyph.tex
o los dos. Esto significa dos cosas: primero, que la próxima vez que
compilemos LATEX, se usarán las reglas de división de palabras del castellano
o del catalán o de los dos. Los ficheros que contienen estas reglas están en
el directorio /texmf/tex/generic/hyphen
. Y segundo, el hecho de
ponerlo(s) en primer lugar, significa que LATEX usará por defecto esas
reglas y no las del americano.
Si hacemos estas modificaciones como root
en ese directorio, todos los
usarios tendrán las reglas de castellano o de catalán por defecto. Si no somos
root
o nuestro sistema es multilingüe, lo mejor es copiar el fichero
language.dat
a nuestra a nuestra home
, modificarlo allí,
salvarlo y dejarlo para seguir los siguientes pasos.
El siguiente paso, es inicializar LATEX de nuevo. Para ello tenemos que
localizar el fichero fuente de LATEX que se llama latex.ltx
y luego
compilarlo:
NuestraConsola$: initex /usr/lib/texmf/tex/latex/base/latex.ltx
el resultado será un fichero latex.fmt
, compilado, en nuestra
home
(bueno en el directorio desde el que hayamos lanzado
initex
), es decir, el cambio puede ser local a cada user
. Este
fichero será el que lea TEX para procesar nuestros documentos. Si el
root
quiere que este cambio sea para todo el sistema, tendrá que buscar
el fichero latex.fmt
original y pisarlo con el nuevo.
Si lo que vamos a usar es pdflatex
en lugar del LATEX estándar,
entonces lo que tenemos que buscar no es latex.ltx
sino
pdflatex.ini
y una vez localizado:
NuestraConsola$: pdfinitex /usr/lib/texmf/latex/config/pdflatex.ini
y obtendremos el fichero pdflatex.fmt
, y a partir de aquí vale la
explicación anterior.
Cómo cambiar de lengua dentro de un mismo documento o cómo modificar las cosas que afectan a la lengua, lo veremos luego, porque...esto es otra historia y debe ser contada en otra ocasión.
Pero si no te han enviado un fichero y lo que quieres es crearlo tú, entonces estaría bien conocer la estructura normal de un documento LATEX.
Tanto LATEX como TEX utilizan ficheros escritos en ASCII. Antiguamente sólo admitían textos de 7 bits, pero ahora ambos pueden utilizar las 256 posiciones ASCII.
Un documento LATEX tiene dos partes bien definidas: un preámbulo y el propio cuerpo del texto. El preámbulo contiene indicaciones generales que afectan al documento completo. Por ejemplo, si es un libro o es un artículo, si vas a escribir en varias lenguas y en cuáles, si cambias el formato de la página, etc.
Llamamos preámbulo a todo lo que aparece antes del comando:
\begin{document}
Hay dos comandos fundamentales en el preámbulo. Estos dos comandos son diferentes en las versiones antiguas de LATEX (la última de las llamadas antiguas fue la LATEX 2.09) y la nueva, es decir, LATEX2e (que es la que usamos nosotros y la que usará todo el mundo en un futuro cercano).
En LATEX2e, los dos comandos con los que comienza cualquier documento son:
\documentclass[
opciones]{
clase}
\usepackage[
opciones]{
paquete}
Es decir, LATEX2e usa clases y paquetes. La diferencia está en
que las clases son de rango superior, son obligatorias (de hecho, el
comando \usepackage
es opcional) y sólo puede usarse una en cada
documento, ya que afectan al diseño total del documento. Es decir, un
documento es durante TODO el documento un artículo, un
libro o un informe. Los paquetes se usan SOBRE las
clases y, por lo general, pueden ser utilizados en cualquiera de ellas.
Afectan a cosas más concretas del documento (por ejemplo, un paquete
puede ser un fichero personal que incluya todas nuestras macros o que incluya
nuestras modificaciones personales del tamaño de página, cabecera, etc.)
Por ejemplo, este documento empieza con los siguientes comandos:
\documentclass[10pt,a4paper,twoside]{article}
\usepackage{latexsym}
\usepackage[latin1]{inputenc}
\usepackage[spanish]{babel}
Es decir, usamos la clase article
con las opciones
10pt
(tamaño de letra base de 10 puntos), a4paper
(tamaño DIN
A4, ya que por defecto TEX asume el tamaño de papel americano) y
twoside
(ya que en la clase article
, por defecto se dan márgenes
y cabeceras iguales a las páginas pares e impares: yo paso de los márgenes
pero quiero dos cabeceras distintas). Y además, usamos los paquetes
siguientes: babel
(paquete estándar de LATEX2e para el uso de varias
lenguas) con la opción spanish
(también estándar de LATEX2e para que ciertos títulos automáticos o la fecha aparezcan en español). El
paquete latexsym
para poder usar algunos símbolos matemáticos
especiales (los cuales se han sacado del LATEX normal en la última versión
para no cargar el sistema). Y el paquete inputenc
, que debe significar
algo como input encoding, es decir, que es un paquete que te permite
usar un montón diferente de juegos de asignaciones de caracteres:
ascii
ASCII caracteres en el rango 32-127.
latin1
ISO Latin-1.
latin2
ISO Latin-2.
latin3
ISO Latin-3.
latin5
ISO Latin-5.
decmulti
DEC Multinational Character Set.
cp850
IBM 850.
cp852
IBM 852.
cp437
IBM 437.
cp437de
IBM 437 (versión alemana).
cp865
IBM 865.
applemac
Macintosh.
next
Next.
ansinew
Windows 3.1 ANSI, extension del Latin-1.
cp1250
Windows 1250 (Europa del este y central).
Para el castellano usamos la especificación ISO Latin-1, por lo que nuestra
opción será latin1
.
En la versión antigua LATEX 2.09, los documentos tenían styles, como
article
o book
, y options, como spanish
,
babel
o latexsym
.
Es decir, en la versión antigua nuestro documento hubiese empezado:
\documentstyle[10pt,a4paper,twoside,latexsym,babel,spanish]{article}
LATEX2e todavía entiende el comando \documentstyle
de LATEX 2.09.
Pero si lo usamos el programa entra en lo que se llama LATEX 2.09
compatibility mode (modo compatible) y el procesamiento es más lento. Sólo
debe usarse si se tienen antiguos documentos LATEX y no se tiene tiempo (o
ganas) de adaptarlos al nuevo estándar. Una diferencia más está en la
extensión de los nuevos ficheros clase y los paquetes. Las
clases ahora tienen extensión .cls
(antes tenían extensión
.sty
). Los paquetes conservan la extensión .sty
, ya que
prácticamente todos los paquetes de la versión LATEX 2.09 funcionan a la
perfección con LATEX2e.
Como último ejemplo: si queremos producir un pdf
y queremos usar las
features de color, hipertexto, etc. que permite el formato, añadiremos las
opciones siguientes:
\documentclass[pdftex]{article}
\RequirePackage[colorlinks,hyperindex]{hyperref}
...pero esto es otra historia y debe ser contada en otra ocasión.
Las clases siguientes se distribuyen siempre con LATEX:
item[book] Para escribir libros. Estructura el documento en partes, capítulos, secciones, etc.
book
y
parecido a article
.
article
.
article
.
\normalsize
. Sirve para buscar
bugs en el código de LATEX o para usarlo como plantilla si diseñas
una clase completamente nueva.
Los paquetes siguientes se distribuyen normalmente con LATEX:
alltt
, que es
como verbatim
excepto que \
, {
y }
tienen su
significado normal. Se describe en el fichero alltt.dtx
.
amsmath
; contiene todos los comandos necesarios para componer
fórmulas de gran complejidad siguiendo el formato de la AMS.
doc.dtx
.
graphics
, para la inclusión de
gráficos producidos en otros programas. También incluye el paquete
color
.
\graphpaper
usado en el entorno
picture
.
ifthen.dtx
.
latexsym
. Se
describe en latexsym.dtx
.
\index
se imprima en la página en donde se ha
puesto. Está bien para corregir los índices.
Hay cosas típicas que suelen aparecer en los preámbulos de LATEX. Un experto
LATEXeador reducirá al mínimo los comandos del preámbulo. Mi consejo es que
sólo se incluyan ahí las cosas más particulares del documento en cuestión. Las
macros o formatos que se usen habitualmente para más de un documento deben
agruparse en ficheros de estilos (*.sty
) y ser llamados con el comando
\usepackage
(o también \input
, si el fichero no tiene extensión
.sty
).
Si nos fijamos en el preámbulo de este documento, veremos que hay muchas cosas que no deberían estar ahí. La figura 1 muestra nuestro preámbulo:
Una vez que hemos especificado todas nuestras preferencias, paquetes, macros, etc. en el preámbulo, insertamos el comando:
\begin{document}
que--como su propio nombre indica--supone el verdadero comienzo de nuestro texto.
Una vez hayamos escrito todo lo que queramos, terminaremos el documento con el comando:
\end{document}
Todo lo que se escriba debajo de dicho comando será ignorado por TEX.
Pero antes de comenzar a escribir el texto en sí, podemos especificar unas cuantas cosas: el título del artículo o libro, el autor, la fecha, si debe haber un índice de contenidos, de tablas, de figuras, etc.
Por ejemplo, en este artículo--justo debajo de \begin{document}
--hemos
escrito lo que aparece en la Figura 2:
Es decir, hemos utilizado los comandos:
\title{ }
\author{ }
\date{ }
que recogen la información. Y después hemos usado el comando:
\maketitle
que hace que esa información se imprima con un formato predefinido. Después hemos destacado un `abstract' o resumen con el entorno:
\begin{abstract}
\end{abstract}
Finalmente introducimos un comando que indica a LATEX2e que vamos a querer un índice de contenidos, que incluya automáticamente nuestros capítulos, secciones, etc. con su título y número de página. Los otros dos comandos imprimen los índices de tablas y de figuras. El uso de estos comandos obliga a procesar nuestro documento un mínimo de dos veces, para asegurar que en el índice aparecen correctamente los números de sección y las páginas. Cuando esta segunda (o tercera) vuelta es necesaria, LATEX2e informa de ello. Estos comandos pueden situarse en cualquier parte del documento que queramos que aparezcan los índices.
\tableofcontents
\listoftables
\listoffigures
Después de estos comandos--ahora sí--podemos empezar a escribir nuestro trabajo.
Un documento-libro (book) o un documento-informe (report) de LATEX se estructura en partes, capítulos, secciones, subsecciones y subsubsecciones. Si es un documento-artículo (article) no necesitamos (ni tenemos disponibles) las partes ni los capítulos. Los siguientes comandos se usan para indicar las divisiones:
\part{
Título de la parte}
\chapter{
Título del capítulo}
\section{
Título de la sección}
\subsection{
Título de la subsección}
\subsubsection{
Título de la subsubsección}
Las consecuencias de usar estos comandos son varias:
article.cls
). Se pueden cambiar fácilmente.
Si queremos que una de las divisiones no sea numerada (y por lo tanto no entre en el índice de contenidos) tendremos que usar las siguientes variantes (variantes con *) de los comandos:
\part*{
Título de la parte}
\chapter*{
Título del capítulo}
\section*{
Título de la sección}
\subsection*{
Título de la subsección}
\subsubsection*{
Título de la subsubsección}
Una división más que se puede establecer es la de párrafo (y subpárrafo):
\paragraph{
Título del párrafo}
\subparagraph{
Título del subpárrafo}
\subparagraph{ }
actúa exactamente igual que el
anterior comando de \paragraph{ }
.
La diferencia entre ambos es jerárquica. Si colocamos en el preámbulo del documento el comando:
\setcounter{tocdepth}{5}
conseguiremos que los párrafos y subpárrafos queden incluidos en el índice de contenidos, y se sangren jerárquicamente.
Un punto a favor de usar las divisiones de LATEX2e es que después podemos referirnos a ellas fácilmente sin necesidad de saber el número que TEX les has asignado. Esto se hace mediante los comandos:
\label{ }
\ref{ }
El comando \label{ }
se coloca justo detrás del título de sección, por
ejemplo:
\section{Biblias medievales romanceadas}\label{biblias}
y después, cuando queramos referirnos a esta sección en el texto (ya sea antes o después de dicha sección) escribiremos, por ejemplo:
En la seccion~\ref{biblias} trataremos de las Biblias medievales
y obtendremos algo parecido a:
Llamo la atención sobre el uso de ~
delante del comando \ref
.
Es conveniente ponerlo (aunque no obligatorio) para que el número de sección
no se separe nunca de la palabra ``sección''.
Los dos comandos explicados pueden usarse no sólo en la referencia a las divisiones de LATEX2e sino también para referir a tablas y figuras. Esto lo veremos en las secciones 4.13 y 4.4.
La última frase de este párrafo decía en mi original:
Esto lo veremos en las secciones~\ref{table} y~\ref{fig}.
Escribir un fichero para TEX o para LATEX requiere acostumbrarse a ciertas convenciones y usos que no son necesarios en los procesadores de texto WYSIWYG2.
Hay una serie de caracteres que en principio--pero sólo en principio--están reservados para ciertas funciones. Los fondos (perdón...) reservados son:
~ # $ % ^ & { } \ _
Para poder escribirlos tenemos que usar los siguientes comandos:
\~{} \# \$ \% \^{} \& \{ \} $\backslash$ \_
y obtendremos:
--¿Para qué sirven esos caracteres entonces?
--Me alegro de que me haga esa pregunta:
~
: es un pequeño comando que colocado entre dos palabras, en
lugar de un espacio, impide que estas dos palabras se separen en distintas
líneas. Se suele usar en casos como Sr.~L
azaro
(Sr. Lázaro) en
los que queda francamente mal separar a tan ilustre personajillo de su
títulillo y distinción.
#
: se usa como parámetro en las macros.
$
: se usa para entrar en (y salir de) modo matemático,
es decir, para escribir fórmulas, ecuaciones, etc.
%
: en un documento de TEX se usa para hacer comentarios sin
que se impriman. Todo lo que está a la derecha de %
(en la misma línea)
no será procesado por TEX.
^
: se usa como superíndice (123456).
&
: se usa como signo de tabulación en las tablas.
{ }
: las dos llaves se usan para limitar el alcance de los
comandos de TEX. O para hacer grupos, que no sé si es lo mismo, pero me da
igual.
\
: es, por defecto, el caracter de escape en TEX y en LATEX,
es decir, el que indica que lo que sigue es un comando.
_
: se usa como subíndice (123456).
En TEX Las letras sin acentuar se escriben tal cual (menos mal):
a b c d e f g h i j k l m o p q r s u w x y z
y tenemos:
Los espacios y los tabuladores son ignorados por TEX normalmente, es decir,que da lo mismo que escribas un espacio que 100, aunque el original sufriría bastante. También da igual un retorno aquí y allá, los párrafos se marcan con una línea (o más) en blanco:
que produce:
Como decíamos TEX habla inglés por defecto, y esto se aplica también a las reglas tipográficas. Una de estas reglas afecta a los espacios extras que los anglosajones dejan detrás de los signos de puntuación. En las demás tradiciones tipográficas esto no es así, por lo que es muy conveniente cambiar este comportamiento por defecto de TEX. La mejor manera de hacerlo es desabilitando de un golpe esta función. El comando que hay que colocar al pricipio del documento es:
\frenchspacing
y curiosamente para volver al comportamiento normal de TEX hay que escribir:
\nonfrenchspacing
Otro comportamiento peculiar de TEX es que para conseguir la comillas dobles, no hay que escribir las comillas dobles del teclado (¿quién dijo que TEX era fácil?), sino escribir dos comillas simples de apertura (es decir, en el teclado español, dos acentos graves) seguidas para las dobles de apertura, y dos comillas simples de cierre para las dobles de cierre. Las simples son más simples, son lo que son:
Respecto a los caracteres acentuados y signos especiales tenemos un pequeño
problema: si no usamos la versión multilingüe de plain
TEX, o no
usamos el paquete inputenc
de LATEX, entonces tenemos que usar
comandos para producir caracteres con diacríticos. Lo cual para alguien que
escribe eñes y acentos por un tubo es molesto. Pero si usamos esos paquetes
podremos escribir los caracteres tal cual en nuestro fichero. Ahora, conocer
los comandos estándar de LATEX está muy bien si no tenemos acceso a un
teclado español o si queremos usar algo tan simple como una jota sin punto: j
que evidentemente no está en el teclado. Los tipos de acento que hay en TEX son los siguientes (se puede subsistuir la [o] por cualquier letra, excepto la
[i] y la [j] a las que primero hay que quitarles el punto de esta manera:
\i \j
y tenemos:
Con los comandos:
\'o
\'{\i}
\'{\j}
\`o
\^o
\" o
\~o
\.o
\v o
\u o
\H o
\c o
\b o
\d o
\t oo
obtendremos:
Estamos asumiendo que estamos usando las fuentes estándar de TEX, es decir,
las CMR o Computer Modern Roman, inventadas, diseñadas y dibujadas por
el creador de TEX, y que siempre vienen con TEX. Estas fuentes tienen su
propia asignación de caracteres e incluyen los diacríticos que he mostrado
arriba. TEX no está limitado a usar estas fuentes, puede usar ttf
o
ps
...pero esa es otra historia y debe ser contada en otra ocasión.
El caso es que las CMR están muy bien y con ellas puedes hacer cosas como esta:
Otros símbolos especiales se logran con los comandos:
\oe
\OE
\ae
\AE
\aa
\AA
\o
\O
\l
\L
\ss
\dag
\ddag
\S
\P
\copyright
\pounds
que producen:
En modo matemático--al que se entra tecleando $ y se cierra con otro $--se pueden obtener muchos más símbolos especiales (estos son válidos para cualquier fuente ya que en realidad pertenecen a una fuente específica de TEX que no es CMR):
He aquí los comandos que producen las letras griegas en minúscula:
$\alpha$
$\beta$
$\gamma$
$\delta$
$\epsilon$
$\varepsilon$
$\zeta$
$\eta$
$\theta$
$\vartheta$
$\iota$
$\kappa$
$\lambda$
$\mu$
$\nu$
$\xi$
$\pi$
$\varpi$
$\rho$
$\varrho$
$\sigma$
$\varsigma$
$\tau$
$\upsilon$
$\phi$
$\varphi$
$\chi$
$\psi$
$\omega$
Comandos que producen este resultado:
Y estas son algunas mayúsculas:
$\Gamma$
$\Delta$
$\Theta$
$\Lambda$
$\Xi$
$\Pi$
$\Sigma$
$\Upsilon$
$\Phi$
$\Psi$
$\Omega$
que prodecen lo siguiente:
Para conseguir los tres tipos de guiones:
-
--
---
combinaciones de guión simple que producen:
Para lograr la interrogación y la exclamación de apertura se usan los comandos:
?`
!`
es decir, las de cierre más una comilla simple de apertura (acento grave en el teclado español) que producen:
Pero queda dicho: si quieres puedes poner directamente una interrogación (¿)
o una exclamación (¡) o una comilla angular («) o una a acentuada (á) o lo que
quieras. Si te encontraras con un mensaje de error en algunos de esos
símbolos, significa que ese símbolo no está declarado en el fichero
latin1.def
y tienes que definirlo tú. Por ejemplo yo uso en este
artículo tres símbolos que no están definidos: los guiones medio (-) y largos
(--) y la cruz llamada «dag». Lo que he hecho es añadir en el preámbulo las
tres líneas siguientes:
\DeclareInputText{151}{---}
\DeclareInputText{150}{--}
\DeclareInputText{134}{\dag}
el comando \DeclareInputText{}{}
toma dos argumentos: el primero la
posición ISO o ASCII o lo que sea del caracter que queremos teclear tal cual
en nuestros ficheros y el segundo lo que queremos que haga TEX cuando se
encuentre este caracter.
En esta sección veremos cómo--dentro de una misma fuente--se puede seleccionar cursiva, negrita, fuente fija o sans serif.
En las palabras anteriores hemos usado el antiguo sistema de comandos de LATEX, pero se recomienda usar el nuevo estándar de LATEX2e.
El sistema antiguo utiliza los comandos:
{\it texto en cursiva}
{\bf texto en negrita}
{\tt texto en fuente fija}
{\sf texto en tipo sans-serif}
para producir los efectos:
Pero estos comandos no funcionaban muy intuitivamente por lo que el equipo de LATEX3 los ha rehecho y les ha cambiado los nombres para no liarnos. Un problema típico con los comandos antiguos era este ejemplo:
{\it texto en cursiva y esto debería ser {\bf cursiva y negrita} a la vez}
Los nuevos comandos desde LATEX2e son los siguientes:
\textrm{...} o {\rmfamily ...} redonda
\textit{...} o {\itshape ...} cursiva
\textbf{...} o {\bfseries ...} negrita
\texttt{...} o {\ttfamily ...} fuente fija
\textsf{...} o {\sffamily ...} sans serif (tipo arial o helvética)
Que usados con el ejemplo anterior, cambian el resultado:
{\itshape texto en cursiva y esto debería ser \textbf{cursiva y negrita} a la vez}
Algunos comandos más:
\textup{...} o {\upshape ...} upright (tipo dunhill)
\textsf{...} o {\sffamily ...} sans serif (tipo arial)
\textsl{...} o {\slshape ...} slanted (redonda inclinada)
\textsc{...} o {\scshape ...} versalita
\emph{...} o {\em ...} redonda, cursiva o subrayado dependiendo del contexto.
Un ejemplo de todas las posibilidades:
\textrm{...}
{\rmfamily ...}
\textsf{...}
{\sffamily ...}
\texttt{...}
{\ttfamily ...}
\textbf{...}
{\bfseries ...}
\textit{...}
{\itshape ...}
\emph{...}
{\em ...}
Las dos siguientes sólo tienen sentido cuando usamos fuentes que tienen estos diseños, como las CMR:
\textsl{...}
{\slshape ...}
\textsc{...}
{\scshape ...}
Respecto a los tamaños: en LATEX2e se controlan con los siguientes comandos, de menor a mayor:
\tiny
\scriptsize
\footnotesize
\small
\normalsize
\large
\Large
\LARGE
\huge
\Huge
Dependiendo de la opción de tamaño del \documentclass
que se esté
usando estos tamaños son relativos al tamaño de la fuente base de dicho
\documentclass
.
Por ejemplo, si se dice:
\documentclass[12pt]{book}
(en la versión antigua-pero compatible-de LaTeX: \documentstyle[12pt]{book}
)
el valor de \Large
es 17.3pt
pero si se dice:
\documentclass[11pt]{book}
el valor de \Large
es 14.4pt
Para nuestro documento, que está en 10pt, los comandos de tamaño preestablecidos dan los siguientes valores:
Aunque en LATEX2e también se puede especificar directamente el tamaño mediante el comando:
\fontsize{12}{12}\selectfont
en donde el primer número es el tamaño de la fuente en ``puntos'' (12pt) y el segundo (que es obligatorio también) es la interlínea medida en ``puntos'' (12pt).
Ahí van algunos ejemplos:
\fontsize{5}{6}\selectfont
\fontsize{12}{12}\selectfont
\fontsize{16}{14}\selectfont
\fontsize{20}{16}\selectfont
\fontsize{28}{20}\selectfont
Para volver al tamaño base del documento escribiremos el comando:
\normalsize
Por defecto LATEX usa una interlínea de 1 en sus clases estándar. Para
cambiar esta interlínea para todo el documento (o para una parte) tenemos que
usar el comando \linespread{
factor}
. Por ejemplo, el
comando en el preámbulo:
\linespread{1.3}
cambiará la interlínea a uno y medio, mientras que:
\linespread{1.6}
lo cambiará a dos.
Una vez que ya sabemos el alfabeto LATEX2etiano, bueno será meternos un poco en su sintaxis. Una parte importante de ésta son los llamados entornos (enviroment).
En LATEX2e los entornos son pequeñas islas (a veces parecen continentes) en los que se cambian formatos, tipos de letra, etc. temporalmente para conseguir automáticamente efectos distintos.
En esto conoceréis que soy un entorno:
\begin{
nombre del entorno}
\end{
nombre del entorno}
por ejemplo:
\begin{
table}
\end{
table}
Todo lo que hay entre estos dos comandos obedece a nuevas reglas, fijadas en
macros (en este caso hechas por el equipo de LATEX2e pero podemos hacer
nuestros propios entornos) que se anulan después del comando \end{ }
.
En las secciones siguientes veremos los entornos más comunes, pero hay muchos más. Las hemos ordenado alfabéticamente, pero se pueden reunir según su función de la siguiente forma: para la justificación parcial de fragmentos de texto véanse las subsecciones 4.1, 4.5 y 4.6; para la creación de listas (o texto jerarquizado) véanse las subsecciones 4.2, 4.3, 4.7, y 4.8; para citas largas véanse las subsecciones 4.9 y 4.10; para las tablas véanse las subsecciones 4.11, 4.13 y 4.12; para figuras véase la subsección 4.4; para poesía véase la subsección 4.14.
Sirve para centrar texto. Si no utilizamos el indicador de fin de línea
\\
, LATEX2e la romperá donde considere necesario. En este ejemplo
usamos \\
, en los de las subsecciones 4.5 y 4.6 dejamos
que TEX decida. Se usa de la siguiente manera:
Esto es texto sin centrar. El fragmento corresponde a los tres primeros versiculos del Cantar de los Cantares en la Biblia 10 288. \begin{center} (1) Cantar de los cantares de Salamon.\\ (2) [B]esseme de los bessos de su boca,\\ ca mejores son tus amores que el vino.\\ (3) Al olor de tus unguentos buenos,\\ unguento vaziadizo es el tu nonbre,\\ por esso las donzellas te amaron. \end{center} Esto es texto sin centrar. El fragmento corresponde a los tres primeros versiculos del Cantar de los Cantares en la Biblia 10 288.
Como su propio nombre no indica, se usa para hacer una lista sin numerar, destacando en negrita y con sangría francesa el ítem descrito. Tanto éste como los entornos descritos en las subsecciones 4.3, 4.7 y 4.8 hacen uso siempre del comando
\item[ ]
que se antepone a cada miembro de la lista. El argumento opcional [ ]
,
se usa para colocar un símbolo delante de un ítem determinado. Si queda vacío,
cada entorno de lista tiene símbolos definidos por defecto.
Veamos un ejemplo del entorno description
:
\begin{description} \item[Primer caso: ] Este es el primer caso. No se me ocurre nada que decir, pero como quiero mostrar un texto largo\dots \item[Segundo caso: ] Este es el segundo caso. Sigue sin salirme nada que decir, pero insisto en mostrar un texto largo\dots \item[Tercer caso: ] Este es el tercer caso. Pues no hay manera, no se me ocurre nada, pero me obceco en mostrar un texto largo\dots \end{description}
Otro de los entornos para hacer listas, en este caso numeradas. Para que se vea como funciona haremos tres niveles, metiendo un entorno en otro. Se observará que por defecto LATEX numera el primer nivel con números arábigos, el segundo con letras minúsculas, y el tercero con números romanos, ¡qué bien!.
\begin{enumerate} \item Este es el primer caso, No se me ocurre nada que decir, pero como quiero mostrar un texto largo\dots \begin{enumerate} \item Este el primer item del segundo nivel \begin{enumerate} \item Este el primer item del tercer nivel \item Este el segundo item del tercer nivel \item Este el tercer item del tercer nivel \end{enumerate} \item Este el segundo item del segundo nivel \begin{enumerate} \item Este el primer item del tercer nivel \item Este el segundo item del tercer nivel \item Este el tercer item del tercer nivel \end{enumerate} \end{enumerate} \item Este es el segundo caso. Sigue sin salirme nada que decir, pero insisto en mostrar un texto largo\dots \item Este es el tercer caso. Pues no hay manera, no se me ocurre nada, pero me obceco en mostrar un texto largo\dots \end{enumerate}
No hace nada especial. Simplemente permite mantener un contador de figuras,
cuyos títulos pueden ir a un índice de figuras. También permite referirse a
una figura con los comandos \label
y \ref
. He aquí el ejemplo:
\begin{figure}[h] \begin{center} \begin{fmpage}{2.5cm} NO HAY FOTO \end{fmpage} \end{center} \caption{NO HAY FOTO? Este titulillo va debajo de la figura}\label{titulo} \end{figure}
Con lo que ya podemos referirnos a la figura 3.
Sirve para justificar a la izquierda el texto. Se usa de la siguiente manera:
Esto es texto sin justificar a la izquierda. El fragmento corresponde a los tres primeros versiculos del Cantar de los Cantares en la Biblia 10 288. \begin{flushleft} (1) Cantar de los cantares de Salamon. (2) [B]esseme de los bessos de su boca, ca mejores son tus amores que el vino. (3) Al olor de tus unguentos buenos, unguento vaziadizo es el tu nonbre, por esso las donzellas te amaron. \end{flushleft} Esto es texto sin justificar a la izquierda. El fragmento corresponde a los tres primeros versiculos del Cantar de los Cantares en la Biblia 10 288.
Sirve para justificar el texto a la derecha. Se usa de la siguiente manera:
Esto es texto sin justificar a la derecha. El fragmento corresponde a los tres primeros versiculos del Cantar de los Cantares en la Biblia 10 288. \begin{flushright} (1) Cantar de los cantares de Salamon. (2) [B]esseme de los bessos de su boca, ca mejores son tus amores que el vino. (3) Al olor de tus unguentos buenos, unguento vaziadizo es el tu nonbre, por esso las donzellas te amaron. \end{flushright} Esto es texto sin justificar a la derecha. El fragmento corresponde a los tres primeros versiculos del Cantar de los Cantares en la Biblia 10 288.
He aquí otro de los entornos para crear listas. Nótese en el ejemplo que hemos utilizado la opción [ ]
en los ítemes 2 y 3 para cambiar el símbolo por defecto, que no está de más decirlo es $\bullet$
, es decir,
.
\begin{itemize} \item Este es el primer caso, No se me ocurre nada que decir, pero como quiero mostrar un texto largo\dots \item[$\Box$] Este es el segundo caso. Sigue sin salirme nada que decir, pero insisto en mostrar un texto largo\dots \item[$\rightarrow$] Este es el tercer caso. Pues no hay manera, no se me ocurre nada,pero me obceco en mostrar un texto largo\dots \end{itemize}
Pero no nos conformamos con un nivel sino que queremos más, por lo menos 3. Nótese que en el ``segundo caso'' también hemos cambiado los símbolos por defecto (- y *) en los niveles más profundos, por ¶ y :
Producido con el input:
\begin{itemize} \item Este es el primer caso, No se me ocurre nada que decir, pero como quiero mostrar un texto largo\dots \begin{itemize} \item Este el primer item del segundo nivel \begin{itemize} \item Este el primer item del tercer nivel \item Este el segundo item del tercer nivel \item Este el tercer item del tercer nivel \end{itemize} \item Este el segundo item del segundo nivel \begin{itemize} \item Este el primer item del tercer nivel \item Este el segundo item del tercer nivel \item Este el tercer item del tercer nivel \end{itemize} \end{itemize} \item[$\Box$] Este es el segundo caso. Sigue sin salirme nada que decir, pero insisto en mostrar un texto largo\dots \begin{itemize} \item[\P] Este el primer item del segundo nivel \begin{itemize} \item[\dag] Este el primer item del tercer nivel \item[\dag] Este el segundo item del tercer nivel \item[\dag] Este el tercer item del tercer nivel \end{itemize} \item[\P] Este el segundo item del segundo nivel \begin{itemize} \item[\dag] Este el primer item del tercer nivel \item[\dag] Este el segundo item del tercer nivel \item[\dag] Este el tercer item del tercer nivel \end{itemize} \end{itemize} \end{itemize}
Pero tampoco está de más decir que los entornos son compatibles y que podemos insertar unos en otros, por lo tanto veamos un ejemplo en que metemos un entorno ``itemize'' dentro de uno ``enumerate''.
\begin{enumerate} \item Este es el primer caso, No se me ocurre nada que decir, pero como quiero mostrar un texto largo\dots \begin{itemize} \item Este el primer item del segundo nivel \begin{itemize} \item Este el primer item del tercer nivel \item Este el segundo item del tercer nivel \item Este el tercer item del tercer nivel \end{itemize} \item Este el segundo item del segundo nivel \begin{itemize} \item Este el primer item del tercer nivel \item Este el segundo item del tercer nivel \item Este el tercer item del tercer nivel \end{itemize} \end{itemize} \end{enumerate}
Es un entorno especial con el que se puede controlar hasta el último detalle del formato de una lista. La sintaxis es un poco más complicada:
\begin{list}{
etiqueta por defecto}{
comandos}
Se compone de tres partes. La declaración del entorno
\begin{list}
la declaración de la etiqueta por defecto del ítem, es decir, qué símbolo debe llevar cualquier ítem que no lo lleve explícito:
{
etiqueta por defecto}
En cuanto a las etiquetas por defecto podemos usar cualquier signo o símbolo que se nos antoje, por ejemplo:
$\Box$
$\bullet$
$\rightarrow$
para colocar los símbolos:
Los comandos se usan para establecer el formato de la lista:
{
comandos}
Los que pueden usarse son los siguientes:
\topsep
El espacio vertical que quedará entre la lista y el
texto normal que la rodea. Por defecto es 0.125in (pulgadas)
\partopsep
Espacio vertical extra que quedará entre la lista y
el texto normal que la rodea, si éste es una línea en blanco.
\itemsep
La separación entre cada \item
. Por defecto:
0.06in.
\parsep
Espacio vertical entre los distintos párrafos de un
mismo \item
. Por defecto 0.06in.
\leftmargin
Margen izquierdo del texto de un \item
(sin
incluir la etiqueta). El cálculo es relativo al margen izquierdo del texto.
Por defecto: 2.5em (espacios tipo em).
\rightmargin
Margen derecho del texto de un \item
(sin
incluir la etiqueta). El cálculo es relativo al margen derecho del texto. Por
defecto: 0em (espacios tipo em).
\listparindent
Sangría para todos los párrafos de todos los
\item
. Por defecto: 0in
\itemindent
Sangría delante de cada etiqueta. Por defecto: 0in
(puede ser negativa).
\labelsep
Espacio horizontal entre la etiqueta y el texto de los
\item
. Por defecto: 0.5em
\labelwidth
Ancho de las etiquetas. Por defecto: 2em.
\begin{list}{$\Box$}{\itemsep .2cm \parsep 0in \leftmargin 5em \labelsep 1em} \item Este es el primer caso, No se me ocurre nada que decir, pero como quiero mostrar un texto largo\dots \item Este es el segundo caso. Sigue sin salirme nada que decir, pero insisto en mostrar un texto largo\dots \item Este es el tercer caso. Pues no hay manera, no se me ocurre nada, pero me obceco en mostrar un texto largo\dots \end{list}
Se usa para realizar citas largas (con más de un párrafo) sangradas del texto
principal. La única diferencia con quote
(vid. 4.10) es que en
quotation
se indentan los párrafos. Con un ejemplo bastará:
Y citemos una vez mas los famosos versos del Cantar de los cantares de Salomon: \begin{quotation} Cantar de los cantares de Salamon. Besseme de los bessos de su boca, ca mejores son tus amores que el vino. ... Adonaronse tus mexillas con los çarçillos, tu garganta con las sartas. Çarçillos de oro te fare con granos de plata. \end{quotation} Que podemos observar son bellos, hermosos, como un reportaje de Felix Rodriguez.
Se usa para realizar citas más cortas que con el anterior (de un párrafo), pero funciona igual (excepto en la indentación del párrafo):
Y citemos una vez mas los famosos versos del Cantar de los cantares de Salomon: \begin{quote} Cantar de los cantares de Salamon. Besseme de los bessos de su boca, ca mejores son tus amores que el vino. Al olor de tus ungüentos buenos, ungüento vaziadizo es el tu nonbre, por esso las donzellas te amaron. \end{quote} Que podemos observar son bellos, hermosos, como un reportaje de Felix Rodriguez.
Se usa para hacer tablas muy sencillas (para tablas complejas vid. 4.12), no se recomienda mucho su uso ya que no permite controlar casi nada del formato. Imita más o menos los tabuladores de una máquina de escribir. Se compone básicamente de cuatro comandos:
\=
\kill
\>
\\
El primero sirve para fijar la posición de los tabuladores en la página. El segundo indica que se ha terminado de fijar tabuladores. El tercero, sería el tabulador en sí. El cuarto indica que se han terminado una fila. Veamos un ejemplo, el input:
\begin{tabbing} \hspace*{.25in} \= \hspace*{1in} \= \hspace*{1in} \= \hspace*{1in} \kill fila \> col. 1 \> col. 2 \> col. 3 \\[.2in] fila \> col. 1 \> col. 2 \> col. 3 \\ fila \> col. 1 \> col. 2 \> col. 3 \\ fila \> col. 1 \> col. 2 \> col. 3 \\ fila \> col. 1 \> col. 2 \> col. 3 \\ fila \> col. 1 \> col. 2 \> col. 3 \\ fila \> col. 1 \> col. 2 \> col. 3 \\ \end{tabbing}
produce el output:
Lo bueno de este entorno es que permite alinear texto en columnas de tamaño
fijo, y que las filas se puedan separar de una página a otra. El entorno
tabular
, sin embargo, no permite romper la tabla en varias páginas.
Es el hermano mayor del entorno anterior: la anchura de las columnas se adapta al texto más largo metido en dicha columna. Se pueden introducir líneas horizontales y verticales, y definir de antemano si el texto de una columna va centrado, a la izquierda o a la derecha...y muchas cosas más, difíciles de explicar y que hay que ver en ejemplos.
Este entorno tiene la forma:
\begin{tabular}{
formato}
En donde {
formato}
define el número de columnas, si el
texto de cada una va centrado o justificado (derecha o izquierda), si hay
líneas verticales entre algunas columnas, etc.
La forma que toma es, por ejemplo, la siguiente:
\begin{tabular}{
llc|cr|r}
es decir, l
significa izquierda, c
centrado,
r
derecha, y | que indica las líneas verticales entre
las columnas. Habrá tantas columnas como l, r, c
se especifiquen. Por
lo tanto el ejemplo anterior especifica que tendremos 6 columnas: las dos
primeras con el texto justificado a la izquierda, la tercera con texto
centrado (una línea vertical), la cuarta centrada, la quinta a la derecha (una
línea vertical) y la sexta con texto a la derecha.
Pero hay ejemplos más complejos que suponen el uso de otras variantes de formato, por ejemplo:
\begin{tabular}{
|l p{4.5cm} rr
|}
Es decir, cuatro columnas con dos líneas verticales (una a la izquierda de la
tabla y la otra a la derecha). La segunda columna (p{4.5cm}
) será de
tipo párrafo con una anchura de 4.5cm.
\begin{tabular}{c r@{--}l}
Es decir, tres columnas: la primera centrada, la segunda con el texto a la
derecha. Entre la segunda y la tercera ({r@{--}l}
) se colocan los
caracteres --
. La arroba @
indica que el espacio normal entre
esas columnas queda anulado.
Veamos un ejemplo sencillo de cuatro columnas (las dos primeras con texto a
la izquierda, la dos últimas con texto centrado), con líneas verticales entre
todas las columnas. El comando \hline
detrás de la primera fila indica
una línea horizontal separándola de las demás.
\begin{tabular}{|l|l|c|c|} \hline Cuad. & \hskip0.15in Folio & Total & Signat. \rule{0in}{3ex} \\[1ex] \hline 16$^o$ & 117r-124v & 8 & \\ 17$^o$ & 125r-132v & 8 & \\ 18$^o$ & 133r-140v & 8 & b.xviii \\ 19$^o$ & 141r-148v & 8 & \\ 20$^o$ & 149r-156v & 8 & d.xx \\ 21$^o$ & 157r-164v & 8 & a.xxi \\ 22$^o$ & 165r-172v & 8 & \\ 23$^o$ & 173r-180v & 8 & \\ 24$^o$ & 181r-188v & 8 & \\ 25$^o$ & 189r-196v & 8 & a.ii-d.ii \\ 26$^o$ & 197r-204v & 8 & a.iii-d.iii \\ 27$^o$ & 205r-212v & 8 & b.iiii-c.iiii \\ 28$^o$ & 213r-220v & 8 & b.v \\ 29$^o$ & 221r-225v & *5 & c. \\ & & & \\[1ex] \hline \end{tabular}
que produce un output de LATEX similar pero mejor al de este código HTML
Cuad. | Folio | Total | Signat. |
16o | 117r-124v | 8 | |
17o | 125r-132v | 8 | |
18o | 133r-140v | 8 | b.xviii |
19o | 141r-148v | 8 | |
20o | 149r-156v | 8 | d.xx |
21o | 157r-164v | 8 | a.xxi |
22o | 165r-172v | 8 | |
23o | 173r-180v | 8 | |
24o | 181r-188v | 8 | |
25o | 189r-196v | 8 | a.ii-d.ii |
26o | 197r-204v | 8 | a.iii-d.iii |
27o | 205r-212v | 8 | b.iiii-c.iiii |
28o | 213r-220v | 8 | b.v |
29o | 221r-225v | *5 | c. |
Los comandos que se usan dentro del entorno tabular
son los
siguientes:
|
Separa las columnas. |
|
Indica fin de fila. Se puede añdir detrás
[ espacio] . En donde espacio es un espacio
vertical añadido, por ejemplo, [0.25in] . |
|
Dibuja una línea horizontal a través de todas las columnas. |
|
Dibuja una línea vertical dentro de una fila. |
|
Dibuja una línea horizontal a través de las columnas n a m. |
|
Coloca un encabezamiento que se extiende sobre varias columnas. Toma tres argumentos: #1=nn (coloca el cabecero sobre las siguientes nn columnas. #2 define el formato del encabezamiento (por ejemplo |c|). #3 el texto del cabecero. |
|
Hace que la presente fila tenga una
altura de espacio (por ejemplo
{3ex} ). |
Veamos un ejemplo que usa todos esos comandos:
Como vamos a usar mucho \rule{0in}{3ex}
, es bueno definir una macro
para abreviar:
\newcommmand{\ESPACIO}{\rule{0in}{3ex}}
\newcommand{\ESPACIO}{\rule{0in}{3ex}} \begin{tabular}{|l r@{. }l | p{1.0in}|} % \hline % \multicolumn{4}{|c|} {\bf Estructura del Poema de Mío Cid \ESPACIO}\\[1.5ex] \multicolumn{4}{|c|} {\bf según Menéndez Pidal}\\[1.3ex] % \hline \hline % \textit{Partes}\hspace{.2in}\vline & \multicolumn{2}{c}{versos} & \textit{explicación} \ESPACIO \\[1ex] \hline Parte A\ESPACIO &vv & 0--150 & suman 300\\ Parte B\ESPACIO &vv & 151--300 & versos\\ \cline{4-4} Parte C\ESPACIO &vv & 300--1000 & suman 1700\\ Parte D\ESPACIO &vv & 1001--2000 & versos\\ \cline{4-4} Parte E\ESPACIO &vv & 2000--2150 & suman 1000\\ Parte F\ESPACIO &vv & 2150--3000 & versos\\[1.3ex] % \hline \end{tabular}
que produce un output de LATEX similar pero mucho mejor al de este código HTML
Estructura del Poema de Mío Cid | ||||
según Menéndez Pidal | ||||
Partes | versos | explicación | ||
---|---|---|---|---|
Parte A |
vv | . | 0-150 | suman 300 |
Parte B | vv | . | 151-300 | versos |
Parte C | vv | . | 300-1000 | suman 1700 |
Parte D | vv | . | 1001-2000 | versos |
Parte E | vv | . | 2000-2150 | suman 1000 |
Parte F | vv | . | 2150-3000 | versos |
Este entorno lo único que hace es crear o actualizar un contador de tablas y
permitir darle un título (mediante \caption
) que luego irá al índice de
tablas . Dentro de este entorno suelen colocarse los entornos que de hecho
dibujan las tablas (tabbing
y tabular
), aunque no sea
obligatorio. Si colocamos la tabla que hicimos en la sección
anterior 4.12, tenemos el resultado:
\begin{table} \caption{Ejemplo del entorno TABLE} ... la tabla anterior. \end{table}
que produce un output de LATEX similar pero muchísimo mejor al de este código HTML
|
Sirve para destacar poemas. Obsérvese que el uso del indicador de fin
de línea \\
, es obligatorio para separar los versos. Las estrofas se
separan con una línea en blanco:
Observemos un poema del Cantar de los Cantares en la Biblia 10 288. \begin{verse} Cantar de los cantares de Salamon.\\ Besseme de los bessos de su boca,\\ ca mejores son tus amores que el vino. Al olor de tus unguentos buenos,\\ unguento vaziadizo es el tu nonbre,\\ por esso las donzellas te amaron. \end{verse}
Este documento ha sido producido parcialmente usando LaTeX2HTML Versión 98.1 del 19 de febrero de 1998
Copyright © 1993, 1994, 1995, 1996, 1997, Nikos Drakos, Computer Based Learning Unit, University of Leeds.