Este documento es un manual de referencia extraoficial para LaTeX, un
sistema de preparación de documentos, versión Enero 2023.

   Este manual se tradujo originalmente de ‘LATEX.HLP’ v1.0a en la
Biblioteca de ayuda de VMS. La versión previa a la traducción fue
escrita por George D. Greenwade de la Universidad Estatal Sam Houston.
La versión 2.09 de LaTeX  fue escrita por Stephen Gilmore.  La versión
LaTeX2e fue adaptada desde esta por Torsten Martinsen.  Karl Berry hizo
más actualizaciones y adiciones, y reconoce con gratitud que ha
utilizado ‘Hypertext Help con LaTeX’, de Sheldon Green, y ‘Resumen de
comandos LaTeX’ (para LaTeX 2.09) por L. Botway y C. Biemesderfer
(publicado por los usuarios del Grupo TeX como ‘TeXnicas’ número 10),
como material de referencia.  También reconocemos con gratitud el
material adicional que aparece en la referencia de latex2e por Martin
Herbert Dietze.  (De estas referencias no se copió texto directamente).

   © 2010-2023 Nacho Pacheco — Traducción.

   Copyright 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016,
2017, 2018, 2019, 2020, 2021, 2022 Karl Berry.
Copyright 1988, 1994, 2007 Stephen Gilmore.
Copyright 1994, 1995, 1996 Torsten Martinsen.

   Se otorga permiso para hacer y distribuir copias textuales de este
manual siempre y cuando, se conserve en todas las copias este aviso de
derechos de autor y este aviso de permiso.

   Se otorga permiso para copiar y distribuir versiones modificadas de
este manual bajo las condiciones para la copia literal, siempre que la
totalidad del trabajo derivado resultante se distribuya bajo los
términos de un aviso de permiso idéntico a este.

   Se otorga permiso para copiar y distribuir traducciones de este
manual a otro idioma, en las condiciones anteriores para versiones
modificadas.

LaTeX2e: Un manual de referencia extraoficial
*********************************************

Este documento es un manual de referencia extraoficial (versión Enero
2023) para LaTeX2e, un sistema de preparación de documentos.

1 Acerca de este documento
**************************

Este es un manual de referencia extraoficial para el sistema de
preparación de documentos LaTeX2e, que es un paquete de macros para el
programa de composición tipográfica TeX (see Descripción).

   La página oficial de este documento es <https://latexref.xyz>; Tiene
páginas web separadas para cada tema.  Alternativamente
<https://latexref.xyz/dev/latex2e.html> tiene el documento completo en
una sola página.  Para otros formatos de salida, las fuentes y mucho más
información, consulta <https://latexref.xyz/dev/>.

   En este documento, principalmente usaremos ‘LaTeX’ en lugar de
‘LaTeX2e’, ya que la versión anterior de LaTeX (2.09) está congelada
hace décadas.

   LaTeX es mantenido por un grupo de voluntarios
(<https://latex-project.org>).  La documentación oficial escrita por el
proyecto LaTeX está disponible en su sitio web.  El presente documento
es completamente extraoficial y, no ha sido escrito ni revisado por los
mantenedores de LaTeX.  No envíes informes de errores o cualquier otra
cosa sobre este documento.  En su lugar, envía todos los comentarios a
<latexrefman@tug.org>.

   Este documento es una referencia, no un tutorial.  Hay una gran
variedad de otra información disponible sobre LaTeX, en todos los
niveles.  Aquí tienes algunas introducciones.

<https://ctan.org/pkg/latex-doc-ptr>
     Dos páginas de referencias recomendadas para la documentación de
     LaTeX.

<https://ctan.org/pkg/first-latex-doc>
     Escribe tu primer documento, con un poco de texto y matemáticas.

<https://ctan.org/pkg/lshort>
     Una introducción más larga a LaTeX, traducida a muchos idiomas.

<https://tug.org/begin.html>
     Introducción al sistema TeX, incluido LaTeX, con más referencias

2 Descripción de LaTeX
**********************

LaTeX es un sistema para la composición tipográfica de documentos.
Originalmente fue creado por Leslie Lamport en 1984, pero ha sido
mantenido por un grupo de voluntarios desde hace muchos años
(<https://latex-project.org>).  Se utiliza ampliamente, en particular,
pero no exclusivamente, para matemáticas y documentos técnicos.

   Un usuario de LaTeX escribe un archivo de entrada que contiene texto
para componer junto con comandos intercalados.  La codificación
predeterminada para el texto es UTF-8 (a partir de 2018).  Los comandos
especifican, por ejemplo, cómo se debe formatear el texto.

   LaTeX se implementa como un conjunto de las llamadas “macros”
relacionadas que usa Donald E. El programa de composición tipográfica
TeX de Knuth o uno de sus derivados, conocidos colectivamente como
“motores”.  Así, el usuario produce una salida, normalmente PDF,
entregando el archivo de entrada a un motor TeX.  (Las siguientes
secciones describen todo esto con más detalle).

   (El término LaTeX también se usa a veces para indicar el lenguaje en
el que el documento de entrada está marcado, es decir, para especificar
el conjunto de comandos disponible para un usuario de LaTeX.

   El nombre LaTeX es la abreviatura de “Lamport TeX”.  Se pronuncia
LAH-teck o LAY-teck, o a veces LAY-tecks.  Dentro de un documento,
puedes producir el logo con ‘\LaTeX’.  Cuando el uso del logotipo no es
sensible, como en texto sin formato, escríbelo como ‘LaTeX’.

2.1 Comenzar y terminar
=======================

Los archivos LaTeX tienen una estructura global simple, con un comienzo
y fin estándar.  Este es un pequeño ejemplo.

     \documentclass{article}
     \begin{document}
     Hola, mundo \LaTeX\.
     \end{document}

Cada documento LaTeX tiene una línea ‘\begin{document}’ y una línea
‘\end{document}’.

Aquí, ‘article’ es la “clase de documento”.  Se implementa en un archivo
‘article.cls’.  Puedes utilizar cualquier clase de documento en tu
sistema.  Algunas clases de documentos están definidas por el mismo
LaTeX y hay una gran variedad de otras clases ampliamente disponibles.
See Clases de documentos.

   Puedes incluir otros comandos LaTeX entre los comandos
‘\documentclass’ y ‘\begin{document}’.  Esta área se llama “preámbulo”.

   El par ‘\begin{document}’, ‘\end{document}’ define un “entorno”; el
entorno ‘document’ (y no otros) es obligatorio en todos los documentos
LaTeX (see document).  LaTeX pone a tu disposición muchos entornos
que están documentados aquí (see Entornos).  Muchos más están
disponibles para ti desde paquetes externos, sobre todo los disponibles
en CTAN (see CTAN).

   Las siguientes secciones tratan sobre cómo producir PDF u otra salida
desde un archivo de entrada LaTeX.

2.2 Archivos de salida
======================

LaTeX produce un archivo de salida principal y al menos dos archivos
auxiliares.  El nombre del archivo de salida principal termina en ‘.dvi’
o ‘.pdf’.

‘.dvi’
     Si LaTeX se invoca con el comando del sistema ‘latex’ entonces
     produce un archivo independiente del dispositivo, con extensión
     ‘.dvi’.  Puedes ver este archivo con un comando como ‘xdvi’, o lo
     puedes convertir a un archivo PostScript ‘.ps’ con ‘dvips’ o a un
     archivo de formato de documento portable ‘.pdf’ con ‘dvipdfmx’.  El
     contenido del archivo se puede volcar en forma legible por humanos
     con ‘dvitype’.  Hay disponible una amplia gama de programas DVI
     utilitarios (<https://mirror.ctan.org/dviware>).

‘.pdf’
     Si LaTeX se invoca a través del comando del sistema ‘pdflatex’,
     entre otros comandos (see Motores TeX), entonces la salida
     principal es un archivo de formato de documento portable (PDF).
     Típicamente este es un archivo independiente, incluyendo todos los
     tipos de letra e imágenes necesarias.

   LaTeX siempre produce al menos dos archivos adicionales.

‘.log’
     Esta transcripción del archivo contiene información resumida, como
     una lista de paquetes cargados.  También incluye mensajes de
     diagnóstico y quizás información adicional para cualquier error.

‘.aux’
     La información auxiliar la utiliza LaTeX para cosas como
     referencias cruzadas.  Por ejemplo, la primera vez que LaTeX
     encuentra una referencia directa — una referencia cruzada a algo
     que aún no ha apareció en la fuente — aparecerá en la salida como
     un doble signo de interrogación ‘??’.  Cuando el lugar al que se
     hace referencia finalmente aparece en la fuente, entonces LaTeX
     escribe su información de ubicación en este archivo ‘.aux’.  En la
     siguiente invocación, LaTeX lee la información de ubicación de este
     archivo y la usa para resolver la referencia, sustituyendo el doble
     signo de interrogación por la ubicación guardada.

   LaTeX puede producir aún más archivos, caracterizados por el nombre
de archivo terminado.  Estos incluyen un archivo ‘.lof’ que se usa para
hacer una lista de figuras, un archivo ‘.lot’ usado para hacer una lista
de tablas, y un archivo ‘.toc’ utilizado para hacer una tabla de
contenido (see Tabla de contenido etc.) Una clase particular puede
crear otras; la lista no tiene límites.

2.3 Motores TeX
===============

LaTeX es un gran conjunto de comandos que ejecuta un programa TeX (see
Descripción).  Tal conjunto de comandos se llama “format”, y está
incorporado en un archivo ‘.fmt’ binario, que se puede leer mucho más
rápido que la fuente TeX correspondiente.

   Esta sección ofrece una breve descripción general de los programas
TeX que comúnmente están disponibles (también Interfaz de línea de comandos).

‘latex’
‘pdflatex’
     En TeX Live (<https://tug.org/texlive>), si se invoca a LaTeX
     mediante el comando del sistema ‘latex’ o ‘pdflatex’, luego se
     ejecuta el motor pdfTeX (<https://ctan.org/pkg/pdftex>).  Cuando se
     invoca como ‘latex’, la salida principal es un archivo ‘.dvi’; como
     con ‘pdflatex’, la salida principal es un archivo ‘.pdf’.

     pdfTeX incorpora las extensiones e-TeX al original del programa
     Knuth (<https://ctan.org/pkg/etex>), incluidas características de
     programación y composición tipográfica bidireccional, y tiene un
     montón de extensiones propias.  e-TeX está disponible por sí solo
     como el comando del sistema ‘etex’, pero este es simple TeX (y
     produce ‘.dvi’).

     En otras distribuciones TeX, ‘latex’ puede invocar a e-TeX en lugar
     de pdfTeX.  En cualquier caso, las extensiones e-TeX se puede
     suponer que están disponibles en LaTeX.

‘lualatex’
     Si LaTeX se invoca a través del comando del sistema ‘lualatex’, se
     ejecuta el motor LuaTeX (<https://ctan.org/pkg/luatex>).  Este
     programa permite escribir código en el lenguaje de programación Lua
     (<http://luatex.org>) para interactuar con la composición
     tipográfica de TeX.  LuaTeX maneja la entrada Unicode UTF-8 de
     forma nativa, puede manejar OpenType y tipos de letra TrueType, y
     genera un archivo ‘.pdf’ de forma predeterminada.  También existe
     ‘dvilualatex’ para generar un archivo ‘.dvi’.

‘xelatex’
     Si LaTeX se invoca con el comando del sistema ‘xelatex’, se ejecuta
     el motor XeTeX (<https://tug.org/xetex>).  Como LuaTeX, XeTeX
     admite de forma nativa tipos de letra Unicode UTF-8, TrueType y
     OpenType, aunque la implementación es completamente diferente,
     principalmente usando bibliotecas externas en lugar de código
     interno.  XeTeX produce un archivo ‘.pdf’ como salida; no es
     compatible con la salida DVI.

     Internamente, XeTeX crea un archivo ‘.xdv’, una variante de DVI, y
     traduce eso a PDF usando el programa (‘x’)‘dvipdfmx’, pero este
     proceso es automático.  El archivo ‘.xdv’ es útil solo para
     depuración.

‘platex’
‘uplatex’
     Estos comandos brindan soporte adicional significativo para japonés
     y otros idiomas; la variante ‘u’ es compatible con Unicode.  Ve
     <https://ctan.org/pkg/ptex> y <https://ctan.org/pkg/uptex>.

   A partir de 2019, hay un comando y formato ‘-dev’ complementario para
todos los anteriores:

‘dvilualatex-dev’
‘latex-dev’
‘lualatex-dev’
‘pdflatex-dev’
‘platex-dev’
‘uplatex-dev’
‘xelatex-dev’
     Estos son candidatos para un próximo lanzamiento de LaTeX.  El
     propósito principal es encontrar y abordar los problemas de
     compatibilidad antes de un lanzamiento oficial.

     Estos formatos ‘-dev’ facilitan que cualquier persona ayude a
     probar documentos y código: puedes ejecutar, digamos,
     ‘pdflatex-dev’ en lugar de ‘pdflatex’, sin cambiar nada más en tu
     entorno.  De hecho, es más fácil y más útil ejecutar siempre
     versiones ‘-dev’ en lugar de molestarte en cambiar de un lado a
     otro.  Durante el momento de silencio después de un lanzamiento,
     los comandos serán equivalentes.

     No se trata de instantáneas diarias ni de código de desarrollo no
     probado.  Se somete a las mismas pruebas de regresión exhaustiva
     realizadas por el equipo de LaTeX antes de ser liberado.

     Para obtener más información, consulta “El flujo de trabajo de
     lanzamiento de LaTeX y los formatos LaTeX ‘dev’” por Frank
     Mittelbach, ‘TUGboat’ 40:2,
     <https://tug.org/TUGboat/tb40-2/tb125mitt-dev.pdf>.

2.4 Sintaxis del comando LaTeX
==============================

En el archivo de entrada LaTeX, un nombre de comando comienza con un
carácter de barra invertida, ‘\’.  El nombre en sí consiste entonces en
(a) una cadena de letras o (b) una única no letra.

   Los nombres de los comandos de LaTeX distinguen entre mayúsculas y
minúsculas, por lo que ‘\pagebreak’ es diferente de ‘\Pagebreak’ (este
último no es un comando estándar).  La mayoría de los nombres de los
comandos están en minúsculas, pero en cualquier caso debes ingresar
todos estos comandos en el mismo caso en que están definidos.

   Un comando puede ir seguido de cero, uno o más argumentos.  Estos
argumentos pueden ser obligatorios u opcionales.  Los argumentos
requeridos están contenidos entre llaves, ‘{...}’.  Los argumentos
opcionales están contenidos entre corchetes, ‘[...]’.  En general, pero
no universalmente, si el comando acepta un argumento opcional, viene
primero, antes de cualquier argumento requerido.

   Dentro de un argumento opcional, para usar el carácter de corchete de
cierre (‘]’ —“bracket”) ocúltalo entre llaves, como en ‘\item[corchete
de cierre {]}]’.  Del mismo modo, si un argumento opcional viene al
final, sin argumento requerido después de él, entonces, para hacer que
el primer carácter del siguiente texto sea un corchete de apertura,
ocúltalo entre llaves.

   LaTeX tiene la convención de que algunos comandos tienen un formato
‘*’ que está relacionado con la forma sin un ‘*’, como ‘\chapter’ y
‘\chapter*’.  La diferencia exacta en el comportamiento varía de comando
a comando.

   Este manual describe todas las opciones aceptadas y las formas ‘*’
para el comando que cubre (salvo omisiones involuntarias, alias: bugs).

   A partir del lanzamiento 2020-10-01 de LaTeX, ‘expl3’ y los paquetes
‘xparse’ son parte del formato LaTeX2e.  Ellos proporcionan una sintaxis
del lenguaje de programación subyacente completamente diferente.  No
intentaremos cubrirlos en este documento; ve la documentación del
paquete relacionado y otros manuales de LaTeX.

2.5 Entorno
===========

Sinopsis:

     \begin{NOMBRE-ENTORNO}
       ...
     \end{NOMBRE-ENTORNO}

   Un “entorno” es un área de la fuente LaTeX, dentro de la cual hay un
comportamiento distinto.  Por ejemplo, para poesía en LaTeX coloca las
líneas entre ‘\begin{verse}’ y ‘\end{verse}’.

     \begin{verse}
       Había una vez un hombre de Nantucket \\
       ...
     \end{verse}

   See Entornos, para obtener una lista de entornos.
Particularmente notable es que todo documento LaTeX debe tener un
entorno ‘document’, un par ‘\begin{document} ... \end{document}’.

   El NOMBRE-ENTORNO al principio debe coincidir exactamente con el de
el fin.  Esto incluye el caso donde NOMBRE-ENTORNO termina en una
estrella (‘*’); los textos ‘\begin’ y ‘\end’ deben incluir la estrella.

   Los entornos pueden tener argumentos, incluidos argumentos
opcionales.  Este ejemplo produce una tabla.  El primer argumento es
opcional (y provoca que la tabla se alinee en su fila superior) mientras
que el segundo argumento es requerido (especifica el formato de las
columnas).

     \begin{tabular}[t]{r|l}
       ... filas de la tabla ...
     \end{tabular}

2.6 CTAN: La red integral de archivo TeX
========================================

La red integral de archivos TeX, CTAN, es el repositorio de material
gratuito de la comunidad TeX y LaTeX.  Es un conjunto de sitios de
Internet de todo el mundo que ofrecen material relacionado con LaTeX
para descargar.  Visita CTAN en la web en <https://ctan.org>.

   Este material está organizado en paquetes, paquetes discretos que
típicamente ofrecen alguna funcionalidad coherente y son mantenidos por
una persona o un pequeño número de personas.  Por ejemplo, muchos
editores tienen un paquete que permite a los autores dar formato a los
artículos según especificaciones del editor.

   Además de las existencias masivas, el sitio web ‘ctan.org’ ofrece
funciones como la búsqueda por nombre o por funcionalidad.

   CTAN no es un solo anfitrión, sino un conjunto de anfitriones, uno de
los cuales es el llamado “maestro”.  El anfitrión maestro administra
activamente el material, por ejemplo, aceptando cargas de material nuevo
o paquetes actualizados.  Durante muchos años, ha sido alojado por el
grupo TeX alemán, DANTE e.V.

   Otros sitios alrededor del mundo ayudan con la duplicación, es decir,
sincronizar automáticamente sus colecciones con el sitio maestro y
luego, a su vez, ponen sus copias a disposición del público.  Esto
proporciona a los usuarios cercanos a su ubicación mejor acceso y alivia
la carga en el sitio maestro.  La lista de espejos está en
<https://ctan.org/mirrors>.

3 Clases de documentos
**********************

La clase general del documento se define con este comando, que
normalmente es el primer comando en un archivo fuente LaTeX.

     \documentclass[OPTIONS]{CLASS}

   Los siguientes nombres de CLASS de documento están integrados en
LaTeX.  (Muchas otras clases de documentos están disponibles como
paquetes separados; see Descripción).

‘article’
     Para un artículo de revista, una presentación y varios usos
     generales.

‘book’
     Libros completos, incluidos capítulos y posiblemente una contra
     portada en el anverso, como un prefacio, y asunto posterior, como
     un apéndice (see Material de portada/contraportada).

‘letter’
     Correo, opcionalmente incluyendo etiquetas postales (see
     Cartas).

‘report’
     Para documentos de longitud entre un ‘article’ y un ‘book’, como
     informes técnicos o tesis, que pueden contener varios capítulos.

‘slides’
     Para presentación de diapositivas—rara vez utilizado hoy día.  El
     paquete ‘beamer’ es quizás el más frecuentemente utilizado
     (<https://ctan.org/pkg/beamer>).  See Plantilla beamer, para
     una pequeña plantilla para un documento beamer.

   Las OPTIONS estándar se describen en la siguiente sección.

3.1 Opciones de la clase documento
==================================

Puedes especificar “opciones globales” u “opciones de clase” al comando
‘\documentclass’ encerrándolas entre corchetes.  Para especificar más de
una OPCIÓN, sepáralas con una coma.

     \documentclass[OPTION1,OPTION2,...]{CLASS}

   Aquí está la lista de las opciones de clase estándar.

   Todas las clases estándar excepto ‘slides’ aceptan las siguientes
opciones para seleccionar el tamaño del tipo de letra (el valor
predeterminado es ‘10pt’):

     10pt  11pt  12pt

   Todas las clases estándar aceptan estas opciones para seleccionar el
tamaño del papel (estos muestran alto por ancho):

‘a4paper’
     210 por 297mm (alrededor de 8.25 por 11.75 pulgadas)

‘a5paper’
     148 por 210mm (alrededor de 5.8 por 8.3 pulgadas)

‘b5paper’
     176 por 250mm (alrededor de 6.9 ​​por 9.8 pulgadas)

‘executivepaper’
     7.25 por 10.5 pulgadas

‘legalpaper’
     8.5 por 14 pulgadas

‘letterpaper’
     8.5 por 11 pulgadas (el predeterminado)

   Al usar uno de los motores pdfLaTeX, LuaLaTeX o XeLaTeX (see
Motores TeX), otras opciones a que ‘letterpaper’ configura el área de
impresión, pero también debes establecer el tamaño físico del papel.
Una manera de hacer eso es poner ‘\pdfpagewidth=\paperwidth’ y
‘\pdfpageheight=\paperheight’ en el preámbulo de tu documento.  El
paquete ‘geometry’ proporciona formas flexibles de configurar el área de
impresión y tamaño de página física.

   Varias otras opciones:

‘draft’
‘final’
     Marca cajas (‘draft’) o no marcar (‘final’) cajas demasiado llenas
     con un recuadro negro al margen; el valor predeterminado es
     ‘final’.

‘fleqn’
     Coloca las fórmulas mostradas alineadas a la izquierda; de manera
     predeterminada están centradas.

‘landscape’
     Selecciona el formato apaisado; el valor predeterminado es retrato.

‘leqno’
     Poner números de ecuación en el lado izquierdo de las ecuaciones;
     de manera predeterminada es el lado derecho.

‘openbib’
     Utiliza el formato de bibliografía “abierta”.

‘titlepage’
‘notitlepage’
     Especifica si hay una página separada para la información del
     título y para el resumen también, si lo hay.  El valor
     predeterminado para la clase ‘report’ es ‘titlepage’, para las
     otras clases es ‘notitlepage’.

   Las siguientes opciones no están disponibles con la clase ‘slides’.

‘onecolumn’
‘twocolumn’
     Composición tipográfica en una o dos columnas; el valor
     predeterminado es ‘onecolumn’.

‘oneside’
‘twoside’
     Selecciona el diseño de uno o dos lados; el valor predeterminado es
     ‘oneside’, excepto que en la clase ‘book’ el valor predeterminado
     es ‘twoside’.

     Para la impresión a una cara, el texto se centra en la página.
     Para impresión a dos caras, el parámetro ‘\evensidemargin’
     (‘\oddsidemargin’) determina la distancia en páginas pares
     (impares) entre el lado izquierdo de la página y el margen
     izquierdo del texto, con ‘\oddsidemargin’ siendo el 40% de la
     diferencia entre ‘\paperwidth’ y ‘\textwidth’ y ‘\evensidemargin’
     es el resto.

‘openright’
‘openany’
     Determina si un capítulo debe comenzar en una página de la derecha;
     el valor predeterminado es ‘openright’ para ‘book’ y ‘openany’ para
     ‘report’.

   La clase ‘slides’ ofrece la opción ‘clock’ para imprimir lo hora en
la parte inferior de cada nota.

3.2 Paquetes adicionales
========================

Carga un paquete PKG, con las opciones de paquete dadas en la lista
OPTIONS separada por comas, como aquí.

     \usepackage[OPTIONS]{PKG}.

   Para especificar más de un paquete, lo puedes separar con una coma,
como en ‘\usepackage{PKG1,PKG2,...}’, o usa múltiples comandos
‘\usepackage’.

   Cualquier opción dada en el comando ‘\documentclass’ que sea
desconocida para la clase document seleccionada se pasa a los paquetes
cargados con ‘\usepackage’.

3.3 Construcción de clase y paquete
===================================

Puedes crear nuevas clases de documentos y nuevos paquetes.  Por
ejemplo, si tus memorandos deben cumplir con algunos requisitos locales,
como un encabezado estándar para cada página, entonces podrías crear una
nueva clase ‘smcmemo.cls’ y comienza tus documentos con
‘\documentclass{smcmemo}’.

   Lo que separa a un paquete de una clase de documento es que los
comandos en un paquete son útiles en todas las clases, mientras que los
de una clase de documento son específicos de esa clase.  Por lo tanto,
un comando para establecer encabezados de página es para un paquete
mientras que un comando para hacer que los encabezados de página digan
‘Memo desde el departamento de matemáticas SMC’ es para una clase.

   Dentro de un archivo de clase o paquete, puedes usar el signo ‘@’
como carácter en nombres de comandos sin tener que rodear el código que
contiene ese comando con ‘\makeatletter’ y ‘\makeatother’.  See
\makeatletter y \makeatother.  Esto te permite crear comandos que los
usuarios no redefinirán accidentalmente.  Otra técnica es prefijar
comandos específicos de clase o paquete con alguna cadena para evitar
que tu clase o paquete interfiera con otros.  Por ejemplo, la clase
‘smcmemo’ podría tener comandos ‘\smc@tolist’, ‘\smc@fromlist’, etc.

3.3.1 Estructura de clase y paquete
-----------------------------------

Un archivo de clase o un archivo de paquete normalmente consta de cuatro
partes.
  1. En la “parte de identificación”, el archivo dice que es un paquete
     o clase LaTeX y se describe a sí mismo, usando ‘\NeedsTeXFormat’ y
     los comandos ‘\ProvidesClass’ o ‘\ProvidesPackage’.

  2. La “parte de declaraciones preliminares” declara algunos comandos y
     también puede cargar otros archivos.  Generalmente, estos comandos
     serán los necesarios para el código utilizado en la siguiente
     parte.  Por ejemplo, una clase ‘smcmemo’ se puede llamar con una
     opción para leer un archivo con una lista de personas para el
     encabezado, como ‘\documentclass[mathto]{smcmemo}’, y por lo tanto
     necesitas definir un comando
     ‘\newcommand{\setto}[1]{\def\@tolist{#1}}’ usado en ese archivo.

  3. En “manejar la parte de opciones” la clase o paquete declara y
     procesa sus opciones.  Las opciones de clase permiten que un
     usuario comience su documento como ‘\documentclass[LISTA DE
     OPCIONES]{NOMBRE DE CLASE}’, para modificar el comportamiento de la
     clase.  Un ejemplo es cuando declaras
     ‘\documentclass[11pt]{article}’ para establecer el valor
     predeterminado para el tamaño del tipo de letra del documento.

  4. Finalmente, en la “parte de más declaraciones” la clase o paquete
     suele hacer la mayor parte de su trabajo: declarar nuevas
     variables, comandos y tipos de letra y cargar otros archivos.

   Aquí hay un archivo de clase inicial, que se debe guardar como
‘stub.cls’ donde LaTeX lo pueda encontrar, por ejemplo en el mismo
directorio que el archivo ‘.tex’.

     \NeedsTeXFormat{LaTeX2e}  \ProvidesClass{stub}[2017/07/06 auxiliar
     para        comenzar        a        crear        clases        desde]
     \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
     \ProcessOptions\relax \LoadClass{article}

Se identifica a sí mismo, maneja las opciones de clase a través del
valor predeterminado pasándolos todos a la clase ‘article’, y luego
carga la clase ‘article’ para proporcionar la base para el código de
esta clase.

   Para obtener más información, consulta la guía oficial para
escritores de clases y paquetes, la clase Guide, en
<https://www.latex-project.org/help/documentation/clsguide.pdf> (muchas
de las descripciones aquí se derivan de este documento), o el tutorial
<https://www.tug.org/TUGboat/tb26-3/tb84heff.pdf>.

3.3.2 Comandos class y package
------------------------------

Estos son los comandos diseñados para ayudar a los escritores de clases
o paquetes.

‘\AtBeginDvi{especiales}’
     Guarda en un cuadro de registro las cosas que se escriben en el
     archivo ‘.dvi’ al comienzo del envío de la primera página del
     documento.

‘\AtEndOfClass{CODE}’
‘\AtEndOfPackage{CODE}’
     Gancho para insertar CODE para que se ejecute cuando LaTeX termine
     procesando la clase o paquete actual.  Puedes usar estos ganchos
     varias veces; el ‘código’ se ejecutará en el orden en que lo
     llames.  Consulta también \AtBeginDocument.

‘\CheckCommand{CMD}[NUM][DEFAULT]{DEFINITION}’
‘\CheckCommand*{CMD}[NUM][DEFAULT]{DEFINITION}’
     Similar a ‘\newcommand’ (see \newcommand y \renewcommand) pero
     no define CMD; en su lugar, comprueba que la definición actual de
     CMD es o no es exactamente como la DEFINITION “long” como se
     esperaba.  Un comando largo es un comando que acepta ‘\par’ dentro
     de un argumento.  Se espera que el comando CMD sea largo con la
     versión sin estrella de ‘\CheckCommand’.  Levanta un error cuando
     la comprobación falla.  Esto te permite comprobar antes de empezar
     a redefinir ‘cmd’ tú mismo que ningún otro paquete ya haya
     redefinido este comando.

‘\ClassError{CLASS NAME}{ERROR TEXT}{HELP TEXT}’
‘\ClassWarning{CLASS NAME}{WARNING TEXT}’
‘\ClassWarningNoLine{CLASS NAME}{WARNING TEXT}’
‘\ClassInfo{CLASS NAME}{INFO TEXT}’
‘\ClassInfoNoLine{CLASS NAME}{INFO TEXT}’
‘\PackageError{PACKAGE NAME}{ERROR TEXT}{HELP TEXT}’
‘\PackageWarning{PACKAGE NAME}{WARNING TEXT}’
‘\PackageWarningNoLine{PACKAGE NAME}{WARNING TEXT}’
‘\PackageInfo{PACKAGE NAME}{INFO TEXT}’
‘\PackageInfoNoLine{PACKAGE NAME}{INFO TEXT}’
     Produce un mensaje de error, o mensajes de advertencia o
     informativo.

     Para ‘\ClassError’ y ‘\PackageError’ el mensaje es TEXTO DE ERROR,
     seguido del indicador de error ‘?’ de TeX.  Si el usuario luego,
     pide ayuda escribiendo ‘h’, ve el mensaje TEXTO DE AYUDA.

     Los cuatro comandos de advertencia son similares excepto que
     escriben TEXTO DE ADVERTENCIA en la pantalla sin mensaje de error.
     Los cuatro comandos escriben TEXTO INFO solo en el archivo de
     transcripción.  Las versiones de ‘NoLine’ no muestran el número de
     la línea que genera el mensaje, mientras que las otras versiones
     muestran ese número.

     Para dar formato a los mensajes, incluido el TEXTO DE AYUDA: usa
     ‘\protect’ para evitar que un comando se expanda, obtén un salto de
     línea con ‘\MessageBreak’, y obtén un espacio con ‘\space’ cuando
     un carácter de espacio no lo permite, como después de un comando.
     Ten en cuenta que LaTeX añade un punto a los mensajes.

‘\CurrentOption’
     Expande al nombre de la opción que se está procesando actualmente.
     Sólo se pueden usar dentro del argumento CODE de ‘\DeclareOption’ o
     ‘\DeclareOption*’.

‘\DeclareOption{OPTION}{CODE}’
‘\DeclareOption*{CODE}’
     Hace que una opción esté disponible para que un usuario la invoque
     en su comando ‘\documentclass’.  Por ejemplo, la clase ‘smcmemo’
     podría tener una opción ‘\documentclass[logo]{smcmemo}’ que permita
     a los usuarios colocar el logo institucional en la primera página.
     El archivo de clase debe contener ‘\DeclareOption{logo}{CODE}’ (y
     ​​más tarde, ‘\ProcessOptions’).

     Si solicitas una opción que no ha sido declarada, de manera
     predeterminada esta producirá una advertencia como ‘Opciones
     globales no utilizadas: [badoption]’.  Cambia este comportamiento
     con la versión destacada ‘\DeclareOption*{CODE}’.  Por ejemplo,
     muchas clases extienden una clase existente, usando un comando como
     ‘\LoadClass{article}’, y para pasar opciones adicionales al código
     de uso de clase subyacente como este.

          \DeclareOption*{%   \PassOptionsToClass{\CurrentOption}{article}%
          }

     Otro ejemplo es que la clase ‘smcmemo’ puede permitir a los
     usuarios mantener listas de destinatarios de notas en archivos
     externos.  Entonces el usuario podría invocar
     ‘\documentclass[math]{smcmemo}’ y leerá el archivo ‘math.memo’.
     Este código maneja el archivo si existe y de lo contrario pasa la
     opción a la clase ‘article’.

          \DeclareOption*{\InputIfFileExists{\CurrentOption.memo}{}{%
              \PassOptionsToClass{\CurrentOption}{article}}}

‘\DeclareRobustCommand{CMD}[NUM][DEFAULT]{DEFINITION}’
‘* \DeclareRobustCommand*{CMD}[NUM][DEFAULT]{DEFINITION}’
     Como ‘\newcommand’ y ‘\newcommand*’ (see \newcommand y \renewcommand)
     pero estos declaran un comando robusto, incluso si
     algún código dentro de la DEFINICIÓN es frágil.  (Para una
     discusión de comandos robustos y frágiles \protect).  Usa
     este comando para definir nuevos comandos robustos o para redefinir
     comandos existentes y hacerlos robustos.  A diferencia de
     ‘\newcommand’, estos no dan un error si la macro CMD ya existe; en
     su lugar, se coloca un mensaje de registro en el archivo de
     transcripción si se redefine un comando.

     Los comandos definidos de esta manera son un poco menos eficientes
     que los definidos usando ‘\newcommand’ así que, a menos que los
     datos del comando sean frágiles y el comando se use dentro de un
     argumento en movimiento, usa ‘\newcommand’.

     El paquete ‘etoolbox’ ofrece los comandos ‘\newrobustcmd’,
     ‘\newrobustcmd*’, así como los comandos ‘\renewrobustcmd’,
     ‘\renewrobustcmd*’ y los comandos ‘\providerobustcmd’ y
     ‘\providerobustcmd*’.  Estos son similares a ‘\newcommand’,
     ‘\newcommand*’, ‘\renewcommand’, ‘\renewcommand*’,
     ‘\providecommand’ y ‘\providecommand*’, pero define un CMD robusto
     con dos ventajas en comparación con ‘\DeclareRobustCommand’:
       1. Utilizan el mecanismo de protección de bajo nivel e-TeX en
          lugar del mecanismo ‘\protect’ LaTeX de nivel superior, por lo
          que no incurren la ligera pérdida de rendimiento mencionada
          anteriormente, y
       2. Hacen la misma distinción entre ‘\new...’, ‘\renew...’ y
          ‘\provide...’, como comandos estándar, por lo que no solo
          hacen un mensaje de registro cuando redefines CMD que ya
          existe, en ese caso necesitas usar ‘\renew...’ o ‘\provide...’
          o recibes un error.

‘\IfFileExists{FILENAME}{TRUE CODE}{FALSE CODE}’
‘\InputIfFileExists{FILENAME}{TRUE CODE}{FALSE CODE}’
     Ejecuta CÓDIGO VERDADERO si LaTeX encuentra el archivo ‘NOMBRE DE
     ARCHIVO’ o CÓDIGO FALSO de lo contrario.  En el primer caso se
     ejecuta CÓDIGO VERDADERO y entonces ingresa el archivo.  Así el
     comando

          \IfFileExists{img.pdf}{%
            \includegraphics{img.pdf}}{\typeout{!! img.pdf no encontrado}

     incluirá el gráfico ‘img.pdf’ si se encuentra y de lo contrario
     dará un aviso.

     Este comando busca el archivo en todas las rutas de búsqueda que
     usa LaTeX, no solo en el directorio actual.  Mirar solo en el
     directorio actual hace algo como ‘\IfFileExists{./filename}{CÓDIGO
     VERDADERO}{CÓDIGO FALSO}’.  Si solicitas un nombre de archivo sin
     una extensión ‘.tex’ entonces LaTeX primero buscará el archivo
     agregando la extensión ‘.tex’; para obtener más información sobre
     cómo LaTeX maneja las extensiones de archivo \input.

‘\LoadClass[OPTIONS LIST]{CLASS NAME}[RELEASE DATE]’
‘\LoadClassWithOptions{CLASS NAME}[RELEASE DATE]’
     Carga una clase, como con ‘\documentclass[LISTA DE OPCIONES]{NOMBRE
     DE CLASE}[INFORMACIÓN DE PUBLICACIÓN]’.  Un ejemplo es
     ‘\LoadClass[twoside]{article}’.

     La OPTIONS LIST, si está presente, es una lista separada por comas.
     La FECHA DE LANZAMIENTO es opcional.  Si está presente debe tener
     la forma AAAA/MM/DD.

     Si solicitas una FECHA DE LANZAMIENTO y la fecha del paquete
     instalado en tu sistema es anterior, recibes una advertencia en la
     pantalla y en el registro como esta.

          Has solicitado, en  la línea de entrada 4, la  versión `2038/01/19' de
          la clase  de documento ``article'',  pero solo la  versión `2014/09/29
          v1.4h La clase de documento LaTeX estándar' está disponible.

     La versión del comando ‘\LoadClassWithOptions’ usa la lista de
     opciones para la clase actual.  Esto significa que ignora cualquier
     opción pasada a través de ‘\PassOptionsToClass’.  Este es un
     comando de conveniencia que te permite construir clases sobre las
     existentes, como la clase ‘article’ estándar, sin tener que
     rastrear qué opciones se pasaron.

‘\ExecuteOptions{OPTIONS-LIST}’
     Para cada opción OPTION en la LISTA DE OPCIONES, en orden, este
     comando ejecuta el comando ‘\ds@OPTION’.  Si este comando no está
     definido, entonces esa opción se ignora silenciosamente.

     Se puede utilizar para proporcionar una lista de opciones
     predeterminada antes ‘\ProcessOptions’.  Por ejemplo, si en un
     archivo de clase deseas que el predeterminado sea el tipo de letra
     de 11 puntos, entonces podrías especificar
     ‘\ExecuteOptions{11pt}\ProcessOptions\relax’.

‘\NeedsTeXFormat{FORMAT}[FORMATO DE FECHA]’
     Especifica el formato con el que se debe ejecutar esta clase.  A
     menudo emitido como la primera línea de un archivo de clase, y se
     usa con mayor frecuencia como: ‘\NeedsTeXFormat{LaTeX2e}’.  Cuando
     un documento que usa esa clase es procesado, el nombre de formato
     proporcionado aquí debe coincidir con el formato que en realidad se
     está ejecutando (incluyendo que la cadena FORMAT es sensible a
     mayúsculas y minúsculas).  Si no coincide, la ejecución se detiene
     con un error como ‘Este archivo necesita formato `LaTeX2e' pero es
     `xxx'.’

     Para especificar una versión del formato que sabes que tiene
     ciertas características, incluye el FORMATO DE FECHA opcional en el
     que esas características fueron implementadas.  Si está presente,
     debe tener el formato ‘YYYY/MM/DD’.  Si la versión del formato
     instalada en tu sistema es anterior al FORMATO DE FECHA, entonces
     recibes una advertencia como esta.

          Has  solicitado la  liberación  `2038/01/20' de  LaTeX,  pero solo  la
          versión `2016/02/01' está disponible.

‘\OptionNotUsed’
     Agrega la opción actual a la lista de opciones no utilizadas.  Solo
     se puede usar dentro del argumento CODE de ‘\DeclareOption’ o
     ‘\DeclareOption*’.

‘\PassOptionsToClass{OPTIONS LIST}{CLASS NAME}’
‘\PassOptionsToPackage{OPTIONS LIST}{PACKAGE NAME}’
     Agrega las opciones en la lista separada por comas LISTA DE
     OPCIONES a las opciones utilizadas por cualquier futuro comando
     ‘\RequirePackage’ o ‘\usepackage’ para el paquete NOMBRE DEL
     PAQUETE o la clase NOMBRE DE CLASE.

     El motivo de estos comandos es: puedes cargar un paquete cualquier
     cantidad de veces sin opciones, pero, si deseas opciones, solo las
     puedes proporcionar cuando cargues el paquete por primera vez.  Al
     cargar un paquete con opciones más de una vez obtendrás un error
     como ‘Conflicto de opción para el paquete Foo.’ (LaTeX arroja un
     error incluso si no hay conflicto entre opciones).

     Si tu propio código trae un paquete dos veces, entonces puedes
     colapsar eso a una vez, por ejemplo reemplazando los dos
     ‘\RequirePackage[landscape]{geometry}’ y
     ‘\RequirePackage[margins=1in]{geometry}’ con el comando único
     ‘\RequirePackage[landscape,margins=1in]{geometry}’.

     Sin embargo, imagina que estás cargando ‘firstpkg’ y dentro de ese
     paquete que carga ‘secondpkg’, y necesitas que el segundo paquete
     sea cargado con la opción ‘draft’.  Entonces antes de hacer el
     primer paquete debes poner en cola las opciones para el segundo
     paquete, así.

          \PassOptionsToPackage{draft}{secondpkg}
          \RequirePackage{firstpkg}

     (Si ‘firstpkg.sty’ carga una opción en conflicto con lo que deseas
     entonces posiblemente tengas que alterar tu fuente).

     Estos comandos son útiles para usuarios generales, así como para
     clases y paquetes.  Por ejemplo, supongamos que un usuario quiere
     cargar el paquete ‘graphicx’ con la opción ‘draft’ y también
     quieres usar una clase ‘foo’ que carga el paquete ‘graphicx’, pero
     sin esa opción.  El usuario podría iniciar su archivo LaTeX con
     ‘\PassOptionsToPackage{draft}{graphicx}\documentclass{foo}’.

‘\ProcessOptions’
‘\ProcessOptions*\@OPTIONS’
     Ejecuta el código para cada opción que el usuario haya invocado.
     Incluirlo en el archivo de clase como ‘\ProcessOptions\relax’
     (debido a la existencia del comando con asterisco).

     Las opciones vienen en dos tipos.  “Opciones locales” se han
     especificado para este paquete particular en el argumento OPTIONS
     de ‘\PassOptionsToPackage{OPTIONS}’, ‘\usepackage[OPTIONS]’, o
     ‘\RequirePackage[OPTIONS]’.  “Opciones globales” son las dadas por
     el usuario de la clase en ‘\documentclass[OPTIONS]’ (si una opción
     se especifica tanto local como globalmente, entonces es local).

     Cuando se llama a ‘\ProcessOptions’ para un paquete ‘pkg.sty’, lo
     siguiente sucede:
       1. Para cada opción OPTION declarada hasta ahora con
          ‘\DeclareOption’, busca si esa opción es una opción global o
          local para ‘pkg’.  Si es así, ejecuta el código declarado.
          Esto se hace en el orden en que estas opciones fueron dadas en
          ‘pkg.sty’.
       2. Para cada opción local restante, ejecuta el comando
          ‘\ds@’OPTION si se ha definido en algún lugar (que no sea por
          una ‘\DeclareOption’); de lo contrario, ejecuta el código de
          opción predeterminada dada en ‘\DeclareOption*’.  Si no se ha
          introducido ningún código de opción predeterminado declarado
          entonces da un mensaje de error.  Esto se hace en el orden en
          que se especificaron estas opciones.

     Cuando se llama a ‘\ProcessOptions’ para una clase, funciona en la
     misma manera salvo que todas las opciones son locales y el CODE
     predeterminado para ‘\DeclareOption*’ es ‘\OptionNotUsed’ en lugar
     de un error.

     La versión destacada ‘\ProcessOptions*’ ejecuta las opciones en el
     orden especificado en las llamadas a comandos, en lugar de en el
     orden de declaración en la clase o paquete.  Para un paquete esto
     significa que las opciones globales se procesan primero.

‘\ProvidesClass{CLASS NAME}[RELEASE DATE BRIEF ADDITIONAL INFORMATION]’
‘\ProvidesClass{CLASS NAME}[RELEASE DATE]’
‘\ProvidesPackage{PACKAGE NAME}[RELEASE DATE BRIEF ADDITIONAL INFORMATION]’
‘\ProvidesPackage{PACKAGE NAME}[RELEASE DATE]’
     Identifica la clase o paquete, imprimiendo un mensaje en pantalla y
     en el archivo de registro.

     Cuando cargas una clase o paquete, por ejemplo con
     ‘\documentclass{smcmemo}’ o ‘\usepackage{test}’, LaTeX ingresa un
     archivo.  Si el nombre del archivo no coincide con la clase o
     nombre del paquete declarado en él, entonces recibes una
     advertencia.  Así, si invocas ‘\documentclass{smcmemo}’, y el
     archivo ‘smcmemo.cls’ tiene la instrucción ‘\ProvidesClass{xxx}’
     luego recibes una advertencia como ‘Has solicitado la clase de
     documento `smcmemo', pero la clase del documento proporciona
     'xxx'.’ Esta advertencia no evita que LaTeX procese el resto del
     archivo de clase normalmente.

     Si incluyes el argumento opcional, debes incluir una fecha, antes
     de cualquier espacio, en la forma ‘AAAA/MM/DD’.  El resto del
     argumento opcional es de forma libre, aunque tradicionalmente
     identifica la clase, y se escribe en la pantalla durante la
     compilación y en el archivo de registro.  Por lo tanto, si tu
     archivo ‘smcmemo.cls’ contiene la línea
     ‘\ProvidesClass{smcmemo}[2008/06/01 v1.0 SMC clase memo]’ y la
     primera línea de tu documento es ‘\documentclass{smcmemo}’ entonces
     verás ‘Clase de documento: smcmemo 2008/06/01 v1.0 SMC clase memo’.

     La fecha en el argumento opcional permite a los usuarios de clases
     y paquetes preguntar para ser advertido si la versión de la clase o
     paquete es anterior a la FECHA DE LANZAMIENTO.  Por ejemplo, un
     usuario puede ingresar ‘\documentclass{smcmemo}[2018/10/12]’ o
     ‘\usepackage{foo}[[2017/07/07]]’ para requerir una clase o paquete
     con ciertas características especificando que no se debe lanzar
     antes que la fecha dada.  (Aunque, en la práctica, los usuarios de
     paquetes rara vez incluyen una fecha, y los usuarios de clases casi
     nunca lo hacen).

‘\ProvidesFile{FILENAME}[ADDITIONAL INFORMATION]’
     Declara un archivo que no sea la clase principal y los archivos del
     paquete, como archivos de configuración o archivos de definición
     del tipo de letra.  Pon este comando en ese archivo y obtienes en
     el registro una cadena como ‘File: test.config 2017/10/12 archivo
     de configuración para test.cls’ para FILENAME igual a ‘test.config’
     e INFORMACIÓN ADICIONAL igual a ‘2017/10/12 archivo de
     configuración para test.cls’.

‘\RequirePackage[OPTIONS LIST]{PACKAGE NAME}[RELEASE DATE]’
‘\RequirePackageWithOptions{PACKAGE NAME}[RELEASE DATE]’
     Carga un paquete, como el comando ‘\usepackage’ (see Paquetes adicionales).
     El equipo de desarrollo de LaTeX recomienda
     encarecidamente el uso de estos comandos sobre el ‘\input’ de
     TeX estándar; ve la Guía de clase.  Un ejemplo es
     ‘\RequirePackage[landscape,margin=1in]{geometry}’.

     La LISTA DE OPCIONES, si está presente, es una lista separada por
     comas.  La FECHA DE LANZAMIENTO, si está presente, debe tener el
     formato AAAA/MM/DD.  Si la fecha de lanzamiento del paquete
     instalado en tu sistema es anterior que la FECHA DE LANZAMIENTO,
     recibes una advertencia como ‘Has solicitado, en la línea de
     entrada 9, la versión `2017/07/03' del paquete jhtest, pero solo
     está disponible la versión `2000/01/01'’.

     La versión ‘\RequirePackageWithOptions’ usa la lista de opciones
     para la clase actual.  Esto significa que ignoras cualquier opción
     que se le pase a través de ‘\PassOptionsToClass’.  Este es un
     comando de conveniencia para facilitar la construcción de clases
     sobre las existentes sin tener que rastrear cuáles opciones se
     pasaron.

     La diferencia entre ‘\usepackage’ y ‘\RequirePackage’ es pequeña.
     El comando ‘\usepackage’ está diseñado para el archivo del
     documento mientras que ‘\RequirePackage’ está diseñado para
     paquetes y archivos de clase.  Por lo tanto, usar ‘\usepackage’
     antes del comando ‘\documentclass’ hace que LaTeX dé un error como
     ‘\usepackage antes de \documentclass’, pero allí puedes usar
     ‘\RequirePackage’.

4 Tipos de letra
****************

LaTeX viene con poderosas capacidades de tipos de letra.  Por un lado,
este nuevo esquema de selección de tipos de letra te permite trabajar
fácilmente con las familias de tipos de letra en tu documento (por
ejemplo, see Estilos de tipos de letra).  Y, los documentos LaTeX
pueden usar la mayoría de los tipos de letra disponibles actualmente,
incluyendo versiones de Times Roman, Helvetica, Courier, etc.  (Nota sin
embargo que, muchos tipos de letra no son compatibles con matemáticas).

   El primer tipo de letra en el mundo TeX fue la familia Computer
Modern, desarrollado por Donald Knuth.  Es el predeterminado para los
documentos LaTeX y sigue siendo el más utilizado.  Pero cambiar a otro
tipo de letra a menudo solo implica algunos comandos.  Por ejemplo,
poner lo siguiente en tu preámbulo te da un tipo de letra similar a
Palatino, que es hermoso y más legible en línea que muchos otros tipos
de letra, al mismo tiempo que te permite tipografía de matemáticas.
(Este ejemplo es de Michael Sharpe,
<https://math.ucsd.edu/~msharpe/RcntFnts.pdf>).

     \usepackage[osf]{newpxtext} % osf para texto, no matemáticas
     \usepackage{cabin} % sans serif
     \usepackage[varqu,varl]{inconsolata} % máquina de escribir sans serif
     \usepackage[bigdelims,vvarbb]{newpxmath} % bb de STIX
     \usepackage[cal=boondoxo]{mathalfa} % mathcal

Además, los motores ‘xelatex’ o ‘lualatex’ permiten que uses cualquier
tipo de letra en tu sistema que esté en formato OpenType o TrueType
(see Motores TeX).

   El catálogo de tipos de letra LaTeX (<https://tug.org/FontCatalogue>)
muestra gráficos de ejemplo del tipo de letra y fuente que se puede
copiar y pegar para usar muchos tipos de letra, incluyendo muchos
compatibles con matemáticas.  Pretende abarcar todos los tipos de letra
Latin alfabéticas libres disponibles para un uso sencillo con LaTeX.

   También hay más información disponible en los grupos de usuarios TeX,
en <https://www.tug.org/fonts/>.

4.1 paquete ‘fontenc’
=====================

Sinopsis:

     \usepackage[FONT_ENCODING]{fontenc}

   o

     \usepackage[FONT_ENCODING1, FONT_ENCODING2, ...]{fontenc}

   Especifica la codificación del tipo de letra.  Una codificación de
tipo de letra es una asignación de códigos de caracteres a los glifos
del tipo de letra que se utilizan para escribir

   Este paquete solo se aplica si usas el motor ‘pdflatex’ (see
Motores TeX).  Si usas el comando ‘xelatex’ o el motor ‘lualatex’
entonces usa el paquete ‘fontspec’.

   La familia de tipos de letra original de TeX, Computer Modern, tiene
un conjunto de caracteres limitado.  Por ejemplo, para hacer caracteres
acentuados comunes, debes usar ‘\accent’ (see \accent) pero esto
deshabilita la separación silábica.  Los usuarios TeX han acordado una
serie de estándares para acceder a conjuntos de caracteres más grandes
proporcionados por los tipos de letra modernos.  Si estás usando
‘pdflatex’ entonces pon esto en el preámbulo

     \usepackage[T1]{fontenc}

te brinda soporte para los idiomas europeos ampliamente extendidos,
incluidos francés, alemán, italiano, polaco y otros.  En particular, si
tienes palabras con letras acentuadas entonces LaTeX las dividirá y tu
salida se puede copiar y pegar.  (La segunda línea opcional te permite
ingresar directamente caracteres acentuados en tu archivo fuente).

   Si estás utilizando una codificación como ‘T1’ y los caracteres
aparecen borrosos o no se amplían bien, entonces tus tipos de letra
pueden estar en mapas de bits, a veces llamado raster o Type 3.  Quieres
tipos de letra vectoriales.  Utiliza un paquete como ‘lmodern’ o
‘cm-super’ para obtener un tipo de letra que extiende el valor
predeterminado de LaTeX usando tipos de letra vectoriales.

   Para cada FONT_ENCODING dado como opción pero aún no declarado, este
paquete carga los archivos de definición de codificación, denominados
‘FONT_ENCODINGenc.def’.  También establece ‘\encodingdefault’ para ser
la última codificación en la lista de opciones.

   Estos son los valores comunes para FONT_ENCODING.

‘OT1’
     La codificación original para TeX.  Limitada a caracteres en su
     mayoría en inglés.

‘OMS, OML’
     Símbolos matemáticos y codificación de letras matemáticas.

‘T1’
     Texto TeX extendido.  A veces se llama la codificación de Cork para
     la reunión de usuarios del grupo donde se desarrolló.  Da acceso a
     la mayoría de los caracteres acentuados europeos.  La opción más
     común para este paquete.

‘TS1’
     Codificación de Text Companion.

El valor predeterminado de LaTeX es cargar ‘OML’, ‘T1’, ‘OT1’ y luego
‘OMS’, y establece el valor predeterminado en ‘OT1’.

   Incluso si no usas letras acentuadas, es posible que debas
especificar una codificación de tipo de letra si tu tipo de letra lo
requiere.

   Si usas codificación‘T1’  en los tipos de letra que no sean las
familias Modern predeterminadas, es posible que debas cargar el paquete
que selecciona tus tipos de letra antes de cargar ‘fontenc’, para evitar
que el sistema cargue cualquier tipo de letra codificada ‘T1’ de la
predeterminada.

   El equipo de LaTeX reserva nombres de codificación que comienzan con:
‘T’ para codificaciones de texto estándar con 256 caracteres, ‘TS’ para
símbolos que extienden las codificaciones T correspondientes, ‘X’ para
codificaciones de prueba, ‘M’ para codificaciones matemáticas estándar
con 256 caracteres, ‘A’ para aplicaciones especiales, ‘OT’ para
codificaciones de texto estándar con 128 caracteres y ‘OM’ para
codificaciones matemáticas estándar con 128 caracteres (‘O’ significa
‘obsoleto’).

   Este paquete proporciona una serie de comandos, que se detallan a
continuación.  Muchos de ellos son específicos de codificación, por lo
que si has definido un comando que funciona para una codificación pero
la codificación actual es diferente, entonces el comando no está en
vigor.

4.1.1 ‘\DeclareFontEncoding’
----------------------------

Sinopsis:

     \DeclareFontEncoding{ENCODING}{TEXT-SETTINGS}{MATH-SETTINGS}

   Declara la codificación del tipo de letra ENCODING.  También guarda
el valor de ENCODING en ‘\LastDeclaredEncoding’ (see
\LastDeclaredEncoding).

   El archivo ‘t1enc.def’ contiene esta línea (seguida de muchas otras).

     \DeclareFontEncoding{T1}{}{}

   Los TEXT-SETTINGS son los comandos que LaTeX ejecutará cada vez que
cambias de una codificación a otra con los comandos ‘\selectfont’ y
‘\fontencoding’.  Los MATH-SETTINGS son los comandos que LaTeX usará
siempre que el tipo de letra se accede como un alfabeto matemático.

   LaTeX ignora cualquier carácter de espacio dentro de TEXT-SETTINGS y
MATH-SETTINGS, para evitar espacios no deseados en la salida.

   Si inventas una codificación, debes elegir un nombre de dos o tres
letras comenzando con ‘L’ para ‘local’, o ‘E’ para ‘experimental’.

   Ten en cuenta que LaTeX puede leer varias veces los archivos de
codificación de salida, por lo que usar, por ejemplo, ‘\newcommand’
puede causar un error.  Además, tales archivos deben contener la línea
‘\ProvidesFile’ (see Comandos class y package).

   Ten en cuenta también que debes usar los comandos ‘\...Default’ solo
en un paquete, no en los archivos de definición de codificación, ya que
esos archivos solo deben contener declaraciones específicas para esa
codificación.

4.1.2 ‘\DeclareTextAccent’
--------------------------

Sinopsis:

     \DeclareTextAccent{CMD}{ENCODING}{SLOT}

   Define un acento, para colocarlo encima de otros glifos, en la
codificación ENCODING en la ubicación SLOT.

   Un “slot” es el número que identifica un glifo dentro de un tipo de
letra.

   Esta línea de ‘t1enc.def’ declara que para hacer un acento
circunflejo como en ‘\^A’, el sistema pondrá el acento en el slot 2
sobre el carácter ‘A’, que se representa en ASCII como 65.  (Esto se
mantiene a menos que haya un ‘DeclareTextComposite’ relevante o una
declaración ‘\DeclareTextCompositeCommand’; see
\DeclareTextComposite).

     \DeclareTextAccent{\^}{T1}{2}

   Si CMD ya se ha definido, entonces ‘\DeclareTextAccent’ no da error
pero si registra la redefinición en el archivo de transcripción.

4.1.3 ‘\DeclareTextAccentDefault’
---------------------------------

Sinopsis:

     \DeclareTextAccentDefault{\CMD}{ENCODING}

   Si hay un comando específico de codificación de acento \CMD pero no
hay un ‘\DeclareTextAccent’ asociado para esa codificación, entonces
este comando tomará el relevo, diciendo que lo use como se describe para
ENCODING.

   Por ejemplo, para hacer que la codificación ‘OT1’ sea la codificación
predeterminada para el acento ‘\"’, declara esto.

     \DeclareTextAccentDefault{\"}{OT1}

Si emites un ‘\"’ cuando la codificación actual no tiene una definición
para ese acento entonces LaTeX usará la definición desde ‘OT1’

   Es decir, este comando es equivalente a esta llamada (see
\UseTextSymbol y \UseTextAccent).

     \DeclareTextCommandDefault[1]{\CMD}
        {\UseTextAccent{ENCODING}{\CMD}{#1}}

   Ten en cuenta que ‘\DeclareTextAccentDefault’ funciona para cualquier
comando ‘fontenc’ de argumento único, no solo el comando de acento.

4.1.4 ‘\DeclareTextCommand’ y ‘\ProvideTextCommand’
---------------------------------------------------

Sinopsis, una de:

     \DeclareTextCommand{\CMD}{ENCODING}{DEFN}
     \DeclareTextCommand{\CMD}{ENCODING}[NARGS]{DEFN}
     \DeclareTextCommand{\CMD}{ENCODING}[NARGS][OPTARGDEFAULT]{DEFN}

   o una de:

     \ProvideTextCommand{\CMD}{ENCODING}{DEFN}
     \ProvideTextCommand{\CMD}{ENCODING}[NARGS]{DEFN}
     \ProvideTextCommand{\CMD}{ENCODING}[NARGS][OPTARGDEFAULT]{DEFN}

   Define el comando ‘\CMD’, que será específico para una codificación.
El nombre del comando CMD debe estar precedido por una barra invertida,
‘\’.  Estos comandos solo pueden aparecer en el preámbulo.  Redefinir
\CMD no provoca un error.  El comando definido será robusto incluso si
el código en DEFN es frágil (see \protect).

   Por ejemplo, el archivo ‘t1enc.def’ contiene esta línea.

     \DeclareTextCommand{\textperthousand}{T1}{\%\char 24 }

   Con eso, puedes expresar partes por mil.

     \usepackage[T1]{fontenc}  % en el preámbulo
       ...
     El límite legal es \(0.8 \)\textperthousand.

Si cambias la codificación del tipo de letra a ‘OT1’, obtendrás un error
como ‘Error de LaTeX: Comando \textperthousand no disponible en
codificación OT1’.

   La variante ‘\ProvideTextCommand’ hace lo mismo, excepto que no hace
nada si ‘\CMD’ ya está definido.  El comando ‘\DeclareTextSymbol’ es más
rápido que este por simple asociación de slot a glifo (see
\DeclareTextSymbol)

   Los argumentos opcionales NARGS y OPTARGDEFAULT juegan el mismo rol
aquí como en ‘\newcommand’ (see \newcommand y \renewcommand).
Brevemente, NARGS es un número entero de 0 a 9 especificando el número
de argumentos que el comando definido ‘\CMD’ toma.  Este número incluye
cualquier argumento opcional.  Omitir este argumento es lo mismo que
especificar 0, lo cual significa que ‘\CMD’ no tendrá argumentos.  Y, si
OPTARGDEFAULT está presente, entonces el primer argumento de ‘\CMD’ es
opcional, con el valor predeterminado OPTARGDEFAULT (que puede ser la
cadena vacía).  Si OPTARGDEFAULT no está presente, entonces ‘\CMD’
tampoco toma un argumento opcional.

4.1.5 ‘\DeclareTextCommandDefault’ y ‘\ProvideTextCommandDefault’
-----------------------------------------------------------------

Sinopsis:

     \DeclareTextCommandDefault{\CMD}{DEFN}

   o:

     \ProvideTextCommandDefault{\CMD}{DEFN}

   Proporciona una definición predeterminada para ‘\CMD’, para cuando
ese comando no está definido en la codificación actualmente en vigor.
Este valor predeterminado debería utilizar únicamente codificaciones que
sepas que están disponibles.

   Esto hace que ‘\copyright’ esté disponible.

     \DeclareTextCommandDefault{\copyright}{\textcircled{c}}

Utiliza solo una codificación (OMS) que siempre está disponible.

   El ‘\DeclareTextCommandDefault’ no debería aparecer en la definición
de codificación de archivos ya que esos archivos solo deben declarar
comandos para su uso cuando seleccionas esa codificación.  En cambio,
debería estar en un paquete.

   Al igual que con los comandos no predeterminados relacionados,
‘\ProvideTextCommandDefault’ tiene exactamente el mismo comportamiento
que

   ‘\DeclareTextCommandDefault’ excepto que no hace nada si ‘\CMD’ ya
está definido (see \DeclareTextCommand y \ProvideTextCommand).
Entonces, los paquetes lo pueden usar para proporcionar respaldos que
otros paquetes pueden mejorar.

4.1.6 ‘\DeclareTextComposite’
-----------------------------

Sinopsis:

     \DeclareTextComposite{\CMD}{ENCODING}{SIMPLE_OBJECT}{SLOT}

   Accede a un glifo acentuado directamente, es decir, sin tener que
poner un acento sobre un carácter separado.

   Esta línea de ‘t1enc.def’ significa que ‘\^o’ provocará a LaTeX para
componer la minúscula ‘o’ tomando el carácter directamente desde el slot
224 en el tipo de letra.

     \DeclareTextComposite{\^}{T1}{o}{244}

   See paquete fontenc, para obtener una lista de codificaciones
comunes.  El SIMPLE_OBJECT debe ser un solo carácter o un solo comando.
El argumento SLOT suele ser un entero positivo representado en decimal
(aunque son posibles octal o hexadecimal).  Normalmente \CMD ya se ha
declarado para esta codificación, ya sea con ‘\DeclareTextAccent’ o con
un solo argumento ‘\DeclareTextCommand’.  En ‘t1enc.def’, sigue la línea
anterior al comando ‘\DeclareTextAccent{\^}{T1}{2}’.

4.1.7 ‘\DeclareTextCompositeCommand’
------------------------------------

Sinopsis:

     \DeclareTextCompositeCommand{\CMD}{ENCODING}{ARG}{CODE}

   Una versión más general de ‘\DeclareTextComposite’ que ejecuta código
arbitrario con ‘\CMD’.

   Esto permite que los acentos en ‘i’ actúen como acentos en dotless i,
‘\i’.

     \DeclareTextCompositeCommand{\'}{OT1}{i}{\'\i}

   See paquete fontenc, para obtener una lista de codificaciones
comunes.  Normalmente ‘\CMD’ ya se habrá declarado con
‘\DeclareTextAccent’ o como un argumento ‘\DeclareTextCommand’.

4.1.8 ‘\DeclareTextSymbol’
--------------------------

Sinopsis:

     \DeclareTextSymbol{\CMD}{ENCODING}{SLOT}

   Define un símbolo en la codificación ENCODING en la ubicación SLOT.
Los símbolos definidos de esta manera son para usar en texto, no
matemáticas.

   Por ejemplo, esta línea de ‘t1enc.def’ declara el número del glifo a
usar para «, el guillemet izquierdo.

     \DeclareTextSymbol{\guillemotleft}{T1}{19}

El comando ‘\DeclareTextCommand{\guillemotleft}{T1}{\char 19}’ tiene el
mismo efecto pero es más lento (see \DeclareTextCommand y \ProvideTextCommand).

   See paquete fontenc, para obtener una lista de codificaciones
comunes.  El SLOT se puede especificar en decimal u octal (como en
‘'023’), o hexadecimal (como en ‘"13’), aunque el decimal tiene la
ventaja de que las comillas simples o dobles se pueden redefinir por
otro paquete.

   Si ‘\CMD’ ya se ha definido, entonces ‘\DeclareTextSymbol’ no da un
error pero registra la redefinición en el archivo de transcripción.

4.1.9 ‘\DeclareTextSymbolDefault’
---------------------------------

Sinopsis:

     \DeclareTextSymbolDefault{\CMD}{ENCODING}

   Si hay un comando de símbolo específico de codificación ‘\CMD’ pero
no hay un ‘\DeclareTextSymbol’ asociado para esa codificación, entonces
este comando tomará el relevo, diciendo que obtenga el símbolo como se
describe para ENCODING.

   Por ejemplo, para declarar que si la codificación actual no tiene
significado para ‘\textdollar’ entonces usa el de ‘OT1’, declara esto.

     \DeclareTextSymbolDefault{\textdollar}{OT1}

   Es decir, este comando es equivalente a esta llamada (see
\UseTextSymbol y \UseTextAccent).

     \DeclareTextCommandDefault{\CMD}
        {\UseTextSymbol{ENCODING}{\CMD}}

   Ten en cuenta que ‘\DeclareTextSymbolDefault’ se puede usar para
definir un predeterminado para cualquier comando ‘fontenc’ de cero
argumentos.

4.1.10 ‘\LastDeclaredEncoding’
------------------------------

Sinopsis:

     \LastDeclaredEncoding

   Obtiene el nombre de la codificación declarada más recientemente.  El
comando ‘\DeclareFontEncoding’ almacena el nombre para que se pueda
recuperar con este comando (see \DeclareFontEncoding).

   Esto se basa en ‘\LastDeclaredEncoding’ en lugar de dar
explícitamente el nombre de la codificación.

     \DeclareFontEncoding{JH1}{}{}
     \DeclareTextAccent{\'}{\LastDeclaredEncoding}{0}

4.1.11 ‘\UseTextSymbol’ y ‘\UseTextAccent’
------------------------------------------

Sinopsis:

     \UseTextSymbol{ENCODING}{\CMD}

   o:

     \UseTextAccent{ENCODING}{\CMD}{TEXT}

   Utiliza un símbolo o acento que no sea de la codificación actual.

   En general, para usar un comando ‘fontenc’ en una codificación donde
no está definido, y si el comando no tiene argumentos, lo puedes usar
con algo como esto:

     \UseTextSymbol{OT1}{\ss}

que es equivalente a esto (observa que las llaves exteriores forman un
grupo, por lo que LaTeX vuelve a la codificación anterior después de
‘\ss’):

     {\fontencoding{OT1}\selectfont\ss}

   De manera similar, para usar un comando ‘fontenc’ en una codificación
donde no está definido, y si el comando tiene un argumento, lo puedes
usar así:

     \UseTextAccent{OT1}{\'}{a}

que es equivalente a esto (nuevamente, ten en cuenta las llaves
exteriores que forman un grupo):

     {fontencoding{OT1}\selectfont\'{\fontencoding{ENC_IN_USE}\selectfont a}}

Aquí, ENC_IN_USE es la codificación vigente antes de esta secuencia de
comandos, de modo que ‘a’ se escribe utilizando la codificación actual y
solo se toma el acento de ‘OT1’.

4.2 Estilos de tipos de letra
=============================

Los siguientes comandos de estilo de letra son compatibles con LaTeX.

   En la tabla de abajo de los comandos enumerados, los comandos
‘\text...’, se usan con un argumento como en ‘\textit{TEXT}’.  Esta es
la forma preferida.  Pero se muestra después entre paréntesis si la
correspondiente “forma de declaración”, que suele ser útil.  Esta forma
no toma argumentos, como en ‘{\itshape TEXT}’.  El alcance de la forma
de declaración dura hasta el siguiente comando de estilo de tipo o el
final del grupo actual.  Además, cada uno tiene un entorno como
‘\begin{itshape}...\end{itshape}’, que describiremos al final de la
sección.

   Estos comandos, en cualquiera de las tres formas, son acumulativos;
por ejemplo puedes obtener negrita sans serif diciendo cualquiera de
‘\sffamily\bfseries’ o ‘\bfseries\sffamily’.

   Una ventaja de estos comandos es que automáticamente insertan
correcciones en cursiva si es necesario (see \/).  En concreto,
insertan la corrección en cursiva a menos que el siguiente carácter esté
en la lista ‘\nocorrlist’, que de manera predeterminada consta de punto
y coma.  Para suprimir la inserción automática de la corrección en
cursiva, utiliza ‘\nocorr’ al principio o al final del argumento del
comando, como ‘\textit{\nocorr text}’ o ‘\textsc{text \nocorr}’.

‘\textrm (\rmfamily)’
     Roman.

‘\textit (\itshape)’
     Italics.

‘\textmd (\mdseries)’
     Medium weight (predeterminado).

‘\textbf (\bfseries)’
     Boldface.

‘\textup (\upshape)’
     Upright (predefinido).

‘\textsl (\slshape)’
     Slanted.

‘\textsf (\sffamily)’
     Sans serif.

‘\textsc (\scshape)’
     Small caps.

‘\texttt (\ttfamily)’
     Typewriter.

‘\textnormal (\normalfont)’
     Tipo de letra del documento principal.

   Aunque también cambia los tipos de letra, el comando ‘\emph{TEXT}’ es
semántico, para que se enfatice TEXT, y no se debe usar como sustituto
de ‘\textit’.  Por ejemplo, ‘\emph{START TEXT \emph{MIDDLE TEXT} END
TEXT}’ resultará en START TEXT y END TEXT en cursiva, pero MIDDLE TEXT
estará en romano.

   LaTeX también proporciona los siguientes comandos, que
incondicionalmente cambia al estilo dado, es decir, _no_ son
acumulativos.  Están usados ​​como declaraciones: ‘{\CMD...}’ en lugar de
‘\CMD{...}’.

   (Los comandos incondicionales a continuación son una versión anterior
de tipo de letra traspuesta.  Los comandos anteriores son una mejora en
la mayoría de las circunstancias.  Pero a veces un cambio de tipo de
letra incondicional es necesario).

‘\bf’
     Cambia a negrita.

‘\cal’
     Cambia a letras caligráficas para matemáticas.

‘\it’
     cursivas.

‘\rm’
     Roman.

‘\sc’
     Small caps.

‘\sf’
     Sans serif.

‘\sl’
     Slanted (oblicua).

‘\tt’
     Typewriter (monoespacio, ancho fijo).

   El comando ‘\em’ es la versión incondicional de ‘\emph’.

   Los siguientes comandos se utilizan en modo matemático.  Ellos no son
acumulativos, por lo que ‘\mathbf{\mathit{SYMBOL}}’ no crea una negrita
y cursiva SYMBOL; en cambio, solo estará en cursiva.  Esto se debe a
que, por lo general, los símbolos matemáticos necesitan tratamiento
tipográfico, independientemente del entorno circundante.

‘\mathrm’
     Roman, para usar en modo matemático.

‘\mathbf’
     Negrita (boldface), para usar en modo matemático.

‘\mathsf’
     Sans serif, para usar en modo matemático.

‘\mathtt’
     Typewriter, para usar en modo matemático.

‘\mathit’
‘(\mit)’
     Italics, para usar en modo matemático.

‘\mathnormal’
     Para usar en modo matemático, por ejemplo, dentro de otra
     declaración de estilo de tipo.

‘\mathcal’
     Letras caligráficas, para uso en modo matemático.

   Además, el comando ‘\mathversion{bold}’ se puede usar para cambiar a
letras y símbolos en negrita en fórmulas ‘\mathversion{normal}’ restaura
el valor predeterminado.

   Finalmente, el comando ‘\oldstylenums{NUMERALS}’ compone los llamados
números de “estilo antiguo”, que tienen diferentes alturas y
profundidades (y a veces anchos) del “revestimiento" estándar de
números, que tienen todos la misma altura que las letras mayúsculas.
Los tipos de letra predeterminados de LaTeX admiten esto y respetarán
‘\textbf’ (pero no otros estilos; no hay números en estilo cursiva
antiguo en Informática Moderna).  Muchos otros tipos de letra también
tienen números de estilo antiguo; a veces se proporcionan opciones de
paquetes para que sean las predeterminadas.  Preguntas frecuentes
entrada: <https://www.texfaq.org/FAQ-osf>.

4.3 Tamaños de los tipos de letra
=================================

Los siguientes comandos de tamaño de letra estándar son compatibles con
LaTeX.  La tabla muestra el nombre del comando y el tipo de letra en el
tamaño real correspondiente utilizado (en puntos) con ‘10pt’, ‘11pt’ y
‘12pt’ opciones de tamaño del documento, respectivamente (see Opciones de la clase documento).

Comando                            ‘10pt’    ‘11pt’    ‘12pt’
---------------------------------------------------------------
‘\tiny’                            5         6         6
‘\scriptsize’                      7         8         8
‘\footnotesize’                    8         9         10
‘\small’                           9         10        10.95
‘\normalsize’ (predeterminado)     10        10.95     12
‘\large’                           12        12        14.4
‘\Large’                           14.4      14.4      17.28
‘\LARGE’                           17.28     17.28     20.74
‘\huge’                            20.74     20.74     24.88
‘\Huge’                            24.88     24.88     24.88

   Los comandos se enumeran aquí en forma de declaración (no de
entorno), ya que así es como se usan típicamente.  Por ejemplo:

     \begin{quotation} \small
       El Tao que se puede nombrar no es el Tao eterno.
     \end{quotation}

Aquí, el alcance del ‘\small’ dura hasta el final del entorno
‘quotation’.  También terminaría en el siguiente comando de estilo de
tipo o el final del grupo actual, por lo tanto lo podrías encerrar entre
llaves ‘{\small Este texto está escrito en letra pequeña.}’.

   Tratar de usar estos comandos en matemáticas, como con ‘$\small
mv^2/2$’, da como resultado ‘Advertencia de fuentes LaTeX: Comando
\small inválido en modo matemático’, y el tamaño del tipo de letra no
cambia.  Para trabajar con una fórmula demasiado grande, a menudo la
mejor opción es usar el entorno ‘displaymath’ (see Fórmulas math), o
uno de los entornos del paquete ‘amsmath’.  Para matemáticas en línea,
como en una tabla de fórmulas, una alternativa es algo como ‘{\small
$mv^2/2$}’.  (A veces ‘\scriptsize’ y ‘\scriptstyle’ se confunden.
Ambos cambian el tamaño del tipo de letra, pero el último también cambia
una serie de otros aspectos de cómo se componen las matemáticas.  See
Estilos math).

   También se define un “entorno form” de cada uno de estos comandos;
por ejemplo, ‘\begin{tiny}...\end{tiny}’.  Sin embargo, en la práctica
esta forma puede conducir fácilmente a espacios no deseados al principio
y/o final del entorno sin una cuidadosa consideración, por lo que
generalmente es menos propenso a errores apegarse a la forma de
declaración.

   (Aparte: Técnicamente, debido a la forma en que LaTeX define ‘\begin’
y ‘\end’, casi todos los comandos que no toman un argumento técnicamente
tiene una forma de entorno.  Pero en casi todos los casos, solo sería
causa de confusión al usarlo.  La razón de mencionar la forma de entorno
de las declaraciones de tamaño del tipo de letra específicamente es que
este uso particular no es raro).

4.4 Comandos de bajo nivel del tipo de letra
============================================

Estos comandos están destinados principalmente a los escritores de
macros y paquetes.  Los comandos enumerados aquí son solo un subconjunto
de los disponibles.

‘\fontencoding{ENCODING}’
     Selecciona la codificación del tipo de letra, la codificación del
     tipo de letra de salida.  Hay un gran número de codificaciones
     válidas.  Las más comunes son ‘OT1’, La codificación original de
     Knuth para Computer Modern (la predeterminada), y ‘T1’, también
     conocida como la codificación de Cork, que admite caracteres
     acentuados utilizados por los idiomas europeos más extendidos
     (alemán, francés, italiano, polaco y otros), lo que permite a TeX
     separar con guiones las palabras que contengan letras acentuadas.
     Para más, ve <https://ctan.org/pkg/encguide>.

‘\fontfamily{FAMILY}’
     Selecciona la familia del tipo de letra.  La página web
     <https//tug.org/FontCatalogue/> proporciona una forma de navegar a
     través de muchos de los tipos de letra que se usan fácilmente con
     LaTeX.  Aquí hay ejemplos de algunas familias comunes.

     ‘pag’            Avant Garde
     ‘fvs’            Bitstream Vera Sans
     ‘pbk’            Bookman
     ‘bch’            Charter
     ‘ccr’            Computer Concrete
     ‘cmr’            Computer Modern
     ‘cmss’           Computer Modern Sans Serif
     ‘cmtt’           Computer Modern Typewriter
     ‘pcr’            Courier
     ‘phv’            Helvetica
     ‘fi4’            Inconsolata
     ‘lmr’            Latin Modern
     ‘lmss’           Latin Modern Sans
     ‘lmtt’           Latin Modern Typewriter
     ‘pnc’            New Century Schoolbook
     ‘ppl’            Palatino
     ‘ptm’            Times
     ‘uncl’           Uncial
     ‘put’            Utopia
     ‘pzc’            Zapf Chancery

‘\fontseries{SERIES}’
     Selecciona la serie de tipos de letra.  Una “serie” combina un
     “weight” y un “width”.  Por lo general, un tipo de letra solo
     admite algunas de las posibles combinaciones.  Algunos valores
     comunes de series combinadas incluyen:

     ‘m’  Medium (normal)
     ‘b’  Bold
     ‘c’  Condensed
     ‘bc’ Bold condensed
     ‘bx’ Bold extended

     Los posibles valores de grosor, individualmente, son:

     ‘ul’ Ultra light
     ‘el’ Extra light
     ‘l’  Light
     ‘sl’ Semi light
     ‘m’  Medium (normal)
     ‘sb’ Semi bold
     ‘b’  Bold
     ‘eb’ Extra bold
     ‘ub’ Ultra bold

     Los valores posibles para el ancho, individualmente, son (el
     significado y relación de estos términos varía con los tipos de
     letra individuales):

     ‘uc’ Ultra condensed
     ‘ec’ Extra condensed
     ‘c’  Condensed
     ‘sc’ Semi condensed
     ‘m’  Medium
     ‘sx’ Semi expanded
     ‘x’  Expanded
     ‘ex’ Extra expanded
     ‘ux’ Ultra expanded

     Al formar la cadena SERIES a partir del peso y el ancho, la ‘m’
     suelta significa grosor medio o ancho medio, a menos que ambos, el
     grosor y el ancho sean ‘m’, en cuyo caso usa solo una (‘‘m’’).

‘\fontshape{SHAPE}’
     Selecciona la forma del tipo de letra.  Las formas válidas son:

     ‘n’  Upright (normal)
     ‘it’ Italic
     ‘sl’ Slanted (oblique)
     ‘sc’ Small caps
     ‘ui’ Upright italics
     ‘ol’ Outline

     Las dos últimas formas no están disponibles para la mayoría de las
     familias de tipos de letra, y a menudo también faltan las
     versalitas.

‘\fontsize{SIZE}{SKIP}’
     Establece el tamaño del tipo de letra y el espacio entre líneas.
     La unidad de ambos parámetros el valor predeterminado es puntos
     (‘pt’).  El interlineado es el espacio vertical nominal entre
     líneas, línea base a línea base.  Se almacena en el parámetro
     ‘\baselineskip’.  El ‘\baselineskip’ predeterminado para el tipo de
     letra Computer Modern es 1.2 veces el ‘\fontsize’.  Cambiar
     ‘\baselineskip’ directamente no es recomendable ya que su valor se
     restablece cada vez que ocurre un cambio de tamaño; en su lugar usa
     ‘\baselinestretch’.  (see \baselineskip y \baselinestretch).

‘\linespread{FACTOR}’
     Equivalente a ‘\renewcommand{\baselinestretch}{FACTOR}’, y por lo
     tanto debe ir seguido de ‘\selectfont’ para tener cualquier efecto.
     Mejor especificado en el preámbulo.  See \baselineskip y \baselinestretch,
     por usar el paquete ‘setspace’ en su lugar.

‘\selectfont’
     Los efectos de los comandos de tipo de letra descritos
     anteriormente no suceden hasta que se llama a ‘\selectfont’, como
     en ‘\fontfamily{FAMILYNAME}\selectfont’.  A menudo es útil poner
     esto en una macro:
     ‘\newcommand*{\myfont}{\fontfamily{FAMILYNAME}\selectfont}’
     (see \newcommand y \renewcommand).

‘\usefont{ENC}{FAMILY}{SERIES}{SHAPE}’
     Lo mismo que invocar a ‘\fontencoding’, ‘\fontfamily’,
     ‘\fontseries’ y ‘\fontshape’ con los parámetros dados, seguidos de
     ‘\selectfont’.  Por ejemplo:

          \usefont{ot1}{cmr}{m}{n}

5 Composición
*************

Comandos para controlar la composición general de página.

5.1 ‘\onecolumn’
================

Sinopsis:

     \onecolumn

   Inicia una nueva página y genera una salida de una sola columna.  Si
al documento le es dada la opción de clase ‘onecolumn’ entonces este es
el valor predeterminado del comportamiento (see Opciones de la clase documento).
Este comando es frágil (see \protect).

5.2 ‘\twocolumn’
================

Sinopsis:

     \twocolumn
     \twocolumn[TEXTO PRELIMINAR DE UNA COLUMNA]

   Inicia una nueva página y genera un resultado de dos columnas.  Si se
entrega al documento la opción de clase ‘twocolumn’ entonces esta es la
predeterminada (see Opciones de la clase documento).  Este comando
es frágil (see \protect).

   Si el argumento opcional TEXTO PRELIMINAR DE UNA COLUMNA está
presente, se escribe en el modo de una columna antes de que comience la
composición tipográfica de dos columnas.

   Estos parámetros controlan la composición tipográfica en la salida de
dos columnas:

‘\columnsep’
     La distancia entre columnas.  El valor predeterminado es 35 puntos.
     Cámbialo con un comando como ‘\setlength{\columnsep}{40pt}’.  Lo
     debes cambiar antes de que comience el modo de dos columnas; en el
     preámbulo es un buen lugar.

‘\columnseprule’
     El ancho de la regla entre columnas.  El valor predeterminado es
     0pt, lo cual significa que no hay regla.  De lo contrario, la regla
     aparece a medio camino entre las dos columnas.  Cámbialo con un
     comando como ‘\setlength{\columnseprule}{0.4pt}’, antes de comenzar
     el modo de dos columnas.

‘\columnwidth’
     El ancho de una sola columna.  En el modo de una columna esto es
     igual a ‘\textwidth’.  En el modo de dos columnas de manera
     predeterminada, LaTeX establece el ancho de cada una de las dos
     columnas, para que ‘\columnwidth’ sea la mitad de ‘\textwidth’
     menos ‘\columnsep’.

   En un documento de dos columnas, los entornos destacados ‘table*’ y
‘figure*’ tienen dos columnas de ancho, mientras que los entornos sin
estrellas ‘table’ y ‘figure’ ocupan solo una columna (see figure y
table).  LaTeX coloca flotantes con estrellas en la parte
superior de una página.  Los siguientes parámetros controlan el
comportamiento flotante de la salida de dos columnas.

‘\dbltopfraction’
     La fracción máxima en la parte superior de una página de dos
     columnas que pueden ocupar flotantes de dos columnas de ancho.  El
     valor predeterminado es 0.7, lo cual significa que la altura de un
     entorno ‘table*’ o ‘figure*’ no debe superar ‘0.7\textheight’.  Si
     la altura de tu entorno flotante estrellado excede esto, entonces
     puedes tomar una de las siguientes acciones para evitar que flote
     hasta el final del documento:

        • Usa el especificador de ubicación ‘[tp]’ para decirle a LaTeX
          que intente poner el voluminoso flotante en una página por sí
          mismo, así como en la parte superior de una página.

        • Utiliza el especificador de ubicación ‘[t!]’ para anular el
          efecto de ‘\dbltopfraction’ para este flotante en particular.

        • Aumenta el valor de ‘\dbltopfraction’ a un número
          adecuadamente grande, para evitar ir a páginas flotantes tan
          pronto como sea posible.

     Lo puedes redefinir, como con
     ‘\renewcommand{\dbltopfraction}{0.9}’.

‘\dblfloatpagefraction’
     Para una página flotante de dos columnas de ancho flotantes, esta
     es la fracción mínima que deben ocupar los flotantes, limitando la
     cantidad de espacio en blanco.  El valor predeterminado de LaTeX es
     ‘0.5’.  Cámbialo con ‘\renewcommand’.

‘\dblfloatsep’
     En una página flotante de flotantes de dos columnas de ancho, esta
     longitud es la distancia entre flotantes, tanto en la parte
     superior como en la inferior de la página.  El valor predeterminado
     es ‘12pt plus2pt minus2pt’ para un documento establecido en ‘10pt’
     o ‘11pt’ y ‘14pt plus2pt minus4pt’ para un documento establecido en
     ‘12pt’.

‘\dbltextfloatsep’
     Esta longitud es la distancia entre un flotante de varias columnas
     en la parte superior o la parte inferior de una página y el texto
     principal.  El valor predeterminado es ‘20pt plus2pt minus4pt’.

‘\dbltopnumber’
     En una página flotante de flotantes de dos columnas de ancho, este
     contador da el número máximo de flotantes permitidos en la parte
     superior de la página.  El valor predeterminado de LaTeX es ‘2’.

   Este ejemplo usa el argumento opcional de ‘\twocolumn’ para crear un
título que abarca el artículo de dos columnas:

     \documentclass[twocolumn]{article}
     \newcommand{\authormark}[1]{\textsuperscript{#1}}
     \begin{document}
     \twocolumn[{% dentro de este argumento opcional va texto de una columna
       \centering
       \LARGE El título \\[1.5em]
       \large Autor uno\authormark{1},
              Autor dos\authormark{2},
              Autor tres\authormark{1} \\[1em]
       \normalsize
       \begin{tabular}{p{.2\textwidth}@{\hspace{2em}}p{.2\textwidth}}
         \authormark{1}Departamento uno  &\authormark{2}Departamento dos \\
          Escuela uno                   &Escuela dos
       \end{tabular}\\[3em] % espacio debajo de la parte del título
       }]

     Texto de dos columnas aquí.

5.3 ‘\flushbottom’
==================

Hace que todas las páginas del documento después de esta declaración
tengan la misma altura, estirando el espacio vertical donde sea
necesario para llenar la página.  Esto se usa con más frecuencia cuando
se hacen documentos de dos caras ya que las diferencias en las páginas
opuestas pueden ser evidentes.

   Si TeX no puede estirar satisfactoriamente el espacio vertical en una
página luego obtienes un mensaje como ‘Infralleno \vbox (maliciosos
10000) ocurrió mientras \output está activa’.  Si lo consigues, una
opción es cambiar a ‘\raggedbottom’ (see \raggedbottom).
Alternativamente, puedes ajustar el ‘textheight’ para hacer páginas
compatibles, o puedes agregar un poco de pegamento de estiramiento
vertical entre líneas o entre párrafos, como en
‘\setlength{\parskip}{0ex plus0.1ex}’.  Tu última opción es, en una
etapa de edición final, ajustar la altura de las páginas individuales
(see \enlargethispage).

   El estado ‘\flushbottom’ es el predeterminado solo si seleccionas la
opción ‘twocolumn’ de la clase documento (see Opciones de la clase documento),
y para índices hechos con ‘makeidx’.

5.4 ‘\raggedbottom’
===================

Hace que todas las páginas posteriores tengan la altura natural del
material en esa página; no se estirarán las longitudes verticales
elásticas.  Así, en documentos de dos caras las páginas opuestas pueden
tener diferentes alturas.  Este comando puede ir en cualquier punto del
cuerpo del documento.  See \flushbottom.

   Este es el valor predeterminado a menos que selecciones la opción
‘twocolumn’ de la clase documento (see Opciones de la clase documento).

5.5 Parámetros de composición de página
=======================================

‘\columnsep’
‘\columnseprule’
‘\columnwidth’
     La distancia entre las dos columnas, el ancho de una regla entre
     las columnas y el ancho de las columnas, cuando la opción de clase
     de documento ‘twocolumn’ está en vigor (see Opciones de la clase documento).
     See \twocolumn.

‘\headheight’
     Altura de la caja que contiene la cabecera móvil.  El valor
     predeterminado en las clases ‘article’, ‘report’ y ‘book’ son
     ‘12pt’, en todos los tamaños de letra.

‘\headsep’
     Distancia vertical entre la parte inferior de la línea de cabecera
     y la parte superior del texto principal.  El valor predeterminado
     en las clases ‘article’ y ‘report’ es ‘25pt’.  En la clase ‘book’
     el valor predeterminado es: si el documento está configurado en
     10pt, entonces es ‘0.25in’, y en 11pt o 12pt es ‘0.275in’.

‘\footskip’
     Distancia desde la línea base de la última línea de texto hasta la
     línea base de el pie de página.  El valor predeterminado en las
     clases ‘article’ y ‘report’ es ‘30pt’.  En la clase ‘book’ el valor
     predeterminado es: cuando el tamaño de letra es de 10 puntos, el
     predeterminado es ‘0.35in’, mientras que en 11pt es ‘0.38in’, y en
     12pt es ‘30pt’.

‘\linewidth’
     Ancho de la línea actual, disminuido para cada ‘lista’ anidada
     (see list).  Es decir, el valor nominal de ‘\linewidth’ es
     igual a ‘\textwidth’ pero para cada ‘\linewidth’ de la lista
     anidada se reduce por la suma del ‘\leftmargin’ de esa lista y
     ‘\rightmargin’ (see itemize).

‘\marginparpush’
‘\marginsep’
‘\marginparwidth’
     El espacio vertical mínimo entre dos notas marginales, el espacio
     horizontal entre el cuerpo del texto y las notas marginales, y el
     ancho horizontal de las notas.

     Normalmente, las notas marginales aparecen en el exterior de la
     página, pero la declaración ‘\reversemarginpar’ cambia eso (y
     ‘\normalmarginpar’ lo vuelve a cambiar).

     Los valores predeterminados para ‘\marginparpush’ tanto en ‘book’
     como en las clases ‘article’ son: ‘7pt’ si el documento se
     establece en 12pt, y ‘5pt’ si el documento está configurado en 11 o
     10 puntos.

     Para ‘\marginsep’, en la clase ‘article’ el valor predeterminado es
     ‘10pt’ excepto si el documento está configurado en 10pt y en modo
     de dos columnas donde el valor predeterminado es ‘11pt’.

     Para ‘\marginsep’ en la clase ‘book’, el valor predeterminado es
     ‘10pt’ en modo de dos columnas y ‘7pt’ en modo de una columna.

     Para ‘\marginparwidth’ tanto en las clases ‘book’ como ‘article’,
     en el modo de dos columnas, el valor predeterminado es el 60 % de
     ‘\paperwidth − \textwidth’, mientras que en el modo de una columna
     es el 50% de esa distancia.

‘\oddsidemargin’
‘\evensidemargin’
     La longitud de ‘\oddsidemargin’ es la distancia adicional entre el
     lado izquierdo de la página y el margen izquierdo del texto, en las
     páginas impares cuando se elige la opción de clase documento
     ‘twoside’ y en todas las páginas cuando ‘oneside’ está en vigor.
     Cuando ‘twoside’ está en vigor, en páginas pares, la distancia
     adicional a la izquierda es ‘\evensidemargin’.

     El valor predeterminado de LaTeX es que ‘\oddsidemargin’ es el 40%
     de la diferencia entre ‘\paperwidth’ y ‘\textwidth’, y
     ‘\evensidemargin’ es el resto.

‘\paperheight’
     La altura del papel, a diferencia de la altura del área de
     impresión.  Normalmente se establece con una opción de la clase
     documento, como en ‘\documentclass[a4paper]{article}’ (see
     Opciones de la clase documento).

‘\paperwidth’
     El ancho del papel, a diferencia del ancho del área de impresión.
     Normalmente se establece con una opción de la clase documento, como
     en ‘\documentclass[a4paper]{article}’ (see Opciones de la clase documento).

‘\textheight’
     La altura vertical normal del cuerpo de la página.  Si el documento
     se establece en un tamaño de letra nominal de 10pt entonces para un
     ‘article’ o ‘report’ el valor predeterminado es ‘43\baselineskip’,
     mientras que para un ‘book’ es ‘41\baselineskip’.  Con un tamaño de
     letra de 11pt, el valor predeterminado es ‘38\baselineskip’ para
     todas las clases de documento.  A 12pt es ‘36\baselineskip’ para
     todas las clases.

‘\textwidth’
     El ancho horizontal completo de todo el cuerpo de la página.  Para
     un documento ‘article’ o ‘report’, el valor predeterminado es
     ‘345pt’ cuando el tamaño de letra elegido es 10pt, el valor
     predeterminado es ‘360pt’ a 11pt, y es ‘390pt’ a 12pt.  Para un
     documento ‘book’, el valor predeterminado es ‘4.5in’ con un tamaño
     de letra de 10pt y ‘5in’ con 11pt o 12pt.

     En la salida de varias columnas, ‘\textwidth’ sigue siendo el ancho
     de todo el cuerpo de la página, mientras que ‘\columnwidth’ es el
     ancho de una columna (see \twocolumn).

     En las listas (see list), ‘\textwidth’ sigue siendo el ancho de
     todo el cuerpo de la página (y ‘\columnwidth’ el ancho de toda la
     columna), mientras que ‘\linewidth’ puede disminuir para las listas
     anidadas.

     Dentro de una minipágina (see minipage) o ‘\parbox’ (see
     \parbox), todos los parámetros relacionados con el ancho se
     establecen en el ancho especificado, y vuelven a sus valores
     normales al final de ‘minipage’ o ‘\parbox’.

‘\hsize’
     Esta entrada se incluye para completar: ‘\hsize’ es el parámetro
     primitivo TeX utilizado cuando el texto se divide en líneas.  No se
     debería usar en documentos LaTeX normales.

‘\topmargin’
     Espacio entre la parte superior de la página TeX (una pulgada desde
     la parte superior del papel, de manera predeterminada) y la parte
     superior de la cabecera.  El valor se calcula basado en muchos
     otros parámetros: ‘\paperheight − 2in − \headheight − \headsep −
     \textheight − \footskip’, y luego dividido por dos.

‘\topskip’
     Distancia mínima entre la parte superior del cuerpo de la página y
     la línea base de la primera línea de texto.  Para las clases
     estándar, el valor predeterminado es igual que el tamaño de letra,
     por ejemplo, ‘10pt’ en un tamaño de letra de 10pt.

5.6 ‘\baselineskip’ y ‘\baselinestretch’
========================================

El ‘\baselineskip’ es una longitud elástica (see Longitudes).  Da la
“inicial”, la distancia normal entre líneas en un párrafo, desde línea
base a línea base.

   Por lo general, los autores de documentos no cambian directamente
‘\baselineskip’ mientras escribían.  En su lugar, se establece mediante
el comando de selección ‘\fontsize’ del tamaño de letra de bajo nivel
(see comandos fontsize de bajo nivel).  El valor de ‘\baselineskip’
se restablece cada vez que sucede un cambio de tipo de letra, por lo que
cualquier cambio directo a ‘\baselineskip’ desaparecerá la próxima vez
que haya un cambio de letra.  Para cómo influir en el espaciado de
línea, ve la explicación de ‘\baselinestretch’ a continuación.

   Por lo general, el diseñador del tipo de letra asigna el tamaño de
letra y el salto de línea base.  Estos números son nominales en el
sentido de que si, por ejemplo, el archivo de estilo de una letra tiene
el comando ‘\fontsize{10pt}{12pt}’ entonces eso no significa que los
caracteres en el tipo de letra tenga una altura de 10pt; por ejemplo,
los paréntesis y las mayúsculas acentuadas pueden ser más altas.  Ni
tampoco significa que si las líneas están separadas menos de 12pt
entonces corren el riesgo de tocarse.  Más bien estos números son
juicios tipográficos.  (A menudo, el ‘\baselineskip’ es un veinte por
ciento más grande que el tamaño de la letra).

   El ‘\baselineskip’ no es una propiedad de cada línea sino del párrafo
completo.  Como resultado, texto grande en medio de un párrafo, como una
sola enorme ‘{\Huge Q}’, se aplastará en su línea.  TeX se asegurará de
que no raspe la línea de arriba, pero no cambiará el ‘\baselineskip’
para esa línea para hacer espacio extra arriba.  Para solucionarlo, usa
un ‘\strut’ (see \strut).

   El valor de ‘\baselineskip’ que usa TeX para el párrafo es el valor
en vigor en la línea en blanco o comando que finaliza la unidad párrafo.
Entonces, si un documento contiene este párrafo, sus líneas se
estrecharán juntas, en comparación con las líneas en los párrafos
circundantes.

     Mucha  gente ve  un salto  de  página entre  el texto  y una  ecuación
     mostrada como  mal estilo, por lo  que en efecto la  pantalla es parte
     del párrafo.  Porque esto se  muestra en footnotesize, todo el párrafo
     tiene  el  espaciado  de  línea  base que  coincide  con  ese  tamaño.
     {\footnotesize $$a+b = c$$}

   El proceso para crear párrafos es que cuando se agrega una nueva
línea, si la profundidad de la línea anterior más la altura de la nueva
línea es menor que ‘\baselineskip’, entonces, TeX inserta pegamento
vertical para compensar la diferencia.  Hay dos puntos finos.  El
primero es que si las líneas estarían demasiado juntas, más cerca que
‘\lineskiplimit’, entonces, TeX en su lugar usa ‘\lineskip’ como el
pegamento entre líneas.  El segundo es que TeX en realidad no usa la
profundidad de la línea anterior.  En su lugar, usa ‘\prev depth’, que
generalmente contiene esa profundidad.  Pero al comienzo del párrafo (o
cualquier lista vertical) o justo después de una regla, ‘\prevdepth’
tiene el valor -1000pt y este valor especial le dice a TeX que no
inserte ningún pegamento entre líneas en el inicio de párrafo.

   En las clases estándar ‘\lineskiplimit’ es 0pt y ‘\lineskip’ es 1pt.
Por el párrafo anterior entonces, la distancia entre líneas se puede
aproximar a cero, pero si llega a ser cero (o menos de cero), entonces
las líneas saltan a 1pt aparte.

   A veces los autores deben, con fines de edición, poner el documento
en espacio doble o espacio y medio.  La forma correcta de influir en la
distancia entre líneas es a través de ‘\baselinestretch’.  Escala
‘\baselineskip’ y tiene un valor predeterminado de 1.0.  Es un comando,
no una longitud, y no surte efecto hasta que ocurre el cambio del tipo
de letra, así que establece el factor de escala de esta manera:
‘\renewcommand{\baselinestretch}{1.5}\selectfont’.

   La forma más sencilla de cambiar el espacio entre líneas para un
documento es poner ‘\linespread{FACTOR}’ en el preámbulo.  Para espacios
dobles, toma FACTOR como 1.6 y como un espacio y medio usa 1.3.  Estos
números son aproximados: por ejemplo, dado que el ‘\baselineskip’ es
aproximadamente 1.2 veces el tamaño de letra, multiplicado por 1.6
suministra una proporción del tamaño de letra de salto de referencia de
aproximadamente 2.  (El comando ‘\linespread’ se define como
‘\renewcommand{\baselinestretch}{FACTOR}’ por lo que también no tendrá
efecto hasta que ocurra una configuración del tipo de letra.  Pero eso
siempre se lleva a cabo al comienzo de un documento, por lo que no es
necesario que lo sigas con ‘\selectfont’).

   Un enfoque más simple es el paquete ‘setspace’.  El ejemplo básico:

     \usepackage{setspace}
     \doublespacing  % o \onehalfspacing para 1.5

En el preámbulo, estos comenzarán el documento con ese tamaño.  Pero
también puedes usar estas declaraciones en el cuerpo del documento para
cambiar el espacio desde ese punto en adelante, y en consecuencia hay
‘\singlespacing’ para devolver el espacio a la normalidad.  En el cuerpo
del documento, una mejor práctica que usar las declaraciones es usar
entornos, como ‘\begin{doublespace} ... \end{doublespace}’.  El paquete
también tiene comandos para hacer espaciado arbitrario:
‘\setstretch{FACTOR}’ y ‘\begin{spacing}{FACTOR} ... \end{spacing}’.
Este paquete también mantiene el interlineado de espacio simple en
lugares donde eso es típicamente deseable, como notas al pie y
subtítulos de figura.  Consulta la documentación del paquete.

5.7 Flotantes
=============

Algunos elementos tipográficos, como figuras y tablas, no se pueden
romper a través de las páginas.  Deben estar escritos fuera del flujo
normal de texto, por ejemplo, flotando en la parte superior de una
página posterior.

   LaTeX puede tener varias clases diferentes de material flotante.  El
valor predeterminado son las dos clases, ‘figure’ (see figure) y
‘table’ (see table), pero puedes crear una nueva clase con el
paquete ‘float’.

   Dentro de cualquier clase float, LaTeX siempre respeta el orden, de
modo que la primera figura en un documento fuente debe estar compuesta
tipográficamente antes que la segunda figura.  Sin embargo, LaTeX puede
mezclar las clases, por lo que puede suceder que mientras que la primera
tabla aparece en la fuente antes de la primera figura, aparece en la
salida después de ella.

   La colocación de flotantes está sujeta a parámetros, que se indican a
continuación, que limitan el número de flotantes que pueden aparecer en
la parte superior de una página, y el fondo, etc.  Si hay tantos
flotantes en cola que los límites impiden para que no encajen en una
página, entonces LaTeX coloca lo que puede y aplaza el resto a la página
siguiente.  De esta manera, los flotantes pueden terminar siendo
tipografíados lejos de su lugar en la fuente.  En particular, un
flotante que es grande puede migrar al final del documento.  En cuyo
caso, porque todos los flotantes en una clase deben aparecer en orden
secuencial, cada flotante siguiente en esa clase también aparece al
final.

   Además de cambiar los parámetros, para cada flotante puedes ajustar
dónde el algoritmo de colocación flotante intenta colocarlo usando su
argumento PLACEMENT.  Los valores posibles son una secuencia de las
letras debajo.  El valor predeterminado para ‘figure’ y ‘table’, en
ambas clases, ‘article’ y ‘book’, es ‘tbp’.

‘t’
     (Top)—en la parte superior de una página de texto.

‘b’
     (Bottom)—en la parte inferior de una página de texto.  (Sin
     embargo, ‘b’ no es permitido para flotantes de ancho completo
     (‘figure*’) con producción en doble columna.  Para mejorar esto,
     usa ‘stfloats’ o el paquete ‘dblfloatfix’, pero ve la discusión en
     las advertencias en las preguntas frecuentes:
     <https://www.texfaq.org/FAQ-2colfloat>.

‘h’
     (Here)—en la posición en el texto donde el entorno ‘figure’
     aparece.  Sin embargo, ‘h’ no está permitido por sí mismo; ‘t’ se
     añade automáticamente.

     Para forzar absolutamente que un flotante aparezca “aquí”, puedes
     ‘\usepackage{float}’ y usa el especificador ‘H’ que define.  Para
     obtener más información, consulta la entrada de preguntas
     frecuentes en <https://www.texfaq.org/FAQ-figurehere>.

‘p’
     (Página de flotantes)—en una “página flotante” separada, que es una
     página que no contiene texto, solo flotantes.

‘!’
     Se utiliza además de uno de los anteriores; solo para este
     flotante, LaTeX ignora las restricciones tanto en el número de
     flotantes que pueden aparecer y las cantidades relativas de texto
     flotante y no flotante en la página.  El especificador ‘!’ _no_
     significa “pon el flotante aquí”, ve más arriba.

   Nota: el orden en que aparecen las letras en el argumento PLACEMENT
no cambia el orden en que LaTeX intenta colocar el flotante; por
ejemplo, ‘btp’ tiene el mismo efecto que ‘tbp’.  Todo lo que PLACEMENT
hace es que si una letra no está presente entonces el algoritmo no
intenta esa ubicación.  Por lo tanto, el valor predeterminado de LaTeX
de ‘tbp’ es probar cada ubicación excepto colocar el flotante donde
ocurre en la fuente.

   Para evitar que LaTeX mueva flotantes al final del documento o un
capítulo puede usar un comando ‘\clearpage’ para comenzar una nueva
página e inserta todos los flotantes pendientes.  Si no deseas un salto
de página, puedes usar el paquete ‘afterpage’ y emitir
‘\afterpage{\clearpage}’.  Esto esperará hasta que la página actual haya
terminado y entonces vuelca todos los flotantes pendientes.

   LaTeX puede escribir un flotante antes de donde aparece en la fuente
(aunque en la misma página de salida) si hay un especificador ‘t’ en el
parámetro PLACEMENT.  Si esto no se desea, y se elimina la ‘t’ no es
aceptable ya que evita que se coloque el flotante en la parte superior
de la página siguiente, lo puedes evitar usando el paquete ‘flafter’ o
usando el comando ‘\suppressfloats[t]’, lo que provoca flotantes para la
posición superior en esta página para pasar a la página siguiente.

   Parámetros relativos a las fracciones de páginas ocupadas por float y
texto no flotante (cámbialos con ‘\renewcommand{PARAMETER}{DECIMAL ENTRE
0 Y 1}’):

‘\bottomfraction’
     La fracción máxima de la página que se permite sea ocupada por
     flotantes en el fondo; predeterminado ‘.3’.

‘\floatpagefraction’
     La fracción mínima de una página flotante que debe estar ocupada
     por flotantes; predeterminado ‘.5’.

‘\textfraction’
     Fracción mínima de una página que debe ser texto; si los flotantes
     también ocupan mucho espacio para conservar tanto texto, los
     flotantes se moverán a una pagina diferente.  El valor
     predeterminado es ‘.2’.

‘\topfraction’
     Fracción máxima en la parte superior de una página que se puede
     ocupar antes por flotantes; predeterminado ‘.7’.

   Parámetros relacionados con el espacio vertical alrededor de los
flotantes (cámbialos con un comando de la forma
‘\setlength{PARAMETER}{EXPRESIÓN LENGTH}’):

‘\floatsep’
     Espacio entre flotantes en la parte superior o inferior de una
     página; predefinido ‘12pt más 2pt menos 2pt’.

‘\intextsep’
     Espacio encima y debajo de un flotante en medio del texto
     principal; predeterminado ‘12pt plus2pt minus2pt’ para documentos
     de 10 y 11 puntos, y ‘14pt plus4pt minus4pt’ para documentos de 12
     puntos.

‘\textfloatsep’
     Espacio entre el último (primer) flotante en la parte superior
     (inferior) de una página; predeterminado ‘20pt plus2pt minus4pt’.

   Contadores relacionados con el número de flotantes en una página
(cámbialos con un comando de la forma ‘\setcounter{CTRNAME}{NÚMERO
NATURAL}’):

‘bottomnumber’
     Número máximo de flotantes que pueden aparecer en la parte inferior
     de una página de texto; predeterminado 1.

‘dbltopnumber’
     Número máximo de flotantes de tamaño completo que pueden aparecer
     en la parte superior de una página de dos columnas; predeterminado
     2.

‘topnumber’
     Número máximo de flotantes que pueden aparecer en la parte superior
     de una página de texto; predeterminado 2.

‘totalnumber’
     Número máximo de flotantes que pueden aparecer en una página de
     texto; predeterminado 3.

   La entrada principal de preguntas frecuentes TeX relacionada con los
flotantes <https//www.texfaq.org/FAQ-floats> contiene sugerencias para
relajar los parámetros predeterminados de LaTeX para reducir el problema
de los flotantes empujados hasta el final.  Una explicación completa del
algoritmo de colocación de flotantes se encuentra en el artículo de
Frank Mittelbach “Cómo influir en la posición de los entornos flotantes
como figure y table en LaTeX?”
(<https//www.latex-project.org/publications/2014-FMi-TUB-tb111mitt-float-placement.pdf>).

5.7.1 ‘\caption’
----------------

Sinopsis:

     \caption{CAPTION-TEXT}

o

     \caption[SHORT-CAPTION-TEXT]{CAPTION-TEXT}

   Crea un título para un entorno flotante, como ‘figure’ o entorno
‘table’ (see figure o table).

   En este ejemplo, LaTeX coloca un título debajo del espacio en blanco
vertical, espacio que deja el autor para la posterior inclusión de una
imagen.

     \begin{figure}
       \vspace*{1cm}
       \caption{Alonzo Cushing, Batería A, 4ª artillería de EE. UU.}
       \label{fig:CushingPic}
     \end{figure}

El comando ‘\caption’ etiquetará CAPTION-TEXT con algo como ‘Figura 1:’
para un artículo o ‘Figura 1.1:’ para un libro.  El texto está centrado
si está más corto que el ancho del texto, o establecido como un párrafo
sin sangría si toma más de una línea.

   Además de colocar el CAPTION-TEXT en la salida, el comando ‘\caption’
también guarda esa información para usarla en una lista de figuras o
lista de tablas (see Tabla de contenido etc.).

   Aquí el comando ‘\caption’ usa el comando opcional
SHORT-CAPTION-TEXT, para que el texto más corto aparezca en la lista de
tablas, en lugar del CAPTION-TEXT más largo.

     \begin{table}
       \centering
       \begin{tabular}{|*{3}{c}|}
         \hline
         4  &9  &2 \\
         3  &5  &7 \\
         8  &1  &6 \\
         \hline
       \end{tabular}
       \caption[\textit{Lo Shu} cuadrado mágico]{%
         The \textit{Lo Shu} que es único entre
         cuadrados de orden tres hasta rotación y reflexión.}
       \label{tab:LoShu}
     \end{table}

LaTeX etiquetará CAPTION-TEXT con algo como ‘Tabla 1:’ para un artículo
o ‘Tabla 1.1:’ para un libro.

   El título puede aparecer en la parte superior de la ‘figura’ o
‘tabla’.  Por ejemplo, eso sucedería en el ejemplo anterior poniendo el
‘\caption’ entre el ‘\centering’ y el ‘\begin{tabular}’.

   Los distintos entornos flotantes se numeran por separado, de forma
predeterminada.  Eso es ‘\caption’ que actualiza el contador, por lo que
cualquier ‘\label’ debe ir después del ‘\caption’.  El contador para el
entorno ‘figure’ se llama ‘figure’, y de manera similar el contador para
el entorno ‘table’ es ‘table’.

   El texto que se pondrá en la lista de figuras o lista de tablas es
argumento móvil.  Si recibes el error LaTeX ‘! Argumento de \@caption
tiene un extra}’, entonces debes poner ‘\protect’ delante de cualquier
comando frágil.  See \protect.

   El paquete ‘caption’ tiene muchas opciones para ajustar cómo aparece
el título, por ejemplo, cambiando el tamaño del texto, haciendo que el
título sea colgar texto en lugar de establecerlo como un párrafo, o
hacer el título siempre establecido como un párrafo en lugar de centrado
cuando es corto.

6 Seccionado
************

Estructura tu texto en divisiones: partes, capítulos, secciones, etc.
Todos los comandos de seccionado tienen la misma forma, una de:

     SECTIONING-COMMAND{TITLE}
     SECTIONING-COMMAND*{TITLE}
     SECTIONING-COMMAND[TOC-TITLE]{TITLE}

Por ejemplo, declarar el comienzo de una subsección como con
‘\subsection{Motivación}’.

   La tabla tiene cada SECTIONING-COMMAND en LaTeX.  Todos están
disponibles en todas las clases de documentos estándar de LaTeX ‘book’,
‘report’ y ‘article’, excepto que ‘\chapter’ no está disponible en
‘article’.

Unidad de          Comando            Nivel
seccionado
--------------------------------------------------------------------
Parte              ‘\part’            -1 (‘book’, ‘report’), 0
                                      (‘article’)
Capítulo           ‘\chapter’         0
Sección            ‘\section’         1
Subsección         ‘\subsection’      2
Subsubsección      ‘\subsubsection’   3
Párrafo            ‘\paragraph’       4
Subpárrafo         ‘\subparagraph’    5

   Todos estos comandos tienen una forma ‘*’ que imprime TÍTULO como de
costumbre pero no lo numera y no hace una entrada en la tabla de
contenido.  Un ejemplo de cómo usar esto es para un apéndice en un
‘article’.  Las entradas ‘\appendix\section{Appendix}’ da como resultado
‘Apéndice A’ (see \appendix).  Puedes perder la numeración ‘A’
ingresando en su lugar ‘\section*{Appendix}’ (los artículos a menudo
omiten una tabla de contenido y tienen encabezados de página simples
para que las otras diferencias del comando ‘\section’ puedan no
importar).

   El título de la sección TÍTULO proporciona el título en el texto
principal, pero también puede aparecer en la tabla de contenido y en el
encabezado o pie (see Estilos de página).  Es posible que no desees
el mismo texto en estos lugares como en el texto principal.  Todos estos
comandos tienen un argumento TOC-TITLE opcional para esos otros lugares.

   El número de nivel en la tabla anterior determina qué unidades
seccionales son numeradas, y que aparecen en la tabla de contenido.  Si
los comandos de seccionado LEVEL son menores o iguales que el valor del
contador ‘secnumdepth’ entonces los títulos para este comando de
seccionado serán numerados (see Seccionado/secnumdepth).  Y, si
LEVEL es menor que o igual al valor del contador ‘tocdepth’ luego la
tabla de contenido tendrá una entrada para esta unidad de seccionado
(see Seccionado/tocdepth).

   LaTeX espera que antes de tener una ‘\subsection’ tengas una
‘\section’ y, en un documento de clase ‘book’, que antes de una
‘\section’ tendrás un ‘\chapter’.  De lo contrario, puedes obtener algo
así como una subsección numerada ‘3.0.1’.

   LaTeX te permite cambiar la apariencia de las unidades seccionales.
Como un ejemplo simple, puedes cambiar la numeración de la sección a
letras mayúsculas con esto (en el preámbulo):
‘\renewcommand\thesection{\Alph{section}}’ .  (see \alph \Alph \arabic \roman \Roman \fnsymbol).
CTAN tiene muchos paquetes que facilitan
este ajuste, en particular ‘titlesec’.

   Dos contadores se relacionan con la apariencia de los encabezados
realizados por comandos de seccionado.

‘secnumdepth’
     Controla qué unidades de seccionado están numeradas.  Poniendo el
     contador con ‘\setcounter{secnumdepth}{LEVEL}’ suprimirá numeración
     de seccionado a cualquier profundidad superior a LEVEL (see
     \setcounter).  Consulta la tabla anterior para ver los números de
     nivel.  Por ejemplo, si ‘secnumdepth’ es 1 en un ‘article’ entonces
     un comando ‘\section{Introducción}’ producirá una salida como ‘1
     Introducción’ mientras que ‘\subsection{Discusión}’ produce una
     salida como ‘Discusión’, sin número.  LaTeX ‘secnumdepth’
     predeterminado es 3 en la clase ‘article’ y 2 en las clases ‘book’
     y ‘report’.

‘tocdepth’
     Controla qué unidades de seccionado se enumeran en la tabla de
     contenido.  La configuración ‘\setcounter{tocdepth}{LEVEL}’ hace
     que las unidades de Seccionado en LEVEL sean las más pequeñas
     enumeradas (see \setcounter).  Consulta la tabla anterior para
     ver los números de nivel.  Por ejemplo, si ‘tocdepth’ es 1 entonces
     la tabla de contenido enumera secciones pero no subsecciones.
     Predeterminado de LaTeX ‘tocdepth’ es 3 en la clase ‘article’ y 2
     en la clase ‘book’ y ‘report’.

6.1 ‘\part’
===========

Sinopsis, una de:

     \part{TÍTULO}
     \part*{TÍTULO}
     \part[TOC-TITLE]{TÍTULO}

   Inicia una parte del documento.  Las clases estándar de LaTeX ‘book’,
‘report’ y ‘article’, todas tienen este comando.

   Esto produce una parte del documento, en un libro.

     \part{VOLUMEN I \\
            MEMORIAS PERSONALES DE U.\ S.\ GRANT}
     \chapter{ANCESTRIA--NACIMIENTO--INFANCIA.}
     Mi familia  es estadounidense, y  lo ha sido durante  generaciones, en
     todas sus ramas, directas y colaterales.

   En cada clase estándar, el comando ‘\part’ genera un número de pieza
como ‘Parte I’, solo en su línea, en negrita y en grandes letras.
Entonces LaTeX genera TÍTULO, también solo en su línea, en negrita y en
letra aún más grande.  En la clase ‘book’, el LaTeX predeterminado pone
cada parte sola en su propia página.  Si el libro tiene dos caras
entonces LaTeX saltará una página si es necesario para tener la nueva
parte en una página impar.  En ‘report’ nuevamente está solo en una
página, pero LaTeX no forzará una página impar.  En un ‘article’ LaTeX
no lo coloca en una página nueva, sino que genera el número de parte y
título de la parte en la página principal del documento.

   La forma ‘*’ muestra TÍTULO pero no muestra el número de parte, no
incrementa el contador ‘parte’, y no produce ninguna entrada de tabla de
contenido.

   El argumento opcional TOC-TITLE aparecerá como el título de la parte
en la tabla de contenido (see Tabla de contenido etc.) y, al
ejecutar cabeceras (see Estilos de página).  Si no está presente,
entonces TÍTULO estará ahí.  Este ejemplo pone un salto de línea en
TÍTULO pero omite el salto en la tabla de contenido.

     \part[Arriba desde abajo; mi vida]{Arriba desde abajo\\ mi vida}

   Para determinar qué unidades seccionales están numeradas y cuáles
aparecen en la tabla de contenido, el número de nivel de una parte es -1
(see Seccionado/secnumdepth y Seccionado/tocdepth).

   En la clase ‘article’, si un párrafo sigue inmediatamente a la parte
título entonces no está sangrado.  Para obtener una sangría, puedes usar
el paquete ‘indentfirst’.

   Un paquete para cambiar el comportamiento de ‘\part’ es ‘titlesec’.
Consulta su documentación en CTAN.

6.2 ‘\chapter’
==============

Sinopsis, una de:

     \chapter{TÍTULO}
     \chapter*{TÍTULO}
     \chapter[TOC-TITLE]{TÍTULO}

   Inicia un capítulo.  Las clases estándar de LaTeX ‘book’ y ‘report’
tienen este comando pero no ‘article’.

   Esto produce un capítulo.

     \chapter{Acechantes}

     Llámame  Ismael.    Hace  algunos  años---no  importa   cuánto  tiempo
     exactamente---teniendo  poco dinero  en mi  bolsa  o nada,  y nada  en
     particular que me  interese en tierra, pensé en navegar  un poco y ver
     la parte acuosa del mundo.

   El valor predeterminado de LaTeX comienza cada capítulo en una nueva
página, una página impar si el documento tiene dos caras.  Produce un
capitulo número como ‘Capítulo 1’ en negrita grande (el tamaño es
‘\huge’).  Luego pone TÍTULO en una nueva línea, en tipo negrita que es
aún más grande (tamaño ‘\Huge’).  También incrementa el contador
‘chapter’, agrega una entrada a la tabla de contenido (see Tabla de contenido etc.),
y establece la cabecera de información en ejecución
(see Estilos de página).

   La forma ‘*’ muestra TÍTULO en una nueva línea, en negrita.  Pero no
muestra el número de capítulo, ni incrementa el contador ‘chapter’, no
produce una entrada de tabla de contenido y no afecta la cabecera en
ejecución.  (Si usas el estilo de página ‘headings’ en un documento de
dos caras, entonces la cabecera será del capítulo anterior).

     \chapter*{Preamble}

   El argumento opcional TOC-TITLE aparecerá como título del capítulo en
la tabla de contenido (see Tabla de contenido etc.) y en ejecutar
cabeceras (see Estilos de página).  Si no está presente entonces
TÍTULO estará allí.  Esto muestra el nombre completo en el título del
capítulo,

     \chapter[Weyl]{Hermann Klaus Hugo (Peter) Weyl (1885--1955)}

pero solo ‘Weyl’ en la página de contenido.  Esto pone un salto de línea
en el título, pero eso no funciona bien con las cabeceras en ejecución,
por lo que omite el salto en el contenido.

     \chapter[Dado todo; mi historia]{Dado todo\\ mi historia}

   Para determinar qué unidades seccionales están numeradas y cuáles
aparecen en la tabla de contenido, el número de nivel de un capítulo
es 0 (see Seccionado/secnumdepth y Seccionado/tocdepth).

   El párrafo que sigue al título del capítulo no tiene sangría, al
igual que una práctica tipográfica estándar.  Para obtener una sangría,
usa el paquete ‘indentfirst’.

   Puedes cambiar lo que se muestra para el número de capítulo.  Para
cambiarlo a algo como ‘Conferencia 1’, pon en el preámbulo
‘\renewcommand{\chaptername}{Conferencia}’ o esto (see \makeatletter y \makeatother).

     \makeatletter
     \renewcommand{\@chapapp}{Conferencia}
     \makeatother

Para hacer este cambio debido al idioma principal de el documento,
consulta el paquete ‘babel’.

   En un documento de dos caras, LaTeX coloca un capítulo en una página
impar, si es necesario dejar una página par que esté en blanco excepto
por cualquier cabecera en ejecución.  Para dejar esa página
completamente en blanco, see \clearpage y \cleardoublepage.

   Para cambiar el comportamiento del comando ‘\chapter’, puedes copiar
su definición del archivo de formato LaTeX y realizar ajustes.  Pero
también hay muchos paquetes en CTAN que abordan esto.  Uno es
‘titlesec’.  Ve su documentación, pero el ejemplo a continuación da un
sentido de lo que puede hacer.

     \usepackage{titlesec}   % en el preámbulo
     \titleformat{\chapter}
       {\Huge\bfseries}  % formato del título
       {}                % etiqueta, tal como 1.2 para una subsección
       {0pt}             % longitud de la separación entre la etiqueta y
                           % el título
       {}                % gancho antes del código

Esto omite el número de capítulo ‘Capítulo 1’ de la página pero a
diferencia de ‘\chapter*’ mantiene el capítulo en la tabla de contenido
y la ejecución de cabeceras.

6.3 ‘\section’
==============

Sinopsis, una de:

     \section{TÍTULO}
     \section*{TÍTULO}
     \section[TOC-TITLE]{TÍTULO}

   Inicia una sección.  Las clases estándar ‘article’ de LaTeX, ‘book’ y
‘report’ tienen este comando.

   Esto produce una sección.

     En esta  Parte tendemos a estar  más interesados ​​en la  función, en el
     comportamiento de  entrada-salida, que en los  detalles de implementar
     ese comportamiento.

     \section{Máquinas de Turing}

     A  pesar de  este deseo  de minimizar  la implementación,  seguimos el
     enfoque de  A~Turing de  que el  primer paso  hacia la  definición del
     conjunto de funciones computables es reflexionar sobre los detalles de
     lo que pueden hacer los mecanismos.

   Para las clases estándar de LaTeX ‘book’ y ‘report’ la salida
predeterminada es como ‘1.2 TÍTULO’ (para capítulo 1, sección 2), solo
en su línea y alineado a la izquierda, en negrita y letra más grande (el
tamaño de letra es ‘\Large’).  Lo mismo se sostiene en ‘article’ excepto
que no hay capítulos en esa clase por lo que parece ‘2 TÍTULO’.

   La forma ‘E*’ muestra TÍTULO.  Pero no muestra el número de sección,
no incrementa el contador ‘section’, no produce ninguna entrada en la
tabla de contenido y no afecta la cabecera en ejecución.  (Si usas el
estilo de página ‘headings’ en un documento de dos caras, entonces el
encabezado será de la parte anterior).

   El argumento opcional TOC-TITLE aparecerá como título de la sección
en la tabla de contenido (see Tabla de contenido etc.) y encabezados
en ejecución (see Estilos de página).  Si no está presente entonces
TÍTULO estará allí.  Esto muestra el nombre completo en el título de la
sección:

     \section[Isabel~II]{Isabel Segunda,
       por la Gracia de Dios Reina del Reino Unido,
       Canadá y sus otros reinos y territorios,
       Jefe de la Commonwealth, Defensor de la Fe.}

pero solo ‘Isabel II’ en la página de contenido y en los encabezados.
Esto tiene un salto de línea en TITLE pero eso no funciona con
encabezados por lo que se omite de los contenidos y encabezados.

     \section[La verdad es que hice trampa; la historia de mi vida]{La verdad es
       que hice trampa\\la historia de mi vida}

   Para determinar qué unidades seccionales están numeradas y cuáles
aparecen en la tabla de contenido, el número de nivel de una sección
es 1 (see Seccionado/secnumdepth y Seccionado/tocdepth).

   El párrafo que sigue al título de la sección no tiene sangría, al
igual que una práctica tipográfica estándar.  Una forma de obtener una
sangría es usar el paquete ‘indentfirst’.

   En general, para cambiar el comportamiento del comando ‘\section’,
hay varias opciones.  Una es el comando ‘\@startsection’ (see
\@startsection).  También hay muchos paquetes en CTAN que abordan
esto, incluido ‘titlesec’.  Ve la documentación pero el siguiente
ejemplo da una idea de lo que pueden hacer.

     \usepackage{titlesec}   % en el preámbulo
     \titleformat{\section}
       {\normalfont\Large\bfseries}  % formato del título
       {\makebox[1pc][r]{\thesection\hspace{1pc}}} % etiqueta
       {0pt}                   % Longitud de la separación entre la etiqueta y el título
       {}                      % gancho antes del código
     \titlespacing*{\section}
       {-1pc}{18pt}{10pt}[10pc]

Eso pone el número de sección en el margen.

6.4 ‘\subsection’
=================

Sinopsis, una de:

     \subsection{TITLE}
     \subsection*{TITLE}
     \subsection[TOC-TITLE]{TITLE}

   Inicia una subsección.  Las clases estándar ‘article’ de LaTeX,
‘book’ y ‘report’ tienen este comando.

   Esto produce una subsección.

     Mostraremos que hay más funciones que las máquinas de Turing y que por
     tanto, algunas funciones no tienen máquina asociada.

     \subsection{Cardinalidad}

     Comenzaremos con  dos paradojas  que dramatizan  el desafío  a nuestra
     intuición planteado al comparar los tamaños de conjuntos infinitos.

   Para las clases estándar de LaTeX ‘book’ y ‘report’ la salida
predeterminada es como ‘1.2.3 TITLE’ (para capítulo 1, sección 2,
subsección 3), solo en su línea y alineado a la izquierda, en negrita y
una letra más grande (el tamaño de letra es ‘\large’).  Lo mismo
contiene ‘article’ excepto que no hay capítulos en esa clase por lo que
parece ‘2.3 TÍTULO’.

   La forma ‘E*’ muestra TÍTULO.  Pero no muestra el número de
subsección, no incrementa el contador ‘subsection’ y no produce ninguna
entrada en la tabla de contenido.

   El argumento opcional TOC-TITLE aparecerá como título de la
subsección en la tabla de contenido (see Tabla de contenido etc.).
Si esto no está presente, TITLE estará allí.  Este muestra el texto
completo en el título de la subsección:

     \subsection[$\alpha,\beta,\gamma$ paper]{\textit{El origen de
       Elementos químicos} por R.A.~Alpher, H.~Bethe y G.~Gamow}

pero solo ‘α,β,γ paper’ en la página de contenido.

   Para determinar qué unidades seccionales están numeradas y cuáles
aparecen en la tabla de contenido, el número de nivel de una subsección
es 2 (see Seccionado/secnumdepth y Seccionado/tocdepth).

   El párrafo que sigue al título de la subsección no tiene sangría, al
igual que una práctica tipográfica estándar.  Una forma de obtener una
sangría es usar el paquete ‘indentfirst’.

   Hay varias maneras de cambiar el comportamiento del comando
‘\subsection’.  Una es el comando ‘\@startsection’ (see
\@startsection).  También hay muchos paquetes en CTAN que abordan
esto, incluido ‘titlesec’.  Ve la documentación pero el siguiente
ejemplo da una idea de lo que pueden hacer.

     \usepackage{titlesec}   % en el preámbulo
     \titleformat{\subsection}[runin]
       {\normalfont\normalsize\bfseries}  % formato del título
       {\thesubsection}                   % etiqueta
       {0.6em}                            % espacio entre la etiqueta y
                                            % el título
       {}                                 % gancho antes del código

Eso pone el número de subsección y TITLE en la primera línea de texto.

6.5 ‘\subsubsection’, ‘\paragraph’, ‘\subparagraph’
===================================================

Sinopsis, una de:

     \subsubsection{TITLE}
     \subsubsection*{TITLE}
     \subsubsection[TOC-TITLE]{TITLE}

o una de:

     \paragraph{TITLE}
     \paragraph*{TITLE}
     \paragraph[TOC-TITLE]{TITLE}

o una de:

     \subparagraph{TITLE}
     \subparagraph*{TITLE}
     \subparagraph[TOC-TITLE]{TITLE}

   Inicia una subsección, párrafo o subpárrafo.  Las clases estandar de
LaTeX ‘article’, ‘book’ y ‘report’ tienen todas estos comandos, aunque
no son de uso común.

   Esto produce una subsección.

     \subsubsection{Compresores de anillos de pistón: rendimiento estructural}

     Proporciona     ensamblajes     de    revestimiento     de     paredes
     exteriores/interiores capaces  de resistir los  efectos de la  carga y
     las tensiones  de anillos de pistón  de motor de gasolina  de grado de
     consumo.

   La salida predeterminada de cada uno de los tres no cambia sobre las
clases LaTeX estándar ‘article’, ‘book’ y ‘report’.  Para
‘\subsubsection’ el TITLE está solo en su línea, en negrita y tipo de
letra de tamaño normal.  Para ‘\paragraph’ el TITLE está alineado con el
texto, sin sangría, en negrita y letra de tamaño normal.  Para
‘\subparagraph’ el TITLE está en línea con el texto, con sangría de
párrafo, en negrita y letra de tamaño normal (Debido a que un ‘article’
no tiene capítulos, sus subsubsecciones son numeradas y así se ve como
‘1.2.3 TITLE’, por sección 1, subsección 2 y subsubsección 3.  Las otras
dos divisiones no están numeradas).

   La forma ‘E*’ muestra TÍTULO.  Pero no incrementa el contador
asociado y no produce entrada en la tabla de contenido (y no muestra el
número de ‘\subsubsection’).

   El argumento opcional TOC-TITLE aparecerá como el título de la
división en la tabla de contenido (see Tabla de contenido etc.).  Si
esto no está presente, TITLE estará allí.

   Para determinar qué unidades seccionales están numeradas y cuáles
aparecen en la tabla de contenido, el número de nivel de una
subsubsección es 3, de un párrafo es 4, y de un subpárrafo es 5 (see
Seccionado/secnumdepth y Seccionado/tocdepth).

   El párrafo que sigue al título de la subsubsección no tiene sangría,
al igual que una práctica tipográfica estándar.  Una forma de obtener
una sangría es usar el paquete ‘indentfirst’.

   Hay varias formas de cambiar el comportamiento de estos comandos.
Una es el comando ‘\@startsection’ (see \@startsection).  También
hay muchos paquetes en CTAN que abordan esto, incluyendo ‘titlesec’.
Consulta la documentación en CTAN.

6.6 ‘\appendix’
===============

Sinopsis:

     \appendix

   Este no produce directamente ningún resultado.  Pero en un documento
‘book’ o ‘report’ declara que los subsiguientes comandos ‘\chapter’
comienzan un apéndice.  En un artículo hace lo mismo, para los comandos
‘\section’.  También restablece los contadores ‘chapter’ y ‘section’ a 0
en un libro o informe, y en un artículo restablece los contadores
‘section’ y ‘subsection’.

   En este libro

     \chapter{Uno}  ...
     \chapter{Dos}  ...
      ...
     \appendix
     \chapter{Tres}  ...
     \chapter{Cuatro}  ...

los dos primeros generarán una salida numerada ‘Capítulo 1’ y ‘Capítulo
2’.  Después del ‘\appendix’ la numeración será ‘Apéndice A’ y ‘Apéndice
B’.  See Plantilla de libro Larger, para otro ejemplo.

   El paquete ‘appendix’ agrega el comando ‘\appendixpage’ para poner
‘Apéndices’ separados en el cuerpo del documento antes del primer
apéndice y el comando ‘\addappheadtotoc’ hace lo mismo en la tabla de
contenido.  Puedes restablecer el nombre ‘Apéndices’ con un comando como
‘\renewcommand{\appendixname}{Especificación}’, así como una serie de
otras características.  Consulta la documentación en CTAN.

6.7 ‘\frontmatter’, ‘\mainmatter’, ‘\backmatter’
================================================

Sinopsis, una o más de:

     \frontmatter
     ...
     \mainmatter
     ...
     \backmatter
     ...

   Da formato a un documento de clase ‘book’ de forma diferente según la
parte del documento que se está produciendo.  Los tres comandos son
opcionales.

   Tradicionalmente, la portada de un libro contiene elementos como la
página de título, un resumen, un índice, un prefacio, una lista de
anotaciones, una lista de figuras y una lista de tablas.  (Algunas de
estas páginas de asuntos frontales, como la página del título,
tradicionalmente no están numeradas).  El material anterior puede
contener cosas tales como un glosario, notas, una bibliografía y un
índice.

   El comando ‘\frontmatter’ hace que las páginas se numeren en romanos
minúsculas, y hace que los capítulos no estén numerados, aunque el
título de cada capítulo aparece en la tabla de contenido; si usas otros
comandos de seccionado aquí, usa la versión ‘*’-versión (see
Seccionado).

   El comando ‘\mainmatter’ cambia el comportamiento de nuevo a la
versión esperada y restablece el número de página.

   El comando ‘\backmatter’ deja la numeración de páginas sola pero
cambia los capítulos de nuevo a no estar numerados.

   See Plantilla de libro Larger, por ejemplo, usando estos tres
comandos.

6.8 ‘\@startsection’, composición tipográfica de encabezados de unidades seccionales
====================================================================================

Sinopsis:

     \@startsection{NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}

   Se usa para ayudar a redefinir el comportamiento de los comandos que
comienzan a seccionar divisiones como ‘\section’ o ‘\subsection’.

   Ten en cuenta que el paquete ‘titlesec’ facilita la manipulación de
la sección.  Además, mientras que la mayoría de los requisitos para los
comandos de seccionado los puede satisfacer ‘\@startsection’, algunos no
pueden.  por ejemplo, en las clases LaTeX estándar ‘book’ y ‘report’ los
comandos ‘\chapter’ y ‘\report’ no se construyen de esta forma.  Hacer
un comando de este tipo, es posible que desees utilizar el comando
‘\secdef’.

   Técnicamente, ‘\@startsection’ tiene la forma

     \@startsection{NAME}
       {LEVEL}
       {INDENT}
       {BEFORESKIP}
       {AFTERSKIP}
       {STYLE}*[TOCTITLE]{TITLE}

por lo tanto emite

     \renewcommand{\section}{\@startsection{NAME}
       {LEVEL}
       {INDENT}
       {BEFORESKIP}
       {AFTERSKIP}
       {STYLE}}

redefine ‘\section’ manteniendo su forma de llamada estándar
‘\section*[TOCTITLE]{TITLE}’ (en el que, como recordatorio, el star ‘*’
es opcional).  See Seccionado.  Esto implica que cuando escribes un
comando como ‘\renewcommand{\section}{...}’, el ‘\@startsection{...}’
debe ser el último en la definición.  Ve los ejemplos a continuación.

NAME
     Nombre del contador utilizado para numerar la cabecera de
     seccionado.  Este contador se debe definir por separado.  Lo más
     común es que esto sea ‘sección’, ‘subsección’ o ‘párrafo’.  Aunque
     en esos casos el nombre del contador es el mismo que el comando de
     seccionado en sí mismo, no tienes que usar el mismo nombre.

     Entonces ‘\the’NAME muestra el número del título y ‘\’NAME‘mark’ es
     para los encabezados de página.  Ve el tercer ejemplo a
     continuación.

LEVEL
     Un número entero que proporciona la profundidad del comando de
     seccionado.  See Seccionado, para la lista de números de nivel
     estándar.

     Si LEVEL es menor o igual que el valor del contador ‘secnumdepth’
     entonces los títulos para este comando de seccionado serán
     numerados (see Seccionado/secnumdepth).  Por ejemplo, si
     ‘secnumdepth’ es 1 en un ‘article’ luego el comando
     ‘\section{Introducción}’ producirá una salida como “1 Introducción”
     mientras que ‘\subsection{Debate}’ producirá salida como “Debate”,
     sin el prefijo numérico.

     Si LEVEL es menor o igual que el valor del contador TOCDEPTH
     entonces la tabla de contenido tendrá una entrada para esta unidad
     de seccionado (see Seccionado/tocdepth).  Por ejemplo, en un
     ‘article’, si TOCDEPTH es 1, la tabla de contenido será listar
     secciones pero no subsecciones.

INDENT
     Una longitud que da la sangría de todas las líneas del título con
     respecto al margen izquierdo.  Para que el título quede alineado
     con el uso de la margen ‘0pt’.  Una sangría negativa como
     ‘-\parindent’ se moverá el título en el margen izquierdo.

BEFORESKIP
     El valor absoluto de esta longitud es la cantidad de espacio
     vertical que se inserta antes del título de esta unidad de
     seccionado.  Este espacio será descartado si la unidad de
     seccionado comienza al principio de una página.  Si este número es
     negativo, el primer párrafo que sigue al encabezado no tendrá
     sangría, si no es negativo entonces el primer párrafo estará
     sangrado.  (Ten en cuenta que el negativo de ‘1pt plus 2pt minus
     3pt’ es ‘-1pt plus -2pt minus -3pt’).

     Por ejemplo, si BEFORESKIP es ‘-3.5ex plus -1ex minus -0.2ex’
     entonces, para iniciar la nueva unidad de seccionado, LaTeX
     agregará unas 3.5 veces la altura de una letra x en espacio
     vertical, y el primer párrafo en la sección no tendrá sangría.
     Usando una longitud elástica, con ‘plus’ y ‘minus’, es una buena
     práctica aquí ya que da LaTeX más flexibilidad para crear la página
     (see Longitudes).

     La contabilización completa del espacio vertical entre la línea
     base de la línea anterior al encabezado de esta unidad de
     seccionado y la línea base del encabezado es que es la suma del
     ‘\parskip’ de la letra del texto, el ‘\baselineskip’ de la letra
     del título y el valor absoluto de BEFORESKIP.  Este espacio suele
     ser elástico, por lo que se puede estirar o encoger.  (Si la unidad
     de seccionado comienza en una página nueva de modo que el espacio
     vertical se descarta, la línea base del texto del encabezado será
     donde LaTeX pondría la línea base de la primera línea de texto en
     esa página).

AFTERSKIP
     Esta es una longitud.  Si AFTERSKIP no es negativo, entonces este
     es el espacio vertical insertado después del encabezado del título
     de la unidad de seccionado.  Si es negativo, entonces el encabezado
     del título se convierte en un encabezado en ejecución, de modo que
     pasa a formar parte del párrafo siguiente.  En este caso el valor
     absoluto de la longitud da el espacio horizontal entre el final del
     título y el comienzo del siguiente párrafo.  (Ten en cuenta que el
     negativo de ‘1pt plus 2pt minus 3pt’ es ‘-1pt plus -2pt minus
     -3pt’).

     Al igual que con BEFORESKIP, usando una longitud elástica, con
     ‘plus’ y ‘minus’ componentes, es una buena práctica aquí ya que da
     a LaTeX más flexibilidad en la elaboración de la página.

     Si ‘afterskip’ no es negativo, la contabilidad completa del espacio
     vertical entre la línea base de la cabecera de la unidad de
     seccionado y la línea base de la primera línea del siguiente
     párrafo es que es la suma del ‘\parskip’ de la letra del título, el
     ‘\baselineskip’ de la letra del texto y el valor de AFTER.  Ese
     espacio suele ser elástico, por lo que se puede estirar o encoger.
     (Ten en cuenta que debido a que el signo de ‘afterskip’ cambia la
     unidad de seccionado encabezado independiente de la ejecución, no
     puedes usar un ‘afterskip’ negativo para cancelar parte del
     ‘\parskip’).

STYLE
     Controla el estilo del título.  Ve los ejemplos a continuación.
     Los comandos típicos para usar aquí son ‘\centering’,
     ‘\raggedright’, ‘\normalfont’, ‘\hrule’ o ‘\newpage’.  El ultimo
     comando en STYLE puede ser uno que tome un argumento, como
     ‘\MakeUppercase’ o ‘\fbox’ que toma un argumento.  El título de la
     sección se proporcionará como argumento para este comando.  Por
     ejemplo, establecer STYLE en ‘\bfseries\MakeUppercase’ sería
     producir títulos en negrita y mayúsculas.

   Estos son los valores predeterminados de LaTeX para las primeras tres
unidades de seccionado que se definen con ‘\@startsection’, para las
clases ‘article’, ‘book’ y ‘report’.

   • Para ‘section’: LEVEL es 1, INDENT es 0pt, BEFORESKIP es ‘-3.5ex
     plus -1ex minus -0.2ex’, AFTERSKIP es ‘2.3ex plus 0.2ex’ y STYLE es
     ‘\normalfont\Large\bfseries’.

   • Para ‘subsection’: LEVEL es 2, INDENT es 0pt, BEFORESKIP es
     ‘-3.25ex plus -1ex minus -0.2ex’, AFTERSKIP es ‘1.5ex plus 0.2ex’ y
     STYLE es ‘\normalfont\large\bfseries’.

   • Para ‘subsubsection’: LEVEL es 3, INDENT es 0pt, BEFORESKIP es
     ‘-3.25ex plus -1ex minus -0.2ex’, AFTERSKIP es ‘1.5ex plus 0.2ex’ y
     STYLE es ‘\normalfont\normalsize\bfseries’.

   A continuación se presentan algunos ejemplos.  Estos van en un
paquete o archivo de clase o en el preámbulo de un documento LaTeX.  Si
los pones en el preámbulo deben ir entre un comando ‘\makeatletter’ y un
‘\makeatother’.  (Probablemente el mensaje de error ‘No puedes usar
`\spacefactor' en modo vertical.’ significa que se te olvidó esto).
See \makeatletter y \makeatother.

   Esto colocará los títulos de las secciones en negrita grande,
centrados.  Dice ‘\renewcommand’ porque las clases estándar de LaTeX ya
han definió una ‘\section’.  Por la misma razón, no define un contador
‘section’, o los comandos ‘\thesection’ y ‘\l@section’.

     \renewcommand\section{%
       \@startsection{section}%
           See NAME.
         {1}% See LEVEL.
         {0pt}% See INDENT.
         {-3.5ex plus -1ex minus -.2ex}% See BEFORESKIP.
         {2.3ex plus.2ex}% See AFTERSKIP.
         {\centering\normalfont\Large\bfseries}% See STYLE.
       }

   Esto pondrá los títulos de ‘subsection’ en letras minúsculas,
alineados con el párrafo.

     \renewcommand\subsection{%
       \@startsection{subsection}% See NAME.
         {2}% See LEVEL.
         {0em}% See INDENT.
         {-1ex plus 0.1ex minus -0.05ex}% See BEFORESKIP.
         {-1em plus 0,2em}% See AFTERSKIP.
         {\scshape}% See STYLE.
       }

   Los ejemplos anteriores redefinieron los comandos de título de
unidades seccionales existentes.  Esto define uno nuevo, ilustrando el
contador y las macros necesarias para mostrar ese contador.

     \setcounter{secnumdepth}{6}% muestra los contadores tan abajo
     \newcounter{subsubparagraph}[subparagraph]% contador para numeración
     \renewcommand{\thesubsubparagraph}%            cómo mostrar
       {\thesubparagraph.\@arabic\c@subsubparagraph}% numeración
     \newcommand{\subsubparagraph}{\@startsection
                              {subsubparagraph}%
                              {6}%
                              {0em}%
                              {\baselineskip}%
                              {0.5\baselineskip}%
                              {\normalfont\normalsize}}\newcommand*\l@subsubparagraph{\@dottedtocline{6}{10em}{5em}}% para toc
     \newcommand{\subsubparagraphmark}[1]{}% para encabezados de página

7 Referencias cruzadas
**********************

A menudo queremos algo como ‘Ve Teorema~31’.  Pero escribir a mano el 31
es mala práctica.  En su lugar, debes escribir un “label” como
‘\label{eq:GreensThm}’ y luego “reference”, como con ‘Ve
ecuación~\ref{eq:GreensThm}’.  LaTeX automáticamente calcula el número,
lo pone en la salida y cambiará ese número más tarde si es necesario.

     Veremos  esto   con  el  Teorema~\ref{th:GreensThm}.   %  referencia
     directa:GreensThm}
       ...
     \end{theorem}
       ...
     Ve Teorema~\ref{th:GreensThm} en la página~\pageref{th:GreensThm}.

   LaTeX rastrea información de referencias cruzadas en un archivo que
tiene la extensión ‘.aux’ y con el mismo nombre base que el archivo que
contiene la ‘\label’.  Entonces, si ‘\label’ está en ‘calculus.tex’
entonces la información está en ‘calculus.aux’.  LaTeX pone la
información en ese archivo cada vez que se encuentra con un ‘\label’.

   El comportamiento descrito en el párrafo anterior da como resultado
una peculiaridad que sucede cuando tu documento tiene una “referencia
hacia adelante”, una ‘\ref’ que aparece antes del ‘\label’ asociado.  Si
esta es la primera vez que estás compilando el documento, obtendrás la
‘Advertencia LaTeX: : La(s) etiqueta(s) pueden haber cambiado. Vuelve a
ejecutar para obtener las referencias cruzadas correctas’ y en la
salida, la referencia directa aparecerá como dos preguntas mark ‘??’, en
negrita.  Algo similar sucede si cambias algunas cosas para que cambien
las referencias; recibes la misma advertencia y la salida contiene la
información de referencia anterior.  En ambos casos, resuelve esto
compilando el documento por segunda vez.

   El paquete ‘cleveref’ mejora las características de referencias
cruzadas de LaTeX.  Puedes arreglar eso si entras
‘\begin{thm}\label{th:Nerode}...\end{thm}’ entonces ‘\cref{thNerode}’
generará ‘Teorema 3.21’, sin que tengas que ingresar el “Teorema.”

7.1 ‘\label’
============

Sinopsis:

     \label{KEY}

   Asigna un número de referencia a KEY.  En texto ordinario
‘\label{KEY}’ asigna a KEY el número de la unidad de seccionado actual.
Dentro de un entorno con numeración, como un entorno ‘table’ o
‘theorem’, ‘\label{CLAVE}’ asigna a KEY el número de ese entorno.
Recuperar el número asignado con el comando ‘\ref{KEY}’ (see \ref).

   Un nombre de clave puede consistir en cualquier secuencia de letras,
dígitos o caracteres de puntuación.  Las letras mayúsculas y minúsculas
se distinguen, como de costumbre.

   Una convención común es usar etiquetas que consisten en un prefijo y
un sufijo separados por dos puntos o punto.  Por lo que,
‘\label{fig:Post}’ es una etiqueta para una figura con un retrato de
Emil Post.  Esto ayuda a evitar crear accidentalmente dos etiquetas con
el mismo nombre, y hace que tu fuente sea más legible.  Algunos prefijos
de uso común:

‘ch’
     por capítulos

‘sec’
‘subsec’
     para comandos de seccionado de nivel inferior

‘fig’
     para figuras

‘tab’
     para tablas

‘eq’
     para ecuaciones

   En el archivo auxiliar se conserva la información de referencia como
el texto de un comando de la forma
‘\newlabel{LABEL}{{CURRENTLABEL}{PAGENUMBER}}’.  Aquí CURRENTLABEL es el
valor actual de la macro ‘\@currentlabel’ que generalmente se actualiza
cada vez que llamas a ‘\refstepcounter{COUNTER}’.

   A continuación, la tecla ‘sec:test’ obtendrá el número de sección
actual y la tecla ‘fig:test’ obtendrá el número de la figura.  (Por
cierto, coloca etiquetas después de los subtítulos en las figuras y
tablas).

     \section{nombre sección}
     \label{sec:test}
     Esta es la Sección~\ref{sec:test}.
     \begin{figure}
       ...
       \caption{del título}
       \label{fig:test}
     \end{figure}
     Ve la figura~\ref{fig:test}.

7.2 ‘\pageref’
==============

Sinopsis:

     \pageref{KEY}

   Proporciona el número de página del lugar en el texto donde se
encuentra el comando ‘\label’{KEY} correspondiente.

   Si no hay ‘\label{KEY}’ entonces obtienes algo como ‘Advertencia de
LaTeX: Referencia `th:GrensThm' en la página 1 indefinida en la línea de
entrada 11.’

   A continuación, el ‘\label{eq:main}’ se usa tanto para el número de
fórmula y para el número de página.  (Ten en cuenta que las dos
referencias son referencias directas por lo que este documento tendría
que ser compilado dos veces para resolver aquellos).

     El    resultado   principal    es   formula~\ref{eq:main}    en   la
     página~\pageref{eq:main}.
       ...
     \begin{equation} \label{eq:main}
        \mathbf{P}=\mathbf{NP}
     \end{equation}

7.3 ‘\ref’
==========

Sinopsis:

     \ref{KEY}

   Produce el número de la unidad seccional, ecuación, pie de página,
figura, ..., del comando ‘\label’ correspondiente (see \label).  No
produce ningún texto, como la palabra ‘Sección’ o ‘Figura’, simplemente
el número en sí.

   Si no hay ‘\label{KEY}’ entonces obtienes algo como ‘Advertencia de
LaTeX: Referencia `th:GrensThm' en la página 1 indefinida en la línea de
entrada 11.’

   En este ejemplo, ‘\ref{popular}’ produce ‘2’.  Ten en cuenta que es
una referencia directa ya que viene antes de ‘\label{popular}’ por lo
que este documento tendría que compilarse dos veces.

     El formato más utilizado es el número de artículo~\ref{popular}.
     \begin{enumerate}
     \item Plain \TeX
     \item \label{popular} \LaTeX
     \item Con\TeX t
     \end{enumerate}

   El paquete ‘cleveref’ incluye texto como ‘Theorem’ en la referencia.
Consulta la documentación en CTAN.

7.4 paquete ‘xr’
================

Sinopsis:

     \usepackage{xr}
       \externaldocument{DOCUMENT-BASENAME}

o

     \usepackage{xr}
       \externaldocument[REFERENCE-PREFIX]{DOCUMENT-BASENAME}

   Hacer referencias cruzadas al documento externo
‘DOCUMENT-BASENAME.tex’.

   Aquí tienes un ejemplo: Si ‘lectures.tex’ tiene esto en el preámbulo

     \usepackage{xr}
       \externaldocument{exercises}
       \externaldocument[H-]{hints}
       \externaldocument{answers}

entonces puede usar etiquetas de referencias cruzadas de los otros tres
documentos.  Supón que ‘exercises.tex’ tiene una lista enumerada que
contiene este,

     \item \label{exer:EulersThm} ¿Qué pasa si cada vértice tiene un grado impar?

y ‘hints.tex’ tiene una lista enumerada con este,

     \item \label{exerEulersThm} Distingue el caso de dos vértices.

y ‘answers.tex’ tiene una lista enumerada con este,

     \item \label{ansEulersThm}  No hay camino  de Euler, excepto  si hay
       exactamente dos vértices.

   Después de compilar los ejercicios, sugerencias y documentos de
respuestas, ingresar esto en el cuerpo de ‘lectures.tex’ dará como
resultado la obtención de los números de referencia de las conferencias
utilizadas en los otros documentos.

     Ve          el          ejercicio~\ref{exer:EulersThm},          con
     Sugerencia~\ref{H-exer:EulersThm}.      La     solución    es     la
     respuesta~\ref{ans:EulersThm}.

   Se necesita el prefijo ‘H-’ para la referencia del archivo de
sugerencias porque la etiqueta en el archivo de sugerencias es la misma
que la etiqueta en el archivo de ejercicios.  Sin ese prefijo, ambas
referencias obtendrían el número del archivo posterior.

   Nota: si el documento usa el paquete ‘hyperref’ entonces en lugar de
‘xr’, coloca ‘\usepackage{xr-hyper}’ antes del ‘\usepackage{hyperref}’.
Además, si alguno de los múltiples documentos usa ‘hyperref’ entonces
todos lo deben usar.

8 Entornos
**********

LaTeX proporciona muchos entornos para delimitar cierto comportamiento.
Un entorno comienza con ‘\begin’ y termina con ‘\end’, como este:

     \begin{NOMBRE-ENTORNO}
       ...
     \end{NOMBRE-ENTORNO}

   El NOMBRE-ENTORNO al principio debe coincidir exactamente con el de
el fin.  Por ejemplo, la entrada ‘\begin{table*}...\end{table}’ generará
un error como: ‘! Error de LaTeX: \begin{table*} en la línea de entrada
5 terminada en \end{table}.’

   Los entornos se ejecutan dentro de un grupo.

8.1 ‘abstract’
==============

Sinopsis:

     \begin{abstract}
     ...
     \end{abstract}

   Produce un resumen, posiblemente de varios párrafos.  Este entorno
solo se define en las clases de documentos ‘article’ y ‘report’ (see
Clases de documentos).

   Usar el ejemplo a continuación en la clase ‘article’ produce la
exhibición de un párrafo.  La opción de clase de documento ‘titlepage’
genera el resumen en una página separada (see Opciones de la clase documento);
este es el predeterminado solo en la clase ‘report’.

     \begin{abstract}
       Comparamos todos los relatos conocidos de la propuesta realizada por
          Porter Alexander
       a  Robert E  Lee en  el  Palacio de  Justicia de  Appomattox que  el
       ejército continúa  en una guerra de  guerrillas, a que Lee  se negó.
     \end{abstract}

   El siguiente ejemplo produce un resumen de una columna en un
documento de dos columnas (para una solución más flexible, usa el
paquete ‘abstract’).

     \documentclass[twocolumn]{article}
       ...
     \begin{document}
     \title{Babe Ruth como progenitor cultural: un enfoque atávico}
     \author{Smith \\ Jones \\ Robinson\thanks{Subvención de seguimiento
         ferroviario.}}
     \twocolumn[
       \begin{@twocolumnfalse}
          \maketitle
          \begin{abstract}
            Ruth no era solo el sultán del Swat, era todo el equipo swat.
          \end{abstract}
        \end{@twocolumnfalse}
        ]
     {   % inserta a mano una nota al pie de página al final de la página
      \renewcommand{\thefootnote}{\fnsymbol{footnote}}
      \footnotetext[1]{Gracias por todo el pescado.}
     }

8.2 ‘array’
===========

Sinopsis:

     \begin{array}{COLS}
       COLUMN 1 ENTRY &COLUMN 2 ENTRY ... &COLUMN N ENTRY \\
       ...
     \end{array}

o:

     \begin{array}[POS]{COLS}
       COLUMN 1 ENTRY &COLUMN 2 ENTRY ... &COLUMN N ENTRY \\
       ...
     \end{array}

   Produce un arreglo de matemáticas.  Este entorno solo se puede usar
en modo math (see Modos), y normalmente aparece dentro de un entorno
math como ‘equation’ (see equation).  Dentro de cada fila, las
entradas de la columna están separadas por un ampersand, (‘&’).  Las
filas terminan con barras invertidas dobles (see \\).

   Este ejemplo muestra un arreglo de tres por tres.

     \begin{equation*}
       \chi(x) =
       \left|              % cerca de la barra vertical
         \begin{array}{ccc}
           x-a  &-b  &-c  \\
           -d   &x-e &-f  \\
           -g   &-h  &x-i
         \end{array}
      \right|
     \end{equation*}

   El argumento requerido COLS describe el número de columnas, su
alineación y el formato de las regiones entre columnas.  Por ejemplo,
‘\begin{array}{rcl}...\end{array}’ da tres columnas: el primero alineado
a la derecha, el segundo centrado y el tercero alineado a la izquierda.
tabular para la descripción completa de COLS y de otras
características comunes de los dos entornos, incluido el argumento
opcional POS.

   Hay dos formas en que ‘array’ difiere de ‘tabular’.  La primera es
que las entradas de ‘array’ se escriben en modo math, en estilo texto
(see Estilos math) excepto si la definición COLS especifica la
columna con ‘p{...}’, lo que hace que la entrada se escriba en modo de
texto.  La segunda es que, en lugar del parámetro ‘tabular’
‘\tabcolsep’, el espacio entre columnas de LaTeX en un ‘array’ está
gobernado por ‘\arraycolsep’, que da la mitad del ancho entre columnas.
El predeterminado para esto es ‘5pt’ por lo que entre dos columnas viene
10pt de espacio.

   Para obtener arreglos con llaves el estándar es usar el paquete
‘amsmath’.  Viene con entornos ‘pmatrix’ para un arreglo rodeado de
paréntesis ‘(...)’, ‘bmatrix’ para un arreglo entre corchetes ‘[...]’,
‘Bmatrix’ para un arreglo rodeado de llaves ‘{...}’, ‘vmatrix’ para un
arreglo rodeado de barras verticales ‘|...|’, y ‘Vmatrix’ para un
arreglo rodeado por dobles barras verticales ‘||...||’, junto con otras
construcciones de arreglo.

   El siguiente ejemplo usa el paquete ‘amsmath’.

     \usepackage{amsmath}  % en el preámbulo

     \begin{equation}
       \begin{vmatrix}{cc} % arreglo con líneas verticales
         a &b \\
         c &d
       \end{vmatrix}=ad-bc
     \end{equation}

   Hay muchos paquetes relacionados con arreglos.  El paquete ‘array’
tiene muchas extensiones útiles, incluidos más tipos de columnas.  El
paquete ‘dcolumn’ agrega un tipo de columna para centrarse en un punto
decimal.  Para ambos ve la documentación en CTAN.

8.3 ‘center’
============

Sinopsis:

     \begin{center}
       LINE1 \\
       LINE2 \\
       ...
     \end{center}

   Crea un nuevo párrafo que consta de una secuencia de líneas que está
centrado dentro de los márgenes izquierdo y derecho.  Usa doble barra
invertida, ‘\\’, para obtener un salto de línea (see \\).  Si algún
texto es demasiado largo para caber en una línea, entonces LaTeX
insertará un salto de línea que evita la separación de sílabas y evita
estirar o encoger cualquier espacio entre palabras.

   Este entorno inserta espacio por encima y por debajo del cuerpo del
texto.  \centering para evitar dicho espacio, por ejemplo dentro
de un entorno ‘figure’.

   Este ejemplo produce tres líneas centradas.  Hay espacio extra
vertical entre las dos últimas líneas.

     \begin{center}
       Una Tesis Presentada en Cumplimiento Parcial \\
       de los Requisitos de \\[0.5ex]
       la Escuela de Ingeniería Ambiental
     \end{center}

   En este ejemplo, según el ancho de línea de la página, LaTeX puede
elegir un salto de línea para la parte anterior a la barra invertida
doble.  Si es así, será centrar cada una de las dos líneas y si no
centrará la única línea.  Entonces LaTeX se romperá en la barra
invertida doble y centrará el final.

     \begin{center}
       Mi padre  consideraba que  cualquiera que  fuera a  la capilla  y no
       bebiera alcohol no debía ser tolerado.\\
       Crecí en esa creencia.  ---Richard Burton
     \end{center}

   Una barra invertida doble después de la línea final es opcional.  Si
está presente no agrega ningún espacio vertical.

   En un documento de dos columnas, el texto está centrado en una
columna, no en la página completa.

8.3.1 ‘\centering’
------------------

Sinopsis:

     {\centering ... }

o

     \begin{group}
       \centering ...
     \end{group}

   Centra el material en su entorno.  Se utiliza con mayor frecuencia
dentro de un entorno como ‘figure’, o en un ‘parbox’.

   La declaración ‘\centering’ de este ejemplo hace que el gráfico sea
centrado horizontalmente.

     \begin{figure}
       \centering
       \includegraphics[width=0.6\textwidth]{ctan_lion.png}
       \caption{CTAN Lion}  \label{fig:CTANLion}
     \end{figure}

El entorno de este ‘\centering’ termina con ‘\end{figure}’.

   A diferencia del entorno ‘center’, el comando ‘\centering’ no agrega
espacio vertical por encima y por debajo del texto.  Esa es su ventaja
en el ejemplo anterior; no hay un exceso de espacio.

   Tampoco comienza un nuevo párrafo; simplemente cambia cómo LaTeX da
formato a las unidades de párrafo.  Si ‘ww {\centering xx \\ yy} zz’
está rodeado de líneas en blanco, entonces LaTeX creará un párrafo cuya
primera línea ‘ww xx’ está centrada y cuya segunda línea, no centrada,
contiene ‘yy zz’.  Usualmente lo que se desea es para el alcance de la
declaración para contener una línea en blanco o el comando ‘\end’ de un
entorno como ‘figure’ o ‘table’ que termina la unidad de párrafo.  Por
lo tanto, si ‘{\centering xx \\ yy\par} zz’ está rodeado de líneas en
blanco, entonces crea un nuevo párrafo con dos líneas centradas ‘xx’ y
‘yy’, seguidas de un nuevo párrafo con ‘zz’ que tiene el formato
habitual.

8.4 ‘Description’
=================

Sinopsis:

     \begin{description}
       \item[ETIQUETA  DEL  PRIMER  ELEMENTO] TEXTO  DEL  PRIMER
       ELEMENTO
       \item[ETIQUETA  DEL SEGUNDO  ELEMENTO] TEXTO  DEL SEGUNDO
       ELEMENTO
        ...
     \end{description}

   Entorno para hacer una lista de elementos etiquetados.  La LABEL de
cada elemento está escrita en negrita y alineada a la izquierda, de modo
que las etiquetas largas continúan en la primera línea del texto del
elemento.  Debe haber al menos un elemento; al no tener alguno causa el
error LaTeX ‘Algo anda mal, tal vez un \item perdido’.

   Este ejemplo muestra el entorno utilizado para una secuencia de
definiciones.

     \begin{description}
       \item[lama] un sacerdote.
       \item[llama] a una bestia.
     \end{description}

Las etiquetas ‘lama’ y ‘llama’ se muestran en negrita, con el borde
izquierdo en el margen izquierdo.

   Inicia la lista de elementos con el comando ‘\item’ (see \item).
Utiliza las etiquetas opcionales, como en ‘\item[Main point]’, porque
hay ningún valor predeterminado sensato.  Después de ‘\item’ hay texto
opcional, que puede contener varios párrafos.

   Dado que las etiquetas están en negrita, si el texto de la etiqueta
requiere un cambio de letra dado en el estilo del argumento (see
Estilos de tipos de letra) entonces vendrá en negrita.  Por ejemplo,
si el texto de la etiqueta requiere una máquina de escribir con
‘\item[\texttt{label text}]’ entonces aparecerá en negrita máquina de
escribir, si está disponible.  La forma más sencilla de evitar esto, en
este ejemplo para obtener una máquina de escribir sin negrita, es usar
un estilo declarativo: ‘\item[{\tt label text}]’.  Del mismo modo,
obtiene la letra romana estándar con ‘\item[{\rm texto etiqueta}]’.

   Para otros entornos principales de listas etiquetadas LaTeX, see
itemize y enumerate.  A diferencia de esos entornos, anidar
entornos ‘description’ no cambia la etiqueta predeterminada; es negrita
y alineada a la izquierda en todos los niveles.

   Para obtener información sobre los parámetros de diseño de la lista,
incluido el valor predeterminado y para obtener información sobre cómo
personalizar el diseño de la lista, see list.  El paquete ‘enumitem’
es útil para personalizar listas.

   Este ejemplo cambia las etiquetas de descripción a versalitas.

     \renewcommand{\descriptionlabel}[1]{%
       {\hspace{\labelsep}\textsc{#1}}}

8.5 ‘displaymath’
=================

Sinopsis:

     \begin{displaymath}
       TEXTO MATEMÁTICO
     \end{displaymath}

   Entorno para componer el TEXTO MATEMÁTICO en su propia línea, en
estilo de visualización y centrado.  Para hacer que el texto quede
alineado a la izquierda, usa la opción global ‘fleqn’; see Opciones de la clase documento.

   En el entorno ‘displaymath’ no se agrega ningún número de ecuación al
texto de matemáticas.  Una forma de obtener un número de ecuación es
usar el entorno ‘equation’ (see equation).

   LaTeX no dividirá el TEXTO MATEMÁTICO entre líneas.

   Ten en cuenta que el paquete ‘amsmath’ tiene significativamente más
extensas facilidades de ecuación mostradas.  Por ejemplo, hay una serie
de formas en ese paquete para dividir el texto matemático en líneas.

   La construcción ‘\[MATH\]’ es un sinónimo del entorno
‘\begin{displaymath} MATH \end{displaymath}’ pero este último es más
fácil de trabajar en la fuente; por ejemplo, la búsqueda de un corchete
puede dar falsos positivos, pero la palabra ‘displaymath’ probablemente
será único.

   (Aparte: la construcción ‘$$MATH$$’ de Plain TeX a veces se usa
erróneamente como sinónimo de ‘displaymath’.  Esté no es un sinónimo, y
no se admite oficialmente en LaTeX en absoluto; ‘$$’ no admite la opción
‘fleqn’ (see Opciones de la clase documento), tiene un espaciado
vertical diferente y no realiza comprobaciones de consistencia).

   La salida de este ejemplo está centrada y sola en su línea.

     \begin{displaymath}
       \int_1^2 x^2\,dx=7/3
     \end{displaymath}

Además, el signo integral es más grande que la versión en línea que
produce ‘\( \int_1^2 x^2\,dx=7/3 \)’.

8.6 ‘document’
==============

El entorno ‘document’ incluye todo el cuerpo de un documento.  Se
requiere en todos los documentos LaTeX.  See Comenzar y terminar.

8.6.1 ‘\AtBeginDocument’
------------------------

Sinopsis:

     \AtBeginDocument{CODE}

   Guarda CODE y ejecútelo cuando ‘\begin{document}’ sea ejecutado, al
final del preámbulo.  El código se ejecuta después de las tablas de
selección de letras se han configurado, por lo que la letra normal para
el documento es la letra actual.  Sin embargo, el código se ejecuta como
parte del preámbulo para que no puedas hacer ninguna composición
tipográfica con él.

   Puedes emitir este comando más de una vez; las líneas de código
sucesivas se ejecutarán en el orden que les diste.

8.6.2 ‘\AtEndDocument’
----------------------

Sinopsis:

     \AtEndDocument{CODE}

   Guarda CODE y ejecútalo cerca del final del documento.
Específicamente, se ejecuta cuando se ejecuta ‘\end{document}’, antes de
que termine la página final y antes de que quede flotando se procesan
los entornos.  Si deseas que parte del código se ejecute después de
estos dos procesos, incluye un ‘\clearpage’ en el punto apropiado en
CODE.

   Puedes emitir este comando más de una vez; las líneas de código
sucesivas se ejecutarán en el orden que les diste.

8.7 ‘enumerate’
===============

Sinopsis:

     \begin{enumerate}
       \item[ETIQUETA  OPCIONAL DEL  PRIMER ELEMENTO]  TEXTO DEL
              PRIMER ELEMENTO
       \item[ETIQUETA OPCIONAL  DEL SEGUNDO ELEMENTO]  TEXTO DEL
              SEGUNDO ELEMENTO
       ...
     \end{enumerate}

   Entorno para producir una lista numerada de elementos.  El formato de
la numeración de las etiquetas depende del nivel de anidamiento de este
entorno; ve abajo.  La numeración de nivel superior predeterminada es
‘1.’, ‘2.’, etc.  Cada entorno de lista ‘enumerate’ debe tener al menos
un elemento; no tiene ninguna causa el error LaTeX ‘Algo anda mal, tal
vez un \item perdido’.

   Este ejemplo muestra a los dos primeros finalistas en el maratón
olímpico de 1908.  Como lista de nivel superior, las etiquetas
aparecerían como ‘1.’ y ‘2.’.

     \begin{enumerate}
      \item Johnny Hayes (USA)
      \item Charles Hefferon (RSA)
     \end{enumerate}

   Inicia la lista de elementos con el comando ‘\item’ (see \item).
Si le das a ‘\item’ un argumento opcional siguiéndolo con corchetes,
como en ‘\item[Etiqueta intersticial]’, entonces el siguiente elemento
continuará la secuencia interrumpida (see \item).  Es decir,
obtendrás etiquetas como ‘1.’, entonces ‘Etiqueta intersticial’, luego
‘2.’.  Después de ‘\item’ hay texto opcional, que puede contener varios
párrafos.

   Las enumeraciones se pueden anidar dentro de otros entornos
‘enumerate’, o dentro de cualquier entorno de creación de párrafos como
‘itemize’ (see itemize), hasta cuatro niveles de profundidad.  Esto
le proporciona el valor LaTeX predeterminado para el formato en cada
nivel de anidamiento, donde 1 es el nivel superior, el nivel más
exterior.

  1. número arábigo seguido de un punto: ‘1.’, ‘2.’, ...
  2. letra minúscula entre paréntesis: ‘(a)’, ‘(b)’ ...
  3. número romano en minúsculas seguido de un punto: ‘i.’, ‘ii.’, ...
  4. letra mayúscula seguida de un punto: ‘A.’, ‘B.’, ...

   El entorno ‘enumerate’ utiliza los contadores ‘\enumi’ hasta
‘\enumiv’ (see Contadores).

   Para otros entornos principales de listas etiquetadas LaTeX, see
description e itemize.  Para obtener información sobre el
diseño de parámetros de lista, incluidos los valores predeterminados, y
para obtener información sobre personalizar el diseño de la lista, see
list.  El paquete ‘enumitem’ es útil para personalizar listas.

   Para cambiar el formato de la etiqueta usa ‘\renewcommand’ (see
\newcommand y \renewcommand) en los comandos ‘\labelenumi’ a través de
‘\labelenumiv’.  Por ejemplo, esta lista de primer nivel será etiquetada
con letras mayúsculas, en negrita y sin punto final.

     \renewcommand{\labelenumi}{\textbf{\Alph{enumi}}}
     \begin{enumerate}
       \item Se muestra en negrita A
       \item Se muestra en negrita B
     \end{enumerate}

   Para obtener una lista de comandos de contraetiquetado, consulta
\alph \Alph \arabic \roman \Roman \fnsymbol.

8.8 ‘eqnarray’
==============

El entorno ‘eqnarray’ está obsoleto.  Tiene infelicidades, incluyendo el
espaciado que es inconsistente con otros elementos matemáticos.  (Ve
“¡Evita eqnarray!” por Lars Madsen
<https://tug.org/TUGboat/tb33-1/tb103madsen.pdf>).  Nuevos documentos
deben incluir el paquete ‘amsmath’ y usar el que muestra entornos
matemáticos proporcionados allí, como el entorno ‘align’.  Incluimos una
descripción solo para completar y para trabajar con documentos antiguos.

   Sinopsis:

     \begin{eqnarray}
       PRIMERA  FÓRMULA A  LA IZQUIERDA,  PRIMERA FÓRMULA  EN EL
       MEDIO y PRIMERA FÓRMULA A LA DERECHA \\
       ...
     \end{eqnarray}

o

     \begin{eqnarray*}
       PRIMERA  FÓRMULA A  LA IZQUIERDA,  PRIMERA FÓRMULA  EN EL
       MEDIO y PRIMERA FÓRMULA A LA DERECHA \\
       ...
     \end{eqnarray*}

   Muestra una secuencia de ecuaciones o desigualdades.  Los lados
izquierdo y derecho se escriben en el modo display, mientras que el
medio se escribe en el modo texto.

   Es similar a un entorno ‘array’ de tres columnas, con elementos
dentro de una fila separada por un ampersand (‘&’), y con filas
separadas por dobles barras inversas ‘\\’).  La forma de estrella del
salto de línea (‘\\*’) también se puede usar para separar ecuaciones, y
no permitirá un salto de página allí (see \\).

   La forma sin estrella ‘eqnarray’ coloca un número de ecuación en cada
línea (usando el contador ‘equation’), a menos que esa línea contenga un
comando ‘\nonumber’.  La forma destacada ‘eqnarray*’ omite numeración de
ecuaciones, mientras que por lo demás son iguales.

   El comando ‘\lefteqn’ se usa para dividir fórmulas largas en líneas.
Escribe tu argumento en estilo de visualización alineado a la izquierda
en un cuadro de ancho cero.

   Este ejemplo muestra tres líneas.  Las dos primeras líneas forman una
desigualdad, mientras que la tercera línea no tiene entrada por el lado
izquierdo.

     \begin{eqnarray*}
       \lefteqn{x_1+x_2+\cdots+x_n}     \\
         &\leq &y_1+y_2+\cdots+y_n      \\
         &=    &z+y_3+\cdots+y_n
     \end{eqnarray*}

8.9 ‘equation’
==============

Sinopsis:

     \begin{equation}
       TEXTO MATEMÁTICO
     \end{equation}

   Lo mismo que un entorno ‘displaymath’ (see displaymath) excepto
que LaTeX pone un número de ecuación al ras del margen derecho.  El
número de la ecuación se genera usando el contador ‘equation’.

   No debe haber líneas en blanco entre ‘\begin{equation}’ y
‘\begin{equation}’, o LaTeX te dirá que falta el signo de dólar.

   El paquete ‘amsmath’ tiene una extensas facilidades para mostrar
ecuaciones.  Los nuevos documentos deben incluir este paquete.

8.10 ‘figure’
=============

Sinopsis:

     \begin{figure}[PLACEMENT]
       CUERPO DE FIGURA
       \caption[LOFTITLE]{TITLE}  % opcional
       \label{LABEL}              % opcional
     \end{figure}

o:

     \begin{figure*}[PLACEMENT]
       CUERPO DE FIGURA
       \caption[LOFTITLE]{TITLE}  % opcional
       \label{LABEL}              % opcional
     \end{figure*}

   Las figuras son para material que no forma parte del texto normal.
Un ejemplo es material que no se puede dividir en dos páginas, tal como
gráficos.  Debido a esto, LaTeX no escribe cifras en secuencia con texto
normal, sino que los “hace flotar” a un lugar conveniente, como la parte
superior de una página siguiente (see Flotantes).

   El CUERPO DE FIGURA puede consistir en gráficos importados (see
Gráficos), o texto, comandos de LaTeX, etc.  Está escrito en un
‘parbox’ de ancho ‘\textwidth’.

   Los posibles valores de PLACEMENT son ‘h’ para ‘aquí’, ‘t’ para
‘top’, ‘b’ para ‘bottom’ y ‘p’ para ‘en una página de flotantes
separada’.  Para el efecto de estas opciones en el algoritmo de
colocación de flotantes, see Flotantes.

   La forma destacada ‘figure*’ se usa cuando un documento está en modo
de doble columna (see \twocolumn).  Produce una figura que abarca
ambas columnas, en la parte superior de la página.  Para agregar la
posibilidad de colocar en la parte inferior de una página, ve la
discusión de PLACEMENT ‘b’ en Flotantes.

   La etiqueta es opcional; se usa para referencias cruzadas (see
Referencias cruzadas).  El comando opcional ‘\caption’ especifica el
texto del título para la figura (see \caption).  De manera
predeterminada está numerado.  Si LOFTITLE está presente, se usa en la
lista de figuras en lugar de TITLE (see Tabla de contenido etc.).

   Este ejemplo hace una figura a partir de un gráfico.  LaTeX colocará
ese gráfico y su título en la parte superior de una página o, si se
empuja al final del documento, en una página de flotantes.

     \usepackage{graphicx}  % en el preámbulo
       ...
     \begin{figure}[t]
       \centering
       \includegraphics[width=0.5\textwidth]{CTANlion.png}
       \caption{El CTAN lion, por Duane Bibby}
     \end{figure}

8.11 ‘filecontents’
===================

Sinopsis:

     \begin{filecontents}[OPTION]{FILENAME}
       TEXT
     \end{filecontents}

o

     \begin{filecontents*}[OPTION]{FILENAME}
       TEXT
     \end{filecontents*}

   Crea un archivo llamado FILENAME en el directorio actual (o el
directorio de salida, si se especifica; see directorio de salida) y
escribir TEXT en él.  De forma predeterminada, un archivo existente no
se sobrescribe.

   La versión sin estrella del entorno ‘filecontents’ prefija el
contenido del archivo creado con un encabezado de comentarios TeX; ve el
siguiente ejemplo.  La versión protagonista ‘filecontents*’ no incluye
el encabezado.

   Las opciones posibles son::

‘force’
‘overwrite’
     La opción ‘overwrite’ para ‘filecontents’ Sobrescribe un archivo
     existente.

‘noheader’
     Omite el encabezado.  Equivale a usar ‘filecontents*’.

‘nosearch’
     Solo verifica el directorio actual (y el directorio de salida, si
     se ha especificado) para un archivo existente, no la ruta de
     búsqueda completa.

   Estas opciones se agregaron en una versión de LaTeX de 2019.

   Este entorno se puede utilizar en cualquier parte del preámbulo,
aunque a menudo aparece antes del comando ‘\documentclass’.  Esta
comúnmente se usa para crear un ‘.bib’ u otro archivo de datos similar
desde el origen del documento principal, para que el archivo fuente sea
autónomo.  Del mismo modo, se puede usar para crear un estilo
personalizado o un archivo de clase, nuevamente haciendo que la fuente
sea autónoma.

   Por ejemplo, este documento::

     \documentclass{article}
     \begin{filecontents}{JH.sty}
     \newcommand{\myname}{Jim Hef{}feron}
     \end{filecontents}
     \usepackage{JH}
     \begin{document}
     Artículo por \myname.
     \end{document}

produce este archivo ‘JH.sty’:

     %% Archivo LaTeX2e `JH.sty'
     %% generado por el entorno `filecontents'
     %% de la fuente `test' el 12/10/2015.
     %%
     \newcommand{\myname}{Jim Hef{}feron}

8.12 ‘flushleft’
================

Sinopsis:

     \begin{flushleft}
       LINE1 \\
       LINE2 \\
       ...
     \end{flushleft}

   Un entorno que crea un párrafo cuyas líneas están al ras del margen
izquierdo e irregular al lado derecho.  Si tienes filas demasiado largas
entonces LaTeX las dividirá de una manera que evite la separación
silábica y alargar o achicar los espacios entre palabras.  Para forzar
una nueva línea usa una doble barra invertida, ‘\\’.  Para la forma de
declaración \raggedright.

   Esto crea un cuadro de texto que tiene como máximo 3 pulgadas de
ancho, con el texto alineado a la izquierda e irregular a la derecha.

     \noindent\begin{minipage}{3in}
     \begin{flushleft}
       Una oración larga que será dividida por \LaTeX{}
         en un lugar conveniente. \\
       Y, una nueva línea forzada por la doble barra invertida.
     \end{flushleft}
     \end{minipage}

8.12.1 ‘\raggedright’
---------------------

Sinopsis:

     {\raggedright  ... }

o

     \begin{ENVIRONMENT} \raggedright
       ...
     \end{ENVIRONMENT}

   Una declaración que hace que las líneas queden al ras del margen
izquierdo e irregular a la derecha.  Se puede usar dentro de un
ENVIRONMENT como ‘quote’ o en un ‘parbox’.  Para la forma del
entorno flushleft.

   A diferencia del entorno ‘flushleft’, ‘\raggedright’ el comando no
inicia un nuevo párrafo; solo cambia en cómo LaTeX da formato a las
unidades de párrafo.  Para afectar el formato de una unidad de párrafo,
el alcance de la declaración debe contener la línea en blanco o el
comando ‘\end’ que finaliza la unidad de párrafo.

   Aquí ‘\raggedright’ en cada segunda columna evita que LaTeX haga una
composición tipográfica incómoda para encajar el texto en la columna
reducida.  Ten en cuenta que ‘\raggedright’ está dentro de llaves
‘{...}’ para delimitar su efecto.

     \begin{tabular}{rp{2in}}
       Equipo alfa &{\raggedright Este equipo hace todo el trabajo real.} \\
       Equipo beta &{\raggedright Este equipo se asegura de que el
                     enfriador de agua nunca esté vacío.}               \\
     \end{tabular}

8.13 ‘flushright’
=================

     \begin{flushright}
       LINE1 \\
       LINE2 \\
       ...
     \end{flushright}

   Un entorno que crea un párrafo cuyas líneas están al ras del margen
derecho e irregular al izquierdo.  Si tienes filas demasiado largas para
ajustarse a los márgenes, entonces LaTeX los dividirá de una manera que
evita la división con guiones y la ampliación o reducción de los
espacios entre palabras.  Para forzar una nueva línea usa una barra
invertida doble, ‘\\’.  Para la forma de declaración
\raggedleft.

   Para ver un ejemplo relacionado con este entorno, see flushleft,
donde uno solo tiene mutatis mutandis para reemplazar ‘flushleft’ por
‘flushright’.

8.13.1 ‘\raggedleft’
--------------------

Sinopsis:

     {\raggedleft  ... }

o

     \begin{ENVIRONMENT} \raggedleft
       ...
     \end{ENVIRONMENT}

   Una declaración que hace que las líneas queden al ras del margen
derecho e izquierdo irregular.  Se puede usar dentro de un ENVIRONMENT
como ‘quote’ o en un ‘parbox’.  Para la forma del entorno
flushright.

   A diferencia del entorno ‘flushright’, ‘\raggedleft’ el comando no
inicia un nuevo párrafo; solo cambia cómo LaTeX da formato a las
unidades de párrafo.  Para afectar el formato de una unidad de párrafo,
el alcance de la declaración debe contener la línea en blanco o el
comando ‘\end’ que finaliza la unidad de párrafo.

   Para ver un ejemplo relacionado con este entorno,  see
\raggedright, donde uno solo tiene mutatis mutandis para reemplazar
‘\raggedright’ por ‘\raggedleft’.

8.14 ‘itemize’
==============

Sinopsis:

     \begin{itemize}
       \item[ETIQUETA  OPCIONAL DEL  PRIMER ELEMENTO]  TEXTO DEL
       PRIMER ELEMENTO
       \item[ETIQUETA OPCIONAL  DEL SEGUNDO ELEMENTO]  TEXTO DEL
       SEGUNDO ELEMENTO
       ...
     \end{itemize}

   Produce una “lista desordenada”, a veces denominada lista con
viñetas.  Ahí debe haber al menos un ‘\item’ dentro del entorno; no
tiene ninguna causa el error LaTeX ‘Algo anda mal, tal vez un \item
faltante’.

   Esto da una lista de dos elementos.

     \begin{itemize}
      \item Dibujo a lápiz y acuarela por Cassandra
      \item Retrato de arroz
     \end{itemize}

Con la configuración regional predeterminada — sin cargar, por ejemplo,
el paquete ‘babel’ con otro idioma que no sea inglés—como una lista de
nivel superior cada etiqueta saldría como una viñeta, •.  El formato del
etiquetado depende del nivel de anidamiento; ve abajo.

   Inicia la lista de elementos con el comando ‘\item’ (see \item).
Si le das a ‘\item’ un argumento opcional entre corchetes siguiéndolo,
como en ‘\item[ETIQUETA OPTIONAL]’, entonces de manera predeterminada
ETIQUETA OPCIONAL aparecerá en negrita y alineada a la derecha, por lo
que se podría extender hasta el margen izquierdo.  Para las etiquetas
que están niveladas a la izquierda, consulta el entorno
description.  Después del ‘\item’ está el texto del elemento, que
puede estar vacío o contener varios párrafos.

   Las listas desordenadas se pueden anidar una dentro de otra, hasta
cuatro niveles de profundidad.  También se pueden anidar en otros
entornos de creación de párrafos, como ‘enumerate’ (see enumerate).

   El entorno ‘itemize’ usa los comandos ‘\labelitemi’ a través de
‘\labelitemiv’ para generar la etiqueta predeterminada (ten en cuenta la
convención de números romanos en minúsculas al final de los nombres de
los comandos que significan el nivel de anidamiento).  Estas son las
marcas predeterminadas en cada nivel.

  1. • (bullet, de ‘\textbullet’)
  2. -- (bold en-dash, de ‘\normalfont\bfseries\textendash’)
  3. * (asterisco, de ‘\textasteriskcentered’)
  4. .  (verticalmente centrado dot, representado aquí como un punto, de
     ‘\textperiodcentered’)

   Cambia las etiquetas con ‘\renewcommand’.  Por ejemplo, esto hace que
el primer nivel use diamantes.

     \renewcommand{\labelitemi}{$\diamond$}

   La distancia entre el margen izquierdo del entorno envolvente y el
margen izquierdo de la lista ‘itemize’ está determinado por el
parámetros ‘\leftmargini’ a ‘\leftmarginvi’.  (Esto también usa la
convención de usar números romanos en minúsculas al final del nombre del
comando para indicar el nivel de anidamiento).  Los valores
predeterminados son: ‘2.5em’ en el nivel 1 (‘2em’ en modo de dos
columnas), ‘2.2em’ en el nivel 2, ‘1.87em’ en el nivel 3 y ‘1.7em’ en el
nivel 4, con valores más pequeños para niveles anidados más profundos.

   Para otros entornos principales de listas etiquetadas LaTeX, see
description y enumerate.  ‘itemize’, los entornos ‘enumerate’
y ‘description’ usan la misma lista de parámetros de diseño.  Para
obtener una descripción, incluidos los valores predeterminados, y para
obtener información sobre cómo personalizar el diseño de la lista, see
list.  El paquete ‘enumitem’ es útil para personalizar listas.

   Este ejemplo reduce en gran medida el espacio del margen para los
elementos detallados más externos de listas.

     \setlength{\leftmargini}{1.25em} % predeterminado 2.5em

   Especialmente para listas con artículos cortos, puede ser deseable
eludir espacio entre elementos.  Aquí hay un ejemplo que define un
entorno ‘itemize*’ sin espacios adicionales entre elementos o entre
párrafos dentro de un solo elemento (‘\parskip’ no es específico de la
lista, see \parindent y \parskip):

     \newenvironment{itemize*}%
       {\begin{itemize}%
         \setlength{\itemsep}{0pt}%
         \setlength{\parsep}{0pt}}%
         \setlength{\parskip}{0pt}}%
       {\end{itemize}}

8.15 entorno ‘letter’: escribir cartas
======================================

Este entorno se utiliza para crear cartas.  See Cartas.

8.16 ‘list’
===========

Sinopsis:

     \begin{list}{LABELING}{SPACING}
       \item[ETIQUETA  OPCIONAL DEL  PRIMER ELEMENTO]  TEXTO DEL
       PRIMER ELEMENTO
       \item[ETIQUETA OPCIONAL  DEL SEGUNDO ELEMENTO]  TEXTO DEL
       SEGUNDO ELEMENTO
       ...
     \end{list}

   Un entorno para la construcción de listas.

   Ten en cuenta que este entorno no suele aparecer en el cuerpo del
documento.  La mayoría de las listas creadas por los autores de LaTeX
son las que vienen estándar: los entornos ‘description’, ‘enumerate’ e
‘itemize’ (see description, enumerate y itemize).

   En cambio, el entorno ‘list’ se usa con mayor frecuencia en macros.
Por ejemplo, muchos entornos LaTeX estándar que no funcionan
inmediatamente parecen ser listas, de hecho están construidos usando
‘list’, incluyendo ‘quotation’, ‘quote’ y ‘center’ (see comillas y citas,
see center).

   Este usa el entorno ‘list’ para definir un nuevo entorno
personalizado.

     \newcounter{namedlistcounter}  % número de elementos
     \newenvironment{named}
       {\begin{list}
          {Item~\Roman{namedlistcounter}.} % etiquetado
          {\usecounter{namedlistcounter}   % establece el contador
           \setlength{\leftmargin}{3.5em}} % establece el espaciado
       }
       {\end{list}}

     \begin{named}
       \item Se muestra como ``Item~I.''
       \item[Etiqueta especial.] Se muestra como ``Etiqueta especial.''
       \item Se muestra como ``Item~II.''
     \end{named}

   El primer argumento obligatorio LABELING especifica el valor
predeterminado de etiquetado de los elementos de la lista.  Puede
contener comandos de texto y LaTeX, como arriba donde contiene ‘Item’ y
‘\Roman{...}’.  LaTeX forma la etiqueta poniendo el argumento LABELING
en un cuadro de ancho ‘\labelwidth’.  Si la etiqueta es más ancha que
eso, el material adicional se extiende a la derecha.  Al hacer una
instancia de una ‘list’ puedes redefinir el etiquetado predeterminado
dando a ‘\item’ un argumento opcional al incluir corchetes y el texto,
como en la ‘\item[Etiqueta especial.]’; see \item.

   El segundo argumento obligatorio SPACING tiene una lista de comandos.
Esta lista puede estar vacía.  Un comando que puede entrar aquí es
‘\usecounter{COUNTERNAME}’ (see \usecounter).  Utiliza este
diciéndole a LaTeX que numere los elementos usando el contador dado.  El
contador se restablecerá a cero cada vez que LaTeX ingrese al entorno, y
el contador se incrementa en uno cada vez que LaTeX encuentra un ‘\item’
que no tiene un argumento opcional.

   Otro comando que puede ir en SPACING es ‘\makelabel’, que construye
el cuadro de etiquetas.  De manera predeterminada pone el contenido
volcado a la derecha.  Su único argumento es la etiqueta, que
composiciones tipográficas en modo LR (see Modos).  Un ejemplo de
cambiar su definición es la del ejemplo del ‘named’ anterior, antes de
la definición del entorno añade
‘\newcommand{\namedmakelabel}[1]{\textsc{#1}}’, y entre el comando
‘\setlength’ y el paréntesis que cierra el argumento SPACING también
agrega ‘\let\makelabel\namedmakelabel’.  Luego, las etiquetas se
compondrán en versalitas.  Del mismo modo, cambiando la segunda línea
del código a ‘\let\makelabel\fbox’ pone las etiquetas dentro de una caja
enmarcada.  A continuación se muestra otro ejemplo del comando
‘\makelabel’, en la definición del entorno ‘redlabel’.

   También a menudo en SPACING hay comandos para redefinir el espacio
para la lista.  A continuación se muestran los parámetros de espaciado
con sus valores predeterminados.  (Los valores predeterminados para
entornos derivados como ‘itemize’ pueden ser diferentes a los valores
que se muestran aquí).  Consulta también la siguiente figura de lista.
Cada uno tiene una longitud (see Longitudes).  Los espacios
verticales normalmente son longitudes elásticas, con componentes ‘plus’
y ‘minus’, para darle flexibilidad a TeX en la configuración de la
página.  Cambiar cada uno con un comando como ‘\setlength{itemsep}{2pt
plus1pt minus1pt}’.  Para algunos efectos, estas longitudes deben ser
cero o negativas.

‘\itemindent’
     Sangría de espacio horizontal adicional, más allá de ‘leftmargin’,
     de la primera línea de cada elemento.  Su valor predeterminado es
     ‘0pt’.

‘\itemsep’
     Espacio vertical entre elementos, más allá del ‘\parsep’.  Los
     valores predeterminados para los tres primeros niveles en las
     clases LaTeX ‘article’, ‘book’ y ‘report’ con un tamaño de 10
     puntos son: ‘4pt plus2pt minus 1pt’, ‘\parsep’ (es decir, ‘2pt plus
     1pt minus 1pt’), y ‘\topsep’ (es decir, ‘2pt plus 1pt minus 1pt’).
     Los valores predeterminados en 11 puntos son: ‘4.5pt plus 2pt minus
     1pt’, ‘\parsep’ (es decir, ‘2pt plus 1pt minus 1pt’) y ‘\topsep’
     (es decir, ‘2pt plus 1pt minus 1pt’).  Los valores predeterminados
     en 12 puntos son: ‘5pt plus 2.5pt minus 1pt’, ‘\parsep’ (es decir,
     ‘2.5pt plus 1pt minus 1pt’), y ‘\topsep’ (es decir, ‘2.5pt plus 1pt
     minus 1pt’).

‘\labelsep’
     Espacio horizontal entre la etiqueta y el texto de un elemento.  El
     valor predeterminado para las clases LaTeX ‘article’, ‘book’, y
     ‘report’ es ‘0.5em’.

‘\labelwidth’
     Ancho horizontal.  La caja que contiene la etiqueta nominalmente es
     así de ancha.  Si ‘\makelabel’ devuelve un texto más ancho que
     este, entonces la primera línea del elemento se sangrará para dejar
     espacio para este material adicional.  Si ‘\makelabel’ devuelve
     texto de ancho menor o igual que ‘\labelwidth’ entonces el valor
     predeterminado de LaTeX es que la etiqueta está compuesta al ras en
     una caja de este ancho.

     El borde izquierdo del cuadro de etiqueta es
     ‘\leftmargin’+‘\itemindent’-‘\labelsep’-‘\labelwidth’ del margen
     izquierdo del entorno envolvente.

     El valor predeterminado para las clases ‘article’, ‘book’ y
     ‘report’ de LaTeX en el nivel superior es
     ‘\leftmargini’-‘\labelsep’, (que es ‘2em’ en modo una columna y
     ‘1.5em’ en modo de dos columnas).  En el segundo nivel es
     ‘\leftmarginii’-‘\labelsep’, y en el tercer nivel es
     ‘\leftmarginiii’-‘\labelsep’.  Estas definiciones hacen que el
     borde izquierdo de la etiqueta coincida con el margen izquierdo del
     entorno envolvente.

‘\leftmargin’
     Espacio horizontal entre el margen izquierdo del entorno envolvente
     (o el margen izquierdo de la página si se trata de una lista de
     nivel superior), y el margen izquierdo de esta lista.  No debe ser
     negativo.

     En las clases de documentos estándar de LaTeX, una lista de nivel
     superior tiene este conjunto al valor de ‘\leftmargini’, mientras
     que una lista anidada dentro una lista de nivel superior tiene este
     margen establecido en ‘\leftmarginii’.  Las listas más
     profundamente anidadas obtienen los valores de ‘\leftmarginiii’ a
     través de ‘\leftmarginvi’.  (La anidación superior al nivel cinco
     genera el mensaje de error ‘Anidado demasiado profundo’).

     Los valores predeterminados para los primeros tres niveles en las
     clases LaTeX ‘article’, ‘book’ y ‘report’ son: ‘\leftmargini’ es
     ‘2.5em’ (en modo de dos columnas, ‘2em’), ‘\leftmarginii’ es
     ‘2.2em’ y ‘\leftmarginiii’ es ‘1.87em’.

‘\listparindent’
     Espacio horizontal de sangría de línea adicional, más allá de
     ‘\leftmargin’, para el segundo y posteriores párrafos dentro de una
     lista ‘item’.  Un valor negativo lo convierte en “outdent”.  Su
     valor predeterminado es ‘0pt’.

‘\parsep’
     Espacio vertical entre párrafos dentro de un elemento.  Los valores
     predeterminados para los primeros tres niveles en las clases LaTeX
     ‘article’, ‘book’ y ‘report’ con un tamaño de 10 puntos son: ‘4pt
     plus 2pt minus 1pt’, ‘2pt plus 1pt minus 1pt’ y ‘0pt’.  Los valores
     predeterminados en tamaño de 11 puntos son: ‘4.5pt plus 2pt minus
     1pt’, ‘2pt plus1pt minus1pt’, y ‘0pt’.  Los valores predeterminados
     en tamaño de 12 puntos son: ‘5pt plus 2.5pt minus 1pt’, ‘2.5pt plus
     1pt minus 1pt’ y ‘0pt’.

‘\partopsep’
     Espacio vertical agregado, más allá de ‘\topsep’+‘\parskip’, en la
     parte superior y la parte inferior de todo el entorno si la
     instancia de la lista está precedida por una línea en blanco.  (Una
     línea en blanco en la fuente LaTeX antes de la lista cambia el
     espaciado en la parte superior e inferior de la lista; si la línea
     siguiente a la lista está en blanco, no importa).

     Los valores predeterminados para los primeros tres niveles en las
     clases LaTeX ‘article’, ‘book’ y ‘report’ con un tamaño de 10
     puntos son: ‘2pt plus 1pt minus 1pt’, ‘2pt plus 1pt minus 1pt’ y
     ‘1pt plus0pt minus1pt’.  Los valores predeterminados en 11 puntos
     son: ‘3pt plus1pt minus1pt’, ‘3pt plus 1pt minus 1pt’ y ‘1pt
     plus0pt minus 1pt’).  Los valores predeterminados en 12 puntos son:
     ‘3pt plus 2pt minus 3pt’, ‘3pt plus 2pt minus 2pt’ y ‘1pt plus0pt
     minus 1pt’.

‘\rightmargin’
     Espacio horizontal entre el margen derecho de la lista y el margen
     derecho del entorno envolvente.  Su valor predeterminado es ‘0pt’.
     No debe ser negativo.

‘\topsep’
     Espacio vertical agregado a la parte superior e inferior de la
     lista, además a ‘\parskip’ (see \parindent y \parskip).  Los
     valores predeterminados para los tres primeros niveles en las
     clases LaTeX ‘article’, ‘book’ y ‘report’ con un tamaño de 10
     puntos son: ‘8pt plus 2pt minus 4pt’, ‘4pt plus 2pt minus 1pt’ y
     ‘2pt plus 1pt minus 1pt’.  Los valores predeterminados en 11 puntos
     son: ‘9pt plus 3pt minus 5pt’, ‘4.5pt plus 2pt minus 1pt’ y ‘2pt
     plus 1pt minus 1pt’.  Los valores predeterminados para 12 puntos
     son: ‘10pt plus 4pt minus 6pt’, ‘5pt plus 2.5pt minus 1pt’, y
     ‘2.5pt plus 1pt minus 1pt’.

   Esto muestra las distancias horizontal y vertical.

   Las longitudes que se muestran se enumeran a continuación.  La
relación clave es que el borde derecho del paréntesis para H1 es igual
al borde derecho del corchete para H4, de modo que el borde izquierdo
del cuadro de etiqueta esté en H3+H4-(H0+H1).

V0
     ‘\topsep’ + ‘\parskip’ si el entorno de la lista no comienza un
     nuevo párrafo, y ‘\topsep’+‘\parskip’+‘\partopsep’ si lo comienza

V1
     ‘\parsep’

V2
     ‘\itemsep’+‘\parsep’

V3
     Igual que V0.  (Este espacio se ve afectado por si una línea en
     blanco aparece en la fuente por encima del entorno; si una línea en
     blanco aparece en la fuente debajo del entorno no importa).

H0
     ‘\labelwidth’

H1
     ‘\labelsep’

H2
     ‘\listparindent’

H3
     ‘\leftmargin’

H4
     ‘\itemindent’

H5
     ‘\rightmargin’

   Los márgenes izquierdo y derecho de la lista, que se muestran arriba
como H3 y H5, son con respecto a las proporcionadas por el entorno
circundante, o con respecto a los márgenes de página para una lista de
nivel superior.  El ancho de línea utilizado para componer los elementos
de la lista es ‘\linewidth’ (see Parámetros de composición de página).
Por ejemplo, establece el margen izquierdo de la lista para
que sea una cuarta parte de la distancia entre los márgenes izquierdo y
derecho del entorno envolvente con
‘\setlength{\leftmargin}{0.25\linewidth}’.

   Los saltos de página en una estructura de lista están controlados por
los tres parámetros a continuación.  Para cada uno, el valor
predeterminado de LaTeX es ‘-\@lowpenalty’, es decir, ‘-51’.  Porque es
negativo, de alguna manera fomenta un salto de página en cada punto.
Cambiarlo con, por ejemplo, ‘\@beginparpenalty=9999’; un valor de 10000
prohíbe un salto de página.

‘\@beginparpenalty’
     La penalización de salto de página por romper antes de la lista
     (predeterminado ‘-51’).

‘\@itempenalty’
     La penalización por salto de página al romper antes de un elemento
     de lista (predeterminado ‘-51’).

‘\@endparpenalty’
     La penalización de salto de página por romper después de una lista
     (predeterminado ‘-51’).

   El paquete ‘enumitem’ es útil para personalizar listas.

   Este ejemplo tiene las etiquetas en rojo.  Están numeradas, y el
borde izquierdo de la etiqueta se alinea con el borde izquierdo del
texto del elemento.  See \usecounter.

     \usepackage{color}
     \newcounter{cnt}
     \newcommand{\makeredlabel}[1]{\textcolor{red}{#1.}}
     \newenvironment{redlabel}
       {\begin{list}
         {\arabic{cnt}}
         {\usecounter{cnt}
          \setlength{\labelwidth}{0em}
          \setlength{\labelsep}{0.5em}
          \setlength{\leftmargin}{1.5em}
          \setlength{\itemindent}{0.5em} % equals \labelwidth+\labelsep
          \let\makelabel=\makeredlabel
         }
       }
     {\end{list}}

8.16.1 ‘\item’: Una entrada en una lista
----------------------------------------

Sinopsis:

     \item texto del elemento

o

     \item[OPTIONAL-LABEL] texto del elemento

   Una entrada en una lista.  Las entradas están precedidas por una
etiqueta, cuyo valor predeterminado depende del tipo de lista.

   Porque la etiqueta opcional está entre corchetes ‘[...]’, si tienes
un elemento cuyo texto comienza con [, tienes que ocultar el corchete
dentro de las llaves, como en: ‘\item {[} es un corchete de apertura’;
de lo contrario, LaTeX pensará en la marca como el comienzo de una
etiqueta opcional.

   Del mismo modo, si el artículo tiene la etiqueta opcional y necesitas
un corchete de cierre dentro de esa etiqueta, lo debes ocultar en la
misma forma: ‘\item[Corchete de cierre, {]}]’.  See Sintaxis del comando LaTeX.

   En este ejemplo, la lista de enumeración tiene dos elementos que usan
el valor de etiqueta predeterminado y otra que usa la etiqueta opcional.

     \begin{enumerate}
       \item Moe
       \item[a veces] Shemp
       \item Larry
     \end{enumerate}

   El primer elemento está etiquetado como ‘1.’, el segundo elemento
está etiquetado ‘a veces’, y el tercer elemento está etiquetado como
‘2.’.  Porque de la etiqueta opcional en el segundo artículo, el tercer
artículo no está etiquetado ‘3.’.

8.16.2 ‘trivlist’: Una forma restringida de ‘list’
--------------------------------------------------

Sinopsis:

     \begin{trivlist}
       ...
     \end{trivlist}

   Una versión restringida del entorno list, en la que los márgenes no
son sangrados y un ‘\item’ sin un argumento opcional no produce texto.
Se utiliza con mayor frecuencia en macros, para definir un entorno en el
que el comando ‘\item’ es parte de la definición del entorno.  Para
instancia, el entorno ‘center’ se define esencialmente como este:

     \newenvironment{center}
       {\begin{trivlist}\centering\item\relax}
       {\end{trivlist}}

   El uso de ‘trivlist’ de esta manera permite que la macro herede algún
código común: combinar el espacio vertical de dos entornos adyacentes;
detectar si el texto que sigue al entorno debe ser considerado un nuevo
párrafo o una continuación del anterior; ajustar los márgenes izquierdo
y derecho para un posible entorno de lista anidada.

   Específicamente, ‘trivlist’ usa los valores actuales de los
parámetros de lista (see list), excepto que ‘\parsep’ se establece
en el valor de ‘\parskip’, y ‘\leftmargin’, ‘\labelwidth’, e
‘\itemindent’ se establecen en cero.

   Este ejemplo genera los elementos como dos párrafos, excepto que (de
manera predeterminada) no tienen sangría de párrafo y están separados
verticalmente.

     \begin{trivlist}
     \item La \textit{Sorpresa} no es antigua; nadie la llamaría vieja.
     \item Ella tiene un arco de farol, lindas líneas.
     \end{trivlist}

8.17 ‘math’
===========

Sinopsis:

     \begin{math}
     MATH
     \end{math}

   El entorno ‘math’ inserta material dado MATH dentro del texto en
ejecución.  ‘\(...\)’ y ‘$...$’ son sinónimos.  See Fórmulas math.

8.18 ‘minipage’
===============

Sinopsis:

     \begin{minipage}{WIDTH}
       CONTENIDO
     \end{minipage}

o

     \begin{minipage}[POSITION][HEIGHT][INNER-POS]{WIDTH}
       CONTENIDO
     \end{minipage}

   Pon CONTENIDO en un cuadro que tenga un ancho de WIDTH.  Esto es como
una versión pequeña de una página; puede contener sus propias notas al
pie, listas detalladas, etc.  (Hay algunas restricciones, incluyendo que
no puede tener flotante).  Este cuadro no se dividirá entre páginas.
Entonces ‘minipage’ es similar a ‘\parbox’ (see \parbox) pero aquí
puedes tener párrafos.

   Este ejemplo tendrá 3 pulgadas de ancho y tiene dos párrafos.

     \begin{minipage}{3in}
       Stephen  Kleene  fue uno  de  los  fundadores  de  la Teoría  de  la
       Computación.

       Fue  estudiante de  Iglesia, escribió  tres textos  influyentes, fue
       presidente de la  Asociación de Lógica Simbólica, y  ganó la Medalla
       Nacional de Ciencias.
     \end{minipage}

Ve adelante, para una explicación de la sangría de párrafo dentro de una
‘minipage’.

   El argumento requerido WIDTH es una longitud rígida (see
Longitudes).  Da el ancho de la caja en la que se compone CONTENIDO.

   Hay tres argumentos opcionales, POSITION, HEIGHT e INNER-POS.  No es
necesario incluir los tres.  Por ejemplo, obtener la POSITION
predeterminada y establecer HEIGHT con
‘\begin{minipage}[c][2.54cm]{\columnwidth} CONTENT \end{minipage}’.
(Obtiene la altura natural con un argumento vacío, ‘[]’).

   El argumento opcional POSITION gobierna cómo ‘minipage’ se alinea
verticalmente con el material circundante.

‘c’
     (sinónimo ‘m’) Predeterminado.  Posiciona la ‘minipage’ para que su
     centro vertical se alinee con el centro de la línea de texto
     adyacente.

‘t’
     Alinea la línea base de la línea superior en la ‘minipage’ con la
     línea base del texto circundante (el ‘\vtop’ de TeX simple).

‘b’
     Alinea la línea base de la línea inferior en la ‘minipage’ con la
     línea base del texto circundante (el ‘\vbox’ de TeX simple).

   Para ver los efectos de estos, contrasta esta ejecución

     ---\begin{minipage}[c]{0.25in}
       primero\\ segundo\\ tercero
     \end{minipage}

con los resultados de cambiar ‘c’ a ‘b’ o ‘t’.

   El argumento opcional HEIGHT es una longitud rígida (see
Longitudes).  Establece la altura de la ‘minipage’.  Puedes ingresar
cualquier valor más grande que, igual o más pequeño que el código
natural de ‘minipage’ height y LaTeX no darán un error o una
advertencia.  También puedes establecer a una altura de cero o un valor
negativo.

   El último argumento opcional INNER-POS controla la ubicación de
CONTENIDO dentro del cuadro.  Estos son los valores posibles (el
predeterminado es el valor de POSITION).

‘t’
     Coloca CONTENIDO en la parte superior del cuadro.

‘c’
     Lo coloca en el centro vertical.

‘b’
     Lo coloca en el fondo de la caja.

‘s’
     Estira CONTENIDO verticalmente; debe contener espacio elástico
     verticalmente.

   El argumento INNER-POS tiene sentido cuando la opción HEIGHT se
establece en un valor mayor que la altura natural de ‘minipage’.  Para
ver el efecto de las opciones, ejecuta este ejemplo con las distintas
opciones en lugar de ‘b’.

     Texto antes
     \begin{center}
       ---\begin{minipage}[c][3in][b]{0.25\textwidth}
            primero\\ segundo\\ tercero
       \end{minipage}
     \end{center}
     Texto después

   De manera predeterminada, los párrafos no tienen sangría en una
‘minipage’.  Cambio que con un comando como
‘\setlength{\parindent}{1pc}’ en el inicio de CONTENIDO.

   Las notas al pie en un entorno ‘minipage’ se manejan de una manera
que es particularmente útil para poner notas a pie de página en figuras
o tablas.  Para el comando ‘\footnote’ o ‘\footnotetext’ coloca la nota
al pie en la parte inferior de la minipágina en lugar de en la parte
inferior de la página, y usa el contador ‘\mpfootnote’ en lugar del
contador ordinario ‘footnote’ (see Contadores).

   Esto coloca la nota al pie en la parte inferior de la tabla, no en la
parte inferior de la página.

     \begin{center}        % centra la minipágina en la línea
     \begin{minipage}{2.5in}
       \begin{center}      % centra la tabla dentro de la minipágina
         \begin{tabular}{ll}
           \textsc{Monarca} &\textsc{Reinado} \\ \hline
           Isabel II &96 años\footnote{hasta su fallecimiento} \\
           Victoria &63 años \\
           Jorge III &59 años
         \end{tabular}
       \end{centro}
     \end{minipage}
     \end{center}

   Si anidas minipáginas, hay una rareza al usar notas al pie.  Las
notas al pie aparecen en la parte inferior del texto terminadas por la
siguiente ‘\end{minipage}’ que puede no ser su lugar lógico.

   Esto coloca una tabla que contiene datos al lado de un gráfico de
mapa.  Ellos están centrados verticalmente.

     % siunitx para tener el especificador de columna S,
     % que alinea los números en su punto decimal.
     \usepackage{siunitx}
     \newcommand*{\vcenteredhbox}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}}
       ...
     \begin{center}
       \vcenteredhbox{\includegraphics[width=0.3\textwidth]{nyc.png}}
       \hspace{0.1\textwidth}
       \begin{minipage}{0.5\textwidth}
         \begin{tabular}{r|S}
           % \multicolumn para eliminar la barra vertical entre los encabezados
           %   de las columnas
           \multicolumn{1}{r}{Borough} &
           % llaves para evitar que siunitx malinterprete el
           % período como separador decimal
           {Pop. (million)}  \\ \hline
           The Bronx      &1.5  \\
           Brooklyn       &2.6  \\
           Manhattan      &1.6  \\
           Queens         &2.3  \\
           Staten Island  &0.5
         \end{tabular}
       \end{minipage}
     \end{center}

8.19 ‘picture’
==============

Sinopsis:
     \begin{picture}(WIDTH,HEIGHT)
        COMANDO PICTURE
     \end{picture}

o

     \begin{picture}(WIDTH,HEIGHT)(XOFFSET,YOFFSET)
       COMANDO PICTURE
     \end{picture}

Donde puede haber cualquier número de COMANDO PICTURE.

   Un entorno para crear imágenes simples que contienen líneas, flechas,
cuadros, círculos y texto.  Este entorno no es obsoleto, sino que los
nuevos documentos suelen utilizar sistemas de creación de gráficos mucho
más potentes, como TikZ, PSTricks, MetaPost o Asymptote.  Ninguno de
estos están cubiertos en este documento; ve CTAN.

   Para empezar, aquí hay un ejemplo que muestra la ley del
paralelogramo para sumar vectores.

     \setlength{\unitlength}{1cm}
     \begin{picture}(6,6)        % cuadro de imagen tendrá 6 cm de ancho por
                                                   % 6 cm de alto
       \put(0,0){\vector(2,1){4}}      % por cada 2 sobre este vector sube 1
         \put(2,1){\makebox(0,0)[l]{\ primer etapa}}
       \put(4,2){\vector(1,2){2}}
         \put(5,4){\makebox(0,0)[l]{\ segunda etapa}}
       \put(0,0){\vector(1,1){6}}
         \put(3,3){\makebox(0,0)[r]{sum\ }}
     \end{picture}

   El entorno ‘picture’ tiene un argumento requerido, un par de números
reales positivos (WIDTH, HEIGHT).  Multiplica estos por el valor de
‘\unitlength’ para obtener el tamaño nominal de la salida, es decir, el
espacio que reserva LaTeX en la página de salida.  Este tamaño nominal
no es necesario saber qué tan grande es realmente la imagen; LaTeX
dibujará cosas de picture fuera de la caja de la imagen.

   Este entorno también tiene un argumento opcional (XOFFSET, YOFFSET).
Se utiliza para cambiar el origen.  A diferencia de la mayoría de los
argumentos opcionales, éste no está contenido entre corchetes.  Al igual
que con el argumento requerido, consiste en un par de dos números
reales, pero estos también pueden ser negativos o nulos.  Multiplica
estos por ‘\unitlength’ para obtener las coordenadas del punto en la
esquina inferior izquierda de la imagen.

   Por ejemplo, si ‘\unitlength’ se ha establecido en ‘1mm’, el comando

     \begin{picture}(100,200)(10,20)

produce una caja de 100 milímetros de ancho y 200 milímetros de alto.
El origen de la imagen es el punto (10mm, 20mm) y, por lo tanto, la
esquina inferior izquierda está allí, y la esquina superior derecha está
en (110mm, 220 mm).  Cuando primero dibujes una imagen, normalmente
omite el argumento opcional, dejando el origen en la esquina inferior
izquierda.  Si luego deseas modificar tu imagen cambiando todo, solo
puedes agregar el argumento opcional apropiado.

   Cada COMANDO PICTURE le dice a LaTeX dónde colocar algo
proporcionando su posición.  Una “position” es un par como ‘(2.4,-5)’
dando las coordenadas x e y.  Una “coordenada” no es una longitud, es un
número real (puede tener un punto decimal o un signo menos).  Eso
especifica una longitud en múltiplos de la unidad de longitud
‘\unitlength’, por lo que si ‘\unitlength’ se ha establecido en ‘1cm’,
entonces la coordenada ‘2.54’ especifica una longitud de 2.54
centímetros.

   El valor predeterminado de LaTeX para ‘\unitlength’ es ‘1pt’.  Es una
longitud rígida (see Longitudes).  Cámbialo con el comando
‘\setlength’ (see \setlength).  Haz este cambio solo fuera de un
entorno ‘picture’.

   El entorno ‘picture’ admite el uso de expresiones aritméticas
estándar como números.

   Las coordenadas se dan con respecto a un origen, que de manera
predeterminada está en la esquina inferior izquierda de la imagen.  Ten
en cuenta que cuando aparece una posición como argumento, como con
‘\put(1,2){...}’, no está encerrado entre llaves ya que los paréntesis
sirven para delimitar el argumento.  También, a diferencia de algunos
sistemas de gráficos por ordenador, las coordenadas ‘y’ más grandes son
más arriba en la página, por ejemplo, y = 1 es _arriba_ y = 0.

   Hay cuatro formas de poner cosas en una imagen: ‘\put’, ‘\multiput’,
‘\qbezier’ y ‘\graphpaper’.  Más a menudo se usa ‘\put’.  Este

     \put(11.3,-0.3){...}

coloca el objeto con su punto de referencia en las coordenadas
(11.3,-0.3).  Los puntos de referencia para varios objetos serán
descritos abajo.  El comando ‘\put’ crea un “LR box” (see Modos).
Cualquier cosa que pueda ir en un ‘\mbox’ (see \mbox y \makebox)
puede ir en el argumento de texto del comando ‘\put’.  El punto de
referencia será la esquina inferior izquierda de la caja.  En esta
imagen

     \setlength{\unitlength}{1cm}
     ...\begin{picture}(1,1)
       \put(0,0){\line(1,0){1}}
       \put(0,0){\line(1,1){1}}
     \end{picture}

los tres puntos están ligeramente a la izquierda del punto del ángulo
formado por las dos líneas.  (Además, ‘\line(1,1){1}’ no requiere una
línea de longitud uno; más bien la línea tiene un cambio en la
coordenada x de 1).

   Los comandos ‘\multiput’, ‘qbezier’ y ‘graphpaper’ están descritos
abajo.

   También puedes utilizar este entorno para colocar material arbitrario
en una ubicación exacta.  Por ejemplo:

     \usepackage{color,graphicx}  % en el preámbulo
       ...
     \begin{center}
     \setlength{\unitlength}{\textwidth}
     \begin{picture}(1,1)      % deja espacio, ancho de \textwidth y alto
       \put(0,0){\includegraphics[width=\textwidth]{desertedisland.jpg}}
       \put(0.25,0.35){\textcolor{red}{Guarda X aquí}}
     \end{picture}
     \end{center}

La red X será precisamente una cuarta parte del ‘\textwidth’ de el
margen izquierdo y ‘0.35\textwidth’ hacia arriba desde la parte inferior
de la imagen.  Otro ejemplo de este uso es poner un código similar en el
encabezado de página para obtener material repetido en cada una de las
páginas de un documento.

8.19.1 ‘\put’
-------------

Sinopsis:

     \put(XCOORD,YCOORD){CONTENT}

   Coloca CONTENT en la coordenada (XCOORD,YCOORD).  Ve la discusión de
coordenadas y ‘\unitlength’ en picture.  El CONTENIDO se procesa
en modo LR (see Modos) por lo que no puede contener saltos de línea.

   Esto incluye el texto en la ‘picture’.

     \put(4.5,2.5){Aplica el \textit{unpoke} move}

   El punto de referencia, la ubicación (4.5,2.5), es la parte inferior
izquierda del texto, en la parte inferior izquierda de ‘A’.

8.19.2 ‘\multiput’
------------------

Sinopsis:

     \multiput(X,Y)(DELTA_X,DELTA_Y){NUM-COPIES}{OBJ}

   Copia OBJ un total de NUM-COPIES veces, con un incremento de
DELTA_X,DELTA_Y.  El OBJ aparece primero en la posición (x,y), entonces
en (x+\delta_x,y+\delta_y), y así sucesivamente.

   Esto dibuja una cuadrícula simple con cada quinta línea en negrita
(ve también \graphpaper).

     \begin{picture}(10,10)
       \linethickness{0.05mm}
       \multiput(0,0)(1,0){10}{\line(0,1){10}}
       \multiput(0,0)(0,1){10}{\line(1,0){10}}
       \linethickness{0.5mm}
       \multiput(0,0)(5,0){3}{\line(0,1){10}}
       \multiput(0,0)(0,5){3}{\line(1,0){10}}
     \end{picture}

8.19.3 ‘\qbezier’
-----------------

Sinopsis:

     \qbezier(X1,Y1)(X2,Y2)(X3,Y3)
     \qbezier[NUM](X1,Y1)(X2,Y2)(X3,Y3)

   Dibuja una curva de Bézier cuadrática cuyos puntos de control estén
dados por tres argumentos requeridos ‘(X1,Y1)’, ‘(X2,Y2)’ y ‘(X3,Y3)’.
Eso es, la curva va de (X1,Y1) a (X3,Y3), es cuadrática y es tal que la
recta tangente en (X1,Y1) pasa por (X2,Y2), al igual que la recta
tangente en (X3,Y3).

   Esto dibuja una curva desde la coordenada (1,1) a (1,0).

     \qbezier(1,1)(1.25,0.75)(1,0)

La línea tangente de la curva en (1,1) contiene (1.25,0.75), al igual
que la recta tangente de la curva en (1,0).

   El argumento opcional NUM da el número de cálculos de puntos
intermedios.  El valor predeterminado es dibujar una curva suave cuyo
número máximo de puntos es ‘\qbeziermax’ (cambia este valor con
‘\renewcommand’).

   Esto dibuja un rectángulo con una parte superior ondulada, usando
‘\qbezier’ para esa curva

     \begin{picture}(8,4)
       \put(0,0){\vector(1,0){8}}    % eje x
       \put(0,0){\vector(0,1){4}}    % eje y
       \put(2,0){\line(0,1){3}}      % lado izquierdo
       \put(4,0){\line(0,1){3.5}}    % lado derecho
       \qbezier(2,3)(2.5,2.9)(3,3.25)
         \qbezier(3,3.25)(3.5,3.6)(4,3.5)
       \thicklines                 % debajo de aquí, las líneas son el
                                   % doble de gruesas
       \put(2,3){\line(4,1){2}}
       \put(4.5,2.5){\framebox{Regla trapezoidal}}
     \end{picture}

8.19.4 ‘\graphpaper’
--------------------

Sinopsis:

     \graphpaper(X_INIT,Y_INIT)(X_DIMEN,Y_DIMEN)
     \graphpaper[SPACING](X_INIT,Y_INIT)(X_DIMEN,Y_DIMEN)

   Dibuja una cuadrícula de coordenadas.  Requiere el paquete
‘graphpap’.  El origen de la cuadrícula es ‘(X_INIT,Y_INIT)’.  Las
líneas de la cuadrícula vienen cada SPACING unidades (el valor
predeterminado es 10).  La cuadrícula extiende X_DIMEN unidades hacia la
derecha y Y_DIMEN unidades hacia arriba.  Todos los argumentos deben ser
números enteros positivos.

   Esto crea una cuadrícula con siete líneas verticales y once líneas
horizontales.

     \usepackage{graphpap}    % en el preámbulo
       ...
     \begin{picture}(6,20)    % en el cuerpo del documento
       \graphpaper[2](0,0)(12,20)
     \end{picture}

Las líneas están numeradas cada diez unidades.

8.19.5 ‘\line’
--------------

Sinopsis:

     \line(X_RUN,Y_RISE){TRAVEL}

   Dibuja una línea.  Tiene una pendiente tal que sube verticalmente
Y_RISE para cada X_RUN horizontal.  El TRAVEL es el cambio horizontal
total — no es la longitud del vector, es el cambio en x.  En el caso
especial de las líneas verticales, donde (X_RUN,Y_RISE)=(0,1), TRAVEL da
el cambio en y.

   Esto dibuja una línea que comienza en las coordenadas (1,3).

     \put(1,3){\line(2,5){4}}

Por cada más de 2, esta línea aumentará 5.  Porque TRAVEL especifica que
esto pasa de 4, debe subir a 10.  Por lo tanto, su punto final es
(1,3)+(4,10)=(5,13).  En particular, ten en cuenta que TRAVEL=4 no es la
longitud de la línea, es el cambio en x.

   Los argumentos X_RUN y Y_RISE son números enteros que se pueden
positivo, negativo o cero.  (Si ambos son 0 entonces LaTeX trata el
segundo como 1).  Con
‘\put(X_INIT,Y_INIT){\line(X_RUN,Y_RISE){TRAVEL}}’, si X_RUN es
negativo, el punto final de la línea tiene una primer coordenada menor
que X_INIT.  Si Y_RISE es negativo entonces el punto final de la línea
tiene una segunda coordenada que es menor que Y_INIT.

   Si TRAVEL es negativo, obtendrás ‘Error de LaTeX: \line incorrecta o
el argumento \vector.’

   LaTeX estándar solo puede dibujar líneas con un rango limitado de
pendientes porque estas rectas se forman juntando segmentos de recta de
letras prefabricadas.  Los dos números X_RUN y Y_RISE deben tener
valores enteros desde −6 hasta 6.  Asimismo, deben ser relativamente
primos, por lo que (X_RUN,Y_RISE) puede ser (2,1) pero no (4,2) (si
eliges el último, en lugar de líneas obtiene secuencias de puntas de
flecha; la solución es cambiar a la primera).  Para obtener lineas de
pendiente arbitraria y muchas otras formas en un sistema como ‘picture’,
ve el paquete ‘pict2e’ (<https://ctan.org/pkg/pict2e>).  Otra solución
es usar un sistema de gráficos completo como TikZ, PSTricks, MetaPost o
Asymptote.

8.19.6 ‘\linethickness’
-----------------------

Sinopsis:

     \linethickness{DIM}

   Declara el grosor de las líneas horizontales y verticales
subsiguientes en una imagen debe ser DIM, que debe tener una longitud
positiva (see Longitudes).  Se diferencia de ‘\thinlines’ y
‘\thicklines’ en el sentido de que no afecta el grosor de las líneas
inclinadas, círculos u óvalos (see \oval).

8.19.7 ‘\thinlines’
-------------------

Declaración para establecer el grosor de líneas, círculos y óvalos
posteriores en un entorno picture para ser 0.4pt.  Este es el valor
predeterminado de grosor, por lo que este comando es innecesario a menos
que el grosor haya cambiado con \linethickness o
\thicklines.

8.19.8 ‘\thicklines’
--------------------

Declaración para establecer el grosor de líneas, círculos y óvalos
posteriores en un entorno picture para ser 0.8pt.  Ve también
\linethickness y \thinlines.  Este comando se ilustra en el
ejemplo de regla trapezoidal de \qbezier.

8.19.9 ‘\circle’
----------------

Sinopsis:

     \circle{DIAMETER}
     \circle*{DIAMETER}

   Produce un círculo con un diámetro lo más cercano posible al
especificado.  La forma ‘*’ produce un círculo relleno.

   Esto dibuja un círculo de radio 6, centrado en ‘(5,7)’.

     \put(5,7){\circle{6}}

   Los radios disponibles para ‘\circle’ son, en puntos, los números
pares del 2 al 20, ambos inclusive.  Para ‘\circle*’ son todos los
números enteros del 1 al 15.

8.19.10 ‘\oval’
---------------

Sinopsis:

     \oval(WIDTH,HEIGHT)
     \oval(WIDTH,HEIGHT)[PORTION]

   Produce un rectángulo con esquinas redondeadas, en lo sucesivo
denominado “oval”.  El argumento opcional PORTION te permite producir
sólo la mitad o un cuarto del óvalo.  Para medio óvalo toma PORTION para
que sea uno de estos.

‘t’
     mitad superior (top)
‘b’
     mitad inferior (bottom)
‘r’
     mitad derecha (right)
‘l’
     mitad izquierda (left)

   Produce solo un cuarto del óvalo configurando en PORTION en ‘tr’,
‘br’, ‘bl’ o ‘tl’.

   Esto dibuja la mitad superior de un óvalo de 3 de ancho y 7 de alto.

     \put(5,7){\oval(3,7)[t]}

El (5,7) es el centro de todo el óvalo, no solo el centro de la mitad
superior.

   Estas formas no son elipses.  Son rectángulos cuyas esquinas están
hechas con cuartos de círculo.  Estos círculos tienen un radio máximo de
20pt (see \circle para los tamaños).  Por lo tanto, los óvalos
grandes son solo Marcos con una pequeña cantidad de esquinas
redondeadas.

8.19.11 ‘\shortstack’
---------------------

Sinopsis:

     \shortstack[POSITION]{LINE 1 \\ ... }

   Produce una pila vertical de objetos.

   Esto etiqueta el eje y escribiendo la palabra ‘y’ arriba de la
palabra ‘eje’.

     \setlength{\unitlength}{1cm}
     \begin{picture}(5,2.5)(-0.75,0)
        \put(0,0){\vector(1,0){4}}   % eje x
        \put(0,0){\vector(0,1){2}}   % y
        \put(-0.2,2){\makebox(0,0)[r]{\shortstack[r]{$y$\\ ejes}}}
     \end{picture}

Para una pila pequeña, el punto de referencia es la parte inferior
izquierda de la pila.  En el ejemplo anterior, el ‘\makebox’ (see
\mbox y \makebox) pone la pila se alinea a la derecha en un cuadro de
ancho cero, por lo que en total la pila corta se encuentra ligeramente a
la izquierda del eje y.

   Los puestos válidos son:

‘r’
     Hace que los objetos queden alineados a la derecha
‘l’
     Hace que los objetos queden alineados a la izquierda
‘c’
     Centra objetos (predeterminado)

   Separa los objetos en líneas con ‘\\’.  Estas pilas son cortas en
que, a diferencia de un entorno ‘tabular’ o ‘array’, aquí las filas no
están espaciadas para tener saltos de línea base uniformes.  Así, en
‘\shortstack{X\\o\\o\\X}’ la primera y la última fila son más altas que
los dos medios, y por lo tanto la línea base salta entre los dos medios
filas es más pequeña que la que hay entre la tercera y la última fila.
Puedes ajustar las alturas y profundidades de las filas ya sea colocando
la interlínea habitual espaciado con ‘\shortstack{X\\ \strut o\\o\\X}’
(see \strut), o explícitamente, a través de un cuadro de ancho cero
‘\shortstack{X \\ \rule{0pt}{12pt} o\\o\\X}’ o mediante el uso opcional
de ‘\\’ argumento ‘\shortstack{X\\[2pt] o\\o\\X}’.

   El comando ‘\shortstack’ también está disponible fuera del entorno
‘picture’.

8.19.12 ‘\vector’
-----------------

Sinopsis:

     \vector(X_RUN,Y_RISE){TRAVEL}

   Dibuja una línea que termine en una flecha.  La pendiente de esa
recta es: sube verticalmente Y_RISE por cada X_RUN horizontal.  Los
TRAVEL es el cambio horizontal total — no es la longitud del vector, es
el cambio en x.  En el caso especial de vectores verticales, si
(X_RUN,Y_RISE)=(0,1), entonces TRAVEL da el cambio en y.

   Para ver un ejemplo, see picture.

   Para obtener más detalles sobre X_RUN y Y_RISE, consulta
\line.  Como allí, los valores de X_RUN y Y_RISE están limitados.
Para ‘\vector’ debes elegir números enteros entre −4 y 4, inclusive.
Además, los dos que elijas deben ser relativamente primos.  De este
modo, ‘\vector(2,1){4}’ es aceptable pero ‘\vector(4,2){4}’ no es (si
usas este último, obtendrás una secuencia de puntas de flecha).

8.19.13 ‘\makebox’ (picture)
----------------------------

Sinopsis:

     \makebox(REC-WIDTH,REC-HEIGHT){TEXT}
     \makebox(REC-WIDTH,REC-HEIGHT)[POSITION]{TEXT}

   Hace un cuadro para contener TEXT.  Este comando encaja con el
entorno ‘picture’, aunque los puedes usar fuera de allí, porque
REC-WIDTH y REC-HEIGHT son números que especifican distancias en
términos de ‘\unitlength’ (see picture).  Este comando es similar al
comando ‘\makebox’ normal (see \mbox y \makebox), excepto que aquí
debes especificar el ancho y el alto.  Este el comando es frágil (see
\protect).

   Esto hace una caja de longitud 3.5 veces ‘\unitlength’ y altura 4
veces ‘\unitlength’.

     \put(1,2){\makebox(3.5,4){...}}

   El argumento opcional ‘POSITION’ especifica dónde aparece el TEXT en
el cuadro.  El valor predeterminado es centrarlo, tanto horizontal como
verticalmente.  Para colocarlo en otro lugar, usa una cadena con una o
dos de estas letras.

‘t’
     Pone TEXT en la parte superior de la caja.

‘b’
     Pone TEXT en la parte inferior.

‘l’
     Pone el TEXT a la izquierda.

‘r’
     Pone el TEXT a la derecha.

8.19.14 ‘\framebox’ (picture)
-----------------------------

Sinopsis:

     \framebox(REC-WIDTH,REC-HEIGHT){TEXT}
     \framebox(REC-WIDTH,REC-HEIGHT)[POSITION]{TEXT}

   Esto es lo mismo que \makebox (picture) excepto que pone un
marco alrededor del exterior de la caja que crea.  El punto de
referencia es la esquina inferior izquierda del marco.  Este comando
encaja con el entorno ‘picture’, aunque lo puedes usar fuera de allí,
porque las longitudes son números que especifican la distancia en
términos de ‘\unitlength’ (see picture).  Este comando es frágil
(see \protect).

   Este ejemplo crea un marco de 2.5 pulgadas por 3 pulgadas y coloca el
texto en el centro.

     \setlength{\unitlength}{1in}
     \framebox(2.5,3){test text}

   Los argumentos requeridos son que el rectángulo tiene un ancho total
de RECT-WIDTH unidades y una altura de RECT-HEIGHT unidades.

   El argumento opcional POSITION especifica la posición de TEXT; see
\makebox (picture) para los valores que puede tomar.

   La regla tiene ‘\fboxrule’ de grosor y hay un espacio en blanco
‘\fboxsep’ entre el marco y el contenido de la caja.

   Para este comando, debes especificar WIDTH y HEIGHT.  Si solo quieres
poner un marco alrededor de algún contenido cuya dimensión está
determinada de alguna otra manera, entonces usa ‘\fbox’ (see \fbox y \framebox)
o ‘\frame’ (see \frame).

8.19.15 ‘\frame’
----------------

Sinopsis:

     \frame{CONTENIDO}

   Pone un marco rectangular alrededor de CONTENT.  El punto de
referencia es la esquina inferior izquierda del marco.  En contraste con
‘\framebox’ (see \framebox (picture)), este comando no pone espacio
adicional entre el marco y el objeto.  es frágil (see \protect).

8.19.16 ‘\dashbox’
------------------

Sinopsis:

     \dashbox{DASH-LEN}(RECT-WIDTH,RECT-HEIGHT){TEXT}
     \dashbox{DASH-LEN}(RECT-WIDTH,RECT-HEIGHT)[POSITION]{TEXT}

   Crea un rectángulo punteado alrededor de TEXT.  Este comando encaja
con el entorno ‘picture’, aunque lo puedes usar fuera de allí, porque
las longitudes son números que especifican la distancia en términos de
‘\unitlength’ (see picture).

   Los argumentos requeridos son: los guiones son DASH-LEN unidades de
largo, con el mismo espacio de longitud, y el rectángulo tiene un ancho
total de RECT-WIDTH unidades y una altura de RECT-HEIGHT unidades.

   El argumento opcional POSITION especifica la posición de TEXT; see
\makebox (picture) para los valores que puede tomar.

   Esto muestra que puedes usar un valor no entero para DASH-LEN.

     \put(0,0){\dashbox{0.1}(5,0.5){Mi  aerodeslizador  está  lleno  de
     anguilas.}}

Cada guión tendrá una longitud de ‘0.1\unitlength’, el ancho del cuadro
es ‘5\unitlength’ y su altura es ‘0.5\unitlength’.

   Como en ese ejemplo, un cuadro discontinuo se ve mejor cuando
RECT-WIDTH y RECT-HEIGHT son múltiplos de DASH-LEN.

8.20 ‘quotation’ y ‘quote’
==========================

Sinopsis:

     \begin{quotation}
       TEXT
     \end{quotation}

o

     \begin{quote}
       TEXT
     \end{quote}

   Incluye una comilla.  Ambos entornos sangran los márgenes en ambos
lados por ‘\leftmargin’ y el texto está justificado a la derecha.

   Se diferencian en cómo tratan los párrafos.  En el entorno
‘quotation’, los párrafos tienen una sangría de 1.5em y el espacio entre
párrafos es pequeño, ‘0pt plus 1pt’.  En el entorno ‘quote’, los
párrafos no tienen sangría y hay espacio vertical entre párrafos (es la
longitud elástica ‘\parsep’).

     \begin{quotation} \smallskip\it
       Hace cuatro veintenas y siete años
       ... no se pierde de la tierra.
       \hspace{1em plus 1fill}---Abraham Lincoln
     \end{quotation}

8.21 ‘tabbing’
==============

Sinopsis:

     \begin{tabbing}
     ROW1COL1 \= ROW1COL2 ...  \\
     ROW2COL1 \> ROW2COL2 ...  \\
     ...
     \end{tabbing}

   Alinea el texto en columnas, configurando tabulaciones y tabulando en
ellas tanto como fue posible en una máquina de escribir.  Esto se usa
con menos frecuencia que los entornos ‘tabular’ (see tabular) o
‘array’ (see array) porque en esos, el ancho de cada columna no
necesita ser constante y no es necesario conocerlo de antemano.

   Este ejemplo tiene una primera línea donde las tabulaciones se
establecen en anchos explícitos, terminados por un comando ‘\kill’ (que
se describe a continuación):

     \begin{tabbing}
     \hspace{1.2in}\=\hspace{1in}\=\kill
     Ship                \>Armas             \>Año    \\
     \textit{Sophie}     \>14               \>1800    \\
     \textit{Polychrest} \>24               \>1803    \\
     \textit{Lively}     \>38               \>1804    \\
     \textit{Surprise}   \>28               \>1805    \\
     \end{tabbing}

   Tanto el entorno ‘tabbing’ como el entorno más utilizado ‘tabular’
ponen el texto en columnas.  La más importante distinción es que en
‘tabular’ el ancho de las columnas LaTeX lo determina automáticamente,
mientras que en ‘tabbing’ el usuario establece las paradas de
tabulación.  Otra distinción es que ese ‘tabular’ genera un cuadro, pero
‘tabbing’ se puede a dividir en páginas.  Finalmente, mientras que
‘tabular’ se puede usar en cualquier modo, ‘tabbing’ se puede usar solo
en modo párrafo y siempre comienza un nuevo párrafo, sin sangría.

   Además, como se muestra en el ejemplo anterior, no es necesario para
usar la forma destacada del comando ‘\hspace’ al principio de una fila
tabulada.  El margen derecho del entorno ‘tabbing’ es el final de la
línea, de modo que el ancho del entorno sea ‘\linewidth’.

   El entorno ‘tabbing’ contiene una secuencia de “filas tabuladas”.  La
primera fila tabulada comienza inmediatamente después ‘\begin{tabbing}’
y cada fila termina con ‘\\’ o ‘\kill’.  La última fila puede omitir el
‘\\’ y terminar con solo ‘\end{tabbing}’.

   En cualquier punto, el entorno ‘tabbing’ tiene un “patrón” de
tabulación actual, una secuencia de tabulaciones N > 0, numeradas 0, 1,
etc.  Estos crean N columnas correspondientes.  Tabulaciones 0 siempre
es el margen izquierdo, definido por el entorno envolvente.  Tabulación
número I se establece si se le asigna una posición horizontal en la
página.  Número de tabulación I solo se puede establecer si todas las
paradas 0, ..., i-1 ya se han configurado; normalmente las paradas
posteriores están a la derecha de las anteriores.

   De forma predeterminada, cualquier texto compuesto en un entorno
‘tabbing’ está compuesto alineado de forma irregular a la derecha y a la
izquierda en la tabulación actual.  La composición tipográfica está
hecha en modo LR (see Modos).

   Los siguientes comandos se pueden usar dentro de un entorno
‘tabbing’.  Todos son frágiles (see \protect).

‘\\ (tabulación)’
     Termina una línea tabulada y la compone.

‘\= (tabulación)’
     Establece una tabulación en la posición actual.

‘\> (tabulación)’
     Avanza a la siguiente tabulación.

‘\<’
     Pone el siguiente texto a la izquierda del margen local (sin
     cambiar el margen).  Solo se puede utilizar al principio de la
     línea.

‘\+’
     Mueve el margen izquierdo del siguiente y todos los siguientes
     comandos una tabulación a la derecha, comenzando la línea tabulada
     si es necesario.

‘\-’
     Mueve el margen izquierdo del siguiente y todos los siguientes
     comandos una tabulación a la izquierda, comenzando la línea
     tabulada si es necesario.

‘\' (tabulación)’
     Mueve todo lo que hayas escrito hasta ahora en la columna actual,
     es decir, todo, desde el comando ‘\>’ más reciente, ‘\<’, ‘\'’,
     ‘\\’, o ‘\kill’, a la columna anterior y alineado a la derecha, al
     ras contra la tabulación de la columna actual.

‘\` (tabulación)’
     Te permite poner el texto al ras contra cualquier tabulación,
     incluidas las tabulaciones 0.  Sin embargo, no puedes mover el
     texto a la derecha de la última columna porque no hay una
     tabulación allí.  El comando ‘\`’ mueve todo el texto que le sigue,
     hasta el comando ‘\\’ o ‘\end{tabbing}’ que finaliza la línea, al
     margen derecho del entorno ‘tabbing’.  No debe haber ningún comando
     ‘\>’ o ‘\'’ entre ‘\`’ y ‘\\’ o ‘\end{tabbing}’ que finaliza la
     línea.

‘\a (tabulación)’
     En un entorno ‘tabbing’, los comandos ‘\=’, ‘\'’ y ‘\`’ no produce
     acentos como de costumbre (see Acentos).  En cambio, usa los
     comandos ‘\a=’, ‘\a'’ y ‘\a`’.

‘\kill’
     Establece tabulaciones sin producir texto.  Funciona igual que ‘\\’
     excepto que desecha la línea actual en lugar de producir una salida
     para ella.  Cualquier comando ‘\=’, ‘\+’ o ‘\-’ en esa línea
     permanece en efecto.

‘\poptabs’
     Restaura las posiciones de tabulación guardadas por el último
     ‘\pushtabs’.

‘\pushtabs’
     Guarda todas las posiciones de tabulación actuales.  Útil para
     cambiar temporalmente posiciones de tabulación en medio de un
     entorno ‘tabbing’.

‘\tabbingsep’
     Distancia del texto movido por ‘\'’ a la izquierda de la tabulación
     actual.

   Este ejemplo compone una función de Pascal:

     \begin{tabbing}
     function \= fact(n : integer) : integer;\\
              \> begin \= \+ \\
                    \> if \= n > 1 then \+ \\
                             fact := n * fact(n-1) \- \\
                       else \+ \\
                             fact := 1; \-\- \\
                 end;\\
     \end{tabbing}

La salida se ve así.

     function fact(n : integer) : integer;
              begin
                    if n > 1 then
                       fact := n * fact(n-1);
                    else
                       fact := 1;
              end;

Este ejemplo es solo para ilustrar el entorno.  En realidad escribir
código de ordenador en una máquina de escribir como esta, un entorno
textual (see verbatim) normalmente sería lo mejor.  Para un código
bien impreso, hay unos cuantos paquetes, incluido ‘algorithm2e’,
‘fancyvrb’, ‘listings’ y ‘minted’.

8.22 ‘table’
============

Sinopsis:

     \begin{table}[UBICACIÓN]
       CUERPO DE LA TABLA
       \caption[LOFTITLE]{TITLE}  % opcional
       \label{LABEL}              % también opcional
     \end{table}

   Una clase de flotantes (see Flotantes).  No se pueden dividir en
páginas por lo que no se escriben en secuencia con el texto normal, sino
que en su lugar flotan a un lugar conveniente, como la parte superior de
una página siguiente.

   Este entorno ‘table’ de ejemplo contiene un ‘tabular’

     \begin{table}
       \centering\small
       \begin{tabular}{ll}
         \multicolumn{1}{c}{\textit{Autor}}
           &\multicolumn{1}{c}{\textit{Pieza}}  \\ \hline
         Bach            &Cello Suite Número 1  \\
         Beethoven       &Cello Sonata Número 3 \\
         Brahms          &Cello Sonata Número 1
       \end{tabular}
       \caption{Las mejores piezas de violonchelo}
       \label{tab:cello}
     \end{table}

pero puedes poner muchos tipos diferentes de contenido en una ‘tabla’:
el CUERPO DE LA TABLA puede contener texto, comandos de LaTeX, gráficos,
etc.  Es tipografiado en un ‘parbox’ de ancho ‘\textwidth’.

   Para los posibles valores de PLACEMENT y su efecto en el algoritmo de
colocación de flotantes, see Flotantes.

   La etiqueta es opcional; se usa para referencias cruzadas (see
Referencias cruzadas).  El comando ‘\caption’ también es opcional.
Especifica texto del título TITLE para la tabla (see \caption).  De
manera predeterminada es numerado.  Si su LOTTITLE opcional está
presente, entonces ese texto se utiliza en la lista de tablas en lugar
de TITLE (see Tabla de contenido etc.).

   En este ejemplo, la tabla y el título flotarán en la parte inferior
de una página, a menos que se empuje a una página flotante al final.

     \begin{table}[b]
       \centering
       \begin{tabular}{r|p{2in}} \hline
         Uno &El número loneliest \\
         Dos &Puede estar tan triste como uno.
              Es el número más solitario desde el número uno.
       \end{tabular}
       \caption{Virtud cardinal}
       \label{tab:CardinalVirtues}
     \end{table}

8.23 ‘tabular’
==============

Sinopsis:

     \begin{tabular}[POS]{COLS}
       ENTRADA DE COLUMNA 1  &ENTRADA DE COLUMNA 2
       ...
       &ENTRADA DE COLUMNA N \\
       ...
     \end{tabular}

o

     \begin{tabular*}{WIDTH}[POS]{COLS}
       ENTRADA DE COLUMNA 1  &ENTRADA DE COLUMNA 2
       ...
       &ENTRADA DE COLUMNA N \\
       ...
     \end{tabular*}

   Produce una tabla, una caja que consta de una secuencia de filas
horizontales.  Cada fila consta de elementos alineados verticalmente en
columnas.  Este ilustra muchas de las características.

     \begin{tabular}{l|l}
       \textit{Nombre del jugador} &\textit{Carrera de jonrones} \\
       \hline
       Hank Aarón &755 \\
       nena Ruth &714
     \end{tabular}

La salida tendrá dos columnas alineadas a la izquierda con una barra
vertical entre ellos.  Esto se especifica en el argumento ‘{l|l}’ de
‘tabular’.  Coloca las entradas en diferentes columnas separándolas con
un ampersand, ‘&’.  El final de cada fila está marcado con una doble
barra invertida, ‘\\’.  Pone una regla horizontal debajo de una fila,
después de una doble barra invertida, con ‘\hline’.  Después de la
última fila, las ‘\\’ son opcionales, a menos que un ‘\hline’ siga el
comando para poner una regla debajo de la tabla.

   Los argumentos requeridos y opcionales para ‘tabular’ consisten en:

POS
     Opcional.  Especifica la posición vertical de la tabla.  El valor
     predeterminado es alinear la tabla para que su centro vertical
     coincida con la línea base del texto circundante.  Hay otras dos
     posibles alineaciones: ‘t’ alinea la tabla para que su fila
     superior coincida con la línea base del texto circundante y ‘b’ se
     alinea en la fila inferior.

     Esto solo tiene efecto si hay otro texto.  En el caso común de un
     ‘tabular’ solo en un entorno ‘center’ esta opción no hace ninguna
     diferencia.

COLS
     Requerido.  Especifica el formato de las columnas.  Consiste en una
     secuencia de los siguientes especificadores, correspondientes a los
     tipos de material de columna e intercolumna.

     ‘l’
          Una columna de elementos alineados a la izquierda.

     ‘r’
          Una columna de elementos alineados a la derecha.

     ‘c’
          Una columna de elementos centrados.

     ‘|’
          Una línea vertical de la altura y la profundidad completas del
          entorno.

     ‘@{TEXTO O ESPACIO}’
          Inserta TEXTO O ESPACIO en esta ubicación en cada fila.  El
          material TEXTO O ESPACIO está compuesto en modo LR. Este texto
          es frágil (see \protect).

          Si entre dos especificadores de columna no hay una
          @-expresión, entonces las clases ‘book’, ‘article’ y ‘report’
          de LaTeX ponen a cada lado de cada columna un espacio de ancho
          ‘\tabcolsep’, que de manera predeterminada es 6pt.  Es decir,
          de manera predeterminada las columnas adyacentes se separan
          con 12pt (por lo que ‘\tabcolsep’ tiene un nombre engañoso ya
          que es solo la mitad de la separación entre columnas
          tabulares).  Además, un espacio de ‘\tabcolsep’ también viene
          antes de la primera columna y después de la columna final, a
          menos que coloques una ‘@{...}’ allí.

          Si redefines el valor predeterminado y usas una @-expresión,
          entonces LaTeX no inserta ‘\tabcolsep’ por lo que debes
          insertar cualquier espacio deseado tú mismo, como en
          ‘@{\hspace{1em}}’.

          Una expresión ‘@{}’ vacía eliminará el espacio.  En
          particular, a veces deseas eliminar el espacio antes de la
          primera columna o después de la última, como en el siguiente
          ejemplo donde las líneas tabulares deben estar en el margen
          izquierdo.

               \begin{flushleft}
                 \begin{tabular}{@{}l}
                   ...
                 \end{tabular}
               \end{flushleft}

          El siguiente ejemplo muestra texto, un punto decimal entre las
          columnas, dispuestas de forma que los números de la tabla
          queden alineados en ella.

               \begin{tabular}{r@{$.$}l}
                 $3$ &$14$  \\
                 $9$ &$80665$
               \end{tabular}

          Un comando ‘\extracolsep{WD}’ en una expresión @ provoca un
          espacio adicional de ancho WD para que aparezca a la izquierda
          de todas las subsiguientes columnas, hasta que sea revocado
          por otro ‘\extracolsep’.  A diferencia del espacio entre
          columnas ordinario, este espacio adicional no se suprime por
          una @-expresión.  Un comando ‘\extracolsep’ solo se puede usar
          en una @-expresión en el argumento ‘cols’.  A continuación,
          LaTeX inserta la cantidad correcta de espacios entre columnas
          para que toda la tabla tenga 4 pulgadas de ancho.

               \begin{tabular*}{4in}{l@{\extracolsep{\fill}}l}
                 Siete veces abajo, ocho veces arriba \ldots
                 &¡así es la vida!
               \end{tabular*}

          Para insertar comandos que se ejecutan automáticamente antes
          de una determinada columna, carga el paquete ‘array’ y usa el
          especificador ‘>{...}’.

     ‘p{WD}’
          Cada elemento de la columna se escribe en un parbox de ancho
          WD, como si fuera el argumento de un comando
          ‘\parbox[t]{wd}{...}’.

          Un salto de línea de doble barra invertida ‘\\’ puede no
          aparecer en el elemento, excepto dentro de un entorno como
          ‘minipage’, ‘array’ o ‘tabular’, o dentro de un ‘\parbox’
          explícito, o en el entorno de una declaración ‘\centering’,
          ‘\raggedright’ o ‘\raggedleft’ (cuando se usa en un elemento
          de columna ‘p’, estas declaraciones deben aparecer entre
          llaves, como con ‘{\centering .. \\ ..}’).  De lo contrario,
          LaTeX malinterpretará la doble barra invertida como terminando
          la fila tabular.  En cambio, para obtener un salto de línea
          allí, usa ‘\newline’ (see \newline).

     ‘*{NUM}{COLS}’
          Equivalente a NUM copias de COLS, donde NUM es un entero
          positivo y COLS es una lista de especificadores.  Por lo
          tanto, el especificador ‘\begin{tabular}{|*{3}{l|r}|}’ es
          equivalente a el especificador ‘\begin{tabular}{|l|rl|rl|r|}’.
          Ten en cuenta que COLS puede contener otra ‘*’-expresión.

WIDTH
     Obligatorio para ‘tabular*’, no permitido para ‘tabular’.
     Especifica el ancho del entorno ‘tabular*’.  El espacio entre
     columnas debe ser elástico, como con ‘@{\extracolsep{\fill}}’, para
     permitir la tabla para estirar o encoger para hacer el ancho
     especificado, o de lo contrario es probable que obtengan el
     ‘Underfull \hbox (incorrecto 10000) alineado ...’ advertencia.

   Parámetros que controlan el formato:

‘\arrayrulewidth’
     Una longitud que es el grosor de la regla creada por ‘|’, ‘\hline’
     y ‘\vline’ en ‘tabular’ y ‘array’ entornos.  El valor
     predeterminado es ‘.4pt’.  Cámbialo como en
     ‘\setlength{\arrayrulewidth}{0.8pt}’.

‘\arraystretch’
     Un factor por el cual el espacio entre filas en los entorno
     ‘tabular’ y ‘array’ se multiplica.  El valor predeterminado es ‘1’,
     para sin escala.  Cámbialo a ‘\renewcommand{\arraystretch}{1.2}’.

‘\doublerulesep’
     Una longitud que es la distancia entre las reglas verticales
     producidas por el especificador ‘||’.  El valor predeterminado es
     ‘2pt’.

‘\tabcolsep’
     Una longitud que es la mitad del espacio entre columnas.  El valor
     predeterminado es ‘6pt’.  Cámbialo con ‘\setlength’.

   Los siguientes comandos se pueden usar dentro del cuerpo de un
entorno ‘tabular’, los dos primeros dentro de una entrada y los dos
segundos entre líneas:

8.23.1 ‘\multicolumn’
---------------------

Sinopsis:

     \multicolumn{NUMCOLS}{COLS}{TEXT}

   Crea una entrada ‘array’ o ‘tabular’ que abarque varias columnas.  El
primer argumento NUMCOLS da el número de columnas a abarcar.  El segundo
argumento COLS especifica el formato de la entrada, con ‘c’ para
centrado, ‘l’ para alineado a la izquierda o ‘r’ para volcarlo a la
derecha.  El tercer argumento TEXT da el contenido de esa entrada.

   En este ejemplo, en la primera fila, la segunda y la tercera columna
son abarcadas por el encabezado único ‘Name’.

     \begin{tabular}{lccl}
       \textit{ID}       &\multicolumn{2}{c}{\textit{Name}} &\textit{Age} \\
       \hline
       978-0-393-03701-2 &O'Brian &Patrick                  &55           \\
         ...
     \end{tabular}

   Lo que cuenta como una columna es: el especificador de formato de
columna para el entorno ‘array’ o ‘tabular’ se divide en partes, donde
cada parte (excepto la primera) comienza con ‘l’, ‘c’, ‘r’, o ‘p’.  Así
que desde ‘\begin{tabular}{|r|ccp{1.5in}|}’ las partes son ‘|r|’, ‘c’,
‘c’, y ‘p{1.5in}|’.

   El argumento COLS redefine el área ‘array’ o ‘tabular’ intercolumna
del entorno predeterminado junto a esta entrada multicolumna.  Para
afectar esa área, este argumento puede contener barras verticales ‘|’
que indica la ubicación de las reglas verticales y expresiones ‘@{...}’.
Por lo tanto, si COLS es ‘|c|’ entonces esta entrada multicolumna estará
centrada y una regla vertical vendrá en el área intercolumna anterior y
posterior.  Esta tabla detalla el comportamiento exacto.

     \begin{tabular}{|cc|c|c|}
       \multicolumn{1}{r}{w}            % entrada uno
         &\multicolumn{1}{|r|}{x}      % entrada dos
         &\multicolumn{1}{|r}{y}       % entrada tres
         &z                                                         % entrada cuatro
     \end{tabular}

Antes de la primera entrada, la salida no tendrá una regla vertical
porque ‘\multicolumn’ tiene el especificador COLS ‘r’ sin barra vertical
inicial.  Entre la entrada uno y la entrada dos habrá una regla
vertical; aunque la primera COLS no tiene barra vertical final, la
segunda COLS tiene una inicial.  Entre la entrada dos y entrada tres hay
una sola regla vertical; a pesar de eso COLS en ambas llamadas de
‘multicolumn’ circundantes para una regla vertical, solo obtienes una
regla.  Entre la entrada tres y la entrada cuatro no hay regla vertical;
el valor predeterminado pide una, pero COLS en la entrada tres
‘\multicolumn’ lo deja afuera, y eso tiene prioridad.  Finalmente,
siguiendo la entrada cuatro hay una regla vertical debido al valor
predeterminado.

   El número de columnas distribuidas NUMCOLS puede ser 1.  Además de
dar la capacidad de cambiar la alineación horizontal, esto también es
útil para redefinir una fila de la intercolumna predeterminada de la
especificación del área de definición ‘tabular’, incluida la colocación
de reglas verticales.

   En el siguiente ejemplo, en la definición de ‘tabular’, la primera
columna se especifica de manera predeterminada justificada a la
izquierda, pero en la primera fila la entrada está centrada con
‘\multicolumn{1}{c}{\textsc{Punto}}’.  También en la primera fila, las
columnas segunda y tercera están atravesadas por una entrada única con
‘\\multicolumn{2}{c}{\\textsc{Span}}’, redefiniendo la especificación
para centrar ese rango de dos columnas en la página en-guión.

     \begin{tabular}{l|r@{--}l}
       \multicolumn{1}{c}{\textsc{Punto}}
         &\multicolumn{2}{c}{\textsc{Span}} \\ \hline
       Barroca              &1600              &1760                    \\
       Clásica               &1730              &1820                    \\
       Romántica         &1780              &1910                    \\
       Impresionista    &1875              &1925
     \end{tabular}

Aunque la especificación ‘tabular’ de manera predeterminada pone una
regla vertical entre la primera y la segunda columna, no aparece tal
regla vertical en la primera fila aquí.  Eso es porque no hay una barra
vertical en la parte COLS del primer comando ‘\multicolumn’ de la
primera fila.

8.23.2 ‘\vline’
---------------

Dibuja una línea vertical en un entorno ‘tabular’ o ‘array’ extendiendo
la altura y la profundidad completas de la entrada de una fila.
Posiblemente también se use en una @-expresión, aunque su sinónimo barra
vertical ‘|’ es más común.  Este comando rara vez se usa en el cuerpo de
una tabla; normalmente las líneas verticales de una tabla se especifican
en el argumento COLS de ‘tabular’ y se anula según sea necesario con
‘\multicolumn’ (see tabular).

   El siguiente ejemplo ilustra algunas dificultades.  En el segundo de
la primera fila la entrada ‘\hfill’ mueve ‘\vline’ al borde izquierdo de
la celda.  Pero eso es diferente a ponerlo a medio camino entre las dos
columnas, por lo que entre la primera y la segunda columna hay dos
reglas verticales, con la del especificador ‘{c|cc}’ viniendo antes de
uno producido por ‘\vline\hfill’.  En cambio, la primera fila tercera
entrada muestra la forma habitual de poner una barra vertical entre dos
columnas.  En la segunda fila, ‘ghi’ es la entrada más ancha en su
columna por lo que en ‘\vline\hfill’ el ‘\hfill’ no tiene efecto y la
línea vertical en esa entrada aparece inmediatamente al lado de ‘g’, sin
espacios en blanco.

     \begin{tabular}{c|cc}
       x   &\vline\hfill y   &\multicolumn{1}{|r}{z} \\ % fila 1
       abc &def &\vline\hfill ghi                             % fila 2
     \end{tabular}

8.23.3 ‘\cline’
---------------

Sinopsis:

     \cline{I-J}

   En un entorno ‘array’ o ‘tabular’, dibuja una regla horizontal
comenzando en column I y terminando en column J.  Los guiones, ‘-’,
deben aparecer en el argumento obligatorio.  Para abarcar una sola
columna usa el número dos veces, como con ‘\cline{2-2}’.

   Este ejemplo pone dos líneas horizontales entre la primera y la
segunda filas, una línea en la primera columna solamente, y la otra que
abarca la tercera y cuarta columnas.  Las dos líneas están una al lado
de la otra, a la misma altura.

     \begin{tabular}{llrr}
       a &b &c &d \\ \cline{1-1} \cline{3-4}
       e &f &g &h
     \end{tabular}

8.23.4 ‘\hline’
---------------

Dibuja una línea horizontal del ancho del ‘tabular’ adjunto o entorno
‘array’.  Se utiliza comúnmente para dibujar una línea arriba, abajo y
entre las filas de una tabla.

   En este ejemplo, la parte superior de la tabla tiene dos reglas
horizontales, una arriba de la otra, que abarca ambas columnas.  La
parte inferior de la tabla tiene una sola regla que abarca ambas
columnas.  Debido al ‘\hline’, la línea ‘tabular’ de la segunda fila que
termina con doble barra invertida ‘\\’ es obligatoria.

     \begin{tabular}{ll} \hline\hline
       Béisbol y Medias Rojas     \\
       Baloncesto y Celtics          \\ \hline
     \end{tabular}

8.24 ‘thebibliography’
======================

Sinopsis:

     \begin{thebibliography}{WIDEST-LABEL}
       \bibitem[LABEL]{CITE_KEY}
       ...
     \end{thebibliography}

   Elabora una bibliografía o una lista de referencias.  Hay dos formas
de producir listas bibliográficas.  Este entorno es adecuado cuando solo
tienes unas pocas referencias y puedes mantener la lista a mano.  See
Usar BibTeX, para un enfoque más sofisticado.

   Esto muestra el entorno con dos entradas.

     Este trabajo se basa en \cite{latexdps}.
     Juntos son \cite{latexdps, texbook}.
       ...
     \begin{thebibliography}{9}
     \bibitem{latexdps}
       Leslie Lamport.
       \textit{\LaTeX{}: un sistema de preparación de documentos}.
       Addison-Wesley, Reading, Massachusetts, 1993.
     \bibitem{texbook}
       Donald Ervin Knuth.
       \textit{El libro de \TeX}.
       Addison-Wesley, Reading, Massachusetts, 1983.
     \end{thebibliography}

Esto estiliza la primera referencia como ‘[1] Leslie ...’, y así ‘...
basado en \cite{latexdps}’ produce la coincidencia ‘... basado en [1]’.
El segundo ‘\cite’ produce ‘[1, 2]’.  Debes compilar el documento dos
veces para resolver estas referencias.

   El argumento obligatorio WIDEST-LABEL es texto que, cuando se
compone, es tan ancho como la etiqueta de artículo más ancha producida
por los comandos ‘\bibitem’.  La tradición es usar ‘9’ para
bibliografías con menos de 10 referencias, ‘99’ para las de menos de
100, etc.

   La lista bibliográfica está encabezada por un título como
‘Bibliography’.  Para cambiarlo hay dos casos.  En las clases ‘book’ y
‘report’, donde la sección de nivel superior es ‘\chapter’ y el título
predeterminado es ‘Bibliography’, ese título está en la macro
‘\bibname’.  Para ‘article’, donde el nivel superior de la clase de
seccionado es ‘\section’ y la predeterminada es ‘References’, el título
está en la macro ‘\refname’.  Cámbialo redefiniendo el comando, como con
‘\renewcommand{\refname}{Referencias citadas}’, después
‘\begin{document}’.

   Los paquetes de soporte de idiomas como ‘babel’ automáticamente
redefinen ‘\refname’ o ‘\bibname’ para ajustarse al idioma seleccionado.

   See list, para los parámetros de control de diseño de lista.

8.24.1 ‘\bibitem’
-----------------

Sinopsis:

     \bibitem{CITE_KEY}

o

     \bibitem[LABEL]{CITE_KEY}

   Genera una entrada etiquetada de manera predeterminada por un número
generado usando el contador ‘enumi’.  La “clave de cita” CITE_KEY puede
ser cualquier cadena de letras, números y signos de puntuación (pero no
comas).

   See thebibliography, por ejemplo.

   Cuando se proporciona, el LABEL opcional se convierte en la etiqueta
de entrada y el contador ‘enumi’ no se incrementa.  Con este

     \begin{thebibliography}
     \bibitem[Lamport 1993]{latexdps}
       Leslie Lamport.
       \textit{\LaTeX{}: un sistema de preparación de documentos}.
       Addison-Wesley, Reading, Massachusetts, 1993.
     \bibitem{texbook}
       Donald Ervin Knuth.
       \textit{El libro de \TeX}.
       Addison-Wesley, Reading, Massachusetts, 1983.
     \end{thebibliography}

la primera entrada tendrá el estilo ‘[Lamport 1993] Leslie ...’ (La
cantidad de espacio horizontal que LaTeX deja para la etiqueta depende
de el argumento WIDEST-LABEL del entorno ‘thebibliography’; ve
thebibliography).  De manera similar, ‘... basado en \cite{latexdps}’
producirá ‘... basado en [Lamport 1994]’.

   Si mezclas las entradas de ‘\bibitem’ que tienen LABEL con las que
no, entonces LaTeX enumerará las no etiquetadas secuencialmente.  En el
ejemplo de arriba la entrada ‘texbook’ aparecerá como ‘[1] Donald ...’,
a pesar de que es la segunda entrada.

   Si usas el mismo CITE_KEY dos veces, obtendrás ‘Advertencia LaTeX:
había etiquetas definidas de forma múltiple’.

   Bajo el capó, LaTeX recuerda información CITE_KEY y LABEL porque
‘\bibitem’ la escribe en el archivo auxiliar ‘JOBNAME.aux’ (see Nombre del trabajo).
Por ejemplo, el ejemplo anterior hace que los dos
‘\bibcite{latexdps}{Lamport, 1993}’ y ‘\bibcite{texbook}{1}’ que
aparezcan en ese archivo.  El archivo ‘.aux’ es leído por el comando
‘\begin{document}’ y luego la información está disponible para los
comandos ‘\cite’.  Esto explica por qué necesitas ejecutar LaTeX dos
veces para resolver las referencias: una vez para escribirlo y una vez
para leerlo.

   Debido a este algoritmo de dos pasos, cuando agregas un ‘\bibitem’ o
cambias su CITE_KEY puedes obtener ‘Advertencia de LaTeX: la(s)
etiqueta(s) puede(n) haber cambiado. Vuelve a ejecutar para obtener
referencias cruzadas correctas’.  Arréglalo para recompilarlo.

8.24.2 ‘\cite’
--------------

Sinopsis:

     \cite{KEYS}

o

     \cite[SUBCITE]{KEYS}

   Genera como salida una cita a las referencias asociadas a KEYS.  La
KEYS obligatoria es una clave de cita, o una lista de claves de citas
separadas por comas (see \bibitem).

   Este

     La fuente definitiva es \cite{texbook}.
       ...
     \begin{thebibliography}
     \bibitem{texbook}
       Donald Ervin Knuth.
       \textit{El libro de \TeX}.
       Addison-Wesley, Reading, Massachusetts, 1983.
     \end{thebibliography}

produce una salida como ‘... la fuente es [1]’.  Puedes cambiar la
aparición de la cita y de la referencia mediante el uso de estilos de
bibliografía si genera automáticamente el entorno ‘thebibliography’.
Para más información Usar BibTeX.

   El argumento opcional SUBCITE se adjunta a la cita.  Por ejemplo, ‘Ve
14.3 en \cite[p.~314]{texbook}’ podría producir ‘Ve 14.3 en [1,
p. 314]’.

   Además de lo que aparece en la salida, ‘\cite’ escribe información al
archivo auxiliar ‘JOBNAME.aux’ (see Nombre del trabajo).  Por
ejemplo, ‘\cite{latexdps}’ escribe ‘\citation{latexdps}’ a ese archivo.
Esta información la utiliza BibTeX para incluir en su lista de
referencias solo aquellos trabajos que realmente se han citado; see
\nocite también.

   Si KEYS no está en la información de tu bibliografía, obtendrás
‘Advertencia de LaTeX: Había referencias no definidas’, y en la salida
la cita se muestra como un signo de interrogación en negrita entre
corchetes.  Hay dos posibles causas.  Si has escrito algo mal, como en
‘\cite{texbok}’ entonces necesitas corregir la ortografía.  Por otro
lado, si acabas de agregar o modificar información bibliográfica y así
cambias el archivo ‘.aux’ (see \bibitem) entonces la solución puede
ser ejecutar LaTeX nuevamente.

8.24.3 ‘\nocite’
----------------

Sinopsis:

     \nocite{KEYS}

   No produce salida pero escribe KEYS en el archivo auxiliar
‘JOBNAME.aux’ (see Nombre del trabajo).

   El argumento obligatorio KEYS es una lista separada por comas de una
o más claves de cita (see \bibitem).  Esta información la utiliza
BibTeX para incluir estos trabajos en tu lista de referencia aunque no
los hayas citado explícitamente (see \cite).

8.24.4 Usar BibTeX
------------------

Como se describe en ‘thebibliography’ (see thebibliography), un
enfoque sofisticado para la gestión de bibliografías es proporcionado
por el programa BibTeX.  Esta es solo una introducción; ve la
documentación completa sobre CTAN (see CTAN).

   Con BibTeX, no usas el entorno ‘thebibliography’ directamente (see
thebibliography).  En su lugar, incluye estas líneas:

     \bibliographystyle{BIBSTYLE}
     \bibliography{BIBFILE1, BIBFILE2, ...}

BIBSTYLE hace referencia a un archivo ‘BIBSTYLE.bst’, que define cómo se
verán tus citas.  Los BIBSTYLEs estándar distribuidos con BibTeX son:

‘alfa’
     Las etiquetas se forman a partir del nombre del autor y el año de
     publicación.  Los elementos bibliográficos están ordenados
     alfabéticamente.
‘plain’
     Las etiquetas son números enteros.  Ordena los elementos
     bibliográficos alfabéticamente.
‘unsrt’
     Como ‘plain’, pero las entradas están en orden de cita.
‘abbrv’
     Como ‘plain’, pero etiquetas más compactas.

Existen muchos, muchos otros archivos de estilo BibTeX, adaptados a las
demandas de varias publicaciones.  Ve el tema CTAN
<https://ctan.org/topic/bibtex-sty>.

   El comando ‘\bibliography’ es lo que realmente produce la
bibliografía.  Su argumento es una lista separada por comas, que se
refiere a archivos llamados ‘BIBFILE1.bib’, ‘BIBFILE2.bib’, ... Estos
contienen tu base de datos en formato BibTeX.  Esto muestra un par
típico de entradas en ese formato.

     @book{texbook,
       title     = {El {{\TeX}}book},
       author    = {D.E. Knuth},
       isbn      = {0201134489},
       series    = {Ordenadores \& typesetting},
       year      = {1983},
       publisher = {Addison-Wesley}
     }
     @book{sexbook,
         author    = {W.H. Maestros y V.E. Johnson},
         title     = {Respuesta sexual humana},
         year      = {1966},
         publisher = {Libros Bantam}
     }

   Solo las entradas bibliográficas a las que se hace referencia a
través de ‘\cite’ y ‘\nocite’ aparecerá en la bibliografía del
documento.  Así puedes mantener todas tus fuentes juntas en un archivo,
o una pequeña cantidad de archivos, y confía en BibTeX para incluir en
este documento solo aquellos que usaste.

   Con BibTeX, el argumento KEYS para ‘\nocite’ también puede ser el
carácter único ‘*’.  Esto significa citar implícitamente todas las
entradas de todas las bibliografías dadas.

8.24.4.1 Mensajes de error BibTeX
.................................

Si olvidas usar ‘\bibliography’ o ‘\bibliographystyle’ en tu documento
(o, menos probablemente, cualquier comando ‘\cite’ o ‘\nocite’), BibTeX
emitirá un mensaje de error.  Porque BibTeX se puede usar con cualquier
programa, no solo LaTeX, los mensajes de error se refieren a los
comandos internos leídos por BibTeX (desde un archivo ‘.aux’), en lugar
de los comandos de nivel de usuario descritos anteriormente.

   Aquí hay una tabla que muestra los comandos internos mencionados en
los errores BibTeX y los correspondientes comandos a nivel de usuario.

‘\bibdata’
     ‘\bibliography’

‘\bibstyle’
     ‘\bibliographystyle’

‘\citation’
     ‘\cite’, ‘\nocite’

   Por ejemplo, si tu documento no tiene comando ‘\bibliographystyle’,
BibTeX se queja de la siguiente manera:

     No  encontré ningún  comando \bibstyle  --- mientras  leía el  archivo
     DOCUMENT.aux

8.25 ‘theorem’
==============

Sinopsis:

     \begin{theorem}
       CUERPO DEL TEOREMA
     \end{theorem}

   Produce ‘Teorema N’ en negrita seguido del CUERPO DEL TEOREMA en
cursiva.  La posibilidad de numeración para N se describe en
‘\newtheorem’ (see \newtheorem).

     \newtheorem{lem}{Lemma}      % en el preámbulo
     \newtheorem{thm}{Theorem}
       ...
     \begin{lem}                    % en el cuerpo del documento
       texto del lema
     \end{lem}

     El siguiente resultado sigue inmediatamente.
     \begin{thm}[Gauss] % pone 'Gauss' entre paréntesis después del
        encabezado del teorema
       texto del teorema
     \end{thm}

   La mayoría de los documentos nuevos usan los paquetes ‘amsthm’ y
‘amsmath’ de la Sociedad Matemática Americana.  Entre otras cosas estos
paquetes incluyen una gran cantidad de opciones para entornos de
teorema, como las opciones de estilo.

8.26 ‘titlepage’
================

Sinopsis:

     \begin{titlepage}
       ... texto y espaciado ...
     \end{titlepage}

   Crea una página de título, una página sin número de página impreso o
encabezado y con las páginas sucesivas numeradas a partir de la página
uno.

   En este ejemplo, todo el formato, incluido el espaciado vertical, se
deja a el autor.

     \begin{titlepage}
     \vspace*{\stretch{1}}
     \begin{center}
       {\huge\bfseries Tesis \\[1ex]
                       título} \\[6.5ex]
       {\large\bfseries Nombre del autor} \\
       \vspace{4ex}
       Tesis enviada a \\[5pt]
       \textit{Nombre de la universidad} \\[2cm]
       en cumplimiento parcial para la concesión del título de \\[2cm]
       \textsc{\Gran Doctor en Filosofía} \\[2ex]
       \textsc{\large Matemáticas} \\[12ex]
       \vfill
       Departamento de Matemáticas               \\
       Dirección                                 \\
       \vfill
       \today
     \end{center}
     \vspace{\stretch{2}}
     \end{titlepage}

   En su lugar, produce una página de título estándar sin un entorno
‘titlepage’, usa ‘\maketitle’ (see \maketitle).

8.27 ‘verbatim’
===============

Sinopsis:

     \begin{verbatim}
     TEXTO-LITERAL
     \end{verbatim}

   Un entorno de creación de párrafos en el que LaTeX produce como
salida exactamente lo que escribes como entrada.  Por ejemplo, dentro de
TEXTO-LITERAL el carácter backslash ‘\’ no inicia los comandos, imprime
una ‘\’, y se toman literalmente los retornos de carro y espacios en
blanco.  La salida aparece en una letra de tipo máquina de escribir
monoespaciada (‘\tt’).

     \begin{verbatim}
     Símbolo juramento: %&$#?!.
     \end{verbatim}

   La única restricción en ‘texto-literal’ es que no puede incluir la
cadena ‘\end{verbatim}’.

   No puedes usar el entorno textual en el argumento de las macros, por
instancia en el argumento de un ‘\section’.  Esto no es lo mismo que los
comandos son frágiles (see \protect), en lugar de eso, simplemente
no puede funcionar, ya que el entorno ‘verbatim’ cambia el régimen de
catcode antes de tratar su contenido, y restaurarlo inmediatamente
después, sin embargo, con un argumento macro, el contenido del argumento
ya se ha convertido en una lista de tókenes a lo largo del régimen
catcode vigente cuando se llamó a la macro.  Sin embargo, el paquete
‘cprotect’ puede ayudar con esto

   Un uso común de la entrada textual es escribir código informático.
Existen paquetes que son una mejora del entorno ‘verbatim’.  Por
ejemplo, una mejora es permitir la inclusión palabra por palabra de
archivos, o partes de esos archivos.  Dichos paquetes incluyen
‘listings’, y ‘minted’.

   Un paquete que proporciona muchas más opciones para entornos
textuales es ‘fancyvrb’.  Otro es ‘verbatimbox’.

   Para obtener una lista de todos los paquetes relevantes, consulta
CTAN (see CTAN).

8.27.1 ‘\verb’
--------------

Sinopsis:

     \verb CHAR TEXTO-LITERAL CHAR
     \verb* CHAR TEXTO-LITERAL CHAR

   Compone el TEXTO-LITERAL tal como se ingresa, incluidos los
caracteres especiales y espacios, usando la letra de máquina de escribir
(‘\tt’).

   Este ejemplo muestra dos diferentes invocaciones de ‘\verb’.

     ¡Esto es  \verb! ¡Literalmente!  la calabaza más  grande de  todos los
     tiempos.  Y esta es la mejor calabaza, \verb+¡literalmente!+

El primer ‘\verb’ tiene su TEXTO-LITERAL rodeado de signos de
exclamación, ‘!’.  En cambio, el segundo usa más, ‘+’, porque el signo
de exclamación es parte del ‘texto-literal’.

   El delimitador de un solo carácter CHAR rodea TEXTO-LITERAL—debe ser
el mismo carácter antes y después.  No hay espacios entre ‘\verb’ o
‘\verb*’ y CHAR, o entre CHAR y TEXTO-LITERAL, o entre TEXTO-LITERAL y
la segunda aparición de CHAR (la sinopsis muestra un espacio solo para
distinguir un componente del otro).  El delimitador no debe aparecer en
TEXTO-LITERAL.  El TEXTO-LITERAL no puede incluir un salto de línea.

   La forma ‘*’ se diferencia solo en que los espacios se imprimen con
un carácter espacial.

   El resultado de esto incluirá un espacio visible en ambos lados de la
palabra ‘con’:

     El primer argumento del comando es \verb*!filename con extensión! y
       ...

   Para escribir direcciones de Internet, URL, el paquete ‘url’ es una
mejor opción que el comando ‘\verb’, ya que permite saltos de línea.

   Para el código informático hay muchos paquetes con ventajas sobre
‘\verb’.  Uno es ‘listings’, otro es ‘minted’.

   No puedes usar ‘\verb’ en el argumento de una macro, por ejemplo en
el argumento de una ‘\section’.  No es cuestión de que ‘\verb’ sea
frágil (see \protect), en lugar de eso, simplemente no puede
trabajar, ya que el comando ‘\verb’ cambia el régimen de catcode antes
de leer su argumento, y restaurarlo inmediatamente después, sin embargo
con un argumento de macro el contenido del argumento ya ha sido
convertido a una lista de tókenes a lo largo del régimen catcode vigente
cuando se llamó a la macro.  Sin embargo, el paquete ‘cprotect’ puede
ayudar con esto.

8.28 ‘verse’
============

Sinopsis:

     \begin{verse}
       LINE1 \\
       LINE2 \\
       ...
     \end{verse}

   Un entorno para la poesía.

   Aquí hay dos líneas de Romeo y Julieta de Shakespeare.

     Entonces sé claramente que el querido amor de mi corazón está \\
     establecido sobre la bella hija del rico Capuleto.

   Separa las líneas de cada estrofa con ‘\\’ y usa una o más líneas en
blanco para separar las estrofas.

     \begin{verse}
     \makebox[\linewidth][c]{\textit{No cierres tus puertas} ---Walt Whitman}
       \\[1\baselineskip]
     No cierres tus puertas orgullosa biblioteca, \\
     Por lo que faltaba en todos tus estantes bien llenos, \\
     \qquad todavía más necesitado, traigo, \\
     A partir de la guerra emergente, un libro que he hecho, \\
     Las palabras de mi libro nada, la deriva de él todo, \\
     Un libro separado, no vinculado con el resto ni sentido por el intelecto, \\
     Pero a ustedes, las latencias incalculables les emocionarán en cada página.
     \end{verse}

La salida tiene márgenes sangrados a la izquierda y a la derecha, los
párrafos no tienen sangría y el texto no está justificado a la derecha.

9 Salto de línea
****************

Lo primero que hace LaTeX al procesar texto ordinario es traducir tu
archivo de entrada a una secuencia de glifos y espacios.  Para producir
un documento impreso, esta secuencia se debe dividir en líneas (y estas
líneas se deben dividir en páginas).

   LaTeX normalmente hace el salto de línea (y de página) en el texto
del cuerpo pero en algunos entornos fuerza manualmente los saltos de
línea.

   Un flujo de trabajo común es obtener una versión final del contenido
del documento antes de realizar una pasada final y considerar los saltos
de línea (y saltos de página).  Esto difiere del procesamiento de
palabras, donde estás formateando texto a medida que lo ingresas.
Aplazar esto hasta el final evita un montón saltos de línea que
cambiarán de todos modos.

9.1 ‘\\’
========

Sinopsis, una de:

     \\
     \\[MORESPACE]

o una de:

     \\*
     \\*[MORESPACE]

   Finaliza la línea actual.  El argumento opcional MORESPACE especifica
espacio vertical adicional que se insertará antes de la siguiente línea.
Esta es un longitud elástica (see Longitudes) y puede ser negativa.
El texto antes del salto de línea se establece en su longitud normal, es
decir, no se estira para completar el ancho de la línea.  Este comando
es frágil (see \protect).

     \title{Mi historia: \\[0.25in]
     una historia de aflicción}

La forma destacada, ‘\\*’, le dice a LaTeX que no inicie una nueva
página entre las dos líneas, emitiendo un ‘\nobreak’.

   Los saltos de línea explícitos en el cuerpo del texto principal son
inusuales en LaTeX.  En particular, no comiences nuevos párrafos con
‘\\’.  En lugar de eso, deja una línea en blanco entre los dos párrafos.
Y no pongas una secuencia de ‘\\’’s para hacer espacio vertical.  En su
lugar, usa ‘\vspace{LENGTH}’ o ‘\leavevmode\vspace{LENGTH}’ o
‘\vspace*{LENGTH}’ si deseas que no se arroje el espacio en la parte
superior de una nueva página (see \vspace).

   El comando ‘\\’ se usa principalmente fuera del flujo principal de
texto como en un entorno ‘tabular’ o ‘array’ o en un entorno de la
ecuación.

   El comando ‘\\’ es un sinónimo de ‘\newline’ (see \newline) en
circunstancias ordinarias (un ejemplo de una excepción es la columna
‘p{...}’ en un entorno ‘tabular’; see tabular).

   El comando ‘\\’ es una macro y su definición cambia según el contexto
para que su definición en texto normal, un entorno ‘center’, un
‘flushleft’ y ‘tabular’ son todos diferentes.  En texto normal, cuando
fuerza un salto de línea, esencialmente es una abreviatura para
‘\newline’.  No finaliza el modo horizontal ni finaliza el párrafo,
simplemente inserta un poco de pegamento y penalizaciones para que
cuando el párrafo termine, se produzca un salto de línea en ese punto,
con la breve línea rellena con espacios en blanco.

   Obtienes ‘Error de LaTeX: No hay línea para terminar aquí’ si usas
‘\\’ para solicitar una nueva línea, en lugar de finalizar la línea
actual.  Un ejemplo es si tienes ‘\begin{document}\\’ o, más
probablemente, algo como esto.

     \begin{center}
       \begin{minipage}{0.5\textwidth}
       \\
       En ese espacio vertical pon tu marca.
       \end{minipage}
     \end{center}

Solucionalo reemplazando la doble barra invertida con algo como
‘\vspace{\baselineskip}’.

9.2 ‘\obeycr’ y ‘\restorecr’
============================

El comando ‘\obeycr’ hace un retorno en el archivo de entrada (‘^^M’,
internamente) lo mismo que ‘\\’, seguido de ‘\relax’.  Así que cada
nueva línea en la entrada también será una nueva línea en la salida.  El
comando ‘\restorecr’ restaura el comportamiento normal de salto de
línea.

   Esta no es la forma de mostrar texto textual o código informático.
Usa ‘verbatim’ (see verbatim) en su lugar.

   Con los valores predeterminados habituales de LaTeX, este

     aaa
     bbb

     \obeycr
     ccc
     ddd
        eee

     \restorecr
     fff
     ggg

     hhh
     iii

produce una salida como esta.

       aaa bbb
       ccc
     ddd
     eee

     fff ggg
       hhh iii

Las sangrías son sangrías de párrafo.

9.3 ‘\newline’
==============

En texto ordinario, esto termina una línea de una manera que no se
justifica a la derecha.  Para que el texto anterior al final de la línea
no se estire, es decir, en modo de párrafo (see Modos), el comando
‘\newline’ es equivalente a doble barra invertida (see \\).  Este
comando es frágil (see \protect).

   Sin embargo, los dos comandos son diferentes dentro de un entorno
‘tabular’ o entorno ‘array’.  En una columna con un especificador que
produce un cuadro de párrafo como típicamente ‘p{...}’, ‘\newline’
inserta un final de línea dentro de la columna; es decir, no rompe toda
la fila tabular.  Para dividir toda la fila, usa ‘\\’ o su equivalente
‘\tabularnewline’.

   Esto imprimirá ‘Nombre:’ y ‘Dirección:’ como dos líneas en una sola
celda de la tabla.

     \begin{tabular}{p{1in}@{\hspace{2in}}p{1in}}
       Nombre: \newline Dirección: &Date: \\ \hline
     \end{tabular}

‘Date:’ se alineará con la línea base con ‘Nombre:’.

9.4 ‘\-’ (guion discrecional)
=============================

Le dice a LaTeX que puede separar la palabra en ese punto.  Cuando
insertas comandos ‘\-’ en una palabra, la palabra solo se dividirá con
guiones en esos puntos y en ninguno de los otros puntos de guiones que
LaTeX podría haber elegido de otro modo.  Este comando es robusto (see
\protect).

   LaTeX es bueno separando guiones y generalmente encuentra la mayoría
de los puntos de separación con guiones, mientras que casi nunca se usa
uno incorrecto.  El comando ‘\-’ es para casos excepcionales.

   Por ejemplo, LaTeX normalmente no separa palabras que contienen un
guión.  Abajo, la palabra larga y con guión significa que LaTeX tiene
que poner en espacios inaceptablemente grandes para colocar la columna
estrecha.

     \begin{tabular}{rp{1.75in}}
       Isaac Asimov &La cepa del
           antiintelectualismo
           % an\-ti-in\-te\-lec\-tu\-al\-ismo
           ha sido un hilo constante que se abre camino a través de
           nuestra vida política y cultural, alimentada por
           la falsa noción de que democracia significa que
           'mi ignorancia es tan buena como tu conocimiento'.
     \end{tabular}

Comentar la tercera línea y descomentar la cuarta hace mucho mejor
ajuste.

   El comando ‘\-’ solo permite que LaTeX rompa allí, no requiere que se
rompa allí.  Puedes forzar una división con algo como ‘Hef-\linebreak
feron’.  Por supuesto, si luego cambias el texto, entonces este salto de
línea forzado puede parecer fuera de lugar, por lo que este enfoque
requiere sumo cuidado.

9.5 ‘\discretionary’ (punto de separación silábica generalizada)
================================================================

Sinopsis:

     \discretionary{PRE-BREAK}{POST-BREAK}{NO-BREAK}

   Maneja cambios de palabras alrededor de guiones.  Este comando no se
usa a menudo en documentos LaTeX.

   Si se produce un salto de línea en el punto donde aparece
‘\discretionary’ entonces TeX pone PRE-BREAK al final de la línea actual
y pone POST-BREAK al comienzo de la siguiente línea.  Si no hay salto de
linea aquí entonces TeX pone NO-BREAK.

   En ‘difficult’ las tres letras ‘ffi’ forman una ligadura.  Pero no
obstante, TeX se puede dividir entre las dos ‘f’ con esto.

     di\discretionary{f-}{fi}{ffi}cult

   Ten en cuenta que los usuarios no tienen que hacer esto.  Normalmente
se maneja automáticamente por el algoritmo de separación silábica de
TeX.

9.6 ‘\fussy’ y ‘\sloppy’
========================

Declaraciones para hacer que TeX sea más o menos quisquilloso con el
salto de línea.  Declarar ‘\fussy’ por lo general evita demasiado
espacio entre palabras, a costa de alguna que otra caja llena en exceso.
En cambio, ‘\sloppy’ evita cajas demasiado llenas mientras sufre
espaciado interpalabras sueltas.

   El valor predeterminado es ‘\fussy’.  El salto de línea en un párrafo
es controlado por cualquier declaración que esté vigente al final del
párrafo, es decir, en la línea en blanco o ‘\par’ o ecuación mostrada
que termina ese párrafo.  Entonces, para afectar los saltos de línea,
incluye ese material de final de párrafo en el entorno del párrafo.

9.6.1 ‘sloppypar’
-----------------

Sinopsis:

     \begin{sloppypar}
       ... párrafos ...
     \end{sloppypar}

   Compone los párrafos con ‘\sloppy’ en efecto (see \fussy y \sloppy).
Usa esto para ajustar localmente el salto de línea, para
evitar los errores ‘Caja demasiado llena’ o ‘Caja incompleta’.

   El ejemplo es simple.

     \begin{sloppypar} Con su plan para  la mañana así resuelto, se sentó
       en silencio a su libro  después del desayuno, resolviendo permanecer
       en el mismo lugar y el mismo empleo hasta que el reloj dio la una; y
       por   costumbre  muy   poco   incomodado  por   los  comentarios   y
       exclamaciones de la  Sra.\ Allen, cuyo vacío de  mente e incapacidad
       para pensar  eran tales, que como  ella nunca hablaba mucho,  por lo
       que nunca  podría estar completamente  silencioso; y, por  lo tanto,
       mientras ella estaba  sentada en su trabajo, si perdiera  su aguja o
       le rompía el hilo, si oía un carruaje en la calle, o vio una mota en
       su vestido, debe  observarla en voz alta, ya sea  nadie tenía tiempo
       para responderle o no.  \end{sloppypar}

9.7 ‘\hyphenation’
==================

Sinopsis:

     \hyphenation{WORD1 ...}

   Declara los puntos de separación de palabras permitidos dentro de las
palabras de la lista.  Las palabras en esa lista están separadas por
espacios.  Muestra puntos permitidos para separación silábica con un
guión, ‘-’.

   Aquí hay un ejemplo:

     \hyphenation{hat-er il-lit-e-ra-ti tru-th-i-ness}

   Utiliza letras minúsculas.  TeX solo dividirá si la palabra coincide
exactamente, no se intentan inflexiones.  Múltiples ‘\hyphenation’ los
comandos se acumulan.

9.8 ‘\linebreak’ y ‘\nolinebreak’
=================================

Sinopsis, una de:

     \linebreak
     \linebreak[CERO-A-CUATRO]

o uno de estos.

     \nolinebreak
     \nolinebreak[CERO-A-CUATRO]

   Anima o desalienta un salto de línea.  El CERO-A-CUATRO opcional es
un número entero entre 0 y 4 que te permite suavizar la instrucción.  El
valor predeterminado es 4, por lo que sin el argumento opcional estos
comandos fuerzan o previenen por completo la ruptura.  Pero por ejemplo,
‘\nolinebreak[1]’ es una sugerencia de que otro lugar puede ser mejor.
Cuanto mayor sea el número, más insistente será la solicitud.  Ambos
comandos son frágiles (see \protect).

   Aquí le decimos a LaTeX que un buen lugar para poner un salto de
línea es después del texto legal estándar.

     \boilerplatelegal{} \linebreak[2]
     Alentamos especialmente las solicitudes de miembros de tradicionalmente
     grupos subrepresentados.

   Cuando emite ‘\linebreak’, los espacios en la línea se estiran para
que el punto de quiebre alcance el margen derecho.  See \\ y
\newline, para que los espacios no se extiendan.

10 Salto de página
******************

Normalmente, LaTeX automáticamente se encarga de dividir la salida en
páginas con su habitual aplomo.  Pero si estás escribiendo comandos, o
ajustar la versión final de un documento, es posible que debas entender
cómo influir en sus acciones.

   El algoritmo de LaTeX para dividir un documento en páginas es más
complejo que simplemente esperar hasta que haya suficiente material para
llenar una página y producir el resultado.  En cambio, LaTeX compone más
material que cabría en la página y luego elige un salto que es óptimo en
alguna forma (tiene el “badness” más pequeño).  Un ejemplo de la ventaja
de este enfoque es que si la página tiene algún espacio vertical que se
puede estirar o encoger, como con tiras de goma entre párrafos, entonces
LaTeX lo puede usar para evitar líneas viudas (donde comienza una nueva
página con la última línea de un párrafo; LaTeX puede exprimir la línea
adicional en la primera página) y huérfanas (donde la primera línea del
párrafo está al final de una página; LaTeX puede estirar el material de
la primera página para que la línea extra caiga en la segunda página).
Otro ejemplo es donde LaTeX usa la reducción vertical disponible para
caber en una página que no solo el encabezado de una nueva sección, pero
también las dos primeras líneas de esa sección.

   Pero LaTeX no optimiza el conjunto de saltos de páginas del documento
completo.  Entonces puede suceder que el salto de la primera página sea
genial pero el segundo sea pésimo; para romper la página actual LaTeX no
ve tan adelante como el siguiente salto de página.  Así que de vez en
cuando es posible que desees influir en los saltos de página al preparar
una versión final de un documento.

   See Composición, para obtener más material relevante para el
salto de página.

10.1 ‘\clearpage’ y ‘\cleardoublepage’
======================================

Sinopsis:

     \clearpage

o

     \cleardoublepage

   Finaliza la página actual y genera todas las figuras flotantes
pendientes y tablas (see Flotantes).  Si hay demasiados flotantes
para caber en la página entonces LaTeX pondrá páginas adicionales que
solo contienen flotantes.  En impresión a doble cara, ‘\cleardoublepage’
también hace que la siguiente página de contenido sea una página de la
derecha, una página impar, si es necesario insertando una página en
blanco.  El comando ‘\clearpage’ es robusto mientras ‘\cleardoublepage’
es frágil (see \protect).

   Los saltos de página de LaTeX están optimizados, por lo que
normalmente solo usas este comando en el cuerpo de un documento para
pulir la versión final, o dentro de comandos.

   El comando ‘\cleardoublepage’ colocará una página en blanco, pero
tendrá los encabezados y pies de página en ejecución.  Para obtener una
página con espacio en blanco, usa este comando.

     \let\origdoublepage\cleardoublepage
     \newcommand{\clearemptydoublepage}{%
       \clearpage
       {\pagestyle{empty}\origdoublepage}%
     }

Si deseas que el comando ‘\chapter’ estándar de LaTeX haga esto,
entonces agrega la línea ‘\let\cleardoublepage\clearemptydoublepage’.
(Por supuesto, esto afecta todos los usos de ‘\cleardoublepage’, no solo
uno en ‘\chapter’).

   El comando ‘\newpage’ (see \newpage) también termina la página
actual, pero sin borrar los flotantes pendientes.  Y, si LaTeX está en
modo de dos columnas, entonces ‘\newpage’ finaliza la columna actual
mientras ‘\clearpage’ y ‘\cleardoublepage’ finalizan la página actual.

10.2 ‘\newpage’
===============

Sinopsis:

     \newpage

   Finaliza la página actual.  Este comando es robusto (see
\protect).

   Los saltos de página de LaTeX están optimizados, por lo que
normalmente solo usas este comando en el cuerpo de un documento para
pulir la versión final, o dentro de comandos.

   Mientras que los comandos ‘\clearpage’ y ‘\cleardoublepage’ también
finalizan la página actual, además borran los flotantes pendientes
(see \clearpage y \cleardoublepage).  Y, si LaTeX está en modo de
dos columnas, entonces ‘\clearpage’ y ‘\cleardoublepage’ terminan la
página actual, posiblemente dejando una columna vacía, mientras
‘\newpage’ solo finaliza la columna actual.

   A diferencia de ‘\pagebreak’ (see \pagebreak y \nopagebreak), el
comando ‘\newpage’ hará que la nueva página comience justo donde se
solicitó.  Este

     Hace  cuarenta y  siete  años nuestros  padres dieron  a  luz en  este
     continente,
     \newpage

     \noindent
     una nueva nación,  concebida en Libertad, y dedicada  a la proposición
     de que todos los hombres son creados iguales.

hace que una nueva página comience después de ‘continente’, y la línea
cortada no se justifica a la derecha.  Además, ‘\newpage’ no estira
verticalmente la página, como lo hace ‘\pagebreak’.

10.3 ‘\enlargethispage’
=======================

Sinopsis, una de:

     \enlargethispage{SIZE}
     \enlargethispage*{SIZE}

   Amplía el ‘\textheight’ para la página actual.  El argumento
requerido SIZE debe tener una longitud rígida (see Longitudes).
Puede ser positivo o negativo.  Este comando es frágil (see
\protect).

   Una estrategia común es esperar hasta tener el texto final de un
documento y, a continuación, pásalo ajustando los saltos de línea y de
página.  Este comando te permite cierto margen de maniobra en el tamaño
de la página.

   Esto permitirá una línea adicional en la página actual.

     \enlargethispage{\baselineskip}

   La forma con estrella ‘\enlargesthispage*’ intenta exprimir el
material juntos en la página tanto como sea posible, para el caso de uso
común de obtener una línea más en la página.  Esto se usa a menudo junto
con un ‘\pagebreak’ explícito.

10.4 ‘\pagebreak’ y ‘\nopagebreak’
==================================

Sinopsis:

     \pagebreak
     \pagebreak[CERO-A-CUATRO]

o

     \nopagebreak
     \nopagebreak[CERO-A-CUATRO]

   Anima o desalienta un salto de página.  El CERO-A-CUATRO opcional es
un número entero que te permite suavizar la solicitud.  El valor
predeterminado es 4, de modo que sin el argumento opcional estos
comandos fuerzan o previenen el quiebre.  Pero, por ejemplo,
‘\nopagebreak[1]’ sugiere a LaTeX que otro lugar podría ser preferible.
Cuanto mayor sea el número, más insistente la petición.  Ambos comandos
son frágiles.  (see \protect).

   Los finales de página de LaTeX están optimizados, por lo que
normalmente solo usas estos comandos en el cuerpo de un documento para
pulir la versión final, o dentro de comandos.

   Si los usas dentro de un párrafo, se aplica al punto siguiente de la
línea en la que aparecen.  Así que esto

     Hace  cuarenta y  siete  años nuestros  padres dieron  a  luz en  este
     continente,
     \pagebreak
     una nueva nación,  concebida en Libertad, y dedicada  a la proposición
     que todos los hombres son creados iguales.

no da un salto de página en ‘continente’, sino en ‘nación’, ya que ahí
es donde LaTeX rompe esa línea.  Además, con ‘\pagebreak’ el espacio
vertical en la página se estira donde sea posible para que se extienda
hasta el fondo del margen normal.  Esto puede parecer extraño, y si
‘\flushbottom’ está en efecto esto puede hacer que obtengas ‘Infralleno
\vbox (incorrecto 10000) ocurrió mientras \output está activo’.  See
\newpage, para un comando que no tiene estos efectos.

   (Hay una declaración obsoleta ‘\samepage’, que intenta solo permitir
un salto de línea entre dos párrafos.  Hay un entorno relacionado
‘samepage’, también obsoleto.  Ninguno de estos funciona de manera
confiable.  Para más información sobre cómo mantener el material en la
misma página, consulta la entrada de preguntas frecuentes
<https://texfaq.org/FAQ-nopagebrk>).

11 Notas al pie
***************

Coloca una nota a pie de página en la parte inferior de la página
actual, como aquí.

     Noël Coward bromeó diciendo que tener  que leer una nota al pie es
     como tener que bajar las escaleras para abrir la puerta, mientras está
     en medio  de hacer amor.\footnote{%  No sabría,  no leo las  notas al
     pie.}

   Puedes poner varias notas al pie de página en una página.  Si el
texto de la nota al pie se vuelve demasiado largo, entonces fluirá a la
página siguiente.

   También puedes producir notas al pie combinando ‘\footnotemark’ y los
comandos ‘\footnotetext’, que es útil en casos con circunstancias
especiales.

   Para que las referencias bibliográficas salgan a pie de página es
necesario incluir un estilo bibliográfico con ese comportamiento (see
Usar BibTeX).

11.1 ‘\footnote’
================

Sinopsis, una de:

     \footnote{TEXT}
     \footnote[NUMBER]{TEXT}

   Coloca TEXT como nota al pie al final de la página actual.

     Hay  más  de  mil notas  a  pie  de  página  en el  libro  de  Gibbon.
     \textit{Decadencia y Caída  del Imperio Romano}.\footnote{% Después
     de leer una  versión anterior con notas finales, David  Hume se quejó:
     ``Uno también está  plagado de sus Notas, según el  presente Método de
     imprimir el Libro'' y sugirió que ``sólo para ser impreso en el margen
     o en la parte inferior de la página.''}

   El argumento opcional NUMBER te permite especificar el número de la
nota al pie.  Si usas esto, entonces LaTeX no incrementa el contador
‘footnote’.

   De manera predeterminada, LaTeX usa números arábigos como marcadores
de notas al pie.  Cambia esto con algo como
‘\renewcommand{\thefootnote}{\fnsymbol{footnote}}’, que utiliza una
secuencia de símbolos (see \alph \Alph \arabic \roman \Roman \fnsymbol).
Para que este cambio sea global, ponlo en el preámbulo.
Si realizas el cambio local, entonces es posible que desees restablecer
el contador con ‘\setcounter{footnote}{0}’.

   LaTeX determina el espaciado de las notas al pie con dos parámetros.

‘\footnoterule’
     Produce la regla que separa el texto principal de una página del
     texto de la notas al pie de la página.  Dimensiones predeterminadas
     en las clases de documentos estándar (excepto ‘slides’, donde no
     aparece) es: espesor vertical de ‘0.4pt’, y tamaño horizontal de
     ‘0.4\columnwidth’ de largo.  Cambia la regla con algo como esto.

          \renewcommand{\footnoterule}{% Kerns evita el espacio vertical
            \kern -3pt                           % Este -3 es negativo
            \hrule width \textwidth height 1pt   % de la suma de este 1
            \kern 2pt}                          % y este 2

‘\footnotesep’
     La altura del puntal colocado al comienzo de la nota al pie.
     (see \strut).  De manera predeterminada, esto se establece en
     el puntal normal para ‘\footnotesize’ fuentes (see Tamaños de los tipos de letra),
     por lo tanto no hay espacio adicional entre las
     notas al pie.  Este es ‘6.65pt’ para ‘10pt’, ‘7.7pt’ para ‘11pt’ y
     ‘8.4pt’ para ‘12pt’.  Cambio como con
     ‘\setlength{\footnotesep}{11pt}’.

   El comando ‘\footnote’ es frágil (see \protect).

   El valor predeterminado de LaTeX pone muchas restricciones sobre
dónde puedes usar un ‘\footnote’; por ejemplo, no lo puedes usar en un
argumento para un comando de seccionado como ‘\chapter’ (solo se puede
usar en modo de párrafo; see Modos).  Hay algunas soluciones; ve las
siguientes secciones.

   En un entorno ‘minipage’, el comando ‘\footnote’ usa el contador
‘mpfootnote’ en lugar del contador ‘footnote’, por lo que se numeran de
forma independiente.  Se muestran en la parte inferior del entorno, no
en la parte inferior de la página.  Y de manera predeterminada se
muestran alfabéticamente.  See minipage y Notas al pie en una tabla.

11.2 ‘\footnotemark’
====================

Sinopsis, una de:

     \footnotemark
     \footnotemark[NUMBER]

   Coloca la marca de nota al pie actual en el texto.  Para especificar
texto asociado para la nota al pie \footnotetext.  El argumento
NUMBER opcional hace que el comando use ese número para determinar la
marca de nota al pie.  Este comando se puede utilizar en el modo de
párrafo interior (see Modos).

   Si usas ‘\footnotemark’ sin el argumento opcional, entonces
incrementa el contador ‘footnote’, pero si usas el contador opcional
NUMBER entonces no lo hace.  El siguiente ejemplo produce varios
marcadores consecutivos de notas al pie que se refieren a la misma nota
al pie.

     El   primer  teorema\footnote{Debido   a   Gauss.}   y  el   segundo
     teorema\footnotemark[\value{footnote}]       y       el       tercer
     teorema.\footnotemark[\value{footnote}]

   Si hay notas al pie intermedias, debes recordar el valor de el número
de la marca común.  Este ejemplo da la misma afiliación institucional
del primer y tercer autor (‘\thanks’ es una versión de ‘\footnote’),
dando a mano el número de la nota al pie.

     \title{Un tratado sobre el teorema del binomio}
     \author{J Moriarty\thanks{Universidad de Leeds}
       \y AC Doyle\thanks{Universidad de Durham}
       \y S Holmes\footnotemark[1]}
     \begin{document}
     \maketitle

   Utiliza un contador para recordar el número de la nota al pie.  La
tercera frase va seguida del mismo marcador de nota al pie que la
primera.

     \newcounter{footnoteValueSaver}     Todos      los     bebés     son
     ilógicos.\footnote{%                                            Lewis
     Carroll.}\setcounter{footnoteValueSaver}{\value{footnote}}   No
     se  desprecia  a nadie  que  pueda  manejar un  cocodrilo.\footnote{%
     Capitán      Garfio.}       Las      personas       ilógicas      son
     despreciadas.\footnotemark[\value{footnoteValueSaver}] Por lo tanto,
     cualquiera que pueda manejar un cocodrilo no es un bebé.

   Este ejemplo logra lo mismo usando el paquete ‘cleveref’.

     \usepackage{cleveref}[2012/02/15]   % en el preámbulo
     \crefformat{footnote}{#2\footnotemark[#1]#3}
     ...
     El  teorema   es  de   Evers.\footnote{\label{fn:TE}Tinker,  Evers,
     1994.} El  corolario es  de Chance.\footnote{Evers,  Chance, 1990.}
     Pero el lema clave es de Tinker.\cref{fn:TE}

   Funcionará con el paquete ‘hyperref’.

11.3 ‘\footnotetext’
====================

Sinopsis, una de:

     \footnotetext{TEXT}
     \footnotetext[NUMBER]{TEXT}

   Coloca TEXT en la parte inferior de la página como nota al pie.  Se
empareja con ‘\footnotemark’ (see \footnotemark) y puede venir en
cualquier lugar después de ese comando, pero debe aparecer en modo de
párrafo externo (see Modos).  El argumento opcional NUMBER cambia el
número de la marca de nota al pie.

   See \footnotemark y Notas al pie en una tabla, para usar
en ejemplos

11.4 Notas a pie de página en los títulos de las secciones
==========================================================

Pone una nota al pie en el título de una sección, como en:

     \section{Juegos completos\protect\footnote{Este material se debe a
       ...}}

hace que la nota al pie de página aparezca en la parte inferior de la
página donde comienza la sección, como es habitual, pero también en la
parte inferior de la tabla de contenido, donde no es probable que sea
deseado.  La forma más sencilla de hacer que no aparezca en la tabla de
contenido es usar el argumento opcional para ‘\section’

     \section[Por favor]{Por favor\footnote{%
       ¡No incluyas notas al pie en los encabezados de capítulos y
        secciones!}}

No se necesita ‘\protect’ delante de ‘\footnote’ aquí porque lo que se
mueve a la tabla de contenido es el argumento opcional.

11.5 Notas al pie en una tabla
==============================

Dentro de un entorno ‘tabular’ o ‘array’ el comando ‘\footnote’ no
funciona; hay una marca de nota al pie en la celda de la tabla, pero el
texto de la nota al pie no aparece.  La solución es usar un entorno
‘minipage’ como aquí (see minipage).

     \begin{center}
       \begin{minipage}{\textwidth} \centering
          \begin{tabular}{l|l}
            \textsc{Barco} &\textsc{Libro} \\ \hline
            \textit{HMS Sophie} &Maestro y Comandante \\
            \textit{HMS Polychrest} &Capitán de puesto \\
            \textit{HMS Lively} &Capitán de puesto \\
            \textit{HMS Surprise} &Un número de libros\footnote{%
                                       Comenzando con \textit{HMS Sorpresa}.}
          \end{tabular}
       \end{minipage}
     \end{center}

   Dentro de una ‘minipage’, las marcas de las notas al pie son letras
minúsculas.  Cambio que con algo así
‘\renewcommand{\thempfootnote}{\arabic{mpfootnote}}’ (see \alph \Alph \arabic \roman \Roman \fnsymbol).

   Las notas al pie en el ejemplo anterior aparecen en la parte inferior
de la ‘minipage’.  Para que aparezcan en la parte inferior de la página
principal, como parte de la secuencia regular de notas al pie, utiliza
‘\footnotemark’ y ‘\footnotetext’ empareja y crea un nuevo contador.

     \newcounter{mpFootnoteValueSaver}
     \begin{center}
       \begin{minipage}{\textwidth}
         \setcounter{mpFootnoteValueSaver}{\value{footnote}} \centering
          \begin{tabular}{l|l}
            \textsc{Mujer} &\textsc{Relación} \\ \hline
            Mona &Adjunto\footnotemark\\
            Diana Villiers &Eventual esposa \\
            Christine Hatherleigh Wood &Prometida\footnotemark
          \end{tabular}
       \end{minipage}% El signo de porcentaje mantiene el texto de la
                       % nota al pie cerca de la minipágina
       \stepcounter{mpFootnoteValueSaver}%
         \footnotetext[\value{mpFootnoteValueSaver}]{%
           Poco se sabe aparte de su muerte.}%
       \stepcounter{mpFootnoteValueSaver}%
         \footnotetext[\value{mpFootnoteValueSaver}]{%
           Relación no resuelta en XXI.}
     \end{center}

   Para un entorno ‘table’ flotante (see table), usa el paquete
‘tablefootnote’.

     \usepackage{tablefootnote} % en el preámbulo
        ...
     \begin{table}
       \centering
          \begin{tabular}{l|l}
          \textsc{Fecha} &\textsc{Campaña} \\ \hline
          1862             & Fuerte Donelson \\
          1863             &Vicksburg \\
          1865             &Ejército de Virginia del Norte\tablefootnote{%
                               Pone fin a la guerra.}
          \end{tabular}
         \caption{Fuerzas capturadas por US Grant}
     \end table}

La nota al pie aparece en la parte inferior de la página y está numerada
en secuencia con otras notas al pie.

11.6 Notas al pie de notas al pie
=================================

Particularmente en las humanidades, los autores pueden tener múltiples
clases de notas al pie, incluyendo tener notas al pie de las notas al
pie.  El paquete ‘bigfoot’ amplía el mecanismo de notas al pie
predeterminado de LaTeX en muchas maneras, incluyendo permitir estos
dos, como en este ejemplo.

     \usepackage{bigfoot} % en el preámbulo
     \DeclareNewFootnote{Predeterminado}
     \DeclareNewFootnote{from}[alph] % crea clase \footnotefrom{}
      ...
     El tercer  teorema es un inverso  parcial del segundo.\footnotefrom{%
       Anotado en Wilson.\footnote{Segunda edición solamente.}}

12 Definiciones
***************

LaTeX tiene soporte para crear nuevos comandos de muchos tipos
diferentes.

12.1 ‘\newcommand’ y ‘\renewcommand’
====================================

Sinopsis, una de (tres formas regulares, tres formas destacadas):

     \newcommand{\CMD}{DEFN}
     \newcommand{\CMD}[NARGS]{DEFN}
     \newcommand{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}
     \newcommand*{\CMD}{DEFN}
     \newcommand*{\CMD}[NARGS]{DEFN}
     \newcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}

o todas las mismas posibilidades con ‘\renewcommand’ en lugar de
‘\newcommand’:

     \renewcommand{\CMD}{DEFN}
     \renewcommand{\CMD}[NARGS]{DEFN}
     \renewcommand{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}
     \renewcommand*{\CMD}{DEFN}
     \renewcommand*{\CMD}[NARGS]{DEFN}
     \renewcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}

   Define o redefine un comando (ve también ‘\DeclareRobustCommand’ en
Comandos class y package).

   La forma estrellada de estos dos prohíbe que los argumentos contengan
varios párrafos de texto (en términos simples de TeX: los comandos no
son ‘\long’).  Con la forma predeterminada, los argumentos pueden ser
varios párrafos.

   Estos son los parámetros (a continuación se muestran algunos
ejemplos):

CMD
     Requerido; ‘\CMD’ es el nombre del comando.  Debe comenzar con una
     barra invertida, ‘\’, y no debe comenzar con la cadena de cuatro
     caracteres ‘\end’.  Para ‘\newcommand’, no debe estar ya definido.
     Para ‘\renewcommand’, este nombre ya debe estar definido.

NARGS
     Opcional; un número entero de 0 a 9, especificando el número de
     argumentos que toma el comando, incluido cualquier argumento
     opcional.  Omitir este argumento es lo mismo que especificar 0, lo
     cual significa que el comando no tiene argumentos.  Si redefines un
     comando, la nueva versión puede tener un diferente número de
     argumentos que la versión anterior.

OPTARGDEFAULT
     Opcional; si este argumento está presente entonces el primer
     argumento de ‘\CMD’ es opcional, con valor predeterminado
     OPTARGDEFAULT (que puede ser la cadena vacía).  Si OPTARGDEFAULT no
     está presente entonces ‘\CMD’ no toma un argumento opcional.

     Es decir, si ‘\CMD’ se llama con el siguiente argumento entre
     corchetes, como en ‘\CMD[OPTVAL]{...}...’, entonces dentro de DEFN,
     el parámetro ‘#1’ se establece en OPTVAL.  Por otro lado, si ‘\CMD’
     se llama sin los siguientes corchetes entonces dentro de DEFN se
     establece el parámetro ‘#1’ a OPTARGDEFAULT.  En cualquier caso,
     los argumentos requeridos comienzan con ‘#2’.

     Omitir ‘[OPTARGDEFAULT]’ de la definición es completamente
     diferente de dar los corchetes con contenido vacío, como en ‘[]’.
     El primero dice que el comando que se define no requiere un
     argumento opcional, por lo que ‘#1’ es el primer argumento
     requerido (si NARGS ≥ 1); este último establece el argumento
     opcional ‘#1’ a la cadena vacía como valor predeterminado, si no
     hay un argumento opcional dado en la llamada.

     De manera similar, omitir ‘[OPTVAL]’ de una llamada también es
     completamente diferente de dar los corchetes con contenido vacío.
     El anterior establece ‘#1’ al valor de OPTVAL (suponiendo que el
     comando se definió para tomar un argumento opcional); el último
     ‘#1’ configurado a la cadena vacía, al igual que con cualquier otro
     valor.

     Si un comando no está definido para tomar un argumento opcional,
     pero es llamado con un argumento opcional, los resultados son
     impredecibles: allí puede haber un error de LaTeX, puede haber una
     salida tipográfica incorrecta, o ambos.

DEFN
     Requerido; el texto que se sustituirá por cada aparición de ‘\CMD’.
     Los parámetros ‘#1’, ‘#2’, ..., ‘#NARGS’ se reemplazan por los
     valores proporcionados cuando se llama al comando (o por
     OPTARGDEFAULT en el caso de un argumento opcional no especificado
     en la llamada, como se acaba de explicar).

   TeX ignora los espacios en blanco en la fuente después de una
secuencia de control (see Secuencias de control), como en ‘\cmd ’.
Si quieres un espacio allí, una solución es escribir ‘{}’ después del
comando (‘\cmd{} ’), y otra solución es usar un espacio de control
explícito (‘\cmd\ ’).

   Un ejemplo simple de definición de un nuevo comando:
‘\newcommand{\RS}{Robin Smith}’ da como resultado que ‘\RS’ sea
reemplazado por el texto más largo.  Redefinir un comando existente es
similar: ‘\renewcommand{\qedsymbol}{{\small QED}}’.

   Si usas ‘\newcommand’ y el nombre del comando ya se ha usado entonces
obtienes algo como ‘Error de LaTeX: Comando \fred ya definido. O nombre
\end... ilegal, ve la p.192 del manual’.  De manera similar, si usas
‘\renewcommand’ y el nombre del comando no se ha definido, obtienes algo
como ‘Error de LaTeX: \hank no se ha definido’.

   Aquí la primera definición crea un comando sin argumentos, y la
segunda, un comando con un argumento requerido:

     \newcommand{\student}{Ms~O'Leary}
     \newcommand{\defref}[1]{Definición~\ref{#1}}

Usa el primero como en ‘Te recomiendo \student{}’.  El segundo tiene un
argumento variable, por lo que ‘\defref{def:basis}’ se expande a
‘Definición~\ref{def:basis}’, que finalmente se expande a algo así como
‘Definición~3.14’.

   Del mismo modo, pero con dos argumentos obligatorios:
‘\newcommand{\nbym}[2]{$#1 \times #2$}’ se invoca como ‘\nbym{2}{k}’.

   Este ejemplo tiene un argumento opcional.

     \newcommand{\salutation}[1][Señor o señora]{Estimado #1:}

Entonces ‘\salutation’ da ‘Estimado señor o señora:’ mientras
‘\salutation[John]’ da ‘Querido John:’.  Y ‘\salutation[]’ da ‘Estimado
:’.

   Este ejemplo tiene un argumento opcional y dos argumentos
obligatorios.

     \newcommand{\lawyers}[3][empresa]{#2, #3 y~#1}
     Empleo a \lawyers[Howe]{Dewey}{Cheatem}.

El resultado es ‘Empleo Dewey, Cheatem y Howe’.  El argumento opcional,
‘Howe’, está asociado con ‘#1’, mientras que ‘Dewey’ y ‘Cheatem’ están
asociados con ‘#2’ y ‘#3’.  Debido al argumento opcional,
‘\lawyers{Dewey}{Cheatem}’ dará la salida ‘Empleo Dewey, Cheatem y
Howe’.

   Las llaves alrededor de DEFN no definen un grupo, es decir, no
delimitan el alcance del resultado de expandir DEFN.  Por ejemplo, con
‘\newcommand{\shipname}[1]{\it #1}’, en esta oración,

     El \shipname{Monitor} se encontró con el \shipname{Merrimac}.

las palabras ‘se encontró con el’, y el punto, estarían incorrectamente
en cursiva.  La solución es poner otro par de corchetes dentro de la
definición: ‘\newcommand{\shipname}[1]{{\it #1}}’.

12.1.1 Secuencia de control, palabra de control y símbolo de control
--------------------------------------------------------------------

Al leer la entrada TeX convierte el flujo de caracteres leídos en una
secuencia de “tókenes”.  Cuando TeX ve una barra invertida ‘\’, la hará
manejar los siguientes caracteres de una manera especial para hacer un
token de “secuencia de control”.

   Las secuencias de control se dividen en dos categorías:

   • “palabra de control”, cuando la secuencia de control se obtiene de
     una ‘\’ seguida de al menos una letra ASCII (‘A-Z’ y ‘a-z’),
     seguida de al menos una no letra.

   • “símbolo de control”, cuando la secuencia de control se obtiene de
     una ‘\’ seguida de un carácter que no sea una letra.

   La secuencia de caracteres que se encuentran después de una ‘\’
también se denominan el “nombre de la secuencia de control”.

   Los espacios en blanco después de una palabra de control se ignoran y
no producen espacio en blanco en la salida (see \newcommand y \renewcommand
y \(SPACE)).

   Así como el comando ‘\relax’ no hace nada, la siguiente entrada
simplemente imprimirá ‘¡Hola!’ (si utilizas el visor Info de Emacs,
activa el modo menor ‘whitespace-mode’ para ver los espacios finales):

     ¡Hol\relax
        a!

Esto se debe a que los espacios en blanco después de ‘\relax’, incluida
la nueva línea, son ignorados, y los espacios en blanco al principio de
una línea también son ignorados (see Espacios en blanco iniciales).

12.2 ‘\providecommand’
======================

Sinopsis, una de:

     \providecommand{\CMD}{DEFN}
     \providecommand{\CMD}[NARGS]{DEFN}
     \providecommand{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}
     \providecommand*{\CMD}{DEFN}
     \providecommand*{\CMD}[NARGS]{DEFN}
     \providecommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}

   Define un comando, siempre que no exista ningún comando con este
nombre.  Si no existe ningún comando con este nombre, esto tiene el
mismo efecto que ‘\newcommand’.  Si ya existe un comando con este
nombre, entonces esta definición no hace nada.  Esto es particularmente
útil en un archivo que se puede cargar más de una vez, como un archivo
de estilo.  See \newcommand y \renewcommand, para la descripción de
los argumentos.

   Este ejemplo

     \providecommand{\myaffiliation}{Colegio de San Miguel}
     \providecommand{\myafiliation}{Lyc\'ee Henri IV}
     De \myafiliation.

produce ‘De Saint Michael's College.’ A diferencia de ‘\newcommand’, el
uso repetido de ‘\providecommand’ para (intentar) definir
‘\myaffiliation’ no da error.

12.3 ‘\makeatletter’ y ‘\makeatother’
=====================================

Sinopsis:

     \makeatletter
       ... definición de comandos con @ en su nombre ..
     \makeatother

   Usa este par cuando redefines los comandos de LaTeX que se nombran
con un carácter arroba ‘‘@’’.  La declaración ‘\makeatletter’ hace que
el carácter de arroba tenga el código de categoría de una letra,
code 11.  La declaración ‘\makeatother’ establece el código de categoría
del signo de arroba a code 12, su valor predeterminado.

   A medida que TeX lee caracteres, asigna a cada uno un código de
categoría, o “catcode”.  Por ejemplo, asigna el carácter ‘‘\’’ de barra
invertida el catcode 0.  Nombres de comandos constan de un carácter
categoría 0, normalmente barra invertida, seguido por letras, caracteres
de categoría 11 (excepto que un nombre de comando también puede constar
de un carácter categoría 0 seguido de un solo símbolo que no es una
letra).

   El código fuente de LaTeX tiene la convención de que algunos comandos
usan ‘@’ en su nombre.  Estos comandos están destinados principalmente a
escritores de paquete o de clase.  La convención impide que los autores
que solo utilizan un paquete o clase reemplacen accidentalmente dicho
comando con uno de ellos mismos, porque de manera predeterminada el
signo de arroba tiene el catcode 12.

   Usa el par ‘\makeatletter’ y ‘\makeatother’ dentro de un ‘.tex’,
generalmente en el preámbulo, cuando estás definiendo o redefiniendo
comandos nombrados con ‘@’, haciendo que rodeen tu definición.  No los
uses dentro de los archivos ‘.sty’ o ‘.cls’ ya que los comandos
‘\usepackage’ y ‘\documentclass’ ya disponen que la arroba tenga el
código de carácter de una letra, catcode 11.

   Para obtener una lista completa de macros con un signo de arroba en
sus nombres, consulta <https://ctan.org/pkg/macros2e>.

   En este ejemplo, el archivo de clase tiene un comando
‘\thesis@universityname’ que el usuario quiere cambiar.  Estas tres
líneas deben ir en el preámbulo, antes del ‘\begin{document}’.

     \begin{document}.
     \makeatletter
     \renewcommand{\thesis@universityname}{Colegio de San Miguel}
     \makeatother

12.4 ‘\@ifstar’
===============

Sinopsis:

     \newcommand{\mycmd}{\@ifstar{\mycmd@star}{\mycmd@nostar}}
     \newcommand{\mycmd@nostar}[NOSTAR-NUM-ARGS]{NOSTAR-BODY}
     \newcommand{\mycmd@star}[STAR-NUM-ARGS]{STAR-BODY}

   Muchos entornos o comandos estándar de LaTeX tienen una variante con
el mismo nombre pero terminando con un carácter de estrella ‘*’, un
asterisco.  Algunos ejemplos son los entornos ‘table’ y ‘table*’ y los
comandos ‘\section’ y ‘\section*’.

   Al definir entornos, seguir este patrón es sencillo porque
‘\newenvironment’ y ‘\renewenvironment’ permiten que el nombre del
entorno contenga una estrella.  Entonces solo tienes que escribir
‘\newenvironment{MYENV}’ o ‘\newenvironment{MYENV*}’ y continúa la
definición de la manera habitual.  Para los comandos la situación es más
compleja ya que la estrella no es una letra no puede ser parte del
nombre del comando.  Como en la sinopsis anterior, habrá un comando
llamado por el usuario, dado anteriormente como ‘\mycmd’, que mira hacia
delante para ver si le sigue una estrella.  Por ejemplo, LaTeX realmente
no tiene un comando ‘\section*’; en cambio, el comando ‘\section’ mira
hacia adelante.  Este comando no acepta argumentos, sino que se expande
a uno de los dos comandos que aceptan argumentos.  En la sinopsis estos
dos son ‘\mycmd@nostar’ y ‘\mycmd@star’.  Podrían tomar el mismo número
de argumentos o un número diferente, o ningún argumento en absoluto.
Como siempre, en un documento LaTeX un comando usando una arroba ‘@’ en
su nombre se debe encerrar dentro de un bloque ‘\makeatletter ...
\makeatother’ (see \makeatletter y \makeatother).

   Este ejemplo de ‘\@ifstar’ define el comando ‘\ciel’ y una variante
‘\ciel*’.  Ambos tienen un argumento obligatorio.  Una llamada a
‘\ciel{blue}’ devolverá "cielo azul no estrellado" mientras
‘\ciel*{night}’ devolverá "cielo nocturno estrellado".

     \makeatletter
     \newcommand*{\ciel@unstarred}[1]{no estrellado #1 cielo}
     \newcommand*{\ciel@starred}[1]{cielo estrellado #1}
     \newcommand*{\ciel}{\@ifstar{\ciel@starred}{\ciel@unstarred}}
     \makeatother

   En el siguiente ejemplo, la variante destacada toma un número
diferente de argumentos que el sin estrella.  Con esta definición, el
Agente 007 ‘``Mi nombre es \agentsecret*{Bond},
\agentsecret{James}{Bond}.''’ es equivalente a ingresar los comandos
‘``Mi nombre es \textsc{Bond}, \textit{James} textsc{Bond}.''’

     \newcommand*{\agentsecret@unstarred}[2]{\textit{#1} \textsc{#2}}
     \newcommand*{\agentsecret@starred}[1]{\textsc{#1}}
     \newcommand*{\agentsecret}{%
       \@ifstar{\agentsecret@starred}{\agentsecret@unstarred}}

   Después de un nombre de comando, una estrella se maneja de manera
similar a un argumento opcional.  (Esto difiere de los nombres de
entornos en los que la estrella es parte del nombre mismo y como tal
podría estar en cualquier posición).  Por lo tanto, técnicamente es
posible poner cualquier número de espacios entre el comando y la
estrella.  Así ‘\agentsecret*{Bond}’ y ‘\agentsecret *{Bond}’ son
equivalentes.  Sin embargo, la práctica estándar es no insertar tales
espacios.

   Hay dos formas alternativas de realizar el trabajo de ‘\@ifstar’.
(1) El paquete ‘suffix’ permite la construcción
‘\newcommand\mycommand{VARIANTE-SIN-ESTRELLA}’ seguida por
‘\WithSuffix\newcommand\mycommand*{STARRED-VARIANT}’.  (2) LaTeX
proporciona el paquete ‘xparse’, que permite este código:

     \NewDocumentCommand\foo{s}{\IfBooleanTF#1
       {VARIANTE-CON-ESTRELLA}%
       {VARIANTE-SIN-ESTRELLA}%
       }

12.5 ‘\newcounter’: Asignar un contador
=======================================

Sinopsis, una de:

     \newcounter{COUNTERNAME}
     \newcounter{COUNTERNAME}[SUPERCOUNTER]

   Define globalmente un nuevo contador llamado COUNTERNAME y lo
inicializa a cero (see Contadores).

   El nombre COUNTERNAME debe constar únicamente de letras.  No comienza
con una barra invertida.  Este nombre no debe estar ya en uso por otro
contador.

   Cuando usas el argumento opcional ‘[SUPERCOUNTER]’ entonces el
contador COUNTERNAME se restablecerá a cero siempre que SUPERCOUNTER se
incrementa.  Por ejemplo, ordinariamente ‘subsection’ está numerado
dentro de ‘section’ para que cada vez que incremente SECCIÓN, ya sea con
‘\stepcounter’ (see \stepcounter) o ‘\refstepcounter’ (see
\refstepcounter), entonces LaTeX restablecerá SUBSECTION a cero.

   Este ejemplo

     \newcounter{asuper}  \setcounter{asuper}{1}
     \newcounter{asub}[asuper] \setcounter{asub}{3}   % Nota `asuper'
     El   valor  de   asuper  es   \arabic{asuper}  y   el  de   asub  es
     \arabic{asub}.
     \stepcounter{asuper}
     Ahora   asuper    es   \arabic{asuper}   mientras   que    asub   es
     \arabic{asub}.

   produce ‘El valor de asuper es 1 y el de asub es 3’ y ‘Ahora asuper
es 2 mientras que asub es 0’.

   Si el contador ya existe, por ejemplo ingresando ‘asuper’ dos veces,
obtienes algo como ‘Error LaTeX: Comando \c@asuper Ya definido. O name
\end... ilegal, ve la p.192 del manual.’.

   Si usas el argumento opcional, entonces el súper contador ya debe
existir.  Al ingresar ‘\newcounter{jh}[lh]’ cuando ‘lh’ no es un
contador definido obtendrás ‘Error LaTeX: Sin contador 'lh' definido.’

12.6 ‘\newlength’
=================

Sinopsis:

     \newlength{\LEN}

   Asigna un nuevo registro de longitud (see Longitudes).  El
argumento requerido ‘\LEN’ tiene que ser una secuencia de control (see
Secuencias de control), y como tal debe comenzar con una barra
invertida, ‘\’ bajo circunstancias normales.  El nuevo registro contiene
longitudes elásticas como ‘72.27pt’ o ‘1in plus.2in minus.1in’ (una
longitud de registro LaTeX es lo que TeX llama un ‘skip’ de registro).
El valor inicial es cero.  La secuencia de control ‘\LEN’ no debe estar
definida ya.

   Un ejemplo:

     \newlength{\graphichgt}

   Si olvidas la barra invertida, obtienes ‘Insertada secuencia de
control faltante’.  Si la secuencia de control ya existe, entonces
obtienes algo así como ‘Error LaTeX: Comando \graphichgt ya definido. O
nombre \end... ilegal, ve la p.192 del manual’.

12.7 ‘\newsavebox’
==================

Sinopsis:

     \newsavebox{\CMD}

   Define \CMD, la cadena que consta de una barra invertida seguida de
CMD, para referirse a un nuevo contenedor para almacenar material.
Estos contenedores contienen material que ha sido compuesto, para usar
varias veces o para medir o manipular (see Cajas).  El nombre del
contenedor \CMD es obligatorio, debe comenzar con una barra invertida,
\, y no debe ser un comando definido.  Este comando es frágil (see
\protect).

   Esto asigna un contenedor y luego coloca material tipográfico en él.

     \newsavebox{\logobox}
     \savebox{\logobox}{LoGo}
     Nuestro logo es \usebox{\logobox}.

La salida es ‘Nuestro logotipo es LoGo’.

   Si ya hay un contenedor definido, obtienes algo como ‘Error de LaTeX:
Comando \logobox ya definido. O nombre \end... ilegal, ve la p.192 del
manual’.

   La asignación de una caja es global.

12.8 ‘\newenvironment’ y ‘\renewenvironment’
============================================

Sinopsis, una de:

     \newenvironment{ENV}{BEGDEF}{ENDDEF}
     \newenvironment{ENV}[NARGS]{BEGDEF}{ENDDEF}
     \newenvironment{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF}
     \newenvironment*{ENV}{BEGDEF}{ENDDEF}
     \newenvironment*{ENV}[NARGS]{BEGDEF}{ENDDEF}
     \newenvironment*{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF}

o uno de estos.

     \renewenvironment{ENV}{BEGDEF}{ENDDEF}
     \renewenvironment{ENV}[NARGS]{BEGDEF}{ENDDEF}
     \renewenvironment{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF}
     \renewenvironment*{ENV}{BEGDEF}{ENDDEF}
     \renewenvironment*{ENV}[NARGS]{BEGDEF}{ENDDEF}
     \renewenvironment*{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF}

   Definir o redefinir el entorno ENV, es decir, crear el constructor
‘\begin{ENV} ... BODY ... \end{ENV}’.

   La forma de asterisco de estos comandos requiere que los argumentos
no contienen varios párrafos de texto.  Sin embargo, el cuerpo de estos
entornos pueden contener varios párrafos.

ENV
     Requerido; el nombre del entorno.  Se compone sólo de letras o el
     carácter forma-‘*’ y, por lo tanto, no comienza con una barra
     invertida, ‘\’.  No debe comenzar con la cadena ‘end’.  Para
     ‘\newenvironment’, el nombre ENV no debe ser el nombre de un
     entorno ya existente, y también el comando ‘\ENV’ debe ser
     indefinido.  Para ‘\renewenvironment’, ENV debe ser el nombre de un
     entorno existente.

NARGS
     Opcional; un número entero de 0 a 9 que indica el número de
     argumentos que toma el entorno.  Cuando usas el entorno, estos
     argumentos aparecen después de ‘\begin’, como en ‘\begin{ENV}{ARG1}
     ... {ARGN}’.  Omitiendo esto es equivalente a establecerlo en 0; el
     entorno no tendrá argumentos.  Al redefinir un entorno, la nueva
     versión puede tener un diferente número de argumentos que la
     versión anterior.

OPTARGDEFAULT
     Opcional; si esto está presente, entonces el primer argumento del
     entorno definido es opcional, con el valor predeterminado
     OPTARGDEFAULT (que puede ser la cadena vacía).  Si esto no está en
     la definición, entonces el entorno no acepta un argumento opcional.

     Es decir, cuando OPTARGDEFAULT está presente en la definición del
     entorno entonces puedes comenzar el entorno con corchetes, como en
     ‘\begin{ENV}[OPTVAL]{...} ... \end{ENV}’.  En este caso, dentro de
     BEGDEFN el parámetro ‘#1’ se establece en el valor de OPTVAL.  Si
     llamas a ‘\begin{ENV}’ sin corchetes, luego dentro de BEGDEFN el
     parámetro ‘#1’ es establecido en el valor predeterminado
     OPTARGDEFAULT.  En cualquier caso, cualquier argumento requerido
     comienza con ‘#2’.

     Omitir ‘[MYVAL]’ en la llamada es diferente a tener corchetes sin
     contenido, como en ‘[]’.  Los resultados anteriores en ‘#1’
     expandiéndose a OPTARGDEFAULT; esto último resulta en ‘#1’
     expandiéndose a la cadena vacía.

BEGDEF
     Requerido; el texto se expande en cada aparición de ‘\begin{ENV}’.
     Dentro de BEGDEF, los parámetros ‘#1’, ‘#2’, ...  ‘#NARGS’, se
     sustituyen por los valores que proporcionas cuando llamas al
     entorno; ve los ejemplos abajo.

ENDDEF
     Requerido; el texto se expande en cada aparición de ‘\end{ENV}’.
     Esto no puede contener ningún parámetro, es decir, no puedes usar
     ‘#1’, ‘#2’, etc., aquí (pero ve el ejemplo final a continuación).

   Todos los entornos, es decir el código BEGDEF, el entorno body y el
código ENDDEF se procesan dentro de un grupo.  Así, en el primer ejemplo
a continuación, el efecto de ‘\small’ se limita a la cotización y no se
extiende al material siguiendo el entorno.

   Si intentas definir un entorno y el nombre ya se ha utilizado
entonces obtienes algo como ‘Error de LaTeX: Comando \fred ya definido.
O nombre \end... ilegal, ve la p.192 del manual’.  Si intentas redefinir
un entorno y el nombre aún no se ha utilizado, entonces obtienes algo
como ‘Error de LaTeX: Entorno hank indefinido.’.

   Este ejemplo proporciona un entorno como ‘quotation’ de LaTeX excepto
que se establecerá en letra más pequeña.

     \newenvironment{smallquote}{%
       \small\begin{quotation}
     }{%
       \end{quotation}
     }

   Esto tiene un argumento, que está en negrita al comienzo de un
párrafo.

     \newenvironment{point}[1]{%
       \noindent\textbf{#1}
     }{%
     }

   Este muestra el uso de un argumento opcional; da un entorno quotation
que cita el autor.

     \newenvironment{citequote}[1][Shakespeare]{%
       \begin{quotation}
       \noindent\textit{#1}:
     }{%
       \end{quotation}
     }

El nombre del autor es opcional y de manera predeterminada es
‘Shakespeare’.  En el documento, utiliza el entorno como este.

     \begin{citequote}[Lincoln]
       ...
     \end{citequote}

   El último ejemplo muestra cómo guardar el valor de un argumento para
usarlo en ENDDEF, en este caso en una caja (see \sbox y \savebox).

     \newsavebox{\quoteauthor}
     \newenvironment{citequote}[1][Shakespeare]{%
       \sbox\quoteauthor{#1}%
       \begin{quotation}
     }{%
       \hspace{1em plus 1fill}---\usebox{\quoteauthor}
       \end{quotation}
     }

12.9 ‘\newtheorem’
==================

Sinopsis:

     \newtheorem{NAME}{TITLE}
     \newtheorem{NAME}{TITLE}[NUMBERED_WITHIN]
     \newtheorem{NAME}[NUMBERED_LIKE]{TITLE}

   Define un nuevo entorno similar a un teorema.  Puedes especificar uno
de NUMBERED_WITHIN y NUMBERED_LIKE, o ninguno, pero no ambos.

   La primera forma, ‘\newtheorem{NAME}{TITLE}’, crea un entorno que se
etiquetará con TITLE; ve el primer ejemplo a continuación.

   La segunda forma, ‘\newtheorem{NAME}{TÍTULO}[NUMBERED_WITHIN]’, crea
un entorno cuyo contador está subordinado al counter existente
NUMBERED_WITHIN, por lo que este contador se restablecerá cuando
NUMBERED_WITHIN se restablece.  Ve el segundo ejemplo a continuación.

   La tercera forma ‘\newtheorem{NAME}[NUMBERED_LIKE]{TITLE}’, con un
argumento opcional entre los dos argumentos requeridos, crea un entorno
cuyo contador compartirá el contador definido previamente NUMBERED_LIKE.
Ve el tercer ejemplo.

   Este comando crea un contador llamado NAME.  Además, a menos que se
use el argumento opcional NUMBERED_LIKE, dentro del entorno similar a un
teorema, el valor actual de ‘\ref’ será el de ‘\theNUMBERED_WITHIN’
(see \ref).

   Esta declaración es global.  Es frágil (see \protect).

   Argumentos:

NAME
     El nombre del entorno.  Es una cadena de letras.  No debe comenzar
     con una barra invertida, ‘\’.  No debe ser el nombre de un entorno
     existente, y el nombre del comando ‘\NAME’ no debe estar definido.

TITLE
     El texto que se imprimirá al principio del entorno, antes del
     número.  Por ejemplo, ‘Teorema’.

NUMBERED_WITHIN
     Opcional; el nombre de un contador ya definido, generalmente una
     unidad seccional como ‘chapter’ o ‘section’.  Cuando el contador
     NUMBERED_WITHIN se restablece y luego el entorno NAME el contador
     también se restablecerá.

     Si no se utiliza este argumento opcional, el comando ‘\theNAME’ se
     establece en ‘\arabic{NAME}’.

NUMBERED_LIKE
     Opcional; el nombre de un entorno similar a un teorema ya definido.
     El nuevo entorno se numerará en secuencia con NUMBERED_LIKE.

   Sin ningún argumento opcional, los entornos están numerados
secuencialmente.  El siguiente ejemplo tiene una declaración en el
preámbulo que da como resultado ‘Definición 1’ y ‘Definición 2’ en
producción.

     \newtheorem{defn}{Definición}
     \begin{document}
     \section{...}
     \begin{defn}
       Primer definición
     \end{defn}

     \section{...}
     \begin{defn}
       Segunda definición
     \end{defn}

   Este ejemplo tiene el mismo cuerpo de documento que el anterior.
Pero aquí el argumento opcional de ‘\newtheorem’ NUMBERED_WITHIN se da
como ‘section’, por lo que el resultado es como ‘Definición 1.1’ y
‘Definición 2.1’.

     \newtheorem{defn}{Definición}[sección]
     \begin{document}
     \section{...}
     \begin{defn}
       Primer definición
     \end{defn}

     \section{...}
     \begin{defn}
       Segunda definición
     \end{defn}

   En el siguiente ejemplo hay dos declaraciones en el preámbulo, el
segundo de los cuales requiere que el nuevo entorno ‘thm’ use el mismo
contador como ‘defn’.  Da ‘Definición 1.1’, seguido por ‘Teorema 2.1’ y
‘Definición 2.2’.

     \newtheorem{defn}{Definición}[sección]
     \newtheorem{thm}[defn]{Teorema}
     \begin{document}
     \section{...}
     \begin{defn}
       Primer definición
     \end{defn}

     \section{...}
     \begin{thm}
       Primer thm
     \end{thm}

     \begin{defn}
       Segunda definición
     \end{defn}

12.10 ‘\newfont’
================

Este comando está obsoleto.  Esta descripción está aquí solo para ayudar
con los viejos documentos.  Los nuevos documentos deben definir letras
en familias a través del nuevo esquema de selección de letras que te
permite, por ejemplo, asociar una negrita con una romana (see Tipos de letra).

   Sinopsis:

     \newfont{\CMD}{FONT DESCRIPTION}

   Define un comando ‘\CMD’ que cambiará el tipo de letra actual.  La
secuencia de control no debe estar ya definida.  Debe comenzar con una
barra invertida, ‘\’.

   La DESCRIPCIÓN DE LA LETRA consta de un NOMBRE DE LETRA y una opción
“cláusula at”.  LaTeX buscará en tu sistema un archivo llamado
‘FONTNAME.tfm’.  La cláusula at puede tener la forma ‘en DIMEN’ o
‘FACTOR de escala’, donde un FACTOR de ‘1000’ significa que no hay
escalado.  Para los propósitos de LaTeX, todo lo que hace es escalar
todos los caracteres y otras dimensiones de fuente relativo al tamaño de
diseño de la fuente, que es un valor definido en el archivo ‘.tfm’.

   Esto define dos tipos de letra equivalentes y algunos caracteres
tipográficos en cada una.

     \newfont{\testfontat}{cmb10 at 11pt}
     \newfont{\testfontscaled}{cmb10 scaled 1100}
     \testfontat abc
     \testfontscaled abc

12.11 ‘\protect’
================

Todos los comandos de LaTeX son frágiles —“fragile”— o robustos
—“robust”—.  Un comando frágil se puede romper cuando se usa en el
argumento para ciertos otros comandos.  Comandos que contienen datos que
LaTeX escribe en un archivo auxiliar y las relecturas posteriores son
frágiles.  Esto incluye material que va en una tabla de contenido, lista
de figuras, lista de tablas, etc.  Los comandos frágiles también
incluyen saltos de línea, cualquier comando que tenga un argumento
opcional, y muchos más.  Para evitar que tales comandos rompan, una
solución es precederlos con el comando ‘\protect’.

   Por ejemplo, cuando LaTeX ejecuta ‘\section{NOMBRE SECCIÓN}’ escribe
el texto NOMBRE SECCIÓN en el archivo auxiliar ‘.aux’, moviéndolo allí
para usarlo en otra parte del documento como en la tabla de contenido.
Cualquier argumento que sea expandido internamente por LaTeX sin
escribirlo directamente es referido como un “argumento móvil”.  Un
comando es frágil si se puede expandir durante este proceso en un código
TeX no válido.  Algunos ejemplos de los argumentos móviles son los que
aparecen en el comando ‘\caption{...}’ (see figure), en el comando
‘\thanks{...}’ (see \maketitle), y en @expresiones en los entornos
‘tabular’ y ‘array’ (see tabular).

   Si obtienes extraños errores de los comandos utilizados para mover
argumentos, intenta precediéndolos con ‘\protect’.  Todos los comandos
frágiles se deben proteger con su propio ‘\protect’.

   Aunque por lo general un comando ‘\protect’ no duele, los comandos de
longitud son robustos y no deben estar precedidos por un comando
‘\protect’.  Tampoco se puede usar un comando ‘\protect’ en el argumento
para los comandos ‘\addtocounter’ o ‘\setcounter’.

   En este ejemplo, el comando ‘\caption’ da un misterioso error sobre
una llave extra.  Soluciona el problema precediendo a cada comando
‘\raisebox’ con ‘\protect’.

     \begin{figure}
       ...
       \caption{Sede de la empresa A\raisebox{1pt}{B}\raisebox{-1pt}{C}}
     \end{figure}

   En el siguiente ejemplo, el comando ‘\tableofcontents’ da un error
porque los ‘\(..\)’ en el título de la sección se expande a ilegal TeX
en el archivo ‘.toc’.  Puedes resolver esto cambiando ‘\(..\)’ a
‘\protect\(..\protect\)’.

     \begin{document}
     \tableofcontents
     ...
     \section{Einstein \( e=mc^2 \)}
     ...

12.12 ‘\ignorespaces e \ignorespacesafterend’
=============================================

Sinopsis:

     \ignorespaces

o

     \ignorespacesafterend

   Ambos comandos hacen que LaTeX ignore los espacios en blanco (es
decir, los caracteres de catcode 10 ​​como espacio o tabulación) después
del final del comando hasta el primer cuadro o carácter que no esté en
blanco.  El primero es un comando primitivo de TeX, y el segundo es
específico de LaTeX.

   El ‘\ignorespaces’ se usa a menudo cuando se definen comandos a
través de ‘\newcommand’, o ‘\newenvironment’, o ‘\def’.  El ejemplo a
continuación lo ilustra.  Permite a un usuario mostrar los valores de
los puntos para las preguntas de la prueba en el margen, pero es un
inconveniente porque, como se muestra en la lista ‘enumerate’, los
usuarios no deben poner ningún espacio entre el comando y el texto de la
pregunta.

     \newcommand{\points}[1]{\makebox[0pt]{\makebox[10em][l]{#1~pts}}
     \begin{enumerate}
       \item\points{10}no hay salida de espacio adicional aquí
       \item\points{15} espacio extra entre el número y el `extra'
     \end{enumerate}

La solución es cambiar a esto.

     \newcommand{\points}[1]{%
       \makebox[0pt]{\makebox[10em][l]{#1~pts}}\ignorespaces}

   Un segundo ejemplo muestra la eliminación de espacios en blanco del
frente del texto.  Los comandos a continuación permiten a un usuario
adjuntar uniformemente un título a los nombres.  Pero, tal como se
indica, si un título accidentalmente comienza con un espacio, entonces
‘\fullname’ reproducirá eso.

     \newcommand{\honorific}[1]{\def\honorific{#1}} % recuerda el
                                                          % título
     \newcommand{\fullname}[1]{\honorific~#1}         % pone el título
                                                          % antes del nombre

     \begin{tabular}{|l|}
     \honorific{Mr/Ms}  \fullname{Jones} \\  % sin espacio adicional
                                                 % aquí
     \honorific{ Mr/Ms} \fullname{Jones}     % espacio adicional antes
                                                 % del título
     \end{tabular}

Para arreglar esto, cambia a
‘\newcommand{\fullname}[1]{\ignorespaces\honorific~#1}’.

   El ‘\ignorespaces’ también se usa a menudo en un ‘\newenvironment’ al
final de la cláusula BEGIN, como en ‘\begin{newenvironment}{NOMBRE
ENTORNO}{... \ignorespaces}{...}’.

   Para quitar los espacios en blanco del final de un entorno, usa
‘\ignorespacesafterend’.  Un ejemplo es que esto mostrará mucho mayor
espacio vertical entre el primer y el segundo entorno que entre el
segundo y el tercero.

     \newenvironment{eq}{\begin{equation}}{\end{equation}}
     \begin{eq}
     e=mc^2
     \end{eq}
     \begin{equation}
     F=ma
     \end{equation}
     \begin{equation}
     E=IR
     \end{equation}

   Poner un carácter de comentario ‘%’ inmediatamente después del
‘\end{eq}’ hará desaparecer el espacio vertical, pero eso es
inconveniente.  La solución es cambiar a
‘\newenvironment{eq}{\begin{equation}}{\end{equation}\ignorespacesafterend}’.

12.13 paquete xspace
====================

Sinopsis:

     \usepackage{xspace}
       ...
     \newcommand{...}{...\xspace}

   La macro ‘\xspace’, cuando se usa al final de una definición de
comando, agrega un espacio a menos que el comando vaya seguido de
ciertos caracteres de puntuación.

   Después de un comando de secuencia de control que es una palabra de
control (see Secuencias de control, a diferencia de los símbolos de
control como ‘\$’), TeX engulle caracteres en blanco.  Por lo tanto, en
la primera oración a continuación, la salida tiene ‘Vermont’ colocado
cómodamente contra el punto, sin ningún espacio intermedio.

     \newcommand{\VT}{Vermont}
     Nuestro colegio está en \VT.
     Los veranos \VT{} son agradables.

   Pero debido al engullimiento, la segunda oración necesita llaves
vacías o de lo contrario no habría espacio que separe a ‘Vermont’ de
‘veranos’.  (Muchos autores en su lugar utilizan una barra
invertida-espacio ‘\ ’ para esto.  See \(SPACE)).

   El paquete ‘xspace’ proporciona ‘\xspace’.  Es para escribir comandos
que están diseñados para ser utilizados principalmente en texto.  Se
debe colocar al final de la definición de estos comandos.  Inserta un
espacio después de ese comando a menos que lo que siga inmediatamente
esté en una lista de excepciones.  En este ejemplo, las llaves vacías no
son necesarias.

     \newcommand{\VT}{Vermont\xspace}
     Nuestro colegio está en \VT .
     \VT los veranos son agradables.

   La lista de excepciones predeterminada contiene los caracteres
‘,.'/?;:!~-)’, la llave de apertura y el comando de espacio de barra
invertida explicados anteriormente, y los comandos ‘\footnote’ o
‘\footnotemark’.  Añaden a esa lista ‘\xspaceaddexceptions{\myfni
\myfnii}’ que agrega ‘\myfni’ y ‘\myfnii’ a la lista, y elimina de esa
lista como con ‘\xspaceaddexceptions{!}’.

   Un comentario: muchos expertos prefieren no usar ‘\xspace’.  Ponerlo
en una definición significa que el comando generalmente obtendrá el
espaciado correcto.  Pero no es fácil predecir cuándo ingresar llaves
vacías porque ‘\xspace’ se equivocará, como cuando le sigue otro
comando, por lo que ‘\xspace’ puede hacer que editar material sea más
difícil y más propenso a errores que siempre insertar las llaves vacías.

13 Contadores
*************

Todo lo que LaTeX numera para ti tiene un contador asociado con él.  El
nombre del contador suele ser el mismo que el nombre del entorno o
comando asociado con el número, excepto que el nombre del contador no
tiene barra invertida ‘\’.  Así, asociado al comando ‘\chapter’ está el
contador ‘chapter’ que mantiene la pista del número de capítulo.

   A continuación se muestra una lista de los contadores utilizados en
la clase ‘document’ estándar de LaTeX para controlar la numeración.

     parte             párrafo               figura           enumi
     capítulo        subpárrafo          tabla            enumii
     sección         página                nota al pie    enumiii
     subsección   ecuación             mpfootnote  enumiv
     subsubsección

   El contador ‘mpfootnote’ lo utiliza el comando ‘\footnote’ dentro de
una minipágina (see minipage).  Los contadores ‘enumi’ a través de
‘enumiv’ se utilizan en el entorno ‘enumerate’, por hasta cuatro niveles
de anidamiento (see enumerate).

   Los contadores pueden tener cualquier valor entero, pero normalmente
son positivos.

   Los nuevos contadores se crean con ‘\newcounter’.  See
\newcounter.

13.1 ‘\alph \Alph \arabic \roman \Roman \fnsymbol’: Imprime contadores
======================================================================

Imprime el valor de un contador, en un estilo específico.  Por ejemplo,
si el contador COUNTER tiene el valor 1 entonces un ‘\alph{COUNTER}’ en
tu fuente resultará en una letra a en minúsculas que aparece en la
salida.

   Todos estos comandos toman un solo contador como argumento, por
ejemplo, ‘\alph{enumi}’.  Ten en cuenta que el nombre del contador no
comienza con una barra invertida.

‘\alph{COUNTER}’
     Imprime el valor de COUNTER en minúsculas: ‘a’, ‘b’, ...  Si el
     valor del contador es menor que 1 o mayor que 26, entonces obtienes
     ‘Error de LaTeX: Contador demasiado grande’.

‘\Alph{COUNTER}’
     Escribe en letras mayúsculas: ‘A’, ‘B’, ...  Si el valor del
     contador es menor que 1 o mayor que 26, obtiene ‘Error de LaTeX:
     Contador demasiado grande.’

‘\arabic{COUNTER}’
     Imprime en números arábigos como ‘5’ o ‘-2’.

‘\roman{COUNTER}’
     Escribe en minúsculas números romanos: ‘i’, ‘ii’, ...  Si el valor
     del contador es menor que 1, entonces no recibe ninguna advertencia
     o error, pero LaTeX no imprime nada en la salida.

‘\Roman{COUNTER}’
     Imprime en números romanos en mayúsculas: ‘I’, ‘II’, ...  Si el
     valor del contador es menor que 1, entonces no recibe ninguna
     advertencia o error, pero LaTeX no imprime nada en la salida.

‘\fnsymbol{COUNTER}’
     Imprime el valor de COUNTER usando una secuencia de nueve símbolos
     que se utilizan tradicionalmente para etiquetar las notas al pie.
     El valor de COUNTER debe estar entre 1 y 9, inclusive.  Si el el
     valor del contador es menor que 0 o mayor que 9, entonces obtienes
     ‘Error de LaTeX: Contador demasiado grande’, mientras que si es 0,
     no obtienes ningún error o advertencia pero LaTeX no genera nada.

     Aquí están los símbolos:

     Número   Nombre                 Comando                Símbolo
     -----------------------------------------------------------------------------
     1        asterisk               ‘\ast’                 *
     2        dagger                 ‘\dagger’              †
     3        ddagger                ‘\ddagger’             ‡
     4        section-sign           ‘\S’                   §
     5        paragraph-sign         ‘\P’                   ¶
     6        double-vert            ‘\parallel’            ‖
     7        double-asterisk        ‘\ast\ast’             **
     8        double-dagger          ‘\dagger\dagger’       ††
     9        double-ddagger         ‘\ddagger\ddagger’     ‡‡

13.2 ‘\usecounter’
==================

Sinopsis:

     \usecounter{COUNTER}

   Usado en el segundo argumento del entorno ‘list’ (see list), este
declara que los elementos de la lista serán numerados por COUNTER.
Inicializa COUNTER a cero y organiza que cuando se llama a ‘\item’ sin
su argumento opcional, entonces COUNTER se incrementa en
‘\refstepcounter’, haciendo que su valor sea ​​el valor actual de ‘ref’
(see \ref).  Este comando es frágil (see \protect).

   Al ponerlo en el preámbulo del documento, este ejemplo crea un nuevo
entorno de lista enumerada con TESTCOUNTER:

     \newcounter{testcounter}
     \newenvironment{test}{%
       \begin{list}{}{%
         \usecounter{testcounter}
       }
     }{%
       \end{list}
     }

13.3 ‘\value’
=============

Sinopsis:

     \value{COUNTER}

   Se expande al valor del contador COUNTER.  (Ten en cuenta que el
nombre de un contador no comienza con una barra invertida).

   Este ejemplo genera ‘El contador de prueba es 6. Otro contador
es 5.’.

     \newcounter{test} \setcounter{test}{5}
     \newcounter{other} \setcounter{other}{\value{test}}
     \addtocounter{test}{1}

     El  contador   de  prueba   es  \arabic{test}.   Otro   contador  es
     \arabic{other}.

   El comando ‘\value’ no se usa para componer el valor del contador.
Para eso, see \alph \Alph \arabic \roman \Roman \fnsymbol.

   A menudo se usa en ‘\setcounter’ o ‘\addtocounter’ pero ‘\value’ se
puede usar en cualquier lugar donde LaTeX espera un número, como en
‘\hspace{\value{foo}\parindent}’.  No debe estar precedido por
‘\protect’ (see \protect).

   Este ejemplo inserta ‘\hspace{4\parindent}’.

     \setcounter{myctr}{3} \addtocounter{myctr}{1}
     \hspace{\value{myctr}\parindent}

13.4 ‘\setcounter’
==================

Sinopsis:

     \setcounter{COUNTER}{VALUE}

   Configura globalmente el contador COUNTER para que tenga el valor del
argumento VALUE, que debe ser un número entero.  Por lo tanto, puedes
establecer un valor del contador como ‘\setcounter{section}{5}’.  Ten en
cuenta que el nombre del contador no comienza con una barra invertida.

   En este ejemplo, si el contador ‘theorem’ tiene el valor 12, entonces
la segunda línea imprimirá ‘XII’.

     \setcounter{ejercicio}{\value{teorema}}
     Aquí está en Roman:  \Roman{exercise}.

13.5 ‘\addtocounter’
====================

Sinopsis:

     \addtocounter{COUNTER}{VALUE}

   Incrementar globalmente COUNTER por la cantidad especificada por el
argumento VALUE, que puede ser negativo.

   En este ejemplo, el valor de la sección aparece como ‘VII’.

     \setcounter{section}{5}
     \addtocounter{section}{2}
     Aquí está en Roman: \Roman{section}.

13.6 ‘\refstepcounter’
======================

Sinopsis:

     \refstepcounter{COUNTER}

   Incrementa globalmente el valor de COUNTER en uno, al igual que
‘\stepcounter’ (see \stepcounter).  La diferencia es que este
comando restablece el valor de cualquier contador numerado dentro de él.
(Para la definición de “contadores numerados dentro”, see
\newcounter).

   Además, este comando también define el valor actual de ‘\ref’ es el
resultado de ‘\thecounter’.

   Mientras que el valor del contador se establece globalmente, el valor
de ‘\ref’ se establece localmente, es decir, dentro del grupo actual.

13.7 ‘\stepcounter’
===================

Sinopsis:

     \stepcounter{COUNTER}

   Agrega globalmente uno a COUNTER y restablece todos los contadores
numerados dentro de ella.  (Para la definición de “contadores numerados
dentro”, see \newcounter).

   Este comando difiere de ‘\refstepcounter’ en que este no influye en
las referencias; es decir, no define el valor actual de ‘\ref’ será el
resultado de ‘\thecounter’ (see \refstepcounter).

13.8 ‘\day’, ‘\month’ y ‘\year’
===============================

LaTeX define el contador ‘\day’ para el día del mes (nominalmente con
valor entre 1 y 31), ‘\month’ para el mes del año (nominalmente con un
valor entre 1 y 12), y ‘\year’ para el año.  Cuando TeX se inicia, se
establecen a partir de los valores actuales en el sistema.  El comando
relacionado ‘\today’ produce una cadena que representa el día actual
(see \today).

   Los contadores no se actualizan a medida que avanza el trabajo, por
lo que, en principio, podría ser incorrecto al final.  Además, TeX no
controla la sensatez:

     \day=-2 \month=13 \year=-4 \today

no da ningún error o advertencia y da como resultado la salida ‘-2, -4’
(el valor del mes falso no produce ningún resultado).

   See Entrada de la línea de comandos, para forzar la fecha a un
valor dado desde la línea de comandos.

14 Longitudes
*************

“length” es una medida de distancia.  Muchos comandos de LaTeX toman un
argumento como longitud.

   Las longitudes vienen en dos tipos.  Un “longitud rígida” como ‘10pt’
no contiene un componente ‘plus’ o ‘minus’.  (TeX sencillo llama a esto
una “dimensión”).  Una “longitud de goma” (que TeX simple llama a “skip”
o “glue”) como con ‘1cm plus0.05cm minus0.01cm’ puede contener uno o
ambos componentes.  En esa longitud elástica, el ‘1cm’ es la “longitud
natural” mientras que los otros dos, componentes ‘plus’ y ‘minus’,
permiten que TeX estire o reduzca la longitud para optimizar la
colocación.

   Las siguientes ilustraciones utilizan estos dos comandos.

     % hace una barra negra de 10pt de alto y #1 de ancho
     \newcommand{\blackbar}[1]{\rule{#1}{10pt}}
     % Hace un cuadro alrededor del #2 que tenga el #1 de ancho (excluyendo
     % el borde)
     \newcommand{\showhbox}[2]{%
       \fboxsep=0pt\fbox{\hbox a #1{#2}}}

Este ejemplo usa esos comandos para mostrar una barra negra de
100 puntos de largo entre ‘XXX’ y ‘YYY’.  Esta longitud es rígida.

     XXX\muestracaja{100pt}{\barranegra{100pt}}YYY

   En cuanto a las longitudes elásticas, la reducción es más simple: con
‘1cm minus 0.05cm’, la longitud natural es 1cm pero TeX la puede reducir
hasta 0.95cm.  Más allá de eso, TeX se niega a encogerse más.  Por lo
tanto, debajo del primero funciona bien, produciendo un espacio de
98 puntos entre las dos barras.

     XXX\showhbox{300pt}{%
       \blackbar{101pt}\hspace{100pt minus 2pt}\blackbar{101pt}}YYY

     XXX\showhbox{300pt}{%
       \blackbar{105pt}\hspace{100pt minus 1pt}\blackbar{105pt}}YYY

Pero el segundo recibe una advertencia como ‘Overfull \hbox (1.0pt too
wide) detectado en la línea 17’.  En la salida, la primer ‘Y’ se
sobrescribe al final de la barra negra, porque el material de la caja es
más ancho que los 300pt asignados, ya que TeX se ha negado a reducir el
total a menos de 309 puntos.

   Estirar es como encoger excepto que si se le pide a TeX que estire
más allá de la cantidad dada, lo hará.  Aquí la primera línea está bien,
produciendo un espacio de 110 puntos entre las barras.

     XXX\showhbox{300pt}{%
       \blackbar{95pt}\hspace{100pt plus 10pt}\blackbar{95pt}}YYY

     XXX\showhbox{300pt}{%
       \blackbar{95pt}\hspace{100pt plus 1pt}\blackbar{95pt}}YYY

En la segunda línea TeX necesita un tramo de 10 puntos y solo se
especificó 1 punto.  TeX estira el espacio al requerido pero te da una
advertencia como ‘Infracompleto \hbox (maliciosos 10000) detectados en
la línea 22’.  (No hablaremos de la malicia).

   Puedes estirar y encoger en la misma longitud, como en ‘1ex plus
0.05ex minus 0.02ex’.

   Si TeX está configurando dos o más longitudes elásticas, asigna la
ampliación o reducción en proporción.

     XXX\showhbox{300pt}{%
       \blackbar{100pt}%  left
       \hspace{0pt plus 50pt}\blackbar{80pt}\hspace{0pt plus 10pt}%  middle
       \blackbar{100pt}}YYY  % right

Las barras izquierda y derecha ocupan 100 puntos, por lo que la del
medio necesita otros 100.  La barra central es de 80 puntos por lo que
los dos ‘\hspace’ se deben extender 20 puntos.  Porque los dos son ‘plus
50pt’ y ‘plus 10pt’, TeX obtiene 5/6 del tramo del primer espacio y 1/6
del segundo.

   El componente ‘plus’ o ‘minus’ de una longitud elástica puede
contener un componente “fill”, como en ‘1in plus2fill’.  Esto da la
longitud infinita capacidad de estiramiento o contracción para que TeX
pueda establecer a cualquier distancia.  Aquí las dos figuras estarán
espaciadas por igual en la página.

     \begin{minipage}{\linewidth}
       \hspace{0pt plus 1fill}\includegraphics{godel.png}%
       \hspace{0pt plus 1fill}\includegraphics{einstein.png}%
       \hspace{0pt plus 1fill}
     \end{minipage}

   TeX tiene tres niveles de infinito para componentes de pegamento:
‘fil’, ‘fill’ y ‘filll’.  Los últimos son más infinitos que los
anteriores.  Por lo general, los autores de documentos solo usan el del
medio (see \hfill y \vfill).

   Multiplicar una longitud elástica por un número la convierte en una
longitud rígida, por lo que después de ‘\setlength{\ylength}{1in plus
0.2 in}’ y ‘\setlength{\zlength}{3\ylength}’ entonces el valor de
‘\zlength’ es ‘3in’.

14.1 Unidades de longitud
=========================

TeX y LaTeX conocen estas unidades tanto dentro como fuera del modo
math.

‘pt’
     Punto, 1/72,27 pulgadas.  La conversión (aproximada) a unidades
     métricas es 1punto = .35146mm = .035146cm.

‘pc’
     Pica, 12 puntos

‘in’
     Pulgada, 72.27 puntos

‘bp’
     Punto grande, 1/72 pulgada.  Esta longitud es la definición de un
     punto en PostScript y muchos sistemas de autoedición.

‘mm’
     Milímetro, 2.845pt

‘cm’
     Centímetro, 10mm

‘dd’
     Punto didot, 1.07 pt

‘cc’
     Cicero, 12 dd

‘sp’
     Punto escalado, 1/65536 pt

   Otras tres unidades se definen de acuerdo con la letra actual, en
lugar de que sea una dimensión absoluta.

‘ex’
     La altura x de la letra actual “ex”, tradicionalmente la altura de
     la letra minúscula x, se usa a menudo para longitudes verticales.

‘em’
     Del mismo modo “em”, tradicionalmente el ancho de la letra M
     mayúscula, se utiliza a menudo para longitudes horizontales.  Este
     también a menudo es el tamaño de la letra actual, por ejemplo, una
     letra nominal 10pt debe tener 1em = 10pt.  LaTeX tiene varios
     comandos para producir espacios horizontales basados en em (see
     \enspace - \quad y \qquad).

‘mu’
     Finalmente, en el modo matemático, muchas definiciones se expresan
     en términos de la unidad matemática “mu”, definida por 1em = 18mu,
     donde el em es tomar de la familia actual de símbolos matemáticos.
     See Espaciado en modo matemático.

   El uso de estas unidades puede ayudar a que una definición funcione
mejor en todos los cambios de letra.  Por ejemplo, una definición del
espacio vertical entre lista de elementos dados como
‘\setlength{\itemsep}{1ex plus 0.05ex minus 0.01ex}’ es más probable que
siga siendo razonable si se cambia la letra que una definición dada en
puntos.

14.2 ‘\setlength’
=================

Sinopsis:

     \setlength{\LEN}{AMOUNT}

   Establece la longitud \LEN en AMOUNT.  El nombre de longitud ‘\LEN’
tiene que ser una secuencia de control (see Secuencias de control),
y como tal debe comenzar con una barra invertida, ‘\’ bajo
circunstancias normales.  La CANTIDAD puede ser una longitud elástica
(see Longitudes).  Puede ser positivo, negativo o cero, y puede
estar en cualquier unidad que LaTeX entienda (see Unidades de longitud).

   A continuación, con los valores predeterminados de LaTeX, el primer
párrafo tendrá sangría mientras que el segundo no.

     Le dije al médico que me rompí la pierna en dos lugares.

     \setlength{\parindent}{0em}
     Dijo que dejara de ir a esos lugares.

   Si no declaraste \LEN con ‘\newlength’, por ejemplo si lo escribes
mal como en ‘\newlength{\specparindent}\setlength{\sepcparindent}{...}’,
entonces obtienes un error como ‘Secuencia de control no definida.
<argument> \sepcindent’.  Si omites la barra invertida al comienzo del
nombre de la longitud entonces obtienes un error como ‘Número faltante,
tratado como cero.’.

14.3 ‘\addtolength’
===================

Sinopsis:

     \addtolength{\LEN}{AMOUNT}

   Incrementa la longitud \LEN por CANTIDAD.  El nombre de longitud
‘\LEN’ tiene que ser una secuencia de control (see Secuencias de control),
y como tal debe comenzar con una barra invertida, ‘\’ bajo
circunstancias normales.  La CANTIDAD es una longitud elástica (see
Longitudes).  Puede ser positivo, negativo o cero, y puede estar en
cualquier unidad que LaTeX entienda (see Unidades de longitud).

   A continuación, si ‘\parskip’ comienza con el valor ‘0pt plus 1pt’

     Doctor: ¿cómo está el niño que se tragó el dólar de plata?
     \addtolength{\parskip}{1pt}

     Enfermera: sin cambios.

luego tiene el valor ‘1pt plus 1pt’ para el segundo párrafo.

   Si no declaraste \LEN con ‘\newlength’, por ejemplo si lo escribes
mal como en
‘\newlength{\specparindent}\addtolength{\sepcparindent}{...}’, luego
obtienes un error como ‘Secuencia de control no definida. <argument>
\sepcindent’.  Si CANTIDAD usa una longitud que no ha sido declarada,
por ejemplo, si por ejemplo escribes mal lo anterior como
‘\addtolength{\specparindent}{0.6\prainden}’, entonces obtienes algo así
como ‘Secuencia de control indefinida. <argumento> \praindent’.  Si
dejas la barra invertida fuera de \LEN, como en
‘\addtolength{parindent}{1pt}’, entonces obtienes algo como ‘No puedes
usar `la letra p' después de \advance’.

14.4 ‘\settodepth’
==================

Sinopsis:

     \settodepth{\LEN}{TEXT}

   Establece la longitud \LEN en la profundidad del cuadro en el que se
encuentra LaTeX escribiendo el argumento TEXT.  El nombre de longitud
‘\LEN’ tiene que ser una secuencia de control (see Secuencias de control),
y como tal debe comenzar con una barra invertida, ‘\’ en
circunstancias normales.

   Esto imprimirá qué tan bajo van los descendientes de caracteres.

     \newlength{\alphabetdepth}
     \settodepth{\alphabetdepth}{abcdefghijklmnopqrstuvwxyz}
     \the\alphabetdepth

   Si no declaraste \LEN con ‘\newlength’, si por ejemplo escribes mal
lo anterior como ‘\setto depth{\aplhabet depth}{abc...}’, entonces
obtienes algo como ‘Secuencia de control indefinida. <argument>
\aplhabetdepth’.  Si omites la barra invertida \LEN, como en
‘\settodepth{alphabetdepth}{...}’ entonces obtienes algo como ‘Número
faltante, tratado como cero. <para ser leído de nuevo> \setbox’.

14.5 ‘\settoheight’
===================

Sinopsis:

     \settoheight{\LEN}{text}

   Establece la longitud \LEN a la altura del cuadro en el que se coloca
LaTeX escribe el argumento ‘text’.  El nombre de longitud ‘\LEN’ tiene
que ser una secuencia de control (see Secuencias de control), y como
tal debe comenzar con una barra invertida, ‘\’ en circunstancias
normales.

   Esto imprimirá qué tan alto van los caracteres.

     \newlength{\alphabetheight}
     \settoheight{\alphabetheight}{abcdefghijklmnopqrstuvwxyz}
     \the\alphabetheight

   Si no se ha declarado tal longitud \LEN con ‘\newlength’, si por
ejemplo escribes mal como ‘\settoheight{\aplhabetheight}{abc...}’,
entonces obtienes algo como ‘Secuencia de control indefinida.
<argumento> \alphabetheight’.  Si y deja la barra invertida fuera de
\LEN, como en ‘\settoheight{alphabetheight}{...}’ entonces obtienes algo
como ‘Número faltante, tratado como cero. <para ser leído de nuevo>
\setbox’.

14.6 ‘\settowidth’
==================

Sinopsis:

     \settowidth{\LEN}{TEXT}

   Establece la longitud \LEN al ancho del cuadro en el que LaTeX coloca
el argumento TEXT escrito.  El nombre de longitud ‘\LEN’ tiene que ser
una secuencia de control (see Secuencias de control), y como tal
debe comenzar con una barra invertida, ‘\’ en circunstancias normales.

   Esto imprime el ancho del alfabeto ASCII en minúsculas.

     \newlength{\alphabetwidth}
     \settowidth{\alphabetwidth}{abcdefghijklmnopqrstuvwxyz}
     \the\alphabetwidth

   Si no se ha declarado tal longitud \LEN con ‘\newlength’, si, por
ejemplo, escribes mal lo anterior como
‘\settowidth{\aplhabetwidth}{abc...}’, entonces obtienes algo como
‘Secuencia de control indefinida. <argumento> \aplhabetwidth’.  Si y
deja la barra invertida fuera de \LEN, como en
‘\settoheight{alphabetwidth}{...}’ entonces obtienes algo como ‘Número
faltante, tratado como cero. <para ser leído de nuevo> \setbox’.

14.7 ‘\stretch’
===============

Sinopsis:

     \stretch{NUMBER}

   Produce una longitud de caucho con longitud natural cero y NUMBER
veces ‘\fill’ unidades de capacidad de estiramiento (see
Longitudes).  El NUMBER puede ser positivo o negativo.  Este comando
es robusto (see \protect).

   Este comando es robusto.  (see \protect).  En este ejemplo
horizontal, LaTeX produce tres marcas y la distancia entre el primero y
el segundo es otra vez la mitad de largo que la distancia entre el
segundo y tercero.

     \rule{0.4pt}{1ex}\hspace{\stretch{1.5}}%
       \rule{0.4pt}{1ex}\hspace{\stretch{1}}%
       \rule{0.4pt}{1ex}

   En este ejemplo vertical, el ‘Dedicamos ...’ tendrá tres veces el
espacio debajo de él que encima de él.

     \newenvironment{dedication}{% en el preámbulo del documento
       \clearpage\thispagestyle{empty}%
       \vspace*{\stretch{1}} % de espacio extensible en la parte
                                 % superior
       \it
     }{%
       \vspace{\stretch{3}}  % espacio en el bot es 3 veces mayor que
                                 % en la parte superior
       \clearpage
     }
       ...
     \begin{dedication}        % en el cuerpo del documento
     Dedicamos este libro a nuestras esposas.
     \end{dedication}

14.8 Expresiones
================

Sinopsis, una de:

     \numexpr EXPRESSION
     \dimexpr EXPRESSION
     \glueexpr EXPRESSION
     \muglue EXPRESSION

   Cualquier lugar donde puedes escribir un número entero, o una
dimensión pegamento TeX, o TeX, o muglue, en su lugar puedes escribir
una expresión para calcular ese tipo de cantidad.

   Un ejemplo es que ‘\the\dimexpr\linewidth-4pt\relax’ produce como
salida la longitud que es cuatro puntos menos que el ancho de una línea
(el único propósito de ‘\the’ es mostrar el resultado en el documento).
Análogamente, ‘\romannumeral\numexpr6+3\relax’ produce ‘ix’ y
‘\the\glueexpr 5pt plus 1pt * 2 \relax’ producirá ‘10.0pt plus 2.0pt’.

   Una conveniencia aquí sobre hacer cálculos mediante la asignación de
registros y entonces usando ‘\advance’, etc., es que la evaluación de
expresiones no implica asignaciones y, por lo tanto, se puede realizar
en lugares donde las asignaciones no están permitidas.  El siguiente
ejemplo calcula el ancho del ‘\parbox’.

     \newlength{\offset}\setlength{\offset}{2em}
     \begin{center}
     \parbox{\dimexpr\linewidth-\offset*3}{Con malicia hacia ninguno con
     caridad para todos con firmeza en el derecho como Dios nos da para ver
     el derecho esforcémonos en terminar el  trabajo en el que estamos para
     vendar  las heridas  de  la nación,  para cuidar  de  aquel que  habrá
     llevado la batalla y para su viuda y su huérfano \textasciitilde\ para
     hacer todo  lo que puedas alcanzar  y cuidar una paz  justa y duradera
     entre nosotros  y con todas  las naciones ---Abraham  Lincoln, Segundo
     Discurso Inaugural, de el memorial}
     \end{center}

   La EXPRESIÓN consta de uno o más términos del mismo tipo (entero,
dimensión, etc.)  que se suman o se restan.  Un término que es un tipo
de número, dimensión, etc., consta de un factor de ese tipo,
opcionalmente multiplicado o dividido por factores.  Un factor de un
tipo es ya sea una cantidad de ese tipo o una subexpresión entre
paréntesis.  La expresión produce un resultado del tipo dado, por lo que
‘\numexpr’ produce un número entero, ‘\dimexpr’ produce una dimensión,
etc.

   En el ejemplo de cita anterior, cambiando a
‘\dimexpr\linewidth-3*\offset’ da el error ‘Unidad de medida ilegal (pt
insertado)’.  Esto se debe a que para ‘\dimexpr’ y ‘\glueexpr’, la
entrada consiste en una dimensión o valor de pegamento seguido de un
factor de multiplicación opcional, y no al revés.  Así ‘\the\dimexpr
1pt*10\relax’ es válido y produce ‘10.0pt’, pero ‘\the\dimexpr
10*1pt\relax’ da el error ‘Unidad ilegal’.

   Las expresiones absorben tókenes y llevan a cabo las matemáticas
apropiadas hasta un ‘\relax’ (que será absorbido), o hasta el primer
token no válido.  Por lo tanto, ‘\the\numexpr2+3px’ imprimirá ‘5px’,
porque LaTeX lee el ‘\numexpr2+3’, que está formado por números, y luego
encuentra la letra ‘p’, que no puede ser parte de un número.  Por lo
tanto, termina la expresión y produce ‘5’, seguido del texto normal
‘px’.

   Este comportamiento de terminación es útil en las comparaciones.  En
‘\ifnum\numexpr\parindent*2 < 10pt Yes\else No\fi’, el menor que sign
termina la expresión y el resultado ‘No’ es (en un artículo estándar de
LaTeX).

   Las expresiones pueden usar los operadores ‘+’, ‘-’, ‘*’ y ‘/’ junto
con paréntesis para subexpresiones, ‘(...)’.  En pegar expresiones en
que las partes ‘plus’ y ‘minus’ no necesitan paréntesis para ser
afectadas por un factor.  Entonces ‘\the\glueexpr 5pt plus 1pt * 2
\relax’ da como resultado ‘10pt plus 2pt’.

   TeX obligará a otros tipos numéricos de la misma manera que lo hace
cuando hace asignación de registro.  Así ‘\the\numexpr\dimexpr
1pt\relax\relax’ dará como resultado ‘65536’, que es ‘1pt’ convertido a
puntos escalados (see ‘sp’, la unidad interna
de TeX) y luego forzado a un número entero.  Con un ‘\glueexpr’ aquí, el
estirar y encoger se eliminaría.  Yendo por el contrario, un ‘\numexpr’
dentro de un ‘\dimexpr’ o ‘\glueexpr’ necesitará unidades apropiadas,
como en ‘\the\dimexpr\numexpr 1 + 2\relax pt\relax’, que produce
‘3.0pt’.

   Detalles de la aritmética: cada factor se comprueba para estar en el
rango permitido, los números deben ser menores que 2^{31} en valor
absoluto, y las dimensiones o los componentes del pegamento deben ser
inferiores a 2^{14} puntos, o ‘mu’, o ‘fil’, etc.  Las operaciones
aritméticas se realizan individualmente, a excepción de una operación de
escala (una multiplicación seguida inmediatamente por una división) que
se realiza como una operación combinada con un producto de 64 bits como
valor intermedio.  El resultado de cada operación se vuelve a comprobar
para estar en el rango permitido.

   Finalmente, la división y la escala se realizan con redondeo (a
diferencia de TeX’s ‘\divide’, que trunca).  De este modo ‘\the\dimexpr
5pt*(3/2)\relax’ pone ‘10.0pt’ en el documento, porque redondea ‘3/2’ a
‘2’, mientras que ‘\the\dimexpr 5pt*(4/3)\relax’ produce ‘5.0pt’.

15 Crear párrafos
*****************

Para comenzar un párrafo, simplemente escribe un texto.  Para acabar con
el párrafo actual, pon una línea vacía.  Son tres párrafos, cuya
separación se hace mediante dos líneas vacías.

     Es  una  verdad  universalmente  reconocida, que  un  solo  hombre  en
     posesión de buena fortuna, debe estar necesitado de una esposa.

     Por muy poco conocidos que puedan ser los sentimientos o las opiniones
     de  un hombre  así sobre  su primer  vez entrando  en un  barrio, esta
     verdad también está grabada en la  mente de las familias aledañas, que
     se le considera la propiedad legítima de una u otra de sus hijas.

     ``Mi querido señor  Bennet'', le dijo su dama un  día, ``¿Has oído que
     Netherfield Park está alquilado por fin?''

   Un separador de párrafo puede estar hecho de una secuencia de al
menos una línea de espacio en blanco, al menos una de las cuales no
termina con un comentario.  Una línea en blanco es una línea que está
vacía o compuesta solo de caracteres en blanco, como un espacio o
tabulación.  Los comentarios en el código fuente comienzan con un ‘%’ y
se extienden hasta el final de la línea.  En el siguiente ejemplo, las
dos columnas son idénticas:

     \documentclass[twocolumn]{article}
     \begin{document}
     Primer párrafo.

     Segundo párrafo.
     \newpage
     Primer párrafo

       % La separación de líneas puede contener caracteres en blanco.

     Segundo párrafo.
     \end{document}

   Una vez que LaTeX ha recopilado todo el contenido de un párrafo,
divide el contenido en líneas de una manera optimizada en todo el
párrafo (see Salto de línea).

   Hay lugares donde no se permite un nuevo párrafo.  No pongas una
línea en blanco en modo math (see Modos); aquí la línea en blanco
antes del ‘\end{equation}’

     \begin{equation}
       2^{|S|} > |S|

     \end{equation}

obtendrás el error ‘Se inserto el $ faltante’.  Del mismo modo, la línea
en blanco en este argumento ‘\section’

     \section{aaa

     bbb}

obtiene ‘¿Argumento faltante? {aaa ! El párrafo terminó antes de
completar \@sect’.

15.1 ‘\par’
===========

Sinopsis (ten en cuenta que mientras lees la entrada TeX convierte
cualquier secuencia de una o más líneas en blanco a un ‘\par’, see
Crear párrafos):

     \par

   Finaliza el párrafo actual.  La forma habitual de separar párrafos es
con una línea en blanco pero el comando ‘\par’ es completamente
equivalente.  Este comando es robusto (see \protect).

   Este ejemplo usa ‘\par’ en lugar de una línea en blanco simplemente
por legibilidad.

     \newcommand{\syllabusLegalese}{%
       \whatCheatingIs\par\whatHappensWhenICatchYou}

   En el modo LR, el comando ‘\par’ no hace nada y se ignora.  En modo
de párrafo, el comando ‘\par’ finaliza el modo de párrafo, cambiando
LaTeX a modo vertical (see Modos).

   No puedes usar el comando ‘\par’ en modo matemático.  Tampoco lo
puedes utilizar en el argumento de muchos comandos, como los comandos de
seccionado, por ejemplo, ‘\section’ (see Crear párrafos y
\newcommand y \renewcommand).

   El comando ‘\par’ no es lo mismo que el comando ‘\paragraph’.  Este
último es, como ‘\section’ o ‘\subsection’, un comando de seccionado
utilizado por las clases de documentos estándar LaTeX (see
\subsubsection - \paragraph y \subparagraph).

   El comando ‘\par’ no es lo mismo que ‘\newline’ o el salto de línea
doble barra invertida, ‘\\’.  La diferencia es que ‘\par’ finaliza el
párrafo, no solo la línea, y también desencadena la adición de el
espacio vertical entre párrafos ‘\parskip’ (see \parindent y \parskip).

   La salida de este ejemplo

     xyz

     \setlength{\parindent}{3in}
     \setlength{\parskip}{5in}
     \noindent test\indent test1\par test2

es: después de ‘xyz’ hay un salto vertical de 5 pulgadas y luego aparece
‘test’, alineado con el margen izquierdo.  En la misma línea, hay un
espacio horizontal vacío de 3 pulgadas y luego aparece ‘test1’.
Finalmente, hay un espacio vertical de 5 pulgadas, seguido de un párrafo
nuevo con una sangría de párrafo de 3 pulgadas, y luego LaTeX pone el
texto ‘test2’.

15.2 ‘\indent’ y ‘\noindent’
============================

Sinopsis:

     \indent

o

     \noindent

   Va al modo horizontal (see Modos).  El comando ‘\indent’ primero
genera un cuadro vacío cuyo ancho es ‘\parindent’.  Estos comandos son
robustos (see \protect).

   Normalmente se crea un nuevo párrafo poniendo una línea en blanco.
See \par, por la diferencia entre este comando y ‘\par’.  Para
comenzar un párrafo sin sangría, o continuar un párrafo interrumpido,
usa ‘\noindent’.

   En medio de un párrafo, el comando ‘\noindent’ no tiene efecto,
porque LaTeX ya está en modo horizontal allí.  El único efecto del
comando ‘\indent’ es generar un espacio.

   Este ejemplo inicia un párrafo nuevo.

     ... fin del párrafo anterior.

     \noindent Este párrafo no tiene sangría.

y esto continúa un párrafo interrumpido.

     Los datos

     \begin{center}
       \begin{tabular}{rl} ... \end{tabular}
     \end{center}

     \noindent muestra esto claramente.

   Para omitir la sangría en todo el documento, pon
‘\setlength{\parindent}{0pt}’ en el preámbulo.  Si lo haces, es posible
que también desees establecer la longitud de los espacios entre
párrafos, ‘\parskip’ (see \parindent y \parskip).

   Los estilos predeterminados de LaTeX tienen el primer párrafo después
de una sección que es sin sangría, como es la composición tipográfica
tradicional en inglés.  Para cambiar eso, busca en CTAN el paquete
‘indentfirst’.

15.3 ‘\parindent’ y ‘\parskip’
==============================

Sinopsis:

     \setlength{\parindent}{HORIZONTAL LEN}
     \setlength{\parskip}{VERTICAL LEN}

   Ambas son longitudes elásticas (see Longitudes).  Afectan a la
sangría de párrafos ordinarios, no de párrafos dentro de minipáginas
(see minipage), y el espacio vertical entre párrafos,
respectivamente.

   Por ejemplo, si esto se pone en el preámbulo:

     \setlength{\parindent}{0em}
     \setlength{\parskip}{1ex}

El documento tendrá párrafos sin sangría, pero en su lugar están
separados verticalmente por aproximadamente la altura de una ‘x’
minúscula.

   En la clase DOCUMENT estándar de LaTeX, el valor predeterminado para
‘\parindent’ en documentos de una columna es ‘15pt’ cuando el el tamaño
de texto predeterminado es ‘10pt’, ‘17pt’ para ‘11pt’ y ‘1.5em’ para
‘12pt’.  En documentos de dos columnas es ‘1em’.  (Estos valores se
establecen antes de que LaTeX llame a ‘\normalfont’ para que ‘em’ se
derive de la letra predeterminada, Computer Modern.  Si utilizas una
letra diferente y luego estableces ‘\parindent’ en 1em coincidentes en
esa letra, pon ‘\AtBeginDocument{\setlength{\parindent}{1em}}’ en el
preámbulo).

   El valor predeterminado para ‘\parskip’ en las clases ‘document’
estándar de LaTeX es ‘0pt plus1pt’.

15.4 Notas marginales
=====================

Sinopsis, una de:

     \marginpar{RIGHT}
     \marginpar[LEFT]{RIGHT}

   Crea una nota en el margen.  La primera línea de la nota tendrá la
misma línea base que la línea en el texto donde el ‘\marginpar’ ocurre.

   El margen que usa LaTeX para la nota depende del diseño actual (see
Opciones de la clase documento) y también en ‘\reversemarginpar’ (ve
abajo).  Si estás utilizando el diseño de un solo lado (opción de
documento ‘oneside’) entonces va en el margen derecho.  Si estás usando
diseño de dos caras (opción de documento ‘twoside’) entonces va en el
margen exterior.  Si estás en el diseño de dos columnas (opción de
documento ‘twocolumn’) entonces va en el margen más cercano.

   Si declaras ‘\reversemarginpar’ entonces LaTeX colocará notas
marginales posteriores en el margen opuesto al dado en el párrafo
anterior.  Vuelve a la posición predeterminada con ‘\normalmarginpar’.

   Cuando especificas el argumento opcional LEFT, entonces se usa para
una nota en el margen izquierdo, mientras que el argumento obligatorio
RIGHT se utiliza para una nota en el margen derecho.

   Normalmente, a la primera palabra de una nota, no se le aplicará la
separación silábica.  Puedes habilitar guiones allí comenzando LEFT o
RIGHT con ‘\hspace{0pt}’.

   Estos parámetros afectan el formato de la nota:

‘\marginparpush’
     Espacio vertical mínimo entre notas; predeterminado ‘7pt’ para
     documentos ‘12pt’, ‘5pt’ de lo contrario.  Ve también
     parámetros marginparpush del diseño de página.

‘\marginparsep’
     Espacio horizontal entre el texto principal y la nota;
     predeterminado ‘11pt’ para documentos ‘10pt’, ‘10pt’ de lo
     contrario.

‘\marginparwidth’
     Ancho de la nota en sí; predeterminado para un documento ‘10pt’ de
     una sola cara es ‘90pt’, ‘83pt’ para ‘11pt’ y ‘68pt’ para ‘12pt’;
     ‘17pt’ más en cada caso para un documento de dos caras.  En el modo
     de dos columnas, el valor predeterminado es ‘48pt’.

   La rutina estándar de LaTeX para notas marginales no impide notas se
caigan de la parte inferior de la página.

16 Fórmulas math
****************

Produce texto matemático poniendo LaTeX en modo matemático o pantalla
modo matemático (see Modos).  Este ejemplo muestra ambos.

     La ecuación de onda para \( u \) es
     \begin{displaymath}
        \frac{\partial^2u}{\partial t^2} = c^2\nabla^2u
     \end{displaymath}
     donde \( \nabla^2 \) es el Laplacian espacial y \( c \) es constante.

El modo math es para matemáticas en línea.  En el ejemplo anterior se
invoca por la ‘\(’ inicial y terminado por la ‘\)’ final
correspondiente.  El modo de pantalla matemática es para ecuaciones
mostradas y aquí es invocado por el entorno ‘displaymath’.  Ten en
cuenta que cualquier texto matemático que sea, incluido el texto
matemático que consta de un solo carácter, se maneja en modo matemático.

   Cuando está en modo matemático o en modo de visualización matemática,
LaTeX maneja muchos aspectos de tu texto de entrada de manera diferente
que en otros modos de texto.  Por ejemplo,

     contrastar x+y con \( x+y \)

en el modo matemático, las letras están en cursiva y el espacio
alrededor del signo más es diferente.

   Hay tres formas de hacer fórmulas en línea, para poner LaTeX en modo
math.

     \( MATERIAL MATEMÁTICO \)
     $ MATERIAL MATEMÁTICO $
     \begin{math} MATERIAL MATEMÁTICO \end{math}

Se prefiere la primera forma y la segunda es bastante común, pero la
tercera forma rara vez se usa.  A veces puedes usar uno y a veces otro,
como en ‘\(x\) y $y$’.  Puedes utilizar estos en el párrafo o en modo LR
(see Modos).

   Para mostrar fórmulas, pon a LaTeX en modo de visualización
matemática con o:

     \begin{displaymath}
        MATERIAL MATEMÁTICO
     \end{displaymath}

o

     \begin{equation}
        MATERIAL MATEMÁTICO
     \end{equation}

(see displaymath, equation).  La única diferencia es que con
el entorno ‘equation’, LaTeX pone un número de fórmula junto a la
fórmula.  La construcción ‘\[ MATH \]’ es equivalente a
‘\begin{displaymath} MATH \end{displaymath}’.  Estos entornos sólo se
pueden utilizar en el modo párrafo (see Modos).

   La American Mathematical Society ha puesto a disposición
gratuitamente un conjunto de paquetes que amplían enormemente sus
opciones para escribir matemáticas, ‘amsmath’ y ‘amssymb’ (también ten
en cuenta el paquete ‘mathtools’ que es una extensión y carga
‘amsmath’).  Los nuevos documentos que tendrán texto matemático deben
usar estos paquetes.  Las descripciones de estos paquetes están fuera
del alcance de este documento; ve su documentación en CTAN.

16.1 Subíndices y superíndices
==============================

Sinopsis (en modo matemático o modo de visualización matemático), uno
de:

     BASE^EXP
     BASE^{EXP}

o, uno de:

     BASE_EXP
     BASE_{EXP}

   Hace que EXP aparezca como un superíndice de BASE (con el carácter
signo de intercalación, ‘^’) o un subíndice (con guión bajo, ‘_’).

   En este ejemplo, ‘0’ y ‘1’ son subscripts mientras que ‘2’ son
superscripts.

     \( (x_0+x_1)^2 \leq (x_0)^2+(x_1)^2 \)

   Para que el subscript o superscript contenga más de un carácter,
rodea la expresión con llaves, como en ‘e^{-2x}’.  La cuarta línea de
este ejemplo muestra llaves usadas para agrupar una expresión para el
exponente.

     \begin{displaymath}
       (3^3)^3=27^3=19\,683
       \qquad
       3^{(3^3)}=3^{27}=7\,625\,597\,484\,987
     \end{displaymath}

   LaTeX sabe cómo manejar un superíndice en un superíndice, o un
subíndice sobre subíndice, o superscript sobre subs, o subs sobre
supers.  Así que, expresiones como ‘e^{x^2}’ y ‘x_{i_0}’ dan producción.
Ten en cuenta el uso en esas expresiones de llaves para dar a BASE una
determinada EXP.  Si ingresas ‘\(3^3^3\)’, esto se interpreta como
‘\(3^{3}^{3}\)’ y luego obtienes el error TeX ‘Doble superíndice’.

   LaTeX hace lo correcto cuando algo tiene tanto un subscript como un
superscript.  En este ejemplo, la integral tiene ambos.  Salen en el
lugar correcto sin ninguna intervención del autor.

     \begin{displaymath}
       \int_{x=a}^b f'(x)\,dx = f(b)-f(a)
     \end{displaymath}

Ten en cuenta las llaves alrededor de ‘x=a’ para hacer que la expresión
completa sea un subíndice.

   Para poner un superscript o subscript antes de un símbolo, usa una
construcción como ‘{}_t K^2’.  Las llaves vacías ‘{}’ dan al subíndice
algo para adjuntar y evita que accidentalmente adjuntes un símbolo
anterior.

   Usar el carácter de subíndice o superíndice fuera del modo math o el
modo ‘display math’, como en ‘la expresión x^2’, obtendrás el error TeX
‘Falta insertar el $’.

   Una razón común para querer subscripts fuera de un modo math es la
composición tipográfica de fórmulas químicas.  Hay paquetes para eso,
como ‘mhchem’; ve CTAN.

16.2 Símbolos matemáticos
=========================

LaTeX proporciona casi cualquier símbolo matemático o técnico que
cualquiera usa.  Por ejemplo, si incluyes ‘$\pi$’ en tu fuente,
obtendrás el símbolo pi π.  Ve el “Paquete LaTeX Integral Lista de
símbolos” en <https://ctan.org/pkg/comprehensive>.

   A continuación, tienes una lista de símbolos comúnmente usados.  De
ninguna manera es exhaustiva.  Cada símbolo se describe con una frase
corta y su clase de símbolo, que determina el espacio a su alrededor, se
da entre paréntesis.  A no ser que dicho de otra manera, los comandos
para estos símbolos solo se pueden usar en modo matemáticas.  Para
redefinir un comando para que se pueda usar cualquiera que sea el estado
modo actual, see \ensuremath.

‘\|’
     ∥ Paralelo (relación).  Sinónimo: ‘\parallel’.

‘\aleph’
     ℵ Aleph, cardinal transfinito (común).

‘\alpha’
     α Letra griega alfa minúscula (común).

‘\amalg’
     ⨿ Unión disjunta (binaria)

‘\angle’
     ∠ Ángulo geométrico (común).  Similar: less-than sign ‘<’ y salto
     de línea angular ‘\langle’.

‘\approx’
     ≈ Casi igual a (relación).

‘\ast’
     ∗ Operador asterisco, convolución, seis puntas (binario).
     Sinónimo: ‘*’, que suele ser un superíndice o subíndice, como en la
     estrella Kleene.  Similar ‘\star’, que es de cinco puntas, y a
     veces se usa como una operación binaria general, y a veces
     reservado para la correlación cruzada.

‘\asymp’
     ≍ Asintóticamente equivalente (relación).

‘\backslash’
     \ Barra invertida (común).  Similar: set minus ‘\setminus’, y
     ‘\textbackslash’ para barra invertida fuera del modo matemático.

‘\beta’
     β Letra griega minúscula beta (común).

‘\bigcap’
     ⋂ Intersección (operador) de tamaño variable o n-ario.  Similar:
     intersección binaria ‘\cap’.

‘\bigcirc’
     ⚪ Círculo, más grande (binario).  Similar: función
     composición ‘\circ’.

‘\bigcup’
     ⋃ Unión (operador) de tamaño variable o n-aria.  Similar: binario
     union ‘\cup’.

‘\bigodot’
     ⨀ Operador de punto en un círculo de tamaño variable u (operador)
     n-ario.

‘\bigoplus’
     ⨁ Operador más (operador) de tamaño variable, o n-ario, dentro de
     un círculo.

‘\bigotimes’
     ⨂ Operador de tiempo dentro de un círculo de tamaño variable, u
     (operador) n-ario.

‘\bigtriangledown’
     ▽ Triángulo abierto de tamaño variable o n-ary apuntando hacia
     abajo (binario).  Sinónimo: \VARBIGTRIANGLEDOWN.

‘\bigtriangleup’
     △ Triángulo abierto de tamaño variable o n-ary apuntando hacia
     arriba (binario).  Sinónimo: \VARBIGTRIANGLEUP.

‘\bigsqcup’
     ⨆ Unión cuadrada de tamaño variable u (operador) n-ario.

‘\biguplus’
     ⨄ Operador de unión de tamaño variable, o n-ario, con un signo más
     (operador).  (Ten en cuenta que el nombre solo tiene una p).

‘\bigvee’
     ⋁ De tamaño variable, o n-ario, u (operador) lógico.

‘\bigwedge’
     ⋀ De tamaño variable, o n-ario, y lógico (operador).

‘\bot’
     ⊥, arriba, abajo, elemento mínimo de un conjunto de elementos
     parcialmente ordenado, o una contradicción (común).  Consulta
     también ‘\top’.

‘\bowtie’
     ⋈ Unión natural de dos relaciones (relación).

‘\Box’
     □ Operador modal por necesidad; caja cuadrada abierta (común).  No
     disponible en TeX simple.  En LaTeX necesitas cargar el paquete
     ‘amssymb’.

‘\bullet’
     • Viñeta (binario).  Similar: multiplicación dot ‘\cdot’.

‘\cap’
     ∩ Intersección de dos conjuntos (binario).  Similar: de tamaño
     variable operator ‘\bigcap’.

‘\cdot’
     ⋅ Multiplicación (binario).  Similar: Bala dot ‘\bullet’.

‘\chi’
     χ Chi griego minúscula (común).

‘\circ’
     ∘ Composición de funciones, operador de anillo (binario).  Similar:
     operator ‘\bigcirc’ de tamaño variable.

‘\clubsuit’
     ♣ Palo de la carta del club (común).

‘\complement’
     ∁, Complemento de conjunto, usado como superíndice como en
     ‘$S^\complement$’ (común).  No disponible en TeX simple.  En LaTeX
     necesitas cargar el paquete ‘amssymb’.  También usado:
     ‘$S^{\mathsf{c}}$’ or ‘$\bar{S}$’.

‘\cong’
     ≅ Congruente (relación).

‘\coprod’
     ∐ Coproducto (operador).

‘\cup’
     ∪ Unión de dos conjuntos (binario).  Similar: de tamaño variable
     operator ‘\bigcup’.

‘\dagger’
     † Relación Dagger (binario).

‘\dashv’
     ⊣ Guión con torniquete invertido vertical (relación).  Similar:
     turnstile ‘\vdash’.

‘\ddagger’
     ‡ Relación de doble daga (binario).

‘\Delta’
     Δ Delta mayúscula griega, usado para incremento (común).

‘\delta’
     δ Delta minúscula griega (común).

‘\Diamond’
     ◇ Operador de diamante grande (común).  No disponible en TeX
     simple.  En LaTeX necesitas cargar el paquete ‘amssymb’.

‘\diamond’
     ⋄ Operador de diamante (binario).  Similar: large
     diamond ‘\Diamond’, encierra en un círculo bullet ‘\bullet’.

‘\diamondsuit’
     ♢ Palo de carta diamante (común).

‘\div’
     ÷ Signo de división (binario).

‘\doteq’
     ≐ Se acerca al límite (relación).  Similar: geométricamente igual
     to ‘\Doteq’.

‘\downarrow’
     ↓ Flecha hacia abajo, converge (relación).  Similar: ‘\Downarrow’
     flecha hacia abajo de doble línea.

‘\Downarrow’
     ⇓ Flecha hacia abajo de doble línea (relación).  Similar:
     ‘\downarrow’ flecha hacia abajo de una sola línea.

‘\ell’
     ℓ Letra cursiva minúscula l (común).

‘\emptyset’
     ∅ Símbolo de conjunto vacío (común).  La forma variante es
     ‘\varnothing’.

‘\epsilon’
     ϵ Epsilon semilunar en minúsculas (común).  Similar a Letra de
     texto griego.  Más ampliamente utilizado en matemáticas es el
     script en letra pequeña épsilon ‘\varepsilon’ ε.  Relacionado: la
     relación de pertenencia del conjunto ‘\in’ ∈.

‘\equiv’
     ≡ Equivalencia (relación).

‘\eta’
     η Letra griega minúscula (común).

‘\exists’
     ∃ Cuantificador existencial (común).

‘\flat’
     ♭ Bemol musical (común).

‘\forall’
     ∀ Cuantificador universal (común).

‘\frown’
     ⌢ Arco curvo hacia abajo (común).

‘\Gamma’
     Γ letra griega mayúscula (común).

‘\gamma’
     γ Letra griega minúscula (común).

‘\ge’
     ≥ Mayor o igual que (relación).  este es un sinónimo for ‘\geq’.

‘\geq’
     ≥ Mayor o igual que (relación).  este es un sinónimo for ‘\ge’.

‘\gets’
     ← Se le asigna el valor (relación).  Sinónimo: ‘\leftarrow’.

‘\gg’
     ≫ Mucho mayor que (relación).  Similar: mucho menos que ‘\ll’.

‘\hbar’
     ℏ Constante de Planck sobre dos pi (común).

‘\heartsuit’
     ♡ Palo de cartas de corazón (común).

‘\hookleftarrow’
     ↩ Flecha izquierda enganchada (relación).

‘\hookrightarrow’
     ↪ Flecha derecha enganchada (relación).

‘\iff’
     ⟷ Si y solo si (relación).  Es ‘\Longleftrightarrow’ con un
     ‘\thickmuskip’ a cada lado.

‘\Im’
     ℑ Parte imaginaria (común).  Ve: parte real ‘\Re’.

‘\imath’
     i sin punto; se usa cuando pones un acento en una i (see Acentos matemáticos).

‘\in’
     ∈ Establecer elemento (relación).  Ve también: semilunar minúscula
     epsilon ‘\epsilon’ϵ y letra minúscula epsilon ‘\varepsilon’.

‘\infty’
     ∞ Infinito (común).

‘\int’
     ∫ Integral (operador).

‘\iota’
     ι Letra griega minúscula (común).

‘\Join’
     ⨝ Símbolo de corbatín condensado (relación).  No disponible en TeX
     estándar.

‘\jmath’
     J sin punto; se usa cuando pones un acento en una j (see Acentos matemáticos).

‘\kappa’
     κ Letra griega minúscula (común).

‘\Lambda’
     Λ letra griega mayúscula (común).

‘\lambda’
     λ Letra griega minúscula (común).

‘\land’
     ∧ Lógico y (binario).  Sinónimo: ‘\wedge’.  Consulta también
     or lógico ‘\lor’.

‘\langle’
     ⟨ Ángulo izquierdo, o secuencia, corchete (apertura).  Similar:
     menos-que ‘<’.  Coincide con ‘\rangle’.

‘\lbrace’
     { Llave izquierda (apertura).  Sinónimo: ‘\{’.  Coincide
     con ‘\rbrace’.

‘\lbrack’
     [ Corchete izquierdo (apertura).  Sinónimo: ‘[’.  Coincide
     con ‘\rbrack’.

‘\lceil’
     ⌈ Soporte de techo izquierdo, como un corchete pero con la parte
     inferior rasurada (apertura).  Coincide con ‘\rceil’.

‘\le’
     ≤ Menor o igual que (relación).  Este es un sinónimo para ‘\leq’.

‘\leadsto’
     ⇝ Flecha derecha ondulada (relación).  Para obtener este símbolo
     fuera del modo matemático, puedes poner
     ‘\newcommand*{\Leadsto}{\ensuremath{\leadsto}}’ en el preámbulo y
     entonces usa ‘\Leadsto’ en su lugar.

‘\Leftarrow’
     ⇐ Está implícito en la flecha izquierda de doble línea (relación).
     Similar: flecha izquierda de una sola línea ‘\leftarrow’.

‘\leftarrow’
     ← Flecha izquierda de una sola línea (relación).
     Sinónimo: ‘\gets’.  Similar: doble línea izquierda
     flecha ‘\Leftarrow’.

‘\leftharpoondown’
     ↽ Arpón izquierdo de una línea, lengüeta debajo de la lengüeta
     (relación).

‘\leftharpoonup’
     ↼ Arpón izquierdo de una línea, púa sobre barra (relación).

‘\Leftrightarrow’
     ⇔ Biimplicación; flecha de dos puntas de doble línea (relación).
     Similar: flecha de dos puntas de una sola línea ‘\leftrightarrow’.

‘\leftrightarrow’
     ↔ Flecha de dos puntas de una sola línea (relación).  Similar:
     doble línea flecha de dos puntas ‘\Leftrightarrow’.

‘\leq’
     ≤ Menor o igual que (relación).  Este es un sinónimo para ‘\le’.

‘\lfloor’
     ⌊ Soporte de piso izquierdo (apertura).  Coincidencia: ‘\floor’.

‘\lhd’
     ◁ Punta de flecha, es decir, triángulo, apuntando a la izquierda
     (binario).  Para el símbolo de subgrupo normal, debe cargar
     ‘amssymb’ y usa ‘\vartriangleleft’ (que es una relación y así da un
     mejor espaciado).

‘\ll’
     ≪ Mucho menos que (relación).  Similar: mucho mayor que ‘\gg’.

‘\lnot’
     ¬ Negación lógica (común).  Sinónimo: ‘\neg’.

‘\longleftarrow’
     ⟵ Flecha izquierda larga de una sola línea (relación).  Similar:
     largo flecha izquierda de doble línea ‘\Longleftarrow’.

‘\longleftrightarrow’
     ⟷ Flecha larga de dos puntas de una sola línea (relación).
     Similar: larga doble línea flecha de dos
     puntas ‘\Longleftrightarrow’.

‘\longmapsto’
     ⟼ Flecha izquierda larga de una sola línea que comienza con una
     barra vertical (relación).  Similar: versión más corta ‘\mapsto’.

‘\longrightarrow’
     ⟶ Flecha derecha larga de una sola línea (relación).  Similar:
     largo flecha derecha de doble línea ‘\Longrightarrow’.

‘\lor’
     ∨ Lógico o (binario).  Sinónimo: ‘\vee’.  Consulta también
     y lógico ‘\land’.

‘\mapsto’
     ↦ Flecha izquierda de una sola línea que comienza con una barra
     vertical (relación).  Similar: versión más larga ‘\longmapsto’.

‘\mho’
     ℧ Conductancia, semicírculo omega mayúscula girada (común).

‘\mid’
     ∣ Barra vertical de una línea (relación).  Un uso típico de ‘\mid’
     es para un conjunto ‘\{\, x \mid x\geq 5 \,\}’.

     Similar: ‘\vert’ y ‘|’ producen la misma línea única de símbolo de
     barra vertical pero sin ningún espacio (caen en la clase
     ordinarios) y no los debes usar como relaciones, sino solo como
     ordinales, es decir, símbolos de notas al pie.  Para el valor
     absoluto, consulta la entrada para ‘\vert’ y por norma ve la
     entrada para ‘\Vert’.

‘\models’
     ⊨ Implica o satisface; torniquete doble, guión doble corto
     (relación).  Similar: guión doble largo ‘\vDash’.

‘\mp’
     ∓ Menos o más (relación).

‘\mu’
     μ Letra griega minúscula (común).

‘\nabla’
     ∇ Operador del, o diferencial, de Hamilton (común).

‘\natural’
     ♮ Notación musical natural (común).

‘\ne’
     ≠ No es igual (relación).  Sinónimo: ‘\neq’.

‘\nearrow’
     ↗ Flecha noreste (relación).

‘\neg’
     ¬ Negación lógica (común).  Sinónimo: ‘\lnot’.  A veces, en cambio,
     se usa para negación: ‘\sim’.

‘\neq’
     ≠ No es igual (relación).  Sinónimo: ‘\ne’.

‘\ni’
     ∋ Membresía reflejada épsilon; tiene el miembro (relación).
     Sinónimo: ‘\owns’.  Similar: es un miembro de ‘\in’.

‘\not’
         Sólido largo, o barra oblicua, que se usa para tachar un
     siguiente operador (relación).

     Muchos operadores negados están disponibles que no requieren
     ‘\not’, particularmente con el paquete ‘amssymb’.  Por ejemplo,
     ‘\notin’ es tipográficamente preferible a ‘\not\in’.

‘\notin’
     ∉ No es un elemento de (relación).  Similar: no subconjunto
     de ‘\nsubseteq’.

‘\nu’
     ν Letra griega minúscula (común).

‘\nwarrow’
     ↖ Flecha noroeste (relación).

‘\odot’
     ⊙ Punto dentro de un círculo (binario).  Similar: de tamaño
     variable operador ‘\bigodot’.

‘\oint’
     ∮ Integral de contorno, integral con círculo en el medio
     (operador).

‘\Omega’
     Ω letra griega mayúscula (común).

‘\omega’
     ω Letra griega minúscula (común).

‘\ominus’
     ⊖ Signo menos, o guión, dentro de un círculo (binario).

‘\oplus’
     ⊕ Signo más dentro de un círculo (binario).  Similar: de tamaño
     variable operador ‘\bigoplus’.

‘\oslash’
     ⊘ Solidus, o slash, dentro de un círculo (binario).

‘\otimes’
     ⊗ Signo de tiempo, o cruz, dentro de un círculo (binario).
     Similar: operador de tamaño variable ‘\bigotimes’.

‘\owns’
     ∋ épsilon de membresía reflejada; tiene el miembro (relación).
     Sinónimo: ‘\ni’.  Similar: es un miembro de ‘\in’.

‘\parallel’
     ∥ Paralelo (relación).  Sinónimo: ‘\|’.

‘\partial’
     ∂ Diferencial parcial (común).

‘\perp’
     ⟂ Perpendicular (relación).  Similar: ‘\bot’ usa el mismo glifo
     pero el espaciado es diferente porque está en la clase común.

‘\Phi’
     Φ Letra griega mayúscula (común).

‘\phi’
     ϕ Letra griega minúscula (común).  La forma variante es
     ‘\varphi’ φ.

‘\Pi’
     Π letra griega mayúscula (común).

‘\pi’
     π Letra griega minúscula (común).  La forma variante es ‘\varpi’ ϖ.

‘\pm’
     ± Más o menos (binario).

‘\prec’
     ≺ Precede (relación).  Similar: menor que ‘<’.

‘\preceq’
     ⪯ Precede o es igual a (relación).  Similar: menor que o igual
     a ‘\leq’.

‘\prime’
     ′ Prime, o minuto en una expresión de tiempo (común).  Normalmente
     se usa como un superíndice: ‘$f^\prime$’; ‘$f^\prime$’ y ‘$f'$’
     producen el mismo resultado.  Una ventaja del segundo es que
     ‘$f'''$’ produce el símbolo deseado, es decir, el mismo resultado
     como ‘$f^{\prime\prime\prime}$’, pero usa bastante menos
     mecanografía.  Solo puedes usar ‘\prime’ en modo math.  Usando la
     comilla derecha simple ‘'’ en modo texto produce un carácter
     diferente (apóstrofe).

‘\prod’
     ∏ Producto (operador).

‘\propto’
     ∝ Es proporcional a (relación)

‘\Psi’
     Ψ letra griega mayúscula (común).

‘\psi’
     ψ Letra griega minúscula (común).

‘\rangle’
     ⟩ Ángulo recto, o secuencia, corchete (cierre).  Similar: mayor
     que ‘>’.  Coincidencia:‘\langle’.

‘\rbrace’
     } Llave derecha (de cierre).  Sinónimo: ‘\}’.  Coincide
     con ‘\lbrace’.

‘\rbrack’
     ] Corchete derecho (de cierre).  Sinónimo: ‘]’.  Coincide
     con ‘\lbrack’.

‘\rceil’
     ⌉ Soporte de techo derecho (cierre).  Coincide con ‘\lceil’.

‘\Re’
     ℜ Parte real, números reales, R mayúscula cursiva (común).
     Relacionado: doble línea o negrita de pizarra, R ‘\mathbb{R}’;
     acceder esto, carga el paquete ‘amsfonts’.

‘\restriction’
     ↾, Restricción de una función (relación).  Sinónimo:
     ‘\upharpoonright’.  No disponible en TeX simple.  En LaTeX
     necesitas cargar el paquete ‘amssymb’.

‘\revemptyset’
     ⦰, Símbolo de conjunto vacío invertido (común).  Relacionado:
     ‘\varnothing’.  No disponible en TeX simple.  En LaTeX necesitas
     cargar el paquete ‘stix’.

‘\rfloor’
     ⌋ Soporte de piso derecho, un corchete derecho con el corte
     superior apagado (cierre).  Coincide con ‘\lfloor’.

‘\rhd’
     ◁ Punta de flecha, es decir, triángulo, apuntando a la derecha
     (binario).  Para el símbolo de subgrupo normal, en su lugar, debes
     cargar ‘amssymb’ y use ‘\vartriangleright’ (que es una relación y
     así da un mejor espaciado).

‘\rho’
     ρ Letra griega minúscula (común).  La forma variante es
     ‘\varrho’ ϱ.

‘\Rightarrow’
     ⇒ Implica, flecha de doble línea hacia la derecha (relación).
     Similar: flecha derecha de una sola línea ‘\rightarrow’.

‘\rightarrow’
     → Flecha de una sola línea que apunta hacia la derecha (relación).
     Sinónimo: ‘\to’.  Similar: línea doble fecha derecha ‘\Rightarrow’.

‘\rightharpoondown’
     ⇁ Arpón que apunta hacia la derecha con lengüeta debajo de la línea
     (relación).

‘\rightharpoonup’
     ⇀ Arpón apuntando a la derecha con lengüeta sobre el línea
     (relación).

‘\rightleftharpoons’
     ⇌ Arpón derecho arriba arpón izquierdo abajo (relación).

‘\searrow’
     ↘ Flecha que apunta al sureste (relación).

‘\setminus’
     ⧵ Establecer diferencia, solido inverso o barra invertida, como \
     (binario).  Similar: barra inversa ‘\backslash’ y también
     ‘\textbackslash’ fuera del modo matemático.

‘\sharp’
     ♯ Sostenido musical (común).

‘\Sigma’
     Σ letra griega mayúscula (común).

‘\sigma’
     σ Letra griega minúscula (común).  La forma variante es
     ‘\varsigma’ ς.

‘\sim’
     ∼ Similar, en una relación (relación).

‘\simeq’
     ≃ Similar o igual a, en una relación (relación).

‘\smallint’
     ∫ Signo integral que no cambia a un tamaño mayor en una pantalla
     (operador).

‘\smile’
     ⌣ Arco curvo hacia arriba, sonrisa (normal).

‘\spadesuit’
     ♠ Palo de cartas de espadas (común).

‘\sqcap’
     ⊓ Símbolo de intersección cuadrada (binario).  Similar:
     intersección ‘cap’.

‘\sqcup’
     ⊔ Símbolo de unión cuadrada (binario).  Similar: unión ‘cup’.
     Relacionado: de tamaño variable operator ‘\bigsqcup’.

‘\sqsubset’
     ⊏, símbolo de subconjunto cuadrado (relación).  Similar:
     subconjunto ‘\subset’.  No disponible en TeX simple.  En LaTeX
     necesitas cargar el paquete ‘amssymb’.

‘\sqsubseteq’
     ⊑ Subconjunto cuadrado o símbolo igual (binario).  Similar:
     subconjunto o igual a ‘\subseteq’.

‘\sqsupset’
     ⊐, símbolo de superconjunto cuadrado (relación).  Similar:
     superconjunto ‘\supset’.  No disponible en TeX simple.  En LaTeX
     necesitas cargar el paquete ‘amssymb’.

‘\sqsupseteq’
     ⊒ Superconjunto cuadrado o símbolo igual (binario).  Similar:
     superconjunto o igual ‘\supseteq’.

‘\star’
     ⋆ Estrella de cinco puntas, a veces utilizada como binario general
     pero a veces reservado para la correlación cruzada (binario).
     Similar: los sinónimos asterisco ‘*’ y ‘\ast’, que son de seis
     puntas, y más a menudo aparecen como un superíndice o subíndice,
     como con la estrella Kleene.

‘\subset’
     ⊂ Subconjunto (ocasionalmente, está implícito en) (relación).

‘\subseteq’
     ⊆ Subconjunto o igual a (relación).

‘\succ’
     ≻ Viene después, tiene éxito (relación).  Similar: es menos
     que ‘>’.

‘\succeq’
     ⪰ Tiene éxito o es igual a (relación).  Similar: menos que o igual
     a ‘\leq’.

‘\sum’
     ∑ Sumatoria (operador).  Similar: capital griega sigma ‘\Sigma’.

‘\supset’
     ⊃ Superconjunto (relación).

‘\supseteq’
     ⊇ Superconjunto o igual a (relación).

‘\surd’
     √ Símbolo radical (común).  El comando LaTeX ‘\sqrt{...}’ escribe
     la raíz cuadrada del argumento, con una barra que se extiende para
     cubrir el argumento.

‘\swarrow’
     ↙ Flecha que apunta al suroeste (relación).

‘\tau’
     τ Letra griega minúscula (común).

‘\theta’
     θ Letra griega minúscula (común).  La forma variante es
     ‘\vartheta’ ϑ.

‘\times’
     × Signo de multiplicación de escuela primaria (binario).  Ve
     también ‘\cdot’.

‘\to’
     → Flecha de una sola línea que apunta hacia la derecha (relación).
     Sinónimo: ‘\rightarrow’.

‘\top’
     ⊤ Arriba, elemento más grande de un conjunto parcialmente ordenado
     (común).  Consulta también ‘\bot’.

‘\triangle’
     △ Triángulo (común).

‘\triangleleft’
     ◁ Triángulo sin rellenar que apunta hacia la izquierda (binario).
     Similar: ‘\lhd’.  Para el símbolo de subgrupo normal que debe
     cargar ‘amssymb’ y usar ‘\vartriangleleft’ (que es una relación y
     por lo tanto proporciona un mejor espaciado).

‘\triangleright’
     ▷ Triángulo sin rellenar que apunta a la derecha (binario).  Para
     el símbolo de subgrupo normal, en su lugar, debe cargar ‘amssymb’ y
     usar ‘\vartriangleright’ (que es una relación y así da un mejor
     espaciado).

‘\unlhd’
     ⊴ Punta de flecha subrayada sin relleno que apunta hacia la
     izquierda, es decir, triángulo, con una línea debajo (binario).
     Para el símbolo de subgrupo normal carga ‘amssymb’ y
     usa ‘\vartrianglelefteq’ (que es una relación y por lo tanto da
     mejor espaciado).

‘\unrhd’
     ⊵ Punta de flecha subrayada sin relleno que apunta hacia la
     derecha, es decir, triángulo, con una línea debajo (binario).  Para
     el símbolo de subgrupo normal carga ‘amssymb’ y
     usa ‘\vartrianglerighteq’ (que es una relación y por lo tanto da
     mejor espaciado).

‘\Uparrow’
     ⇑ Flecha de doble línea que apunta hacia arriba (relación).
     Similar: apuntando hacia arriba de una sola línea
     flecha ‘\uparrow’.

‘\uparrow’
     ↑ Flecha de una sola línea que apunta hacia arriba, diverge
     (relación).  Similar: doble línea apuntando hacia arriba
     flecha ‘\Uparrow’.

‘\Updownarrow’
     ⇕ Flecha de doble línea que apunta hacia arriba y hacia abajo
     (relación).  Similar: una sola línea apuntando hacia arriba y hacia
     abajo arrow ‘\updownarrow’.

‘\updownarrow’
     ↕ Flecha de una sola línea que apunta hacia arriba y hacia abajo
     (relación).  Similar: doble línea apuntando hacia arriba y hacia
     abajo arrow ‘\Updownarrow’.

‘\upharpoonright’
     ↾, arpón levantado, con púa en el lado derecho (relación).
     Sinónimo: ‘\restriction’.  No disponible en TeX simple.  En LaTeX
     necesitas cargar el paquete ‘amssymb’.

‘\uplus’
     ⊎ Unión multiconjunto, un símbolo de unión con un símbolo más en el
     medio (binario).  Similar: union ‘\cup’.  Relacionado: operador de
     tamaño variable ‘\biguplus’.

‘\Upsilon’
     Υ letra griega mayúscula (común).

‘\upsilon’
     υ Letra griega minúscula (común).

‘\varepsilon’
     ε Epsilon de script en letra minúscula (común).  Esto es
     ampliamente utilizado en matemáticas que la forma épsilon semilunar
     no variante ‘\epsilon’ ϵ.  Relacionado: establece membresía ‘\in’.

‘\vanothing’
     ∅, Símbolo de conjunto vacío.  Similar: ‘\emptyset’.  Relacionado:
     ‘\revemptyset’.  No disponible en TeX simple.  En LaTeX necesitas
     cargar el paquete ‘amssymb’.

‘\varphi’
     φ Variante de la letra griega minúscula (común).  La forma no
     variante es ‘\phi’ ϕ.

‘\varpi’
     ϖ Variante de la letra griega minúscula (común).  La forma no
     variante es ‘\pi’ π.

‘\varrho’
     ϱ Variante de la letra griega minúscula (común).  La forma no
     variante es ‘\rho’ ρ.

‘\varsigma’
     ς Variante de la letra griega minúscula (común).  La forma no
     variante es ‘\sigma’ σ.

‘\vartheta’
     ϑ Variante de la letra griega minúscula (común).  La forma no
     variante es ‘\theta’ θ.

‘\vdash’
     ⊢ Demostrable; torniquete, vertical y un guión (relación).
     Similar: torniquete giró un semicírculo ‘\dashv’.

‘\vee’
     ∨ Lógico o; una forma de v hacia abajo (binario).  Relacionado: y
     lógico ‘\wedge’.  Similar: de tamaño variable operator ‘\bigvee’.

‘\Vert’
     ‖ Doble barra vertical (común).  See Delimitadores, sobre cómo
     usar el paquete ‘mathtools’ para crear símbolos de norma.

‘\vert’
     | Barra vertical de una sola línea (común).  Para “tal que”, como
     en la definición de un conjunto, usa ‘\mid’ porque es una relación
     Delimitadores, para saber cómo usar el paquete ‘mathtools’
     para crear símbolos de valor absoluto de tamaño flexible.

‘\wedge’
     ∧ y lógico (binario).  Sinónimo: ‘\land’.  Ve también or lógico
     ‘\vee’.  Similar: operator de tamaño variable ‘\bigwedge’.

‘\wp’
     ℘ Weierstrass p (común).

‘\wr’
     ≀ Producto de guirnalda (binario).

‘\Xi’
     Ξ letra griega mayúscula (común).

‘\xi’
     ξ Letra griega minúscula (común).

‘\zeta’
     ζ Letra griega minúscula (común).

   Los siguientes símbolos se usan con mayor frecuencia en texto sin
formato, pero LaTeX proporciona versiones para usar en texto matemático.

‘\mathdollar’
     Signo de dólar en modo matemático: $.

‘\mathparagraph’
     Signo de párrafo (pilcrow) en modo matemático, ¶.

‘\mathsection’
     Signo de sección en modo math: §.

‘\mathsterling’
     Signo esterlina en modo matemático: £.

‘\mathunderscore’
     Guión bajo en modo matemático: _.

16.2.1 Flechas
--------------

Estas son las flechas que vienen con LaTeX estándar.  Los paquetes
‘latexsym’ y ‘amsfonts’ contienen muchos más.

Símbolo Comando
---------------------------------------------------------------------------
⇓       ‘\Downarrow’
↓       ‘\downarrow’
↩       ‘\hookleftarrow’
↪       ‘\hookrightarrow’
←       ‘\leftarrow’
⇐       ‘\Leftarrow’
⇔       ‘\Leftrightarrow’
↔       ‘\leftrightarrow’
⟵       ‘\longleftarrow’
⟸       ‘\Longleftarrow’
⟷       ‘\longleftrightarrow’
⟺       ‘\Longleftrightarrow’
⟼       ‘\longmapsto’
⟹       ‘\Longrightarrow’
⟶       ‘\longrightarrow’
↦       ‘\mapsto’
↗       ‘\nearrow’
↖       ‘\nwarrow’
⇒       ‘\Rightarrow’
→       ‘\rightarrow’, o ‘\to’
↘       ‘\searrow’
↙       ‘\swarrow’
↑       ‘\uparrow’
⇑       ‘\Uparrow’
↕       ‘\updownarrow’
⇕       ‘\Updownarrow’

   Un ejemplo de la diferencia entre ‘\to’ y ‘\mapsto’ es: ‘\( f\colon
D\to C \) dado por \( n\mapsto n^2 \)’.

   Para diagramas conmutativos hay una serie de paquetes, incluyendo
‘tikz-cd’ y ‘amscd’.

16.2.2 ‘\boldmath’ y ‘\unboldmath’
----------------------------------

Sinopsis (usada en modo párrafo o modo LR):

     \boldmath \( MATH \)

o

     \unboldmath \( MATH \)

   Declaraciones para cambiar las letras y símbolos en MATH para estar
en un tipo de letra en negrita, o para anular eso y traer de vuelta el
predeterminado (sin negrita), respectivamente.  Se deben usar cuando
_no_ está en modo math o el modo ‘display math’ (see Modos).  Ambos
comandos son frágiles (see \protect).

   En este ejemplo, cada comando ‘\boldmath’ tiene lugar dentro de un
‘\mbox’,

     tenemos $\mbox{\boldmath \(v \)} = 5\cdot\mbox{\boldmath \(u \)$}$

lo cual significa que ‘\boldmath’ solo se llama en modo texto, aquí LR y
explica por qué debemos cambiar LaTeX al modo math para establecer ‘v’ y
‘u’.

   Si usas cualquiera de los comandos dentro del ‘modo math’, como con
‘Problema: \( \boldmath x \)’, entonces obtienes algo como ‘Advertencia
de letras LaTeX: Comando \boldmath no válido en modo math’ y
‘Advertencia de tipo de letra LaTeX: Comando \mathversion inválido en
modo math’.

16.2.2.1 ‘bm’: Símbolos matemáticos individuales en negrita
...........................................................

Especificar ‘\boldmath’ es el mejor método para componer una expresión
matemática en negrita.  Pero para componer tipográficamente símbolos
individuales dentro de una expresión en negrita, el paquete ‘bm’
proporcionado por el equipo del proyecto LaTeX es mejor.  Su uso está
fuera del alcance de este documento (consulta su documentación en
<https://ctan.org/pkg/bm> o en tu instalación) pero el espacio en la
salida de este pequeño ejemplo mostrará que es una mejora sobre
‘\boldmath’ dentro de una expresión:

     \usepackage{bm}   % en el preámbulo
     ...
     tenemos $\bm{v} = 5\cdot\bm{u}$

16.2.2.2 Math OpenType en negrita
.................................

Desafortunadamente, al usar los motores Unicode (XeLaTeX, LuaLaTeX), ni
‘\boldmath’ ni ‘bm’ suelen funcionar bien, porque los tipos de letra
matemáticos de OpenType que normalmente se usan con esos motores rara
vez vienen con un compañero en negrita, y tanto ‘\boldmath’ como ‘bm’ lo
requieren.  (La implementación de ‘bm’ se basa en ‘\boldmath’, por lo
que los requisitos son los mismos).  Si tienes un tipo de letra
matemático en negrita, entonces ‘\boldmath’ y el ‘bm’ funcionan bien.

   Si no hay tal tipo de letra disponible, una alternativa es construir
un tipo de letra en negrita falso con el parámetro ‘FakeBold=1’ del
paquete ‘fontspec’ (consulta su documentación,
<https://ctan.org/pkg/fontspec>).  Esto puede ser aceptable para
redacción o distribución informal, pero los resultados están lejos de
ser una verdadera negrita.

   Otra alternativa al manejo de negrita para tipos de letra matemáticos
OpenType es usar el ‘\symbf’ (negrita), ‘\symbfit’ (negrita y cursiva) y
comandos relacionados del paquete ‘unicode-math’.  Estos no cambian el
tipo de letra actual, sino que cambian el "alfabeto" (Unicode) usado,
que en la práctica es más compatible que un tipo de letra en negrita
separado.  Son posibles muchas variaciones, por lo que hay sutilezas
para obtener la salida deseada.  Como de costumbre, consulta la
documentación del paquete (<https://ctan.org/pkg/unicode-math>).

16.2.3 Pizarra negra
--------------------

Sinopsis:

     \usepackage{amssymb}   % en el preámbulo
       ...
     \mathbb{UPPERCASE-LETTER}

   Proporciona símbolos en negrita de pizarra, a veces también conocidos
como letras doublestruck, usadas para denotar conjuntos de números como
los números naturales, los enteros, etc.

   Aquí

     \( \forall n \in \mathbb{N}, n^2 \geq 0 \)

el ‘\mathbb{N}’ da el símbolo de pizarra en negrita ℕ, representación de
los números naturales.

   Si el argumento contiene algo que no sea una letra mayúscula, no
obtienes un error, pero obtienes resultados extraños, incluidos
caracteres inesperados.

   Hay paquetes que dan acceso a otros símbolos además de las letras
mayúsculas; mira en CTAN.

16.2.4 Caligráfico
------------------

Sinopsis:

     \mathcal{LETRAS-MAYÚSCULAS}

   Utiliza un tipo de letra como el tipo script.

   En este ejemplo, el identificador del gráfico se genera en letra
cursiva.

     Sea la gráfica \( \mathcal{G} \).

   Si usa algo que no sea una letra mayúscula, entonces no obtienes un
error, pero tampoco obtienes una salida caligráfica matemática.  Por
ejemplo, ‘\mathcal{g}’ genera un símbolo de llave de cierre.

16.2.5 Delimitadores
--------------------

Los delimitadores son paréntesis, llaves u otros caracteres que se
utilizan para marcar el inicio y el final de las subfórmulas.  Esta
fórmula tiene tres conjuntos de paréntesis que delimitan las tres
subfórmulas.

     (z-z_0)^2 = (x-x_0)^2 + (y-y_0)^2

No es necesario que los delimitadores coincidan, por lo que puedes
ingresar ‘\( [0,1) \)’.

   Estos son los delimitadores comunes.:

DelimitadorComando      Nombre
------------------------------------------------------
(        ‘(’            Paréntesis izquierdo
)        ‘)’            Paréntesis derecho
\}       ‘{’ o          Llave izquierda
         ‘\lbrace’
\{       ‘}’ o          Llave derecha
         ‘\rbrace’
[        ‘[’ o          Corchete izquierdo
         ‘\lbrack’
]        ‘]’ o          Corchete derecho
         ‘\rbrack’
⌊        ‘\lfloor’      Left floor bracket
⌋        ‘\rfloor’      Soporte de piso derecho
⌈        ‘\lceil’       Soporte superior izquierdo
⌉        ‘\rceil’       Soporte superior derecho
⟨        ‘\langle’      Paréntesis angular
                        izquierdo
⟩        ‘\rangle’      Soporte angular derecho
/        ‘/’            Barra o barra inclinada
\        ‘\backslash’   Barra invertida o barra
                        invertida
|        ‘|’ o          Barra vertical
         ‘\vert’
‖        ‘\|’ o         Barra vertical doble
         ‘\Vert’

   El paquete ‘mathtools’ te permite crear comandos para pares
delimitadores.  Por ejemplo, si pones
‘\DeclarePairedDelimiter\abs{\lvert}{\rvert}’ en tu preámbulo entonces
obtienes dos comandos para barras verticales de una sola línea (solo
funcionan en modo matemático).  La forma con estrella, como
‘\abs*{\frac{22}{7}}’, tiene la altura de las barras verticales coincide
con la altura del argumento.  La forma sin estrella, como
‘\abs{\frac{22}{7}}’, tiene las barras fijas a una altura
predeterminada.  Esta forma acepta un argumento opcional, como en el
‘\abs[COMANDO SIZE]{\frac{22}{7}}’, donde la altura de las barras se da
en COMANDO SIZE, como ‘\Bigg’.  Usando en su lugar ‘\lVert’ y ‘\rVert’
como símbolos te darán un símbolo de norma con el mismo comportamiento.

16.2.5.1 ‘\left’ y ‘\right’
...........................

Sinopsis:

     \left DELIMITER1 ... \right DELIMITER2

   Crea paréntesis, llaves u otros delimitadores coincidentes.  LaTeX
hace los delimitadores lo suficientemente altos como para cubrir el
tamaño de la fórmula que ellos encierran.

   Esto crea un vector unitario rodeado por paréntesis lo
suficientemente alto como para cubrir las entradas.

     \begin{equation}
       \left(\begin{array}{c}
         1   \\
         0   \\
       \end{array}\right)
     \end{equation}

   See Delimitadores, para obtener una lista de los delimitadores
comunes.

   Cada ‘\left’ debe tener un ‘\right’ coincidente.  En el ejemplo
anterior, al omitir ‘\left(’ aparece el mensaje de error ‘Extra \right’.
Omitir el ‘\right)’ obtiene ‘No puedes usar `\eqno' en modo matemático’.

   Sin embargo, DELIMITER1 y DELIMITER2 no necesitan coincidir.  Una
caso común es que deseas un aparato ortopédico sin igual, como se
muestra a continuación.  Usa un punto, ‘.’, como “delimitador nulo”.

     \begin{equation}
       f(n)=\left\{\begin{array}{ll}
                     1             &\mbox{--if \(n=0\)} \\
                     f(n-1)+3n^2   &\mbox{--else}
            \end{array}\right.
     \end{equation}

Ten en cuenta que para obtener una llave como delimitador, los debes
prefijar con una barra invertida, ‘\{’ (see Caracteres reservados).
(Los paquetes ‘amsmath’ y ‘mathtools’ te permiten obtener la
construcción anterior a través de un entorno ‘cases’).

   El par ‘\left ... \right’ forma un grupo.  Una consecuencia es que la
fórmula encerrada en el par ‘\left ... \right’ no puede tener saltos de
línea en la salida.  Esto incluye saltos de línea manuales y automáticos
generados por LaTeX.  En este ejemplo, LaTeX rompe la ecuación para que
la fórmula se ajuste a los márgenes.

     Lorem ipsum dolor sit amet
     \( (a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z) \)

Pero con ‘\left’ y ‘\right’

     Lorem ipsum dolor sit amet
     \( \left(a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z\right) \)

LaTeX no romperá la línea, lo que hará que la fórmula se extienda al
margen.

   Porque ‘\left ... \right’ hace un grupo, todas las reglas de
agrupación usuales se mantienen.  Aquí, el valor de ‘\testlength’
establecido dentro de la ecuación se olvidará y la salida es ‘1.2pt’.

     \newlength{\testlength} \setlength{\testlength}{1.2pt}
     \begin{equation}
       \left( a+b=c \setlength{\testlength}{3.4pt} \right)
       \the\testlength
     \end{equation}

   El par ‘\left ... \right’ afecta el espaciado horizontal de la
fórmula adjunta, de dos maneras.  La primera es que en ‘\( \sin(x) =
\sin\left(x\right) \)’ el que está después del signo igual tiene más
espacio alrededor del ‘x’.  Eso es porque ‘\left( ... \right)’ inserta
un nodo interno mientras que ‘( ... )’ inserta un nodo de apertura.  La
segunda forma en que el par afecta el espacio horizontal es que debido a
que forman un grupo, la subfórmula adjunta se escribirá en su forma de
ancho natural, sin estirar ni encoger para que la línea se ajuste mejor.

   TeX escala los delimitadores según la altura y la profundidad de la
fórmula adjunta.  Aquí LaTeX aumenta los corchetes para extender la
altura de la integral.

     \begin{equation}
       \left[ \int_{x=r_0}^{\infty} -G\frac{Mm}{r^2}\, dr \right]
     \end{equation}

   El tamaño manual a menudo es mejor.  Por ejemplo, aunque por debajo
de la regla no tiene profundidad, TeX creará delimitadores que se
extienden muy por debajo de la regla.

     \begin{equation}
       \left( \rule{1pt}{1cm} \right)
     \end{equation}

TeX puede elegir delimitadores que son demasiado pequeños, como en ‘\(
\left| |x|+|y| \right| \)’.  También puede elegir delimitadores
demasiado grandes, como aquí.

     \begin{equation}
       \left( \sum_{0\leq i<n} i^k \right)
     \end{equation}

Un tercer caso incómodo es cuando una fórmula que se muestra durante
mucho tiempo está en más de una línea y debe hacer coincidir los tamaños
del delimitador de apertura y cierre; no puedes usar ‘\left’ en la
primera línea y ‘\right’ en la última porque deben estar emparejados.

   Para cambiar manualmente el tamaño de los delimitadores, see \bigl y \bigr etc..

16.2.5.2 ‘\bigl’, ‘\bigr’, etc.
...............................

Sinopsis, una de:

     \bigl DELIMITER1 ... \bigr DELIMITER2
     \Bigl DELIMITER1 ... \bigr DELIMITER2
     \biggl DELIMITER1 ... \biggr DELIMITER2
     \Biggl DELIMITER1 ... \Biggr DELIMITER2

(como con ‘\bigl[...\bigr]’; estrictamente hablando, no necesitan
coincidir, ve más abajo), o uno de:

     \bigm DELIMITER
     \Bigm DELIMITER
     \biggm DELIMITER
     \Biggm DELIMITER

(como con ‘\bigm|’), o uno de:

     \big DELIMITER
     \Big DELIMITER
     \bigg DELIMITER
     \Bigg DELIMITER

(como con ‘\\big[’).

   Produce delimitadores de tamaño manual.  Para delimitadores que son
tamaño automático \left y \right).

   Esto produce barras verticales exteriores ligeramente más grandes.

       \bigl| |x|+|y| \bigr|

   Los comandos anteriores se enumeran en orden de tamaño creciente.
Puedes usar el tamaño más pequeño como ‘\bigl...\bigr’ en un párrafo sin
causar que LaTeX separe las líneas.  Los tamaños más grandes están
destinados para las ecuaciones mostradas.

   See Delimitadores, para obtener una lista de los delimitadores
comunes.  En la familia de comandos con ‘l’ o ‘r’, DELIMITER1 y
DELIMITER2 no necesita coincidir.

   Los comandos ‘l’ y ‘r’ producen delimitadores abiertos y cerrados que
no insertan ningún espacio horizontal entre un átomo precedente y el
delimitador, mientras que los comandos sin ‘l’ y ‘r’ insertan algunos
espacios (porque cada delimitador se establece como una variable
ordinaria).  Compara estos dos.

     \begin{tabular}{l}
       \(\displaystyle \sin\biggl(\frac{1}{2}\biggr) \)  \\  % bien
       \(\displaystyle \sin\bigg(\frac{1}{2}\bigg)  \)   \\  % mal
     \end{tabular}

El tratamiento tipográfico tradicional está en la primera línea.  Sobre
la segunda línea, la salida tendrá algo de espacio extra entre la ‘\sin’
y el que apoya una moción paréntesis de apertura.

   Los comandos sin ‘l’ o ‘r’ dan el espacio correcto en algunas
circunstancias, como con esta gran línea vertical

     \begin{equation}
       \int_{x=a}^b x^2\,dx = \frac{1}{3} x^3 \Big|_{x=a}^b
     \end{equation}

(muchos autores reemplazarían ‘\frac’ con el comando ‘\tfrac’ del
paquete ‘amsmath’), y como con esta barra inclinada más grande.

     \begin{equation}
       \lim_{n\to\infty}\pi(n) \big/ (n/\log n) = 1
     \end{equation}

   A diferencia del par ‘\left...\right’ (see \left y \right), los
comandos aquí con ‘l’ o ‘r’ no forman un grupo.  Estrictamente hablando,
no es necesario que coincidan para que puedas escribir algo como esto.

     \begin{equation}
       \Biggl[ \pi/6 ]
     \end{equation}

   Los comandos con ‘m’ son para relaciones, que están en medio de
fórmulas, como aquí.

     \begin{equation}
       \biggl\{ a\in B \biggm| a=\sum_{0\leq i<n}3i^2+4 \biggr\}
     \end{equation}

16.2.6 Puntos, horizontales o verticales
----------------------------------------

Las elipsis son los tres puntos (generalmente tres) que indican que un
patrón continúa.

     \begin{array}{cccc}
       a_{0,0}    &a_{0,1}   &a_{0,2} &\ldots \\
       a_{1,0}    &\ddots                         \\
       \vdots
     \end{array}

   LaTeX proporciona estos.

‘\cdots’
     Puntos suspensivos horizontales con los puntos elevados al centro
     de la línea, como en ⋯.  Usado como: ‘\( a_0\cdot a_1\cdots a_{n-1}
     \)’.

‘\ddots’
     Puntos suspensivos diagonales, ⋱.  Ve el arreglo del ejemplo
     anterior para un uso.

‘\ldots’
‘\mathellipsis’
‘\dots’
     Puntos suspensivos en la línea base, ….  Usado como: ‘\( x_0,\ldots
     x_{n-1} \)’.  Otro ejemplo es el arreglo del ejemplo anterior.  Los
     sinónimos son ‘\mathellipsis’ y ‘\dots’.  Un sinónimo de el paquete
     ‘amsmath’ es ‘\hdots’.

     También puedes usar este comando fuera del texto matemático, como
     en ‘Los engranajes, frenos, \ldots{} están todos rotos’.

‘\vdots’
     Puntos suspensivos verticales, ⋮.  Ve el arreglo del ejemplo
     anterior para un uso.

   El paquete ‘amsmath’ tiene el comando ‘\dots’ para semánticamente
marcar puntos suspensivos.  Este ejemplo produce dos salidas de aspecto
diferente para los dos primeros usos del comando ‘\dots’.

     \usepackage{amsmath}  % en el preámbulo
       ...

     Supongamos  que \(  p_0, p_1,  \dots, p_{n-1}  \) enumera  todos los
     números primos.  Observa que \(  p_0\cdot p_1 \dots \cdot p_{n-1} +1
       \) no es un múltiplo de cualquier \( p_i \).
     Conclusión: hay infinitos números primos \( p_0, p_1, \dotsc \).

En la primera línea, LaTeX busca la coma que sigue a ‘\dots’ para
determinar que debe generar puntos suspensivos en la línea base.  El
segundo tiene un ‘\cdot’ después de ‘\dots’ por lo que LaTeX genera un
puntos suspensivos que están en el eje matemático, centrados
verticalmente.  Sin embargo, el tercer uso no tiene un carácter de
seguimiento, por lo que debes decirle a LaTeX qué hacer.  Puedes usar
uno de los comandos: ‘\dotsc’ si necesitas los puntos suspensivos
apropiados para una coma después, ‘\dotsb’ si necesitas los puntos
suspensivos que se ajustan cuando los puntos van seguidos de un operador
binario o símbolo de relación, ‘\dotsi’ para puntos con integrales, o
‘\dotso’ para otros.

   El comando ‘\dots’ de ‘amsmath’ difiere de otra manera del comando
‘\dots’ del kernel de LaTeX: emite un espacio delgado después de los
puntos suspensivos.  Además, el paquete ‘unicode-math’ automáticamente
carga ‘amsmath’, por lo que ‘\dots’ del ‘amsmath’ puede estar activo
incluso cuando no lo cargaste explícitamente, cambiando así la salida de
‘\dots’ tanto en modo de texto como matemático.

   Aún más sobre los comandos de puntos suspensivos: cuando se ejecuta
bajo motores Unicode (‘lualatex’, ‘xelatex’), LaTeX usará el carácter de
puntos suspensivos Unicode (U+2026) en el tipo de letra, si está
disponible; bajo motores TeX tradicionales (‘pdflatex’, ‘latex’),
compondrá tipográficamente tres puntos espaciados.  En general, los
puntos suspensivos Unicode de un solo carácter casi no tienen espacio
entre los tres puntos, mientras que el espaciado de los puntos
suspensivos no Unicode es más flexible, más de acuerdo con la tipografía
tradicional.

16.2.7 Letras griegas
---------------------

Las versiones en mayúsculas de estas letras griegas solo se muestran
cuando difieren de las mayúsculas romanas.

Symbol  Command                Name
----------------------------------------------------------------------------
α       ‘\alpha’               Alpha
β       ‘\beta’                Beta
γ, Γ    ‘\gamma’, ‘\Gamma’     Gamma
δ, Δ    ‘\delta’, ‘\Delta’     Delta
ε, ϵ    ‘\varepsilon’,         Epsilon
        ‘\epsilon’
ζ       ‘\zeta’                Zeta
η       ‘\eta’                 Eta
θ, ϑ    ‘\theta’,              Theta
        ‘\vartheta’
ι       ‘\iota’                Iota
κ       ‘\kappa’               Kappa
λ, Λ    ‘\lambda’, ‘\Lambda’   Lambda
μ       ‘\mu’                  Mu
ν       ‘\nu’                  Nu
ξ, Ξ    ‘\xi’, ‘\Xi’           Xi
π, Π    ‘\pi’, ‘\Pi’           Pi
ρ, ϱ    ‘\rho’, ‘\varrho’      Rho
σ, Σ    ‘\sigma’, ‘\Sigma’     Sigma
τ       ‘\tau’                 Tau
ϕ, φ,   ‘\phi’, ‘\varphi’,     Phi
Φ       ‘\Phi’
χ       ‘\chi’                 chi
ψ, Ψ    ‘\psi’, ‘\Psi’         Psi
ω, Ω    ‘\omega’, ‘\Omega’     Omega

   Para ómicron, si estás utilizando la letra Computer Modern
predeterminada de LaTeX luego ingresa ómicron como ‘o’ o ‘O’.  Si te
gusta tener el nombre o si tu letra muestra una diferencia, entonces
puedes usar algo como ‘\newcommand\omicron{o}’.  El paquete
‘unicode-math’ tiene ‘\upomicron’ para omicron vertical y ‘\mitomicron’
para matemáticas itálicas.

   Mientras que el símbolo de relación de pertenencia establecida ∈
generado por ‘\in’ está relacionado con epsilon, nunca se usa para una
variable.

16.3 Funciones matemáticas
==========================

Estos comandos producen nombres de funciones romanas en modo matemático
con espaciado.

‘\arccos’
     coseno inverso

‘\arcsin’
     Seno inverso

‘\arctan’
     Tangente inversa

‘\arg’
     Ángulo entre el eje real y un punto en el plano complejo

‘\bmod’
     Operador módulo binario, usado como en ‘\( 5\bmod 3=2 \)’

‘\cos’
     Coseno

‘\cosh’
     Coseno hiperbólico

‘\cot’
     Cotangente

‘\coth’
     Cotangente hiperbólico

‘\csc’
     Cosecante

‘\deg’
     Grados

‘\det’
     Determinante

‘\dim’
     Dimensión

‘\exp’
     Exponencial

‘\gcd’
     Máximo común divisor

‘\hom’
     Homomorfismo

‘\inf’
     Infimum

‘\ker’
     Kernel

‘\lg’
     Logaritmo en base 2

‘\lim’
     Límite

‘\liminf’
     Límite inferior

‘\limsup’
     Límite superior

‘\ln’
     Logaritmo natural

‘\log’
     Logaritmo

‘\max’
     Máximo

‘\min’
     Mínimo

‘Módulo entre paréntesis, como se usa en \( 5\equiv 2\pmod 3 \)’

‘\Pr’
     Probabilidad

‘\sec’
     Secante

‘\sin’
     Seno

‘\sinh’
     Seno hiperbólico

‘\sup’
     Supremum sup

‘\tan’
     Tangente

‘\tanh’
     Tangente hiperbólica

   El paquete ‘amsmath’ agrega mejoras en algunos de estos, y también te
permite definir el tuyo propio.  La documentación completa está en CTAN,
pero brevemente, puedes definir un operador de identidad con
‘\DeclareMathOperator{\identity}{id}’ que es como los de arriba pero se
imprime como ‘id’.  La forma estrellada ‘\DeclareMathOperator*{\op}{op}’
establece cualquier superíndice o subíndice para estar arriba y abajo,
como es tradicional con ‘\lim’, ‘\sup’ o ‘\max’.

16.4 Acentos matemáticos
========================

LaTeX proporciona una variedad de comandos para producir letras
acentuadas en matemáticas.  Estos son diferentes de los acentos en el
texto normal.  (see Acentos).

‘\acute’
     Acento agudo matemático

‘\bar’
     Acento de barra de matemáticas

‘\breve’
     Acento matemático breve

‘\check’

‘\ddots’

‘\dot’

‘\grave’

‘\hat’
     Acento de sombrero de matemáticas (circunflejo)

‘\mathring’
     Acento de anillo matemático

‘\tilde’
     Acento de tilde matemática

‘\vec’
     símbolo de vector de matemáticas

‘\widehat’
     Acento de sombrero ancho de matemáticas

‘\widetilde’
     Acento de tilde ancho de matemáticas

   Cuando pones un acento en una i o una j, la tradición es usar uno sin
punto, ‘\imath’ o ‘jmath’ (see Símbolos matemáticos).

16.5 Sobre y subrayado
======================

LaTeX proporciona comandos para hacer líneas superpuestas o subrayadas,
o poner llaves sobre o debajo de algún material.

‘\underline{TEXT}’
     TEXT subrayado.  Funciona dentro y fuera del modo matemático.  La
     línea siempre está completamente debajo del texto, teniendo en
     cuenta descendientes, por lo que en ‘\(\underline{y}\)’ la línea es
     más baja que en ‘\(\underline{x}\)’.  Este comando es frágil (see
     \protect).

     Ten en cuenta que el paquete ‘ulem’ subraya el modo de texto y
     permite salto de línea, así como una serie de otras
     características.  Ve la documentación en CTAN. También
     \hrulefill y \dotfill para producir una línea, para cosas como
     una firma.

‘\overline{TEXT}’
     Coloca una línea horizontal sobre TEXT.  Funciona dentro y fuera
     del modo matemático.  Por ejemplo, ‘\overline{x+y}’.  Ten en cuenta
     que esto difiere del comando ‘\bar’ (see Acentos matemáticos).

‘\underbrace{MATH}’
     Pone una llave debajo de MATH.  Por ejemplo, este
     ‘(1-\underbrace{1/2)+(1/2}-1/3)’ enfatiza la parte telescópica.
     Adjunta texto a la llave usando el comando de subíndice, ‘_’ o
     superíndice, ‘^’, como aquí.

          \begin{displaymath}
            1+1/2+\underbrace{1/3+1/4}_{>1/2}+
                 \underbrace{1/5+1/6+1/7+1/8}_{>1/2}+\cdots
          \end{displaymath}

     El superíndice aparece encima de la expresión, por lo que se puede
     ver desconectado de la llave inferior.

‘\overbrace{MATH}’
     Pone una llave sobre MATH, como con
     ‘\overbrace{x+x+\cdots+x}^{\mbox{\(k\) times}}’.  Ve también
     ‘\underbrace’.

   El paquete ‘mathtools’ agrega una llave superior e inferior, así como
algunas mejoras en los corchetes.  Consulta la documentación en CTAN.

16.6 Espaciado en modo matemático
=================================

Al componer matemáticas, LaTeX pone espacios de acuerdo con las reglas
normales para textos de matemáticas.  Si ingresas ‘y=m x’ entonces LaTeX
ignora el espacio y en la salida la m está al lado de la x, como y=mx.

   Pero las reglas de LaTeX ocasionalmente necesitan ajustes.  Por
ejemplo, en una integral la tradición es poner un pequeño espacio extra
entre el ‘f(x)’ y el ‘dx’, aquí hecho con el comando ‘\,’:

     \int_0^1 f(x)\,dx

   LaTeX proporciona los siguientes comandos para usar en modo
matemático.  Muchas de estas definiciones de espaciado se expresan en
términos de la unidad matemática “mu”.  Se define como 1/18em, donde el
em se toma de la familia actual de símbolos matemáticos (see Unidades de longitud).
Así, un ‘\thickspace’ es algo así como 5/18 veces el
ancho de una ‘M’.

‘\;’

     Sinónimo: ‘\thickspace’.  Normalmente ‘5.0mu plus 5.0mu’.  Con el
     paquete ‘amsmath’, o a partir de la versión 2020-10-01 LaTeX, se
     puede utilizar tanto en modo texto como en modo matemático; de lo
     contrario, en modo matemático solamente.

‘\negthickspace’
     Normalmente ‘-5.0mu plus 2.0mu minus 4.0mu’.  Con el paquete
     ‘amsmath’, o a partir de la versión 2020-10-01 LaTeX, se puede usar
     en modo texto así como en modo matemático; de lo contrario, solo en
     modo matemático.

‘\:’
‘\>’
     Sinónimo: ‘\medspace’.  Normalmente ‘4.0mu plus 2.0mu minus 4.0mu’.
     Con el paquete ‘amsmath’, o a partir del 2020-10-01 la versión de
     LaTeX, se puede usar tanto en modo de texto como en modo
     matemático; antes de eso, solo en modo matemático.

‘\negmedspace’
     Normalmente ‘-4.0mu plus 2.0mu minus 4.0mu’.  Con el paquete
     ‘amsmath’, o a partir de la versión 2020-10-01 LaTeX, se puede usar
     en modo texto así como modo matemático; antes de eso, solo en modo
     matemático.

‘\,’
     Sinónimo: ‘\thinspace’.  Normalmente ‘3mu’, que es 1/6em.  Se puede
     usar tanto en modo matemático como en modo texto (see \thinspace y \negthinspace).

     Este espacio es muy utilizado, por ejemplo entre la función y el
     infinitesimal en una integral ‘\int f(x)\,dx’ y, si un autor hace
     esto, antes de la puntuación en una ecuación mostrada.

          La antiderivada es
          \begin{equation}
             3x^{-1/2}+3^{1/2}\,.
          \end{equation}
          \end{equation}

‘\!’
     Sinónimo: ‘\negthinspace’.  Un espacio delgado negativo.
     Normalmente ‘-3mu’.  Con el paquete ‘amsmath’, o a partir de la
     versión 2020-10-01 de LaTeX, se puede usar tanto en modo de texto
     como en modo matemático; de lo contrario, el comando ‘\!’ es solo
     modo matemático, pero el comando ‘\negthinspace’ también ha
     funcionado siempre en modo texto (see \thinspace y \negthinspace).

‘\quad’
     Esto es 18mu, es decir, 1em.  Esto se usa a menudo para el espacio
     ecuaciones o expresiones circundantes, por ejemplo para el espacio
     entre dos ecuaciones dentro de un entorno ‘displaymath’.  Está
     disponible tanto en modo de texto como matemático.

‘\qquad’
     Una longitud de 2 quads, es decir, 36mu = 2em.  Esta disponible en
     modo texto y modo matemático.

16.6.1 ‘\smash’
---------------

Sinopsis:

     \smash{SUBFORMULA}

   Escribe SUBFORMULA como si su altura y profundidad fuera cero.

   En este ejemplo, la exponencial es tan alta que sin el comando
‘\smash’ LaTeX separaría su línea de la línea por encima de él, y el
espaciado desigual de las líneas puede resultar antiestético.

     Para calcular la tetración $\smash{2^{2^{2^2}}}$,
     evaluar de arriba hacia abajo, como $2^{2^4}=2^{16}=65536$.

   (Debido al ‘\smash’, la expresión impresa se podría encontrar con la
línea anterior, por lo que es posible que desees esperar hasta la
versión final del documento para hacer tales ajustes).

   Esto representa el efecto de ‘\smash’ usando ‘\fbox’ para rodear el
cuadro que LaTeX pondrá en la línea.  El comando ‘\blackbar’ crea una
barra que se extiende desde 10 puntos debajo la línea base a 20 puntos
arriba.

     \newcommand{\blackbar}{\rule[-10pt]{5pt}{30pt}}
     \fbox{\blackbar}
     \fbox{\smash{\blackbar}}

   El primer cuadro que coloca LaTeX tiene una altura de 20 puntos y
10 puntos de profundidad.  Pero el segundo cuadro es tratado por LaTeX
como teniendo cero altura y cero profundidad, a pesar de que la tinta
impresa en la página aún se extiende muy por encima y por debajo de la
línea.

   El comando ‘\smash’ aparece a menudo en matemáticas para ajustar el
tamaño de un elemento que rodea una subfórmula.  Aquí el primer radical
se extiende por debajo de la línea base mientras que el segundo se
encuentra justo en la línea base.

     \begin{equation}
     \sqrt{\sum_{0\leq k< n} f(k)}
     \sqrt{\vphantom{\sum}\smash{\sum_{0\leq k< n}} f(k)}
     \end{equation}

   Ten en cuenta el uso de ‘\\vphantom’ para dar al comando ‘\sqrt’ un
argumento con la altura de ‘\sum’ (see \phantom - \vphantom y \hphantom).

   Si bien se usan con mayor frecuencia en matemáticas, estos tres
pueden aparecer en otros contextos.  Sin embargo, no hacen que LaTeX
cambie a modo horizontal.  Entonces, si uno de estos comienza un
párrafo, lo debes anteponer con ‘\leavevmode’.

     xxx xxx xxx

     \smash{yyy} % sin sangría de párrafo

     \leavevmode\smash{zzz} % sangría de párrafo habitual

   El paquete ‘mathtools’ tiene operadores que brindan control sobre
romper un cuadro de subfórmula.

16.6.2 ‘\phantom’, ‘\vphantom’ y ‘\hphantom’
--------------------------------------------

Sinopsis:

     \phantom{SUBFORMULA}

   o

     \vphantom{SUBFORMULA}

   o

     \hphantom{SUBFORMULA}

   El comando ‘\phantom’ crea un cuadro con la misma altura, profundidad
y ancho como SUBFORMULA, pero vacío.  Es decir, este comando provoca que
LaTeX escriba el espacio pero no lo llena con el material.  Aquí LaTeX
pondrá una línea en blanco con el ancho correcto para la respuesta, pero
no mostrará esa respuesta.

     \begin{displaymath}
       \int x^2\,dx=\mbox{\underline{$\phantom{(1/3)x^3+C}$}}
     \end{displaymath}

   La variante ‘\vphantom’ produce un cuadro invisible con el mismo
tamaño vertical que SUBFORMULA, la misma altura y profundidad, pero
teniendo ancho cero.  Y ‘\hphantom’ crea un cuadro con el mismo ancho
que SUBFORMULA pero con altura y profundidad cero.

   En este ejemplo, la torre de exponentes en la segunda expresión del
sumando es tan alto que TeX coloca esta expresión más abajo que su
predeterminado.  Sin ajuste, las dos expresiones de sumando estarían en
niveles diferentes.  El ‘\vphantom’ en la primera expresión dice a TeX
que deje tanto espacio vertical como para la torre, por lo que las dos
expresiones salen al mismo nivel.

     \begin{displaymath}
         \sum_{j\in\{0,\ldots\, 10\}\vphantom{3^{3^{3^j}}}}
           \sum_{i\in\{0,\ldots\, 3^{3^{3^j}}\}} i\cdot j
     \end{displaymath}

   Estos comandos a menudo se usan junto con ‘\smash’.  See \smash,
que incluye otro ejemplo de ‘\vphantom’.

   Los tres comandos fantasma aparecen a menudo, pero ten en cuenta que
LaTeX proporciona un conjunto de otros comandos para trabajar con
tamaños de caja que pueden ser más convenientes, incluyendo ‘\makebox’
(see \mbox y \makebox) también como ‘\settodepth’ (see
\settodepth), ‘\settoheight’ (see \settoheight), y ‘\settowidth’
(see \settowidth).  Además, el paquete ‘mathtools’ tiene muchos
comandos que ofrecen control detallado sobre el espaciado.

   Los tres comandos producen una caja ordinaria, sin ningún estado de
matemáticas especial.  Entonces, para hacer algo como adjuntar un
superíndice, deberías darle ese estado, por ejemplo con el comando
‘\operatorname’ del paquete ‘amsmath’.

   Si bien se usan con mayor frecuencia en matemáticas, estos tres
pueden aparecer en otros contextos.  Sin embargo, no hacen que LaTeX
cambie a modo horizontal.  Entonces, si uno de estos comienza un
párrafo, lo debes anteponer con ‘\leavevmode’.

16.6.3 ‘\mathstrut’
-------------------

Sinopsis:

     \mathstrut

   El análogo de ‘\strut’ para matemáticas.  See \strut.

   La entrada ‘$\sqrt{x} + \sqrt{x^i}$’ da salida donde el segundo
radical es más alto que el primero.  Para agregar espacio vertical
adicional sin ningún espacio horizontal, para que los dos tengan la
misma altura, usa ‘$\sqrt{x\mathstrut} + \sqrt{x^i\mathstrut}$’.

   El comando ‘\mathstrut’ agrega la altura vertical de un paréntesis de
apertura, ‘(’, pero sin espacio horizontal.  Se define como
‘\vphantom{(}’, así que \phantom - \vphantom y \hphantom para
más.  Una ventaja sobre ‘\strut’ es que ‘\mathstrut’ no agrega
profundidad, que suele ser lo correcto para las fórmulas.  Usar la
altura de un paréntesis de apertura es solo una convención; para un
control completo sobre la cantidad de espacio, usa ‘\rule’ con un ancho
cero.  See \rule.

16.7 Estilos math
=================

Las reglas de TeX para escribir una fórmula dependen del contexto.  Por
ejemplo, dentro de una ecuación mostrada, la entrada ‘\sum_{0\leq
i<n}k^m=\frac{n^{m+1}}{m+1}+\mbox{términos de orden inferior}’ dará
salida con el índice de suma centrado debajo del símbolo de suma.  Pero
si esa entrada está en línea, entonces el índice de suma está a la
derecha en lugar de debajo, por lo que no empujará aparte las líneas.
Del mismo modo, en un contexto mostrado, los símbolos en el numerador y
el denominador será más grande que para un contexto en línea, y en
mostrar subíndices matemáticos y los superíndices están más separados
que en matemáticas en línea.

   TeX usa cuatro estilos matemáticos.

   • El estilo de visualización es para una fórmula que se muestra en
     una línea por sí misma, como con ‘\begin{equation} ...
     \end{equation}’.

   • El estilo de texto es para una fórmula en línea, como con ‘así que
     tenemos $ ... $’.

   • El estilo de escritura es para partes de una fórmula en un
     subíndice o superíndice.

   • El estilo Scriptscript es para partes de una fórmula en un segundo
     nivel (o más) de subíndice o superíndice.

   TeX determina un estilo matemático predeterminado, pero lo puedes
redefinir con una declaración de ‘\displaystyle’, o ‘\textstyle’, o
‘\scriptstyle’ o ‘\scriptscriptstyle’.

   En este ejemplo, la fracción de la línea ‘Arithmetic’ se verá
arrugada.

     \begin{tabular}{r|cc}
       \textsc{Name}  &\textsc{Series}  &\textsc{Sum}  \\  \hline
       Arithmetic     &$a+(a+b)+(a+2b)+\cdots+(a+(n-1)b)$
                        &$na+(n-1)n\cdot\frac{b}{2}$  \\
       Geometric      &$a+ab+ab^2+\cdots+ab^{n-1}$
                        &$\displaystyle a\cdot\frac{1-b^n}{1-b}$  \\
     \end{tabular}

Pero debido a la declaración ‘\displaystyle’, la fracción de la línea
‘Geometric’ será fácil de leer, con caracteres del mismo tamaño que en
el resto de la línea.

   Otro ejemplo es que, en comparación con la misma entrada sin la
declaración, el resultado de

     obtenemos
     $\pi=2\cdot{\displaystyle\int_{x=0}^1 \sqrt{1-x^2}\,dx}$

tendrá un signo integral que es mucho más alto.  Ten en cuenta que aquí
el ‘\displaystyle’ se aplica solo a una parte de la fórmula, y está
delimitado por estar dentro de llaves, como ‘{\displaystyle ...}’.

   El último ejemplo es una fracción continua.

     \begin{equation}
     a_0+\frac{1}{
            \displaystyle a_1+\frac{\mathstrut 1}{
            \displaystyle a_2+\frac{\mathstrut 1}{
            \displaystyle a_3}}}
     \end{equation}

Sin las declaraciones de ‘\displaystyle’, los denominadores serían
establecido en estilo script y estilo scriptscript.  (El ‘\mathstrut’
mejora la altura de los denominadores; see \mathstrut).

16.8 Miscelánea matemática
==========================

LaTeX contiene una amplia variedad de funciones matemáticas.  Aquí están
algunas que no encajan en otras categorías.

16.8.1 Carácter de dos puntos ‘:’ y ‘\colon’
--------------------------------------------

Sinopsis, una de:

     :
     \colon

   En matemáticas, el carácter de dos puntos, ‘:’, es una relación.

     Con proporciones  laterales \(  3:4 \)  y \( 4:5  \), el  triángulo es
     correcto.

LaTeX ordinario define ‘\colon’ para producir el carácter de dos puntos
con el espacio apropiado para la puntuación, como en la notación de
creación de conjuntos ‘\{x\colon 0\leq x<1\}’.

   Pero el paquete ‘amsmath’ ampliamente utilizado define ‘\colon’ para
su uso en la definición de funciones ‘f\colon D\to C’.  Así que si
quieres el carácter de dos puntos como puntuación y entonces usa
‘\mathpunct{:}’.

16.8.2 ‘\*’
-----------

Sinopsis:

     \*

   Un símbolo de multiplicación que permite un salto de línea.  Si hay
un salto entonces LaTeX pone un símbolo ‘\times’, ×, antes de ese salto.

   En ‘\( A_1\* A_2\* A_3\* A_4 \)’, si no hay salto de línea, entonces
LaTeX los muestra como si fuera ‘\( A_1 A_2 A_3 A_4 \)’.  Si ocurre un
salto de línea, por ejemplo, entre los dos del medio, entonces LaTeX lo
establece como ‘\( A_1 A_2 \times \)’, seguido por el salto, seguido de
‘\( A_3 A_4 \)’.

16.8.3 ‘\frac’
--------------

Sinopsis:

     \frac{NUMERATOR}{DENOMINATOR}

   Produce la fracción.  Usado como: ‘\begin{displaymath}
\frac{1}{\sqrt{2\pi\sigma}} \end{displaymath}’.  En el modo math en
línea sale pequeño; ve la explicación de ‘\displaystyle’ (see Fórmulas math).

16.8.4 ‘\sqrt’
--------------

Sinopsis, una de:

     \sqrt{ARG}
     \sqrt[ROOT-NUMBER]{ARG}

   La raíz cuadrada, u opcionalmente otras raíces, de ARG.  El argumento
opcional ROOT-NUMBER da la raíz, es decir, ingresa la raíz cúbica de
‘x+y’ como ‘\sqrt[3]{x+y}’.  El tamaño del radical crece con el de ARG
(conforme la altura del radical crece, el ángulo en la parte más a la
izquierda se hace más pronunciado, hasta que ‘arg’ es lo suficientemente
alto, es vertical).

   LaTeX tiene un símbolo ‘\surd’ separado para hacer una raíz cuadrada
sin ARG (see Símbolos matemáticos).

16.8.5 ‘\stackrel’
------------------

Sinopsis:

     \stackrel{TEXT}{RELATION}

   Pon TEXT encima de RELATION.  Para poner un nombre de función encima
de una flecha ingresa ‘\stackrel{f}{\longrightarrow}’.

17 Modos
********

A medida que LaTeX procesa tu documento, en cualquier momento se
encuentra en uno de seis modos.  Se dividen en tres categorías de dos
cada una, los modos horizontales, los modos matemáticos y los modos
verticales.  Algunos comandos solo funcionan en un modo u otro (en
particular, muchos comandos solo funcionan en uno de los modos
matemáticos), y los mensajes de error se referirán a estos.

   • “Modo párrafo” (en TeX simple esto se llama “modo horizontal”) es
     en lo que se encuentra LaTeX cuando procesa texto normal.  Se rompe
     el texto de entrada en líneas y encuentra las posiciones de los
     saltos de línea, de modo que en modo vertical se pueden hacer
     saltos de página.  Este es el modo LaTeX, es en la mayor parte del
     tiempo.

     “modo LR” (para el modo de izquierda a derecha; en TeX simple esto
     se llama “modo horizontal restringido”) está en vigor cuando se
     inicia LaTeX hace una caja con un comando ‘\mbox’.  Como en el modo
     de párrafo, la salida de LaTeX es una cadena de palabras con
     espacios entre ellas.  A diferencia de en modo párrafo, en modo LR
     LaTeX nunca comienza una nueva línea, simplemente continúa de
     izquierda a derecha.  (Aunque LaTeX no se quejará que la caja LR es
     demasiado larga, cuando está terminada y luego intenta poner esa
     caja en una línea, bien se podría quejar de que la caja LR
     terminada no cabe allí).

   • “modo matemático” es cuando LaTeX está generando una fórmula
     matemática en línea.

     “Muestra modo math” es cuando LaTeX está generando una fórmula
     matemática.  (Las fórmulas mostradas difieren un poco de las
     fórmulas en línea.  Un ejemplo es que la ubicación del subíndice en
     ‘\int’ difiere en las dos situaciones).

   • “Modo vertical” es cuando LaTeX está construyendo la lista de
     líneas y otro material haciendo la página de salida, que comprende
     la inserción de saltos de página.  Este es el modo LaTeX, es cuando
     se inicia un documento.

     “Modo vertical interno” está en efecto cuando LaTeX comienza a
     hacer una ‘\vbox’.  No tiene saltos de página, y como tal es el
     análogo vertical del modo LR.

Por ejemplo, si comienzas un artículo de LaTeX con ‘Let \( x \) ...’
entonces estos son los modos: primero LaTeX inicia cada documento en
modo vertical, entonces lee la ‘L’ y cambia al modo párrafo, entonces el
siguiente cambio ocurre en la ‘\(’ donde LaTeX cambia al modo
matemático, y luego, cuando sale de la fórmula, parece volver al modo de
párrafo.

   El modo párrafo tiene dos subcasos.  Si usas un comando ‘\parbox’ o
un ‘minipage’ entonces LaTeX se pone en modo párrafo.  Pero no pondré un
salto de página aquí.  Dentro de una de estas cajas, llamada “parbox”,
LaTeX está en “modo de párrafo interior”.  Es la situación mas usual,
donde puedes poner saltos de página, es “modo de párrafo externo” (see
Salto de página).

17.1 ‘\ensuremath’
==================

Sinopsis:

     \ensuremath{FORMULA}

   Se asegura de que FORMULA esté escrito en modo matemático.

   Por ejemplo, puedes redefinir comandos que normalmente solo se pueden
usar en modo matemático, para que se puedan usar tanto en matemáticas
como en texto sin formato.

     \newcommand{\dx}{\ensuremath{dx}}
     En $\int f(x)\, \dx$, el \dx{} es un infinitesimal.

   Precaución: el comando ‘\ensuremath’ es útil pero no una panacea.

     \newcommand{\alf}{\ensuremath{\alpha}}

     Obtienes  un alfa  en modo  texto:  \alf.  Pero  compara el  espaciado
     correcto en $\alf+\alf$ con el de \alf+\alf.

Lo mejor es escribir cosas matemáticas en modo math.

18 Estilos de página
********************

El estilo de una página determina dónde coloca LaTeX los componentes de
esa página, como encabezados y pies de página, y el cuerpo del texto.
Este incluye páginas en la parte principal del documento pero también
incluye páginas especiales como la portada de un libro, una página de un
índice o la primera página de un artículo.

   El paquete ‘fancyhdr’ se usa comúnmente para construir estilos de
página.  Ve su documentación.

18.1 ‘\maketitle’
=================

Sinopsis:

     \maketitle

   Genera un título.  En las clases estándar el título aparece en una
página separada, excepto en la clase ‘article’ donde está en la parte
superior de la primera página.  (see Opciones de la clase documento,
para obtener información sobre la opción ‘titlepage’ de la clase
documento).

   Este ejemplo muestra que ‘\maketitle’ aparece en su lugar habitual,
inmediatamente después de ‘\begin{document}’.

     \documentclass{article} \title{Construir un  reactor nuclear usando
     solo cocos} \author{Jonas Grumby\thanks{% Con  el apoyo de una beca
     Ginger de la Roy Hinkley Society.} \\ Capitán, \textit{Minnow} \and
     Willy Gilligan\thanks{%  Gracias a la  fundación Mary Ann  Summers ya
     Thurston  y   Lovey  Howell.}  \\  Compañero,   \textit{Minnow}  }
     \date{1964-Sep-26}  \begin{document}  \maketitle Solo  siéntate  y
     escucharás  un cuento,  el cuento  de un  fatídico viaje.   Que partió
     desde  este  puerto tropical,  a  bordo  de  este diminuto  barco.  El
     compañero era un navegante poderoso,  el Capitán valiente y seguro. Un
     conjunto de cinco  pasajeros navega ese día para un  recorrido de tres
     horas. Un recorrido de tres horas.
       ...

   Le dices a LaTeX la información utilizada para producir el título
haciendo las siguientes declaraciones.  Estos deben venir antes de
‘\maketitle’, ya sea en el preámbulo o en el cuerpo del documento.

‘\author{NAME1 \and NAME2 \and ...}’
     Requerido.  Declara el autor o autores del documento.  El argumento
     es un lista de autores separados por los comandos ‘\and’.  Para
     separar líneas dentro de la entrada de un solo autor, por ejemplo,
     para dar la institución o dirección, usa una barra invertida doble,
     ‘\\’.  Si omites la declaración ‘\author’ entonces obtienes
     ‘Advertencia LaTeX: Sin \autor dado’.

‘\date{TEXT}’
     Opcional.  Declara TEXT como la fecha del documento.  El TEXT no
     necesita estar en un formato de fecha; puede ser cualquier texto.
     Si omites ‘\date’ entonces LaTeX usa la fecha actual (see
     \today).  Para no tener fecha, utiliza ‘\date{}’.

‘\thanks{TEXT}’
     Opcional.  Produce una nota al pie.  Lo puedes usar en la
     información del autor para agradecimientos como se ilustra arriba,
     pero también lo puedes usar en el título, o cualquier lugar donde
     tenga sentido una marca de nota al pie.  Puede ser cualquier texto
     en absoluto para que lo puedas usar para cualquier propósito, como
     imprimir una dirección de correo electrónico.

‘\title{TEXT}’
     Requerido.  Declara TEXT como título del documento.  Obtiene un
     salto de línea dentro de TEXT con una barra invertida doble, ‘\\’.
     Si omites la declaración ‘\title’, entonces el comando ‘\maketitle’
     produce el ‘Error de LaTeX: No se proporcionó \title’.

   Para crear tu propia página de título, see titlepage.  También lo
puedes crear como único o lo puedes incluir como parte de un comando
‘\maketitle’ renovado.  (Muchos editores proporcionarán una clase para
usar en lugar de ‘article’ que formatea el título según sus requisitos
de la casa).

18.2 ‘\pagenumbering’
=====================

Sinopsis:

     \pagenumbering{NUMBER-STYLE}

   Especifica el estilo de los números de página y restablece el número
de página.  El estilo de numeración se refleja en la página, y también
en la tabla de contenido y otras referencias de página.  Esta
declaración tiene alcance global por lo que su efecto no se detiene por
un final de grupo como una llave de cierre o un fin de entorno.

   En este ejemplo, antes de la sección ‘Principal’ las páginas están
numeradas ‘a’, etc.  Comenzando en la página que contiene la llamada a
‘\pagenumbering’ en esa sección, las páginas están numeradas ‘1’, etc.

     \begin{document}\pagenumbering{alph}
       ...
     \section{Main}\pagenumbering{arabic}
       ...

   El argumento NUMBER-STYLE es uno de los siguientes (también
\alph \Alph \arabic \roman \Roman \fnsymbol).

‘arabic’
     número arábigo: 1, 2, ...

‘roman’
     Números romanos en minúsculas: i, ii, ...

‘Roman’
     Números romanos en mayúsculas: I, II, ...

‘alph’
     minúsculas: a, b, ... Si tienes más de 26 páginas, entonces obtén
     ‘Error de LaTeX: Contador demasiado grande’.

‘Alph’
     letras mayúsculas: A, B, ... Si tiene más de 26 páginas, entonces
     obtienes ‘Error de LaTeX: Contador demasiado grande’.

‘gobble’
     LaTeX no genera un número de página, aunque se reinicia.  Las
     referencias a esa página también están en blanco.  (Esto no lo hace
     trabajar con el popular paquete ‘hyperref’ para tener el número de
     página no aparece, es posible que desees utilizar
     ‘\pagestyle{empty}’ o ‘\thispagestyle{empty}’).

   Tradicionalmente, si un documento tiene antesala—prefacio, tabla de
contenido, etc.—entonces se numera con números romanos en minúsculas.
El asunto principal de un documento utiliza el árabe.  See
\frontmatter - \mainmatter y \backmatter.

   Si deseas cambiar el lugar donde aparece el número de página en la
página, see \pagestyle.  Si deseas cambiar el valor del número de
página, entonces manipula el contador ‘page’ (see Contadores).

18.3 ‘\pagestyle’
=================

Sinopsis:

     \pagestyle{STYLE}

   Declaración que especifica cómo se componen los encabezados y pies de
página, desde la página actual en adelante.

   Una explicación con un ejemplo está abajo.  Ten en cuenta primero que
el paquete ‘fancyhdr’ es ahora la forma estándar de manipular
encabezados y pies de página.  Nuevos documentos que necesitan hacer
algo diferente a una de las opciones estándar a continuación deben usar
este paquete.  Ve su documentación en CTAN.

   Valores para STYLE:

‘plain’
     El encabezado está vacío.  El pie de página contiene solo un número
     de página, centrado.

‘empty’
     Tanto el encabezado como el pie de página están vacíos.

‘headings’
     Coloca encabezados y pies de página continuos en cada página.  El
     estilo del documento especifica lo que va allí; ve la explicación a
     continuación.

‘myheadings’
     Encabezados personalizados, especificados a través de los comandos
     ‘\markboth’ o ‘\markright’.

   Un poco de discusión sobre la motivación del mecanismo de LaTeX te
ayudará a trabajar con las opciones ‘headings’ o ‘myheadings’.  La
fuente del documento a continuación produce un artículo, a dos caras,
con el estilo de página ‘headings’.  En las páginas de la izquierda de
este documento, LaTeX quiere (además del número de página) el título de
la sección actual.  En sus páginas de la derecha LaTeX quiere el título
de la subsección actual.  Cuando crea una página, LaTeX obtiene esta
información del comandos ‘\leftmark’ y ‘\rightmark’.  Así que depende de
‘\section’ y ‘\subsection’ para almacenar esa información allí.

     \documentclass[twoside]{article}
     \pagestyle{headings}
     \begin{document}
       ... \section{Section 1} ... \subsection{Subsección 1.1} ...
     \section{Sección 2}
       ...
     \subsection{Subsección 2.1}
       ...
     \subsection{Subsección 2.2}
       ...

Supongamos que la segunda sección cae en una página de la izquierda.
Aunque cuando la página comienza en la primera sección, LaTeX pondrá
‘Sección 2’ en el encabezado de la página izquierda.  En cuanto al
encabezado derecho, si ninguna subsección comienza antes del final de la
página derecha, entonces LaTeX deja en blanco el encabezado de la
derecha.  Si una subsección aparece antes de terminar la página derecha
entonces hay dos casos.  Si al menos una subsección comienza en la
página de la derecha, entonces LaTeX colocará el encabezado derecho en
el título de la primera subsección que comienza en esa página derecha.
Si al menos uno de 2.1, 2.2, ..., comienza en la página izquierda pero
ninguno empieza a la derecha entonces LaTeX pone en el encabezado de la
derecha el título del último inciso por comenzar, es decir, el que esté
vigente durante la página de la derecha.

   Para lograr esto, en un artículo de dos caras, LaTeX hace que
‘\section’emita un comando ‘\markboth’, configurando ‘\leftmark’ a
‘Section 2’ y configura ‘\rightmark’ en un contenido vacío.  Y, LaTeX
hace que ‘\subsection’ emita un comando ‘\markright’, configurando
‘\rightmark’ a ‘Subsección 2.1’, etc.

   Aquí están las descripciones de ‘\markboth’ y ‘\markright’:

‘\markboth{LEFT-HEAD}{RIGHT-HEAD}’
     Establece la información de rumbo tanto a la derecha como a la
     izquierda para un estilo de página de ‘headings’ o ‘myheadings’.
     Una página de la izquierda el encabezado LEFT-HEAD es generado por
     el último comando ‘\markboth’ antes del final de la página.  Un
     encabezado de página a la derecha RIGHT-HEAD es generado por el
     primer ‘\markboth’ o ‘\markright’ que viene en la página si hay
     uno, de lo contrario por el último que vino antes de esa página.

‘\markright{RIGHT-HEAD}’
     Establece el encabezado de la página de la derecha, dejando el
     izquierdo sin cambios.

18.4 ‘\thispagestyle’
=====================

Sinopsis:

     \thispagestyle{STYLE}

   Funciona de la misma manera que el ‘\pagestyle’ (see \pagestyle),
excepto que cambia a STYLE solo para la página actual.  Esta declaración
tiene alcance global, por lo que su efecto no está delimitado por llaves
o entornos.

   A menudo, la primera página de un capítulo o sección tiene un estilo
diferente.  Por ejemplo, este documento de libro LaTeX tiene la primera
página del primer capítulo en estilo ‘plain’, como es el predeterminado
(see Estilos de página).

     \documentclass{book}
     \pagestyle{headings}
     \begin{document}
     \chapter{Primer capítulo}
       ...
     \chapter{Segundo capítulo}\thispagestyle{empty}
       ...

El estilo ‘plain’ tiene un número de página, centrado en el pie de
página.  Para hacer que la página esté completamente vacía, el comando
‘\thispagestyle{empty}’ sigue inmediatamente al segundo ‘\chapter’.

19 Espacios
***********

LaTeX tiene muchas formas de producir espacios en blanco o espacios
llenos.  Algunos de estos se adaptan mejor al texto matemático; para
estos Espaciado en modo matemático.

espacio horizontal

espacio vertical

19.1 ‘\enspace’, ‘\quad’ y ‘\qquad’
===================================

Sinopsis, una de:

     \enspace
     \quad
     \qquad

   Inserta un espacio horizontal de 1/2em, 1em o 2em.  La em es una
longitud definida por un diseñador de fuentes, a menudo considerada como
el ancho de una M mayúscula.  Una ventaja de describir el espacio en ems
es que puede ser más portátil entre documentos que una medida absoluta
como puntos (see Longitudes/em).

   Esto pone un espacio adecuado entre dos gráficos.

     \begin{center}
       \includegraphics{womensmile.png}%
       \qquad\includegraphics{mensmile.png}
     \end{center}

See Espaciado en modo matemático, para ‘\quad’ y ‘\qquad’.  Estas
son longitudes de siglos de composición tipográfica y, por lo tanto,
pueden ser una mejor opción en muchas circunstancias que las longitudes
arbitrarias, como las que se obtienen con ‘\hspace’.

19.2 ‘\hspace’
==============

Sinopsis, una de:

     \hspace{LENGTH}
     \hspace*{LENGTH}

   Inserta la cantidad LENGTH de espacio horizontal.  LENGTH puede ser
positiva, negativa o cero; agregar una cantidad negativa de espacio es
como retroceder.  Es una longitud elástica, es decir, puede contener un
componente ‘plus’ o ‘minus’, o ambas (see Longitudes).  Debido a que
el espacio se puede estirar y contraer, a veces se le llama “pegamento”.

   Esto hace una línea con ‘Name:’ a una pulgada del margen derecho.

     \noindent\makebox[\linewidth][r]{Name:\hspace{1in}}

   La forma ‘*’ inserta un espacio horizontal que no se puede descartar.
Más precisamente, cuando TeX divide un párrafo en líneas blancas el
espacio—pegamentos y kerns—que vienen en un salto de línea se descartan.
La forma-‘*’ evita eso (técnicamente, agrega un elemento invisible no
descartable delante del espacio).

   En este ejemplo

     \parbox{0.8\linewidth}{%
        Completa  cada espacio  en  blanco: Cuatro  \hspace*{1in} y  hace
        siete años nuestros padres produjeron  en este continente, un nuevo
        \hspace*{1in},  concebido en  \hspace*{1in},  y  dedicado a  la
        propuesta que todos los hombres son creados \hspace*{1in}.}

el espacio en blanco de 1 pulgada que sigue a ‘concebido en’ cae al
principio de una linea.  Si borras el ‘*’ entonces LaTeX descarta el
espacio en blanco.

   Aquí, el ‘\hspace’ separa los tres gráficos.

     \begin{center}
       \includegraphics{lion.png}%  el  espacio  extra  queda  fuera  del
         comentario
       \hspace{1cm minus 0.25cm}\includegraphics{tiger.png}%
       \hspace{1cm minus 0.25cm}\includegraphics{bear.png}
     \end{center}

Porque el argumento de cada ‘\hspace’ tiene ‘minus 0.25cm’, cada uno se
puede encoger un poco si las tres figuras son demasiado anchas.  Pero
cada espacio no se reducirá más de 0.25cm (see Longitudes).

19.3 ‘\hfill’
=============

Sinopsis:

     \hfill

   Produce una longitud elástica que no tenga espacio natural pero que
se pueda estirar horizontalmente tanto como sea necesario (see
Longitudes).

   Esto crea un párrafo de una línea con ‘Name:’ en el lado izquierdo de
la página y ‘Prueba uno’ a la derecha.

     \noindent Name:\hfill Prueba uno

   El comando ‘\hfill’ es equivalente a ‘\hspace{\fill}’ y por lo que el
espacio se puede descartar en los saltos de línea.  Para evitar eso, en
su lugar usa ‘\hspace*{\fill}’ (see \hspace).

   Aquí las gráficas están espaciadas uniformemente en el centro de la
figura.

     \newcommand*{\vcenteredhbox}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}}
       ...
     \begin{figure}
       \hspace*{\fill}%
       \vcenteredhbox{\includegraphics{graph0.png}}%
         \hfill\vcenteredhbox{\includegraphics{graph1.png}}%
       \hspace*{\fill}%
        \caption{Comparación de dos gráficos} \label{fig:twographs}
     \end{figure}

Ten en cuenta los ‘\hspace*’ donde el espacio se podría eliminar.

19.4 ‘\hss’
===========

Sinopsis:

     \hss

   Produce un espacio horizontal que es infinitamente contraíble así
como infinitamente extensible (este comando es un primitivo TeX).  Los
autores LaTeX deben alcanzar primero el comando ‘\makebox’ para obtener
efectos de ‘\hss’ (see \mbox y \makebox).

   Aquí, el ‘\hss’ de la primera línea hace que la Z sobresalga hacia la
derecha, sobrescribiendo la Y. En la segunda línea, la Z sobresale a la
izquierda, sobrescribiendo la X.

     X\hbox to 0pt{Z\hss}Y
     X\hbox to 0pt{\hss Z}Y

Sin el ‘\hss’ obtienes algo como ‘Sobrecarga \hbox (6.11111pt demasiado
ancho) detectado en la línea 20’.

19.5 ‘\spacefactor’
===================

Sinopsis:

     \spacefactor=INTEGER

   Influye en el comportamiento de estiramiento y contracción del
pegamento de LaTeX.  La mayoría a nivel de usuario los documentos no
utilizan este comando.

   Mientras LaTeX está estilizando el material, puedes estirar o encoger
los espacios entre palabras.  (Este espacio no es un carácter; se llama
el “pegamento entre palabras”; see \hspace).  El comando
‘\spacefactor’ (de TeX simple) te permite, por ejemplo, hacer que el
espacio después de un punto se extienda más que el espacio después de
una letra de final de palabra.

   Después de que LaTeX coloca cada carácter, regla u otro cuadro,
establece un parámetro llamado “factor de espacio”.  Si lo siguiente en
la entrada es un espacio, entonces este parámetro afecta cuánto se puede
estirar o encoger.  Un factor de espacio que es mayor que el valor
normal significa que el pegamento se puede estirar más y encoger menos.
Normalmente, el espacio factor es 1000.  Este valor está en efecto
después de la mayoría de los caracteres, y cualquier cuadro que no sea
de caracteres o fórmula matemática.  Pero es 3000 después de un punto,
signo de exclamación o signo de interrogación, es 2000 después de dos
puntos, 1500 después un punto y coma, 1250 después de una coma y 0
después de un paréntesis derecho o paréntesis, comillas dobles de cierre
o comillas simples.  Finalmente, es 999 después de una letra mayúscula.

   Si el factor espacio F es 1000, entonces el espacio de pegamento será
el valor del espacio normal de la letra (para Computer Modern Roman 10
puntos esto es 3.3333 puntos).  De lo contrario, si el factor de espacio
F es mayor de 2000, entonces TeX agrega el valor de espacio extra de la
letra (para Computer Modern Roman 10 point esto es 1.11111 points), y
entonces la letra el valor de estiramiento normal se multiplica por f
/1000 y el valor normal el valor de contracción se multiplica por 1000/f
(para Computer Modern Roman 10 puntos, estos son 1.66666 y
1.11111 puntos).

   Por ejemplo, considera el punto que termina ‘El mejor amigo de un
hombre es su perro.’ Después de eso, TeX pone un espacio extra fijo, y
también permite que el pegamento para estirar 3 veces más y encoger 1/3
más, que el pegamento después de ‘amigo’, que no termina en un punto.

   Las reglas para los factores espaciales son aún más complejas porque
juegan papeles adicionales.  En la práctica, hay dos consecuencias.
Primero, si un punto u otro signo de puntuación está seguido por un
paréntesis derecho o corchete, o comillas simples o dobles a la derecha,
entonces el efecto de espaciado de ese período lleva a través de esos
caracteres (es decir, el pegamento siguiente habrá aumentado el
estiramiento y la contracción).  Segundo, si la puntuación viene después
de una letra mayúscula, entonces su efecto no está en su lugar por lo
que obtienes un espacio ordinario.  Este segundo caso también afecta a
las abreviaturas que no terminen en mayúscula (see \@).

   Solo puedes usar ‘\spacefactor’ en modo párrafo o modo LR (see
Modos).  Puedes ver el valor actual con ‘\the\spacefactor’ o
‘\showthe\spacefactor’.

   (Comentario, no realmente relacionado con ‘\spacefactor’: si obtienes
errores como ‘No puedes usar `\spacefactor' en modo vertical’, o ‘No
puedes usar `\spacefactor' en modo matemático.’, o ‘Impropio
\spacefactor’ entonces probablemente hayas intentado redefinir un
comando interno.  See \makeatletter y \makeatother).

19.5.1 ‘\@’
-----------

Sinopsis:

     CAPITAL-LETTER\@.

   Trata un punto como final de oración, donde LaTeX de lo contrario
pensaría que es parte de una abreviatura.  LaTeX piensa que un punto
termina una abreviatura si el punto va después de una letra mayúscula, y
en caso contrario piensa que el punto termina la oración.  De manera
predeterminada, al justificar una línea LaTeX ajusta el espacio después
de un punto final de oración (o un signo de pregunta, de exclamación,
coma o dos puntos) más de lo que ajusta el espacio entre palabras (see
\spacefactor).

   Este ejemplo muestra los dos casos para recordar.

     Las   canciones  \textit{Guitarra   roja},  etc.\   son  de   Loudon
     Wainwright~III\@.

El segundo punto termina la oración, a pesar de que está precedido por
una mayúscula.  Le decimos a LaTeX que termina la oración poniendo ‘\@’
antes.  El primer punto termina la abreviatura ‘etc.’ pero no la
oración.  El espacio de barra invertida, ‘\ ’, produce un espacio en la
mitad de la oración.

   Entonces: si tienes una letra mayúscula seguida de un punto que
termina la oración, entonces coloca ‘\@’ antes del punto.  Esto se
mantiene incluso si hay un paréntesis o corchete derecho intermedio, o
derecho simple o comillas dobles, porque el efecto de espaciado de ese
período continúa esos caracteres.  Por ejemplo, este

     Usa la  \textit{Guía de Prácticas  de Instrucción}, (un libro  de la
     MAA)\@.

tendrá el espaciado correcto entre oraciones después del punto.

   El comando ‘\@’ es solo para un modo de texto.  Si lo usas fuera de
un modo de texto, entonces obtienes ‘No puedes usar `\spacefactor' en
modo vertical’ (see Modos).

   Comentario: el caso inverso es un punto que termina una abreviatura
cuya última letra no es una letra mayúscula, y esa abreviatura no es la
última palabra en la oración.  Para ese caso sigue el punto con una
barra invertida, (‘\ ’), o una tie, (‘~’), o ‘\@’.  Algunos ejemplos son
‘Nat.\ Acad.\ Science’ y ‘Mr.~Bean’, y ‘(manure, etc.\@) a la venta’
(nótese en la última que la ‘\@’ viene antes del paréntesis de cierre).

19.5.2 ‘\frenchspacing’ y ‘\nonfrenchspacing’
---------------------------------------------

Sinopsis, una de:

     \frenchspacing
     \nonfrenchspacing

   La primera declaración hace que LaTeX maneje el espacio entre
oraciones de la misma manera que el espaciado entre palabras en medio de
una frase.  El segundo vuelve al manejo predeterminado en el que el
espacio entre oraciones se estira o se encoge más (see
\spacefactor).

   Algunas tradiciones tipográficas, incluido el inglés, prefieren
ajustar el espacio entre oraciones (o espacios después de un signo de
interrogación, signo de exclamación, coma o dos puntos) más que el
espacio entre palabras que están en medio de una oración.  Declarando
‘\frenchspacing’ (el comando es de TeX) simple cambia a la tradición de
que todos los espacios son tratados por igual.

19.5.3 ‘\normalsfcodes’
-----------------------

Sinopsis:

     \normalsfcodes

   Restablece los factores de espacio de LaTeX a los valores
predeterminados (see \spacefactor).

19.6 Barra invertida-espacio, ‘\ ’
==================================

Esta sección se refiere al comando que consta de dos caracteres, una
barra invertida seguida de un espacio.
Sinopsis:

     \

   Produce un espacio.  De manera predeterminada produce espacios en
blanco de longitud 3.33333pt más 1.66666pt menos 1.11111pt.

   Cuando escribes uno o más espacios en blanco entre palabras, LaTeX
produce espacio blanco.  Pero eso es diferente a un espacio explícito.
Esto ilustra.

     \begin{tabular}{rl}
     Un espacio en blanco:& hace algo de espacio \\
     Tres espacios en blanco:&   en un renglón \\
     Tres espacios:&\ \ \ en un renglón \\
     \end{tabular}

En la primera línea, LaTeX pone algo de espacio después de los dos
puntos.  Sobre la segunda línea LaTeX colapsa los tres espacios en
blanco para generar un espacio en blanco, por lo que termina con el
mismo espacio después de los dos puntos como en la primera linea.  LaTeX
los colapsaría de manera similar en un solo espacio en blanco si uno,
dos o los tres espacios en blanco fueron reemplazados por una
tabulación, o por una nueva línea.  Sin embargo, la línea inferior pide
tres espacios para que el área blanca sea más ancha.  Es decir, el
comando barra invertida-espacio crea una cantidad fija de espacio
horizontal.  (Ten en cuenta que puedes definir un espacio horizontal de
cualquier ancho con ‘\hspace’; see \hspace).

   El comando barra-inversa-espacio tiene dos usos principales.  A
menudo se usa después de secuencias de control para evitar que se
traguen el espacio en blanco que sigue, como después de ‘\TeX’ en ‘\TeX\
(o \LaTeX)’.  (Pero usar llaves tiene la ventaja de seguir funcionando
si el siguiente carácter es un espacio en blanco o cualquier otra no
letra, como en ‘\TeX{} (o \LaTeX{})’ en la que ‘{}’ se puede agregar
después de ‘\LaTeX’ así como después de ‘\TeX’).  El otro uso común es
que marca un punto como final de una abreviatura en lugar de terminar
una oración, como en ‘Prof.\ Smith’ o ‘Jones et al.\ (1993)’ (see
\@).

   En circunstancias normales, ‘\’<TAB> y ‘\’<NEWLINE> son equivalentes
a la barra invertida-espacio, ‘\ ’.

   Ten en cuenta también que para permitir la sangría del código fuente,
en circunstancias normales, TeX ignora los espacios en blanco iniciales
en una línea.  Entonces el siguiente imprime ‘una palabra’:

     una
       palabra

donde el espacio en blanco entre ‘una’ y ‘palabra’ es producido por la
nueva línea después de ‘una’, no por el espacio antes de ‘palabra’.

19.7 ‘~’
========

Sinopsis:

     BEFORE~AFTER

   El carácter “tie”, ‘~’, genera un espacio entre BEFORE y AFTER en el
que la línea no se romperá.  De manera predeterminada el espacio en
blanco tiene una longitud de 3.33333pt más 1.66666pt menos 1.11111pt
(see Longitudes).

   Ten en cuenta que la palabra ‘tie’ tiene este significado en la
comunidad TeX/Texinfo; esto difiere del término tipográfico “tie”, que
es un diacrítico en forma de arco, llamado acento de “lazo-después” en
‘El libro TeX’.

   Aquí LaTeX no romperá la línea entre las dos últimas palabras:

     Gracias al Prof.~Lerman.

Además, a pesar del punto, LaTeX no usa el espaciado al final de la
oración (see \@).

   Los lazos evitan la separación de cosas al final de la línea donde
eso podría causar confusión.  También todavía permiten la separación
silábica (de cualquiera de las palabras ligadas), por lo que
generalmente son preferibles a poner palabras consecutivas en un ‘\mbox’
(see \mbox y \makebox).

   También son cuestión de gusto, a veces alarmantemente dogmáticos,
entre los lectores.  Sin embargo, aquí hay algunos modelos de uso,
muchos de ellos de ‘El libro de TeX’.

   • Entre una etiqueta de enumerador y un número, como en las
     referencias: ‘Capítulo~12’, o ‘Teorema~\ref{th:Wilsons}’, o
     ‘Figura~\ref{fig:KGraph}’.

   • Cuando los casos se enumeran en línea: ‘(b)~Muestra que $f(x)$ es
     (1)~continuo, y (2)~acotado’.

   • Entre un número y su unidad: ‘$745.7.8$~watts’ (El paquete
     ‘siunitx’ tiene una función especial para esto) o ‘144~eggs’.  Esto
     incluye entre un número de mes y día en una fecha: ‘Octubre~12’ o
     ‘12~Oct’.  En general, en cualquier expresión donde números y
     abreviaturas o símbolos están separados por un espacio: ‘AD~565’, o
     ‘2:50~pm’, o ‘Boeing~747’, o ‘268~Camino de las llanuras’, o
     ‘\$$1.4$~billón’.  Otras opciones comunes aquí son un espacio
     delgado (see \thinspace y \negthinspace) y no hay espacio en
     absoluto.

   • Cuando las frases matemáticas se traducen en palabras:
     ‘equals~$n$’, o ‘menor que~$\epsilon$’, o ‘dado~$X$’, o
     ‘módulo~$p^e$ para todos los ~$n$’ grandes (pero compara ‘es~$15$’
     con ‘es $15$~veces la altura’).  Entre símbolos matemáticos en
     aposición con sustantivos: ‘dimensión~$d$’ o ‘función~$f(x)$’ (pero
     compara ‘con longitud $l$~o más’).  Cuando un símbolo es un objeto
     fuertemente ligado de una preposición: ‘de~$x$’, o ‘de $0$ a~$1$’,
     o ‘en común con ~$m$’.

   • Entre símbolos en serie: ‘$1$,~$2$, o~$3$’ o ‘$1$,~$2$,
     \ldots,~$n$’.

   • Entre los nombres de pila de una persona y entre varios apellidos:
     ‘Donald~E. Knuth’, o ‘Luis~I. Trabb~Pardo’, o ‘Charles~XII’—pero
     debes darle a TeX lugares para romper la línea así que podrías
     hacer ‘Charles Louis Xavier~Joseph de~la Vall\'ee~Poussin’.

19.8 ‘\thinspace’ y ‘\negthinspace’
===================================

Sinopsis, una de:

     \thinspace
     \negthinspace

   Estos producen espacios irrompibles e inextensibles de 1/6em y
-1/6em, respectivamente.  Estos son los equivalentes en modo texto de
‘\,’ y ‘\!’ (see Espaciado en modo matemático/\thinspace).

   Puedes usar ‘\,’ como sinónimo de ‘\thinspace’ en modo texto.

   Un uso común de ‘\thinspace’ es como el espacio entre comillas
anidadas:

     Killick respondió: "Escuché al capitán decir: 'Ahoy allí.'\thinspace"

Otro uso es que algunas guías de estilo requieren un ‘\thinspace’ entre
una elipsis y un punto final de oración (otras guías de estilo, creo que
los tres puntos y/o los cuatro puntos son suficientes).  Otro uso
específico del estilo es entre iniciales, como en ‘D.\thinspace
E.\Knuth’.

   LaTeX proporciona una variedad de comandos de espaciado similares
para el modo matemático (see Espaciado en modo matemático).  Con el
paquete ‘amsmath’, o como de la versión 2020-10-01 LaTeX, se pueden usar
en modo texto así como el modo matemático, incluido ‘\!’ para
‘\negthinspace’; pero de lo contrario, solo están disponibles en el modo
matemático.

19.9 ‘\/’
=========

Sinopsis:

     BEFORE-CHARACTER\/AFTER-CHARACTER

   Inserta una “corrección en cursiva”, un pequeño espacio definido por
el diseñador de letra para cada carácter (posiblemente cero), para
evitar el carácter chocando con lo que sigue.  Cuando usas ‘\/’, LaTeX
toma la corrección del archivo métrico de la fuente, la escala por
cualquier escala que se ha aplicado a la fuente, y luego inserta esa
cantidad de espacio horizontal.

   Aquí, si no fuera por la ‘\/’, el BEFORE-CHARACTER cursiva f
golpearía el AFTER-CHARACTER roman H

     \newcommand{\companylogo}{{\it f}\/H}

porque la letra cursiva f se inclina mucho hacia la derecha.

   Si AFTER-CHARACTER es un punto o una coma, no insertes una corrección
en cursiva ya que esos símbolos de puntuación son tan bajos para la
línea base ya.  Sin embargo, con punto y coma o dos puntos, así como con
letras normales, la corrección en cursiva puede ayudar.  Se usa
normalmente entre un cambio de fuentes cursivas o inclinadas a una
fuente vertical.

   Cuando usas comandos como ‘\emph’ y ‘\textit’ y ‘\textsl’ para
cambiar las fuentes, LaTeX inserta automáticamente la corrección en
cursiva cuando sea necesario (see Estilos de tipos de letra).  Sin
embargo, declaraciones como ‘\em’ e ‘\itshape’ y ‘\slshape’ no inserta
automáticamente correcciones en cursiva.

   Los caracteres verticales también pueden tener una corrección en
cursiva.  Un ejemplo donde se necesita es el nombre ‘pdf\/\TeX’.  Sin
embargo, la mayoría de los caracteres verticales tienen una corrección
de cursiva cero.  Algunos creadores de fuentes no incluyen valores de
corrección de cursiva ni siquiera para fuentes en cursiva.

   Técnicamente, LaTeX usa otro valor específico de fuente, el llamado
“parámetro inclinado” (es decir, ‘\fontdimen1’), para determinar si
posiblemente insertar una corrección en cursiva, en lugar de vincular la
acción a comandos de fuente particulares.

   No existe el concepto de corrección de cursiva en el modo matemático;
el espaciado matemático está hecho de una manera diferente.

19.10 ‘\hrulefill’ y ‘\dotfill’
===============================

Sinopsis, una de:

     \hrulefill
     \dotfill

   Produce una longitud elástica horizontal infinita (see
Longitudes) que LaTeX se rellena con una regla (es decir, una línea) o
con puntos, en lugar de espacio en blanco.

   Esto genera una línea de 2 pulgadas de largo.

     Nombre:~\makebox[2in]{\hrulefill}

Este ejemplo, cuando se coloca entre líneas en blanco, crea un párrafo
que está justificado a la izquierda y a la derecha y donde el medio está
lleno de manera uniforme de puntos espaciados.

     \noindent John Aubrey, RN \dotfill{} Melbury Lodge

   Para hacer que la regla o los puntos vayan al final de la línea, usa
‘\null’ al comenzar o terminar.

   Para cambiar el grosor de la regla, copia la definición y ajústala,
como aquí

     \renewcommand{\hrulefill}{%
       \leavevmode\leaders\hrule height 1pt\hfill\kern0pt }

que cambia el grosor predeterminado de 0.4pt a 1pt.  Del mismo modo,
ajusta el espacio entre puntos como con

     \renewcommand{\dotfill}{%
       \leavevmode\cleaders\hbox to 1.00em{\hss .\hss }\hfill\kern0pt }

que cambia la longitud predeterminada de 0.33em a 1.00em.

   Este ejemplo produce una línea para una firma.

     \begin{minipage}{4cm}
       \centering
       \hrulefill\\
       Firmado
     \end{minipage}

La línea mide 4cm de largo.

19.11 ‘\bigskip’, ‘\medskip’ y ‘\smallskip’
===========================================

Sinopsis, una de:

     \bigskip
     \medskip
     \smallskip

   Produce una cantidad de espacio vertical, grande, mediano o pequeño.
Estos comandos son frágiles (see \protect).

   Aquí el salto sugiere el paso del tiempo (de El océano dorado por
O’Brian).

     El  señor Saumarez  tendría algo  grosero  que decirle,  sin duda:  él
     estaba en casa de nuevo, y era una delicia.

     \bigskip

     ``Ciento cincuenta y siete millas y un tercio, en veinticuatro horas",
     dijo Pedro.

   Cada comando está asociado a una longitud definida en el archivo de
la clase documento.

‘\bigskip’
     Lo mismo que ‘\vspace{\bigskipamount}’, normalmente alrededor de
     una línea de espacio, con estiramiento y contracción.  El valor
     predeterminado para el ‘libro’ y las clases de ‘article’ son ‘12pt
     plus 4pt minus 4pt’.

‘\medskip’
     Lo mismo que ‘\vspace{\medskipamount}’, normalmente alrededor de la
     mitad de una línea de espacio, con estiramiento y contracción.  El
     valor predeterminado para las clases ‘book’ y ‘article’ son ‘6pt
     plus 2pt minus 2pt’.

‘\smallskip’
     Lo mismo que ‘\vspace{\smallskipamount}’, normalmente sobre un
     espacio de un cuarto de línea, con estiramiento y contracción.  El
     valor predeterminado para las clases ‘book’ y ‘article’ son ‘3pt
     plus 1pt minus 1pt’.

   Debido a que cada comando es un ‘\vspace’, si lo usas en medio del
párrafo entonces insertará su espacio vertical entre la línea en la que
lo usas y la siguiente línea, no necesariamente en el lugar donde lo
usas.  Así que estos son mejores entre párrafos.

   Los comandos ‘\bigbreak’, ‘\medbreak’ y ‘\smallbreak’ son similares
pero también sugieren a LaTeX que este es un buen lugar para poner un
salto de página (see \bigbreak - \medbreak y \smallbreak.

19.12 ‘\bigbreak’, ‘\medbreak’ y ‘\smallbreak’
==============================================

Sinopsis, una de:

     \bigbreak
     \medbreak
     \smallbreak

   Produce un espacio vertical que sea grande o mediano o pequeño, y
sugiere a LaTeX que este es un buen lugar para romper la página.  (Las
sanciones asociadas son −200, −100 y −50) respectivamente.

   See \bigskip - \medskip y \smallskip, para más.  Estos comandos
producen el mismo espacio vertical pero difieren en que también eliminan
un espacio vertical precedente si es menor que lo que insertarías (como
con ‘\addvspace’).  Además, terminan un párrafo donde se usan: este
ejemplo

     abc\bigbreak def ghi

     jkl mno pqr

generará tres párrafos, el primero que termina en ‘abc’ y el segundo
comienza, después de un espacio vertical adicional y una sangría de
párrafo, con ‘def’.

19.13 ‘\strut’
==============

Sinopsis:

     \strut

   Asegúrate de que la línea actual tenga una altura de al menos
‘0.7\baselineskip’ y profundidad al menos de ‘0.3\baselineskip’.
Esencialmente, LaTeX inserta en la línea un rectángulo de ancho cero,
‘\rule[-0.3\baselineskip]{0pt}{\baselineskip}’ (see \rule).  El
‘\baselineskip’ cambia con la fuente o tamaño de fuente actual.

   En este ejemplo, ‘\strut’ mantiene la caja dentro del marco de tener
altura cero.

     \setlength{\fboxsep}{0pt}\framebox[2in]{\strut}

   Este ejemplo tiene cuatro listas.  En el primero hay una brecha mucho
mayor.  entre los elementos 2 y 3 que entre los elementos 1 y 2.  La
segunda lista corrige eso con un ‘\strut’ al final de su primer elemento
de la segunda línea.

     \setlength{\fboxsep}{0pt}
     \noindent\begin{minipage}[t]{0.2\linewidth}
     \begin{enumerate}
       \item \parbox[t]{15pt}{test \\ test}
       \item test
       \item test
     \end{enumerate}
     \end{minipage}%
     \begin{minipage}[t]{0.2\linewidth}
     \begin{enumerate}
       \item \parbox[t]{15pt}{test \\ test\strut}
       \item test
       \item test
     \end{enumerate}
     \end{minipage}%
     \begin{minipage}[t]{0.2\linewidth}
     \begin{enumerate}
       \item \fbox{\parbox[t]{15pt}{test \\ test}}
       \item \fbox{test}
       \item \fbox{test}
     \end{enumerate}
     \end{minipage}%
     \begin{minipage}[t]{0.2\linewidth}
     \begin{enumerate}
       \item \fbox{\parbox[t]{15pt}{test \\ test\strut}}
       \item \fbox{test}
       \item \fbox{test}
     \end{enumerate}
     \end{minipage}%

Las dos listas finales usan ‘\fbox’ para mostrar lo que está sucediendo.
El primer elemento ‘\parbox’ de la tercera lista va solo al final de su
segundo ‘test’, que sucede que no tiene ningún carácter que descender
por debajo de la línea base.  La cuarta lista agrega el puntal que da el
espacio adicional necesario debajo de la línea base.

   El comando ‘\strut’ suele ser útil en gráficos, como en ‘TikZ’ o
‘Asymptote’.  Por ejemplo, puedes tener un comando como
‘\graphnode{NOMBRE-NODO}’ que se ajusta a un círculo alrededor de
NOMBRE-NODO.  Sin embargo, a menos que tengas cuidado con el NOMBRE-NODO
‘x’ y ‘y’ producirán círculos de diferentes diámetros porque los
caracteres son de diferentes tamaños.  Un ‘\graphnode’ cuidadoso podría
insertar ‘\strut’, entonces NOMBRE-NODO y luego dibujar el círculo.

   El enfoque general de usar un ‘\rule’ ancho cero es útil en muchas
circunstancias.  En esta tabla, la regla de ancho cero mantiene la parte
superior de la primera integral de golpear el ‘\hline’.  Del mismo modo,
la segunda regla evita que la segunda integral coincida con la primera.

     \begin{tabular}{rl}
       \textsc{Integral}   &\textsc{Value}           \\
       \hline
       $\int_0^x t\, dt$   &$x^2/2$  \rule{0em}{2.5ex} \\
       $\int_0^x t^2\, dt$ &$x^3/3$  \rule{0em}{2.5ex}
     \end{tabular}

(Aunque el comando de doble barra invertida de final de línea tiene un
argumento opcional para cambiar el salto de línea base correspondiente,
eso no resuelve este problema.  Cambiar la primera barra invertida doble
a algo como ‘\\[2.5ex]’ pondrá más espacio entre la línea de encabezado
y la regla ‘\hline’, y la integral seguiría cumpliendo la regla).

19.14 ‘\vspace’
===============

Sinopsis, una de:

     \vspace{LENGTH}
     \vspace*{LENGTH}

   Agrega LENGTH al espacio vertical.  LENGTH puede ser positivo,
negativo o cero.  Es una longitud elástica — puede contener un
componente ‘plus’ o ‘minus’ (see Longitudes).

   Esto pone espacio entre los dos párrafos.

     Y dormí.

     \vspace{1ex plus 0.5ex}
     El nuevo día amaneció frío.

(see \bigskip - \medskip y \smallskip, para interpárrafo de espacios
común).

   La forma ‘*’ inserta un espacio vertical que no se puede descartar.
Más precisamente, LaTeX descarta el espacio vertical en un salto de
página y la forma-‘*’ hace que el espacio permanezca.  Este ejemplo deja
espacio entre las dos preguntas.

     Pregunta: Encuentra la integral de \( 5x^4+5 \).

     \vspace*{2cm más 0.5cm}
     Pregunta: Encuentra la derivada de \( x^5+5x+9 \).

Ese espacio estará presente incluso si el salto de página cae entre las
preguntas.

   Si usas ‘\vspace’ en medio de un párrafo (es decir, en modo
horizontal), entonces el espacio se inserta después de la línea que
contiene el comando ‘\vspace’; no comienza un nuevo párrafo en el
comando ‘\vspace’.

   En este ejemplo, las dos preguntas estarán espaciadas verticalmente
de manera uniforme en la página, con al menos una pulgada de espacio
debajo de cada una.

     \begin{document}
     1) ¿Quién puso el bomp en el bomp bah bomp bah bomp?
     \vspace{1in plus 1fill}

     2) ¿Quién puso el carnero en la rama lama ding dong?
     \vspace{1in plus 1fill}
     \end{document}

19.15 ‘\vfill’
==============

Sinopsis:

     \vfill

   Finaliza el párrafo actual e inserta una longitud elástica vertical
que sea infinita, por lo que se puede estirar o encoger tanto como sea
necesario (see Longitudes).

   A menudo se usa de la misma manera que ‘\vspace{\fill}’, excepto que
‘\vfill’ finaliza el párrafo actual mientras que ‘\vspace{\fill}’ agrega
el espacio vertical infinito debajo de su línea, independientemente de
la estructura del párrafo.  En ambos casos ese espacio desaparecerá en
un perímetro de la página; para eludir esto, ve la opción destacada
en \vspace.

   En este ejemplo, la página está llena, por lo que las líneas superior
e inferior contienen el texto ‘¡Perro perdido!’ y el segundo ‘¡Perro
perdido!’ es exactamente a medio camino entre ellos.

     \begin{document}
     ¡Perro perdido!
     \vfill
     ¡Perro perdido!  % perfectamente en el medio
     \vfill
     ¡Perro perdido!
     \end{document}

19.16 ‘\addvspace’
==================

Sinopsis:

     \addvspace{VERT-LENGTH}

   Agrega un espacio vertical de VERT-LENGTH.  Sin embargo, si hay dos o
más ‘\addvspace’ en una secuencia y luego juntos solo agregan el espacio
necesario para que la longitud natural sea igual al máximo de la
VERT-LENGTH está en esa secuencia.  Este comando es frágil (see
\protect).  El VERT-LENGTH es una longitud elástica (see
Longitudes).

   Este ejemplo ilustra.  El ‘picture’ dibuja una escala sobre la cual
se colocan las reglas.  En un artículo LaTeX estándar, la longitud
‘\baselineskip’ es 12pt.  Como muestra la escala, las dos reglas están
separadas por 22pt: la suma del ‘\baselineskip’ y el 10pt desde el
primer ‘\addvspace’.

     \documentclass{article}
     \usepackage{color}
     \begin{document}
     \setlength{\unitlength}{2pt}%
     \noindent\begin{picture}(0,0)%
       \multiput(0,0)(0,-1){25}{{\color{blue}\line(1,0){1}}}
       \multiput(0,0)(0,-5){6}{{\color{red}\line(1,0){2}}}
     \end{picture}%
     \rule{0.25\linewidth}{0.1pt}%
     \par\addvspace{10pt}% \addvspace{20pt}%
     \par\noindent\rule{0.25\linewidth}{0.1pt}%
     \end{document}

Ahora descomenta el segundo ‘\addvspace’.  No hace la brecha 20pt más;
en cambio, la brecha es la suma de ‘\baselineskip’ y 20pt.  Entonces
‘\addvspace’ en cierto sentido hace lo contrario de su nombre—se asegura
de que múltiples espacios verticales no acumulan, sino que sólo se
utiliza el más grande.

   LaTeX usa este comando para ajustar el espacio vertical arriba o
abajo de un entorno que comienza un nuevo párrafo.  Por ejemplo, un
entorno ‘theorem’ comienza y termina con ‘\addvspace’, por lo que dos
‘theorem’ consecutivos están separados por un espacio vertical, no dos.

   Un error ‘Algo anda mal, tal vez un \item’ faltante que apunta a un
‘\addvspace’ significa que no estabas en modo vertical cuando
presionaste este comando.  Una forma de cambiar eso es preceder a
‘\addvspace’ con un comando ‘\par’ (see \par), como en el ejemplo
anterior.

20 Cajas
********

En esencia, LaTeX pone las cosas en cajas y luego pone las cajas en una
página.  Así que estos comandos son centrales.

   Hay muchos paquetes en CTAN que son útiles para manipular cajas.  Un
complemento útil para los comandos aquí es ‘adjustbox’.

20.1 ‘\mbox’ y ‘\makebox’
=========================

Sinopsis, una de:

     \mbox{TEXT}
     \makebox{TEXT}
     \makebox[WIDTH]{TEXT}
     \makebox[WIDTH][POSITION]{TEXT}

   Crea una caja, un contenedor para el material.  El TEXT está escrito
en modo LR (see Modos) para que no se divida en líneas.  El comando
‘\mbox’ es robusto, mientras que ‘\makebox’ es frágil (see
\protect).

   Debido a que ‘text’ no se divide en líneas, puedes usar ‘\mbox’ para
evitar la separación silábica.  En este ejemplo, LaTeX no dividirá con
guiones el nombre del tanque, ‘T-34’.

     El tanque soviético \mbox{T-34} es  un símbolo de victoria contra el
     nazismo.

   Las dos primeras llamadas a comandos que se muestran, ‘\mbox’ y
‘\makebox’, son más o menos iguales.  Crean una caja apenas lo
suficientemente ancha para contener el TEXTo.  (Son como simples ‘\hbox’
de TeX).

   En la tercera versión, el argumento opcional WIDTH especifica el
ancho de la caja.  Ten en cuenta que el espacio ocupado por el texto no
necesita igualar el ancho de la caja.  Por un lado, TEXT puede ser
demasiado pequeño; esto crea un cuadro de línea completa

     \makebox[\linewidth]{Examen del capítulo}

con ‘Examen del capítulo’ centrado.  Pero TEXT también puede ser
demasiado ancho para WIDTH.  Ve el siguiente ejemplo de cuadros de ancho
cero.

   En el argumento WIDTH puedes usar las siguientes longitudes que se
refieren a la dimensión de la caja que obtiene LaTeX al componer TEXT:
‘\depth’, ‘\height’, ‘\width’, ‘\totalheight’ (esta es la altura de la
caja más su profundidad).  Por ejemplo, para hacer un cuadro con el
texto estirado para duplicar el tamaño natural se puede decir esto.

     \makebox[2\width]{Obtener una camilla}

   Para la cuarta versión de la sinopsis del comando, el argumento
opcional POSITION da la posición del texto dentro del cuadro.  Puede
tomar los siguientes valores:

‘c’
     El TEXT está centrado (predeterminado).

‘l’
     El TEXT está alineado a la izquierda.

‘r’
     Flujo a la derecha.

‘s’
     Estira el espacio entre palabras en TEXT en todo el WIDTH.  El TEXT
     debe contener un espacio extensible para que esto funcione.  Por
     ejemplo, esto podría encabezar un comunicado de prensa:
     ‘\noindent\makebox[\textwidth][s]{\large\hfil LIBERACIÓN\hfil
     INMEDIATA\hfil}’

   Un uso común de ‘\makebox’ es crear cuadros de texto de ancho cero.
Esto pone el valor de las preguntas del cuestionario a la izquierda de
esas preguntas.

     \newcommand{\pts}[1]{\makebox[0em][r]{#1 points\hspace*{1em}}}
     \pts{10}¿Cuál es la velocidad en el aire de una golondrina sin carga?

     \pts{90}¿Una golondrina africana o europea?

El borde derecho de la salida ‘10 puntos’ (ten en cuenta el espacio
final después de ‘puntos’) estará justo antes de ‘Cual’.  Puedes usar
‘\makebox’ de manera similar al hacer gráficos, como en ‘TikZ’ o
‘Asymptote’, donde pones el borde del texto en una ubicación en un punto
conocido, independientemente de la longitud de ese texto.

   Para cajas con marcos \fbox y \framebox.  Para colores
Cuadros de colores.

   Hay una versión relacionada de ‘\makebox’ que se usa dentro del
entorno ‘picture’, donde la longitud se da en términos de ‘\unitlength’
(see \makebox (picture)).

   Puesto que TEXT está escrito en modo LR, ni una barra invertida doble
‘\\’ ni ‘\par’ te darán una nueva línea; por ejemplo ‘\makebox{abc def
\\ ghi}’ genera ‘abc defghi’ mientras ‘\makebox{abc def \par ghi}’
genera ‘abc def ghi’, ambos en una sola línea.  Para obtener varias
líneas, see \parbox y minipage.

20.2 ‘\fbox’ y ‘\framebox’
==========================

Sinopsis, una de:

     \fbox{TEXT}
     \framebox{TEXT}
     \framebox[WIDTH]{TEXT}
     \framebox[WIDTH][POSITION]{TEXT}

   Crea un cuadro con un marco envolvente, cuatro reglas que rodean el
TEXT.  Estos comandos son los mismos que ‘\mbox’ y ‘\makebox’ excepto
para el marco (see \mbox y \makebox).  El comando ‘\fbox’ es
robusto, el comando ‘\framebox’ es frágil (see \protect).

     \fbox{¡Advertencia! No se muestra el trabajo, no se otorga crédito.}

LaTeX pone el texto en un cuadro, el texto no se puede dividir
silábicamente.  Alrededor de esa caja, separadas de ella por un pequeño
espacio, hay cuatro reglas que hacen un cuadro.

   Las dos primeras invocaciones de comandos, ‘\fbox{...}’ y
‘\framebox{...}’, son más o menos iguales.  En cuanto a la tercera y
cuartas invocaciones, los argumentos opcionales te permiten especificar
el ancho de la casilla como WIDTH y la posición del texto dentro de ese
cuadro como POSITION.  See \mbox y \makebox, para la descripción
completa pero aquí hay un ejemplo de creación de un cuadro vacío de
1/4in de ancho.

     \setlength{\fboxsep}{0pt}\framebox[0.25in]{\strut}}

El ‘\strut’ asegura una altura total de ‘\baselineskip’ (see
\strut).

   Estos parámetros determinan el diseño del marco.

‘\fboxrule’
     El grosor de las reglas alrededor de la caja cerrada.  El valor
     predeterminado es 0.2pt.  Cámbialo con un comando como
     ‘\setlength{\fboxrule}{0.8pt}’ (see \setlength).

‘\fboxsep’
     La distancia desde el marco hasta la caja cerrada.  El valor
     predeterminado es 3pt.  Cámbialo con un comando como
     ‘\setlength{\fboxsep}{0pt}’ (see \setlength).  Establecerlo en
     0pt es útil a veces: esto colocará un marco alrededor de la imagen
     sin borde blanco.

          {\setlength{\fboxsep}{0pt}%
           \framebox{%
             \includegraphics[width=0.5\textwidth]{prudence.jpg}}}

     Las llaves adicionales mantienen el efecto del ‘\setlength’ local.

   Al igual que con ‘\mbox’ y ‘\makebox’, LaTeX no romperá líneas en
TEXT.  Pero este ejemplo tiene líneas de ruptura LaTeX para hacer un
párrafo, y luego encuadra el resultado.

     \framebox{%
       \begin{minipage}{0.6\linewidth}
          Querida, aquí debemos correr lo más rápido que podamos, solo para
            mantenernos en el lugar.
         Y si deseas ir a donde debes correr el doble de rápido que eso.
       \end{minipage}}

   See Cuadros de colores, para colores que no sean blanco y negro.

   El entorno ‘picture’ tiene una versión del comando ‘\framebox’ donde
las unidades dependen del ‘\unitlength’ de ‘picture’ (see \framebox (picture)).

20.3 ‘\parbox’
==============

Sinopsis, una de:

     \parbox{WIDTH}{CONTENIDO}
     \parbox[POSITION]{WIDTH}{CONTENIDO}
     \parbox[POSITION][HEIGHT]{WIDTH}{CONTENIDO}
     \parbox[POSITION][HEIGHT][INNER-POS]{WIDTH}{CONTENIDO}

   Produce un cuadro de texto de WIDTH de ancho.  Usa este comando para
hacer una caja de pequeños fragmentos de texto, de un solo párrafo.
Este comando es frágil (see \protect).

     \begin{picture}(0,0) ...  \put(1,2){\parbox{1.75in}{\raggedright
       Debido a  que el gráfico es  una línea en este  artículo semilog, la
                               relación es exponencial.}} \end{picture}

   El CONTENIDO se procesa en modo texto (see Modos) por lo que
LaTeX dividirá líneas para formar un párrafo.  Pero no hará varios
párrafos; para eso, usa un entorno ‘minipage’ (see minipage).

   Las opciones para ‘\parbox’ (excepto CONTENIDO) son las mismas como
las de ‘minipage’.  Para mayor comodidad, un resumen de las opciones
está aquí, pero minipage para obtener una descripción completa.

   Hay dos argumentos necesarios.  El WIDTH es una longitud rígida
(see Longitudes).  Establece el ancho del cuadro en el que LaTeX
compone CONTENIDO.  CONTENIDO es el texto que se coloca en esa caja.  No
debe tener ningún componente de creación de párrafos.

   Hay tres argumentos opcionales, POSITION, HEIGHT e INNER-POS.  La
POSITION da la alineación vertical de la “parbox” con respecto al
material circundante.  Los valores apoyados son ‘c’ o ‘m’ para hacer que
el centro vertical del parbox se alinea con el centro de la línea de
texto adyacente (este es el predeterminado), o ‘t’ para hacer coincidir
la línea superior del parbox con la línea base del material circundante,
o ‘b’ para que coincida con la línea de fondo.

   El argumento opcional HEIGHT redefine la altura natural de la caja.

   El argumento opcional INNER-POS controla la ubicación de CONTENT
dentro del ‘parbox’.  Su valor predeterminado es el valor de POSITION.
Sus posibles valores son: ‘t’ para poner el CONTENT en la parte superior
del cuadro, ‘c’ para ponerlo en el centro vertical, ‘b’ para colocarlo
en la parte inferior del cuadro y ‘s’ para estirarlo verticalmente (para
ello, el texto debe contener espacio extensible verticalmente).

20.4 ‘\raisebox’
================

Sinopsis, una de:

     \raisebox{DISTANCE}{TEXT}
     \raisebox{DISTANCE}[HEIGHT]{TEXT}
     \raisebox{DISTANCE}[HEIGHT][DEPTH]{TEXT}

   Sube o baja TEXT.  Este comando es frágil (see \protect).

   Este ejemplo hace un comando para denotar la restricción de una
función bajando el símbolo de la barra vertical.

     \newcommand*\restricted[1]{\raisebox{-.5ex}{$|$}_{#1}}
     $f\restricted{A}$

   El primer argumento obligatorio DISTANCE especifica qué tan lejos
subir el segundo argumento obligatorio TEXT.  Esta es una longitud
rígida (see Longitudes).  Si es negativo entonces baja TEXT.  El
TEXT se procesa en modo LR por lo que no puede contener saltos de línea
(see Modos).

   Los argumentos opcionales HEIGHT y DEPTH son dimensiones.  Si se
especifican, redefinen la altura y profundidad natural de la caja, LaTeX
compone tipográficamente TEXT.

   En los argumentos DISTANCE, HEIGHT y DEPTH puedes utilizar las
siguientes longitudes que se refieren a la dimensión de la caja que
LaTeX empieza a componer TEXT: ‘\depth’, ‘\height’, ‘\width’,
‘\totalheight’ (esta es la altura de la caja más su profundidad).

   Esto alineará dos gráficos en su parte superior (see Gráficos).

     \usepackage{graphicx,calc}  % en el preámbulo
        ...
     \begin{center}
       \raisebox{1ex-\height}{%
         \includegraphics[width=0.4\linewidth]{lion.png}}
       \qquad
       \raisebox{1ex-\height}{%
         \includegraphics[width=0.4\linewidth]{meta.png}}
     \end{center}

El primer ‘\height’ es la altura de ‘lion.png’ mientras que el segundo
es la altura de ‘meta.png’.

20.5 ‘\sbox’ y ‘\savebox’
=========================

Sinopsis, una de:

     \sbox{BOX-CMD}{TEXT}
     \savebox{BOX-CMD}{TEXT}
     \savebox{BOX-CMD}[WIDTH]{TEXT}
     \savebox{BOX-CMD}[WIDTH][POS]{TEXT}

   Compone TEXT igual que con ‘\makebox’ (see \mbox y \makebox)
excepto que LaTeX no lo genera, sino que lo guarda en un registro de
caja al que hace referencia una variable denominada BOX-CMD.  El nombre
de la variable BOX-CMD comienza con una barra invertida, ‘\’.  Debes
haber asignado previamente el cuadro de registro BOX-CMD con
‘\newsavebox’ (see \newsavebox).  El comando ‘\sbox’ es robusto
mientras ‘\savebox’ es frágil (see \protect).

   Esto crea y utiliza un registro de caja.

     \newsavebox{\fullname}
     \sbox{\fullname}{John Jacob Jingleheimer Schmidt}
       ...
     \usebox{\fullname}! ¡Su nombre también es mi nombre!
     ¡Cuando salimos, la gente siempre grita!
     ¡Ahí va \usebox{\fullname}!  Ya da da da da da da.

Una ventaja de usar y reutilizar un registro de caja sobre una variable
macro ‘\newcommand’ es la eficiencia, que LaTeX no necesita vuelve a
escribir repetidamente el contenido.  Ve el ejemplo a continuación.

   Las dos primeras llamadas a comandos que se muestran arriba,
‘\sbox{BOX-CMD}{TEXT}’ y ‘\savebox{BOX-CMD}{TEXT}’, son más o menos
iguales.  En cuanto a la tercera y cuarta, los argumentos opcionales te
permiten especificar el ancho de la caja como WIDTH, y la posición del
texto dentro de esa caja como POSITION.  See \mbox y \makebox, para
la descripción completa.

   En los comandos ‘\sbox’ y ‘\savebox’ el TEXT es tipografiado en modo
LR para que no tenga saltos de línea (see Modos).  Si usas estos,
entonces LaTeX no te da un error pero ignora lo que quieres: si ingresas
‘\sbox{\newreg}{test \\ test}’ y ‘\usebox{\newreg}’ entonces obtienes
‘testtest’, mientras que si ingresas ‘\sbox{\newreg}{test \par test}’ y
‘\usebox{\newreg}’ entonces obtienes ‘test test’, pero no hay error ni
advertencia.  Para solucionar esto, usa ‘\parbox’ o ‘minipage’ como
aquí.

     \newsavebox{\areg}
     \savebox{\areg}{%
       \begin{minipage}{\linewidth}
         \begin{enumerate}
           \item Primer elemento
           \item Segundo elemento
         \end{enumerate}
       \end{minipage}}
       ...
     \usebox{\areg}

   Como ejemplo de la eficiencia de reutilizar el contenido de un
registro, esto pone la misma imagen en cada página del documento
colocándola en el encabezado.  LaTeX solo la compone una vez.

     \usepackage{graphicx} % todo esto en el preámbulo
     \newsavebox{\sealreg}
     \savebox{\sealreg}{%
        \setlength{\unitlength}{1in}%
        \begin{picture}(0,0)%
           \put(1.5,-2.5){%
             \begin{tabular}{c}
                \includegraphics[height=2in]{companylogo.png} \\
                La oficina del presidente
             \end{tabular}}
        \end{picture}%
     }
     \markright{\usebox{\sealreg}}
     \pagestyle{headings}

El entorno ‘picture’ es bueno para ajustar la ubicación.

   Si el registro ‘\noreg’ aún no se ha definido, obtendrás algo como
‘Secuencia de control indefinida. <argument> \noreg’.

20.6 ‘lrbox’
============

Sinopsis:

     \begin{lrbox}{BOX-CMD}
       TEXT
     \end{lrbox}

   Esta es la forma de entorno de los comandos ‘\sbox’ y ‘\savebox’, y
es equivalente a ellos.  See \sbox y \savebox, para la descripción
completa.

   El TEXT dentro del entorno se guarda en el cuadro de registro
referido por la variable ‘BOX-CMD’.  El nombre de la variable BOX-CMD
debe comenzar con una barra invertida, ‘\’.  Debes asignar esta caja
regístrate con anticipación con ‘\newsavebox’ (see \newsavebox).  En
este ejemplo el entorno es conveniente para ingresar el ‘tabular’.

     \newsavebox{\jhreg}
     \begin{lrbox}{\jhreg}
       \begin{tabular}{c}
         \includegraphics[height=1in]{jh.png} \\
         Jim Hef{}feron
       \end{tabular}
     \end{lrbox}
       ...
     \usebox{\jhreg}

20.7 ‘\usebox’
==============

Sinopsis:

     \usebox{BOX-CMD}

   Produce el cuadro guardado más recientemente en el registro de cuadro
BOX-CMD por los comandos ‘\sbox’ o ‘\savebox’, o el entorno ‘lrbox’.
Para obtener más información y ejemplos, see \sbox y \savebox.  (Ten
en cuenta que el nombre de la variable BOX-CMD comienza con una barra
invertida, ‘\’).  Este comando es robusto (see \protect).

21 Color
********

Puedes agregar color al texto, reglas, etc.  También puedes tener color
en un cuadro o en una página entera y escribir texto encima.

   El soporte de color viene como un paquete adicional.  Así que pon
‘\usepackage{color}’ en el preámbulo de su documento para usar los
comandos descritos aquí.

   Muchos otros paquetes también complementan las capacidades de color
de LaTeX.  Particularmente digno de mención es ‘xcolor’, que se utiliza
ampliamente y extiende significativamente las capacidades descritas
aquí, incluida la adición de modelos de color ‘HTML’ y ‘Hsb’.

21.1 Opciones del paquete ‘color’
=================================

Sinopsis (debe estar en el preámbulo del documento):

     \usepackage[COMMA-SEPARATED OPTION LIST]{color}

   Cuando cargas el paquete ‘color’ hay dos tipos de opciones de archivo
disponibles.

   El primero especifica el “controlador de impresora”.  LaTeX no
contiene información sobre diferentes sistemas de salida, sino que
depende de información almacenada en un archivo.  Normalmente no debes
especificar la opción driver en el documento y, en su lugar, confía en
la configuración predeterminada de tu sistema.  Una ventaja de esto es
que hace que el documento sea portátil a través de los sistemas.  Para
completar, incluimos una lista de los controladores.  Los relevantes
actualmente son: ‘dvipdfmx’, ‘dvips’, ‘dvisvgm’, ‘luatex’, ‘pdftex’,
‘xetex’.  Los dos ‘xdvi’ y ‘oztex’ esencialmente son alias para ‘dvips’
(y ‘xdvi’ es monocromo).  Los que no se deben usar para nuevos sistemas
son: ‘dvipdf’, ‘dvipdfm’, ‘dviwin’, ‘dvipsone’, ‘emtex’, ‘pctexps’,
‘pctexwin’, ‘pctexhp’, ‘pctex32’, ‘truetex’, ‘tcidvi’, ‘vtex’ (y
‘dviwindo’ es un alias de ‘dvipsone’).

   El segundo tipo de opciones, más allá de los controladores, se
encuentran a continuación.

‘monochrome’
     Deshabilita los comandos de color, para que no generen errores pero
     tampoco generar color.

‘dvipsnames’
     Pone a disposición una lista de 68 nombres de colores que se usan
     con frecuencia, particularmente en documentos heredados.  Estos
     nombres de colores originalmente fueron proporcionados por el
     controlador ‘dvips’, dando el nombre de la opción.

‘nodvipsnames’
     No carga esa lista de nombres de colores, ahorrando LaTeX una
     pequeña cantidad de espacio de memoria.

21.2 Modelos de color
=====================

Un “modelo de color” es una forma de representar los colores.  Las
capacidades de LaTeX dependen del controlador de la impresora.  Sin
embargo, ‘pdftex’, los controladores de impresora ‘xetex’ y ‘luatex’
son, con diferencia, los más comúnmente utilizados.  Los siguientes
modelos funcionan para esos controladores.  Todo pero uno de estos
también es compatible con prácticamente todos los demás controladores de
impresora usados hoy.

   Ten en cuenta que la combinación de colores puede ser aditiva o
sustractiva.  Mezcla aditiva de colores de luz, de modo que, por
ejemplo, combinando intensidades completas de rojo, verde y azul produce
blanco.  Mezclas sustractivas de pigmentos, como con tintas, de modo que
la combinación de la intensidad total de cian, magenta y el amarillo
hace negro.

‘cmyk’
     Una lista separada por comas con cuatro números reales entre 0 y 1,
     inclusive.  El primer número es la intensidad del cian, el segundo
     es magenta, y los otros son amarillo y negro.  Un valor numérico de
     0 significa intensidad mínima, mientras que un 1 es para intensidad
     máxima.  Este modelo a menudo se utiliza en la impresión a color.
     Es un modelo sustractivo.

‘gray’
     Un solo número real entre 0 y 1, ambos inclusive.  Los colores son
     sombras de gris.  El número 0 produce negro mientras que el 1 da
     blanco.

‘rgb’
     Una lista separada por comas con tres números reales entre 0 y 1,
     inclusive.  El primer número es la intensidad del componente rojo,
     el segundo es verde, y el tercero el azul.  Un valor numérico de 0
     significa que no se agrega nada de ese componente, mientras que un
     1 significa intensidad total.  Este es un modelo aditivo.

‘RGB’
     (‘pdftex’, ‘xetex’, ‘luatex’ drivers) Una lista separada por comas
     con tres números enteros entre 0 y 255, ambos inclusive.  Este
     modelo es una conveniencia de usar ‘rgb’ ya que fuera de LaTeX los
     colores a menudo se describen en un modelo rojo-verde-azul usando
     números en este rango.  Los valores introducidos aquí se convierten
     al modelo ‘rgb’ mediante división entre 255.

‘named’
     Se accede a los colores por nombre, como ‘PrussianBlue’.  La lista
     de nombres depende del controlador, pero todos admiten los nombres
     ‘black’, ‘azul’, ‘cian’, ‘verde’, ‘magenta’, ‘rojo’, ‘white’ y
     ‘yellow’ (Consulta la opción ‘dvipsnames’ en Opciones del paquete Color).

21.3 Comandos para color
========================

Estos son los comandos disponibles con el paquete ‘color’.

21.3.1 Definir colores
----------------------

Sinopsis:

     \definecolor{NAME}{MODEL}{SPECIFICATION}

   Asigna el nombre NAME al color.  Por ejemplo, después de esto

     \definecolor{silver}{rgb}{0.75,0.75,0.74}

puedes usar ese nombre de color con ‘Hola hola,
\textcolor{silver}{Silver}!’.

   Este ejemplo da al color un nombre más abstracto, por lo que podría
cambiar y no ser engañoso.

     \definecolor{logocolor}{RGB}{145,92,131}  %  RGB needs  pdflatex
     \newcommand{\logo}{\textcolor{logocolor}{Bob's Big Bagels}}

   A menudo, los colores de un documento se definen en el preámbulo o en
la clase o estilo, en lugar de en el cuerpo del documento.

21.3.2 Texto en color
---------------------

Sinopsis:

     \textcolor{NAME}{...}
     \textcolor[COLOR MODEL]{COLOR SPECIFICATION}{...}

o

     \color{NAME}
     \color[COLOR MODEL]{COLOR SPECIFICATION}

   El texto afectado obtiene el color.  Esta línea

     \textcolor{magenta}{Mi nombre es Ozymandias, Rey de Reyes;} ¡Mirad
     mis obras, poderosos, y desesperaos!

hace que la primera mitad esté en magenta mientras que el resto está en
negro.  Puedes usar un color declarado con ‘\definecolor’ exactamente de
la misma manera que usamos el color integrado ‘magenta’.

     \definecolor{MidlifeCrisisRed}{rgb}{1.0,0.11,0.0}
     Estoy  pensando  en adquirir  un  \textcolor{MidlifeCrisisRed}{auto
     deportivo}.

   Los dos ‘\textcolor’ y ‘\color’ difieren en que la primera es una
forma de comando, que incluye el texto a colorear como argumento.  Con
frecuencia esta forma es más conveniente, o al menos más explícita.  La
segunda forma es una declaración, como en ‘La luna está hecha de
{\color{green} green} cheese’, por lo que está vigente hasta el final
del grupo actual o entorno.  Esto a veces es útil cuando se escriben
macros o como debajo, donde colorea todo dentro del entorno ‘center’,
incluyendo las líneas verticales y horizontales.

     \begin{center} \color{blue}
       \begin{tabular}{l|r}
         UL &UR \\ \hline
         LL &LR
       \end{tabular}
     \end{center}

   Puedes usar el color en las ecuaciones.  Un documento podría tener
esta definición en el preámbulo

     \definecolor{highlightcolor}{RGB}{225,15,0}

y luego contener esta ecuación.

     \begin{equation}
       \int_a^b \textcolor{highlightcolor}{f'(x)}\,dx=f(b)-f(a)
     \end{equation}

   Normalmente, los colores utilizados en un documento se declaran en
una clase o estilo.  Pero a veces quieres uno único.  Esas son las
segundas formas en la sinopsis.

     Colores de \textcolor[rgb]{0.33,0.14,0.47}{Purple} y
     {\color[rgb]{0.72,0.60,0.37}Gold} para el equipo.

   El formato de ESPECIFICACIÓN DE COLOR depende del modelo de color
(see Modelos de color).  Por ejemplo, mientras ‘rgb’ toma tres
números, ‘gray’ solo toma uno.

     La selección fue \textcolor[gray]{0.5}{grayed out}.

   Los colores dentro de los colores no combinan.  De este modo

     \textcolor{green}{clase de \textcolor{blue}{blue}}

tiene una palabra final que es azul, no una combinación de azul y verde.

21.3.3 Cuadros de colores
-------------------------

Sinopsis:

     \colorbox{NAME}{...}
     \colorbox[NOMBRE   DEL   MODELO]{COLOR    DE   FONDO   DEL
     CUADRO}{...}

o

     \fcolorbox{COLOR   DEL   CUADRO}{COLOR  DE   FONDO   DEL
     CUADRO}{...}
     \fcolorbox[NOMBRE       DEL        MODELO]{COLOR       DEL
     CUADRO}{COLOR DE FONDO DEL CUADRO}{...}

   Haz un cuadro con el color de fondo indicado.  El comando
‘\fcolorbox’ pone un marco alrededor de la caja.  Por ejemplo esto

     Nombre:~\colorbox{cyan}{\makebox[5cm][l]{\strut}}

hace una caja de color cian de cinco centímetros de largo y recibe su
profundidad y altura del ‘\strut’ (por lo que la profundidad es
‘-.3\baselineskip’ y la altura es ‘\baselineskip’).  Este pone texto
blanco sobre un fondo azul.

     \colorbox{blue}{\textcolor{white}{Bienvenido a la máquina.}}

   Los comandos ‘\fcolorbox’ usan los mismos parámetros que ‘\fbox’
(see \fbox y \framebox), ‘\fboxrule’ y ‘\fboxsep’, para establecer
el grosor de la regla y el límite entre el interior de la caja y la
regla circundante.  Los valores predeterminados de LaTeX son ‘0.4pt’ y
‘3pt’, respectivamente.

   Este ejemplo cambia el grosor del borde a 0.8 puntos.  Nota que está
rodeado de llaves para que el cambio termine al final de la segunda
línea.

     {\setlength{\fboxrule}{0.8pt}
     \fcolorbox{black}{red}{Bajo  ninguna   circunstancia  gires  esta
     perilla.}}

21.3.4 Páginas coloreadas
-------------------------

Sinopsis:

     \pagecolor{NAME}
     \pagecolor[MODELO DE COLOR]{ESPECIFICACIÓN DE COLOR}
     \nopagecolor

   Los dos primeros establecen el fondo de la página, y todas las
páginas posteriores, al color.  Para una explicación de la
especificación en la segunda forma Texto en color.  La tercera
devuelve el fondo a la normalidad, que es un fondo transparente.  (Si
eso no es compatible, usa ‘\pagecolor{white}’, aunque eso hará un fondo
blanco en lugar del fondo transparente predeterminado).

      ...
     \pagecolor{cyan}
      ...
     \nopagecolor

22 Gráficos
***********

Puedes usar gráficos como archivos PNG o PDF en tu documento LaTeX.
Necesitas un paquete adicional, que viene estándar con LaTeX.  Este
ejemplo es el breve procedimiento.

     \include{graphicx} % va en el preámbulo
        ...
     \includegraphics[width=0.5\linewidth]{plot.pdf}

   Para usar los comandos descritos aquí, el preámbulo de tu documento
debe contener ya sea ‘\usepackage{graphicx}’ o ‘\usepackage{graphics}’.
La mayoría de las veces, ‘graphicx’ es la mejor elección.

   Los gráficos vienen en dos tipos principales, rasterizados y
vectoriales.  LaTeX puede usar ambos.  En gráficos rasterizados, el
archivo contiene una entrada para cada ubicación en un arreglo,
describiendo de qué color es.  Un ejemplo es una fotografía en formato
JPG. En gráficos vectoriales, el archivo contiene una lista de
instrucciones como ‘dibuja un círculo con este radio y ese centro’.  Un
ejemplo es un dibujo lineal producido por el programa Asymptote, en
formato PDF. En general, los gráficos vectoriales son más útiles porque
puedes cambiar la escala de su tamaño sin pixelación u otros problemas,
y porque suelen tener un tamaño más pequeño.

   Hay sistemas particularmente adecuados para hacer gráficos para un
documento LaTeX.  Por ejemplo, estos te permiten usar las mismas letras
como en tu documento.  LaTeX viene con un entorno ‘picture’ (see
picture) que tiene capacidades simples.  Además de eso, hay otras
formas de incluir los comandos de creación de gráficos en el documento.
Dos de dichos sistemas son los paquetes PSTricks y TikZ. También hay
sistemas externos a LaTeX, que generan un gráfico que incluyes usando
los comandos de este capítulo.  Dos que usan un lenguaje de programación
son Asymptote y MetaPost.  Uno que utiliza una interfaz gráfica es Xfig.
La descripción completa de estos sistemas está fuera del alcance de este
documento; ve su documentación en CTAN.

22.1 Opciones del paquete ‘graphics’
====================================

Sinopsis (debe estar en el preámbulo del documento):

     \usepackage[LISTA DE OPCIONES SEPARADAS POR COMAS]{graphics}

o

     \usepackage[LISTA DE OPCIONES SEPARADAS POR COMAS]{graphicx}

   El paquete ‘graphicx’ tiene un formato para argumentos opcionales al
comando ‘\includegraphics’ que sea conveniente (es el formato
valor-clave), por lo que es la mejor opción para documentos nuevos.
Cuando cargas el paquete ‘graphics’ o ‘graphicx’ con ‘\usepackage’ hay
dos tipos de opciones disponibles.

   La primera es que LaTeX no contiene información sobre diferentes
sistemas de salida, sino que depende de la información almacenada en un
archivo “controlador de impresora”.  Normalmente no debes especificar el
controlador en el documento y, en su lugar, confía en la opción
predeterminada de tu sistema.  Una ventaja de esto es que hace que el
documento sea portátil entre sistemas.

   Para completar, aquí hay una lista de los controladores.  Los
actualmente relevantes son: ‘dvipdfmx’, ‘dvips’, ‘dvisvgm’, ‘luatex’,
‘pdftex’, ‘xetex’.  Los dos ‘xdvi’ y ‘oztex’ esencialmente son alias
para ‘dvips’ (y ‘xdvi’ es monocromo).  Los que no se deben usar para
sistemas nuevos son: ‘dvipdf’, ‘dvipdfm’, ‘dviwin’, ‘dvipsone’, ‘emtex’,
‘pctexps’, ‘pctexwin’, ‘pctexhp’, ‘pctex32’, ‘truetex’, ‘tcidvi’, ‘vtex’
(y ‘dviwindo’ es un alias para ‘dvipsone’).  Estos se almacenan en
archivos con una extensión ‘.def’, como ‘pdftex.def’.

   El segundo tipo de opciones se encuentra a continuación.

‘demo’
     En lugar de un archivo de imagen, LaTeX coloca un rectángulo de
     150 pt por 100 pt (a menos que se especifique otro tamaño en el
     comando ‘\includegraphics’).

‘draft’
     Para cada archivo gráfico, no se muestra, sino que su nombre de
     archivo es impreso en una caja del tamaño correcto.  Para
     determinar el tamaño, el archivo debe estar presente.

‘final’
     (Predeterminado) Redefinir cualquier opción ‘draft’ anterior, de
     modo que el documento muestra el contenido de los archivos
     gráficos.

‘hiderotate’
     No muestra texto girado.  (Esto permite la posibilidad de que una
     vista previa no tiene la capacidad de rotar el texto).

‘hidescale’
     No mostrar texto escalado.  (Esto permite la posibilidad de que una
     vista previa no tiene la capacidad de escalar).

‘hiresbb’
     En un archivo PS o EPS, el tamaño del gráfico se puede especificar
     de dos formas.  Las líneas de ‘%%BoundingBox’ describen el tamaño
     del gráfico usando un número entero múltiplo de un punto
     PostScript, es decir, múltiplos enteros de 1/72 pulgada.  Una
     adición posterior al lenguaje PostScript permite múltiplos
     decimales, como 1.23, en líneas ‘%%HiResBoundingBox’.  Esta opción
     tiene LaTeX para leer el tamaño de esta última.

22.2 Configuración del paquete ‘graphics’
=========================================

Estos comandos configuran la forma en que LaTeX busca en el sistema de
archivos gráficos.

   El comportamiento del código de búsqueda del sistema de archivos
necesariamente es dependiente de la plataforma.  En este documento
cubrimos GNU/Linux, Macintosh y Windows, así como esos sistemas suelen
estar configurados.  Para otras situaciones consulta la documentación en
‘grfguide.pdf’, o la fuente de LaTeX, o su documentación de la
distribución de TeX.

22.2.1 ‘\graphicspath’
----------------------

Sinopsis:

     \graphicspath{LISTA DE DIRECTORIOS ENTRE LLAVES}

   Declara una lista de directorios para buscar archivos gráficos.  Esto
permite que luego digas algo como ‘\includegraphics{lion.png}’ en lugar
de tener que dar su ruta.

   LaTeX siempre busca archivos gráficos primero en el directorio actual
(y el directorio de salida, si se especifica; see directorio de salida).
La siguiente declaración le dice al sistema que busque en el
subdirectorio ‘pix’, y luego ‘../pix’.

     \usepackage{graphicx} % o gráficos; poner en el preámbulo
        ...
     \graphicspath{ {pix/} {../pix/} }

   La declaración ‘\graphicspath’ es opcional.  Si no lo incluyes
entonces el valor predeterminado de LaTeX es buscar en todos los lugares
en los que generalmente busca un archivo (usa el ‘\input@path’ de
LaTeX).  En particular, en este caso uno de los lugares donde mira es el
directorio actual.

   Encierra cada nombre de directorio entre llaves; por ejemplo arriba
dice ‘‘{pix}’’.  Haz esto incluso si solo hay un directorio.  Cada
nombre de directorio debe terminar en una barra diagonal, ‘/’.  Esto es
cierto incluso en Windows, donde una buena práctica es usar barras
diagonales para todos los separadores de directorio ya que hace que el
documento sea portátil a otras plataformas.  Si tienes espacios en el
nombre de tu directorio, usa dobles comillas, como con ‘{"my docs/"}’.
Usar una de estas reglas incorrectamente hará que LaTeX informe ‘Error:
Archivo `FILENAME' no encontrado’.

   Básicamente, el algoritmo es que con este ejemplo, después de mirar
en el directorio actual,

     \graphicspath{ {pix/} {../pix/} }
     ...
     \usepackage{lion.png}

para cada uno de los directorios enumerados, LaTeX lo concatena con el
nombre de archivo y busca el resultado, encontrando ‘pix/lion.png’ y
luego ‘../pix/lion.png’.  Este algoritmo significa que el comando
‘\graphicspath’ no busca subdirectorios recursivamente: si emites
‘\graphicspath{{a/}}’ y el gráfico está en ‘a/b/lion.png’ entonces LaTeX
no lo encontrará.  También significa que puedes usar rutas absolutas
como ‘\graphicspath{{/home/jim/logos/}}’ o
‘\graphicspath{{C:/Users/Albert/Pictures/}}’.  Sin embargo, usar esto
significa que el documento no es portátil.  (Puedes conservar
portabilidad ajustando el parámetro ‘TEXINPUTS’ de tu archivo de
configuración del sistema TeX; consulta la documentación de tu sistema).

   Puedes usar ‘\graphicspath’ en cualquier parte del documento.  Lo
puedes usar más de una vez.  Muestra su valor con
‘\makeatletter\typeout{\Ginput@path}\makeatother’.

   Los directorios se toman con respecto al archivo base.  Eso es, supón
que estás trabajando en un documento basado en ‘book/book.tex’ y
contiene ‘\include{chapters/chap1}’.  Si en ‘chap1.tex’ pones
‘\graphicspath{{plots/}}’ entonces LaTeX no buscará gráficos en
‘book/chapters/plots’, sino en cambio en ‘book/plots’.

22.2.2 ‘\DeclareGraphicsExtensions’
-----------------------------------

Sinopsis:

     \DeclareGraphicsExtensions{LISTA   DE  EXTENSIONES   DE  ARCHIVO
     SEPARADAS POR COMAS}

   Declara las extensiones de nombre de archivo para probar.  Esto te
permite especificar el orden en el que elegir los formatos gráficos
cuando incluyes archivos gráficos dando el nombre del archivo sin la
extensión, como en ‘\includegraphics{functionplot}’.

   En este ejemplo, LaTeX encontrará archivos en formato PNG antes que
archivos PDF.

     \DeclareGraphicsExtensions{.png,PNG,.pdf,.PDF}
       ...
     \includegraphics{lion}  %   encontrará  lion.png   antes  que
     lion.pdf

Debido a que el nombre de archivo ‘lion’ no tiene punto, LaTeX usa la
lista de extensiones.  Para cada directorio en la ruta de gráficos
(see \graphicspath), LaTeX probará las extensiones en el orden dado.
Si no encuentra dicho archivo después de probar todos los directorios y
extensiones, entonces informa ‘! Error de LaTeX: Archivo `‘lion’' no
encontrado’.  Ten en cuenta que debes incluir los puntos al comienzo de
las extensiones.

   Dado que los nombres de archivo de GNU/Linux y Macintosh distinguen
entre mayúsculas y minúsculas, la lista de extensiones de archivo
distinguen entre mayúsculas y minúsculas en esas plataformas.  La
plataforma Windows no distingue entre mayúsculas y minúsculas.

   No es necesario que incluya ‘\DeclareGraphicsExtensions’ en tu
documento; el controlador de la impresora tiene un valor predeterminado
razonable.  Por ejemplo, el ‘pdftex.def’ más reciente tiene esta lista
de extensiones.

     .pdf,.png,.jpg,.mps,.jpeg,.jbig2,.jb2,.PDF,.PNG,.JPG,.JPEG,.JBIG2,.JB2

   Para cambiar el orden, usa el paquete ‘grfext’.

   Puedes usar este comando en cualquier parte del documento.  Lo puedes
usar más de una vez.  Muestra su valor con
‘\makeatletter\typeout{\Gin@extensions}\makeatother’.

22.2.3 ‘\DeclareGraphicsRule’
-----------------------------

Sinopsis:

     \DeclareGraphicsRule{EXTENSION}{TYPE}{SIZE-FILE
     EXTENSION}{COMMAND}

   Declara cómo manejar archivos gráficos cuyos nombres terminan en
EXTENSIÓN.

   Este ejemplo declara que todos los archivos con nombres de la forma
‘nombre-de-archivo-sin-punto.mps’ se tratará como salida de MetaPost, lo
cual significa que el controlador de la impresora usará su código de
manejo de MetaPost para ingresar el archivo.

     \DeclareGraphicsRule{.mps}{mps}{.mps}{}

   Este

     \DeclareGraphicsRule{*}{mps}{*}{}

le dice a LaTeX que debe manejar como salida MetaPost cualquier archivo
con una extensión no cubierta por otra regla, por lo que cubre
‘filename.1’, ‘nombre-de-archivo.2’, etc.

   Esto describe los cuatro argumentos.

EXTENSION
     La extensión de archivo a la que se aplica esta regla.  La
     extensión es cualquier cosa después e incluyendo el primer punto en
     el nombre del archivo.  Usa la estrella Kleene, forma-‘*’, para
     indicar el comportamiento predeterminado de todas las extensiones
     no declaradas.

TYPE
     El tipo de archivo involucrado.  Este tipo es una cadena que se
     debe definir en el controlador de la impresora.  Por ejemplo,
     archivos con extensiones ‘.ps’, ‘.eps’ o ‘.ps.gz’ se pueden
     clasificar como tipo ‘eps’.  Todos los archivos del mismo tipo se
     ingresarán con el mismo comando interno por el controlador de la
     impresora.  Por ejemplo, los tipos de archivo que ‘pdftex’ reconoce
     son: ‘jpg’, ‘jbig2’, ‘mps’, ‘pdf’, ‘png’, ‘tif’.

TAMAÑO DE EXTENSIÓN DE ARCHIVO
     La extensión del archivo a leer para determinar el tamaño del
     gráfico, si existe tal archivo.  Puede ser lo mismo que EXTENSION
     pero puede ser diferente.

     Como ejemplo, considera un gráfico PostScript.  Para hacerlo más
     pequeño, puede estar comprimido en un archivo ‘.ps.gz’.  Los
     archivos comprimidos no son fáciles de leer por LaTeX para que
     pueda poner la información del cuadro delimitador en un archivo
     separado.  Si SIZE-FILE EXTENSION está vacío, entonces debes
     especificar la información de tamaño en los argumentos de
     ‘\includegraphics’.

     Si el archivo del controlador tiene un procedimiento para leer
     archivos de tamaño para ‘tipo’ entonces se usará, de lo contrario
     usará el procedimiento para leer archivos ‘.eps’.  (Por lo tanto,
     puedes especificar el tamaño de archivos de mapa de bits en un
     archivo con una línea de estilo PostScript ‘%%BoundingBox’ si no
     otro formato está disponible).

COMMAND
     Un comando que se aplicará al archivo.  Este a menudo se deja
     vacío.  Este comando debe comenzar con una sola comilla inversa.
     De este modo, ‘\DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{`gunzip
     -c #1}’ especifica que cualquier archivo con la extensión ‘.eps.gz’
     se debe tratar como un archivo ‘eps’, con la información de
     BoundingBox almacenado en el archivo con extensión ‘.eps.bb’, y que
     el comando ‘gunzip -c’ se ejecutará en tu plataforma para
     descomprimir el archivo.

     Tal comando es específico para tu plataforma.  Además, tu sistema
     TeX te debe permitir ejecutar comandos externos; como medida de
     seguridad los sistemas modernos restringen la ejecución de comandos
     a menos que lo permitas explícitamente.  Consulta la documentación
     de tu distribución TeX.

22.3 Comandos para graphics
===========================

Estos son los comandos disponibles con los paquetes ‘graphics’ y
‘graphicx’.

22.3.1 ‘\includegraphics’
-------------------------

Sinopsis del paquete ‘graphics’:

     \includegraphics{FILENAME}
     \includegraphics[URX,URY]{FILENAME}
     \includegraphics[LLX,LLY][URX,URY]{FILENAME}
     \includegraphics*{FILENAME}
     \includegraphics*[URX,URY]{FILENAME}
     \includegraphics*[LLX,LLY][URX,URY]{FILENAME}

   Sinopsis del paquete ‘graphicx’:

     \includegraphics{FILENAME}
     \includegraphics[KEY-VALUE LIST]{FILENAME}
     \includegraphics*{FILENAME}
     \includegraphics*[KEY-VALUE LIST]{FILENAME}

   Incluye un archivo de gráficos.  La forma destacada
‘\includegraphics*’ recortar el gráfico al tamaño especificado, mientras
que para la forma sin estrella cualquier parte del gráfico que está
fuera del cuadro del tamaño especificado se sobreimprimir el área
circundante.

   Este

     \usepackage{graphicx}  % en el preámbulo
       ...
     \begin{center}
       \includegraphics{plot.pdf}
     \end{center}

incorporará al documento el gráfico en ‘plot.pdf’, centrado y en su
tamaño nominal.  También puedes dar una ruta al archivo, como con
‘\includegraphics{graphics/plot.pdf}’.  Para especificar una lista de
ubicaciones para buscar el archivo, see \graphicspath.

   Si tu nombre de archivo incluye espacios, ponlo entre comillas
dobles.  Un ejemplo es ‘\includegraphics{"sister picture.jpg"}’.

   El comando ‘\includegraphics{FILENAME}’ decide sobre el tipo de
gráfico dividiendo FILENAME en el primer punto.  Puedes en su lugar,
usar FILENAME sin punto, como en ‘\includegraphics{turing}’, y luego
LaTeX intenta una secuencia de extensiones como ‘.png’ y ‘.pdf’ hasta
que encuentre un archivo con esa extensión (see
\DeclareGraphicsExtensions).

   Si tu nombre de archivo contiene puntos antes de la extensión, puedes
ocultar con llaves, como en ‘\includegraphics{{plot.2018.03.12.a}.pdf}’.
O, si usas el paquete ‘graphicx’ entonces puedes usar las opciones
‘type’ y ‘ext’; ve abajo.  Este y otros problemas de nombre de archivo
también se manejan con el paquete ‘grffile’.

   Este ejemplo coloca un gráfico en un entorno ‘figure’ para que LaTeX
lo pueda mover a la página siguiente si al encajarlo en la página actual
es incómodo (see figure).

     \begin{figure}
       \centering
       \includegraphics[width=3cm]{lungxray.jpg}
       \caption{La evidencia es abrumadora: no fumes.}  \label{fig:xray}
     \end{figure}

   Esto coloca un gráfico que no flotará, por lo que es seguro que
aparecerá en este punto en el documento incluso si haces que LaTeX
estire el texto o recurra a las áreas en blanco de la página.  Estará
centrado y tendrá un subtítulo.

     \usepackage{caption}  % en el preámbulo
       ...
     \begin{center}
       \includegraphics{pix/nix.png}
       \captionof{figure}{El espíritu de la noche} \label{pix:nix} % opcional
     \end{center}

   Este ejemplo pone una caja con un gráfico al lado de otra que tiene
texto, con los dos centrados verticalmente.

     \newcommand*{\vcenteredhbox}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}}
       ...
     \begin{center}
       \vcenteredhbox{\includegraphics[width=0.4\textwidth]{plot}}
       \hspace{1em}
       \vcenteredhbox{\begin{minipage}{0.4\textwidth}
                        \begin{displaymath}
                          f(x)=x\cdot \sin (1/x)
                        \end{displaymath}
                      \end{minipage}}
     \end{center}

   Si usas el paquete ‘graphics’ entonces las únicas opciones involucran
el tamaño del gráfico (pero \rotatebox y \scalebox).
Cuando un argumento opcional está presente, entonces es ‘[URX,URY]’ y da
las coordenadas de la parte superior esquina derecha de la imagen, como
un par de dimensiones TeX (see Unidades de longitud).  Si se omiten
las unidades, de manera predeterminada son ‘bp’.  En este caso, se
supone que la esquina inferior izquierda de la imagen está en (0,0).  Si
hay dos argumentos opcionales, entonces el principal es ‘[LLX,LLY]’,
especificando las coordenadas de la imagen abajo a la izquierda.  Por lo
tanto, ‘\includegraphics[1in,0.618in]{...}’ pide el gráfico se colocará
de manera que tenga 1 pulgadas de ancho y 0.618 pulgadas alto y por lo
que su origen está en (0,0).

   El paquete ‘graphicx’ te brinda muchas más opciones.  Especifícalos
en una forma clave-valor, como aquí.

     \begin{center}
       \includegraphics[width=1in,angle=90]{lion}
       \hspace{2em}
       \includegraphics[angle=90,width=1in]{lion}
     \end{center}

Las opciones se leen de izquierda a derecha.  Así que el primer gráfico
de arriba está hecho de una pulgada de ancho y luego se gira, mientras
que el segundo se gira y luego se hace de una pulgada de ancho.  Por lo
tanto, a menos que el gráfico sea perfectamente cuadrado, los dos
terminarán con diferentes anchos y alturas.

   Hay muchas opciones.  Las principales se enumeran primero.

   Ten en cuenta que LaTeX coloca un gráfico en un cuadro, que es
conocido tradicionalmente como su “delimitador de cuadro” (distinto del
PostScript BoundingBox descrito a continuación).  El área impresa del
gráfico puede ir más allá de este cuadro, o sentarse dentro de este
cuadro, pero cuando LaTeX crea una página junta casillas y esta es la
casilla asignada para el gráfico.

‘width’
     El gráfico se mostrará de modo que su cuadro delimitador tenga este
     ancho.  Un ejemplo es ‘\includegraphics[width=1in]{plot}’.  Puedes
     usar las dimensiones TeX estándar (see Unidades de longitud) y
     también es conveniente ‘\linewidth’, o en un documento de dos
     columnas, ‘\columnwidth’ (see Parámetros de composición de página).
     Un ejemplo es que al usar ‘calc’ puedes hacer que el
     gráfico sea 1 cm más estrecho que el ancho del texto con
     ‘\includegraphics[width=\linewidth-1.0cm]{hefferon.jpg}’.

‘height’
     El gráfico se mostrará de modo que su delimitador de cuadro tenga
     esta altura.  Puedes usar las dimensiones TeX estándar (see
     Unidades de longitud), y también ‘\pageheight’ y ‘\textheight’
     son convenientes (see Parámetros de composición de página).
     Por ejemplo, el comando
     ‘\includegraphics[height=0.25\textheight]{godel}’ hará el gráfico
     un cuarto de la altura del área de texto.

‘totalheight’
     El gráfico se mostrará de modo que su delimitador de cuadro tenga
     esta altura más profundidad.  Esto difiere de la altura si se gira
     el gráfico.  Por ejemplo, si se ha girado -90, entonces tendrá una
     altura cero pero una gran profundidad.

‘keepaspectratio’
     Si se establece en ‘true’, o simplemente se especifica como aquí

          \includegraphics[...,keepaspectratio,...]{...}

     y das como opciones tanto ‘width’ como ‘height’ (o ‘totalheight’),
     entonces LaTeX hará que el gráfico sea tan grande como sea posible
     sin distorsión.  Es decir, LaTeX se asegurará de que el gráfico no
     sea más ancho que ‘width’ ni más alto que ‘height’ (o
     ‘totalheight’).

‘scale’
     Factor por el cual escalar el gráfico.  Para hacer un gráfico el
     doble de su tamaño nominal, ingresa
     ‘\includegraphics[scale=2.0]{...}’.  Este número puede ser
     cualquier valor; un número entre 0 y 1 reducirá el gráfico y un
     número negativo lo reflejará.

‘angle’
     Rota el gráfico.  El ángulo se toma en grados y en sentido
     antihorario.  El gráfico se gira sobre su ‘origen’; ve esa opción.
     Para una descripción completa de cómo se compone el material
     rotado, see \rotatebox.

‘origin’
     El punto del gráfico sobre el que ocurre la rotación.  Los posible
     valores son cualquier cadena que contenga una o dos: ‘l’ para
     izquierda, ‘r’ para derecha, ‘b’ para la parte inferior, ‘c’ para
     el centro, ‘t’ para la parte superior y ‘B’ para la línea base.
     Por lo tanto, al ingresar el comando
     ‘\includegraphics[angle=180,origin=c]{moon}’ convertirá la imagen
     al revés sobre el centro de esa imagen, mientras que el comando
     ‘\includegraphics[angle=180,origin=lB]{LeBateau}’ convertirá su
     imagen al revés sobre su línea base izquierda.  (El carácter ‘c’ da
     el centro horizontal en ‘bc’ o ‘tc’, pero da el centro vertical en
     ‘lc’ o ‘rc’).  El valor predeterminado es ‘lB’.

     Para rotar sobre un punto arbitrario, see \rotatebox.

   Estas son opciones menos utilizadas.

‘viewport’
     Selecciona una subregión del gráfico para mostrar.  Toma cuatro
     argumentos, separados por espacios y dados en dimensiones TeX, como
     con ‘\includegraphics[.., viewport=0in 0in 1in 0.618in]{...}’.
     Cuando la unidad se omite, las dimensiones predeterminadas son
     grandes puntos ‘bp’.  Se toman en relación con el origen
     especificado por el delimitador del cuadro.  Ve también la opción
     ‘trim’.

‘trim’
     Proporciona partes del gráfico para que no se muestren.  Toma
     cuatro argumentos, separados por espacios, que se dan en
     dimensiones TeX, como con ‘\includegraphics[.., trim= 0in 0.1in
     0.2in 0.3in, ...]{...}’.  Estos dan las cantidades del gráfico para
     no mostrar, es decir, LaTeX recortará la imagen 0 pulgadas a la
     izquierda, 0.1 pulgadas a la parte inferior, 0.2 pulgadas a la
     derecha y 0.3 pulgadas en la parte superior.  Consulta también la
     opción ‘viewport’.

‘clip’
     Si se establece en ‘true’, o solo se especifica como aquí

          \includegraphics[...,clip,...]{...}

     luego, el gráfico se recorta al delimitador del cuadro.  Esto es lo
     mismo que utilizar la forma estrellada del comando,
     ‘\includegraphics*[...]{...}’.

‘page’
     Proporciona el número de página de un archivo PDF de varias
     páginas.  El valor predeterminado es ‘page=1’.

‘pagebox’
     Especifica qué delimitador de cuadro usar para los archivos PDF de
     entre ‘mediabox’, ‘cropbox’, ‘bleedbox’, ‘trimbox’, o ‘artbox’.
     Los archivos PDF no tienen el BoundingBox que los archivos
     PostScript tienen, pero pueden especificar hasta cuatro rectángulos
     predefinidos.  MediaBox da los límites del medio físico.  CropBox
     es la región a la que se recortará el contenido de la página cuando
     se despliega.  BleedBox es la región a la que se dirige el
     contenido de la página se debe recortar en producción.  TrimBox
     tiene las dimensiones previstas de la página terminada.  El ArtBox
     es el grado de significado del contenido de la página.  El
     controlador establecerá el tamaño de la imagen en función de
     CropBox si está presente, de lo contrario no utilizará uno de los
     otros, con un orden de preferencia definido por el controlador.
     MediaBox siempre está presente.

‘interpolate’
     Habilita o deshabilita la interpolación de imágenes rasterizadas
     por parte del espectador.  Se puede configurar con
     ‘interpolate=true’ o simplemente especificarlo como aquí.

          \includegraphics[...,interpolate,...]{...}

‘quiet’
     No escribe información en el registro.  Lo puedes configurar con
     ‘quiet=true’ o simplemente especificarlo con
     ‘\includegraphics[...,quiet,...]{...}’,

‘draft’
     Si lo configuras con ‘draft=true’ o simplemente lo especificas con

          \includegraphics[...,draft,...]{...}

     entonces el gráfico no aparecerá en el documento, posiblemente
     guardando tinta de color de la impresora.  En su lugar, LaTeX
     colocará un cuadro vacío del tamaño correcto con el nombre del
     archivo impreso en él.

   Estas opciones abordan el delimitador del cuadro para PostScript
encapsulando archivos gráficos, que tienen un tamaño especificado con
una línea ‘%%BoundingBox’ que aparece en el archivo.  Tiene cuatro
valores, dando la coordenada x inferior, la coordenada y inferior, la
coordenada x superior y la coordenada y superior.  Las unidades son
puntos PostScript, equivalentes a los puntos grandes de TeX,
1/72 pulgada.  Por ejemplo, si un archivo ‘.eps’ tiene la línea
‘%%BoundingBox 10 20 40 80’ entonces su tamaño natural es 30/72 pulgadas
de ancho por 60/72 pulgadas de alto.

‘bb’
     Especifica el cuadro delimitador de la región mostrada.  El
     argumento es cuatro dimensiones separadas por espacios, como con
     ‘\includegraphics[.., bb= 0in 0in 1in 0.618in]{...}’.  Por lo
     general, ‘\includegraphics’ lee los números BoundingBox del archivo
     EPS automáticamente, por lo que esta opción solo es útil si falta
     el cuadro delimitador en ese archivo o si deseas cambiarlo.

‘bbllx, bblly, bburx, bbury’
     Establece el cuadro delimitador.  Estos cuatro son obsoletos, pero
     se conservan por compatibilidad con paquetes antiguos.

‘natwidth, natheight’
     Una alternativa para ‘bb’.  Ajustar

          \includegraphics[...,natwidth=1in,natheight=0.618in,...]{...}

     es lo mismo que configurar ‘bb=0 0 1in 0.618in’.

‘hiresbb’
     Si se establece en ‘true’, o simplemente se especifica como con

          \includegraphics[...,hiresbb,...]{...}

     entonces LaTeX buscará las líneas ‘%%HiResBoundingBox’ en lugar de
     líneas ‘%%BoundingBox’.  (Las líneas ‘BoundingBox’ solo usan
     números naturales mientras que las líneas ‘HiResBoundingBox’ usan
     decimales; ambos usan unidades equivalentes a los puntos grandes de
     TeX, 1/72 pulgadas).  Para redefinir una configuración anterior de
     ‘true’, la puedes establecer en ‘false’.

   Las siguientes opciones permiten a un usuario anular el método LaTeX
de elegir el tipo de gráfico en función de la extensión del nombre de
archivo.  Un ejemplo es ese
‘\includegraphics[type=png,ext=.xxx,read=.xxx]{lion}’ leerá el archivo
‘lion.xxx’ como si fuera ‘lion.png’.  Para obtener más información sobre
estos, see \DeclareGraphicsRule.

‘type’
     Especifica el tipo de gráficos.

‘ext’
     Especifica la extensión de gráficos.  Solo usa esto junto con la
     opción ‘type’.

‘read’
     Especifica la extensión de archivo del archivo leído.  Solo usa
     esto junto con la opción ‘type’.

‘command’
     Especifica un comando que se aplicará a este archivo.  Solo usa
     esto en conjunción con la opción ‘type’.  See Opciones de la línea de comandos,
     para una explicación sobre cómo habilitar la
     funcionalidad ‘\write18’ para ejecutar comandos externos.

22.3.2 ‘\rotatebox’
-------------------

Sinopsis si usas el paquete ‘graphics’:

     \rotatebox{ANGLE}{MATERIAL}

   Sinopsis si usas el paquete ‘graphicx’:

     \rotatebox{ANGLE}{MATERIAL}
     \rotatebox[KEY-VALUE LIST]{ANGLE}{MATERIAL}

   Pon MATERIAL en un cuadro y lo gira ANGLE grados en sentido
antihorario.

   Este ejemplo gira los encabezados de las columnas de la tabla
cuarenta y cinco grados.

     \begin{tabular}{ll}
       \rotatebox{45}{Character} &\rotatebox{45}{NATO phonetic}   \\
       A                         &AL-FAH  \\
       B                         &BRAH-VOH
     \end{tabular}

   El MATERIAL puede ser cualquier cosa que vaya en una caja, incluido
un gráfico.

       \rotatebox[origin=c]{45}{\includegraphics[width=1in]{lion}}

   Para colocar el material rotado, el primer paso es que LaTeX
establece MATERIAL en un cuadro, con un punto de referencia en la línea
base izquierda.  El segundo paso es la rotación, predeterminada sobre el
punto de referencia.  El tercer paso es que LaTeX calcula un cuadro para
delimitar el material rotado.  Cuarto, LaTeX mueve este cuadro
horizontalmente para que el borde izquierdo de este nuevo delimitador
del cuadro coincida con el borde izquierdo del cuadro del primer paso
(no es necesario que coincidan verticalmente).  Este nuevo cuadro
delimitador, en su nueva posición, es lo que LaTeX usa como cuadro
cuando se compone tipográficamente este material.

   Si usas el paquete ‘graphics’ entonces la rotación es sobre el punto
de referencia de la caja.  Si usas el paquete ‘graphicx’ entonces estas
son las opciones que pueden ir en la LISTA DE VALORES CLAVE, pero ten en
cuenta que puedes obtener el mismo efecto sin necesidad de este paquete,
excepto las opciones ‘x’ e ‘y’ (see \includegraphics).

‘origin’
     El punto de la caja de MATERIAL sobre el cual ocurre la rotación.
     El posible valor es cualquier cadena que contenga uno o dos de: ‘l’
     para izquierda, ‘r’ para derecha, ‘b’ para la parte inferior, ‘c’
     para el centro, ‘t’ para la parte superior y ‘B’ para la línea
     base.  Así, la primera línea aquí

          \rotatebox[origin=c]{180}{moon}
          \rotatebox[origin=lB]{180}{LeBateau}

     dará la vuelta a la imagen desde el centro mientras que la segunda
     voltea tu imagen al revés sobre su línea base izquierda.  (El
     carácter ‘c’ da el centro horizontal en ‘bc’ o ‘tc’ pero da el
     centro vertical en ‘lc’ o ‘rc’, y da ambos en ‘c’).  El valor
     predeterminado es ‘lB’.

‘x, y’
     Especifica un punto arbitrario de rotación con ‘\rotatebox[x=TeX
     DIMENSIÓN,y=TeX DIMENSIÓN]{...}’ (see Unidades de longitud).
     Estos dan la compensación desde el punto de referencia de la caja.

‘units’
     Esta clave te permite cambiar el valor predeterminado de grados en
     el sentido contrario a las agujas del reloj.  Establecer
     ‘units=-360’ cambia la dirección a grados en el sentido de las
     agujas del reloj y la configuración de ‘units=6.283185’ cambia a
     radianes en sentido contrario a las agujas del reloj.

22.3.3 ‘\scalebox’
------------------

Sinopsis:

     \scalebox{FACTOR HORIZONTAL}{MATERIAL}
     \scalebox{FACTOR HORIZONTAL}[FACTOR VERTICAL]{MATERIAL}
     \reflectbox{MATERIAL}

   Escala el MATERIAL.

   Este ejemplo reduce a la mitad el tamaño, tanto horizontal como
verticalmente, del primer texto y duplica el tamaño del segundo.

     \scalebox{0.5}{DRINK ME} and \scalebox{2.0}{Eat Me}

   Si no especificas el FACTOR VERTICAL opcional, entonces el valor
predeterminado es el mismo que el FACTOR HORIZONTAL.

   Puedes usar este comando para cambiar el tamaño de un gráfico, como
aquí.

     \scalebox{0.5}{\includegraphics{lion}}

Si usas el paquete ‘graphicx’, puedes conseguir la misma cosa con
argumentos opcionales para ‘\includegraphics’ (see
\includegraphics).

   El comando ‘\reflectbox’ abrevia ‘\scalebox{-1}[1]{MATERIAL}’.  Por
lo tanto, ‘Able was I\reflectbox{Able was I}’ mostrará la frase ‘Able
was I’ seguida inmediatamente por su reflejo especular contra un eje
vertical.

22.3.4 ‘\resizebox’
-------------------

Sinopsis:

     \resizebox{HORIZONTAL LENGTH}{VERTICAL LENGTH}{MATERIAL}
     \resizebox*{HORIZONTAL LENGTH}{VERTICAL LENGTH}{MATERIAL}

   Dado un tamaño, como ‘3cm’, transforma MATERIAL para hacerlo a ese
tamaño.  Si LONGITUD HORIZONTAL o LONGITUD VERTICAL es un signo de
exclamación ‘!’ entonces se usa el otro argumento para determinar un
factor de escala para ambas direcciones.

   Este ejemplo hace que el gráfico tenga media pulgada de ancho y lo
escala verticalmente por el mismo factor para evitar que se distorsione.

     \resizebox{0.5in}{!}{\includegraphics{lion}}

   La forma sin estrella ‘\resizebox’ toma LONGITUD VERTICAL como la
altura del cuadro mientras que la forma estrellada ‘\resizebox*’ lo
lleva a ser altura+profundidad.  Por ejemplo, haz que el texto tenga una
altura+profundidad de un cuarto de pulgada con
‘\resizebox*{!}{0.25in}{\parbox{3.5in}{Este cuadro tiene altura y
profundidad.}}’.

   Puedes usar ‘\depth’, ‘\height’, ‘\totalheight’ y ‘\width’ para
referirte al tamaño original de la caja.  Es decir, hace el texto de dos
pulgadas de ancho pero manteniendo la altura original con
‘\resizebox{2in}{\height}{Dos pulgadas}’.

23 Inserciones especiales
*************************

LaTeX proporciona comandos para insertar caracteres que tienen un
significado especial no corresponde a los caracteres simples que puedes
escribir.

23.1 Caracteres reservados
==========================

LaTeX reserva los siguientes caracteres para propósitos especiales.  Por
ejemplo, el signo de porcentaje ‘%’ es para comentarios.  Se llaman
“caracteres reservados” o “caracteres especiales”.  Todo está explicado
en otra parte de este manual.

     # $ % & { } _ ~ ^ \

   Si deseas que un carácter reservado se imprima por sí mismo, en el
texto fuente del cuerpo, para todos menos los últimos tres caracteres en
esa lista simplemente coloca una barra invertida ‘\’ delante del
carácter.  De este modo, escribir ‘\$1.23’ producirá ‘$1.23’ en tu
salida.

   En cuanto a los últimos tres caracteres, para obtener una tilde en la
letra del cuerpo del texto usa ‘\~{}’ (omitir las llaves daría como
resultado que el siguiente carácter recibe un acento de tilde).  Del
mismo modo, para colocar un acento circunflejo en el texto del cuerpo
fuente usa ‘\^{}’.  Para colocar una barra invertida en el texto del
cuerpo fuente, ingresa ‘\textbackslash{}’.

   Para producir los caracteres reservados en una fuente de máquina de
escribir, utiliza ‘\verb!!’ como se muestra a continuación (la doble
barra inversa ‘\\’ en el ejemplo solo está ahí para dividir las líneas
en la salida).

     \begin{center}
       \# \$ \% \& \{ \} \_ \~{} \^{} \textbackslash \\
       \verb!# $ % & { } _ ~ ^ \!
     \end{center}

23.2 Mayúsculas y minúsculas
============================

Sinopsis:

     \uppercase{TEXT}
     \lowercase{TEXT}
     \MakeUppercase{TEXT}
     \MakeLowercase{TEXT}

   Cambia el caso de los caracteres.  Los comandos primitivos TeX
‘\uppercase’ y ‘\lowercase’ están configurados de forma predeterminada
para funcionar solo con las 26 letras a–z y A–Z. Los comandos LaTeX
‘\MakeUppercase’ y ‘\MakeLowercase’ también cambian caracteres a los que
se accede mediante comandos como ‘\ae’ o ‘\aa’.  Los comandos
‘\MakeUppercase’ y ‘\MakeLowercase’ son robustos pero tienen argumentos
en movimiento (see \protect).

   Estos comandos no cambian el uso de mayúsculas y minúsculas en el
nombre de un comando dentro de TEXT.  Pero cambian el caso de todas las
demás letras dentro del argumento TEXT.  De este modo,
‘\MakeUppercase{Let $y=f(x)$’} produce ‘LET Y=F(X)’.  Otro ejemplo es
que se cambiará el nombre de un entorno, de modo que
‘\MakeUppercase{\begin{tabular} ... \end{tabular}}’ produce un error
porque la primera mitad se cambia a ‘\begin{TABULAR}’.

   LaTeX usa la misma tabla fija para cambiar mayúsculas y minúsculas a
lo largo de un documento.  La tabla utilizada está diseñada para la
codificación de fuente T1; esto funciona bien con las fuentes TeX
estándar para todos los alfabetos latinos, pero causará problemas al
usar otros alfabetos.

   Para cambiar el caso del texto que resulta de una macro dentro de
TEXT tienes que hacer la expansión.  Aquí el ‘\Schoolname’ produce
‘FACULTAD DE MATEMÁTICAS’.

     \newcommand{\schoolname}{Facultad de matemáticas}
     \newcommand{\Schoolname}{\expandafter\MakeUppercase
                                \expandafter{\schoolname}}

   El paquete ‘textcase’ trae algunas de las funciones que faltan en los
comandos LaTeX estándar ‘\MakeUppercase’ y ‘\MakeLowerCase’.

   Para escribir en mayúsculas solo la primera letra de las palabras,
puedes usar el paquete ‘mfirstuc’.

   El manejo de todas las reglas de mayúsculas y minúsculas
especificadas por Unicode, por ejemplo, para escrituras no latinas, es
un trabajo mucho más grande que cualquier cosa prevista en el TeX
original y LaTeX.  Se ha implementado en el paquete ‘expl3’ a partir de
2020.  El artículo “Cambio de caso: De primitivas TeX al algoritmo
Unicode”, (Joseph Wright, ‘TUGboat’ 41:1,
<https://tug.org/TUGboat/tb41-1/tb127wright-case.pdf>), da una buena
visión general del tema, pasado y presente.

23.3 Símbolos por posición de fuente
====================================

Puedes acceder a cualquier carácter de la fuente actual usando su número
con el comando ‘\symbol’.  Por ejemplo, el carácter de espacio visible
usado en el comando ‘\verb*’ tiene el código decimal 32 en la fuente de
máquina de escribir Computer Modern estándar, por lo que se puede
escribir como ‘\symbol{32}’.

   También puedes especificar números en octal (base 8) usando un
prefijo ‘'’, o hexadecimal (base 16) con un prefijo ‘"’, por lo que el
espacio visible en 32 decimal también se podría escribir como
‘\symbol{'40}’ o ‘\symbol{"20}’.

23.4 Símbolos de texto
======================

LaTeX proporciona comandos para generar una serie de símbolos que no son
letras en texto corriente.  Algunos de estos, especialmente los más
oscuros, no están disponibles en OT1.  A partir del lanzamiento de LaTeX
de febrero de 2020, todos los símbolos están disponibles de manera
predeterminada; antes de eso, era necesario usar el paquete ‘textcomp’
para algunos (técnicamente, aquellos en la codificación de fuentes
‘TS1’).

‘\copyright’
‘\textcopyright’
     © El símbolo de copyright.

‘\dag’
     † El símbolo de la daga (en texto).

‘\ddag’
     ‡ El símbolo de la daga doble (en texto).

‘latex’
     El logotipo de LaTeX.

‘latex’
     LaTeX2e, logo.

‘\guillemotleft («)’
‘\guillemotright (»)’
‘\guilsinglleft (‹)’
‘\guilsinglright (›)’
     «, », ‹, › Comillas angulares simples y dobles, de uso común en
     francés.

‘\ldots’
‘\textellipsis’
‘\dot’
     ... Puntos suspensivos (tres puntos en la línea base): ‘\ldots’ y
     ‘\dots’ también trabaja en modo math (see Puntos).  Ve la
     descripción de los puntos suspensivos del ‘modo math’ para obtener
     información adicional.

‘\lq’
     ‘ Comilla izquierda (apertura).

‘p’
‘\textparagraph’
     ¶ Signo de párrafo (pilcrow).

‘\pounds’
‘\textsterling’
     £ libras esterlinas inglesas.

‘\quotedblbase („)’
‘\quotesinglbase (‚)’
     „ y ‚ Comillas simples y dobles en la línea base.

‘\rq’
     ’ Comilla de derecha (de cierre).

‘s’
‘\textsection’
     § Signo de sección.

‘tex’
     El logotipo de TeX.

‘\textasciicircum’
     ^ circunflejo ASCII.

‘\textasciitilde’
     ~ Tilde ASCII.

‘\textasteriskcentered’
     * asterisco centrado

‘\textbackslash’
     \ Barra invertida.  Sin embargo, ‘\texttt{\textbackslash}’ de
     manera predeterminada produce una barra invertida en letra romana
     (no de máquina de escribir); para una barra invertida de máquina de
     escribir, es necesario utilizar la codificación de tipo de letra T1
     (u otra no predeterminada), como en:

          \usepackage[T1]{fontenc}

‘\textbar’
     | Barra vertical.

‘\textbardbl’
     ⏸ Doble barra vertical.

‘\textbigcircle’
     ◯, símbolo de círculo grande.

‘\textbraceleft’
     { Llave izquierda.  Ve los comentarios en ‘\textbackslash’ arriba
     sobre hacer que ‘\texttt{\textbraceleft}’ produzca una llave en
     máquina de escribir.

‘\textbraceright’
     } Llave derecha.  Ve los comentarios en ‘\textbackslash’ arriba
     sobre hacer que ‘\texttt{\textbraceright}’ produzca una llave en
     máquina de escribir.

‘\textbullet’
     • Viñeta.

‘\textcircled{LETTER}’
     Ⓐ, circulo alrededor de LETRA.

‘\textcompwordmark’
‘\textcapitalcompwordmark’
‘\textascendercompwordmark’
     Se utiliza para separar letras que normalmente se ligarían.  Por
     ejemplo, ‘f\textcompwordmark i’ produce ‘fi’ sin ligadura.  Este es
     más útil en idiomas distintos del inglés.  La forma
     ‘\textcapitalcompwordmark’ tiene la altura máxima de la fuente
     mientras que la forma ‘\textascendercompwordmark’ tiene la altura
     ascendente.

‘\textdagger’
     † Daga.

‘\textdaggerdbl’
     ‡ Daga doble.

‘\textdollar (o ‘\$’)’
     $ signo de dólar.

‘\textemdash (o ‘---’)’
     — Guión largo.  Se utiliza para puntuación, por lo general similar
     a las comas o paréntesis, como en ‘‘Los playoffs---si tienes
     suficiente suerte para llegar a los playoffs --- son más como un
     sprint.’’ Convenciones para espaciar alrededor de guiones-em que
     varían ampliamente.

‘\textendash (o ‘--’)’
     – En-dash.  Usado para rangos, como en ‘‘ve las páginas 12--14’’.

‘\texteuro’
     El símbolo de la moneda del euro: €.  Para un diseño de glifo
     alternativo, prueba el paquete ‘eurosym’; además, la mayoría de las
     fuentes hoy día vienen con su propio símbolo de euro (Unicode
     U+20AC).

‘\textexclamdown (o ‘!`’)’
     ¡  Signo de exclamación al revés.

‘\textfiguredash’
     Guión usado entre números, Unicode U+2012.  Definido en junio de
     2021 lanzamiento de LaTeX.  Cuando se usa en pdfTeX, aproximado por
     un guión-en; con un motor Unicode, escribe el glifo si está
     disponible en la fuente actual, o escribe la advertencia habitual
     “Carácter faltante” al archivo de registro.

‘\textgreater’
     > Símbolo mayor que.

‘\texthorizontalbar’
     Carácter de barra horizontal, Unicode U+2015.  Definido en junio de
     2021 lanzamiento de LaTeX.  Comportamiento como con
     ‘\textfiguredash’ arriba; la aproximación pdfTeX es un guión largo.

‘\textless’
     < Símbolo menor que.

‘\textleftarrow’
     ←, Flecha izquierda.

‘\textnonbreakinghyphen’
     Carácter de guión de no separación, Unicode U+2011.  Definido en
     junio lanzamiento de 2021 de LaTeX.  Comportamiento como con
     ‘\textfiguredash’ arriba; la aproximación pdfTeX es un guión ASCII
     regular (con saltos no permitidos después).

‘\textordfeminine’
‘\textordmasculine’
     ª, º Símbolos ordinales femeninos y masculinos.

‘\textperiodcentered’
     · Punto centrado.

‘\textquestiondown (o ‘?`’)’
     ¿  Signo de interrogación de apertura.

‘\textquotedblleft (o ‘``’)’
     “ Comillas dobles a la izquierda.

‘\textquotedblright (o ‘''’)’
     ” Doble comilla derecha.

‘\textquoteleft (o ‘`’)’
     ‘ Comilla izquierda simple.

‘\textquoteright (o ‘'’)’
     ’ Comilla simple derecha.

‘\textquotesingle’
     ', Comillas rectas simples.  (De la codificación TS1).

‘\textquotestraightbase’
‘\textquotestraightdblbase’
     Comillas rectas simples y dobles en la línea base.

‘\textregistered’
     ® Símbolo de registrado.

‘\textrightarrow’
     →, Flecha derecha.

‘\textthreequartersemdash’
     ﹘, “Tres cuartos” de guión largo, entre guión corto y guión largo.

‘\texttrademark’
     ™ Símbolo de marca comercial.

‘\texttwelveudash’
     ﹘, “Dos tercios” guión largo, entre guión corto y guión largo.

‘\textunderscore’
     _ Guion bajo.

‘\textvisiblespace’
     ␣, Símbolo de espacio visible.

23.5 Acentos
============

LaTeX tiene una amplia compatibilidad para muchos de los scripts del
mundo e idiomas, proporcionada a través del paquete principal ‘babel’,
que admite pdfLaTeX, XeLaTeX y LuaLaTeX.  El paquete ‘polyglossia’
proporciona una compatibilidad similar con estos últimos dos motores.

   Esta sección no cubre esa compatibilidad.  Solo enumera los comandos
del núcleo LaTeX para crear caracteres acentuados.  Los comandos
‘\capital...’ que se muestran aquí producen formas alternativas para
utilizar con mayúsculas.  Estos no están disponibles con OT1.

   A continuación, para que sean más fáciles de encontrar, los acentos
se ilustran con minúsculas ‘o’.

   Ten en cuenta que ‘\i’ produce una i sin punto, y ‘\j’ produce una j
sin punto.  Estos se usan a menudo en lugar de sus contrapartes
punteadas cuando están acentuados.

‘\"’
‘\capitaldieresis’
     ö Umlaut (diéresis).

‘\'’
‘\capitalacute’
     ó Acento agudo.

‘\.’
     ȯ Acento de punto.

‘\=’
‘\capitalmacron’
     ō Acento macrón (sobre la barra).

‘\^’
‘\capitalcircumflex’
     ô Acento circunflejo (sombrero).

‘\`’
‘\capitalgrave’
     ò Acento grave.

‘\~’
‘\capitaltilde’
     ñ Acento de tilde.

‘b’
     o̲ Acento de barra debajo.

     Relacionado con esto, ‘\underbar{TEXT}’ produce una barra debajo
     del TEXT.  El argumento siempre se procesa en modo LR (see
     Modos).  La barra siempre es una posición fija debajo de la línea
     base, cruzando así a través de descendientes.  Véase también
     ‘\underline’ en Sobre y subrayado.

‘c’
‘\capitalcedilla’
     ç Acento cedilla debajo.

‘\d’
‘\capitaldotaccent’
     ọ Acento de puntos debajo.

‘\H’
‘h’
     ő Acento largo con diéresis húngara.

‘\k’
‘\capitalogonek’
     ǫ Ogonek.  No disponible en la codificación OT1.

‘\r’
‘\capitalring’
     o̊ Acento de anillo.

‘\t’
‘\capitaltie’
‘\newtie’
‘\capitalnewtie’
     Tie después de acento (utilizado para transliterar del cirílico,
     como en la romanización ALA-LC). Se espera que el argumento tenga
     dos caracteres.  La forma ‘\newtie’ está centrada en su cuadro.

‘\u’
‘\capitalbreve’
     ŏ Acento breve.

‘\v’
‘\capitalcaron’
     acento de ǒ Háček (cheque, carón).

23.5.1 ‘\accent’
----------------

Sinopsis:

     \accent NUMBER CHARACTER

   Un comando primitivo de TeX utilizado para generar caracteres
acentuados a partir de acentos y letras.  El acento es seleccionado por
NUMBER, un argumento numérico, seguido de un espacio y luego un
CHARACTER argumento para construir el carácter acentuado en la fuente
actual.

   Estos son caracteres ‘e’ acentuados.

     \accent18 e
     \accent20 e
     \accent21 e
     \accent22 e
     \accent23 e

El primero es un acento grave, el segundo un carón, el tercero un breve,
el cuarto un macrón, y el quinto un anillo arriba.

   La posición del acento la determina el diseñador de la fuente y, por
lo tanto, el resultado del uso de ‘\accent’ puede diferir entre las
fuentes.  En LaTeX es deseable tener glifos para caracteres acentuados
en lugar de construirlos usando ‘\accent’.  Usar glifos que ya contienen
los caracteres acentuados (como en la codificación T1) permite la
separación silábica correcta mientras que ‘\accent’ deshabilita la
separación silábica (específicamente con la codificación de fuente OT1
donde los glifos acentuados están ausentes).

   Puede haber un cambio de fuente opcional entre NUMBER y CHARACTER.
Ten en cuenta también que este comando establece el ‘\spacefactor’ a
1000 (see \spacefactor).

   Una característica inevitable de algunas letras cirílicas y la
mayoría de las letras cirílicas acentuadas es que se deben ensamblar a
partir de múltiples elementos (acentos, modificadores, etc.)  mientras
‘\accent’ proporciona un solo acento y una sola combinación de letras.
También hay casos en los que deben aparecer acentos entre letras que
\accent no admite.  Aún existen otros casos en los que las letras I y J
tienen puntos sobre sus contrapartes minúsculas que entran en conflicto
con los acentos punteados.  El uso de ‘\accent’ en estos casos no
funcionará ya que no puede analizar mayúsculas/minúsculas.

23.6 Letras latinas adicionales
===============================

Estos son los comandos básicos de LaTeX para insertar letras más allá de
A–Z que extienden el alfabeto latino, usados principalmente en otros
idiomas distintos al inglés.

‘\aa’
‘\AA’
     å y Å.

‘\ae’
‘\AE’
     æ y Æ.

‘\dh’
‘\DH’
     Letra islandesa eth: ð y Ð. No disponible con codificación OT1,
     necesitas el paquete ‘fontenc’ para seleccionar una codificación de
     fuentes alternativa, como T1.

‘\dj’
‘\DJ’
     d y D cruzadas, alias d mayúscula y minúscula con trazo.  No
     disponible con la codificación OT1, necesitas el paquete ‘fontenc’
     para seleccionar una codificación de fuente alternativa, como T1.

‘\ij’
‘\IJ’
     ij e IJ (excepto algo más juntos de lo que aparece aquí).

‘\l’
‘\L’
     ł y Ł.

‘\ng’
‘\NG’
     Letra lapona eng, también utilizada en fonética.

‘\o’
‘\O’
     ø y Ø.

‘\oe’
‘\OE’
     œ y Œ.

‘\ss’
‘\SS’
     ß y SS.

‘\th’
‘\TH’
     Espina de letra islandesa: þ y Þ. No disponible con codificación
     OT1, necesitas el paquete ‘fontenc’ para seleccionar una
     codificación de fuentes alternativa, como T1.

23.7 paquete ‘inputenc’
=======================

Sinopsis:

     \usepackage[ENCODING-NAME]{inputenc}

   Declara que la codificación de texto del archivo de entrada sea
ENCODING-NAME.  De manera predeterminada, si este paquete no está
cargado, es UTF-8.  Técnicamente, especificar el nombre de codificación
es opcional, pero en la práctica no es útil omitirlo.

   En un archivo de ordenador, los caracteres se almacenan de acuerdo
con un esquema llamado “codificación”.  Hay muchas codificaciones
diferentes.  La más simple es ASCII, que admite 95 caracteres
imprimibles, no suficientes para la mayoría de los idiomas del mundo.
Por ejemplo, para componer un carácter de diéresis ‘ä’ en un archivo
fuente LaTeX codificado en ASCII, se usa la secuencia ‘\"a’.  Esto
crearía archivos fuente para cualquier cosa pero el inglés es difícil de
leer; incluso para el inglés, a menudo más extenso que la codificación
más conveniente.

   El estándar de codificación moderno, en cierto modo una unión de los
demás, es UTF-8, una de las representaciones de Unicode.  Este es el
valor predeterminado para LaTeX desde 2018.

   El paquete ‘inputenc’ es cómo LaTeX sabe qué codificación se usó.
Por ejemplo, el siguiente comando dice explícitamente que el archivo de
entrada es UTF-8 (ten en cuenta la falta de un guión).

     \usepackage[utf8]{inputenc}

   Precaución: usa ‘inputenc’ solo con el motor pdfTeX (see Motores TeX).
(Los motores XeTeX y LuaTeX asumen que el archivo de entrada
está codificado en UTF-8).  Si invocas a LaTeX con ya sea el comando
‘xelatex’ o el comando ‘lualatex’ e intentas declarar una codificación
que no sea UTF-8 con ‘inputenc’, como ‘latin1’, obtendrás el error
‘inputenc no está diseñado para xetex o luatex’.

   Un error de paquete ‘inputenc’ como ‘Byte UTF-8 no válido "96’
significa que parte del material en el archivo de entrada no sigue el
esquema de codificación.  A menudo, estos errores provienen de la copia
de material de un documento que utiliza una codificación diferente a la
del archivo de entrada; Esta es una comilla izquierda simple de una
página web usando ‘latin1’ dentro de un archivo de entrada LaTeX que usa
UTF-8.  La solución más sencilla es reemplazar el carácter no UTF-8 con
su equivalente UTF-8, o usar un comando LaTeX o carácter equivalente.

   En algunos documentos, como una colección de artículos de revistas de
una variedad de autores, cambiar la codificación en medio del documento
puede ser necesario.  Usa el comando ‘\inputencoding{ENCODING-NAME}’.
Los valores más comunes para ENCODING-NAME son: ‘ascii’, ‘latin1’,
‘latin2’, ‘latin3’, ‘latin4’, ‘latin5’, ‘latin9’, ‘latin10’, y ‘utf8’.

23.8 ‘\rule’
============

Sinopsis, una de:

     \rule{WIDTH}{THICKNESS}
     \rule[RAISE]{WIDTH}{THICKNESS}

   Produce una “regla”, un rectángulo relleno.

   Este ejemplo produce una mancha rectangular, a veces llamada símbolo
de Halmos, o simplemente “qed”, a menudo usado para marcar el final de
una prueba:

     \newcommand{\qedsymbol}{\rule{0.4em}{2ex}}

El paquete ‘amsthm’ incluye este comando, con un símbolo de aspecto poco
diferente.

   Los argumentos obligatorios dan el WIDTH horizontal y el vertical
THICKNESS del rectángulo.  Son longitudes rígidas (see Longitudes).
El argumento opcional RAISE también es un argumento rígido y le dice a
LaTeX cuánto elevar la regla por encima de la línea base, o la baja si
la longitud es negativa.

   Esto produce una línea, un rectángulo que es ancho pero no alto.

     \noindent\rule{\textwidth}{0.4pt}

La línea es el ancho de la página y 0.4 puntos de altura.  El grosor
esta línea es común en LaTeX.

   Una regla que tenga cero ancho o cero espesor, no aparecerá en la
salida, pero puede hacer que LaTeX cambie la salida a su alrededor.
See \strut, por ejemplo.

23.9 ‘\today’
=============

Sinopsis:

     \today

   Produce la fecha de hoy en el formato ‘MES DD, YYYY’.  Un ejemplo de
una fecha en ese formato es ‘julio 4, 1976’.

   Paquetes multilingües como ‘babel’ o ‘polyglossia’, o clases como
‘lettre’, localizarán ‘\today’.  Por ejemplo, lo siguiente generará
‘julio 4, 1976’:

     \year=1976 \month=7 \day=4
     \documentclass{minimal}
     \usepackage[french]{babel}
     \begin{document}
     \today
     \end{document}

‘\today’ utiliza los contadores ‘\day’, ‘\month’ y ‘\year’ (see \day - \month y \year).

   Varios paquetes en CTAN funcionan con fechas.  Uno es el paquete
‘datetime’ que puede producir una amplia variedad de formatos de fecha,
incluidos los estándares ISO.

   La fecha no se actualiza mientras se ejecuta el proceso LaTeX, por lo
que, en principio, la fecha podría ser incorrecta para cuando finalice
el programa.

24 Dividir la entrada
*********************

LaTeX te permite dividir un documento grande en varios pequeños.  Esto
puede simplificar la edición o permitir que varios autores trabajen en
el documento.  También puede acelerar el procesamiento.

   Independientemente de cuántos archivos independientes utilices,
siempre hay uno “archivo raíz”, en el que comienza la compilación de
LaTeX.  Esto muestra tal archivo con cinco archivos incluidos.

     \documentclass{book}

     \includeonly{  % comenta  las líneas  a continuación  para omitir  la
                     % compilación
       pref,
       chap1,
       chap2,
       append,
       bib
       }
     \begin{document}
     \frontmatter
     \include{pref}
     \mainmatter
     \include{chap1}
     \include{chap2}
     \appendix
     \include{append}
     \backmatter
     \include{bib}
     \end{document}

Esto traerá material de ‘pref.tex’, ‘chap1.tex’, ‘chap2.tex’,
‘append.tex’ y ‘bib.tex’.  Si compilas este archivo, y luego comentas
todas las líneas dentro ‘\includeonly{...}’ a excepción de ‘chap1’, y
vuelve a compilar, entonces LaTeX solo procesará el material del primer
capítulo.  Por lo tanto, tu salida aparecerá más rápidamente y será más
breve para imprimir.  Sin embargo, la ventaja del comando ‘\includeonly’
es que LaTeX conservará la información de los números de página y todas
las referencias cruzadas de las otras partes del documento para que
estas aparezcan correctamente en tu salida.

   See Plantilla de libro Larger, para otro ejemplo de
‘\includeonly’.

24.1 ‘\endinput’
================

Sinopsis:

     \endinput

   Cuando ‘\include{filename}’, dentro de ‘filename.tex’ el material
después de ‘\endinput’ no se incluirá.  Este comando es opcional; si
‘filename.tex’ no tiene ‘\endinput’ entonces LaTeX leerá todo el
archivo.

   Por ejemplo, supón que el archivo raíz de un documento tiene
‘\input{chap1}’ y este es ‘chap1.tex’.

     \chapter{Uno}
     Este material aparecerá en el documento.
     \endinput
     Esto no aparecerá.

   Esto puede ser útil para poner documentación o comentarios al final
de un archivo, o para evitar caracteres basura que se pueden agregar si
el archivo es transmitido en el cuerpo de un correo electrónico.
También es útil para depurar: una estrategia para localizar errores es
poner ‘\endinput’ a mitad del camino a través del archivo incluido y ver
si el error desaparece.  Ahora, sabiendo qué mitad contiene el error,
mover el ‘\endinput’ a la mitad a través de esa área reduce aún más la
ubicación.  Este proceso encuentra rápidamente la línea infractora.

   Después de leer ‘\endinput’, LaTeX continúa leyendo hasta el final de
la línea, por lo que algo puede seguir este comando y ser leído, no
obstante.  Esto te permite, por ejemplo, cerrar un ‘\if...’ con un
‘\fi’.

24.2 ‘\include’ e ‘\includeonly’
================================

Sinopsis:

     \includeonly{  % en el preámbulo del documento
       ...
       FILENAME,
       ...
       }
       ...
     \include{FILENAME}  % en el cuerpo del documento

   Lleva material del archivo externo ‘FILENAME.tex’ a un documento
LaTeX.

   El comando ‘\include’ hace tres cosas: ejecuta ‘\clearpage’ (see
\clearpage y \cleardoublepage), entonces ingresa el material de
‘FILENAME.tex’ en el documento, y luego hace otro ‘\clearpage’.  Este
comando solo puede aparecer en el cuerpo del documento.

   El comando ‘\includeonly’ controla qué archivos leerá LaTeX bajo los
siguientes comandos ‘\include’.  Su lista de los nombres de archivo
están separados por comas.  Debe aparecer en el preámbulo o incluso
anterior, por ejemplo, la línea de comandos; no puede aparecer en el
cuerpo del documento.

   Este documento raíz de ejemplo, ‘constitution.tex’, trae tres
archivos, ‘preamble.tex’, ‘articles.tex’ y ‘enmiendas.tex’.

     \documentclass{book}
     \includeonly{
       preamble,
       articles,
       amendments
       }
     \begin{document}
     \include{preamble}
     \include{articles}
     \include{amendments}
     \end{document}

El archivo ‘preamble.tex’ no contiene ningún código especial; justamente
tienes un extracto del capítulo ‘constitution.tex’ y lo pones en un
archivo separado solo por conveniencia de edición.

     \chapter{Preamble}

     Nosotros, el  Pueblo de los Estados  Unidos, con el fin  de formar una
     Unión más perfecta, ...

Ejecutar LaTeX en ‘constitution.tex’ hace que el material de tres
archivos aparezca en el documento pero también genera los archivos
auxiliares ‘preamble.aux’, ‘articles.aux’ y ‘enmiendas.aux’.  Estos
contienen información como números de página (see Referencias cruzadas).
Si ahora comentas líneas de ‘\includeonly’ con ‘preámbulo’
y ‘enmiendas’ y ejecuta LaTeX nuevamente, el documento resultante
muestra solo el material de ‘articles.tex’, no el material de
‘preamble.tex’ o ‘amendments.tex’.  No obstante, toda la información de
los archivos auxiliares omitidos todavía está allí, incluyendo el número
de página inicial del capítulo.

   Si el preámbulo del documento no tiene ‘\includeonly’ entonces LaTeX
incluirá todos los archivos que solicites con comandos ‘\include’.

   El comando ‘\include’ crea una nueva página.  Para evitarlo, consulta
\input (que, sin embargo, no retiene la información auxiliar).

   See Plantilla de libro Larger, para otro ejemplo usando
‘\include’ e ‘\includeonly’.  Ese ejemplo también usa ‘\input’ para
algún material que no necesariamente comenzará en una nueva página.

   Los nombres de archivo pueden incluir rutas.

     \documentclass{book}
     \includeonly{
       chapters/chap1,
       }
     \begin{document}
     \include{chapters/chap1}
     \end{document}

   Para que tu documento sea portátil entre distribuciones y
plataformas, debes evitar espacios en los nombres de los archivos.  La
tradición es usar en su lugar guiones o guiones bajos.  No obstante,
para el nombre ‘amo amas amat’, esto funciona bajo TeX Live en
GNU/Linux:

     \documentclass{book}
     \includeonly{
       "amo\space amas\space amat"
       }
     \begin{document}
     \include{"amo\space amas\space amat"}
     \end{document}

   y esto funciona bajo MiKTeX en Windows:

     \documentclass{book}
     \includeonly{
       {"amo amas amat"}
       }
     \begin{document}
     \include{{"amo amas amat"}}
     \end{document}

   No puedes usar ‘\include’ dentro de un archivo que se está incluyendo
u obtienes ‘Error LaTeX: \include no se puede anidar.’ El comando
‘\include’ no puede aparecer en el preámbulo del documento; vas a
obtener ‘Error de LaTeX: Falta \begin{document}’.

   Si un archivo que ‘\include’ no existe, por ejemplo, si
‘\include{athiesm}’ pero quisiste decir ‘\include{atheism}’, entonces
LaTeX no te da un error pero te avisa ‘No hay archivo athiesm.tex.’
(También creará ‘athiesm.aux’).

   Si ‘\include’ el archivo raíz en sí mismo, primero obtienes ‘Error de
LaTeX: solo se puede usar en el preámbulo.’ Las ejecuciones posteriores
obtienen ‘Capacidad excedida de TeX, lo siento [text input levels=15]’.
Arreglar esto, debe eliminar la inclusión ‘\include{ROOT}’ pero también
elimina el archivo ‘ROOT.aux’ y vuelve a ejecutar LaTeX.

24.3 ‘\input’
=============

Sinopsis:

     \input{FILENAME}

   LaTeX procesa el archivo como si su contenido estuviera insertado en
el archivo actual.  Para un mecanismo de inclusión más sofisticado
\include e \includeonly.

   Si FILENAME no termina en ‘.tex’ entonces LaTeX primero intenta el
nombre del archivo con esa extensión; este es el caso habitual.  Si
FILENAME termina con ‘.tex’ luego LaTeX busca el nombre de archivo tal
como es.

   Por ejemplo, este

     \input{macros}

hará que LaTeX busque primero ‘macros.tex’.  Si encuentra ese archivo,
entonces procesa su contenido como si hubiera sido copiar y pegar.  Si
no hay ningún archivo con el nombre ‘macros.tex’, entonces LaTeX intenta
el nombre ‘macros’, sin extensión.  (Esto puede variar según la
distribución).

   Para que tu documento sea portátil entre distribuciones y
plataformas, debes evitar espacios en los nombres de los archivos.  La
tradición es usar en su lugar guiones o guiones bajos.  No obstante,
para el nombre ‘amo amas amat’, esto funciona bajo TeX Live en
GNU/Linux:

     \input{"amo\space amas\space amat"}

   y esto funciona bajo MiKTeX en Windows:

     \input{{"amo amas amat"}}

25 Material de portada/contraportada
************************************

25.1 Tabla de contenido, lista de figuras, lista de tablas
==========================================================

Sinopsis, una de:

     \tableofcontents
     \listoffigures
     \listoftables

   Produce una tabla de contenido, o una lista de figuras, o una lista
de tablas.  Pon el comando en el archivo de entrada donde deseas que se
coloque la tabla o la lista.  No escribas las entradas; por ejemplo,
normalmente las entradas de la tabla de contenido se genera
automáticamente a partir de los comandos de seccionado ‘\chapter’, etc.

   Este ejemplo ilustra el primer comando, ‘\tableofcontents’.  LaTeX
producirá una tabla de contenido en la primera página del libro.

     \documentclass{book}
     % \setcounter{tocdepth}{1}
     \begin{document}
     \tableofcontents\newpage
       ...
     \chapter{...}
       ...
     \section{...}
       ...
     \subsection{...}
       ...
     \end{document}

Descomentar la segunda línea haría que esa tabla contuviera los listados
de capítulos y secciones, pero no listados de subsecciones, porque el
comando ‘\section’ tiene nivel 1.  See Seccionado, para nivel
números de las unidades de corte.  Para obtener más información sobre el
‘tocdepth’ Seccionado/tocdepth.

   Otro ejemplo del uso de ‘\tableofcontents’ está en Plantilla de libro Larger.

   Si deseas un salto de página después de la tabla de contenido,
escribe un comando ‘\newpage’ después del comando ‘\tableofcontents’,
como arriba.

   Para hacer la tabla de contenido, LaTeX almacena la información en un
archivo auxiliar llamado ‘ROOT-FILE.toc’ (see Dividir la entrada).
Por ejemplo, este archivo LaTeX ‘test.tex’

     \documentclass{article}
     \begin{document}
     \tableofcontents\newpage
     \section{Primera sección}
     \subsection{Primera subsección}
       ...

escribe estas líneas en ‘test.toc’.

     \contentsline {section}{\numberline {1}Primera sección}{2}
     \contentsline        {subsection}{\numberline        {1.1}Primera
                            subsección}{2}

Cada línea contiene un solo comando, ‘\contentsline’ (see
\contentsline).  El primer argumento, el ‘section’ o ‘subsection’, es
la unidad de seccionamiento.  El segundo argumento tiene dos
componentes.  El gancho ‘\numberline’ determina cómo el número de
sección, ‘1’ o ‘1.1’, aparece en la tabla de contenido (see
\numberline).  El resto del segundo argumento de ‘\contentsline’,
‘Primera sección’ o ‘Primera subsección’, es el texto del título de la
sección.  Finalmente, el tercer argumento, ‘2’, es el número de página
en el que comienza esta unidad de seccionado.

   Para componer estas líneas, la clase “document” proporciona
‘\l@SECTION-UNIT’ comandos como ‘\l@section{TEXT}{PAGENUMBER}’ y
‘\l@subsection{TEXT}{PAGENUMBER}’.  Estos comandos a menudo usan el
comando ‘\@dottedtocline’ (see \@dottedtocline).

   Una consecuencia de la estrategia de LaTeX de usar archivos
auxiliares es que para obtener la información correcta en el documento
debes ejecutar LaTeX dos veces, una vez para almacenar la información y
la segunda vez para recuperarla.  En el curso normal de escribir un
documento los autores ejecutan LaTeX un número de veces, pero puedes
notar que la primera vez que compilas un nuevo documento, la página de
la tabla de contenido estará vacía excepto por su encabezado
‘Contenido’.  Simplemente ejecuta LaTeX de nuevo.

   Los comandos ‘\listoffigures’ y ‘\listoftables’ producen un lista de
figuras y lista de tablas.  Su información se almacena en archivos con
extensión ‘.lof’ y ‘.lot’.  Funcionan de la misma manera como
‘\tableofcontents’ pero este último es más común, así que lo usamos para
la mayoría de los ejemplos.

   Puede agregar material manualmente a la tabla de contenido, la lista
de figuras y la lista de tablas.  Por ejemplo, agrega una línea sobre un
sección a la tabla de contenido con
‘\addcontentsline{toc}{section}{TEXT}’.  (see \addcontentsline).
Agregar material arbitrario, es decir, sin línea material, con
‘\addtocontents’, como con el comando
‘\addtocontents{lof}{\protect\vspace{2ex}}’, que agrega espacio vertical
a la lista de figuras (see \addtocontents).

   Líneas en la tabla de contenido, la lista de figuras y la lista de
tablas, tienen cuatro partes.  Primero es una sangría.  A continuación
hay una caja en la que se colocan números de seccionado, y luego el
tercer recuadro contiene el título del texto, como ‘Primera sección’.
Finalmente hay una caja contra el margen derecho, dentro de la cual
LaTeX pone el cuadro del número de página.  Para la sangría y el ancho
del cuadro numérico, see \@dottedtocline.  El cuadro del margen
derecho tiene ancho ‘\@tocrmarg’ y el número de página está justo en ese
espacio, dentro de un cuadro de ancho ‘\@pnumwidth’.  De manera
predeterminada ‘\@tocrmarg’ es ‘2.55em’ y ‘\@pnumwidth’ es ‘1.55em’.
Cámbialos como con ‘\renewcommand{\@tocrmarg}{3.5em}’.

   CTAN tiene muchos paquetes para la tabla de contenido y listas de
figuras y tablas (see CTAN).  El paquete ‘tocloft’ es conveniente
para ajustar algunos aspectos del valor predeterminado, como el
espaciado.  Y, ‘tocbibbind’ agregará automáticamente la bibliografía,
índice, etc.  a la tabla de contenido.

   Para cambiar el encabezado de la página de la tabla de contenido, haz
algo como estos comandos antes de llamar a ‘\tableofcontents’, etc.

     \renewcommand{\contentsname}{Tabla de contenido}
     \renewcommand{\listfigurename}{Traza}
     \renewcommand{\listtablename}{especificaciones}

Paquetes de internacionalización como ‘babel’ o ‘polyglossia’ cambiará
estos encabezados según el idioma base elegido.

25.1.1 ‘\@dottedtocline’
------------------------

Sinopsis:

     \@dottedtocline{SECTION-LEVEL-NUM}{INDENT}{NUMWIDTH}{TEXT}{PAGENUMBER}

   Usado internamente por LaTeX para formatear una línea de entrada en
la tabla de contenido, lista de figuras o lista de tablas.  Los autores
no ingresan directamente los comandos ‘\@dottedtocline’.

   Este comando suele utilizarlo ‘\l@section’, ‘\l@subsection’, etc.,
para dar formato a las líneas de contenido.  Por ejemplo, el archivo
‘article.cls’ contiene estas definiciones:

     \newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
     \newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
     \newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}

En este ejemplo, ‘\@dottedcline’ parece haber recibido solo tres
argumentos.  Pero rastrear el código interno muestra que recoge los
argumentos finales TEXT y PAGENUMBER en la sinopsis desde una llamada a
‘\contentsline’ (see \contentsline).

   Entre el cuadro para el texto del título de una sección y el cuadro
del margen derecho, estos comandos ‘\@dottedtocline’ insertan “líderes
punteados”, es decir, puntos espaciados uniformemente El espacio de
punto a punto viene dado por el comando ‘\@dotsep’.  De manera
predeterminada es 4.5 (está en unidades matemáticas, también conocido
como ‘mu’, que son ‘1/18’ em.  Cámbialo usando ‘\renewcommand’, como en
‘\renewcommand{\@dotsep}{3.5}’.

   En la clase ‘book’ estándar, LaTeX no usa líderes punteados para las
entradas de la tabla Part y Chapter, y en la clase ‘article’ estándar no
usa líderes punteados para las entradas de la sección.

25.1.2 ‘\addcontentsline’
-------------------------

Sinopsis:

     \addcontentsline{EXT}{UNIT}{TEXT}

   Agrega una entrada al archivo auxiliar con extensión EXT.

   Lo siguiente resultará en una línea ‘Apéndices’ en la tabla de
contenido.

     \addcontentsline{toc}{section}{\protect\textbf{Apéndices}}

Aparecerá al mismo nivel de sangría que las secciones, estará en
negrita, y se le asignará el número de página asociado con el punto
donde aparece el comando en el archivo de entrada.

   El comando ‘\addcontentsline’ escribe información en el archivo
‘ROOT-NAME.EXT’, donde ROOT-NAME es el nombre del archivo raíz (see
Dividir la entrada).  Escribe que información como el texto del
comando ‘\contentsline{UNIT}{TEXT}{NUM}’, dónde ‘NUM’ es el valor actual
del contador ‘UNIT’ (see \contentsline).  El caso más común es la
tabla de contenido y allí NUM es el número de página de la primera
página de UNIT.

   Este comando es invocado por los comandos de seccionado ‘\chapter’,
etc.  (see Seccionado), y también por ‘\caption’ dentro de un
entorno flotante (see Flotantes).  Pero también lo utilizan
directamente los autores.  Por ejemplo, un autor que escribe un libro
cuyo estilo es tener un prefacio sin numerar puede usar el ‘\chapter*’
con asterisco.  Pero ese comando omite la información de la tabla de
contenido, que se puede ingresar manualmente, como aquí.

     \chapter*{Preface}
     \addcontentsline{toc}{chapter}{\protect\numberline{}Prefacio}

En el archivo ‘ROOT-NAME.toc’ LaTeX pondrá la línea ‘\contentsline
{chapter}{\numberline {}Prefacio}{3}’; nota que el número de página ‘3’
es generado automáticamente por el sistema, no ingresado manualmente.

   Todos los argumentos para ‘\addcontentsline’ son obligatorios.

EXT
     Por lo general, una de las cadenas ‘toc’ para la tabla de
     contenido, ‘lof’ para la lista de figuras, o ‘lot’ para la lista de
     tablas.  La extensión del nombre de archivo del archivo de
     información.

UNIT
     Una cadena que depende del valor del argumento EXT, normalmente una
     de:

     ‘toc’
          Para la tabla de contenido, este es el nombre de una unidad
          seccional: ‘part’, ‘chapter’, ‘section’, ‘subsection’, etc.

     ‘lof’
          Para la lista de figuras: ‘figure’.

     ‘lot’
          Para la lista de tablas: ‘table’.

TEXT
     El texto de la entrada.  Debes ‘\protect’ cualquier comando frágil
     (see \protect) utilizado en él.

   El comando ‘\addcontentsline’ tiene una interacción con ‘\include’
(see \include e \includeonly).  Si los usas en el mismo nivel, como
con ‘\addcontentsline{...}{...}{...}\include{...}’ entonces las líneas
en la tabla de contenido pueden aparecer en el orden incorrecto.  La
solución es mover ‘\addcontentsline’ al archivo que se incluye.

   Si usas una UNIDAD que LaTeX no reconoce, como con el error
tipográfico aquí

     \addcontentsline{toc}{section}{\protect\textbf{Apéndices}}

entonces no obtienes un error sino que el formato en la tabla de
contenido no tendrá sentido.

25.1.3 ‘\addtocontents’
-----------------------

Sinopsis:

     \addtocontents{EXT}{TEXT}

   Agrega TEXT, que puede ser texto o comandos de formato, directamente
a el archivo auxiliar con extensión EXT.  Este es el más utilizado para
la tabla de contenido, así que esa es la discusión aquí, pero también se
aplica a la lista de figuras y la lista de tablas.

   Esto pondrá un espacio vertical en la tabla de contenido después del
encabezado ‘Contenido’.

     \tableofcontents\newpage
     \addtocontents{toc}{\protect\vspace*{3ex}}

Esto pone la palabra ‘Página’, en negrita, encima de la columna del
número de página y después del encabezado.

     \tableofcontents
     \addtocontents{toc}{~\hfill\textbf{Página}\par}
     \chapter{...}

Esto agrega una línea que anuncia el trabajo de un nuevo autor.

     \addtocontents{toc}{%
       \protect\vspace{2ex}
       \textbf{Capítulos de N. Otro autor}\par}

   La diferencia entre ‘\addtocontents’ y ‘\addcontentsline’ es que este
último es estrictamente para líneas, como con una línea que da el número
de página para el comienzo de un nuevo subconjunto de capítulos.  Como
muestran los ejemplos anteriores, ‘\addtocontents’ es para material como
el espaciado.

   El comando ‘\addtocontents’ tiene dos argumentos.  Ambos son
requeridos.

EXT
     Por lo general, uno de: ‘toc’ para la tabla de contenido, ‘lof’
     para la lista de figuras, o ‘lot’ para la lista de tablas.  La
     extensión del archivo contiene la información.

TEXT
     El texto, y posiblemente los comandos, que se van a escribir.

   Los comandos de seccionado como ‘\chapter’ usan el comando
‘\addcontentsline’ para almacenar información.  Este comando crea líneas
en el archivo auxiliar ‘.toc’ que contiene el comando ‘\contentsline’
(see \addcontentsline).  A diferencia de el comando ‘\addtocontents’
coloca el material directamente en ese archivo.

   El comando ‘\addtocontents’ tiene una interacción con ‘\include’
(see \include e \includeonly).  Si los usas en el mismo nivel, como
con ‘\addtocontents{...}{...}\include{...}’ entonces las líneas en la
tabla de contenido pueden aparecer en el orden incorrecto.  La solución
es mover ‘\addtocontents’ al archivo que se incluye.

25.1.4 ‘\contentsline’
----------------------

Sinopsis:

     \contentsline{UNIT}{TEXT}{PAGENUMBER}

   Utilizado internamente por LaTeX para componer una entrada de la
tabla de contenido, lista de figuras o lista de tablas (see Tabla de contenido etc.).
Los autores no ingresan directamente los comandos
‘\contentsline’.

   Por lo general, la adición de material a estas listas la realizan
automáticamente los comandos ‘\chapter’, ‘\section’, etc.  para la tabla
de contenido, o por el comando ‘\caption’ dentro de un entorno ‘\figure’
o ‘\table’ (see figure y table).  De este modo, donde el
archivo raíz es ‘thesis.tex’ y contiene la declaración
‘\tableofcontents’, el comando ‘\chapter{Capítulo Uno}’ produce algo
como esto en el archivo ‘thesis.toc’.

     \contentsline {chapter}{\numberline {1}Capítulo uno}{3}

   Si el archivo contiene la declaración ‘\listoffigures’ entonces un
entorno ‘figure’ que involucra ‘\caption{Test}’ producirá algo como esto
en ‘thesis.lof’.

     \contentsline      {figure}{\numberline      {1.1}{\ignorespaces
     Test}}{6}

   Para agregar material manualmente, usa
‘\addcontentsline{FILETYPE}{UNIT}{TEXT}’, donde FILETYPE es ‘toc’, ‘lof’
o ‘lot’ (see \addcontentsline).

   Para manipular cómo se escribe el material ‘\contentline’, consulta
el paquete ‘tocloft’.

   Ten en cuenta que el paquete ‘hyperref’ cambia la definición de
‘\contentsline’ (y ‘\addcontentsline’) para agregar más argumentos, para
hacer hipervínculos.  Esta es la fuente del error ‘El argumento de
\contentsline tiene una }’ adicional cuando se agrega/elimina el uso del
paquete ‘hyperref’ y ya se ejecutó una compilación.  Soluciona este
error eliminando el archivo ‘.toc’ o ‘.lof’ o ‘.lot’ y ejecutando LaTeX
de nuevo.

25.1.5 ‘\nofiles’
-----------------

Sinopsis:

     \nofiles

   Evita que LaTeX escriba archivos auxiliares.  La única salida serán
los archivos ‘.log’ y ‘.pdf’ (o ‘.dvi’).  Este comando debe ir en el
preámbulo.

   Debido al comando ‘\nofiles’ este ejemplo no producirá un archivo
‘.toc’.

     \documentclass{book}
     \nofiles
     \begin{document}
     \tableofcontents\newpage
     \chapter{...}
       ...

LaTeX no borrará ningún archivo auxiliar existente, por lo que si
insertas el comando ‘\nofiles’ después de ejecutar el archivo y obtener
un ‘.toc’ entonces la página de la tabla de contenido seguirá mostrando
la información antigua.

25.1.6 ‘\numberline’
--------------------

Sinopsis:

     \numberline{NUMBER}

   Escribe su argumento alineado a la izquierda en un cuadro.  Esto se
usa en un comando ‘\contentsline’ para escribir el número de sección
(see \contentsline).

   Por ejemplo, esta línea en un ‘.toc’ hace que el ‘1.1’ sea
composición tipográfica a la izquierda.

     \contentsline {subsection}{\numberline {1.1}Motivación}{2}

   De forma predeterminada, LaTeX escribe los números de sección en un
cuadro de longitud ‘\@tempdima’.  Esa longitud la establecen los
comandos ‘\l@section’, ‘\l@subsection’, etc.  Poner números de sección
dentro de una caja de ancho natural con
‘\renewcommand{\numberline}[1]{#1~}’ antes de ‘\tableofcontents’.

   Este comando es frágil, por lo que es posible que debas precederlo
con ‘\protect’ (see \protect).  Un ejemplo es el uso de ‘\protect’
en este comando,

     \addcontentsline{toc}{section}{\protect\numberline{}Resumen}

para obtener el ‘\numberline’ en el comando ‘\contentsline’ en el
archivo ‘.toc’: ‘\contentsline {section}{\numberline {}Resumen}{6}’
(LaTeX agrega automáticamente el número de página ‘6’; see
\addcontentsline).

25.2 Índices
============

Si le dices a LaTeX qué términos quieres que aparezcan en un índice,
entonces puede producir ese índice, en orden alfabético y con los
números de página mantenidos automáticamente.  Esto ilustra los
conceptos básicos.

     \documentclass{article}
     \usepackage{makeidx}  % Proporcionar comandos de indexación
       \makeindex
     % \usepackage{showidx}  % Muestra notas al margen de las entradas
                               % del índice
       ...
     \begin{document}
       ...
     Teorema de Wilson\index{Teorema de Wilson}
     dice que un número $n>1$ es primo si y solo si el factorial
     de $n-1$ es congruente con $-1$
     modulo~$n$.\index{congruencia!y el Teorema de Wilson}
        ...
     \printindex
     \end{document}

Como muestra, declara las entradas de índice con el comando ‘\index’
(see \index).  Cuando ejecutas LaTeX, ‘\index’ escribe su
información, como ‘Teorema de Wilson’ y el número de página, a un
archivo auxiliar cuyo nombre termina en ‘.idx’.  A continuación,
alfabetiza y hace otras manipulaciones, como ejecutar un comando
externo, normalmente ‘makeindex’ (see makeindex), que escribe un
archivo cuyo nombre termina en ‘.ind’.  Finalmente, ‘\printindex’ trae
esta información manipulada en la salida (see \printindex).

   Por lo tanto, si el ejemplo anterior está en el archivo ‘numth.tex’
entonces ejecutar ‘pdflatex numth’ guardará la entrada de índice y la
información del número de página a ‘numth.idx’.  Luego ejecutar
‘makeindex numth’ ordena alfabéticamente y guarda los resultados en
‘numth.ind’.  Finalmente, ejecutar de nuevo ‘pdflatex numth’ mostrará el
índice deseado, en el lugar donde está el comando ‘\printindex’ en el
archivo fuente.

   Hay muchas opciones para la salida.  Un ejemplo es que el signo de
exclamación en ‘\index{congruencia!y teorema de Wilson}’ produce una
entrada principal de ‘congruencia’ con una subentrada de ‘y Teorema de
Wilson’.  Para obtener más información, see makeindex.

   Los comandos ‘\makeindex’ y ‘\printindex’ son independientes.  Omitir
el ‘\makeindex’ evitará que LaTeX guarde las entradas de índice al
archivo auxiliar.  Omitir el ‘\printindex’ hará que LaTeX no muestre el
índice en la salida del documento.

   Hay muchos paquetes en el área de indexación.  El paquete ‘showidx’
hace que cada entrada de índice se muestre en el margen de la página
donde aparece el ‘\index’.  Esto puede ayudar en la preparación del
índice.  El paquete ‘multind’, entre otros, admite múltiples índices.
Consulta también la entrada de preguntas frecuentes de TeX sobre este
tema, <https://www.texfaq.org/FAQ-multind>, y el tema de CTAN,
<https://ctan.org/topic/index-multi>.

25.2.1 Producir el índice manualmente
-------------------------------------

Los documentos que son pequeños y estáticos pueden tener un índice
producido manualmente.  Esto creará una página separada etiquetada como
‘Index’, en formato de dos columnas.

     \begin{theindex}
     \item acorn squash, 1
     \subitem maple estufado, 2
     \indexspace
     \item bacon, 3
     \subitem maple estufado, 4
     \end{theindex}

   Ten en cuenta que el autor debe ingresar los números de página, lo
cual es tedioso y que dará como resultado números incorrectos si el
documento cambia.  Esta es la razón por lo que en la mayoría de los
casos, los métodos automatizados como ‘makeindex’ son los mejores.
See Índices.

   Sin embargo, cubrimos los comandos para completado, y porque los
métodos automatizados se basan en estos comandos.  Hay tres niveles de
entradas.  Cómo muestra el ejemplo, una entrada principal usa ‘\item’,
las subentradas usan ‘\subitem’, y el nivel más bajo usa ‘\subsubitem’.
Las líneas en blanco entre entradas no tienen efecto.  El ejemplo
anterior incluye ‘\indexspace’ para producir espacio vertical en la
salida que usa algunos estilos de índice antes de que comience la
primera entrada con una nueva letra.

25.2.2 ‘\index’
---------------

Sinopsis:

     \index{INDEX-ENTRY-STRING}

   Declara una entrada en el índice.  Este comando es frágil (see
\protect).

   Por ejemplo, como se describe en Índices, una forma de
obtener un índice de lo que sigue es compilar el documento con ‘pdflatex
test’, entonces procesar las entradas del índice con ‘makeindex test’ y
luego compilar de nuevo con ‘pdflatex test’.

     % file test.tex
       ...
     W~Ackermann (1896--1962).\index{Ackermann}
       ...
     Ackermann function\index{Ackermann!function}
       ...
     rate of growth\index{Ackermann!function!growth rate}

Las tres entradas de índice obtendrán un número de página, como
‘Ackermann, 22’.  LaTeX formateará el segundo como un subelemento del
primero, en la línea debajo de ella y con sangría, y la tercera como
subelemento de la segunda.  Tres niveles de profundidad es lo máximo que
puede anidar subentradas.  (Si agregas ‘\index{Ackermann!function!growth
rate!comparison}’ entonces ‘makeindex’ dice ‘Escaneando archivo de
entrada test.idx....hecho (4 entradas aceptadas, 1 rechazada)’ y el
cuarto nivel del índice falla silenciosamente).

   Si ingresas un segundo ‘\index’ con el mismo INDEX-ENTRY-STRING,
obtendrás una sola entrada de índice con dos números de página (a menos
que caigan en la misma página).  De este modo, agregar ‘como por
Ackermann.\index{Ackermann}’ más tarde en el mismo documento como el
anterior dará una entrada de índice como ‘Ackermann, 22, 151’.  Además,
puedes introducir las entradas del índice en cualquier orden, por lo que
la instancia ‘\index{Ackermann!function}’ podría venir antes de
‘\index{Ackermann}’.

   Obtiene un rango de páginas en la salida, como ‘Hilbert, 23--27’,
como aquí.

     W~Ackermann (1896--1962).\index{Ackermann}
       ...
     D~Hilbert (1862--1943)\index{Ackermann!Hilbert|(}
       ...
     Desaprobado de su matrimonio.\index{Ackermann!Hilbert|)}

Si el comienzo y el final del rango de páginas son iguales, entonces el
sistema solo da un único número de página, no un rango.

   Si indexas subentradas pero no una entrada principal, como con
‘\index{Jones!program}’ e ‘\index{Jones!results}’, entonces el resultado
es el elemento ‘Jones’ sin coma ni número de página, seguido de dos
subelementos, como ‘programa, 50’ y ‘resultados, 51’.

   Genera una entrada de índice que diga ‘ve’ usando un carácter de
barra vertical: ‘\index{Ackermann!function|see{P\'eter's function}}’.
En su lugar, puedes obtener ‘ve también’ con ‘seealso’.  (El texto ‘ve’
está definido por ‘\seename’ y ‘ve también’ por ‘\alsoname’.  Los puedes
redefinir utilizando un paquete de internacionalización como ‘babel’ o
‘polyglossia’, o directamente como con ‘\renewcommand{\alsoname}{Ve
también}’).

   La característica ‘see’ es parte de una funcionalidad más general.
Después de la barra vertical puedes poner el nombre de un comando de una
sola entrada, como en ‘\index{group|textit}’ (ten en cuenta la barra
invertida que falta en el comando ‘\textit’) y el sistema aplicará ese
comando al número de página, aquí dando algo como ‘\textit{7}’.  Puedes
definir tus propios comandos de una sola entrada, como
‘\newcommand{\definedpage}[1]{{\color{blue}#1}}’ y entonces
‘\index{Ackermann!function|definedpage}’ dará un número de página azul
(see Color).  Otro ejemplo, menos práctico, es este,

     \newcommand\indexownpage[1]{#1, \thepage}
       ... Epimenides.\index{self-reference|indexownpage}

que crea una entrada citando el número de página de su propia lista de
índice.

   Las dos funciones recién descritas se combinan, como aquí

     \index{Ackermann!function|(definedpage}
       ...
     \index{Ackermann!function|)}

que genera una entrada de índice como ‘function, 23--27’ donde los
números del rango de páginas están en azul.

   Considera una entrada de índice como ‘α-ring’.  Entrado como
‘$\alpha$-ring’ hará que se ordene alfabéticamente según el signo de
dolar.  En su lugar, lo puedes ingresar usando un signo de arroba, como
‘\index{alpha-ring@$\alpha$-ring}’.  Si especificas una entrada con un
signo de arroba que separa dos cadenas, ‘POS@TEXT’, entonces POS da la
posición alfabética de la entrada mientras TEXT produce el texto de la
entrada.  Otro ejemplo es que ‘\index{Saint Michael's College@SMC}’
produce una entrada de índice ‘SMC’ en orden alfabético en una ubicación
diferente a su ortografía lo daría naturalmente.

   Para poner un carácter ‘!’, ‘@’, ‘|’ o ‘"’ en una entrada de índice,
escápala precediéndola con una comilla doble, ‘"’.  (Las comillas dobles
se eliminan antes de la alfabetización).

   Varios paquetes en CTAN tienen funcionalidad adicional más allá de
eso proporcionada por ‘makeidx’.  Uno es ‘index’, que permite múltiples
índices y contiene un comando ‘\index*{INDEX-ENTRY-STRING}’ que imprime
el INDEX-ENTRY-STRING además de indexarlo.

   El comando ‘\index’ escribe la información de indexación en el
archivo ‘ROOT-NAME.idx’.  Específicamente, escribe texto del comando
‘\indexentry{INDEX-ENTRY-STRING}{PAGE-NUM}’, donde PAGE-NUM es el valor
del contador ‘\thepage’.  Alguna ocasión, cuando el comando
‘\printindex’ se confunde, debes eliminar este archivo para comenzar con
una pizarra nueva.

   Si omites la llave de cierre de un comando ‘\index’ entonces obtienes
un mensaje como este.

     ¿Argumento fugitivo?  {Ackermann!function
     !  ! El párrafo terminó antes de que \@wrindex se completara.

25.2.3 ‘makeindex’
------------------

Sinopsis, una de:

     makeindex FILENAME
     makeindex -s STYLE-FILE FILENAME
     makeindex OPTIONS FILENAME0 ...

   Ordenar y procesar la información del índice en el archivo auxiliar
FILENAME.  Este es un programa de línea de comandos.  Se necesita uno o
más archivos de índice sin procesar, archivos ‘FILENAME.idx’ y produce
el archivo de índice real, el archivo ‘FILENAME.ind’ que ingresa
‘\printindex’ (see \printindex).

   La primera forma del comando es suficiente para muchos usos, La
segunda permite formatear el índice usando un “archivo de estilo de
índice”, un archivo ‘.isty’.  La tercera forma es la más general; ve la
documentación completa en CTAN.

   Este es un simple archivo ‘.isty’.

     % book.isty
     %   $ makeindex -s book.isty -p odd book.idx
     % crea el índice como book.ind, comenzando en una página impar.
     preamble
     "\\pagestyle{empty}
     \\small
     \\begin{theindex}
     \\thispagestyle{empty}"

     postamble
     "\n
     \\end{theindex}"

   La descripción aquí cubre solo algunos de los posibles formatos de
índice en STYLE-FILE.  Para obtener una lista completa, consulta la
documentación en CTAN.

   Un archivo de estilo consta de una lista de pares: SPECIFIER y
ATTRIBUTE.  Estos pueden aparecer en el archivo en cualquier orden.
Todos los ATTRIBUTEs son cadenas, excepto donde se indique.  Las cadenas
son entre comillas dobles, ‘"’ y la longitud máxima de una cadena tiene
144 caracteres.  La ‘\n’ es para una nueva línea y ‘\t’ es para una
tabulación.  Las barras invertidas se escapan con otra barra invertida,
‘\\’.  Si una línea comienza con un signo de porcentaje, ‘%’, entonces
es un comentario.

‘preamble’
     Preámbulo del archivo de índice de salida.  Define el contexto en
     el que se encuentra el índice formateado.  Predeterminado:
     ‘"\\begin{theindex}\n"’.

‘postamble’
     Postámbulo del archivo de salida del índice Predeterminado:
     ‘"\n\n\\end{theindex}\n"’.

‘group_skip’
     Tradicionalmente, los elementos del índice se dividen en grupos,
     generalmente un grupo para entradas que comienzan con la letra ‘a’,
     etc.  Este especificador da lo que se inserta cuando comienza un
     nuevo grupo.  Predeterminado: ‘"\n\n \\indexspace\n"’
     (‘\indexspace’ es un comando que inserta una longitud elástica, de
     manera predeterminada es ‘10pt plus5pt minus3pt’).

‘lethead_flag’
     un entero.  Rige lo que se inserta para un nuevo grupo o letra.  Si
     es 0 (que es el valor predeterminado) entonces aparte de
     ‘group_skip’ nada se insertará antes del grupo.  Si es positivo
     entonces en una nueva letra el ‘lethead_prefix’ y ‘lethead_suffix’
     serán insertada, con esa letra en mayúsculas entre ellas.  Si es
     negativo entonces lo que se insertará es la letra en minúsculas.
     El valor predeterminado es 0.

‘lethead_prefix’
     Si un nuevo grupo comienza con una letra diferente, entonces este
     es el prefijo insertado antes de la nueva letra del encabezado.
     Predeterminado: ‘""’

‘lethead_suffix’
     Si un grupo comienza con una letra diferente, entonces este es el
     sufijo insertado después del nuevo encabezado de carta.
     Predeterminado: ‘""’.

‘item_0’
     Lo que se pone entre dos elementos level 0.  Predeterminado: ‘"\n
     \\item "’.

‘item_1’
     Colocar entre dos elementos level 1.  Predeterminado: ‘"\n
     \\subitem "’.

‘item_2’
     Coloca entre dos elementos level 2.  Predeterminado: ‘"\n
     \\subsubitem "’.

‘item_01’
     Lo que se coloca entre un elemento level 0 y un elemento level 1.
     Predeterminado: ‘"\n \\subitem "’.

‘item_x1’
     Que se coloca entre un elemento level 0 y un elemento level 1 en el
     caso de que el elemento level 0 no tenga ningún número de página
     (como en ‘\index{aaa|see{bbb}}’).  Predeterminado: ‘"\n \\subitem
     "’.

‘item_12’
     Lo que se coloca entre un elemento level 1 y un elemento level 2.
     Predeterminado: ‘"\n \\subsubitem "’.

‘item_x2’
     Que se pone entre un elemento level 1 y un elemento level 2, si el
     level 1 elemento no tiene números de página.  Predeterminado: ‘"\n
     \\subsubitem "’.

‘delim_0’
     Delimitador puesto entre una clave level 0 y su primer número de
     página.  Predeterminado: una coma seguida de un espacio en blanco,
     ‘", "’.

‘delim_1’
     Delimitador puesto entre una clave level 1 y su primer número de
     página.  Predeterminado: una coma seguida de un espacio en blanco,
     ‘", "’.

‘delim_2’
     Delimitador entre una clave level 2 y su primer número de página.
     Predeterminado: una coma seguida de un espacio en blanco, ‘", "’.

‘delim_n’
     Delimitador entre dos números de página para la misma clave (en
     cualquier nivel).  Predeterminado: una coma seguida de un espacio
     en blanco, ‘", "’.

‘delim_r’
     Lo que se coloca entre los números de página inicial y final de un
     rango.  Predeterminado: ‘"--"’.

‘line_max’
     Un entero.  Longitud máxima de la línea de una entrada de índice en
     la salida, más allá de la cual la línea se envuelve.
     Predeterminado: ‘72’.

‘indent_space’
     Lo que se inserta al comienzo de una línea envuelta.
     Predeterminado: ‘"\t\t"’.

‘indent_length’
     Un número.  La longitud de la sangría de la línea envuelta.  El
     valor predefinido ‘indent_space’ son dos tabulaciones y cada
     tabulación tiene ocho espacios, por lo que el el valor
     predeterminado aquí es ‘16’.

‘page_precedence’
     Un documento puede tener páginas numeradas de diferentes maneras.
     Por ejemplo, un libro puede tener las primeras páginas numeradas en
     minúsculas romanas mientras que la página principal de la materia
     están en árabe.  Esta cadena especifica el orden en que aparecerán
     en el índice.  El comando ‘makeindex’ admite cinco tipos diferentes
     de números: minúsculas romanas ‘r’ y numérico o árabe ‘n’ y
     minúsculas alfabético ‘a’ y mayúsculas ‘R’ romano y ‘A’ alfabético
     en mayúsculas.  Predeterminado: ‘"rnaRA"’.

   Hay una serie de otros programas que hacen el trabajo que ‘makeindex’
hace.  Uno es ‘xindy’ (<https://ctan.org/pkg/xindy>), que hace
internacionalización y puede procesar índices para documentos marcados
usando LaTeX y un número de otros idiomas.  Está escrito en Lisp,
altamente configurable, tanto en términos de marcado y en términos del
orden de clasificación del texto, como descrito en su documentación.

   Un programa de indexación más reciente compatible con Unicode es
‘xindex’, escrito en Lua (<https://ctan.org/pkg/xindex>).

25.2.4 ‘\printindex’
--------------------

Sinopsis:

     \printindex

   Coloca el índice en la salida.

   Para obtener un índice, primero debes incluir
‘\usepackage{makeidx}\makeindex’ en el preámbulo del documento y compila
el documento, entonces ejecuta el comando del sistema ‘makeindex’, y
luego vuelve a compilar el documento.  See Índices, para más
discusión y un ejemplo del uso de ‘\printindex’.

25.3 Glosarios
==============

Sinopsis:

     \usepackage{glossaries} \makeglossaries
       ...
     \newglossaryentry{LABEL}{SETTINGS}
       ...
     \gls{LABEL}.
       ...
     \printglossaries

   El paquete ‘glossaries’ te permite crear glosarios, incluidos
múltiples glosarios, así como listas de siglas.

   Para obtener el resultado de este ejemplo, compila el documento (por
ejemplo con ‘nombre de archivo pdflatex’), entonces ejecuta el comando
de línea de comandos ‘makeglossaries filename’ y luego vuelve a compilar
el documento.

     \documentclass{...}
     \usepackage{glossaries} \makeglossaries
     \newglossaryentry{tm}{%
       name={Máquina de Turing},

       description={Un  modelo de  máquina  hace cálculos.   El modelo  es
                     sencillo  pero  puede   calcular  cualquier  cosa  que
                     cualquier dispositivo existente pueda calcular.  Es el
                     modelo estándar utilizado en Informática.},
        }
     \begin{document}
     Todo comienza con la definición de \gls{tm}.
       ...
     \printglossaries
     \end{document}

Eso da dos cosas.  En el texto principal genera ‘... definición de una
máquina de Turing’.  Además, en una unidad seccional separada encabezada
‘Glossary’ aparece una lista de descripción.  En letra negrita dice
‘Máquina de Turing’ y el resto del artículo dice en tipo normal ‘Un
modelo de máquina ... Informática’.

   El comando ‘\makeglossary’ abre el archivo que contendrá la
información de entrada, ‘ROOT-FILE.glo’.  Pon el comando
‘\printglossaries’ donde deseas que aparezcan los glosarios en tu
documento.

   El paquete ‘glossaries’ es muy poderoso.  Por ejemplo, además los
comandos ‘\newglossaryentry’ y ‘\gls’, hay comandos similares para una
lista de acrónimos.  Consulta la documentación del paquete en CTAN.

25.3.1 ‘\newglossaryentry’
--------------------------

Sinopsis, una de:

     \newglossaryentry{LABEL}
     {
       name={NAME},
       description={DESCRIPTION},
       OTRAS OPCIONES, ...
     }

   o

     \longnewglossaryentry{LABEL}
     {
       name={NAME},
       OTHER OPTIONS ...,
     }
     {DESCRIPTION}

   Declara una nueva entrada para un glosario.  LABEL debe ser único
para el documento.  Los ajustes asociados a la etiqueta son pares:
‘KEY=VALUE’.

   Esto pone el símbolo en negrita de la pizarra para los números reales
ℝ, en el glosario.

     \newglossaryentry{R}
     {
       name={\ensuremath{\mathbb{R}}},
       description={los números reales},
     }

   Usa la segunda forma del comando si DESCRIPTION abarca más de un
párrafo.

   Para obtener una lista completa de KEY, consulta la documentación del
paquete en CTAN, pero aquí hay algunos.

‘name’
     (Obligatorio).  La palabra, frase o símbolo que estás definiendo.

‘description’
     (Obligatorio).  La descripción que aparecerá en el glosario.  Si
     esto tiene más de un párrafo, entonces debe usar la segunda forma
     del comando dado en la sinopsis.

‘plural’
     La forma plural de NAME.  Refiérete a la forma plural usando
     ‘\glspl’ o ‘\Glspl’ (see \gls).

‘sort’
     Cómo colocar esta entrada en la lista de entradas que contiene el
     glosario.

‘symbol’
     Un símbolo, como un símbolo matemático, además del nombre.

25.3.2 ‘\gls’
-------------

Sinopsis, una de:

     \gls{LABEL}
     \glspl{LABEL}
     \Gls{LABEL}
     \Glspl{LABEL}

   Consulta una entrada del glosario.  Las entradas se declaran con
‘\newglossaryentry’ (see \newglossaryentry).

   Este

     \newglossaryentry{N}{%
       name={los números naturales},
       description={Los números $0$, $1$, $2$, $\ldots$\@},
       symbol={\ensuremath{\mathbb{N}}},
       }
       ...
     Considera \gls{N}.

da la salida ‘Considera los números naturales’.

   La segunda forma de comando ‘\glspl{LABEL}’ produce el plural de NAME
(de manera predeterminada intenta agregar una ‘s’).  La tercera forma
escribe en mayúscula la primera letra de NAME, al igual que la cuarta
forma, que también toma el plural.

26 Cartas
*********

Sinopsis:

     \documentclass{letter}
     \address{DIRECCIÓN DEL REMITENTE} % dirección de retorno
     \signature{NOMBRE DEL REMITENTE}
     \begin{document}
     \begin{letter}{DIRECCIÓN DEL DESTINATARIO}
     \opening{SALUTATION}
        CUERPO DE LA CARTA
     \closing{TEXTO DE CIERRE}
     \end{letter}
         ...
     \end{document}

   Producir una o más cartas.

   Cada carta está en un entorno ‘letter’ separado, cuyo argumento
RECIPIENT ADDRESS a menudo contiene varias líneas separadas por una
barra invertida doble, (‘\\’).  Por ejemplo, podrías tener:

      \begin{letter}{Ninon de l'Enclos \\
                     l'h\^otel Sagonne}
        ...
      \end{letter}

   El inicio del entorno ‘letter’ restablece el número de página a 1, y
la nota al pie al número 1 también.

   El SENDER ADDRESS y SENDER NAME son comunes a todas las cartas, ya
sea que haya una o más, por lo que es mejor ponerlas en el preámbulo.
Al igual que con la dirección del destinatario, a menudo SENDER ADDRESS
contiene varias líneas separadas por una doble barra invertida (‘\\’).
LaTeX pondrá el SENDER NAME bajo el cerramiento, tras un espacio
vertical para la tradicional firma manuscrita.

   Cada cuerpo del entorno ‘letter’ comienza con un comando ‘\opening’
requerido como ‘\opening{Estimada señora o señor:}’.  El texto LETTER
BODY LaTeX es normal por lo que puede contener todo, desde listas
enumeradas hasta matemáticas mostradas, excepto que los comandos como
‘\chapter’ que no tienen sentido en una carta se desactivan.  Cada
cuerpo de entorno ‘letter’ normalmente termina con un comando ‘\closing’
como ‘\closing{Tuyo,}’.

   Puede haber material adicional después del ‘\closing’.  Puedes decir
quien está recibiendo una copia de la carta con un comando como ‘\cc{El
Jefe \\ el jefe de jefes}’.  Hay un comando ‘\encl’ similar para una
lista de material adjunto.  Y puedes agregar una posdata con ‘\ps’.

   El valor predeterminado de LaTeX es sangrar el nombre del remitente y
el cierre encima de él por una longitud de ‘\longindentation’.  De
manera predeterminada esto es ‘0.5\textwidth’.  Para que queden
alineados a la izquierda, coloca ‘\setlength{\longindentation}{0em}’ en
tu preámbulo.

   Para establecer una fecha fija, usa algo como
‘\renewcommand{\today}{1958-Oct-12}’.  Si pones en tu preámbulo entonces
se aplicará a todas las cartas.

   Este ejemplo muestra solo un entorno ‘letter’.  Las tres lineas
marcadas como opcionales normalmente se omiten.

     \documentclass{letter}
     \address{Calle del remitente \\ Ciudad del remitente}
     \signature{Nombre del remitente \\ Cargo del remitente}
     % opcionales: \location{Buzón 13}
     % optional: \telephone{(102) 555-0101}
     \begin{document}
     \begin{letter}{Nombre del destinatario \\ Dirección del destinatario}
     \opening{Señor:}
     % opcional: \thispagestyle{firstpage}
     No estoy interesado en entrar en un acuerdo comercial con usted.
     \closing{Sus más humildes, etc.,}
     \end{letter}
     \end{document}

   Estos comandos se usan con la clase ‘letter’.

26.1 ‘\address’
===============

Sinopsis:

     \address{DIRECCIÓN DEL REMITENTE}

   Especifica la dirección del remitente, tal como aparece en la carta y
en el sobre.  Separa varias líneas en DIRECCIÓN DEL REMITENTE con una
barra invertida doble ‘\\’.

   Debido a que se puede aplicar a varias cartas, esta declaración a
menudo se pone en el preámbulo.  Sin embargo, puede ir en cualquier
lugar, incluso dentro de un entorno ‘letter’ individual.

   Este comando es opcional: si no lo usas, la carta se formatea con un
espacio en blanco en la parte superior, para copiar en papel preimpreso
con membrete.  Si usas la declaración ‘\address’ entonces tienes el
formato de una carta personal.

   Aquí tienes un ejemplo:

     \address{Stephen Maturin \\
              Las uvas de Savoy}

26.2 ‘\cc’
==========

Sinopsis:

     \cc{NAME0 \\
          ... }

   Produce una lista de nombres a los que se enviaron copias de la
carta.  Este comando es opcional.  Si aparece, normalmente viene después
de ‘\closing’.  Pone los nombres en diferentes líneas separándolos con
una barra invertida doble, ‘\\’, como en:

     \cc{Presidente \\
         Vicepresidente}

26.3 ‘\closing’
===============

Sinopsis:

     \closing{TEXT}

   Produce el cierre de la carta.  Esto es opcional, pero habitual.
Aparece al final de una carta, encima de una firma manuscrita.  Por
ejemplo:

     \closing{Respetuosamente,}

26.4 ‘\encl’
============

Sinopsis:

     \encl{PRIMER OBJETO ENCERRADO \\
             ... }

   Produce una lista de las cosas incluidas en la carta.  Este comando
es opcional; cuando se usa, generalmente se coloca después de
‘\closing’.  Separa varias líneas con una barra invertida doble, ‘\\’.

     \encl{License \\
           Passport}

26.5 ‘\location’
================

Sinopsis:

     \location{TEXT}

   El TEXT aparece centrado en la parte inferior de la página.  Sólo
aparece si el estilo de la página es ‘firstpage’.

26.6 ‘\makelabels’
==================

Sinopsis:

     \makelabels   % en el preámbulo

   Opcional, para un documento que contiene entornos ‘letter’.  Si
simplemente pones ‘\makelabels’ en el preámbulo y luego, al final del
documento, obtendrás una hoja con etiquetas para todos los
destinatarios, una para cada entorno letter, que puedes copiar en una
hoja despegable de etiquetas de dirección.

   Personaliza las etiquetas redefiniendo los comandos ‘\startlabels’,
‘\mlabel’ y ‘\returnaddress’ (y quizás ‘\name’) en el preámbulo.  El
comando ‘\startlabels’ establece el ancho, alto, número de columnas,
etc., de la página en la que se imprimen las etiquetas.  El comando
‘\mlabel{RETURN ADDRESS}{RECIPIENT ADDRESS}’ produce las dos etiquetas
(o una, si eliges ignorar la RETURN ADDRESS) para cada entorno LETTER.
El primer argumento, RETURN ADDRESS, es el valor devuelto por la macro
‘\returnaddress’.  El segundo argumento, RECIPIENT ADDRESS, es el valor
pasado en el argumento al entorno ‘letter’.  Predeterminado ‘\mlabel’
ignora el primer argumento, el RETURN ADDRESS, provocando el
comportamiento predeterminado descrito en el párrafo anterior.

   Esto ilustra la personalización.  Su salida incluye una página con
dos columnas con dos etiquetas cada una.

     \documentclass{letter}
     \renewcommand*{\returnaddress}{Fred McGuilicuddy \\
                                    Oshkosh, Mineola 12305}
     \newcommand*\originalMlabel{}
     \let\originalMlabel\mlabel
     \def\mlabel#1#2{\originalMlabel{}{#1}\originalMlabel{}{#2}}
     \makelabels
       ...
     \begin{document}
     \begin{letter}{A Einstein \\
                    112 Mercer Street \\
                    Princeton, New Jersey, USA 08540}
       ...
     \end{letter}
     \begin{letter}{K G\"odel \\
                    145 Linden Lane \\
                    Princeton, New Jersey, USA 08540}
       ...
     \end{letter}
     \end{document}

La primera columna contiene la dirección del remitente dos veces.  La
segunda columna contiene la dirección de cada destinatario.

   El paquete ‘envlab’ facilita el formateo de las etiquetas, con
tamaños estándar ya proporcionados.  Las líneas del preámbulo
‘\usepackage[personalenvelope]{envlab}’ y ‘\makelabels’ son todo lo que
necesitas para imprimir sobres.

26.7 ‘\name’
============

Sinopsis:

     \name{NAME}

   Opcional.  Nombre del remitente, utilizado para imprimir juntos en el
sobre con la dirección del remitente.

26.8 ‘\opening’
===============

Sinopsis:

     \opening{SALUTATION}

   Obligatorio.  Requerido.  Sigue el ‘\begin{letter}{...}’.  El
argumento SALUTATION es obligatorio.  Por ejemplo:

     \opening{Estimado John:}

26.9 ‘\ps’
==========

Sinopsis:

     \ps{TEXT}

   Agrega una posdata.  Este comando es opcional y generalmente se usa
después de ‘\closing’.

     \ps{P.D. Después de haber leído esta carta, quémala. O cómetela.}

26.10 ‘\signature’
==================

Sinopsis:

     \signature{PRIMERA LÍNEA \\
                 ... }

   El nombre del remitente.  Este comando es opcional, aunque su
inclusión es habitual.

   El texto del argumento aparece al final de la carta, después del
cierre.  LaTeX deja algo de espacio vertical para una firma escrita a
mano.  Separa varias líneas con una doble barra invertida, ‘\\’.  Por
ejemplo:

     \signature{J Fred Muggs \\
                Casa Blanca}

   Valor predeterminado de LaTeX para el espacio vertical del texto
‘\closing’ hasta el texto ‘\signature’ es ‘6\medskipamount’, que es seis
veces ‘\medskipamount’ (donde ‘\medskipamount’ es igual a un ‘\parskip’,
que a su vez se define de manera predeterminada aquí para 0.7em).

   Este comando suele estar en el preámbulo, para aplicar a todas las
letras en el documento.  Para que se aplique a una sola carta, colócala
dentro de un entorno ‘letter’ y antes del ‘\closing’.

   Puedes incluir un gráfico en la firma como aquí.

     \signature{\vspace{-6\medskipamount}\includegraphics{sig.png}\\
                  Mi nombre}

Para esto debes poner ‘\usepackage{graphicx}’ en el preámbulo (see
Gráficos).

26.11 ‘\telephone’
==================

Sinopsis:

     \telephone{NUMBER}

   El número de teléfono del remitente.  Esto es típicamente en el
preámbulo, donde se aplica a todas las cartas.  Esto solo aparece si
‘firstpage’ se selecciona el estilo de página.  Si es así, aparece en la
parte inferior derecha de la página.

27 Entrada/salida
*****************

LaTeX usa la capacidad de escribir en un archivo y luego volver a leerlo
para crear componentes de documentos como una tabla de contenido o un
índice.  También puedes leer un archivo que escribieron otros programas,
o escribir un archivo para que otros lo lean.  Te puedes comunicar con
los usuarios a través de la terminal.  Y puedes emitir instrucciones
para el sistema operativo.

27.1 ‘\openin’ y ‘\openout’
===========================

Sinopsis:

     \openin NUMBER=FILENAME

   o:

     \openout NUMBER=FILENAME

   Abre un archivo para leer material o para escribirlo.  En la mayoría
de los motores, el NUMBER debe estar entre 0 y 15, como en ‘\openin3’;
en LuaLaTeX, NUMBER puede estar entre 0 y 127.

   Aquí TeX abre el archivo ‘presidents.tex’ para lectura.

     \newread\presidentsfile
     \openin\presidentsfile=presidentes
     \typeout{presidentsfile es \el\presidentsfile}
     \read\presidentsfile a\presidentline
     \typeout{\presidentline}

El comando ‘\newread’ asigna números de flujo de entrada desde 0 a 15
(también hay un ‘\newwrite’).  El ‘\presidentsfile’ es más memorable,
pero bajo el capó sigue siendo un número; el primer ‘\typeout’ da algo
como ‘presidentsfile es 1’.  Además, ‘\newread’ realiza un seguimiento
de la asignación de modo que si usas demasiados, obtendrás un error como
‘! No hay espacio para un nuevo \read’.  El segundo ‘\typeout’ da la
primera línea del archivo, algo así como ‘1 Washington, George’.

   Normalmente, TeX no intentará abrir el archivo hasta enviar la página
siguiente.  Para cambiar esto, usa ‘\immediate\openin NUMBER=FILENAME’ o
‘\immediate\openout NUMBER=FILENAME’.

   Cierra archivos con ‘\closein NUMBER’ y ‘\closeout NUMBER’.

   La forma en que LaTeX maneja los nombres de archivo varía entre las
distribuciones e incluso puede variar entre las versiones de una
distribución.  Si el archivo no tiene una extensión entonces TeX
agregará un ‘.tex’.  Esto crea ‘presidents.tex’, escribe una línea y la
cierra.

     \newwrite\presidentsfile
     \openout\presidentsfile=presidentes
     \write\presidentsfile{1 Washington, George}
     \closeout\presidentsfile

Pero los nombres de archivo con un punto pueden causar problemas: si TeX
encuentra un FILENAME de ‘presidents.dat’ podría buscar primero
‘presidents.dat.tex’ y posteriormente ‘presidents.dat’, o podría hacer
lo contrario.  La documentación de su distribución debe decir más, y si
encuentras algo que funcione para ti, entonces eres bueno, pero para
asegurar una portabilidad completa lo mejor es utilizar nombres de
archivo que contiene solo las veintiséis letras ASCII (no distingue
entre mayúsculas y minúsculas) y los diez dígitos, junto con el guión
bajo y el guión, y en particular sin punto ni espacio.

   Para ‘\openin’, si TeX no puede encontrar el archivo, entonces no da
un error.  Simplemente considera que la transmisión no está abierta
(prueba esto con ‘\ifeof’; un recurso es el comando
‘\InputIfFileExists’, see Comandos class y package).  Si intentas
usar el mismo número dos veces, LaTeX no te dará un error.  Si intentas
usar un número incorrecto y recibe un mensaje de error como ‘! Número
incorrecto (16). <para leer de nuevo> = l.30 \openin16=test.jh’.

27.2 ‘\read’
============

Sinopsis:

     \read NUMBER toMACRO

   Hace que el comando MACRO contenga la siguiente línea de entrada de
texto que transmite NUMBER, como en ‘\read5 to\data’.

   Esto abre el archivo ‘email.tex’ para lectura, pone el contenido de
la primera línea en el comando ‘\email’ y luego cierra el archivo.

     \newread\recipientfile
     \openin\recipientfile=email
     \read\recipientfile to\email
     \typeout{Email address: \email}
     \closein\recipientfile

   Si NUMBER está fuera del rango de 0 a 15 o si no hay archivo de ese
número abierto, o si el archivo ha finalizado, entonces ‘\read’ tomará
la entrada de la terminal (o saldrá si la interacción no está permitida,
por ejemplo, ‘\nonstopmode’; see modos de interacción).  (Sin
embargo, la forma natural en LaTeX de tomar entradas desde la terminal
es ‘\typein’ (see \typein).

   Para leer un archivo completo como fuente LaTeX adicional, usa
‘\input’ (see \input) o ‘\include’ (see \include e \includeonly).

   Una razón común para querer leer de un archivo de datos es realizar
combinaciones de correspondencia.  CTAN tiene varios paquetes para eso;
uno es ‘datatool’.

27.3 ‘\typein’
==============

Sinopsis, una de:

     \typein{PROMPT-MSG}
     \typein[CMD]{PROMPT-MSG}

   Imprime PROMPT-MSG en la terminal y hace que LaTeX se detenga y
espere a que escribas una línea de entrada.  Esta línea de entrada
termina cuando presiones la tecla de retorno.

   Por ejemplo, este

     Mientras  viva,   nunca  olvidaré  \typein{Ingresar  el   nombre  del
                                                 estudiante:}

junto con esta interacción de la línea de comandos

     Ingresa el nombre del estudiante:

     \@typein=Aphra Behn

da la salida ‘... nunca olvides a Aphra Behn’.

   La primera versión del comando, ‘\typein{PROMPT-MSG}’, provoca la
entrada que escribiste para ser procesada como si se hubiera incluido en
el archivo de entrada en lugar del comando ‘\typein’

   En la segunda versión del comando, el argumento opcional ‘CMD’ debe
ser un nombre de comando, es decir, debe comenzar con una barra
invertida, \.  Este nombre de comando se define o redefine para ser la
entrada que escribiste.  Por ejemplo, este

     \typein[\student]{Ingresa el nombre del estudiante:}
     \typeout{Recomendación para \student .}

da esta salida en la línea de comandos,

     Ingresa el nombre del estudiante:

     \student=John Dee
     Recomendación para John Dee.

donde el usuario ha ingresado ‘John Dee.’

27.4 ‘\typeout’
===============

Sinopsis:

     \typeout{MSG}

   Imprime ‘msg’ en la terminal y en el archivo ‘log’.

   Este

     \newcommand{\student}{John Dee}
     \typeout{Recomendación para \student .}

genera ‘Recomendación para John Dee’.  Como lo que pasa aquí con
‘\student’, comandos que se definen con ‘\newcommand’ o ‘\renewcommand’
(entre otros) se reemplazan por sus definiciones antes de ser impresos.

   Las reglas habituales de LaTeX para tratar múltiples espacios como un
solo espacio e ignorar los espacios después de un nombre de comando se
aplica a ‘msg’.  Utiliza el comando ‘\space’ para obtener un solo
espacio, independiente de los espacios circundantes.  Usa ‘^^J’ para
obtener una nueva línea.  Obtener un carácter de porcentaje con ‘\csname
@percentchar\endcsname’.

   Este comando puede ser útil para una depuración simple, como aquí:

     \newlength{\jhlength}
     \setlength{\jhlength}{5pt}
     \typeout{La longitud es \la\jhlength.}

produce en la línea de comandos ‘La longitud es 5.0pt’.

27.5 ‘\write’
=============

Sinopsis:

     \write NUMBER{STRING}

   Escribe STRING en el archivo de registro, en la terminal o en un
archivo abierto por ‘\openout’.  Por ejemplo, ‘\write6’ escribe en texto
corriente el número 6.

   Si aparece lo siguiente en ‘BASEFILE.tex’ entonces se abre
‘BASEFILE.jh’, escribe ‘Hello World!’ y una nueva línea y cierra ese
archivo.

     \newwrite\myfile
     \immediate\openout\myfile=\jobname.jh  % \jobname is root file basename
     ...
     \immediate\write\myfile{Hello world!}
     ...
     \immediate\closeout\myfile

El ‘\newwrite’ asigna un número de flujo, dándole un valor de nombre
simbólico para hacer la vida más fácil, para que
‘stream\newwrite\myfile\the\myfile’ produzca algo como ‘stream 3’.
Entonces ‘\openout’ asocia el número de flujo con el nombre de archivo
dado.  TeX finalmente ejecutó ‘\write3’ que pone la cadena en el
archivo.

   Por lo general, NUMBER está entre 0 y 15, porque normalmente los
autores de LaTeX siguen el ejemplo anterior y se asigna el número por el
sistema.  Si NUMBER está fuera del rango de 0 a 15 o si no está asociado
con un archivo abierto, LaTeX escribe STRING al archivo de registro.  Si
NUMBER es positivo entonces además LaTeX escribe STRING en la terminal.

   Por lo tanto, ‘test \write-1{Hello World!}’ pone ‘Hello World!’
seguido de una nueva línea en el archivo de registro.  (Esto es lo que
dice el ‘\wlog’ el comando lo hace; see \wlog).  Y ‘\write100{Hola
Mundo!}’ pone lo mismo en el archivo de registro pero también pone
‘Hello World!’ seguido de una nueva línea en la salida del terminal.
(Pero 16, 17 y 18 son especial como NUMBER; ve abajo).

   En LuaTeX, en lugar de 16 flujos de salida, hay 256 (see Motores TeX).

   Usa ‘\write\@auxout{STRING}’ para escribir en el actual ‘.aux’, que
está asociado con el archivo raíz o con el archivo de inclusión actual;
y usa ‘\write\@mainaux{STRING}’ para escribir en el ‘.aux’ principal.
Estos nombres simbólicos están definidos por LaTeX.

   De manera predeterminada LaTeX no escribe STRING a la derecha del
arreglo correcto.  Esto se debe a que, por ejemplo, puedes necesitar
‘\write’ para guardar el número de página actual, pero cuando TeX
encuentra un ‘\write’ por lo general no sabe cuál es el número de
página, ya que aún no ha hecho el salto de página.  Entonces, usas
‘\write’ en uno de tres contextos:

     \immediate\write\@auxout{STRING}      %1
     \write\@auxout{STRING}                %2
     \protected@write\@auxout{}{STRING} %3

  1. Con el primero, LaTeX escribe STRING en el archivo inmediatamente.
     Cualquier macro en STRING está completamente expandida (al igual
     que en ‘\edef’), por lo que para evitar la expansión debes usar
     ‘\noexpand’, ‘toks’, etc., excepto que debes usar ‘#’ en lugar de
     ‘##’).

  2. Con el segundo, STRING se almacena en la lista actual de cosas
     (como un elemento TeX “whatsit”) y se mantiene hasta que se envía
     la página y así mismo las macros se contraen hasta ‘\shipout’.  En
     ‘\shipout’, STRING está completamente expandido.

  3. El tercer, ‘\protected@write’, es como el segundo excepto que
     puedes usar ‘\protect’ para evitar la expansión.  El primer
     argumento extra te permite insertar localmente definiciones
     adicionales para hacer más macros protegidas o tener alguna otra
     definición especial para escribir.

   Como ejemplo simple de expansión con ‘\write’, STRING aquí contiene
una secuencia de control ‘\triplex’ que hemos definido como el texto
‘XYZ’:

     \newwrite\jhfile
     \openout\jhfile=test.jh
     \newcommand{\triplex}{XYZ}
     \write\jhfile{test \triplex test}

Esto da como resultado el archivo ‘test.jh’ que contiene el texto ‘test
XYZtest’ seguido de una nueva línea.

   Los casos en los que NUMBER es 16, 17 o 18 son especiales.  Porque el
comportamiento de ‘\write’ cuando NUMBER está fuera del rango de 0 a 15
descrito anteriormente, en Plain TeX ‘\write16’ y ‘\write17’ a veces se
usaba para escribir en el archivo de registro y el terminal; sin
embargo, en LaTeX, la forma natural de hacerlo es con ‘\typeout’ (see
\typeout).  El comando ‘\write18’ es aún más especial; los sistemas
TeX modernos lo usan para dar órdenes al sistema operativo (see
\write18).

   Normalmente, ‘\write’ genera una sola línea.  Puedes incluir una
nueva línea con ‘^^J’.  Por lo tanto, esto produce dos líneas en el
archivo de registro.:

     \wlog{Las  líneas paralelas  tienen mucho  en común.^^JPero  nunca se
     encuentran.}

   Un caso común donde los autores necesitan escribir su propio archivo
es para respuestas a ejercicios, u otra situación en la que quieras
escribir textualmente, sin expandir las macros.  CTAN tiene una serie de
paquetes para esto; uno es ‘answers’.

27.5.1 ‘\write’ y seguridad
---------------------------

La capacidad de escribir archivos plantea problemas de seguridad.  Si
compilaste un descargó el archivo LaTeX y sobrescribió su archivo de
contraseña, entonces estarías justificadamente preocupado.

   Por lo tanto, de manera predeterminada, los sistemas TeX solo te
permiten abrir archivos para escritura que están en el directorio actual
o directorio de salida, si se especifica (see directorio de salida),
o en un subdirectorio de aquellos.  Entonces, este código

     \newwrite\jhfile
     \openout\jhfile=../test.jh

da un error como:
     No escribir en ../test.jh (openout_any = p).
     ! No puedes escribir en el archivo `../test.jh'

   Puedes obtener un error de este tipo cuando usas comandos como
‘\include{../filename}’ porque LaTeX intentará abrir ‘../filename.aux’.
La solución más sencilla es poner los archivos incluidos en el mismo
directorio que el archivo raíz, o en subdirectorios.

27.5.2 ‘\message’
-----------------

Sinopsis:

     \message{STRING}

   Escribe STRING en el archivo de registro y en la terminal.

   Por lo general, los autores de LaTeX usan ‘\typeout’ (see
\typeout).  Eso te permite usar ‘\protect’ en cualquier comando frágil
en STRING (see \protect).  Pero ‘\typeout’ siempre inserta una nueva
línea al final de STRING mientras que ‘\message’ no lo hace, por lo que
este último puede ser útil.

   Con este cuerpo del documento de ejemplo.

     antes\message{Uno Dos}\message{Tres}\message{Cuatro^^JI}
     \message{declarar una guerra de pulgares.}Después

bajo algunas circunstancias (ve más abajo) LaTeX escribe lo siguiente
para tanto la terminal como el archivo de registro.

     Uno Dos Tres Cuatro
     Declaro una guerra de pulgares.

El ‘^^J’ produce una nueva línea.  Además, en el documento de salida,
entre ‘before’ y ‘After’ será un solo espacio (del final de la línea que
sigue a ‘I}’).

   Si bien ‘\message’ te permite tener más control sobre el formato, un
inconveniente es que LaTeX puede estropear ese formato porque inserta
saltos de línea dependiendo de lo que ya has escrito.  Contrasta este
cuerpo del documento, donde ‘Two’ se ha movido, al que se indica arriba.

     antes de\message{Uno}\message{Dos Tres}\message{Cuatro^^JI}
     \message{declara una guerra de pulgares.}Después

   Esto puede suceder: cuando LaTeX envía los mensajes a la terminal,
ahora el mensaje con ‘Uno’ es más corto y cabe al final de la línea de
salida en la terminal, y entonces LaTeX rompe la línea entre él y ‘Dos
Tres’.  Ese salto de línea también aparece en el archivo de registro.
Esta inserción de salto de línea puede depender, por ejemplo, de la
longitud de los nombres completos de las rutas de los archivos
incluidos.  Por lo tanto, producir líneas de una manera que es portátil
es difícil, probablemente requiera comenzando su mensaje al principio de
una línea.

27.5.3 ‘\wlog’
--------------

Sinopsis:

     \wlog{STRING}

   Escribe STRING en el archivo de registro.

     \wlog{¿Escuchaste sobre el matemático que odia los negativos?}
     \wlog{No se detendrá ante nada para evitarlo.}

   Por lo general, STRING aparece en una sola línea separada.  Usa ‘^^J’
para insertar una nueva línea.

     \wlog{Helvetica y Times Roman entran a un bar.}
     \wlog{El barman dice,^^JNo servimos tu tipo.}

27.5.4 ‘\write18’
-----------------

Sinopsis:

     \write18{SHELL_COMMAND}

   Emite un comando al shell del sistema operativo.  El sistema
operativo ejecuta el comando y la ejecución de LaTeX se bloquea hasta
que acabe.

   Esta secuencia (en Unix)

     \usepackage{graphicx}  % en el preámbulo
       ...
     \newcommand{\fignum}{1}
     \immediate\write18{cd pix && asy figure\fignum}
     \includegraphics{pix/figure\fignum.pdf}

ejecutará Asymptote (el programa ‘asy’) en ‘pix/figure1.asy’, para que
luego el documento se pueda leer en el gráfico resultante (see
\includegraphics).  Como cualquier ‘\write’, aquí LaTeX expande macros
en SHELL_COMMAND para que ‘\fignum’ sea reemplazado por ‘1’.

   Otro ejemplo es que puedes ejecutar automáticamente BibTeX al inicio
de cada ejecución de LaTeX (see Usar BibTeX) incluyendo
‘\immediate\write18{bibtex8 \jobname}’ como la primera línea del
archivo.  Ten en cuenta que ‘\jobname’ se expande al nombre base del
archivo raíz a menos que se pase la opción ‘--jobname’ en la línea de
comandos, en cuyo caso este es el argumento de la opción.

   A veces es necesario realizar un proceso de varios pasos para obtener
la información de eso que quieres.  Esto insertará en la entrada una
lista de todos los archivos PDF en el directorio actual (pero ve
‘texosquery’ a continuación):

     \immediate\write18{ls *.pdf > tmp.dat}
     \input{tmp.dat}

   El comportamiento estándar de cualquier ‘\write’ es esperar hasta que
una página sea enviada antes de expandir las macros o escribir en la
secuencia (see \write).  Pero a veces quieres que se haga ahora.
Para esto, usa ‘\immediate\write18{SHELL_COMMAND}’.

   Hay problemas de seguridad obvios al permitir comandos del sistema
dentro un archivo LaTeX.  Si descargas un archivo de la red y contiene
comandos para eliminar todos sus archivos, entonces no estarías
satisfecho.  La configuración estándar en las distribuciones modernas
desactiva el acceso completo al intérprete de comandos.  Lo puedes
activar, si estás seguro de que los comandos del intérprete son seguros,
compilando con ‘latex --enable-write18 FILENAME’ (see Opciones de la línea de comandos).
(La opción ‘--shell-escape’ es un sinónimo, en
TeX Live).

   En lugar del acceso completo al intérprete, las distribuciones
modernas por omisión una versión restringida que permite que funcionen
algunos comandos, como los que ejecuta Metafont para generar fuentes que
faltan, incluso si no usa la opción ‘enable-write18’.  De manera
predeterminada esta lista de commands permitidos es corto y presenta
solo los comandos que están bajo el control de los mantenedores de la
distribución (see Opciones de la línea de comandos).

   El texto SHELL_COMMAND siempre se pasa a ‘/bin/sh’ en sistemas
operativos similares a Unix y el intérprete de comandos de DOS ‘cmd.exe’
en Windows.  Cualquier intérprete diferente establecido por el usuario,
y la variable de entorno ‘SHELL’ se ignora.

   Si lo que necesitas es información del sistema, como el nombre del
sistema operativo, información local o contenido del directorio, echa un
vistazo al paquete ‘texosquery’, que proporciona una forma de interfaz
cómoda y segura para esto, a diferencia de los ejemplos anteriores que
usan el ‘\write18’ simple ‘\write18’: <https://ctan.org/pkg/texosquery>.

   LaTeX proporciona un paquete ‘shellesc’ encima del comando primitivo
‘\write18’.  Su propósito principal es proporcionar un comando
‘\ShellEscape’ que funciona de manera idéntica en todos los motores TeX;
LuaTeX intencionalmente no retuvo ‘\write18’ como una forma de invocar
un comando del intérprete, por lo que se necesita algún código
específico del motor.  El paquete ‘shellesc’ también proporciona un
comando ‘\DelayedShellEscape’, ejecutado a la hora de ‘\output’, por la
misma razón.

28 Interfaz de línea de comandos
********************************

Sinopsis (desde una línea de comandos de terminal):

     pdflatex OPTIONS ARGUMENT

   Ejecuta LaTeX en ARGUMENT.  En lugar de ‘pdflatex’ también puedes
usar (para salida PDF) ‘xelatex’ o ‘lualatex’, o (para salida DVI)
‘latex’ o ‘dvilualatex’, entre otros (see Motores TeX).

   Por ejemplo, esto ejecutará LaTeX en el archivo ‘thesis.tex’, creando
la salida ‘thesis.pdf’.

     pdflatex thesis

Ten en cuenta que ‘.tex’ es la extensión del nombre de archivo
predeterminada.

   pdfTeX es una extensión del programa TeX original, al igual que XeTeX
y LuaTeX (see Motores TeX).  Los dos primeros son completamente
retrocompatibles y el segundo, casi.  Quizás la nueva característica más
fundamental para los tres es que el TeX original produce su propio
formato DVI, mientras que los más nuevos pueden salir directamente a
PDF. Esto les permite aprovechar las funciones adicionales en PDF como
hipervínculos, compatibilidad con formatos de imagen modernos como JPG y
PNG y programas de visualización omnipresentes.  En resumen, si corres
‘pdflatex’ o ‘xelatex’ o ‘lualatex’ entonces obtendrás PDF de forma
predeterminada y tendrás acceso a todas sus modernas características.
Si ejecutas ‘latex’ o ‘dvilualatex’, obtendrás DVI. La descripción aquí
asume ‘pdflatex’.

   See Opciones de la línea de comandos, para una selección de las
más útiles opciones de la línea de comandos.  En cuanto a ARGUMENT, el
caso habitual es que no comienza con una barra invertida, por lo que el
sistema lo toma como el nombre de un archivo y compila ese archivo.  Si
ARGUMENT comienza con una barra invertida, el sistema lo interpretará
como una línea de entrada LaTeX, que se puede utilizar para efectos
especiales (see Entrada de la línea de comandos).

   Si no proporcionaste argumentos ni opciones, ‘pdflatex’ solicita
entrada desde la terminal.  Puedes escapar de esto ingresando ‘CTRL-D’.

   Si LaTeX encuentra un error en tu documento, de manera predeterminada
se detiene y te pregunta al respecto.  See Recuperación de errores,
para obtener un resumen de qué hacer.

28.1 Opciones de la línea de comandos
=====================================

Estas son las opciones de la línea de comandos relevantes para la
autoría de documentos ordinarios.  Para obtener una lista completa,
intenta ejecutar ‘latex --help’ desde la línea de comandos.

   Con muchas implementaciones puedes especificar opciones de la línea
de comandos prefijándolos con ‘-’ o ‘--’.  ESTE es el caso de ambos TeX
Live (incluyendo MacTeX) y MiKTeX.  Usaremos ambas convenciones
indistintamente.  Si una opción toma un valor, se puede especificar ya
sea como un argumento separado (‘--foo val’), o como un argumento con un
signo ‘=’ (‘--foo=val’), pero no puede haber espacios alrededor de ‘=’.
Generalmente usaremos la sintaxis ‘=’.

‘-version’
     Muestra la versión actual, como ‘pdfTeX 3.14159265-2.6-1.40.16 (TeX
     Live 2015/Debian)’ junto con una pequeña cantidad de información
     adicional, y sale.

‘-help’
     Proporciona un breve mensaje de uso que sea útil como aviso y sale.

‘-interaction=MODE’
     TeX compila un documento en uno de cuatro modos de interacción:
     ‘batchmode’, ‘nonstopmode’, ‘scrollmode’, ‘errorstopmode’.  En
     “errorstopmode” (el predeterminado), TeX se detiene en cada error y
     solicita la intervención del usuario.  En “modo por lotes” no
     imprime nada en la terminal, los errores se desplazan como si el
     usuario presionara ‘RETURN’ en cada error, y los archivos que
     faltan hacen que se aborte el trabajo.  En “nonstopmode”, aparece
     un mensaje de diagnóstico en la terminal pero como en el modo por
     lotes, no hay interacción del usuario.  En “scrollmode”, TeX se
     detiene por falta de archivos o entrada del teclado, pero nada más.

     Por ejemplo, iniciar LaTeX con esta línea de comandos

          pdflatex -interaction=batchmode FILENAME

     elimina la mayor parte de la salida de la terminal.

‘-jobname=STRING’
     Establece el valor de “jobname” de TeX en la cadena.  El archivo de
     registro y el archivo de salida entonces se llamará ‘STRING.log’ y
     ‘STRING.pdf’.  See Nombre del trabajo.

‘-output-directory=DIRECTORY’
     Escribe archivos en el directorio DIRECTORY.  Ya debe existir.
     Esto se aplica a todos los archivos externos creados por TeX o
     LaTeX, como el archivo ‘.log’ para la ejecución, el ‘.aux’, ‘.toc’,
     etc., archivos creados por LaTeX, así como el principal archivo de
     salida ‘.pdf’ o ‘.dvi’ en sí mismo.

     Cuando se especifica, el directorio de salida DIRECTORY además
     primero se verifica automáticamente cualquier archivo que se
     ingrese, de modo que los archivos externos se pueden volver a leer,
     si se desea.  El verdadero directorio actual (en el que se ejecutó
     LaTeX) permanece sin cambios, y también se comprobaron los archivos
     de entrada.

‘--enable-write18’
‘--disable-write18’
‘--shell-escape’
‘--no-shell-escape’
     Habilita o deshabilita ‘\write18{SHELL_COMMAND}’ (see
     \write18).  Las dos primeras opciones son compatibles con ambos
     TeX Live y MiKTeX, mientras que las dos segundas son sinónimos
     compatibles por TeX Live.

     Habilitar esta funcionalidad tiene importantes implicaciones de
     seguridad, ya que permite que un archivo LaTeX ejecute cualquier
     comando.  Por lo tanto, de manera predeterminada, no se permite
     ‘\write18’ sin restricciones.  (El valor predeterminado para TeX
     Live, MacTeX y MiKTeX es permitir la ejecución de un número
     limitado de programas relacionados con TeX, que ellos distribuyen).

     Por ejemplo, si invocas a LaTeX con la opción ‘no-shell-escape’, y
     en tu documento llamas a ‘\write18{ls -l}’, entonces no obtienes un
     error pero el archivo de registro dice ‘runsystem(ls
     -l)...deshabilitado’.

‘-halt-on-error’
     Detiene el procesamiento en el primer error.

‘-file-line-error’
‘-no-file-line-error’
     Habilita o deshabilita ‘FILENAME:LINENO:ERROR’-style error de
     mensajes.  Estos solo están disponibles con TeX Live o MacTeX.

28.2 Entrada de la línea de comandos
====================================

Como parte de la invocación de la línea de comandos

     LATEX-ENGINE OPTIONS ARGUMENT

puedes especificar una entrada LaTeX arbitraria comenzando ARGUMENT con
una barra invertida.  (Todos los motores admiten esto).  Este te permite
hacer algunos efectos especiales.

   Por ejemplo, este archivo (que usa el paquete ‘hyperref’ para
hipervínculos) puede producir dos tipos de salida, una para leer en
papel físico y otra para leer en línea.

     \ifdefined\paperversion        % en el preámbulo
     \newcommand{\urlcolor}{black}
     \else
     \newcommand{\urlcolor}{blue}
     \fi
     \usepackage[colorlinks=true,urlcolor=\urlcolor]{hyperref}
       ...
     \href{https://www.ctan.org}{CTAN}  % en el cuerpo
       ...

Compilar este documento ‘book.tex’ con la línea de comandos ‘pdflatex
book’ dará el enlace ‘CTAN’ en azul.  Pero compilarlo con

     pdflatex "\def\paperversion{}\input book.tex"

tiene el enlace en negro.  Usamos comillas dobles para evitar
interpretación de los símbolos por el intérprete de la línea de
comandos.  (Este normalmente funciona en sistemas Unix y Windows, pero
hay muchas peculiaridades de las comillas del intérprete, así que lee la
documentación de tu sistema si necesitas).

   De manera similar, desde el único archivo ‘main.tex’ puedes compilar
dos versiones diferentes.

     pdflatex -jobname=students "\def\student{}\input{main}"
     pdflatex -jobname=teachers "\def\teachers{}\input{main}"

La opción ‘jobname’ está ahí porque, de lo contrario, ambos archivos
estarían llamando a ‘main.pdf’ y el segundo sobrescribiría el primero.
(see Nombre del trabajo).

   En este ejemplo usamos la línea de comando para seleccionar qué
partes de un documento incluir.  Para un libro llamado ‘mybook.tex’ y
estructurado como esto.

     \documentclass{book}
     \begin{document}
        ...
     \include{chap1}
     \include{chap2}
       ...
     \end{document}

la línea de comandos

     pdflatex "\includeonly{chap1}\input{mybook}"

dará salida que tiene el primer capítulo pero ningún otro capítulo.
See Dividir la entrada.

28.3 Nombre del trabajo
=======================

Ejecutar LaTeX crea una serie de archivos, incluido el PDF principal (o
salida DVI), pero también incluye otros.  Estos archivos se nombran con
el así llamado “jobname”.  El caso más común es también el más simple,
donde, por ejemplo, el comando ‘pdflatex thesis’ crea ‘thesis.pdf’ y
también ‘thesis.log’ y ‘thesis.aux’.  Aquí el nombre del trabajo es
‘thesis’.

   En general, LaTeX se invoca como ‘LATEX-ENGINE OPTIONS ARGUMENT’,
donde LATEX-ENGINE es el ‘pdflatex’, ‘lualatex’, etc. (see Motores TeX).
Si ARGUMENT no comienza con una barra invertida, como es el
caso anterior con ‘thesis’, entonces TeX considera que es el nombre del
archivo para ingresar como el documento principal.  Este archivo se
denomina “root file” (see Dividir la entrada, y \input).  El
nombre de ese archivo raíz, sin la extensión ‘.tex’ si la hay, es el
nombre del trabajo.  Si ARGUMENT comienza con una barra invertida, o si
TeX está en modo interactivo, entonces espera el primer comando
‘\input’, y el nombre del trabajo es el argumento de ‘\input’.

   Hay dos posibilidades más para el nombre del trabajo.  Se puede
especificar directamente con la opción ‘-jobname’, como en ‘pdflatex
-jobname=myname’ (see Entrada de la línea de comandos para un
ejemplo real).

   La posibilidad final es ‘texput’, que es la última alternativa
predeterminada si no hay otro nombre disponible para TeX.  Es decir, si
no se especificó la opción ‘-jobname’ y la compilación se detiene antes
de cualquier archivo de entrada, entonces el archivo de registro se
llamará ‘texput.log’.

   Un caso especial de esto es que en las versiones de LaTeX de
(aproximadamente) 2020 o posterior, el nombre del trabajo también es
‘texput’ si el primer ‘\input’ ocurre como resultado de ser llamado por
‘\documentclass’ o ‘\RequirePackage’.  Así que esto producirá un archivo
llamado ‘texput.pdf’:

     pdflatex
     "\documentclass{minimal}\begin{document}Hello!\end{document}"

   Sin embargo, este caso especial solo se aplica a esos dos comandos.
Así, con

     pdflatex
     "\documentclass{article}\usepackage{lipsum}\input{thesis}"

el archivo de salida es ‘lipsum.pdf’, ya que ‘\usepackage’ llama a
‘\input’.

   Dentro del documento, la macro ‘\jobname’ se expande al nombre del
trabajo.  (Cuando ejecutas LaTeX en un archivo cuyo nombre contiene
espacios, la cadena devuelta por ‘\jobname’ contiene comillas de inicio
y final coincidentes).  En la expansión de esa macro, todos los
caracteres son de catcode 12 (otro) excepto que los espacios son
category 10, incluyendo letras que normalmente son catcode 11.

   Debido a esta situación de catcode, usar el nombre del trabajo en un
condicional se puede volver complicado.  Una solución es usar la macro
‘\IfBeginWith’ del paquete ‘xstring’ en su variante estrella, que es
insensible a catcode.  Por ejemplo, en el siguiente texto la nota a pie
de página “Incluyendo Respublica Bananensis Francorum.” solo está
presente si el nombre de la tarea comienza con ‘mi-doc’.

     Si  una democracia  es  solo  un régimen  donde  los ciudadanos  votan
     entonces         todas         las        repúblicas         bananeras
     \IfBeginWith*{\jobname}{my-doc}%           {\footnote{Incluyendo
     Respublica Bananensis Francorum.}}{} son democracias.

   Manipular el valor de ‘\jobname’ dentro de un documento no camba el
nombre del archivo de salida o el archivo de registro.

28.4 Recuperación de errores
============================

Si LaTeX encuentra un error en tu documento, entonces te da un mensaje
de error y te muestra un signo de interrogación, ‘?’.  Por ejemplo,
ejecutando LaTeX en este archivo

     \newcommand{\NP}{\ensuremath{\textbf{NP}}}
     El problema de \PN{} es de un millón de dólares.

hace que muestre esto y espere la entrada.

     ! Secuencia de control Indefinida.
     l.5 El problema
                  \PN{} es uno de un millón de dólares.
     ?

Lo más sencillo es ingresar ‘x’ y ‘RETURN’ y arreglar el error de
tipografía.  En su lugar, podrías ingresar ‘?’ y ‘RETURN’ para ver otros
opciones.

   Hay otros dos escenarios de error.  El primero es que te olvidaste
incluir el ‘\end{document}’ o lo escribiste mal.  En este caso LaTeX te
da un ‘*’ indicador.  Puedes volver a la línea de comandos escribiendo
‘\stop’ y ‘RETURN’; este comando mejora la salida de LaTeX
inmediatamente, sea cual sea el estado en el que se encuentre.

   El último escenario es que escribiste mal el nombre del archivo.  Por
ejemplo, en lugar de ‘pdflatex test’ puedes escribir ‘pdflatex tste’.

     ! No puedo encontrar el archivo `tste'.
     <*> tste

     (Presiona   Enter  para   volver   a  intentarlo   o  Control-D   para
     salir). Escribe otro nombre de archivo de entrada:

Lo más simple es ingresar ‘CTRL d’ (manteniendo presionadas las teclas
control y flecha abajo al mismo tiempo), y luego vuelve a escribir la
línea de comandos correcta.

Apéndice A Plantillas de documentos
***********************************

Aunque son material ilustrativo, quizás estas plantillas de documentos
sean útiles.  Los recursos de plantillas adicionales se enumeran en
<https://tug.org/interest.html#latextemplates>.

A.1 Plantilla ‘beamer’
======================

La clase ‘beamer’ crea diapositivas de presentación.  Tiene una vasta
variedad de características, pero aquí hay una plantilla básica:

\documentclass{beamer}

\title{Plantilla de clase Beamer}
\author{Autor Alex}
\date{31 de julio de 2020}

\begin{document}

\maketitle

% sin  [fragile],  cualquier  código  {verbatim}  obtiene  misteriosos
%  errores.
\begin{frame}[fragile]
 \frametitle{Primer diapositiva}

\begin{verbatim}
  Este es \verbatim!
\end{verbatim}

\end{frame}

\end{document}

   El paquete Beamer en CTAN: <https://ctan.org/pkg/beamer>.

A.2 Plantilla ‘article’
=======================

Una plantilla simple para un artículo.

\documentclass{article}
\title{Plantilla de clase article}
\author{Autor Alex}

\begin{document}
\maketitle

\section{Primera sección}
Algún texto.

\subsection{Primera sección, primera subsección}
Texto adicional.

\section{Segunda sección}
Algo más de texto.

\end{document}

A.3 Plantilla ‘book’
====================

Esta es una plantilla sencilla para un libro.  See Plantilla de libro Larger,
para una más elaborada.

\documentclass{book}
\title{Plantilla de clase book}
\autor{Autor Alex}

\begin{document}
\maketitle

\chapter{Primero}
Algún texto.

\chapter{Segundo}
Algún otro texto.

\section{Un subtema}
Fin.

\end{document}

A.4 Plantilla de ‘book’ larger
==============================

Esta es una plantilla algo elaborada para un libro.  See Plantilla de libro,
por una más sencilla.

   Esta plantilla usa ‘\frontmatter’, ‘\mainmatter’ y ‘\backmatter’ para
controlar la tipografía de las tres áreas principales de un libro (see
\frontmatter - \mainmatter y \backmatter).  El libro tiene una
bibliografía y un índice.

   También es notable que usa ‘\include’ e ‘\includeonly’ (see Dividir la entrada).
Mientras trabajas en un capítulo, puedes comentar todas
las demás entradas del capítulo desde el argumento hasta ‘\includeonly’.
Eso acelerará la compilación sin perder cualquier información como
referencias cruzadas.  (Material que no necesita entrar en una nueva
página se introduce con ‘\input’ en lugar de ‘\include’.  No obtienes el
beneficio de referencia cruzada con ‘\input’).

\documentclass[titlepage]{book}
\usepackage{makeidx}\makeindex

\title{Plantilla de la clase book}
\author{Autor Alex}

\includeonly{%
% frontcover,
  preface,
  chap1,
% appenA,
  }

\begin{document}
\frontmatter
\include{frontcover}
  % tal vez comentar mientras se redacta:
\maketitle \input{dedication} \input{copyright}
\tableofcontents
\include{preface}

\mainmatter
\include{chap1}
...
\appendix
\include{appenA}
...

\backmatter
\bibliographystyle{apalike}
\addcontentsline{toc}{chapter}{Bibliography}
\bibliography
\addcontentsline{toc}{chapter}{Index}
\printindex

\include{backcover}
\end{document}