<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY tex "TeX">
  <!ENTITY latex "LaTeX">
]>
<book id="latex2e-es.dbk" lang="es">
<title>&latex;2e: Un manual de referencia extraoficial</title>
<subtitle>Enero 2023</subtitle>
<titleabbrev>Manual de referencia extraoficial de &latex;2e (Enero 2023)</titleabbrev>
<bookinfo><title>&latex;2e: Un manual de referencia extraoficial</title>
<subtitle>Enero 2023</subtitle>
<titleabbrev>Manual de referencia extraoficial de &latex;2e (Enero 2023)</titleabbrev>
<authorgroup>
<collab><collabname><ulink url="https://latexref.xyz">https://latexref.xyz</ulink></collabname></collab>
</authorgroup>
<legalnotice><para>Este documento es un manual  de referencia extraoficial para &latex;,
un sistema de preparación de documentos, versión Enero 2023.
</para>
<para>Este manual se  tradujo originalmente de <filename>LATEX.HLP</filename>  v1.0a en la
Biblioteca de  ayuda de VMS.   La versión  previa a la  traducción fue
escrita  por George&#160;D.  Greenwade de  la Universidad  Estatal Sam
Houston.  La  versión 2.09 de  &latex;&#160; fue escrita  por Stephen
Gilmore.  La  versión &latex;2e fue  adaptada desde esta  por Torsten
Martinsen.   Karl  Berry  hizo  más  actualizaciones  y  adiciones,  y
reconoce  con  gratitud  que  ha utilizado  <citetitle>Hypertext  Help  con
&latex;</citetitle>,  de Sheldon  Green, y  <citetitle>Resumen de  comandos &latex;</citetitle>
(para  &latex;&#160;2.09) por  L.&#160;Botway y  C.&#160;Biemesderfer
(publicado por  los usuarios del Grupo  &tex; como <citetitle>&tex;nicas</citetitle>
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).
</para>
<para>&#169; 2010-2023 Nacho Pacheco &#8212; Traducción.

</para>
<para>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.
</para>
<!-- comienzo de la Licencia -->
<para>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.
</para>

<para>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.
</para>
<para>Se otorga permiso para copiar y distribuir traducciones de este manual
a  otro   idioma,  en   las  condiciones  anteriores   para  versiones
modificadas.
<!-- fin de la Licencia -->
</para></legalnotice></bookinfo>
<chapter label="1" id="Acerca-de-este-documento">
<title>Acerca de este documento</title>

<indexterm role="cp"><primary>página oficial para el manual</primary></indexterm>
<para>Este  es un  manual  de  referencia extraoficial  para  el sistema  de
preparación de documentos &latex;2e, que es un paquete de macros para
el programa de composición tipográfica &tex; (véase <link linkend="Descripci_00f3n">Descripción</link>).
</para>
<para>La      página       oficial      de      este       documento      es
<ulink url="https://latexref.xyz">https://latexref.xyz</ulink>;  Tiene páginas  web separadas  para
cada                      tema.                       Alternativamente
<ulink url="https://latexref.xyz/dev/latex2e.html">https://latexref.xyz/dev/latex2e.html</ulink>    tiene   el    documento
completo  en una  sola página.   Para  otros formatos  de salida,  las
fuentes       y       mucho      más       información,       consulta
<ulink url="https://latexref.xyz/dev/">https://latexref.xyz/dev/</ulink>.
</para>
<indexterm role="cp"><primary>&latex; vs. &latex;2e</primary></indexterm>
<para>En este documento, principalmente usaremos &#8216;&latex;&#8217; en lugar de
&#8216;&latex;2e&#8217;, ya que la versión anterior de &latex;&#160;(2.09) está
congelada hace décadas.
</para>
<indexterm role="cp"><primary>naturaleza extraoficial de este manual</primary></indexterm>
<indexterm role="cp"><primary>Equipo del proyecto &latex;</primary></indexterm>
<indexterm role="fn"><primary><email>latexrefman@tug.org</email> dirección de correo electrónico</primary></indexterm>
<para>&latex;    es    mantenido    por    un    grupo    de    voluntarios
(<ulink url="https://latex-project.org">https://latex-project.org</ulink>).   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;.
<indexterm role="cp"><primary>informar errores</primary></indexterm>
<indexterm role="cp"><primary>reportar errores</primary></indexterm>
No  envíes  informes de  errores  o  cualquier  otra cosa  sobre  este
documento.    En   su   lugar,   envía   todos   los   comentarios   a
<email>latexrefman@tug.org</email>.
</para>
<para>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.
</para>
<variablelist><varlistentry><term><ulink url="https://ctan.org/pkg/latex-doc-ptr">https://ctan.org/pkg/latex-doc-ptr</ulink>
</term><listitem><indexterm role="fn"><primary>latex-doc-ptr document</primary></indexterm>
<para>Dos  páginas  de referencias  recomendadas  para  la documentación  de
&latex;.
</para>
</listitem></varlistentry><varlistentry><term><ulink url="https://ctan.org/pkg/first-latex-doc">https://ctan.org/pkg/first-latex-doc</ulink>
</term><listitem><indexterm role="fn"><primary>first-latex-doc document</primary></indexterm>
<para>Escribe tu primer documento, con un poco de texto y matemáticas.
</para>
</listitem></varlistentry><varlistentry><term><ulink url="https://ctan.org/pkg/lshort">https://ctan.org/pkg/lshort</ulink>
</term><listitem><indexterm role="fn"><primary>lshort document</primary></indexterm>
<para>Una introducción más larga a &latex;, traducida a muchos idiomas.
</para>
</listitem></varlistentry><varlistentry><term><ulink url="https://tug.org/begin.html">https://tug.org/begin.html</ulink>
</term><listitem><para>Introducción al sistema &tex;, incluido &latex;, con más referencias
</para>
</listitem></varlistentry></variablelist>

</chapter>
<chapter label="2" id="Descripci_00f3n">
<title>Descripción de &latex;</title>

<indexterm role="cp"><primary>descripción de &latex;</primary></indexterm>
<indexterm role="cp"><primary>conceptos básicos de &latex;</primary></indexterm>
<indexterm role="cp"><primary>Knuth, Donald E.</primary></indexterm>
<indexterm role="cp"><primary>Lamport, Leslie</primary></indexterm>
<indexterm role="cp"><primary>&latex; descripción</primary></indexterm>

<para>&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
(<ulink url="https://latex-project.org">https://latex-project.org</ulink>).    Se   utiliza   ampliamente,   en
particular,  pero no  exclusivamente,  para  matemáticas y  documentos
técnicos.
</para>
<indexterm role="cp"><primary>UTF-8, codificación de entrada &latex; predeterminada</primary></indexterm>
<para>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.
</para>
<para>&latex; se  implementa como  un conjunto  de las  llamadas &#8220;macros&#8221;
relacionadas  que  usa  Donald&#160;E.   El  programa  de  composición
tipográfica  &tex;  de  Knuth  o  uno  de  sus  derivados,  conocidos
colectivamente como  &#8220;motores&#8221;. 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).
</para>
<para>(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;.
</para>
<indexterm role="cp"><primary>Lamport &tex;</primary></indexterm>
<indexterm role="cp"><primary>pronunciación</primary></indexterm>
<para>El  nombre  &latex; es  la  abreviatura  de &#8220;Lamport  &tex;&#8221;.   Se
pronuncia  LAH-teck o  LAY-teck, o  a veces  LAY-tecks.  Dentro  de un
documento, puedes producir  el logo con <literal>\LaTeX</literal>.   Cuando el uso
del logotipo no es sensible, como en texto sin formato, escríbelo como
&#8216;<literal>LaTeX</literal>&#8217;.
</para>


<sect1 label="2.1" id="Comenzar-y-terminar">
<title>Comenzar y terminar</title>

<anchor id="Iniciar-y-finalizar"/><!-- nombre anterior -->
<indexterm role="cp"><primary>comenzar y terminar</primary></indexterm>
<indexterm role="cp"><primary>finalizar e iniciar</primary></indexterm>
<indexterm role="cp"><primary>Hola, mundo</primary></indexterm>

<para>Los  archivos &latex;  tienen una  estructura global  simple, con  un
comienzo y fin estándar.  Este es un pequeño ejemplo.
</para>
<screen>\documentclass{article}
\begin{document}
Hola, mundo \LaTeX\.
\end{document}
</screen>
<para>Cada documento  &latex; tiene  una línea  <literal>\begin{document}</literal> y
una línea <literal>\end{document}</literal>.
</para>
<indexterm role="cp"><primary>clase de documento, definida</primary></indexterm>
<para>Aquí, &#8216;<literal>article</literal>&#8217; es la <firstterm>clase de documento</firstterm>.  Se implementa en
un  archivo <filename>article.cls</filename>.   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.  Véase <link linkend="Clases-de-documentos">Clases de documentos</link>.
</para>
<indexterm role="cp"><primary>preámbulo, definido</primary></indexterm>
<para>Puedes   incluir   otros   comandos  &latex;   entre   los   comandos
<literal>\documentclass</literal> y <literal>\begin{document}</literal>.  Esta área se llama
<firstterm>preámbulo</firstterm>.
</para>
<para>El par <literal>\begin{document}</literal>, <literal>\end{document}</literal> define un
<indexterm role="cp"><primary>entorno</primary></indexterm>
<firstterm>entorno</firstterm>; el entorno &#8216;<literal>document</literal>&#8217;  (y no otros) es obligatorio
en todos los documentos  &latex; (véase <link linkend="document">document</link>).  &latex; pone a
tu   disposición  muchos   entornos   que   están  documentados   aquí
(véase <link linkend="Entornos">Entornos</link>).   Muchos  más  están  disponibles  para  ti  desde
paquetes externos, sobre todo los disponibles en CTAN (véase <link linkend="CTAN">CTAN</link>).
</para>
<para>Las siguientes secciones tratan sobre  cómo producir PDF u otra salida
desde un archivo de entrada &latex;.
</para>

</sect1>
<sect1 label="2.2" id="Archivos-de-salida">
<title>Archivos de salida</title>

<para>&latex;  produce  un archivo  de  salida  principal  y al  menos  dos
archivos  auxiliares.   El  nombre  del archivo  de  salida  principal
termina en <filename>.dvi</filename> o <filename>.pdf</filename>.
</para>
<variablelist><varlistentry><term><literal>.dvi</literal>
</term><listitem><indexterm role="fn"><primary>.dvi archivo</primary></indexterm>
<indexterm role="fn"><primary>latex comando</primary></indexterm>
<indexterm role="fn"><primary>xdvi comando</primary></indexterm>
<indexterm role="fn"><primary>dvips comando</primary></indexterm>
<indexterm role="fn"><primary>dvipdfmx comando</primary></indexterm>
<indexterm role="fn"><primary>dvitype comando</primary></indexterm>
<anchor id="archivos-de-salida-dvi"/><para>Si &latex; se invoca  con el comando
del sistema <command>latex</command> entonces  produce un archivo independiente
del dispositivo,  con extensión <filename>.dvi</filename>.  Puedes  ver este archivo
con un comando como <command>xdvi</command>, o lo puedes convertir a un archivo
PostScript <literal>.ps</literal> con <command>dvips</command> o a un archivo de formato de
documento portable  <literal>.pdf</literal> con <command>dvipdfmx</command>.   El contenido
del  archivo  se  puede  volcar  en  forma  legible  por  humanos  con
<command>dvitype</command>.  Hay  disponible una  amplia gama de  programas DVI
utilitarios (<ulink url="https://mirror.ctan.org/dviware">https://mirror.ctan.org/dviware</ulink>).
</para>
</listitem></varlistentry><varlistentry><term><literal>.pdf</literal>
</term><listitem><indexterm role="fn"><primary>.pdf archivo</primary></indexterm>
<indexterm role="cp"><primary>pdf&tex;</primary></indexterm>
<indexterm role="fn"><primary>pdflatex comando</primary></indexterm>
<anchor id="archivos-de-salida-pdf"/><para>Si &latex; se  invoca a  través del
comando   del  sistema   <command>pdflatex</command>,   entre  otros   comandos
(véase <link linkend="Motores-TeX">Motores &tex;</link>),  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.
</para>
</listitem></varlistentry></variablelist>
<para>&latex; siempre produce al menos dos archivos adicionales.
</para>
<variablelist><varlistentry><term><literal>.log</literal>
</term><listitem><indexterm role="cp"><primary>archivo de transcripción</primary></indexterm>
<indexterm role="cp"><primary>archivo de registro</primary></indexterm>
<indexterm role="fn"><primary>.log archivo</primary></indexterm>
<anchor id="registro-de-archivos-de-salida"/><para>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.
</para>
</listitem></varlistentry><varlistentry><term><literal>.aux</literal>
</term><listitem><indexterm role="cp"><primary>archivo auxiliar</primary></indexterm>
<indexterm role="fn"><primary>archivo .aux</primary></indexterm>
<indexterm role="cp"><primary>referencias cruzadas, resolviendo</primary></indexterm>
<indexterm role="cp"><primary>reenviar referencias, resolviendo</primary></indexterm>
<indexterm role="cp"><primary>referencias, resolver</primary></indexterm>
<anchor id="archivos-de-salida-aux"/><para>La  información auxiliar  la utiliza
&latex;  para  cosas  como  referencias cruzadas.   Por  ejemplo,  la
primera  vez que  &latex; encuentra  una referencia  directa &#8212;  una
referencia cruzada  a algo  que aún  no ha apareció  en la  fuente &#8212;
aparecerá en la salida como un doble signo de interrogación <literal>??</literal>.
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  <literal>.aux</literal>.  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.
</para>
</listitem></varlistentry></variablelist>
<indexterm role="fn"><primary>archivo .lof</primary></indexterm>
<indexterm role="cp"><primary>archivo de lista de figuras</primary></indexterm>
<indexterm role="fn"><primary>.lot archivo</primary></indexterm>
<indexterm role="cp"><primary>archivo de lista de tablas</primary></indexterm>
<indexterm role="fn"><primary>.toc archivo</primary></indexterm>
<indexterm role="cp"><primary>archivo de tabla de contenido</primary></indexterm>
<indexterm role="cp"><primary>contenido del archivo</primary></indexterm>
<para>&latex; puede producir aún más archivos, caracterizados por el nombre
de archivo  terminado.  Estos incluyen  un archivo <literal>.lof</literal>  que se
usa para hacer una lista de figuras, un archivo <literal>.lot</literal> usado para
hacer una  lista de  tablas, y un  archivo <literal>.toc</literal>  utilizado para
hacer una  tabla de contenido  (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido  etc.</link>)  Una
clase particular puede crear otras; la lista no tiene límites.
</para>

</sect1>
<sect1 label="2.3" id="Motores-TeX">
<title>Motores &tex;</title>

<indexterm role="cp"><primary>motores, &tex;</primary></indexterm>
<indexterm role="cp"><primary>implementaciones de &tex;</primary></indexterm>
<indexterm role="cp"><primary>UTF-8, compatibilidad del motor para</primary></indexterm>
<indexterm role="cp"><primary>Entrada Unicode, nativa</primary></indexterm>
<indexterm role="cp"><primary>Tipos de letra TrueType</primary></indexterm>
<indexterm role="cp"><primary>Tipos de letra OpenType</primary></indexterm>

<indexterm role="cp"><primary>Archivos de formato &tex; (<literal>.fmt</literal>)</primary></indexterm>
<indexterm role="cp"><primary>&latex; archivos de formato (<literal>.fmt</literal>)</primary></indexterm>
<indexterm role="cp"><primary>archivos de formato, &tex;</primary></indexterm>
<indexterm role="fn"><primary>.fmt archivo</primary></indexterm>
<para>&latex;  es un  gran conjunto  de  comandos que  ejecuta un  programa
&tex;  (véase <link linkend="Descripci_00f3n">Descripción</link>).  Tal  conjunto  de  comandos  se  llama
<firstterm>format</firstterm>, y  está incorporado  en un archivo  <literal>.fmt</literal> binario,
que   se  puede   leer  mucho   más  rápido   que  la   fuente  &tex;
correspondiente.
</para>
<para>Esta sección  ofrece una  breve descripción  general de  los programas
&tex;  que comúnmente  están  disponibles  (también <link linkend="Interfaz-de-l_00ednea-de-comandos">Interfaz  de
línea de comandos</link>).
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>latex</primary></indexterm><literal>latex</literal>
</term><term><indexterm role="fn"><primary>pdflatex</primary></indexterm><literal>pdflatex</literal>
</term><listitem><indexterm role="fn"><primary>etex comando</primary></indexterm>
<indexterm role="cp"><primary>motor pdf&tex;</primary></indexterm>
<indexterm role="cp"><primary>e-&tex;</primary></indexterm>
<anchor id="motores-tex-de-latex"/><para>En      &tex;     Live
(<ulink url="https://tug.org/texlive">https://tug.org/texlive</ulink>), si  se invoca a &latex;  mediante el
comando  del sistema  <command>latex</command> o  <command>pdflatex</command>, luego  se
ejecuta   el   motor  pdf&tex;   (<ulink url="https://ctan.org/pkg/pdftex">https://ctan.org/pkg/pdftex</ulink>).
Cuando  se invoca  como  <command>latex</command>, la  salida  principal es  un
archivo <filename>.dvi</filename>; como con  <command>pdflatex</command>, la salida principal
es un archivo <filename>.pdf</filename>.
</para>
<para>pdf&tex; incorpora las extensiones  e-&tex; al original del programa
Knuth (<ulink url="https://ctan.org/pkg/etex">https://ctan.org/pkg/etex</ulink>),  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 <command>etex</command>, pero este es simple &tex;
(y produce <filename>.dvi</filename>).
</para>
<para>En  otras  distribuciones  &tex;,  <command>latex</command>  puede  invocar  a
e-&tex; en  lugar de pdf&tex;.   En cualquier caso,  las extensiones
e-&tex; se puede suponer que están disponibles en &latex;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>lualatex</primary></indexterm><literal>lualatex</literal>
</term><listitem><indexterm role="cp"><primary>Lua&tex;</primary></indexterm>
<anchor id="tex-motores-lualatex"/><para>Si  &latex; se  invoca  a través  del
comando del sistema <command>lualatex</command>,  se ejecuta el motor Lua&tex;
(<ulink url="https://ctan.org/pkg/luatex">https://ctan.org/pkg/luatex</ulink>).   Este programa  permite escribir
código en  el lenguaje  de programación  Lua (<ulink url="http://luatex.org">http://luatex.org</ulink>)
para interactuar con la  composición tipográfica de &tex;.  Lua&tex;
maneja  la  entrada  Unicode  UTF-8 de  forma  nativa,  puede  manejar
OpenType y tipos de letra TrueType, y genera un archivo <filename>.pdf</filename> de
forma  predeterminada.   También   existe  <command>dvilualatex</command>  para
generar un archivo <filename>.dvi</filename>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>xelatex</primary></indexterm><literal>xelatex</literal>
</term><listitem><indexterm role="cp"><primary>Xe&tex;</primary></indexterm>
<indexterm role="fn"><primary>.xdv archivo</primary></indexterm>
<indexterm role="fn"><primary>xdvipdfmx</primary></indexterm>
<anchor id="tex-motores-xelatex"/><para>Si &latex;  se invoca con el comando del
sistema    <command>xelatex</command>,   se    ejecuta   el    motor   Xe&tex;
(<ulink url="https://tug.org/xetex">https://tug.org/xetex</ulink>).   Como  Lua&tex;, Xe&tex;  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.  Xe&tex; produce un
archivo <filename>.pdf</filename> como salida; no es compatible con la salida DVI.
</para>
<para>Internamente, Xe&tex;  crea un  archivo <literal>.xdv</literal>, una  variante de
DVI, y traduce eso a PDF usando el programa (<literal>x</literal>)<literal>dvipdfmx</literal>,
pero este proceso es automático.   El archivo <literal>.xdv</literal> es útil solo
para depuración.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>platex</primary></indexterm><literal>platex</literal>
</term><term><indexterm role="fn"><primary>uplatex</primary></indexterm><literal>uplatex</literal>
</term><listitem><para>Estos comandos brindan soporte  adicional significativo para japonés y
otros idiomas;  la variante  <literal>u</literal> es  compatible con  Unicode.  Ve
<ulink url="https://ctan.org/pkg/ptex">https://ctan.org/pkg/ptex</ulink> y <ulink url="https://ctan.org/pkg/uptex">https://ctan.org/pkg/uptex</ulink>.
</para></listitem></varlistentry></variablelist>
<para>A partir de 2019, hay  un comando y formato <literal>-dev</literal> complementario
para todos los anteriores:
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>dvilualatex-dev</primary></indexterm><literal>dvilualatex-dev</literal>
</term><term><indexterm role="fn"><primary>latex-dev</primary></indexterm><literal>latex-dev</literal>
</term><term><indexterm role="fn"><primary>lualatex-dev</primary></indexterm><literal>lualatex-dev</literal>
</term><term><indexterm role="fn"><primary>pdflatex-dev</primary></indexterm><literal>pdflatex-dev</literal>
</term><term><indexterm role="fn"><primary>platex-dev</primary></indexterm><literal>platex-dev</literal>
</term><term><indexterm role="fn"><primary>uplatex-dev</primary></indexterm><literal>uplatex-dev</literal>
</term><term><indexterm role="fn"><primary>xelatex-dev</primary></indexterm><literal>xelatex-dev</literal>
</term><listitem><indexterm role="cp"><primary>candidatos de lanzamiento</primary></indexterm>
<indexterm role="cp"><primary>pruebas preliminares</primary></indexterm>
<para>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.
</para>
<para>Estos  formatos <literal>-dev</literal>  facilitan que  cualquier persona  ayude a
probar    documentos    y    código:   puedes    ejecutar,    digamos,
<literal>pdflatex-dev</literal> en lugar de  <literal>pdflatex</literal>, sin cambiar nada más
en tu  entorno.  De hecho,  es más fácil  y más útil  ejecutar siempre
versiones <literal>-dev</literal> 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.
</para>
<para>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>
<para>Para  obtener  más información,  consulta  &#8220;El  flujo de  trabajo  de
lanzamiento de &latex; y los formatos &latex; <literal>dev</literal>&#8221; por Frank
Mittelbach,                    <citetitle>TUGboat</citetitle>                    40:2,
<ulink url="https://tug.org/TUGboat/tb40-2/tb125mitt-dev.pdf">https://tug.org/TUGboat/tb40-2/tb125mitt-dev.pdf</ulink>.
</para>
</listitem></varlistentry></variablelist>
</sect1>
<sect1 label="2.4" id="Sintaxis-del-comando-LaTeX">
<title>Sintaxis del comando &latex;</title>

<indexterm role="cp"><primary>sintaxis del comando</primary></indexterm>
<indexterm role="fn"><primary>\ caracteres de inicio de comandos</primary></indexterm>
<indexterm role="fn"><primary>[...] (para argumentos opcionales)</primary></indexterm>
<indexterm role="fn"><primary>{...} (para argumentos obligatorios)</primary></indexterm>
<para>En el archivo  de entrada &latex;, un nombre de  comando comienza con
un carácter  de barra invertida,  <literal>\</literal>.  El nombre en  sí consiste
entonces  en (a)&#160;una  cadena de  letras o  (b)&#160;una única  no
letra.
</para>
<para>Los nombres de los comandos  de &latex; distinguen entre mayúsculas y
minúsculas,   por   lo   que   <literal>\pagebreak</literal>   es   diferente   de
<literal>\Pagebreak</literal> (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.
</para>
<para>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,   <literal>{...}</literal>.   Los
argumentos opcionales están  contenidos entre corchetes, <literal>[...]</literal>.
En general, pero no universalmente,  si el comando acepta un argumento
opcional, viene primero, antes de cualquier argumento requerido.
</para>
<para>Dentro de un argumento opcional, para  usar el carácter de corchete de
cierre&#160;(<literal>]</literal>  &#8212;&#8220;bracket&#8221;)  ocúltalo  entre  llaves,  como
en&#160;<literal>\item[corchete de cierre {]}]</literal>.  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.
</para>
<para>&latex; tiene la convención de que algunos comandos tienen un formato
<literal>*</literal>  que está  relacionado con  la  forma sin  un <literal>*</literal>,  como
<literal>\chapter</literal>  y  <literal>\chapter*</literal>.   La  diferencia  exacta  en  el
comportamiento varía de comando a comando.
</para>
<para>Este  manual  describe  todas  las opciones  aceptadas  y  las  formas
<literal>*</literal>  para el  comando que  cubre (salvo  omisiones involuntarias,
alias: bugs).
</para>
<indexterm role="cp"><primary>package, <literal>expl3</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>expl3</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>xparse</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>xparse</literal> package</primary></indexterm>

<indexterm role="cp"><primary>sintaxis &latex;3</primary></indexterm>
<para>A partir del lanzamiento 2020-10-01 de &latex;, <literal>expl3</literal> y los
paquetes  <literal>xparse</literal> son  parte del  formato &latex;2e.   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;.
</para>
</sect1>
<sect1 label="2.5" id="Entorno">
<title>Entorno</title>

<para>Sinopsis:
</para>
<screen>\begin{<replaceable>nombre-entorno</replaceable>}
  ...
\end{<replaceable>nombre-entorno</replaceable>}
</screen>
<para>Un <firstterm>entorno</firstterm> 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 <literal>\begin{verse}</literal> y <literal>\end{verse}</literal>.
</para>
<screen>\begin{verse}
  Había una vez un hombre de Nantucket \\
  ...
\end{verse}
</screen>
<para>Véase <link linkend="Entornos">Entornos</link>, para obtener una  lista de entornos.  Particularmente
notable  es  que  todo  documento   &latex;  debe  tener  un  entorno
<literal>document</literal>,        un         par        <literal>\begin{document}
... \end{document}</literal>.
</para>
<para>El <replaceable>nombre-entorno</replaceable> al principio debe coincidir exactamente con el
de el fin.  Esto incluye el caso donde <replaceable>nombre-entorno</replaceable> termina en
una estrella&#160;(<literal>*</literal>);  los textos <literal>\begin</literal>  y <literal>\end</literal>
deben incluir la estrella.
</para>
<para>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).
</para>
<screen>\begin{tabular}[t]{r|l}
  ... filas de la tabla ...
\end{tabular}
</screen>

</sect1>
<sect1 label="2.6" id="CTAN">
<title>CTAN: La red integral de archivo &tex;</title>

<indexterm role="cp"><primary>CTAN</primary></indexterm>

<para>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
<ulink url="https://ctan.org">https://ctan.org</ulink>.
</para>
<para>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.
</para>
<para>Además de las existencias masivas, el sitio web <literal>ctan.org</literal> ofrece
funciones como la búsqueda por nombre o por funcionalidad.
</para>
<indexterm role="cp"><primary>DANTE e.V.</primary></indexterm>
<para>CTAN no es un solo anfitrión,  sino un conjunto de anfitriones, uno de
los cuales es el llamado  &#8220;maestro&#8221;. 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.
</para>
<indexterm role="cp"><primary>espejos de CTAN</primary></indexterm>
<para>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
<ulink url="https://ctan.org/mirrors">https://ctan.org/mirrors</ulink>.
</para>

</sect1>
</chapter>
<chapter label="3" id="Clases-de-documentos">
<title>Clases de documentos</title>

<indexterm role="cp"><primary>clases de documentos</primary></indexterm>
<indexterm role="cp"><primary>documentos, clases de</primary></indexterm>
<indexterm role="fn"><primary>\documentclass</primary></indexterm>

<para>La  clase  general del  documento  se  define  con este  comando,  que
normalmente es el primer comando en un archivo fuente &latex;.
</para>
<screen>\documentclass[<replaceable>options</replaceable>]{<replaceable>class</replaceable>}
</screen>
<indexterm role="fn"><primary>article class</primary></indexterm>
<indexterm role="fn"><primary>report class</primary></indexterm>
<indexterm role="fn"><primary>book class</primary></indexterm>
<indexterm role="fn"><primary>letter class</primary></indexterm>
<indexterm role="fn"><primary>diapositivas clase</primary></indexterm>
<para>Los siguientes nombres de <replaceable>class</replaceable> de documento están integrados en
&latex;.  (Muchas  otras clases de documentos  están disponibles como
paquetes separados; véase <link linkend="Descripci_00f3n">Descripción</link>).
</para>
<variablelist><varlistentry><term><literal>article</literal>
</term><listitem><anchor id="clase-de-documento-article"/><para>Para  un artículo de revista, una
presentación y varios usos generales.
</para>
</listitem></varlistentry><varlistentry><term><literal>book</literal>
</term><listitem><anchor id="clase-de-documento-book"/><para>Libros completos, incluidos capítulos
y posiblemente una  contra portada en el anverso, como  un prefacio, y
asunto    posterior,   como    un    apéndice   (véase <link linkend="Material-de-portada_002fcontraportada">Material    de
portada/contraportada</link>).
</para>
</listitem></varlistentry><varlistentry><term><literal>letter</literal>
</term><listitem><anchor id="clase-de-documento-letter"/><para>Correo,  opcionalmente incluyendo
etiquetas postales (véase <link linkend="Cartas">Cartas</link>).
</para>
</listitem></varlistentry><varlistentry><term><literal>report</literal>
</term><listitem><anchor id="clase-de-documento-report"/><para>Para documentos  de longitud entre
un <literal>article</literal>  y un <literal>book</literal>,  como informes técnicos  o tesis,
que pueden contener varios capítulos.
</para>
</listitem></varlistentry><varlistentry><term><literal>slides</literal>
</term><listitem><anchor id="clase-de-documento-slides"/><para>Para    presentación   de
diapositivas&#8212;rara vez utilizado hoy día. El paquete <literal>beamer</literal>
es       quizás       el      más       frecuentemente       utilizado
(<ulink url="https://ctan.org/pkg/beamer">https://ctan.org/pkg/beamer</ulink>). Véase <link linkend="Plantilla-beamer">Plantilla beamer</link>, para una
pequeña plantilla para un documento beamer.
</para>
</listitem></varlistentry></variablelist>
<para>Las <replaceable>options</replaceable> estándar se describen en la siguiente sección.
</para>


<sect1 label="3.1" id="Opciones-de-la-clase-documento">
<title>Opciones de la clase documento</title>

<indexterm role="cp"><primary>opciones de la clase documento</primary></indexterm>
<indexterm role="cp"><primary>opciones, clase de documento</primary></indexterm>
<indexterm role="cp"><primary>opciones de clase</primary></indexterm>
<indexterm role="cp"><primary>opciones globales</primary></indexterm>

<para>Puedes especificar  <firstterm>opciones globales</firstterm> u <firstterm>opciones  de clase</firstterm>
al comando <literal>\documentclass</literal>  encerrándolas entre corchetes.  Para
especificar más de una <replaceable>opción</replaceable>, sepáralas con una coma.
</para>
<screen>\documentclass[<replaceable>option1</replaceable>,<replaceable>option2</replaceable>,...]{<replaceable>class</replaceable>}
</screen>
<para>Aquí está la lista de las opciones de clase estándar.
</para>
<indexterm role="fn"><primary>10pt option</primary></indexterm>
<indexterm role="fn"><primary>11pt option</primary></indexterm>
<indexterm role="fn"><primary>12pt opción</primary></indexterm>
<para>Todas las clases estándar excepto <literal>slides</literal> aceptan las siguientes
opciones  para seleccionar  el  tamaño  del tipo  de  letra (el  valor
predeterminado es <literal>10pt</literal>):
</para>
<screen>10pt  11pt  12pt
</screen>
<indexterm role="fn"><primary>a4paper option</primary></indexterm>
<indexterm role="fn"><primary>a5paper option</primary></indexterm>
<indexterm role="fn"><primary>b5paper option</primary></indexterm>
<indexterm role="fn"><primary>executivepaper option</primary></indexterm>
<indexterm role="fn"><primary>legalpaper option</primary></indexterm>
<indexterm role="fn"><primary>letterpaper opción</primary></indexterm>
<para>Todas las clases  estándar aceptan estas opciones  para seleccionar el
tamaño del papel (estos muestran alto por ancho):
</para>
<variablelist><varlistentry><term><literal>a4paper</literal>
</term><listitem><para>210 por 297mm (alrededor de 8.25 por 11.75&#160;pulgadas)
</para>
</listitem></varlistentry><varlistentry><term><literal>a5paper</literal>
</term><listitem><para>148 por 210mm (alrededor de 5.8 por 8.3&#160;pulgadas)
</para>
</listitem></varlistentry><varlistentry><term><literal>b5paper</literal>
</term><listitem><para>176 por 250mm (alrededor de 6.9 ​​por 9.8&#160;pulgadas)
</para>
</listitem></varlistentry><varlistentry><term><literal>executivepaper</literal>
</term><listitem><para>7.25 por 10.5&#160;pulgadas
</para>
</listitem></varlistentry><varlistentry><term><literal>legalpaper</literal>
</term><listitem><para>8.5 por 14&#160;pulgadas
</para>
</listitem></varlistentry><varlistentry><term><literal>letterpaper</literal>
</term><listitem><para>8.5 por 11&#160;pulgadas (el predeterminado)
</para></listitem></varlistentry></variablelist>
<indexterm role="fn"><primary>\pdfpagewidth</primary></indexterm>
<indexterm role="fn"><primary>\pdfpageheight</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>geometría</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>geometría</literal> package</primary></indexterm>
<para>Al   usar  uno   de  los   motores  pdf&latex;,
Lua&latex; o  Xe&latex; (véase <link linkend="Motores-TeX">Motores  &tex;</link>), otras  opciones a
que <literal>letterpaper</literal>  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          <literal>\pdfpagewidth=\paperwidth</literal>          y
<literal>\pdfpageheight=\paperheight</literal>  en el  preámbulo de  tu documento.
<indexterm role="cp"><primary>package, <literal>geometría</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>geometría</literal> package</primary></indexterm>
 El paquete  <literal>geometry</literal> proporciona formas
flexibles  de configurar  el  área  de impresión  y  tamaño de  página
física.
</para>
<indexterm role="fn"><primary>draft option</primary></indexterm>
<indexterm role="fn"><primary>final option</primary></indexterm>
<indexterm role="fn"><primary>fleqn option</primary></indexterm>
<indexterm role="fn"><primary>landscape option</primary></indexterm>
<indexterm role="fn"><primary>leqno option</primary></indexterm>
<indexterm role="fn"><primary>openbib option</primary></indexterm>
<indexterm role="fn"><primary>titlepage option</primary></indexterm>
<indexterm role="fn"><primary>notitlepage opción</primary></indexterm>
<para>Varias otras opciones:
</para>
<variablelist><varlistentry><term><literal>draft</literal>
</term><term><literal>final</literal>
</term><listitem><indexterm role="cp"><primary>cajas negras, omitir</primary></indexterm>
<para>Marca cajas (<literal>draft</literal>) o  no marcar (<literal>final</literal>) cajas demasiado
llenas con  un recuadro  negro al margen;  el valor  predeterminado es
<literal>final</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>fleqn</literal>
</term><listitem><indexterm role="cp"><primary>ecuaciones a la izquierda</primary></indexterm>
<indexterm role="cp"><primary>ecuaciones centradas</primary></indexterm>
<indexterm role="cp"><primary>ecuaciones, vaciar a la izquierda vs. centradas</primary></indexterm>
<para>Coloca  las fórmulas  mostradas alineadas  a la  izquierda; de  manera
predeterminada están centradas.
</para>
</listitem></varlistentry><varlistentry><term><literal>landscape</literal>
</term><listitem><indexterm role="cp"><primary>orientación landscape</primary></indexterm>
<indexterm role="cp"><primary>orientación retrato</primary></indexterm>
<para>Selecciona el formato apaisado; el valor predeterminado es retrato.
</para>
</listitem></varlistentry><varlistentry><term><literal>leqno</literal>
</term><listitem><indexterm role="cp"><primary>números de ecuación de la izquierda</primary></indexterm>
<indexterm role="cp"><primary>números de ecuación de la derecha</primary></indexterm>
<indexterm role="cp"><primary>números de ecuación, izquierda vs. derecha</primary></indexterm>
<para>Poner números de  ecuación en el lado izquierdo de  las ecuaciones; de
manera predeterminada es el lado derecho.
</para>
</listitem></varlistentry><varlistentry><term><literal>openbib</literal>
</term><listitem><indexterm role="cp"><primary>Formato de bibliografía, abierto</primary></indexterm>
<para>Utiliza el formato de bibliografía &#8220;abierta&#8221;.
</para>
</listitem></varlistentry><varlistentry><term><literal>titlepage</literal>
</term><term><literal>notitlepage</literal>
</term><listitem><indexterm role="cp"><primary>página de título, separada o corrida</primary></indexterm>
<para>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  <literal>report</literal> es  <literal>titlepage</literal>,  para las  otras clases  es
<literal>notitlepage</literal>.
</para></listitem></varlistentry></variablelist>
<para>Las   siguientes  opciones   no   están  disponibles   con  la   clase
<literal>slides</literal>.
</para>
<indexterm role="fn"><primary>onecolumn option</primary></indexterm>
<indexterm role="fn"><primary>twocolumn option</primary></indexterm>
<indexterm role="fn"><primary>oneside option</primary></indexterm>
<indexterm role="fn"><primary>twoside option</primary></indexterm>
<indexterm role="fn"><primary>openright option</primary></indexterm>
<indexterm role="fn"><primary>openany option</primary></indexterm>
<variablelist><varlistentry><term><literal>onecolumn</literal>
</term><term><literal>twocolumn</literal>
</term><listitem><para>Composición tipográfica en una o dos columnas; el valor predeterminado
es <literal>onecolumn</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>oneside</literal>
</term><term><literal>twoside</literal>
</term><listitem><indexterm role="fn"><primary>\evensidemargin</primary></indexterm>
<indexterm role="fn"><primary>\oddsidemargin</primary></indexterm>
<!-- xx  TODO vuelve  a  alinear  en la  versión  francesa,  que es  más -->
<!-- precisa. -->
<para>Selecciona el  diseño de uno o  dos lados; el valor  predeterminado es
<literal>oneside</literal>,  excepto   que  en  la  clase   <literal>book</literal>  el  valor
predeterminado es <literal>twoside</literal>.
</para>
<para>Para la impresión a  una cara, el texto se centra  en la página.  Para
impresión   a   dos   caras,   el   parámetro   <literal>\evensidemargin</literal>
(<literal>\oddsidemargin</literal>)  determina  la   distancia  en  páginas  pares
(impares) entre el  lado izquierdo de la página y  el margen izquierdo
del texto,  con <literal>\oddsidemargin</literal> siendo  el 40% de  la diferencia
entre <literal>\paperwidth</literal> y  <literal>\textwidth</literal> y <literal>\evensidemargin</literal>
es el resto.
</para>
</listitem></varlistentry><varlistentry><term><literal>openright</literal>
</term><term><literal>openany</literal>
</term><listitem><para>Determina si un capítulo debe comenzar en una página de la derecha; el
valor   predeterminado   es   <literal>openright</literal>  para   <literal>book</literal>   y
<literal>openany</literal> para <literal>report</literal>.
</para></listitem></varlistentry></variablelist>
<indexterm role="fn"><primary>clock opción para la clase <literal>slides</literal></primary></indexterm>
<para>La clase <literal>slides</literal> ofrece la  opción <literal>clock</literal> para imprimir lo
hora en la parte inferior de cada nota.
</para>

</sect1>
<sect1 label="3.2" id="Paquetes-adicionales">
<title>Paquetes adicionales</title>

<indexterm role="cp"><primary>cargando paquetes adicionales</primary></indexterm>
<indexterm role="cp"><primary>paquetes, cargando adicionales</primary></indexterm>
<indexterm role="cp"><primary>paquetes adicionales, cargando</primary></indexterm>
<indexterm role="fn"><primary>\usepackage</primary></indexterm>
<para>Carga un  paquete <replaceable>pkg</replaceable>, con las  opciones de paquete dadas  en la
lista <replaceable>options</replaceable> separada por comas, como aquí.
</para>
<screen>\usepackage[<replaceable>options</replaceable>]{<replaceable>pkg</replaceable>}.
</screen>
<para>Para especificar  más de un paquete,  lo puedes separar con  una coma,
como   en   <literal>\usepackage{<replaceable>pkg1</replaceable>,<replaceable>pkg2</replaceable>,...}</literal>,   o   usa
múltiples comandos <literal>\usepackage</literal>.
</para>
<indexterm role="cp"><primary>opciones globales</primary></indexterm>
<indexterm role="cp"><primary>globales, opciones</primary></indexterm>
<para>Cualquier  opción dada  en  el comando  <literal>\documentclass</literal> que  sea
desconocida para la clase document seleccionada se pasa a los paquetes
cargados con <literal>\usepackage</literal>.
</para>

</sect1>
<sect1 label="3.3" id="Construcci_00f3n-de-clase-y-paquete">
<title>Construcción de clase y paquete</title>

<indexterm role="cp"><primary>comandos de clase de documento</primary></indexterm>
<indexterm role="cp"><primary>comandos, clase de documento</primary></indexterm>
<indexterm role="cp"><primary>nuevos comandos de clase</primary></indexterm>

<para>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 <literal>smcmemo.cls</literal>  y  comienza  tus
documentos con <literal>\documentclass{smcmemo}</literal>.
</para>
<para>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 <literal>Memo  desde el departamento de  matemáticas SMC</literal> es
para una clase.
<indexterm role="cp"><primary>diferencia de clase y paquete</primary></indexterm>
<indexterm role="cp"><primary>diferencia entre clase y paquete</primary></indexterm>
</para>
<para>Dentro  de  un archivo  de  clase  o  paquete,  puedes usar  el  signo
<literal>@</literal> como carácter en nombres de comandos sin tener que rodear el
código   que  contiene   ese   comando   con  <literal>\makeatletter</literal>   y
<literal>\makeatother</literal>.   Véase <link linkend="_005cmakeatletter-y-_005cmakeatother">\makeatletter  y \makeatother</link>.  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 <literal>smcmemo</literal>  podría
tener comandos <literal>\smc@tolist</literal>, <literal>\smc@fromlist</literal>, etc.
</para>



<sect2 label="3.3.1" id="Estructura-de-clase-y-paquete">
<title>Estructura de clase y paquete</title>

<indexterm role="cp"><primary>estructura de clase y paquete</primary></indexterm>
<indexterm role="cp"><primary>composición del archivo de clase</primary></indexterm>
<indexterm role="cp"><primary>composición del archivo del paquete</primary></indexterm>
<indexterm role="cp"><primary>opciones, clase de documento</primary></indexterm>
<indexterm role="cp"><primary>opciones, paquete</primary></indexterm>
<indexterm role="cp"><primary>opciones de clase</primary></indexterm>
<indexterm role="cp"><primary>opciones de paquete</primary></indexterm>

<para>Un archivo  de clase  o un  archivo de  paquete normalmente  consta de
cuatro partes.
</para><orderedlist numeration="arabic"><listitem><para>En la <firstterm>parte de identificación</firstterm>, el archivo dice que es un paquete
o   clase    &latex;   y   se    describe   a   sí    mismo,   usando
<literal>\NeedsTeXFormat</literal>   y   los  comandos   <literal>\ProvidesClass</literal>   o
<literal>\ProvidesPackage</literal>.
</para>
</listitem><listitem><para>La <firstterm>parte de declaraciones  preliminares</firstterm> 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 <literal>smcmemo</literal> se puede llamar  con una opción
para leer  un archivo con  una lista  de personas para  el encabezado,
como   <literal>\documentclass[mathto]{smcmemo}</literal>,   y  por   lo   tanto
necesitas               definir               un               comando
<literal>\newcommand{\setto}[1]{\def\@tolist{#1}}</literal>  usado  en  ese
archivo.
</para>
</listitem><listitem><para>En <firstterm>manejar  la parte de  opciones</firstterm> la  clase o paquete  declara y
procesa sus opciones.   Las opciones de clase permiten  que un usuario
comience   su   documento  como   <literal>\documentclass[<replaceable>lista   de
opciones</replaceable>]{<replaceable>nombre de clase</replaceable>}</literal>, para modificar el comportamiento
de     la     clase.      Un    ejemplo     es     cuando     declaras
<literal>\documentclass[11pt]{article}</literal>   para   establecer  el   valor
predeterminado para el tamaño del tipo de letra del documento.
</para>
</listitem><listitem><para>Finalmente, en la <firstterm>parte de  más declaraciones</firstterm> la clase o paquete
suele hacer la  mayor parte de su trabajo:  declarar nuevas variables,
comandos y tipos de letra y cargar otros archivos.
</para></listitem></orderedlist>
<para>Aquí  hay un  archivo  de  clase inicial,  que  se  debe guardar  como
<filename>stub.cls</filename> donde &latex;  lo pueda encontrar, por  ejemplo en el
mismo directorio que el archivo <filename>.tex</filename>.
</para>
<screen>\NeedsTeXFormat{LaTeX2e}  \ProvidesClass{stub}[2017/07/06 auxiliar
para        comenzar        a        crear        clases        desde]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
\ProcessOptions\relax \LoadClass{article}
</screen><indexterm role="cp"><primary>ejemplo de archivo de clase</primary></indexterm>

<para>Se identifica  a sí mismo, maneja  las opciones de clase  a través del
valor  predeterminado pasándolos  todos a  la clase  <literal>article</literal>, y
luego carga la clase <literal>article</literal>  para proporcionar la base para el
código de esta clase.
</para>
<para>Para obtener más información, consulta la guía oficial para escritores
de     clases      y     paquetes,     la     clase      Guide,     en
<ulink url="https://www.latex-project.org/help/documentation/clsguide.pdf">https://www.latex-project.org/help/documentation/clsguide.pdf</ulink>
(muchas de las descripciones aquí se  derivan de este documento), o el
tutorial <ulink url="https://www.tug.org/TUGboat/tb26-3/tb84heff.pdf">https://www.tug.org/TUGboat/tb26-3/tb84heff.pdf</ulink>.
</para>

</sect2>
<sect2 label="3.3.2" id="Comandos-class-y-package">
<title>Comandos class y package</title>
<indexterm role="cp"><primary>Comandos class y package</primary></indexterm>
<indexterm role="cp"><primary>comandos, clase y paquete</primary></indexterm>

<para>Estos  son los  comandos diseñados  para  ayudar a  los escritores  de
clases o paquetes.
</para>
<variablelist><varlistentry><term><literal>\AtBeginDvi{especiales}</literal>
</term><listitem><indexterm role="fn"><primary>\AtBeginDvi</primary></indexterm>
<para>Guarda  en un  cuadro de  registro  las cosas  que se  escriben en  el
archivo <filename>.dvi</filename>  al comienzo  del envío de  la primera  página del
documento.
</para>
</listitem></varlistentry><varlistentry><term><literal>\AtEndOfClass{<replaceable>code</replaceable>}</literal>
</term><term><literal>\AtEndOfPackage{<replaceable>code</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\AtEndOfClass</primary></indexterm>
<indexterm role="fn"><primary>\AtEndOfPackage</primary></indexterm>
<para>Gancho para  insertar <replaceable>code</replaceable> para  que se ejecute  cuando &latex;
termine  procesando la  clase  o paquete  actual.   Puedes usar  estos
ganchos varias veces; el <literal>código</literal> se ejecutará en el orden en que
lo llames.  Consulta también <link linkend="_005cAtBeginDocument">\AtBeginDocument</link>.
</para>
</listitem></varlistentry><varlistentry><term><literal>\CheckCommand{<replaceable>cmd</replaceable>}[<replaceable>num</replaceable>][<replaceable>default</replaceable>]{<replaceable>definition</replaceable>}</literal>
</term><term><literal>\CheckCommand*{<replaceable>cmd</replaceable>}[<replaceable>num</replaceable>][<replaceable>default</replaceable>]{<replaceable>definition</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\CheckCommand</primary></indexterm>
<indexterm role="fn"><primary>\CheckCommand*</primary></indexterm>
<indexterm role="cp"><primary>nuevo comando, comprobar</primary></indexterm>
<para>Similar  a  <literal>\newcommand</literal> (véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand  y  \renewcommand</link>)
pero no  define <replaceable>cmd</replaceable>;  en su lugar,  comprueba que  la definición
actual de <replaceable>cmd</replaceable> es o no es exactamente como la <replaceable>definition</replaceable>
<indexterm role="cp"><primary>comando long</primary></indexterm>
<firstterm>long</firstterm>  como se  esperaba.  Un  comando  largo es  un comando  que
acepta <literal>\par</literal> dentro  de un argumento.  Se espera  que el comando
<replaceable>cmd</replaceable>    sea   largo    con   la    versión   sin    estrella   de
<literal>\CheckCommand</literal>.  Levanta un error  cuando la comprobación falla.
Esto te permite  comprobar antes de empezar a  redefinir <literal>cmd</literal> tú
mismo que ningún otro paquete ya haya redefinido este comando.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ClassError{<replaceable>class name</replaceable>}{<replaceable>error text</replaceable>}{<replaceable>help text</replaceable>}</literal>
</term><term><literal>\ClassWarning{<replaceable>class name</replaceable>}{<replaceable>warning text</replaceable>}</literal>
</term><term><literal>\ClassWarningNoLine{<replaceable>class name</replaceable>}{<replaceable>warning text</replaceable>}</literal>
</term><term><literal>\ClassInfo{<replaceable>class name</replaceable>}{<replaceable>info text</replaceable>}</literal>
</term><term><literal>\ClassInfoNoLine{<replaceable>class name</replaceable>}{<replaceable>info text</replaceable>}</literal>
</term><term><literal>\PackageError{<replaceable>package name</replaceable>}{<replaceable>error text</replaceable>}{<replaceable>help text</replaceable>}</literal>
</term><term><literal>\PackageWarning{<replaceable>package name</replaceable>}{<replaceable>warning text</replaceable>}</literal>
</term><term><literal>\PackageWarningNoLine{<replaceable>package name</replaceable>}{<replaceable>warning text</replaceable>}</literal>
</term><term><literal>\PackageInfo{<replaceable>package name</replaceable>}{<replaceable>info text</replaceable>}</literal>
</term><term><literal>\PackageInfoNoLine{<replaceable>package name</replaceable>}{<replaceable>info text</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\ClassError</primary></indexterm>
<indexterm role="fn"><primary>\PackageError</primary></indexterm>
<indexterm role="fn"><primary>\ClassWarning</primary></indexterm>
<indexterm role="fn"><primary>\PackageWarning</primary></indexterm>
<indexterm role="fn"><primary>\ClassWarningNoLine</primary></indexterm>
<indexterm role="fn"><primary>\PackageWarningNoLine</primary></indexterm>
<indexterm role="fn"><primary>\ClassInfo</primary></indexterm>
<indexterm role="fn"><primary>\PackageInfo</primary></indexterm>
<indexterm role="fn"><primary>\ClassInfoNoLine</primary></indexterm>
<indexterm role="fn"><primary>\PackageInfoNoLine</primary></indexterm>
<para>Produce un mensaje de error, o mensajes de advertencia o informativo.
</para>
<para>Para   <literal>\ClassError</literal>  y   <literal>\PackageError</literal>   el  mensaje   es
<replaceable>texto  de error</replaceable>,  seguido del  indicador de  error <literal>?</literal>   de
&tex;. Si  el usuario luego,  pide ayuda escribiendo <literal>h</literal>,  ve el
mensaje <replaceable>texto de ayuda</replaceable>.
</para>
<para>Los cuatro comandos de advertencia  son similares excepto que escriben
<replaceable>texto de advertencia</replaceable>  en la pantalla sin mensaje  de error.  Los
cuatro  comandos  escriben <replaceable>texto  info</replaceable>  solo  en el  archivo  de
transcripción.  Las  versiones de <literal>NoLine</literal> no  muestran el número
de la  línea que genera el  mensaje, mientras que las  otras versiones
muestran ese número.
</para>
<para>Para dar formato a los mensajes, incluido el <replaceable>texto de ayuda</replaceable>: usa
<literal>\protect</literal> para evitar que un  comando se expanda, obtén un salto
de   línea  con   <literal>\MessageBreak</literal>,   y  obtén   un  espacio   con
<literal>\space</literal>  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.
</para>
</listitem></varlistentry><varlistentry><term><literal>\CurrentOption</literal>
</term><listitem><indexterm role="fn"><primary>\CurrentOption</primary></indexterm>
<para>Expande al  nombre de  la opción que  se está  procesando actualmente.
Sólo   se   pueden   usar   dentro   del   argumento   <replaceable>code</replaceable>   de
<literal>\DeclareOption</literal> o <literal>\DeclareOption*</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>\DeclareOption{<replaceable>option</replaceable>}{<replaceable>code</replaceable>}</literal>
</term><term><literal>\DeclareOption*{<replaceable>code</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\DeclareOption</primary></indexterm>
<indexterm role="fn"><primary>\DeclareOption*</primary></indexterm>
<indexterm role="cp"><primary>opciones de clase</primary></indexterm>
<indexterm role="cp"><primary>opciones de paquete</primary></indexterm>
<indexterm role="cp"><primary>opciones, clase</primary></indexterm>
<indexterm role="cp"><primary>opciones, paquete</primary></indexterm>
<para>Hace que una opción esté disponible  para que un usuario la invoque en
su   comando    <literal>\documentclass</literal>.    Por   ejemplo,    la   clase
<literal>smcmemo</literal>         podría         tener         una         opción
<literal>\documentclass[logo]{smcmemo}</literal>  que  permita  a  los  usuarios
colocar el  logo institucional  en la primera  página.  El  archivo de
clase debe contener <literal>\DeclareOption{logo}{<replaceable>code</replaceable>}</literal> (y ​​más
tarde, <literal>\ProcessOptions</literal>).
</para>
<para>Si  solicitas  una  opción  que   no  ha  sido  declarada,  de  manera
predeterminada  esta  producirá  una advertencia  como  <literal>Opciones
globales no utilizadas:  [badoption]</literal>.  Cambia este comportamiento con
la   versión   destacada  <literal>\DeclareOption*{<replaceable>code</replaceable>}</literal>.    Por
ejemplo,  muchas  clases  extienden  una clase  existente,  usando  un
comando  como  <literal>\LoadClass{article}</literal>,  y  para  pasar  opciones
adicionales al código de uso de clase subyacente como este.
</para>
<screen>\DeclareOption*{%   \PassOptionsToClass{\CurrentOption}{article}%
}
</screen>
<para>Otro  ejemplo es  que la  clase  <literal>smcmemo</literal> puede  permitir a  los
usuarios  mantener  listas  de  destinatarios  de  notas  en  archivos
externos.       Entonces      el      usuario      podría      invocar
<literal>\documentclass[math]{smcmemo}</literal>    y     leerá    el    archivo
<literal>math.memo</literal>.  Este  código maneja  el archivo si  existe y  de lo
contrario pasa la opción a la clase <literal>article</literal>.
</para>
<screen>\DeclareOption*{\InputIfFileExists{\CurrentOption.memo}{}{%
    \PassOptionsToClass{\CurrentOption}{article}}}
</screen>
</listitem></varlistentry><varlistentry><term><literal>\DeclareRobustCommand{<replaceable>cmd</replaceable>}[<replaceable>num</replaceable>][<replaceable>default</replaceable>]{<replaceable>definition</replaceable>}</literal>
</term></varlistentry><varlistentry><term><literal>* \DeclareRobustCommand*{<replaceable>cmd</replaceable>}[<replaceable>num</replaceable>][<replaceable>default</replaceable>]{<replaceable>definition</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\DeclareRobustCommand</primary></indexterm>
<indexterm role="fn"><primary>\DeclareRobustCommand*</primary></indexterm>
<indexterm role="cp"><primary>nuevo comando, definición</primary></indexterm>
<para>Como  <literal>\newcommand</literal> y  <literal>\newcommand*</literal> (véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand  y
\renewcommand</link>)  pero estos  declaran un  comando robusto,  incluso si
algún  código dentro  de  la <replaceable>definición</replaceable>  es  frágil.  (Para  una
discusión de comandos robustos  y frágiles véase <link linkend="_005cprotect">\protect</link>). Usa este
comando  para  definir  nuevos  comandos  robustos  o  para  redefinir
comandos   existentes   y   hacerlos   robustos.   A   diferencia   de
<literal>\newcommand</literal>, estos  no dan  un error si  la macro  <replaceable>cmd</replaceable> ya
existe; en su lugar, se coloca un mensaje de registro en el archivo de
transcripción si se redefine un comando.
</para>
<para>Los comandos definidos de esta manera son un poco menos eficientes que
los definidos usando <literal>\newcommand</literal> así que, a menos que los datos
del comando sean  frágiles y el comando se use  dentro de un argumento
en movimiento, usa <literal>\newcommand</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>etoolbox</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>etoolbox</literal> package</primary></indexterm>
<para>El paquete  <literal>etoolbox</literal> ofrece los comandos
<literal>\newrobustcmd</literal>,  <literal>\newrobustcmd*</literal>,  así como  los  comandos
<literal>\renewrobustcmd</literal>,   <literal>\renewrobustcmd*</literal>   y   los   comandos
<literal>\providerobustcmd</literal>   y  <literal>\providerobustcmd*</literal>.    Estos  son
similares       a       <literal>\newcommand</literal>,       <literal>\newcommand*</literal>,
<literal>\renewcommand</literal>, <literal>\renewcommand*</literal>,  <literal>\providecommand</literal> y
<literal>\providecommand*</literal>,  pero define  un  <replaceable>cmd</replaceable>  robusto con  dos
ventajas en comparación con <literal>\DeclareRobustCommand</literal>:
</para><orderedlist numeration="arabic"><listitem><para>Utilizan el  mecanismo de protección  de bajo nivel e-&tex;  en lugar
del mecanismo <literal>\protect</literal>  &latex; de nivel superior,  por lo que
no incurren la ligera pérdida de rendimiento mencionada anteriormente,
y
</para></listitem><listitem><para>Hacen     la     misma    distinción     entre     <literal>\new&#8230;</literal>,
<literal>\renew&#8230;</literal> y <literal>\provide&#8230;</literal>, como comandos estándar,
por  lo que  no solo  hacen un  mensaje de  registro cuando  redefines
<replaceable>cmd</replaceable>   que    ya   existe,    en   ese   caso    necesitas   usar
<literal>\renew&#8230;</literal> o <literal>\provide&#8230;</literal> o recibes un error.
</para></listitem></orderedlist>
</listitem></varlistentry><varlistentry><term><literal>\IfFileExists{<replaceable>filename</replaceable>}{<replaceable>true code</replaceable>}{<replaceable>false code</replaceable>}</literal>
</term><term><literal>\InputIfFileExists{<replaceable>filename</replaceable>}{<replaceable>true code</replaceable>}{<replaceable>false code</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\IfFileExists</primary></indexterm>
<indexterm role="fn"><primary>\InputIfFileExists</primary></indexterm>
<para>Ejecuta  <replaceable>código  verdadero</replaceable>  si  &latex;  encuentra  el  archivo
<filename><replaceable>nombre de  archivo</replaceable></filename> o <replaceable>código falso</replaceable>  de lo contrario.
En el primer caso se ejecuta <replaceable>código verdadero</replaceable> y entonces ingresa
el archivo.  Así el comando
</para>
<screen>\IfFileExists{img.pdf}{%
  \includegraphics{img.pdf}}{\typeout{!! img.pdf no encontrado}
</screen>
<para>incluirá el gráfico  <filename>img.pdf</filename> si se encuentra y  de lo contrario
dará un aviso.
</para>
<para>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
<literal>\IfFileExists{./filename}{<replaceable>código
verdadero</replaceable>}{<replaceable>código  falso</replaceable>}</literal>.   Si   solicitas  un  nombre  de
archivo  sin  una  extensión  <literal>.tex</literal>  entonces  &latex;  primero
buscará el  archivo agregando  la extensión <literal>.tex</literal>;  para obtener
más información sobre cómo &latex;  maneja las extensiones de archivo
<link linkend="_005cinput">\input</link>.
</para>
</listitem></varlistentry><varlistentry><term><literal>\LoadClass[<replaceable>options list</replaceable>]{<replaceable>class name</replaceable>}[<replaceable>release date</replaceable>]</literal>
</term><term><literal>\LoadClassWithOptions{<replaceable>class name</replaceable>}[<replaceable>release date</replaceable>]</literal>
</term><listitem><indexterm role="fn"><primary>\LoadClass</primary></indexterm>
<indexterm role="fn"><primary>\LoadClassWithOptions</primary></indexterm>
<para>Carga   una  clase,   como   con  <literal>\documentclass[<replaceable>lista   de
opciones</replaceable>]{<replaceable>nombre      de      clase</replaceable>}[<replaceable>información      de
publicación</replaceable>]</literal>.  Un ejemplo es <literal>\LoadClass[twoside]{article}</literal>.
</para>
<para>La <replaceable>options  list</replaceable>, si  está presente, es  una lista  separada por
comas.  La <replaceable>fecha  de lanzamiento</replaceable> es opcional.   Si está presente
debe tener la forma <replaceable>AAAA/MM/DD</replaceable>.
<!-- Por  cierto,  hay  at-macros   documentadas  en  macros2e.pdf  para -->
<!-- comprobar la versión y, condicionalmente, realizar algunas acciones -->
<!-- en la versión posterior o no en algunas fechas. -->
</para>
<para>Si solicitas  una <replaceable>fecha  de lanzamiento</replaceable> y  la fecha  del paquete
instalado en  tu sistema  es anterior, recibes  una advertencia  en la
pantalla y en el registro como esta.
</para>
<screen>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.
</screen>
<para>La versión  del comando  <literal>\LoadClassWithOptions</literal> usa la  lista de
opciones para  la clase actual.   Esto significa que  ignora cualquier
opción  pasada a  través  de <literal>\PassOptionsToClass</literal>.   Este es  un
comando  de conveniencia  que te  permite construir  clases sobre  las
existentes,  como  la clase  <literal>article</literal>  estándar,  sin tener  que
rastrear qué opciones se pasaron.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ExecuteOptions{<replaceable>options-list</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\ExecuteOptions</primary></indexterm>
<para>Para cada opción <replaceable>option</replaceable> en la <replaceable>lista de opciones</replaceable>, en orden,
este  comando ejecuta  el comando  <literal>\ds@<replaceable>option</replaceable></literal>.  Si  este
comando   no   está   definido,   entonces  esa   opción   se   ignora
silenciosamente.
</para>
<para>Se   puede  utilizar   para   proporcionar  una   lista  de   opciones
predeterminada antes  <literal>\ProcessOptions</literal>.  Por  ejemplo, si  en un
archivo de clase deseas que el  predeterminado sea el tipo de letra de
11         puntos,         entonces        podrías         especificar
<literal>\ExecuteOptions{11pt}\ProcessOptions\relax</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>\NeedsTeXFormat{<replaceable>format</replaceable>}[<replaceable>formato de fecha</replaceable>]</literal>
</term><listitem><indexterm role="fn"><primary>\NeedsTeXFormat</primary></indexterm>
<para>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:  <literal>\NeedsTeXFormat{LaTeX2e}</literal>.  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 <replaceable>format</replaceable>  es sensible a
mayúsculas y minúsculas).  Si no coincide, la ejecución se detiene con
un error  como &#8216;<literal>Este archivo  necesita formato `LaTeX2e'  pero es
`xxx'.</literal>&#8217;
</para>
<para>Para especificar una  versión del formato que sabes  que tiene ciertas
características, incluye el <replaceable>formato de  fecha</replaceable> opcional en el que
esas  características fueron  implementadas.  Si  está presente,  debe
tener  el  formato  <literal>YYYY/MM/DD</literal>.   Si  la  versión  del  formato
instalada  en  tu  sistema  es anterior  al  <replaceable>formato  de  fecha</replaceable>,
entonces recibes una advertencia como esta.
</para>
<screen>Has  solicitado la  liberación  `2038/01/20' de  LaTeX,  pero solo  la
versión `2016/02/01' está disponible.
</screen>
</listitem></varlistentry><varlistentry><term><literal>\OptionNotUsed</literal>
</term><listitem><indexterm role="fn"><primary>\OptionNotUsed</primary></indexterm>
<para>Agrega la opción actual a la lista de opciones no utilizadas.  Solo se
puede usar dentro del  argumento <replaceable>code</replaceable> de <literal>\DeclareOption</literal> o
<literal>\DeclareOption*</literal>.
</para>
<!-- No puedo  reproducir este  comportamiento como está  documentado en -->
<!-- clsguide.  En  ausencia de una  declaración @code{\DeclareOption*}, -->
<!-- @LaTeX{} emite una advertencia en la consola como @code{Advertencia -->
<!-- de LaTeX: Global no  utilizadas opción(es): [opción no utilizada].} -->
<!-- con   la  lista   de  opciones   no  utilizadas   cuando  llega   a -->
<!-- @code{\begin@{document@}}. -->

</listitem></varlistentry><varlistentry><term><literal>\PassOptionsToClass{<replaceable>options list</replaceable>}{<replaceable>class name</replaceable>}</literal>
</term><term><literal>\PassOptionsToPackage{<replaceable>options list</replaceable>}{<replaceable>package name</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\PassOptionsToClass</primary></indexterm>
<indexterm role="fn"><primary>\PassOptionsToPackage</primary></indexterm>
<para>Agrega  las opciones  en la  lista  separada por  comas <replaceable>lista  de
opciones</replaceable>  a  las opciones  utilizadas  por  cualquier futuro  comando
<literal>\RequirePackage</literal>   o   <literal>\usepackage</literal>    para   el   paquete
<replaceable>nombre del paquete</replaceable> o la clase <replaceable>nombre de clase</replaceable>.
</para>
<para>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
<literal>Conflicto de  opción para el  paquete Foo.</literal> (&latex;  arroja un
error incluso si no hay conflicto entre opciones).
</para>
<para>Si  tu  propio código  trae  un  paquete  dos veces,  entonces  puedes
colapsar   eso  a   una  vez,   por  ejemplo   reemplazando  los   dos
<literal>\RequirePackage[landscape]{geometry}</literal>                        y
<literal>\RequirePackage[margins=1in]{geometry}</literal>  con el  comando único
<literal>\RequirePackage[landscape,margins=1in]{geometry}</literal>.
</para>
<para>Sin embargo,  imagina que estás  cargando <filename>firstpkg</filename> y  dentro de
ese paquete  que carga  <filename>secondpkg</filename>, y  necesitas que  el segundo
paquete sea  cargado con  la opción  <literal>draft</literal>.  Entonces  antes de
hacer  el primer  paquete debes  poner en  cola las  opciones para  el
segundo paquete, así.
</para>
<screen>\PassOptionsToPackage{draft}{secondpkg}
\RequirePackage{firstpkg}
</screen>
<para>(Si  <literal>firstpkg.sty</literal> carga  una  opción en  conflicto  con lo  que
deseas entonces posiblemente tengas que alterar tu fuente).
</para>
<para>Estos  comandos son  útiles  para usuarios  generales,  así como  para
clases  y paquetes.   Por ejemplo,  supongamos que  un usuario  quiere
cargar el paquete <literal>graphicx</literal> con la opción <literal>draft</literal> y también
quieres   usar   una   clase   <literal>foo</literal>   que   carga   el   paquete
<literal>graphicx</literal>, pero  sin esa  opción. El  usuario podría  iniciar su
archivo                          &latex;                          con
<literal>\PassOptionsToPackage{draft}{graphicx}\documentclass{foo}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ProcessOptions</literal>
</term><term><literal>\ProcessOptions*<replaceable>\@options</replaceable></literal>
</term><listitem><indexterm role="fn"><primary>\ProcessOptions</primary></indexterm>
<indexterm role="fn"><primary>\ProcessOptions*</primary></indexterm>
<para>Ejecuta  el código  para cada  opción  que el  usuario haya  invocado.
Incluirlo  en el  archivo de  clase como  <literal>\ProcessOptions\relax</literal>
(debido a la existencia del comando con asterisco).
</para>
<para>Las  opciones vienen  en  dos tipos.   <firstterm>Opciones  locales</firstterm> se  han
especificado   para   este   paquete  particular   en   el   argumento
<replaceable>options</replaceable>     de    <literal>\PassOptionsToPackage{<replaceable>options</replaceable>}</literal>,
<literal>\usepackage[<replaceable>options</replaceable>]</literal>,                                   o
<literal>\RequirePackage[<replaceable>options</replaceable>]</literal>.   <firstterm>Opciones  globales</firstterm>  son
las     dadas     por     el     usuario    de     la     clase     en
<literal>\documentclass[<replaceable>options</replaceable>]</literal>  (si  una  opción  se  especifica
tanto local como globalmente, entonces es local).
</para>
<para>Cuando   se   llama   a   <literal>\ProcessOptions</literal>   para   un   paquete
<filename>pkg.sty</filename>, lo siguiente sucede:
</para><orderedlist numeration="arabic"><listitem><para>Para   cada   opción   <replaceable>option</replaceable>    declarada   hasta   ahora   con
<literal>\DeclareOption</literal>,  busca si  esa opción  es una  opción global  o
local para <literal>pkg</literal>.  Si es así, ejecuta el  código declarado.  Esto
se  hace  en   el  orden  en  que  estas  opciones   fueron  dadas  en
<filename>pkg.sty</filename>.
</para></listitem><listitem><para>Para    cada   opción    local    restante,    ejecuta   el    comando
<literal>\ds@</literal><replaceable>option</replaceable> si se ha definido  en algún lugar (que no sea
por una <literal>\DeclareOption</literal>); de lo  contrario, ejecuta el código de
opción  predeterminada dada  en  <literal>\DeclareOption*</literal>. 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.
</para></listitem></orderedlist>
<para>Cuando se llama  a <literal>\ProcessOptions</literal> para una  clase, funciona en
la  misma  manera salvo  que  todas  las  opciones  son locales  y  el
<replaceable>code</replaceable>     predeterminado    para     <literal>\DeclareOption*</literal>    es
<literal>\OptionNotUsed</literal> en lugar de un error.
</para>
<para>La versión  destacada <literal>\ProcessOptions*</literal> 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.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ProvidesClass{<replaceable>class name</replaceable>}[<replaceable>release date</replaceable> <replaceable>brief additional information</replaceable>]</literal>
</term><term><literal>\ProvidesClass{<replaceable>class name</replaceable>}[<replaceable>release date</replaceable>]</literal>
</term><term><literal>\ProvidesPackage{<replaceable>package name</replaceable>}[<replaceable>release date</replaceable> <replaceable>brief additional information</replaceable>]</literal>
</term><term><literal>\ProvidesPackage{<replaceable>package name</replaceable>}[<replaceable>release date</replaceable>]</literal>
</term><listitem><indexterm role="fn"><primary>\ProvidesClass</primary></indexterm>
<indexterm role="fn"><primary>\ProvidesPackage</primary></indexterm>
<para>Identifica la clase o paquete, imprimiendo un mensaje en pantalla y en
el archivo de registro.
</para>
<para>Cuando cargas una clase o paquete, por ejemplo con
<literal>\documentclass{smcmemo}</literal> o <literal>\usepackage{test}</literal>,
&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 <literal>\documentclass{smcmemo}</literal>, y el
archivo <filename>smcmemo.cls</filename> tiene la instrucción
<literal>\ProvidesClass{xxx}</literal> luego recibes una advertencia como
<literal>Has solicitado la clase de documento `smcmemo', pero la clase
del documento proporciona 'xxx'.</literal>  Esta advertencia no evita que
&latex; procese el resto del archivo de clase normalmente.
</para>
<para>Si incluyes el  argumento opcional, debes incluir una  fecha, antes de
cualquier  espacio,  en  la  forma  <literal>AAAA/MM/DD</literal>.  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
<filename>smcmemo.cls</filename>            contiene             la            línea
<literal>\ProvidesClass{smcmemo}[2008/06/01 v1.0 SMC  clase memo]</literal> y la
primera  línea  de  tu documento  es  <literal>\documentclass{smcmemo}</literal>
entonces verás  <literal>Clase de documento: smcmemo  2008/06/01 v1.0 SMC
clase memo</literal>.
</para>
<para>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  <replaceable>fecha de lanzamiento</replaceable>.  Por ejemplo, un
usuario puede  ingresar <literal>\documentclass{smcmemo}[2018/10/12]</literal> o
<literal>\usepackage{foo}[[2017/07/07]]</literal>  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).
</para>
</listitem></varlistentry><varlistentry><term><literal>\ProvidesFile{<replaceable>filename</replaceable>}[<replaceable>additional information</replaceable>]</literal>
</term><listitem><indexterm role="fn"><primary>\ProvidesFile</primary></indexterm>
<para>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 <literal>File: test.config 2017/10/12 archivo de
configuración   para    test.cls</literal>   para   <replaceable>filename</replaceable>    igual   a
&#8216;<literal>test.config</literal>&#8217;    e    <replaceable>información   adicional</replaceable>    igual    a
&#8216;<literal>2017/10/12 archivo de configuración para test.cls</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><literal>\RequirePackage[<replaceable>options list</replaceable>]{<replaceable>package name</replaceable>}[<replaceable>release date</replaceable>]</literal>
</term><term><literal>\RequirePackageWithOptions{<replaceable>package name</replaceable>}[<replaceable>release date</replaceable>]</literal>
</term><listitem><indexterm role="fn"><primary>\RequirePackage</primary></indexterm>
<indexterm role="fn"><primary>\RequirePackageWithOptions</primary></indexterm>
<para>Carga un paquete, como  el comando <literal>\usepackage</literal> (véase <link linkend="Paquetes-adicionales">Paquetes
adicionales</link>).  El   equipo  de  desarrollo  de   &latex;  recomienda
encarecidamente el  uso de  estos comandos  sobre el  <literal>\input</literal> de
&tex;&#160;estándar;   ve  la   Guía   de  clase.    Un  ejemplo   es
<literal>\RequirePackage[landscape,margin=1in]{geometry}</literal>.
</para>
<para>La <replaceable>lista  de opciones</replaceable>, si  está presente, es una  lista separada
por  comas.  La  <replaceable>fecha de  lanzamiento</replaceable>, si  está presente,  debe
tener el  formato <replaceable>AAAA/MM/DD</replaceable>.   Si la  fecha de  lanzamiento del
paquete  instalado en  tu sistema  es  anterior que  la <replaceable>fecha  de
lanzamiento</replaceable>, recibes una advertencia como <literal>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'</literal>.
</para>
<para>La versión <literal>\RequirePackageWithOptions</literal> usa  la lista de opciones
para la clase actual.  Esto significa que ignoras cualquier opción que
se le pase a través de <literal>\PassOptionsToClass</literal>.  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.
</para>
<para>La  diferencia entre  <literal>\usepackage</literal>  y <literal>\RequirePackage</literal>  es
pequeña.  El comando <literal>\usepackage</literal>  está diseñado para el archivo
del documento  mientras que <literal>\RequirePackage</literal> está  diseñado para
paquetes y archivos  de clase.  Por lo  tanto, usar <literal>\usepackage</literal>
antes del comando <literal>\documentclass</literal> hace  que &latex; dé un error
como <literal>\usepackage antes de \documentclass</literal>, pero allí puedes usar
<literal>\RequirePackage</literal>.
</para></listitem></varlistentry></variablelist>

</sect2>
</sect1>
</chapter>
<chapter label="4" id="Tipos-de-letra">
<title>Tipos de letra</title>
<anchor id="Tipograf_00eda"/><!-- nombre antiguo -->

<indexterm role="cp"><primary>tipografía</primary></indexterm>
<indexterm role="cp"><primary>tipos de letra</primary></indexterm>

<para>&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,  <link linkend="Estilos-de-tipos-de-letra">Estilos de  tipos de  letra</link>).  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).
</para>
<para>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,
<ulink url="https://math.ucsd.edu/~msharpe/RcntFnts.pdf">https://math.ucsd.edu/~msharpe/RcntFnts.pdf</ulink>).
</para>
<screen>\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
</screen>
<para>Además,  los motores  <command>xelatex</command> o  <command>lualatex</command> permiten
que uses  cualquier tipo de  letra en tu  sistema que esté  en formato
OpenType o TrueType (véase <link linkend="Motores-TeX">Motores &tex;</link>).
</para>
<para>El      catálogo       de      tipos      de       letra      &latex;
(<ulink url="https://tug.org/FontCatalogue">https://tug.org/FontCatalogue</ulink>) 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;.
</para>
<para>También  hay más  información  disponible en  los  grupos de  usuarios
&tex;, en <ulink url="https://www.tug.org/fonts/">https://www.tug.org/fonts/</ulink>.
</para>


<sect1 label="4.1" id="paquete-fontenc">
<title>paquete <literal>fontenc</literal></title>

<indexterm role="cp"><primary>font codificación</primary></indexterm>
<indexterm role="cp"><primary>UTF-8, tipo de letra compatible con</primary></indexterm>
<indexterm role="cp"><primary>T1</primary></indexterm>
<indexterm role="cp"><primary>OT1</primary></indexterm>
<indexterm role="fn"><primary>fontenc</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usepackage[<replaceable>font_encoding</replaceable>]{fontenc}
</screen>
<para>o
</para>
<screen>\usepackage[<replaceable>font_encoding1</replaceable>, <replaceable>font_encoding2</replaceable>, ...]{fontenc}
</screen>
<para>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
</para>
<indexterm role="cp"><primary>package, <literal>fontspec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>fontspec</literal> package</primary></indexterm>
<para>Este paquete  solo  se aplica  si  usas el  motor
<literal>pdflatex</literal>   (véase <link linkend="Motores-TeX">Motores  &tex;</link>).    Si  usas   el  comando
<command>xelatex</command>  o  el  motor  <command>lualatex</command>  entonces  usa  el
paquete <literal>fontspec</literal>.
</para>
<para>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    <literal>\accent</literal>
(véase <link linkend="_005caccent">\accent</link>) 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 <command>pdflatex</command> entonces pon esto
en el preámbulo
</para>
<screen>\usepackage[T1]{fontenc}
</screen>
<para>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).
</para>
<indexterm role="cp"><primary>package, <literal>lmodern</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>lmodern</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>cm-super</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>cm-super</literal> package</primary></indexterm>
<para>Si   estás  utilizando   una
codificación como <literal>T1</literal> 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&#160;3.  Quieres tipos  de letra
vectoriales.    Utiliza   un    paquete   como   <literal>lmodern</literal>   o
<literal>cm-super</literal> para obtener un tipo de letra que extiende el valor
predeterminado de &latex; usando tipos de letra vectoriales.
</para>
<para>Para cada <replaceable>font_encoding</replaceable> dado como  opción pero aún no declarado,
este  paquete  carga  los  archivos  de  definición  de  codificación,
denominados   <filename><replaceable>font_encoding</replaceable>enc.def</filename>.   También   establece
<literal>\encodingdefault</literal> para ser la última codificación en la lista de
opciones.
</para>
<para>Estos son los valores comunes para <replaceable>font_encoding</replaceable>.
</para>
<variablelist><varlistentry><term><literal>OT1</literal>
</term><listitem><para>La codificación  original para  &tex;.  Limitada  a caracteres  en su
mayoría en inglés.
</para>
</listitem></varlistentry><varlistentry><term><literal>OMS, OML</literal>
</term><listitem><para>Símbolos matemáticos y codificación de letras matemáticas.
</para>
</listitem></varlistentry><varlistentry><term><literal>T1</literal>
</term><listitem><para>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.
</para>
</listitem></varlistentry><varlistentry><term><literal>TS1</literal>
</term><listitem><para>Codificación de Text Companion.
</para></listitem></varlistentry></variablelist>
<para>El valor  predeterminado de &latex; es  cargar <literal>OML</literal>, <literal>T1</literal>,
<literal>OT1</literal> y luego <literal>OMS</literal>, y  establece el valor predeterminado en
<literal>OT1</literal>.
</para>
<para>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.
</para>
<para>Si usas codificación<literal>T1</literal>&#160; 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
<filename>fontenc</filename>, para  evitar que el  sistema cargue cualquier  tipo de
letra codificada&#160;<literal>T1</literal> de la predeterminada.
</para>
<para>El equipo  de &latex; reserva  nombres de codificación  que comienzan
con:  &#8216;<literal>T</literal>&#8217;   para  codificaciones   de  texto  estándar   con  256
caracteres, &#8216;<literal>TS</literal>&#8217; para símbolos que extienden las codificaciones T
correspondientes,  &#8216;<literal>X</literal>&#8217; para  codificaciones  de prueba,  &#8216;<literal>M</literal>&#8217;
para codificaciones matemáticas estándar  con 256 caracteres, &#8216;<literal>A</literal>&#8217;
para aplicaciones  especiales, &#8216;<literal>OT</literal>&#8217; para codificaciones  de texto
estándar   con  128   caracteres  y   &#8216;<literal>OM</literal>&#8217;  para   codificaciones
matemáticas   estándar   con   128  caracteres   (&#8216;<literal>O</literal>&#8217;   significa
&#8216;<literal>obsoleto</literal>&#8217;).
</para>
<para>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.
</para>


<sect2 label="4.1.1" id="_005cDeclareFontEncoding">
<title><literal>\DeclareFontEncoding</literal></title>

<indexterm role="cp"><primary>codificación del tipo de letra, declarado</primary></indexterm>
<indexterm role="cp"><primary>codificación, tipo de letra</primary></indexterm>
<indexterm role="cp"><primary>acentos, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareFontEncoding</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareFontEncoding{<replaceable>encoding</replaceable>}{<replaceable>text-settings</replaceable>}{<replaceable>math-settings</replaceable>}
</screen>
<para>Declara  la codificación  del tipo  de letra  <replaceable>encoding</replaceable>.  También
guarda  el  valor  de <replaceable>encoding</replaceable>  en  <literal>\LastDeclaredEncoding</literal>
(véase <link linkend="_005cLastDeclaredEncoding">\LastDeclaredEncoding</link>).
</para>
<para>El  archivo <filename>t1enc.def</filename>  contiene esta  línea (seguida  de muchas
otras).
</para>
<screen>\DeclareFontEncoding{T1}{}{}
</screen>
<para>Los <replaceable>text-settings</replaceable>  son los comandos que  &latex; ejecutará cada
vez  que  cambias  de  una   codificación  a  otra  con  los  comandos
<literal>\selectfont</literal>  y  <literal>\fontencoding</literal>.  Los  <replaceable>math-settings</replaceable>
son los  comandos que &latex; usará  siempre que el tipo  de letra se
accede como un alfabeto matemático.
</para>
<para>&latex;   ignora   cualquier   carácter    de   espacio   dentro   de
<replaceable>text-settings</replaceable>  y <replaceable>math-settings</replaceable>,  para  evitar espacios  no
deseados en la salida.
</para>
<para>Si inventas  una codificación, debes  elegir un  nombre de dos  o tres
letras  comenzando con  &#8216;<literal>L</literal>&#8217;  para &#8216;<literal>local</literal>&#8217;,  o &#8216;<literal>E</literal>&#8217;  para
&#8216;<literal>experimental</literal>&#8217;.
</para>
<para>Ten en  cuenta que &latex;  puede leer  varias veces los  archivos de
codificación   de   salida,   por    lo   que   usar,   por   ejemplo,
<literal>\newcommand</literal>  puede causar  un  error.   Además, tales  archivos
deben contener la línea  <literal>\ProvidesFile</literal> (véase <link linkend="Comandos-class-y-package">Comandos class y
package</link>).
</para>
<para>Ten en cuenta  también que debes usar  los comandos <literal>\...Default</literal>
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.
</para>

</sect2>
<sect2 label="4.1.2" id="_005cDeclareTextAccent">
<title><literal>\DeclareTextAccent</literal></title>

<indexterm role="cp"><primary>font codificación</primary></indexterm>
<indexterm role="cp"><primary>acentos, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextAccent</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextAccent{<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}{<replaceable>slot</replaceable>}
</screen>
<para>Define  un  acento, para  colocarlo  encima  de  otros glifos,  en  la
codificación <replaceable>encoding</replaceable> en la ubicación <replaceable>slot</replaceable>.
</para>
<indexterm role="cp"><primary>slot, tipo de letra</primary></indexterm>
<para>Un <firstterm>slot</firstterm> es  el número que identifica un glifo  dentro de un tipo
de letra.
</para>
<para>Esta  línea  de <filename>t1enc.def</filename>  declara  que  para hacer  un  acento
circunflejo  como en  <literal>\^A</literal>, el  sistema pondrá  el acento  en el
slot&#160;2 sobre  el carácter  &#8216;<literal>A</literal>&#8217;, que  se representa  en ASCII
como&#160;65.    (Esto    se   mantiene   a   menos    que   haya   un
<literal>DeclareTextComposite</literal>     relevante     o    una     declaración
<literal>\DeclareTextCompositeCommand</literal>; véase <link linkend="_005cDeclareTextComposite">\DeclareTextComposite</link>).
</para>
<screen>\DeclareTextAccent{\^}{T1}{2}
</screen>
<para>Si <replaceable>cmd</replaceable> ya se  ha definido, entonces <literal>\DeclareTextAccent</literal> no
da  error  pero   si  registra  la  redefinición  en   el  archivo  de
transcripción.
</para>

</sect2>
<sect2 label="4.1.3" id="_005cDeclareTextAccentDefault">
<title><literal>\DeclareTextAccentDefault</literal></title>

<indexterm role="cp"><primary>acentos, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextAccent</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextAccentDefault</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextAccentDefault{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}
</screen>
<para>Si hay un comando específico de codificación de acento \<replaceable>cmd</replaceable> pero
no hay  un <literal>\DeclareTextAccent</literal>  asociado para  esa codificación,
entonces este  comando tomará el relevo,  diciendo que lo use  como se
describe para <replaceable>encoding</replaceable>.
</para>
<para>Por  ejemplo,  para  hacer  que  la  codificación  <literal>OT1</literal>  sea  la
codificación predeterminada para el acento <literal>\&quot;</literal>, declara esto.
</para>
<screen>\DeclareTextAccentDefault{\&quot;}{OT1}
</screen>
<para>Si  emites un  <literal>\&quot;</literal> cuando  la codificación  actual no  tiene una
definición para ese acento entonces &latex; usará la definición desde
<literal>OT1</literal>
</para>
<para>Es   decir,    este   comando   es   equivalente    a   esta   llamada
(véase <link linkend="_005cUseTextSymbol-y-_005cUseTextAccent">\UseTextSymbol y \UseTextAccent</link>).
</para>
<screen>\DeclareTextCommandDefault[1]{\<replaceable>cmd</replaceable>}
   {\UseTextAccent{<replaceable>encoding</replaceable>}{\<replaceable>cmd</replaceable>}{#1}}
</screen>
<para>Ten  en  cuenta  que  <literal>\DeclareTextAccentDefault</literal>  funciona  para
cualquier  comando  <filename>fontenc</filename>  de  argumento único,  no  solo  el
comando de acento.
</para>

</sect2>
<sect2 label="4.1.4" id="_005cDeclareTextCommand-y-_005cProvideTextCommand">
<title><literal>\DeclareTextCommand</literal> y <literal>\ProvideTextCommand</literal></title>

<anchor id="_005cDeclareTextCommand"/><anchor id="_005cProvideTextCommand"/><indexterm role="fn"><primary>\DeclareTextCommand</primary></indexterm>
<indexterm role="fn"><primary>\ProvideTextCommand</primary></indexterm>
<para>Sinopsis, una de:
</para>
<screen>\DeclareTextCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}{<replaceable>defn</replaceable>}
\DeclareTextCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn}</replaceable>
\DeclareTextCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
</screen>
<para>o una de:
</para>
<screen>\ProvideTextCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}{<replaceable>defn</replaceable>}
\ProvideTextCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\ProvideTextCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
</screen>
<para>Define  el comando  <literal>\<replaceable>cmd</replaceable></literal>,  que será  específico para  una
codificación.  El  nombre del  comando <replaceable>cmd</replaceable> debe  estar precedido
por  una  barra  invertida,  <literal>\</literal>.   Estos  comandos  solo  pueden
aparecer  en  el  preámbulo.    Redefinir  \<replaceable>cmd</replaceable>  no  provoca  un
error.  El comando  definido  será  robusto incluso  si  el código  en
<replaceable>defn</replaceable> es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Por ejemplo, el archivo <filename>t1enc.def</filename> contiene esta línea.
</para>
<screen>\DeclareTextCommand{\textperthousand}{T1}{\%\char 24 }
</screen>
<para>Con eso, puedes expresar partes por mil.
</para>
<screen>\usepackage[T1]{fontenc}  % en el preámbulo
  ...
El límite legal es \(0.8 \)\textperthousand.
</screen>
<para>Si cambias la  codificación del tipo de letra  a <literal>OT1</literal>, obtendrás
un  error  como  &#8216;<literal>Error  de LaTeX:  Comando  \textperthousand  no
disponible en codificación OT1</literal>&#8217;.
</para>
<indexterm role="fn"><primary>\DeclareTextSymbol</primary></indexterm>
<para>La variante  <literal>\ProvideTextCommand</literal> hace lo mismo,  excepto que no
hace  nada   si  <literal>\<replaceable>cmd</replaceable></literal>  ya  está   definido.   El  comando
<literal>\DeclareTextSymbol</literal> es más rápido que este por simple asociación
de slot a glifo (véase <link linkend="_005cDeclareTextSymbol">\DeclareTextSymbol</link>)
</para>
<para>Los argumentos opcionales <replaceable>nargs</replaceable>  y <replaceable>optargdefault</replaceable> juegan el
mismo  rol  aquí  como  en  <literal>\newcommand</literal>  (véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand  y
\renewcommand</link>).  Brevemente, <replaceable>nargs</replaceable> es un número entero de 0 a 9
especificando  el  número  de   argumentos  que  el  comando  definido
<literal>\<replaceable>cmd</replaceable></literal>  toma.   Este  número  incluye  cualquier  argumento
opcional.  Omitir  este argumento  es lo mismo  que especificar  0, lo
cual  significa que  <literal>\<replaceable>cmd</replaceable></literal>  no tendrá  argumentos.  Y,  si
<replaceable>optargdefault</replaceable>  está presente,  entonces el  primer argumento  de
<literal>\<replaceable>cmd</replaceable></literal>   es   opcional,   con   el   valor   predeterminado
<replaceable>optargdefault</replaceable>   (que   puede   ser   la   cadena   vacía).    Si
<replaceable>optargdefault</replaceable>  no  está   presente,  entonces  <literal>\<replaceable>cmd</replaceable></literal>
tampoco toma un argumento opcional.
</para>

</sect2>
<sect2 label="4.1.5" id="_005cDeclareTextCommandDefault-y-_005cProvideTextCommandDefault">
<title><literal>\DeclareTextCommandDefault</literal> y <literal>\ProvideTextCommandDefault</literal></title>

<anchor id="_005cDeclareTextCommandDefault"/><anchor id="_005cProvideTextCommandDefault"/><indexterm role="fn"><primary>\DeclareTextCommandDefault</primary></indexterm>
<indexterm role="fn"><primary>\ProvideTextCommandDefault</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextCommandDefault{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
</screen>
<para>o:
</para>
<screen>\ProvideTextCommandDefault{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
</screen>
<para>Proporciona una definición predeterminada para <literal>\<replaceable>cmd</replaceable></literal>, 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.
</para>
<para>Esto hace que <literal>\copyright</literal> esté disponible.
</para>
<screen>\DeclareTextCommandDefault{\copyright}{\textcircled{c}}
</screen>
<para>Utiliza solo una codificación (OMS) que siempre está disponible.
</para>
<para>El  <literal>\DeclareTextCommandDefault</literal>   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.
</para>
<para>Al  igual  que  con  los  comandos  no  predeterminados  relacionados,
<literal>\ProvideTextCommandDefault</literal>    tiene   exactamente    el   mismo
comportamiento que
</para>
<para><literal>\DeclareTextCommandDefault</literal>   excepto  que   no  hace   nada  si
<literal>\<replaceable>cmd</replaceable></literal>  ya  está   definido  (véase <link linkend="_005cDeclareTextCommand-y-_005cProvideTextCommand">\DeclareTextCommand  y
\ProvideTextCommand</link>).   Entonces, los  paquetes lo  pueden usar  para
proporcionar respaldos que otros paquetes pueden mejorar.
</para>

</sect2>
<sect2 label="4.1.6" id="_005cDeclareTextComposite">
<title><literal>\DeclareTextComposite</literal></title>

<indexterm role="cp"><primary>acentos, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextComposite</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextComposite{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}{<replaceable>simple_object</replaceable>}{<replaceable>slot</replaceable>}
</screen>
<para>Accede  a un  glifo acentuado  directamente, es  decir, sin  tener que
poner un acento sobre un carácter separado.
</para>
<para>Esta línea  de <filename>t1enc.def</filename>  significa que <literal>\^o</literal>  provocará a
&latex; para componer la  minúscula&#160;&#8216;<literal>o</literal>&#8217; tomando el carácter
directamente desde el slot 224 en el tipo de letra.
</para>
<screen>\DeclareTextComposite{\^}{T1}{o}{244}
</screen>
<para>Véase <link linkend="paquete-fontenc">paquete  fontenc</link>,  para  obtener una  lista  de  codificaciones
comunes.  El <replaceable>simple_object</replaceable>  debe ser un solo carácter  o un solo
comando.   El  argumento  <replaceable>slot</replaceable>  suele  ser  un  entero  positivo
representado  en decimal  (aunque son  posibles octal  o hexadecimal).
Normalmente \<replaceable>cmd</replaceable> ya  se ha declarado para  esta codificación, ya
sea   con   <literal>\DeclareTextAccent</literal>   o  con   un   solo   argumento
<literal>\DeclareTextCommand</literal>.   En  <filename>t1enc.def</filename>,   sigue  la  línea
anterior al comando <literal>\DeclareTextAccent{\^}{T1}{2}</literal>.
</para>

</sect2>
<sect2 label="4.1.7" id="_005cDeclareTextCompositeCommand">
<title><literal>\DeclareTextCompositeCommand</literal></title>

<indexterm role="cp"><primary>acentos, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextCompositeCommand</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextCompositeCommand{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}{<replaceable>arg</replaceable>}{<replaceable>code</replaceable>}
</screen>
<para>Una versión  más general  de <literal>\DeclareTextComposite</literal>  que ejecuta
código arbitrario con <literal>\<replaceable>cmd</replaceable></literal>.
</para>
<para>Esto  permite que  los  acentos  en &#8216;<literal>i</literal>&#8217;  actúen  como acentos  en
dotless&#160;i, <literal>\i</literal>.
</para>
<screen>\DeclareTextCompositeCommand{\'}{OT1}{i}{\'\i}
</screen>
<para>Véase <link linkend="paquete-fontenc">paquete  fontenc</link>,  para  obtener una  lista  de  codificaciones
comunes.   Normalmente <literal>\<replaceable>cmd</replaceable></literal>  ya  se  habrá declarado  con
<literal>\DeclareTextAccent</literal>       o        como       un       argumento
<literal>\DeclareTextCommand</literal>.
</para>

</sect2>
<sect2 label="4.1.8" id="_005cDeclareTextSymbol">
<title><literal>\DeclareTextSymbol</literal></title>

<indexterm role="cp"><primary>símbolo, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextSymbol</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextSymbol{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}{<replaceable>slot</replaceable>}
</screen>
<para>Define un  símbolo en la  codificación <replaceable>encoding</replaceable> en  la ubicación
<replaceable>slot</replaceable>.  Los  símbolos definidos de  esta manera son para  usar en
texto, no matemáticas.
</para>
<para>Por  ejemplo, esta  línea de  <filename>t1enc.def</filename> declara  el número  del
glifo  a  usar  para  &#x00AB;,  el  guillemet
izquierdo.
</para>
<screen>\DeclareTextSymbol{\guillemotleft}{T1}{19}
</screen>
<para>El   comando  <literal>\DeclareTextCommand{\guillemotleft}{T1}{\char
19}</literal>    tiene    el    mismo     efecto    pero    es    más    lento
(véase <link linkend="_005cDeclareTextCommand-y-_005cProvideTextCommand">\DeclareTextCommand y \ProvideTextCommand</link>).
</para>
<para>Véase <link linkend="paquete-fontenc">paquete  fontenc</link>,  para  obtener una  lista  de  codificaciones
comunes.  El <replaceable>slot</replaceable> se puede  especificar en decimal u octal (como
en <literal>'023</literal>), o hexadecimal (como en <literal>&quot;13</literal>), aunque el decimal
tiene  la ventaja  de  que las  comillas simples  o  dobles se  pueden
redefinir por otro paquete.
</para>
<para>Si     <literal>\<replaceable>cmd</replaceable></literal>    ya     se     ha    definido,     entonces
<literal>\DeclareTextSymbol</literal> no da un error pero registra la redefinición
en el archivo de transcripción.
</para>

</sect2>
<sect2 label="4.1.9" id="_005cDeclareTextSymbolDefault">
<title><literal>\DeclareTextSymbolDefault</literal></title>

<indexterm role="cp"><primary>acentos, definir</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextSymbol</primary></indexterm>
<indexterm role="fn"><primary>\DeclareTextSymbolDefault</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareTextSymbolDefault{\<replaceable>cmd</replaceable>}{<replaceable>encoding</replaceable>}
</screen>
<para>Si   hay   un   comando   de  símbolo   específico   de   codificación
<literal>\<replaceable>cmd</replaceable></literal>  pero no  hay un  <literal>\DeclareTextSymbol</literal> asociado
para  esa  codificación,  entonces  este  comando  tomará  el  relevo,
diciendo que obtenga el símbolo como se describe para <replaceable>encoding</replaceable>.
</para>
<para>Por  ejemplo, para  declarar que  si la  codificación actual  no tiene
significado  para <literal>\textdollar</literal>  entonces usa  el de  <literal>OT1</literal>,
declara esto.
</para>
<screen>\DeclareTextSymbolDefault{\textdollar}{OT1}
</screen>
<para>Es   decir,    este   comando   es   equivalente    a   esta   llamada
(véase <link linkend="_005cUseTextSymbol-y-_005cUseTextAccent">\UseTextSymbol y \UseTextAccent</link>).
</para>
<screen>\DeclareTextCommandDefault{\<replaceable>cmd</replaceable>}
   {\UseTextSymbol{<replaceable>encoding</replaceable>}{\<replaceable>cmd</replaceable>}}
</screen>
<para>Ten en cuenta que  <literal>\DeclareTextSymbolDefault</literal> se puede usar para
definir  un predeterminado  para cualquier  comando <filename>fontenc</filename>  de
cero argumentos.
</para>

</sect2>
<sect2 label="4.1.10" id="_005cLastDeclaredEncoding">
<title><literal>\LastDeclaredEncoding</literal></title>

<indexterm role="fn"><primary>\LastDeclaredEncoding</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\LastDeclaredEncoding
</screen>
<para>Obtiene el nombre de la  codificación declarada más recientemente.  El
comando  <literal>\DeclareFontEncoding</literal> almacena  el nombre  para que  se
pueda recuperar con este comando (véase <link linkend="_005cDeclareFontEncoding">\DeclareFontEncoding</link>).
</para>
<para>Esto  se   basa  en  <literal>\LastDeclaredEncoding</literal>  en   lugar  de  dar
explícitamente el nombre de la codificación.
</para>
<screen>\DeclareFontEncoding{JH1}{}{}
\DeclareTextAccent{\'}{\LastDeclaredEncoding}{0}
</screen>

</sect2>
<sect2 label="4.1.11" id="_005cUseTextSymbol-y-_005cUseTextAccent">
<title><literal>\UseTextSymbol</literal> y <literal>\UseTextAccent</literal></title>

<anchor id="_005cUseTextSymbol"/><anchor id="_005cUseTextAccent"/><indexterm role="fn"><primary>\UseTextSymbol</primary></indexterm>
<indexterm role="fn"><primary>\UseTextAccent</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\UseTextSymbol{<replaceable>encoding</replaceable>}{\<replaceable>cmd</replaceable>}
</screen>
<para>o:
</para>
<screen>\UseTextAccent{<replaceable>encoding</replaceable>}{\<replaceable>cmd</replaceable>}{<replaceable>text</replaceable>}
</screen>
<para>Utiliza un símbolo o acento que no sea de la codificación actual.
</para>
<para>En general,  para usar un  comando <filename>fontenc</filename> en  una codificación
donde no está definido, y si el comando no tiene argumentos, lo puedes
usar con algo como esto:
</para>
<screen>\UseTextSymbol{OT1}{\ss}
</screen>
<para>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 <literal>\ss</literal>):
</para>
<screen>{\fontencoding{OT1}\selectfont\ss}
</screen>
<para>De  manera  similar,  para  usar  un  comando  <filename>fontenc</filename>  en  una
codificación  donde  no  está  definido,  y si  el  comando  tiene  un
argumento, lo puedes usar así:
</para>
<screen>\UseTextAccent{OT1}{\'}{a}
</screen>
<para>que  es equivalente  a  esto  (nuevamente, ten  en  cuenta las  llaves
exteriores que forman un grupo):
</para>
<screen>{fontencoding{OT1}\selectfont\'{\fontencoding{<replaceable>enc_in_use</replaceable>}\selectfont a}}
</screen>
<para>Aquí,  <replaceable>enc_in_use</replaceable>  es  la  codificación vigente  antes  de  esta
secuencia de comandos,  de modo que &#8216;<literal>a</literal>&#8217; se  escribe utilizando la
codificación actual y solo se toma el acento de <literal>OT1</literal>.
</para>

</sect2>
</sect1>
<sect1 label="4.2" id="Estilos-de-tipos-de-letra">
<title>Estilos de tipos de letra</title>

<indexterm role="cp"><primary>estilos de tipos de letra</primary></indexterm>
<indexterm role="cp"><primary>estilos de letra</primary></indexterm>
<indexterm role="cp"><primary>estilos de texto</primary></indexterm>

<para>Los  siguientes  comandos  de  estilo de  letra  son  compatibles  con
&latex;.
</para>
<indexterm role="cp"><primary>Forma de declaración de los comandos de estilo del tipo de letra</primary></indexterm>
<para>En  la  tabla  de  abajo  de los  comandos  enumerados,  los  comandos
<literal>\text...</literal>,    se    usan    con    un    argumento    como    en
<literal>\textit{<replaceable>text</replaceable>}</literal>.  Esta  es la  forma preferida.   Pero se
muestra después  entre paréntesis si la  correspondiente <firstterm>forma de
declaración</firstterm>, que suele ser útil.  Esta forma no toma argumentos, como
en  <literal>{\itshape  <replaceable>text</replaceable>}</literal>.   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
<literal>\begin{itshape}...\end{itshape}</literal>, que describiremos al final
de la sección.
</para>
<para>Estos comandos,  en cualquiera de  las tres formas,  son acumulativos;
por ejemplo puedes  obtener negrita sans serif  diciendo cualquiera de
<literal>\sffamily\bfseries</literal> o <literal>\bfseries\sffamily</literal>.
</para>
<anchor id="_005cnocorrlist"/><anchor id="_005cnocorr"/><indexterm role="fn"><primary>\nocorrlist</primary></indexterm>
<indexterm role="fn"><primary>\nocorr</primary></indexterm>
<para>Una  ventaja  de  estos   comandos  es  que  automáticamente  insertan
correcciones en  cursiva si  es necesario (véase <link linkend="_005c_002f">\/</link>).   En concreto,
insertan la  corrección en cursiva  a menos que el  siguiente carácter
esté  en la  lista  <literal>\nocorrlist</literal>, que  de manera  predeterminada
consta de punto  y coma.  Para suprimir la inserción  automática de la
corrección en cursiva, utiliza <literal>\nocorr</literal>  al principio o al final
del  argumento  del  comando, como  <literal>\textit{\nocorr  text}</literal>  o
<literal>\textsc{text \nocorr}</literal>.
</para>
<variablelist><varlistentry><term><literal>\textrm (\rmfamily)</literal>
</term><listitem><indexterm role="fn"><primary>\textrm</primary></indexterm>
<indexterm role="fn"><primary>\rmfamily</primary></indexterm>
<para>Roman.
</para>
</listitem></varlistentry><varlistentry><term><literal>\textit (\itshape)</literal>
</term><listitem><indexterm role="fn"><primary>\textit</primary></indexterm>
<indexterm role="fn"><primary>\itshape</primary></indexterm>
<para>Italics.
</para>
</listitem></varlistentry><varlistentry><term><literal>\textmd (\mdseries)</literal>
</term><listitem><indexterm role="fn"><primary>\textmd</primary></indexterm>
<indexterm role="fn"><primary>\mdseries</primary></indexterm>
<para>Medium weight (predeterminado).
</para>
</listitem></varlistentry><varlistentry><term><literal>\textbf (\bfseries)</literal>
</term><listitem><indexterm role="fn"><primary>\textbf</primary></indexterm>
<indexterm role="fn"><primary>\bfseries</primary></indexterm>
<para>Boldface.
</para>
</listitem></varlistentry><varlistentry><term><literal>\textup (\upshape)</literal>
</term><listitem><indexterm role="fn"><primary>\textup</primary></indexterm>
<indexterm role="fn"><primary>\upshape</primary></indexterm>
<para>Upright (predefinido).
</para>
</listitem></varlistentry><varlistentry><term><literal>\textsl (\slshape)</literal>
</term><listitem><indexterm role="fn"><primary>\textsl</primary></indexterm>
<indexterm role="fn"><primary>\slshape</primary></indexterm>
<para>Slanted.
</para>
</listitem></varlistentry><varlistentry><term><literal>\textsf (\sffamily)</literal>
</term><listitem><indexterm role="fn"><primary>\textsf</primary></indexterm>
<indexterm role="fn"><primary>\sffamily</primary></indexterm>
<para>Sans serif.
</para>
</listitem></varlistentry><varlistentry><term><literal>\textsc (\scshape)</literal>
</term><listitem><indexterm role="fn"><primary>\textsc</primary></indexterm>
<indexterm role="fn"><primary>\scshape</primary></indexterm>
<para>Small caps.
</para>
</listitem></varlistentry><varlistentry><term><literal>\texttt (\ttfamily)</literal>
</term><listitem><indexterm role="fn"><primary>\texttt</primary></indexterm>
<indexterm role="fn"><primary>\ttfamily</primary></indexterm>
<para>Typewriter.
</para>
</listitem></varlistentry><varlistentry><term><literal>\textnormal (\normalfont)</literal>
</term><listitem><indexterm role="fn"><primary>\textnormal</primary></indexterm>
<indexterm role="fn"><primary>\normalfont</primary></indexterm>
<para>Tipo de letra del documento principal.
</para>
</listitem></varlistentry></variablelist>
<indexterm role="cp"><primary>emphasis</primary></indexterm>
<indexterm role="fn"><primary>\emph</primary></indexterm>
<para>Aunque   también    cambia   los   tipos   de    letra,   el   comando
<literal>\emph{<replaceable>text</replaceable>}</literal>   es  semántico,   para  que   se  enfatice
<replaceable>text</replaceable>, y no  se debe usar como sustituto  de <literal>\textit</literal>.  Por
ejemplo,  <literal>\emph{<replaceable>start   text</replaceable>  \emph{<replaceable>middle  text</replaceable>}
<replaceable>end text</replaceable>}</literal>  resultará en <replaceable>start  text</replaceable> y <replaceable>end  text</replaceable> en
cursiva, pero <replaceable>middle text</replaceable> estará en romano.
</para>
<para>&latex;   también   proporciona    los   siguientes   comandos,   que
incondicionalmente  cambia al  estilo  dado, es  decir, <emphasis>no</emphasis>  son
acumulativos.        Están       usados      ​​como       declaraciones:
<literal>{\<replaceable>cmd</replaceable>...}</literal> en lugar de <literal>\<replaceable>cmd</replaceable>{...}</literal>.
</para>
<para>(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).
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\bf</primary></indexterm><literal>\bf</literal>
</term><listitem><indexterm role="cp"><primary>tipo de letra negrita</primary></indexterm>
<para>Cambia a negrita.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cal</primary></indexterm><literal>\cal</literal>
</term><listitem><indexterm role="cp"><primary>script de letras para matemáticas</primary></indexterm>
<indexterm role="cp"><primary>letras caligráficas para matemáticas</primary></indexterm>
<para>Cambia a letras caligráficas para matemáticas.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\it</primary></indexterm><literal>\it</literal>
</term><listitem><indexterm role="cp"><primary>italic font</primary></indexterm>
<para>cursivas.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rm</primary></indexterm><literal>\rm</literal>
</term><listitem><indexterm role="cp"><primary>roman font</primary></indexterm>
<para>Roman.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sc</primary></indexterm><literal>\sc</literal>
</term><listitem><indexterm role="cp"><primary>small caps font</primary></indexterm>
<para>Small caps.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sf</primary></indexterm><literal>\sf</literal>
</term><listitem><indexterm role="cp"><primary>sans serif font</primary></indexterm>
<para>Sans serif.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sl</primary></indexterm><literal>\sl</literal>
</term><listitem><indexterm role="cp"><primary>tipo de letra inclinada</primary></indexterm>
<indexterm role="cp"><primary>oblique font</primary></indexterm>
<para>Slanted (oblicua).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tt</primary></indexterm><literal>\tt</literal>
</term><listitem><indexterm role="cp"><primary>tipo de letra de máquina de escribir</primary></indexterm>
<indexterm role="cp"><primary>tipo de letra monoespacio</primary></indexterm>
<indexterm role="cp"><primary>fixed-width font</primary></indexterm>
<para>Typewriter (monoespacio, ancho fijo).
</para>
</listitem></varlistentry></variablelist>
<para>El comando <literal>\em</literal> es la versión incondicional de <literal>\emph</literal>.
</para>
<para>Los siguientes comandos se utilizan  en modo matemático.  Ellos no son
acumulativos, por lo  que <literal>\mathbf{\mathit{<replaceable>symbol</replaceable>}}</literal> no
crea una  negrita y  cursiva <replaceable>symbol</replaceable>; 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.
</para>
<variablelist><varlistentry><term><literal>\mathrm</literal>
</term><listitem><indexterm role="fn"><primary>\mathrm</primary></indexterm>
<para>Roman, para usar en modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><literal>\mathbf</literal>
</term><listitem><indexterm role="fn"><primary>\mathbf</primary></indexterm>
<para>Negrita (boldface), para usar en modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><literal>\mathsf</literal>
</term><listitem><indexterm role="fn"><primary>\mathsf</primary></indexterm>
<para>Sans serif, para usar en modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><literal>\mathtt</literal>
</term><listitem><indexterm role="fn"><primary>\mathtt</primary></indexterm>
<para>Typewriter, para usar en modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><literal>\mathit</literal>
</term><term><literal>(\mit)</literal>
</term><listitem><para>Italics, para usar en modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><literal>\mathnormal</literal>
</term><listitem><indexterm role="fn"><primary>\mathnormal</primary></indexterm>
<para>Para usar en modo matemático,  por ejemplo, dentro de otra declaración
de estilo de tipo.
</para>
</listitem></varlistentry><varlistentry><term><literal>\mathcal</literal>
</term><listitem><indexterm role="fn"><primary>\mathcal</primary></indexterm>
<para>Letras caligráficas, para uso en modo matemático.
</para>
</listitem></varlistentry></variablelist>
<anchor id="_005cmathversion"/><indexterm role="fn"><primary>\mathversion</primary></indexterm>
<indexterm role="cp"><primary>matemáticas, negrita</primary></indexterm>
<indexterm role="cp"><primary>bold math</primary></indexterm>
<para>Además,  el comando  <literal>\mathversion{bold}</literal>  se  puede usar  para
cambiar    a   letras    y   símbolos    en   negrita    en   fórmulas
<literal>\mathversion{normal}</literal> restaura el valor predeterminado.
</para>
<anchor id="_005coldstylenums"/><indexterm role="fn"><primary>\oldstylenums</primary></indexterm>
<indexterm role="cp"><primary>numerales, estilo antiguo</primary></indexterm>
<indexterm role="cp"><primary>números de estilo antiguo</primary></indexterm>
<indexterm role="cp"><primary>lining numerals</primary></indexterm>
<para>Finalmente, el  comando <literal>\oldstylenums{<replaceable>numerals</replaceable>}</literal> compone
los  llamados números  de  &#8220;estilo antiguo&#8221;,  que tienen  diferentes
alturas  y  profundidades  (y  a veces  anchos)  del  &#8220;revestimiento&quot;
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 <literal>\textbf</literal>  (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:
<ulink url="https://www.texfaq.org/FAQ-osf">https://www.texfaq.org/FAQ-osf</ulink>.
</para>

</sect1>
<sect1 label="4.3" id="Tama_00f1os-de-los-tipos-de-letra">
<title>Tamaños de los tipos de letra</title>

<indexterm role="cp"><primary>Tamaños de los tipos de letra</primary></indexterm>
<indexterm role="cp"><primary>tamaños de letra</primary></indexterm>
<indexterm role="cp"><primary>tamaños de texto</primary></indexterm>

<para>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
&#8216;<literal>10pt</literal>&#8217;,  &#8216;<literal>11pt</literal>&#8217;   y  &#8216;<literal>12pt</literal>&#8217;  opciones  de   tamaño  del
documento, respectivamente (véase <link linkend="Opciones-de-la-clase-documento">Opciones de la clase documento</link>).
</para>
<indexterm role="fn"><primary>\tiny</primary></indexterm>
<indexterm role="fn"><primary>\scriptsize</primary></indexterm>
<indexterm role="fn"><primary>\footnotesize</primary></indexterm>
<indexterm role="fn"><primary>\small</primary></indexterm>
<indexterm role="fn"><primary>\normalsize</primary></indexterm>
<indexterm role="fn"><primary>\large</primary></indexterm>
<indexterm role="fn"><primary>\Large</primary></indexterm>
<indexterm role="fn"><primary>\LARGE</primary></indexterm>
<indexterm role="fn"><primary>\huge</primary></indexterm>
<indexterm role="fn"><primary>\Huge</primary></indexterm>

<informaltable><tgroup cols="4"><colspec colwidth="30*"></colspec><colspec colwidth="7*"></colspec><colspec colwidth="7*"></colspec><colspec colwidth="5*"></colspec><thead><row><entry><para>Comando  </para></entry><entry><para><literal>10pt</literal>  </para></entry><entry><para><literal>11pt</literal>  </para></entry><entry><para><literal>12pt</literal>
</para></entry></row></thead><tbody><row><entry><para><literal>\tiny</literal>
</para></entry><entry><para>5          </para></entry><entry><para>6          </para></entry><entry><para>6
</para></entry></row><row><entry><para><literal>\scriptsize</literal>
</para></entry><entry><para>7          </para></entry><entry><para>8          </para></entry><entry><para>8
</para></entry></row><row><entry><para><literal>\footnotesize</literal>
</para></entry><entry><para>8          </para></entry><entry><para>9          </para></entry><entry><para>10
</para></entry></row><row><entry><para><literal>\small</literal>
</para></entry><entry><para>9          </para></entry><entry><para>10         </para></entry><entry><para>10.95
</para></entry></row><row><entry><para><literal>\normalsize</literal> (predeterminado)
</para></entry><entry><para>10         </para></entry><entry><para>10.95      </para></entry><entry><para>12
</para></entry></row><row><entry><para><literal>\large</literal>
</para></entry><entry><para>12         </para></entry><entry><para>12         </para></entry><entry><para>14.4
</para></entry></row><row><entry><para><literal>\Large</literal>
</para></entry><entry><para>14.4       </para></entry><entry><para>14.4       </para></entry><entry><para>17.28
</para></entry></row><row><entry><para><literal>\LARGE</literal>
</para></entry><entry><para>17.28      </para></entry><entry><para>17.28      </para></entry><entry><para>20.74
</para></entry></row><row><entry><para><literal>\huge</literal>
</para></entry><entry><para>20.74      </para></entry><entry><para>20.74      </para></entry><entry><para>24.88
</para></entry></row><row><entry><para><literal>\Huge</literal>
</para></entry><entry><para>24.88      </para></entry><entry><para>24.88      </para></entry><entry><para>24.88
</para></entry></row></tbody></tgroup></informaltable>
<indexterm role="cp"><primary>forma de declaración de los comandos de tamaño del tipo de letra</primary></indexterm>
<para>Los comandos se enumeran aquí en forma de declaración (no de entorno),
ya que así es como se usan típicamente.  Por ejemplo:
</para>
<screen>\begin{quotation} \small
  El Tao que se puede nombrar no es el Tao eterno.
\end{quotation}
</screen>
<para>Aquí, el  alcance del  <literal>\small</literal> dura hasta  el final  del entorno
<literal>quotation</literal>.   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 <literal>{\small Este  texto está escrito en letra
pequeña.}</literal>.
</para>
<para>Tratar de usar  estos comandos en matemáticas,  como con <literal>$\small
mv^2/2$</literal>,  da  como  resultado  &#8216;<literal>Advertencia  de  fuentes  LaTeX:
Comando \small inválido  en modo matemático</literal>&#8217;, 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  <literal>displaymath</literal>
(véase <link linkend="F_00f3rmulas-math">Fórmulas   math</link>),  o   uno  de   los  entornos   del  paquete
<literal>amsmath</literal>.  Para  matemáticas en línea,  como en una  tabla de
fórmulas, una alternativa es algo como <literal>{\small $mv^2/2$}</literal>.  (A
veces  <literal>\scriptsize</literal> y  <literal>\scriptstyle</literal> 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. Véase <link linkend="Estilos-math">Estilos math</link>).
</para>
<indexterm role="cp"><primary>Forma de entorno de comandos de tamaño de fuente</primary></indexterm>
<para>También se define un <firstterm>entorno form</firstterm> de cada uno de estos comandos;
por ejemplo, <literal>\begin{tiny}...\end{tiny}</literal>.  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.
</para>
<para>(Aparte:  Técnicamente,  debido a  la  forma  en que  &latex;  define
<literal>\begin</literal> y <literal>\end</literal>,  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).
</para>

</sect1>
<sect1 label="4.4" id="Comandos-de-bajo-nivel-del-tipo-de-letra">
<title>Comandos de bajo nivel del tipo de letra</title>

<indexterm role="cp"><primary>comandos de tipo de letra de bajo nivel</primary></indexterm>
<indexterm role="cp"><primary>comandos de tipo de letra, bajo nivel</primary></indexterm>

<para>Estos  comandos están  destinados principalmente  a los  escritores de
macros  y  paquetes.   Los  comandos   enumerados  aquí  son  solo  un
subconjunto de los disponibles.
<!-- xx pero debería estar completo -->
<!-- xx algo sobre leer ENCFAM.fd en última instancia? -->
</para>
<variablelist><anchor id="comandos-de-tipos-de-letra-de-bajo-nivel-fontencoding"/><varlistentry><term><literal>\fontencoding{<replaceable>encoding</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\fontencoding</primary></indexterm>
<para>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 <literal>OT1</literal>,  La codificación  original de  Knuth para
Computer  Modern (la  predeterminada), y  <literal>T1</literal>, 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
<ulink url="https://ctan.org/pkg/encguide">https://ctan.org/pkg/encguide</ulink>.
</para>
<anchor id="comandos-de-tipo-de-letra-de-bajo-nivel-fontfamily"/></listitem></varlistentry><varlistentry><term><literal>\fontfamily{<replaceable>family</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\fontfamily</primary></indexterm>
<indexterm role="cp"><primary>familias, de tipos de letra</primary></indexterm>
<indexterm role="cp"><primary>catálogo de fuentes</primary></indexterm>
<para>Selecciona   la  familia   del   tipo  de   letra.    La  página   web
<ulink url="https//tug.org/FontCatalogue/">https//tug.org/FontCatalogue/</ulink> 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.
</para>
<informaltable><tgroup cols="2"><colspec colwidth="14*"></colspec><colspec colwidth="51*"></colspec><tbody><row><entry><para><literal>pag</literal>
</para></entry><entry><para>Avant Garde
</para></entry></row><row><entry><para><literal>fvs</literal>
</para></entry><entry><para>Bitstream Vera Sans
</para></entry></row><row><entry><para><literal>pbk</literal>
</para></entry><entry><para>Bookman
</para></entry></row><row><entry><para><literal>bch</literal>
</para></entry><entry><para>Charter
</para></entry></row><row><entry><para><literal>ccr</literal>
</para></entry><entry><para>Computer Concrete
</para></entry></row><row><entry><para><literal>cmr</literal>
</para></entry><entry><para>Computer Modern
</para></entry></row><row><entry><para><literal>cmss</literal>
</para></entry><entry><para>Computer Modern Sans Serif
</para></entry></row><row><entry><para><literal>cmtt</literal>
</para></entry><entry><para>Computer Modern Typewriter
</para></entry></row><row><entry><para><literal>pcr</literal>
</para></entry><entry><para>Courier
</para></entry></row><row><entry><para><literal>phv</literal>
</para></entry><entry><para>Helvetica
</para></entry></row><row><entry><para><literal>fi4</literal>
</para></entry><entry><para>Inconsolata
</para></entry></row><row><entry><para><literal>lmr</literal>
</para></entry><entry><para>Latin Modern
</para></entry></row><row><entry><para><literal>lmss</literal>
</para></entry><entry><para>Latin Modern Sans
</para></entry></row><row><entry><para><literal>lmtt</literal>
</para></entry><entry><para>Latin Modern Typewriter
</para></entry></row><row><entry><para><literal>pnc</literal>
</para></entry><entry><para>New Century Schoolbook
</para></entry></row><row><entry><para><literal>ppl</literal>
</para></entry><entry><para>Palatino
</para></entry></row><row><entry><para><literal>ptm</literal>
</para></entry><entry><para>Times
</para></entry></row><row><entry><para><literal>uncl</literal>
</para></entry><entry><para>Uncial
</para></entry></row><row><entry><para><literal>put</literal>
</para></entry><entry><para>Utopia
</para></entry></row><row><entry><para><literal>pzc</literal>
</para></entry><entry><para>Zapf Chancery
</para></entry></row></tbody></tgroup></informaltable>

<anchor id="comandos-de-tipo-de-letra-de-bajo-nivel-fontseries"/></listitem></varlistentry><varlistentry><term><literal>\fontseries{<replaceable>series</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\fontseries</primary></indexterm>
<indexterm role="cp"><primary>serie, de tipos de letra</primary></indexterm>
<para>Selecciona la  serie de  tipos de letra.   Una <firstterm>serie</firstterm>  combina un
<firstterm>weight</firstterm> y un <firstterm>width</firstterm>.  Por lo  general, un tipo de letra solo
admite algunas de las posibles combinaciones.  Algunos valores comunes
de series combinadas incluyen:
</para>
<informaltable><tgroup cols="2"><colspec colwidth="2*"></colspec><colspec colwidth="17*"></colspec><tbody><row><entry><para><literal>m</literal>
</para></entry><entry><para>Medium (normal)
</para></entry></row><row><entry><para><literal>b</literal>
</para></entry><entry><para>Bold
</para></entry></row><row><entry><para><literal>c</literal>
</para></entry><entry><para>Condensed
</para></entry></row><row><entry><para><literal>bc</literal>
</para></entry><entry><para>Bold condensed
</para></entry></row><row><entry><para><literal>bx</literal>
</para></entry><entry><para>Bold extended
</para></entry></row></tbody></tgroup></informaltable>
<indexterm role="cp"><primary>grosor, tipos de letra</primary></indexterm>
<para>Los posibles valores de grosor, individualmente, son:
</para>
<informaltable><tgroup cols="2"><colspec colwidth="2*"></colspec><colspec colwidth="18*"></colspec><tbody><row><entry><para><literal>ul</literal>
</para></entry><entry><para>Ultra light
</para></entry></row><row><entry><para><literal>el</literal>
</para></entry><entry><para>Extra light
</para></entry></row><row><entry><para><literal>l</literal>
</para></entry><entry><para>Light
</para></entry></row><row><entry><para><literal>sl</literal>
</para></entry><entry><para>Semi light
</para></entry></row><row><entry><para><literal>m</literal>
</para></entry><entry><para>Medium (normal)
</para></entry></row><row><entry><para><literal>sb</literal>
</para></entry><entry><para>Semi bold
</para></entry></row><row><entry><para><literal>b</literal>
</para></entry><entry><para>Bold
</para></entry></row><row><entry><para><literal>eb</literal>
</para></entry><entry><para>Extra bold
</para></entry></row><row><entry><para><literal>ub</literal>
</para></entry><entry><para>Ultra bold
</para></entry></row></tbody></tgroup></informaltable>
<indexterm role="cp"><primary>anchos, de tipos de letra</primary></indexterm>
<para>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):
</para>
<informaltable><tgroup cols="2"><colspec colwidth="2*"></colspec><colspec colwidth="15*"></colspec><tbody><row><entry><para><literal>uc</literal>
</para></entry><entry><para>Ultra condensed
</para></entry></row><row><entry><para><literal>ec</literal>
</para></entry><entry><para>Extra condensed
</para></entry></row><row><entry><para><literal>c</literal>
</para></entry><entry><para>Condensed
</para></entry></row><row><entry><para><literal>sc</literal>
</para></entry><entry><para>Semi condensed
</para></entry></row><row><entry><para><literal>m</literal>
</para></entry><entry><para>Medium
</para></entry></row><row><entry><para><literal>sx</literal>
</para></entry><entry><para>Semi expanded
</para></entry></row><row><entry><para><literal>x</literal>
</para></entry><entry><para>Expanded
</para></entry></row><row><entry><para><literal>ex</literal>
</para></entry><entry><para>Extra expanded
</para></entry></row><row><entry><para><literal>ux</literal>
</para></entry><entry><para>Ultra expanded
</para></entry></row></tbody></tgroup></informaltable>
<para>Al formar  la cadena  <replaceable>series</replaceable> a  partir del peso  y el  ancho, la
<literal>m</literal>  suelta significa  grosor medio  o ancho  medio, a  menos que
ambos, el grosor y  el ancho sean <literal>m</literal>, en cuyo  caso usa solo una
(&#8216;<literal><literal>m</literal></literal>&#8217;).
</para>
<anchor id="comandos-de-tipos-de-letra-de-bajo-nivel-fontshape"/></listitem></varlistentry><varlistentry><term><literal>\fontshape{<replaceable>shape</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\fontshape</primary></indexterm>
<indexterm role="cp"><primary>formas, de tipos de letra</primary></indexterm>
<para>Selecciona la forma del tipo de letra. Las formas válidas son:
</para>
<informaltable><tgroup cols="2"><colspec colwidth="2*"></colspec><colspec colwidth="19*"></colspec><tbody><row><entry><para><literal>n</literal>
</para></entry><entry><para>Upright (normal)
</para></entry></row><row><entry><para><literal>it</literal>
</para></entry><entry><para>Italic
</para></entry></row><row><entry><para><literal>sl</literal>
</para></entry><entry><para>Slanted (oblique)
</para></entry></row><row><entry><para><literal>sc</literal>
</para></entry><entry><para>Small caps
</para></entry></row><row><entry><para><literal>ui</literal>
</para></entry><entry><para>Upright italics
</para></entry></row><row><entry><para><literal>ol</literal>
</para></entry><entry><para>Outline
</para></entry></row></tbody></tgroup></informaltable>
<para>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.
</para>
<anchor id="comandos-fontsize-de-bajo-nivel"/></listitem></varlistentry><varlistentry><term><literal>\fontsize{<replaceable>size</replaceable>}{<replaceable>skip</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\fontsize</primary></indexterm>
<indexterm role="cp"><primary>tamaño del tipo de letra</primary></indexterm>
<indexterm role="fn"><primary>\baselineskip</primary></indexterm>
<para>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
(<literal>pt</literal>).   El interlineado  es el  espacio vertical  nominal entre
líneas,  línea  base  a  línea  base.  Se  almacena  en  el  parámetro
<literal>\baselineskip</literal>.  El <literal>\baselineskip</literal>  predeterminado para el
tipo  de  letra Computer  Modern  es  1.2 veces  el  <literal>\fontsize</literal>.
Cambiar <literal>\baselineskip</literal> directamente no es recomendable ya que su
valor se  restablece cada vez  que ocurre un  cambio de tamaño;  en su
lugar    usa    <literal>\baselinestretch</literal>.    (véase <link linkend="_005cbaselineskip-y-_005cbaselinestretch">\baselineskip    y
\baselinestretch</link>).
</para>
<anchor id="lines-de-comandos-de-tipo-de-letra-de-bajo-nivel"/></listitem></varlistentry><varlistentry><term><literal>\linespread{<replaceable>factor</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\linespread</primary></indexterm>
<para>Equivalente                                                          a
<literal>\renewcommand{\baselinestretch}{<replaceable>factor</replaceable>}</literal>,  y   por  lo
tanto  debe  ir seguido  de  <literal>\selectfont</literal>  para tener  cualquier
efecto.  Mejor especificado  en  el  preámbulo. Véase <link linkend="_005cbaselineskip-y-_005cbaselinestretch">\baselineskip  y
\baselinestretch</link>, por usar el paquete <literal>setspace</literal> en su lugar.
</para>
<anchor id="comandos-de-tipos-de-letra-de-bajo-nivel-selectfont"/></listitem></varlistentry><varlistentry><term><literal>\selectfont</literal>
</term><listitem><indexterm role="fn"><primary>\selectfont</primary></indexterm>
<para>Los efectos de  los comandos de tipo de  letra descritos anteriormente
no  suceden  hasta   que  se  llama  a   <literal>\selectfont</literal>,  como  en
<literal>\fontfamily{<replaceable>familyname</replaceable>}\selectfont</literal>.   A menudo  es útil
poner            esto            en            una            macro:

<literal>\newcommand*{\myfont}{\fontfamily{<replaceable>familyname</replaceable>}\selectfont}</literal>

(véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand y \renewcommand</link>).
</para>
<anchor id="comandos-de-tipos-de-letra-de-bajo-nivel-usefont"/></listitem></varlistentry><varlistentry><term><literal>\usefont{<replaceable>enc</replaceable>}{<replaceable>family</replaceable>}{<replaceable>series</replaceable>}{<replaceable>shape</replaceable>}</literal>
</term><listitem><indexterm role="fn"><primary>\usefont</primary></indexterm>
<para>Lo  mismo  que  invocar  a  <literal>\fontencoding</literal>,  <literal>\fontfamily</literal>,
<literal>\fontseries</literal>  y  <literal>\fontshape</literal>  con  los  parámetros  dados,
seguidos de <literal>\selectfont</literal>.  Por ejemplo:
</para>
<screen>\usefont{ot1}{cmr}{m}{n}
</screen>
</listitem></varlistentry></variablelist>

</sect1>
</chapter>
<chapter label="5" id="Composici_00f3n">
<title>Composición</title>

<indexterm role="cp"><primary>comandos de composición</primary></indexterm>

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


<sect1 label="5.1" id="_005conecolumn">
<title><literal>\onecolumn</literal></title>

<indexterm role="fn"><primary>\onecolumn</primary></indexterm>
<indexterm role="cp"><primary>one-column output</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\onecolumn
</screen>
<para>Inicia una nueva  página y genera una salida de  una sola columna.  Si
al documento le  es dada la opción de  clase <literal>onecolumn</literal> entonces
este es el valor predeterminado del comportamiento (véase <link linkend="Opciones-de-la-clase-documento">Opciones de
la clase documento</link>).  Este comando es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>

</sect1>
<sect1 label="5.2" id="_005ctwocolumn">
<title><literal>\twocolumn</literal></title>

<indexterm role="fn"><primary>\twocolumn</primary></indexterm>
<indexterm role="cp"><primary>texto multicolumna</primary></indexterm>
<indexterm role="cp"><primary>salida de dos columnas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\twocolumn
\twocolumn[<replaceable>texto preliminar de una columna</replaceable>]
</screen>
<para>Inicia una nueva  página y genera un resultado de  dos columnas. Si se
entrega al documento la opción de clase <literal>twocolumn</literal> entonces esta
es la  predeterminada (véase <link linkend="Opciones-de-la-clase-documento">Opciones de la  clase documento</link>).  Este
comando es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Si el  argumento opcional <replaceable>texto  preliminar de una  columna</replaceable> está
presente, se escribe  en el modo de una columna  antes de que comience
la composición tipográfica de dos columnas.
</para>
<para>Estos parámetros controlan la composición  tipográfica en la salida de
dos columnas:
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\columnsep</primary></indexterm><literal>\columnsep</literal>
</term><listitem><anchor id="doscolumnas-columnasep"/><para>La distancia  entre columnas. El valor
predeterminado   es  35   puntos.   Cámbialo   con  un   comando  como
<literal>\setlength{\columnsep}{40pt}</literal>. Lo debes cambiar antes de que
comience el modo de dos columnas; en el preámbulo es un buen lugar.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\columnseprule</primary></indexterm><literal>\columnseprule</literal>
</term><listitem><anchor id="doscolumnas-columnasseprule"/><para>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
<literal>\setlength{\columnseprule}{0.4pt}</literal>,  antes  de  comenzar  el
modo de dos columnas.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\columnwidth</primary></indexterm><literal>\columnwidth</literal>
</term><listitem><anchor id="doscolumnas-columnwidth"/><para>El ancho de  una sola columna.  En el
modo de una columna esto es  igual a <literal>\textwidth</literal>.  En el modo de
dos columnas de manera predeterminada,  &latex; establece el ancho de
cada  una de  las dos  columnas, para  que <literal>\columnwidth</literal>  sea la
mitad de <literal>\textwidth</literal> menos <literal>\columnsep</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>En un documento de dos columnas, los entornos destacados <literal>table*</literal>
y  <literal>figure*</literal>  tienen dos  columnas  de  ancho, mientras  que  los
entornos sin  estrellas <literal>table</literal>  y <literal>figure</literal> ocupan  solo una
columna  (véase <link linkend="figure">figure</link> y  véase <link linkend="table">table</link>). &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.
</para>
<variablelist><anchor id="doscolumnas-dbltopfraction"/><varlistentry><term><indexterm role="fn"><primary>\dbltopfraction</primary></indexterm><literal>\dbltopfraction</literal>
</term><listitem><para>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
<literal>table*</literal> o <literal>figure*</literal>  no debe superar <literal>0.7\textheight</literal>.
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:
</para>
<itemizedlist><listitem><para>Usa el especificador de ubicación  <literal>[tp]</literal> 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.
</para>
</listitem><listitem><para>Utiliza  el  especificador de  ubicación  <literal>[t!]</literal>  para anular  el
efecto de <literal>\dbltopfraction</literal> para este flotante en particular.
</para>
</listitem><listitem><para>Aumenta el  valor de <literal>\dbltopfraction</literal> a  un número adecuadamente
grande,  para  evitar ir  a  páginas  flotantes  tan pronto  como  sea
posible.
</para></listitem></itemizedlist>
<para>Lo puedes redefinir, como con
<literal>\renewcommand{\dbltopfraction}{0.9}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dblfloatpagefraction</primary></indexterm><literal>\dblfloatpagefraction</literal>
</term><listitem><anchor id="doscolumnas-dblfloatpagefraction"/><para>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  <literal>0.5</literal>.    Cámbialo  con
<literal>\renewcommand</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dblfloatsep</primary></indexterm><literal>\dblfloatsep</literal>
</term><listitem><anchor id="doscolumnas-dblfloatsep"/><para>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 <literal>12pt plus2pt minus2pt</literal> para
un  documento establecido  en <literal>10pt</literal>  o <literal>11pt</literal>  y <literal>14pt
plus2pt minus4pt</literal> para un documento establecido en <literal>12pt</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dbltextfloatsep</primary></indexterm><literal>\dbltextfloatsep</literal>
</term><listitem><anchor id="doscolumnas-dbltextfloatsep"/><para>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 <literal>20pt plus2pt minus4pt</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dbltopnumber</primary></indexterm><literal>\dbltopnumber</literal>
</term><listitem><anchor id="doscolumnas-dbltopnumber"/><para>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 <literal>2</literal>.
</para>
</listitem></varlistentry></variablelist>
<!-- De egreg en https://tex.stackexchange.com/a/142232/339 -->
<para>Este ejemplo usa el argumento opcional de <literal>\twocolumn</literal> para crear
un título que abarca el artículo de dos columnas:
</para>
<screen>\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  &amp;\authormark{2}Departamento dos \\
     Escuela uno                   &amp;Escuela dos
  \end{tabular}\\[3em] % espacio debajo de la parte del título
  }]

Texto de dos columnas aquí.
</screen>

</sect1>
<sect1 label="5.3" id="_005cflushbottom">
<title><literal>\flushbottom</literal></title>

<indexterm role="fn"><primary>\flushbottom</primary></indexterm>

<para>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.
</para>
<para>Si &tex; no  puede estirar satisfactoriamente el  espacio vertical en
una  página  luego obtienes  un  mensaje  como &#8216;<literal>Infralleno  \vbox
(maliciosos  10000)  ocurrió mientras  \output  está  activa</literal>&#8217;.  Si  lo
consigues,    una   opción    es   cambiar    a   <literal>\raggedbottom</literal>
(véase <link linkend="_005craggedbottom">\raggedbottom</link>).    Alternativamente,    puedes   ajustar   el
<literal>textheight</literal> para hacer páginas  compatibles, o puedes agregar un
poco  de  pegamento de  estiramiento  vertical  entre líneas  o  entre
párrafos, como en  <literal>\setlength{\parskip}{0ex plus0.1ex}</literal>.  Tu
última opción es, en una etapa  de edición final, ajustar la altura de
las páginas individuales (véase <link linkend="_005cenlargethispage">\enlargethispage</link>).
</para>
<para>El estado <literal>\flushbottom</literal> es el predeterminado solo si seleccionas
la opción  <literal>twocolumn</literal> de la clase  documento (véase <link linkend="Opciones-de-la-clase-documento">Opciones de
la clase documento</link>), y para índices hechos con <literal>makeidx</literal>.
</para>

</sect1>
<sect1 label="5.4" id="_005craggedbottom">
<title><literal>\raggedbottom</literal></title>

<indexterm role="fn"><primary>\raggedbottom</primary></indexterm>
<indexterm role="cp"><primary>estirar, omitiendo vertical</primary></indexterm>

<para>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.  Véase <link linkend="_005cflushbottom">\flushbottom</link>.
</para>
<para>Este  es el  valor predeterminado  a menos  que selecciones  la opción
<literal>twocolumn</literal> de  la clase  documento (véase <link linkend="Opciones-de-la-clase-documento">Opciones de  la clase
documento</link>).
</para>

</sect1>
<sect1 label="5.5" id="Par_00e1metros-de-composici_00f3n-de-p_00e1gina">
<title>Parámetros de composición de página</title>

<indexterm role="cp"><primary>parámetros de la composición de página</primary></indexterm>
<indexterm role="cp"><primary>parámetros, composición de página</primary></indexterm>
<indexterm role="cp"><primary>composición, parámetros de página para</primary></indexterm>
<indexterm role="cp"><primary>encabezado, parámetros para</primary></indexterm>
<indexterm role="cp"><primary>pie de página, parámetros para</primary></indexterm>
<indexterm role="cp"><primary>ejecutando encabezados y pie de página</primary></indexterm>

<variablelist><varlistentry><term><indexterm role="fn"><primary>\columnsep</primary></indexterm><literal>\columnsep</literal>
</term><term><indexterm role="fn"><primary>\columnseprule</primary></indexterm><literal>\columnseprule</literal>
</term><term><indexterm role="fn"><primary>\columnwidth</primary></indexterm><literal>\columnwidth</literal>
</term><listitem><indexterm role="fn"><primary>\columnsep</primary></indexterm>
<indexterm role="fn"><primary>\columnseprule</primary></indexterm>
<indexterm role="fn"><primary>\columnwidth</primary></indexterm>
<anchor id="par_00e1metros-columnasep-del-dise_00f1o-de-p_00e1gina"/><anchor id="par_00e1metros-columnseprule-del-dise_00f1o-de-p_00e1gina"/><anchor id="par_00e1metros-columnwidth-del-dise_00f1o-de-p_00e1gina"/><para>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  <literal>twocolumn</literal> está en vigor (véase <link linkend="Opciones-de-la-clase-documento">Opciones
de la clase documento</link>).  Véase <link linkend="_005ctwocolumn">\twocolumn</link>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\headheight</primary></indexterm><literal>\headheight</literal>
</term><listitem><indexterm role="fn"><primary>\headheight</primary></indexterm>
<anchor id="par_00e1metros-headheight-del-dise_00f1o-de-p_00e1gina"/><para>Altura de la caja
que contiene la cabecera móvil.  El valor predeterminado en las clases
<literal>article</literal>, <literal>report</literal> y <literal>book</literal>  son &#8216;<literal>12pt</literal>&#8217;, en todos
los tamaños de letra.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\headsep</primary></indexterm><literal>\headsep</literal>
</term><listitem><indexterm role="fn"><primary>\headsep</primary></indexterm>
<anchor id="par_00e1metros-headep-del-dise_00f1o-de-p_00e1gina"/><para>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
<literal>article</literal>   y  <literal>report</literal>   es  &#8216;<literal>25pt</literal>&#8217;.    En  la   clase
<literal>book</literal>  el   valor  predeterminado  es:  si   el  documento  está
configurado en  10pt, entonces es &#8216;<literal>0.25in</literal>&#8217;,  y en 11pt o  12pt es
&#8216;<literal>0.275in</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\footskip</primary></indexterm><literal>\footskip</literal>
</term><listitem><indexterm role="fn"><primary>\footskip</primary></indexterm>
<anchor id="par_00e1metros-de-dise_00f1o-de-p_00e1gina-footskip"/><para>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  <literal>article</literal> y
<literal>report</literal>  es  &#8216;<literal>30pt</literal>&#8217;.   En  la clase  <literal>book</literal>  el  valor
predeterminado  es: cuando  el tamaño  de letra  es de  10 puntos,  el
predeterminado   es   &#8216;<literal>0.35in</literal>&#8217;,   mientras   que   en   11pt   es
&#8216;<literal>0.38in</literal>&#8217;, y en 12pt es &#8216;<literal>30pt</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\linewidth</primary></indexterm><literal>\linewidth</literal>
</term><listitem><indexterm role="fn"><primary>\linewidth</primary></indexterm>
<anchor id="par_00e1metros-linewidth-del-dise_00f1o-de-p_00e1gina"/><para>Ancho  de la línea
actual, disminuido para cada  <literal>lista</literal> anidada (véase <link linkend="list">list</link>).  Es
decir,   el   valor   nominal   de  <literal>\linewidth</literal>   es   igual   a
<literal>\textwidth</literal> pero para cada <literal>\linewidth</literal> de la lista anidada
se  reduce  por  la  suma   del  <literal>\leftmargin</literal>  de  esa  lista  y
<literal>\rightmargin</literal> (véase <link linkend="itemize">itemize</link>).
<!-- El valor predeterminado  varía con el tamaño del tipo  de letra, el -->
<!-- ancho del papel,  el modo de dos columnas, etc.   Para un documento -->
<!-- @code{article} configurado en 10 puntos, el valor predeterminado es -->
<!-- @samp{345pt}, mientras que en modo  de dos columnas se convierte en -->
<!-- @samp{229.5pt}. -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\marginparpush</primary></indexterm><literal>\marginparpush</literal>
</term><term><indexterm role="fn"><primary>\marginsep</primary></indexterm><literal>\marginsep</literal>
</term><term><indexterm role="fn"><primary>\marginparwidth</primary></indexterm><literal>\marginparwidth</literal>
</term><listitem><indexterm role="fn"><primary>\marginparpush</primary></indexterm>
<indexterm role="fn"><primary>\marginsep</primary></indexterm>
<indexterm role="fn"><primary>\marginparwidth</primary></indexterm>
<anchor id="par_00e1metros-marginparpush-del-dise_00f1o-de-p_00e1gina"/><anchor id="par_00e1metros-marginsep-del-dise_00f1o-de-p_00e1gina"/><anchor id="par_00e1metros-marginparwidth-del-dise_00f1o-de-p_00e1gina"/><para>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.
</para>
<para>Normalmente,  las  notas marginales  aparecen  en  el exterior  de  la
página,  pero la  declaración <literal>\reversemarginpar</literal>  cambia eso  (y
<literal>\normalmarginpar</literal> lo vuelve a cambiar).
</para>
<para>Los  valores  predeterminados   para  <literal>\marginparpush</literal>  tanto  en
<literal>book</literal> como  en las clases  <literal>article</literal> son: &#8216;<literal>7pt</literal>&#8217;  si el
documento  se establece  en 12pt,  y &#8216;<literal>5pt</literal>&#8217;  si el  documento está
configurado en 11 o 10 puntos.
</para>
<para>Para   <literal>\marginsep</literal>,  en   la  clase   <literal>article</literal>  el   valor
predeterminado es &#8216;<literal>10pt</literal>&#8217; excepto si el documento está configurado
en 10pt  y en modo  de dos columnas  donde el valor  predeterminado es
&#8216;<literal>11pt</literal>&#8217;.
</para>
<para>Para   <literal>\marginsep</literal>   en   la   clase   <literal>book</literal>,   el   valor
predeterminado es &#8216;<literal>10pt</literal>&#8217; en modo  de dos columnas y &#8216;<literal>7pt</literal>&#8217; en
modo de una columna.
</para>
<para>Para  <literal>\marginparwidth</literal>  tanto  en las  clases  <literal>book</literal>  como
<literal>article</literal>, en el modo de dos columnas, el valor predeterminado es
el 60 % de <literal>\paperwidth  &#8722; \textwidth</literal>, mientras que en el
modo de una columna es el 50% de esa distancia.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\oddsidemargin</primary></indexterm><literal>\oddsidemargin</literal>
</term><term><indexterm role="fn"><primary>\evensidemargin</primary></indexterm><literal>\evensidemargin</literal>
</term><listitem><indexterm role="fn"><primary>\oddsidemargin</primary></indexterm>
<indexterm role="fn"><primary>\evensidemargin</primary></indexterm>
<anchor id="par_00e1metros-oddsidemargin-del-dise_00f1o-de-p_00e1gina"/><anchor id="par_00e1metros-evensidemargin-del-dise_00f1o-de-p_00e1gina"/><!-- xx  TODO  vuelve a  alinear  en  la  versión  francesa que  es  más -->
<!--     completa/precisa. -->
<para>La longitud  de <literal>\oddsidemargin</literal> 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
<literal>twoside</literal> y  en todas las  páginas cuando <literal>oneside</literal>  está en
vigor.   Cuando <literal>twoside</literal>  está en  vigor, en  páginas pares,  la
distancia adicional a la izquierda es <literal>\evensidemargin</literal>.
</para>
<para>El valor predeterminado de &latex; es que <literal>\oddsidemargin</literal> es el
40% de  la diferencia entre <literal>\paperwidth</literal>  y <literal>\textwidth</literal>, y
<literal>\evensidemargin</literal> es el resto.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\paperheight</primary></indexterm><literal>\paperheight</literal>
</term><listitem><indexterm role="fn"><primary>\paperheight</primary></indexterm>
<anchor id="par_00e1metros-paperheight-del-dise_00f1o-de-p_00e1gina"/><para>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
<literal>\documentclass[a4paper]{article}</literal> (véase <link linkend="Opciones-de-la-clase-documento">Opciones de la clase
documento</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\paperwidth</primary></indexterm><literal>\paperwidth</literal>
</term><listitem><indexterm role="fn"><primary>\paperwidth</primary></indexterm>
<anchor id="par_00e1metros-paperwidth-del-dise_00f1o-de-p_00e1gina"/><para>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
<literal>\documentclass[a4paper]{article}</literal> (véase <link linkend="Opciones-de-la-clase-documento">Opciones de la clase
documento</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textheight</primary></indexterm><literal>\textheight</literal>
</term><listitem><indexterm role="fn"><primary>\textheight</primary></indexterm>
<anchor id="par_00e1metros-textheight-del-dise_00f1o-de-p_00e1gina"/><para>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  <literal>article</literal> o
<literal>report</literal>  el  valor   predeterminado  es  &#8216;<literal>43\baselineskip</literal>&#8217;,
mientras que  para un  <literal>book</literal> es &#8216;<literal>41\baselineskip</literal>&#8217;.   Con un
tamaño   de    letra   de    11pt,   el   valor    predeterminado   es
&#8216;<literal>38\baselineskip</literal>&#8217; para todas las clases  de documento.  A 12pt es
&#8216;<literal>36\baselineskip</literal>&#8217; para todas las clases.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textwidth</primary></indexterm><literal>\textwidth</literal>
</term><listitem><indexterm role="fn"><primary>\textwidth</primary></indexterm>
<anchor id="par_00e1metros-textwidth-del-dise_00f1o-de-p_00e1gina"/><para>El ancho horizontal
completo  de  todo  el  cuerpo   de  la  página.   Para  un  documento
<literal>article</literal>   o   <literal>report</literal>,   el   valor   predeterminado   es
&#8216;<literal>345pt</literal>&#8217;  cuando el  tamaño de  letra  elegido es  10pt, el  valor
predeterminado es &#8216;<literal>360pt</literal>&#8217; a 11pt, y es &#8216;<literal>390pt</literal>&#8217; a 12pt.  Para
un documento <literal>book</literal>, el  valor predeterminado es &#8216;<literal>4.5in</literal>&#8217; con
un tamaño de letra de 10pt y &#8216;<literal>5in</literal>&#8217; con 11pt o 12pt.
</para>
<para>En la  salida de  varias columnas,  <literal>\textwidth</literal> sigue  siendo el
ancho de todo el cuerpo de la página, mientras que <literal>\columnwidth</literal>
es el ancho de una columna (véase <link linkend="_005ctwocolumn">\twocolumn</link>).
</para>
<para>En las listas (véase <link linkend="list">list</link>),  <literal>\textwidth</literal> sigue siendo el ancho
de todo el cuerpo de la página (y <literal>\columnwidth</literal> el ancho de toda
la columna),  mientras que <literal>\linewidth</literal> puede  disminuir para las
listas anidadas.
</para>
<para>Dentro   de  una   minipágina   (véase <link linkend="minipage">minipage</link>)  o   <literal>\parbox</literal>
(véase <link linkend="_005cparbox">\parbox</link>), todos  los parámetros relacionados con  el ancho se
establecen en el ancho especificado,  y vuelven a sus valores normales
al final de <literal>minipage</literal> o <literal>\parbox</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\hsize</primary></indexterm><literal>\hsize</literal>
</term><listitem><indexterm role="fn"><primary>\hsize</primary></indexterm>
<anchor id="par_00e1metros-hsize-del-dise_00f1o-de-p_00e1gina"/><para>Esta entrada se incluye
para  completar:  <literal>\hsize</literal>  es   el  parámetro  primitivo  &tex;
utilizado cuando el texto se divide  en líneas.  No se debería usar en
documentos &latex; normales.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\topmargin</primary></indexterm><literal>\topmargin</literal>
</term><listitem><indexterm role="fn"><primary>topmargin</primary></indexterm>
<anchor id="par_00e1metros-topmargin-del-dise_00f1o-de-p_00e1gina"/><!-- xxx TODO  se  vuelve a alinear  en la versión  francesa que  es más -->
<!--     precisa. -->
<para>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:  <literal>\paperheight  &#8722;   2in  &#8722;  \headheight
&#8722; \headsep  &#8722; \textheight  &#8722; \footskip</literal>,  y luego
dividido por dos.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\topskip</primary></indexterm><literal>\topskip</literal>
</term><listitem><indexterm role="fn"><primary>\topskip</primary></indexterm>
<anchor id="par_00e1metros-topskip-del-dise_00f1o-de-p_00e1gina"/><para>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,
&#8216;<literal>10pt</literal>&#8217; en un tamaño de letra de 10pt.
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="5.6" id="_005cbaselineskip-y-_005cbaselinestretch">
<title><literal>\baselineskip</literal> y <literal>\baselinestretch</literal></title>

<anchor id="_005cbaselineskip"/><anchor id="_005cbaselinestretch"/><indexterm role="fn"><primary>\baselineskip</primary></indexterm>
<indexterm role="fn"><primary>\baselinestretch</primary></indexterm>
<indexterm role="fn"><primary>\linespread</primary></indexterm>
<indexterm role="cp"><primary>espacio entre lineas</primary></indexterm>
<indexterm role="cp"><primary>espacio interlinea</primary></indexterm>
<indexterm role="cp"><primary>inicial</primary></indexterm>
<indexterm role="cp"><primary>doble espacio</primary></indexterm>

<para>El <literal>\baselineskip</literal> es una longitud elástica (véase <link linkend="Longitudes">Longitudes</link>).
Da la <firstterm>inicial</firstterm>,  la distancia normal entre líneas  en un párrafo,
desde línea base a línea base.
</para>
<para>Por  lo general,  los autores  de documentos  no cambian  directamente
<literal>\baselineskip</literal> mientras  escribían.  En  su lugar,  se establece
mediante el comando de selección  <literal>\fontsize</literal> del tamaño de letra
de bajo nivel (véase <link linkend="comandos-fontsize-de-bajo-nivel">comandos fontsize  de bajo nivel</link>).  El valor de
<literal>\baselineskip</literal> se  restablece cada vez  que sucede un  cambio de
tipo   de   letra,   por   lo   que   cualquier   cambio   directo   a
<literal>\baselineskip</literal> 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 <literal>\baselinestretch</literal> a continuación.
</para>
<para>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  <literal>\fontsize{10pt}{12pt}</literal> 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
<literal>\baselineskip</literal> es un veinte por  ciento más grande que el tamaño
de la letra).
</para>
<!-- adaptado de preguntas frecuentes -->
<para>El <literal>\baselineskip</literal>  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 <literal>{\Huge Q}</literal>, se  aplastará en su
línea.  &tex; se  asegurará de que no raspe la  línea de arriba, pero
no cambiará el <literal>\baselineskip</literal> para  esa línea para hacer espacio
extra    arriba.    Para    solucionarlo,    usa   un    <literal>\strut</literal>
(véase <link linkend="_005cstrut">\strut</link>).
</para>
<para>El valor de <literal>\baselineskip</literal> 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.
</para>
<!-- Adaptado de "Lapsos en TeX" de B Beeton TB 42:1 p 13. -->
<screen>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$$}
</screen>
<indexterm role="fn"><primary>\lineskip</primary></indexterm>
<indexterm role="fn"><primary>\lineskiplimit</primary></indexterm>
<indexterm role="fn"><primary>\prevdepth</primary></indexterm>
<para>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  <literal>\baselineskip</literal>,  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  <literal>\lineskiplimit</literal>, entonces, &tex;  en su
lugar usa <literal>\lineskip</literal> 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  <literal>\prev depth</literal>,  que generalmente  contiene esa
profundidad.   Pero  al  comienzo   del  párrafo  (o  cualquier  lista
vertical) o  justo después  de una  regla, <literal>\prevdepth</literal>  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.
</para>
<para>En   las  clases   estándar  <literal>\lineskiplimit</literal>   es  0pt   y
<literal>\lineskip</literal> 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.
</para>
<para>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 <literal>\baselinestretch</literal>.  Escala
<literal>\baselineskip</literal> 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:  <literal>\renewcommand{\baselinestretch}{1.5}\selectfont</literal>.
</para>
<para>La  forma más  sencilla de  cambiar el  espacio entre  líneas para  un
documento es poner <literal>\linespread{<replaceable>factor</replaceable>}</literal> en el preámbulo.
Para espacios dobles,  toma <replaceable>factor</replaceable> como 1.6 y como  un espacio y
medio usa 1.3.   Estos números son aproximados: por  ejemplo, dado que
el  <literal>\baselineskip</literal> 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
<literal>\linespread</literal>             se              define             como
<literal>\renewcommand{\baselinestretch}{<replaceable>factor</replaceable>}</literal>  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
<literal>\selectfont</literal>).
</para>
<indexterm role="cp"><primary>package, <literal>setspace</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>setspace</literal> package</primary></indexterm>
<para>Un   enfoque   más    simple   es   el   paquete
<literal>setspace</literal>.  El ejemplo básico:
</para>
<screen>\usepackage{setspace}
\doublespacing  % o \onehalfspacing para 1.5
</screen>
<para>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 <literal>\singlespacing</literal>  para devolver  el espacio a  la normalidad.
En  el  cuerpo  del  documento,   una  mejor  práctica  que  usar  las
declaraciones  es  usar   entornos,  como  <literal>\begin{doublespace}
...  \end{doublespace}</literal>.  El  paquete  también  tiene comandos  para
hacer   espaciado  arbitrario:   <literal>\setstretch{<replaceable>factor</replaceable>}</literal>  y
<literal>\begin{spacing}{<replaceable>factor</replaceable>}  ...  \end{spacing}</literal>.   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.
</para>
</sect1>
<sect1 label="5.7" id="Flotantes">
<title>Flotantes</title>

<para>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.
</para>
<para>&latex; puede  tener varias  clases diferentes de  material flotante.
El   valor   predeterminado   son  las   dos   clases,   <literal>figure</literal>
(véase <link linkend="figure">figure</link>) y <literal>table</literal> (véase <link linkend="table">table</link>), pero puedes crear una
nueva clase con el paquete <literal>float</literal>.
</para>
<para>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.
</para>
<para>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.
</para>
<indexterm role="cp"><primary>colocación de flotantes</primary></indexterm>
<indexterm role="cp"><primary>especificador, ubicación flotante</primary></indexterm>
<para>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 <replaceable>placement</replaceable>.  Los valores  posibles son una secuencia de
las  letras  debajo.  El  valor predeterminado  para  <literal>figure</literal>  y
<literal>table</literal>,  en  ambas  clases,  <literal>article</literal>  y  <literal>book</literal>,  es
<literal>tbp</literal>.
</para>
<variablelist><varlistentry><term><literal>t</literal>
</term><listitem><para>(Top)&#8212;en la parte superior de una página de texto.
</para>
</listitem></varlistentry><varlistentry><term><literal>b</literal>
</term><listitem><para>(Bottom)&#8212;en la parte inferior de una página de texto.  (Sin embargo,
<literal>b</literal>   no  es   permitido   para  flotantes   de  ancho   completo
(<literal>figure*</literal>) con producción en  doble columna.  Para mejorar esto,
usa  <filename>stfloats</filename>  o  el  paquete <filename>dblfloatfix</filename>,  pero  ve  la
discusión   en  las   advertencias   en   las  preguntas   frecuentes:
<ulink url="https://www.texfaq.org/FAQ-2colfloat">https://www.texfaq.org/FAQ-2colfloat</ulink>.
</para>
</listitem></varlistentry><varlistentry><term><literal>h</literal>
</term><listitem><para>(Here)&#8212;en la  posición en  el texto  donde el  entorno <literal>figure</literal>
aparece.   Sin  embargo, <literal>h</literal>  no  está  permitido por  sí  mismo;
<literal>t</literal> se añade automáticamente.
</para>
<indexterm role="cp"><primary>aquí, poniendo flotantes</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>float</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>float</literal> package</primary></indexterm>
<para>Para  forzar absolutamente  que un  flotante aparezca
&#8220;aquí&#8221;,  puedes <literal>\usepackage{float}</literal>  y usa  el especificador
<literal>H</literal>  que  define.   Para  obtener más  información,  consulta  la
entrada          de          preguntas          frecuentes          en
<ulink url="https://www.texfaq.org/FAQ-figurehere">https://www.texfaq.org/FAQ-figurehere</ulink>.
</para>
</listitem></varlistentry><varlistentry><term><literal>p</literal>
</term><listitem><indexterm role="cp"><primary>página flotante</primary></indexterm>
<para>(Página de flotantes)&#8212;en una  <firstterm>página flotante</firstterm> separada, que es
una página que no contiene texto, solo flotantes.
</para>
</listitem></varlistentry><varlistentry><term><literal>!</literal>
</term><listitem><para>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 <literal>!</literal> <emphasis>no</emphasis> significa
&#8220;pon el flotante aquí&#8221;, ve más arriba.
</para>
</listitem></varlistentry></variablelist>
<para>Nota:  el   orden  en  que   aparecen  las  letras  en   el  argumento
<replaceable>placement</replaceable> no cambia el orden  en que &latex; intenta colocar el
flotante;  por   ejemplo,  <literal>btp</literal>   tiene  el  mismo   efecto  que
<literal>tbp</literal>.  Todo lo  que <replaceable>placement</replaceable> 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 <literal>tbp</literal>  es probar
cada ubicación excepto colocar el flotante donde ocurre en la fuente.
</para>
<para>Para evitar que  &latex; mueva flotantes al final del  documento o un
capítulo  puede usar  un comando  <literal>\clearpage</literal> para  comenzar una
nueva página e inserta todos los flotantes pendientes. Si no deseas un
salto  de página,  puedes usar  el paquete  <filename>afterpage</filename> y  emitir
<literal>\afterpage{\clearpage}</literal>.   Esto esperará  hasta que  la página
actual  haya   terminado  y   entonces  vuelca  todos   los  flotantes
pendientes.
</para>
<indexterm role="cp"><primary>package, <literal>flafter</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>flafter</literal> package</primary></indexterm>
<para>&latex; puede escribir  un flotante antes de donde
aparece en la fuente  (aunque en la misma página de  salida) si hay un
especificador <literal>t</literal> en el parámetro <replaceable>placement</replaceable>.  Si esto no se
desea, y se  elimina la <literal>t</literal> 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 <literal>flafter</literal> o usando el comando
<indexterm role="fn"><primary>\suppressfloats</primary></indexterm>
<literal>\suppressfloats[t]</literal>, lo  que provoca flotantes para  la posición
superior en esta página para pasar a la página siguiente.
</para>
<para>Parámetros relativos a las fracciones  de páginas ocupadas por float y
texto           no          flotante           (cámbialos          con
<literal>\renewcommand{<replaceable>parameter</replaceable>}{<replaceable>decimal entre 0 y 1</replaceable>}</literal>):
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\bottomfraction</primary></indexterm><literal>\bottomfraction</literal>
</term><listitem><indexterm role="fn"><primary>\bottomfraction</primary></indexterm>
<anchor id="fracci_00f3n-flotante-inferior"/><para>La  fracción máxima de  la página
que se permite  sea ocupada por flotantes en  el fondo; predeterminado
&#8216;<literal>.3</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\floatpagefraction</primary></indexterm><literal>\floatpagefraction</literal>
</term><listitem><indexterm role="fn"><primary>\floatpagefraction</primary></indexterm>
<anchor id="flotantes-floatpagefraction"/><para>La fracción  mínima de una página
flotante  que   debe  estar  ocupada  por   flotantes;  predeterminado
&#8216;<literal>.5</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textfraction</primary></indexterm><literal>\textfraction</literal>
</term><listitem><indexterm role="fn"><primary>\textfraction</primary></indexterm>
<anchor id="fracci_00f3n-de-texto-flotante"/><para>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 &#8216;<literal>.2</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\topfraction</primary></indexterm><literal>\topfraction</literal>
</term><listitem><indexterm role="fn"><primary>\topfraction</primary></indexterm>
<anchor id="fracci_00f3n-superior-flotante"/><para>Fracción  máxima  en  la  parte
superior  de una  página  que  se puede  ocupar  antes por  flotantes;
predeterminado &#8216;<literal>.7</literal>&#8217;.
</para></listitem></varlistentry></variablelist>
<para>Parámetros  relacionados  con el  espacio  vertical  alrededor de  los
flotantes    (cámbialos     con    un    comando    de     la    forma
<literal>\setlength{<replaceable>parameter</replaceable>}{<replaceable>expresión length</replaceable>}</literal>):
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\floatsep</primary></indexterm><literal>\floatsep</literal>
</term><listitem><indexterm role="fn"><primary>\floatsep</primary></indexterm>
<anchor id="flotantes-floatsep"/><para>Espacio  entre  flotantes  en  la  parte
superior  o inferior  de una  página; predefinido  &#8216;<literal>12pt más  2pt
menos 2pt</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\intextsep</primary></indexterm><literal>\intextsep</literal>
</term><listitem><indexterm role="fn"><primary>\intextsep</primary></indexterm>
<anchor id="flotantes-intextsep"/><para>Espacio encima y debajo de un flotante en
medio del texto principal; predeterminado &#8216;<literal>12pt plus2pt minus2pt</literal>&#8217;
para documentos de 10 y 11 puntos, y &#8216;<literal>14pt plus4pt minus4pt</literal>&#8217; para
documentos de 12 puntos.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textfloatsep</primary></indexterm><literal>\textfloatsep</literal>
</term><listitem><indexterm role="fn"><primary>\textfloatsep</primary></indexterm>
<anchor id="flotante-textfloatsep"/><para>Espacio   entre  el  último  (primer)
flotante en la parte superior (inferior) de una página; predeterminado
&#8216;<literal>20pt plus2pt minus4pt</literal>&#8217;.
</para></listitem></varlistentry></variablelist>
<para>Contadores  relacionados con  el  número de  flotantes  en una  página
(cámbialos       con      un       comando      de       la      forma
<literal>\setcounter{<replaceable>ctrname</replaceable>}{<replaceable>número natural</replaceable>}</literal>):
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>bottomnumber</primary></indexterm><literal>bottomnumber</literal>
</term><listitem><indexterm role="fn"><primary>bottomnumber</primary></indexterm>
<anchor id="flotante-bottomnumber"/><para>Número máximo de flotantes  que pueden
aparecer en la  parte inferior de una página  de texto; predeterminado
1.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>dbltopnumber</primary></indexterm><literal>dbltopnumber</literal>
</term><listitem><indexterm role="fn"><primary>dbltopnumber</primary></indexterm>
<anchor id="flotantes-dbltopnumber"/><para>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.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>topnumber</primary></indexterm><literal>topnumber</literal>
</term><listitem><indexterm role="fn"><primary>topnumber</primary></indexterm>
<anchor id="flotante-topnumber"/><para>Número  máximo  de  flotantes que  pueden
aparecer en la  parte superior de una página  de texto; predeterminado
2.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>totalnumber</primary></indexterm><literal>totalnumber</literal>
</term><listitem><indexterm role="fn"><primary>totalnumber</primary></indexterm>
<anchor id="flotante-totalnumber"/><para>Número máximo  de flotantes  que pueden
aparecer en una página de texto; predeterminado 3.
</para></listitem></varlistentry></variablelist>
<para>La      entrada       principal      de      preguntas&#160;frecuentes
&tex;&#160;relacionada           con          los           flotantes
<ulink url="https//www.texfaq.org/FAQ-floats">https//www.texfaq.org/FAQ-floats</ulink>   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 &#8220;Cómo  influir en  la posición  de los
entornos   flotantes    como   figure    y   table    en   &latex;?&#8221;
(<ulink url="https//www.latex-project.org/publications/2014-FMi-TUB-tb111mitt-float-placement.pdf">https//www.latex-project.org/publications/2014-FMi-TUB-tb111mitt-float-placement.pdf</ulink>).
</para>


<sect2 label="5.7.1" id="_005ccaption">
<title><literal>\caption</literal></title>

<indexterm role="fn"><primary>\caption</primary></indexterm>
<indexterm role="cp"><primary>leyendas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\caption{<replaceable>caption-text</replaceable>}
</screen>
<para>o
</para>
<screen>\caption[<replaceable>short-caption-text</replaceable>]{<replaceable>caption-text</replaceable>}
</screen>
<para>Crea un título para un  entorno flotante, como <literal>figure</literal> o entorno
<literal>table</literal> (véase <link linkend="figure">figure</link> o <link linkend="table">table</link>).
</para>
<para>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.
</para>

<screen>\begin{figure}
  \vspace*{1cm}
  \caption{Alonzo Cushing, Batería A, 4ª artillería de EE. UU.}
  \label{fig:CushingPic}
\end{figure}
</screen>
<para>El comando <literal>\caption</literal> etiquetará <replaceable>caption-text</replaceable> con algo como
&#8216;<literal>Figura&#160;1:</literal>&#8217; para un  artículo o &#8216;<literal>Figura&#160;1.1:</literal>&#8217; 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.
</para>
<para>Además  de colocar  el  <replaceable>caption-text</replaceable> en  la  salida, el  comando
<literal>\caption</literal>  también guarda  esa  información para  usarla en  una
lista de figuras o lista de tablas (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido etc.</link>).
</para>
<para>Aquí   el   comando   <literal>\caption</literal>    usa   el   comando   opcional
<replaceable>short-caption-text</replaceable>, para que  el texto más corto  aparezca en la
lista de tablas, en lugar del <replaceable>caption-text</replaceable> más largo.
</para>
<screen>\begin{table}
  \centering
  \begin{tabular}{|*{3}{c}|}
    \hline
    4  &amp;9  &amp;2 \\
    3  &amp;5  &amp;7 \\
    8  &amp;1  &amp;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}
</screen>
<para>&latex;     etiquetará    <replaceable>caption-text</replaceable>     con    algo     como
&#8216;<literal>Tabla&#160;1:</literal>&#8217; para un artículo o &#8216;<literal>Tabla&#160;1.1:</literal>&#8217; para un
libro.
</para>
<para>El título  puede aparecer en la  parte superior de la  <literal>figura</literal> o
<literal>tabla</literal>.   Por  ejemplo, eso  sucedería  en  el ejemplo  anterior
poniendo   el  <literal>\caption</literal>   entre  el   <literal>\centering</literal>  y   el
<literal>\begin{tabular}</literal>.
</para>
<para>Los distintos  entornos flotantes  se numeran  por separado,  de forma
predeterminada.  Eso es <literal>\caption</literal> que actualiza el contador, por
lo que  cualquier <literal>\label</literal>  debe ir después  del <literal>\caption</literal>.
El contador para el entorno <literal>figure</literal> se llama <literal>figure</literal>, y de
manera   similar  el   contador  para   el  entorno   <literal>table</literal>  es
<literal>table</literal>.
</para>
<para>El texto  que se pondrá en  la lista de  figuras o lista de  tablas es
argumento móvil.   Si recibes el  error &latex; &#8216;<literal>!  Argumento de
\@caption  tiene un  extra}</literal>&#8217;, entonces  debes poner  <literal>\protect</literal>
delante de cualquier comando frágil. Véase <link linkend="_005cprotect">\protect</link>.
</para>
<indexterm role="cp"><primary>package, <literal>caption</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>caption</literal> package</primary></indexterm>
<para>El paquete  <literal>caption</literal> 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.
</para>

</sect2>
</sect1>
</chapter>
<chapter label="6" id="Seccionado">
<title>Seccionado</title>

<indexterm role="cp"><primary>comandos de Seccionado</primary></indexterm>
<indexterm role="cp"><primary>parte</primary></indexterm>
<indexterm role="cp"><primary>capítulo</primary></indexterm>
<indexterm role="cp"><primary>sección</primary></indexterm>
<indexterm role="cp"><primary>subsección</primary></indexterm>
<indexterm role="cp"><primary>subsubsección</primary></indexterm>
<indexterm role="cp"><primary>párrafo</primary></indexterm>
<indexterm role="cp"><primary>subpárrafo</primary></indexterm>
<indexterm role="fn"><primary>\part</primary></indexterm>
<indexterm role="fn"><primary>\chapter</primary></indexterm>
<indexterm role="fn"><primary>\section</primary></indexterm>
<indexterm role="fn"><primary>\subsection</primary></indexterm>
<indexterm role="fn"><primary>\subsubsection</primary></indexterm>
<indexterm role="fn"><primary>\paragraph</primary></indexterm>
<indexterm role="fn"><primary>\subparagraph</primary></indexterm>

<para>Estructura  tu  texto  en divisiones:  partes,  capítulos,  secciones,
etc. Todos los comandos de seccionado tienen la misma forma, una de:
</para>
<screen><replaceable>sectioning-command</replaceable>{<replaceable>title</replaceable>}
<replaceable>sectioning-command</replaceable>*{<replaceable>title</replaceable>}
<replaceable>sectioning-command</replaceable>[<replaceable>toc-title</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>Por  ejemplo,  declarar  el  comienzo   de  una  subsección  como  con
<literal>\subsection{Motivación}</literal>.
</para>
<para>La tabla tiene cada <replaceable>sectioning-command</replaceable> en &latex;.  Todos están
disponibles en  todas las  clases de  documentos estándar  de &latex;
<literal>book</literal>,   <literal>report</literal>    y&#160;<literal>article</literal>,   excepto   que
<literal>\chapter</literal> no está disponible en <literal>article</literal>.
</para>
<informaltable><tgroup cols="3"><colspec colwidth="25*"></colspec><colspec colwidth="25*"></colspec><colspec colwidth="40*"></colspec><thead><row><entry><para>Unidad de seccionado </para></entry><entry><para>Comando </para></entry><entry><para>Nivel
</para></entry></row></thead><tbody><row><entry><para>Parte
</para></entry><entry><para><literal>\part</literal>  </para></entry><entry><para>-1 (<literal>book</literal>, <literal>report</literal>), 0 (<literal>article</literal>)
</para></entry></row><row><entry><para>Capítulo
</para></entry><entry><para><literal>\chapter</literal>   </para></entry><entry><para>0
</para></entry></row><row><entry><para>Sección
</para></entry><entry><para><literal>\section</literal>   </para></entry><entry><para>1
</para></entry></row><row><entry><para>Subsección
</para></entry><entry><para><literal>\subsection</literal>   </para></entry><entry><para>2
</para></entry></row><row><entry><para>Subsubsección
</para></entry><entry><para><literal>\subsubsection</literal>   </para></entry><entry><para>3
</para></entry></row><row><entry><para>Párrafo
</para></entry><entry><para><literal>\paragraph</literal>   </para></entry><entry><para>4
</para></entry></row><row><entry><para>Subpárrafo
</para></entry><entry><para><literal>\subparagraph</literal>   </para></entry><entry><para>5
</para></entry></row></tbody></tgroup></informaltable>
<indexterm role="cp"><primary>forma-<literal>*</literal> de comandos de seccionado</primary></indexterm>
<para>Todos   estos  comandos   tienen  una   forma  <literal>*</literal>   que  imprime
<replaceable>título</replaceable> 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       <literal>article</literal>.       Las      entradas
<literal>\appendix\section{Appendix}</literal> da  como resultado &#8216;<literal>Apéndice
A</literal>&#8217;  (véase <link linkend="_005cappendix">\appendix</link>).   Puedes perder  la  numeración&#160;&#8216;<literal>A</literal>&#8217;
ingresando en  su lugar <literal>\section*{Appendix}</literal> (los  artículos a
menudo omiten  una tabla de  contenido y tienen encabezados  de página
simples  para que  las otras  diferencias del  comando <literal>\section</literal>
puedan no importar).
</para>
<para>El título de la sección <replaceable>título</replaceable> proporciona el título en el texto
principal, pero también  puede aparecer en la tabla de  contenido y en
el encabezado  o pie (véase <link linkend="Estilos-de-p_00e1gina">Estilos  de página</link>).  Es posible  que no
desees el  mismo texto en  estos lugares  como en el  texto principal.
Todos estos comandos tienen un argumento <replaceable>toc-title</replaceable> opcional para
esos otros lugares.
</para>
<para>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 <replaceable>level</replaceable> son menores o iguales que el
valor del  contador <literal>secnumdepth</literal> entonces los  títulos para este
comando         de          seccionado         serán         numerados
(véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>).  Y,  si <replaceable>level</replaceable>  es menor  que o
igual  al  valor  del  contador  <literal>tocdepth</literal>  luego  la  tabla  de
contenido  tendrá   una  entrada   para  esta  unidad   de  seccionado
(véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).
</para>
<para>&latex; espera que  antes de tener una  <literal>\subsection</literal> tengas una
<literal>\section</literal> y, en un documento  de clase <literal>book</literal>, que antes de
una  <literal>\section</literal> tendrás  un  <literal>\chapter</literal>.   De lo  contrario,
puedes obtener algo así como una subsección numerada &#8216;<literal>3.0.1</literal>&#8217;.
</para>
<indexterm role="cp"><primary>package, <literal>titlesec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>titlesec</literal> package</primary></indexterm>
<para>&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):
   <literal>\renewcommand\thesection{\Alph{section}}</literal>  .
(Véase <link linkend="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">\alph  \Alph \arabic  \roman  \Roman  \fnsymbol</link>).  CTAN  tiene
muchos   paquetes   que   facilitan   este   ajuste,   en   particular
<literal>titlesec</literal>.
</para>
<para>Dos  contadores se  relacionan con  la apariencia  de los  encabezados
realizados por comandos de seccionado.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>secnumdepth</primary></indexterm><literal>secnumdepth</literal>
</term><listitem><indexterm role="fn"><primary>secnumdepth counter</primary></indexterm>
<indexterm role="cp"><primary>números de sección, imprimir</primary></indexterm>
<anchor id="seccionado-secnumdepth"/><anchor id="Seccionado_002fsecnumdepth"/><para>Controla  qué unidades  de  seccionado están  numeradas.  Poniendo  el
contador      con     <literal>\setcounter{secnumdepth}{<replaceable>level</replaceable>}</literal>
suprimirá numeración de seccionado  a cualquier profundidad superior a
<replaceable>level</replaceable>  (véase <link linkend="_005csetcounter">\setcounter</link>).  Consulta  la tabla  anterior para
ver los números de nivel.  Por  ejemplo, si <literal>secnumdepth</literal> es 1 en
un <literal>article</literal> entonces  un comando <literal>\section{Introducción}</literal>
producirá  una   salida  como   &#8216;<literal>1  Introducción</literal>&#8217;   mientras  que
<literal>\subsection{Discusión}</literal>     produce     una    salida     como
&#8216;<literal>Discusión</literal>&#8217;,    sin    número.     &latex;    <literal>secnumdepth</literal>
predeterminado es&#160;3  en la  clase <filename>article</filename> y&#160;2  en las
clases <filename>book</filename> y <filename>report</filename>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>tocdepth</primary></indexterm><literal>tocdepth</literal>
</term><listitem><indexterm role="fn"><primary>tocdepth counter</primary></indexterm>
<indexterm role="cp"><primary>tabla de contenido, números de seccionado impresos</primary></indexterm>
<anchor id="seccionado-tocdepth"/><anchor id="Seccionado_002ftocdepth"/><para>Controla qué
unidades  de seccionado  se enumeran  en  la tabla  de contenido.   La
configuración  <literal>\setcounter{tocdepth}{<replaceable>level</replaceable>}</literal> hace  que
las  unidades  de Seccionado  en  <replaceable>level</replaceable>  sean las  más  pequeñas
enumeradas (véase <link linkend="_005csetcounter">\setcounter</link>).  Consulta la tabla anterior para ver
los  números  de nivel.   Por  ejemplo,  si <literal>tocdepth</literal>  es&#160;1
entonces la tabla de contenido enumera secciones pero no subsecciones.
Predeterminado  de  &latex;  <literal>tocdepth</literal> es&#160;3  en  la  clase
<filename>article</filename> y&#160;2 en la clase <filename>book</filename> y <filename>report</filename>.
</para>
</listitem></varlistentry></variablelist>


<sect1 label="6.1" id="_005cpart">
<title><literal>\part</literal></title>

<indexterm role="fn"><primary>\part</primary></indexterm>
<indexterm role="cp"><primary>parte</primary></indexterm>
<indexterm role="cp"><primary>seccionado, parte</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\part{<replaceable>título</replaceable>}
\part*{<replaceable>título</replaceable>}
\part[<replaceable>toc-title</replaceable>]{<replaceable>título</replaceable>}
</screen>
<para>Inicia  una parte  del  documento.  Las  clases  estándar de  &latex;
<literal>book</literal>,  <literal>report</literal>   y  <literal>article</literal>,  todas   tienen  este
comando.
</para>
<para>Esto produce una parte del documento, en un libro.
</para>
<screen>\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.
</screen>
<para>En cada  clase estándar, el  comando <literal>\part</literal> genera un  número de
pieza como &#8216;<literal>Parte  I</literal>&#8217;, solo en su línea, en  negrita y en grandes
letras.   Entonces &latex;  genera <replaceable>título</replaceable>,  también solo  en su
línea, en negrita y en letra aún más grande.  En la clase <literal>book</literal>,
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 <literal>report</literal> nuevamente está solo  en una página, pero &latex; no
forzará una página impar.  En  un <literal>article</literal> &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.
</para>
<para>La forma <literal>*</literal>&#160;muestra <replaceable>título</replaceable>  pero no muestra el número
de parte, no incrementa el contador <literal>parte</literal>, y no produce ninguna
entrada de tabla de contenido.
</para>
<para>El argumento opcional  <replaceable>toc-title</replaceable> aparecerá como el  título de la
parte en la tabla de contenido (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido etc.</link>) y, al
ejecutar cabeceras (véase <link linkend="Estilos-de-p_00e1gina">Estilos de  página</link>).  Si no está presente,
entonces <replaceable>título</replaceable> estará ahí.  Este ejemplo pone un salto de línea
en <replaceable>título</replaceable> pero omite el salto en la tabla de contenido.
</para>
<screen>\part[Arriba desde abajo; mi vida]{Arriba desde abajo\\ mi vida}
</screen>
<para>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&#160;-1              (véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>              y
<link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).
</para>
<indexterm role="cp"><primary>package, <literal>indentfirst</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>indentfirst</literal> package</primary></indexterm>
<para>En la clase <literal>article</literal>, si un párrafo sigue
inmediatamente  a la  parte título  entonces no  está sangrado.   Para
obtener una sangría, puedes usar el paquete <literal>indentfirst</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>titlesec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>titlesec</literal> package</primary></indexterm>
<para>Un  paquete  para cambiar  el  comportamiento  de
<literal>\part</literal>  es  <literal>titlesec</literal>.   Consulta su  documentación  en
CTAN.
</para>

</sect1>
<sect1 label="6.2" id="_005cchapter">
<title><literal>\chapter</literal></title>

<indexterm role="fn"><primary>\chapter</primary></indexterm>
<indexterm role="cp"><primary>capítulo</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\chapter{<replaceable>título</replaceable>}
\chapter*{<replaceable>título</replaceable>}
\chapter[<replaceable>toc-title</replaceable>]{<replaceable>título</replaceable>}
</screen>
<para>Inicia un  capítulo.  Las  clases estándar  de &latex;  <literal>book</literal> y
<literal>report</literal> tienen este comando pero no <literal>article</literal>.
</para>
<para>Esto produce un capítulo.
</para>
<screen>\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.
</screen>
<para>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  &#8216;<literal>Capítulo 1</literal>&#8217; en  negrita grande
(el tamaño  es <literal>\huge</literal>).   Luego pone  <replaceable>título</replaceable> en  una nueva
línea, en  tipo negrita que  es aún más grande  (tamaño <literal>\Huge</literal>).
También incrementa el contador <literal>chapter</literal>, agrega una entrada a la
tabla de contenido  (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido etc.</link>),  y establece la
cabecera de información en ejecución (véase <link linkend="Estilos-de-p_00e1gina">Estilos de página</link>).
</para>
<para>La  forma <literal>*</literal>&#160;muestra  <replaceable>título</replaceable> en  una nueva  línea, en
negrita.   Pero no  muestra el  número de  capítulo, ni  incrementa el
contador <literal>chapter</literal>, no produce una  entrada de tabla de contenido
y no  afecta la cabecera en  ejecución.  (Si usas el  estilo de página
<literal>headings</literal> en  un documento  de dos  caras, entonces  la cabecera
será del capítulo anterior).
</para>
<screen>\chapter*{Preamble}
</screen>
<para>El  argumento  opcional  <replaceable>toc-title</replaceable>  aparecerá  como  título  del
capítulo en la tabla de  contenido (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido etc.</link>) y
en  ejecutar  cabeceras  (véase <link linkend="Estilos-de-p_00e1gina">Estilos  de  página</link>).   Si  no  está
presente entonces  <replaceable>título</replaceable> estará  allí.  Esto muestra  el nombre
completo en el título del capítulo,
</para>
<screen>\chapter[Weyl]{Hermann Klaus Hugo (Peter) Weyl (1885--1955)}
</screen>
<para>pero solo &#8216;<literal>Weyl</literal>&#8217;  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.
</para>
<screen>\chapter[Dado todo; mi historia]{Dado todo\\ mi historia}
</screen>
<para>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&#160;0               (véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>              y
véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).
</para>
<indexterm role="cp"><primary>package, <literal>indentfirst</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>indentfirst</literal> package</primary></indexterm>
<para>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 <literal>indentfirst</literal>.
</para>
<para>Puedes cambiar  lo que se  muestra para  el número de  capítulo.  Para
cambiarlo  a  algo como  &#8216;<literal>Conferencia  1</literal>&#8217;,  pon en  el  preámbulo
<literal>\renewcommand{\chaptername}{Conferencia}</literal>       o       esto
(véase <link linkend="_005cmakeatletter-y-_005cmakeatother">\makeatletter y \makeatother</link>).
</para>
<screen>\makeatletter
\renewcommand{\@chapapp}{Conferencia}
\makeatother
</screen>
<indexterm role="cp"><primary>package, <literal>babel</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>babel</literal> package</primary></indexterm>

<para>Para hacer  este cambio  debido al idioma  principal de  el documento,
consulta el paquete <literal>babel</literal>.
</para>
<para>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, <link linkend="_005cclearpage-y-_005ccleardoublepage">\clearpage y \cleardoublepage</link>.
</para>
<indexterm role="cp"><primary>package, <literal>titlesec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>titlesec</literal> package</primary></indexterm>
<para>Para   cambiar  el  comportamiento   del  comando
<literal>\chapter</literal>, 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 <literal>titlesec</literal>.  Ve  su documentación,
pero el ejemplo a continuación da un sentido de lo que puede hacer.
</para>
<screen>\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
</screen>
<para>Esto omite el número de capítulo &#8216;<literal>Capítulo 1</literal>&#8217; de la página pero a
diferencia de  <literal>\chapter*</literal> mantiene  el capítulo  en la  tabla de
contenido y la ejecución de cabeceras.
</para>

</sect1>
<sect1 label="6.3" id="_005csection">
<title><literal>\section</literal></title>

<indexterm role="fn"><primary>\section</primary></indexterm>
<indexterm role="cp"><primary>sección</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\section{<replaceable>título</replaceable>}
\section*{<replaceable>título</replaceable>}
\section[<replaceable>toc-title</replaceable>]{<replaceable>título</replaceable>}
</screen>
<para>Inicia una  sección.  Las clases estándar  <literal>article</literal> de &latex;,
<literal>book</literal> y <literal>report</literal> tienen este comando.
</para>
<para>Esto produce una sección.
</para>
<screen>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.
</screen>
<para>Para las  clases estándar de  &latex; <literal>book</literal> y  <literal>report</literal> la
salida   predeterminada   es   como  &#8216;<literal>1.2   <replaceable>título</replaceable></literal>&#8217;   (para
capítulo&#160;1, sección&#160;2),  solo en  su línea  y alineado  a la
izquierda,  en negrita  y  letra más  grande (el  tamaño  de letra  es
<literal>\Large</literal>).  Lo mismo se sostiene en <literal>article</literal> excepto que no
hay capítulos en esa clase por lo que parece &#8216;<literal>2 <replaceable>título</replaceable></literal>&#8217;.
</para>
<para>La  forma <literal>E*</literal>&#160;muestra  <replaceable>título</replaceable>.   Pero  no muestra  el
número  de  sección,  no  incrementa el  contador  <literal>section</literal>,  no
produce  ninguna entrada  en  la tabla  de contenido  y  no afecta  la
cabecera en ejecución.   (Si usas el estilo  de página <literal>headings</literal>
en un documento de dos caras,  entonces el encabezado será de la parte
anterior).
</para>
<para>El  argumento opcional  <replaceable>toc-title</replaceable>  aparecerá como  título de  la
sección en la  tabla de contenido (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de  contenido etc.</link>) y
encabezados  en ejecución  (véase <link linkend="Estilos-de-p_00e1gina">Estilos  de página</link>).   Si no  está
presente entonces  <replaceable>título</replaceable> estará  allí.  Esto muestra  el nombre
completo en el título de la sección:
</para>
<screen>\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.}
</screen>
<para>pero  solo  &#8216;<literal>Isabel II</literal>&#8217;  en  la  página  de  contenido y  en  los
encabezados.  Esto tiene un salto de  línea en <replaceable>title</replaceable> pero eso no
funciona  con encabezados  por lo  que se  omite de  los contenidos  y
encabezados.
</para>
<screen>\section[La verdad es que hice trampa; la historia de mi vida]{La verdad es
  que hice trampa\\la historia de mi vida}
</screen>
<para>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&#160;1               (véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>              y
véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).
</para>
<indexterm role="cp"><primary>package, <literal>indentfirst</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>indentfirst</literal> package</primary></indexterm>
<para>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 <literal>indentfirst</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>titlesec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>titlesec</literal> package</primary></indexterm>
<para>En general,  para cambiar  el comportamiento  del
comando  <literal>\section</literal>,  hay varias  opciones.   Una  es el  comando
<literal>\@startsection</literal> (véase <link linkend="_005c_0040startsection">\@startsection</link>).   También hay muchos
paquetes en CTAN que abordan esto, incluido <literal>titlesec</literal>.  Ve la
documentación pero el  siguiente ejemplo da una idea de  lo que pueden
hacer.
</para>
<!-- crédito: egreg https://groups.google.com/forum/#!topic/comp.text.tex/tvc8oM5P4y4 -->
<screen>\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]
</screen>
<para>Eso pone el número de sección en el margen.
</para>

</sect1>
<sect1 label="6.4" id="_005csubsection">
<title><literal>\subsection</literal></title>

<indexterm role="fn"><primary>\subsection</primary></indexterm>
<indexterm role="cp"><primary>subsección</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\subsection{<replaceable>title</replaceable>}
\subsection*{<replaceable>title</replaceable>}
\subsection[<replaceable>toc-title</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>Inicia  una   subsección.   Las  clases  estándar   <literal>article</literal>  de
&latex;, <literal>book</literal> y <literal>report</literal> tienen este comando.
</para>
<para>Esto produce una subsección.
</para>
<screen>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.
</screen>
<para>Para las  clases estándar de  &latex; <literal>book</literal> y  <literal>report</literal> la
salida   predeterminada  es   como   &#8216;<literal>1.2.3  <replaceable>title</replaceable></literal>&#8217;   (para
capítulo&#160;1, sección&#160;2, subsección&#160;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 <literal>\large</literal>).  Lo  mismo contiene <literal>article</literal>
excepto que no hay capítulos en  esa clase por lo que parece &#8216;<literal>2.3
<replaceable>título</replaceable></literal>&#8217;.
</para>
<para>La  forma <literal>E*</literal>&#160;muestra  <replaceable>título</replaceable>.   Pero  no muestra  el
número de subsección, no incrementa el contador <literal>subsection</literal> y no
produce ninguna entrada en la tabla de contenido.
</para>
<para>El  argumento opcional  <replaceable>toc-title</replaceable>  aparecerá como  título de  la
subsección en la tabla de contenido (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido etc.</link>).
Si esto  no está presente,  <replaceable>title</replaceable> estará allí.  Este  muestra el
texto completo en el título de la subsección:
</para>
<screen>\subsection[$\alpha,\beta,\gamma$ paper]{\textit{El origen de
  Elementos químicos} por R.A.~Alpher, H.~Bethe y G.~Gamow}
</screen>
<para>pero  solo  &#8216;<literal>&#x03B1;,&#x03B2;,&#x03B3;
paper</literal>&#8217; en la página de contenido.
</para>
<para>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&#160;2       (véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>      y
véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).
</para>
<indexterm role="cp"><primary>package, <literal>indentfirst</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>indentfirst</literal> package</primary></indexterm>
<para>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 <literal>indentfirst</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>titlesec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>titlesec</literal> package</primary></indexterm>
<para>Hay  varias maneras  de cambiar  el comportamiento
del    comando     <literal>\subsection</literal>.     Una    es     el    comando
<literal>\@startsection</literal> (véase <link linkend="_005c_0040startsection">\@startsection</link>).   También hay muchos
paquetes en CTAN que abordan esto, incluido <literal>titlesec</literal>.  Ve la
documentación pero el  siguiente ejemplo da una idea de  lo que pueden
hacer.
</para>
<screen>\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
</screen>
<para>Eso pone el número de subsección  y <replaceable>title</replaceable> en la primera línea de
texto.
</para>

</sect1>
<sect1 label="6.5" id="_005csubsubsection-_002d-_005cparagraph-y-_005csubparagraph">
<title><literal>\subsubsection</literal>, <literal>\paragraph</literal>, <literal>\subparagraph</literal></title>

<anchor id="_005csubsubsection"/><indexterm role="fn"><primary>\subsubsection</primary></indexterm>
<indexterm role="cp"><primary>subsubsección</primary></indexterm>
<!-- -->
<anchor id="_005cparagraph"/><indexterm role="fn"><primary>\paragraph</primary></indexterm>
<indexterm role="cp"><primary>párrafo</primary></indexterm>
<!-- -->
<anchor id="_005csubparagraph"/><indexterm role="fn"><primary>\subparagraph</primary></indexterm>
<indexterm role="cp"><primary>subpárrafo</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\subsubsection{<replaceable>title</replaceable>}
\subsubsection*{<replaceable>title</replaceable>}
\subsubsection[<replaceable>toc-title</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>o una de:
</para>
<screen>\paragraph{<replaceable>title</replaceable>}
\paragraph*{<replaceable>title</replaceable>}
\paragraph[<replaceable>toc-title</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>o una de:
</para>
<screen>\subparagraph{<replaceable>title</replaceable>}
\subparagraph*{<replaceable>title</replaceable>}
\subparagraph[<replaceable>toc-title</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>Inicia una subsección,  párrafo o subpárrafo.  Las  clases estandar de
&latex;  <literal>article</literal>,  <literal>book</literal>  y <literal>report</literal>  tienen  todas
estos comandos, aunque no son de uso común.
</para>
<para>Esto produce una subsección.
</para>
<screen>\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.
</screen>
<para>La salida predeterminada  de cada uno de los tres  no cambia sobre las
clases &latex; estándar  <literal>article</literal>, <literal>book</literal> y <literal>report</literal>.
Para <literal>\subsubsection</literal>  el <replaceable>title</replaceable> está  solo en su  línea, en
negrita y tipo  de letra de tamaño normal.   Para <literal>\paragraph</literal> el
<replaceable>title</replaceable>  está alineado  con el  texto, sin  sangría, en  negrita y
letra de tamaño normal.  Para <literal>\subparagraph</literal> el <replaceable>title</replaceable> 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 <literal>article</literal> no tiene capítulos, sus
subsubsecciones   son  numeradas   y  así   se  ve   como  &#8216;<literal>1.2.3
<replaceable>title</replaceable></literal>&#8217;,     por      sección&#160;1,     subsección&#160;2     y
subsubsección&#160;3.  Las otras dos divisiones no están numeradas).
</para>
<para>La forma  <literal>E*</literal>&#160;muestra <replaceable>título</replaceable>.  Pero no  incrementa el
contador asociado y no produce entrada  en la tabla de contenido (y no
muestra el número de <literal>\subsubsection</literal>).
</para>
<para>El argumento opcional  <replaceable>toc-title</replaceable> aparecerá como el  título de la
división en la  tabla de contenido (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla  de contenido etc.</link>).
Si esto no está presente, <replaceable>title</replaceable> estará allí.
</para>
<para>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&#160;3, de  un párrafo es&#160;4, y  de un subpárrafo
es&#160;5               (véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>              y
véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).
</para>
<indexterm role="cp"><primary>package, <literal>indentfirst</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>indentfirst</literal> package</primary></indexterm>
<para>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
<literal>indentfirst</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>titlesec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>titlesec</literal> package</primary></indexterm>
<para>Hay varias formas  de cambiar el comportamiento de
estos   comandos.    Una    es   el   comando   <literal>\@startsection</literal>
(véase <link linkend="_005c_0040startsection">\@startsection</link>).  También  hay muchos  paquetes en  CTAN que
abordan    esto,   incluyendo    <literal>titlesec</literal>.    Consulta    la
documentación en CTAN.
</para>

</sect1>
<sect1 label="6.6" id="_005cappendix">
<title><literal>\appendix</literal></title>


<indexterm role="fn"><primary>\appendix</primary></indexterm>
<indexterm role="cp"><primary>apéndice</primary></indexterm>
<indexterm role="cp"><primary>apéndices</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\appendix
</screen>
<para>Este no produce  directamente ningún resultado.  Pero  en un documento
<literal>book</literal>  o <literal>report</literal>  declara que  los subsiguientes  comandos
<literal>\chapter</literal> comienzan un apéndice.  En  un artículo hace lo mismo,
para los comandos <literal>\section</literal>.   También restablece los contadores
<literal>chapter</literal> y <literal>section</literal>  a&#160;0 en un libro o  informe, y en
un    artículo   restablece    los    contadores   <literal>section</literal>    y
<literal>subsection</literal>.
</para>
<para>En este libro
</para>
<screen>\chapter{Uno}  ...
\chapter{Dos}  ...
 ...
\appendix
\chapter{Tres}  ...
\chapter{Cuatro}  ...
</screen>
<para>los dos  primeros generarán  una salida  numerada &#8216;<literal>Capítulo  1</literal>&#8217; y
&#8216;<literal>Capítulo 2</literal>&#8217;.   Después del  <literal>\appendix</literal> la  numeración será
&#8216;<literal>Apéndice  A</literal>&#8217;  y  &#8216;<literal>Apéndice B</literal>&#8217;.   Véase <link linkend="Plantilla-de-libro-Larger">Plantilla  de  libro
Larger</link>, para otro ejemplo.
</para>
<indexterm role="cp"><primary>package, <literal>appendix</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>appendix</literal> package</primary></indexterm>
<para>El paquete  <literal>appendix</literal> agrega  el comando
<literal>\appendixpage</literal>  para  poner  &#8216;<literal>Apéndices</literal>&#8217;  separados  en  el
cuerpo  del  documento   antes  del  primer  apéndice   y  el  comando
<literal>\addappheadtotoc</literal>  hace  lo  mismo  en la  tabla  de  contenido.
Puedes  restablecer el  nombre  &#8216;<literal>Apéndices</literal>&#8217; con  un comando  como
<literal>\renewcommand{\appendixname}{Especificación}</literal>, así  como una
serie de otras características.  Consulta la documentación en CTAN.
</para>

</sect1>
<sect1 label="6.7" id="_005cfrontmatter-_002d-_005cmainmatter-y-_005cbackmatter">
<title><literal>\frontmatter</literal>, <literal>\mainmatter</literal>, <literal>\backmatter</literal></title>

<anchor id="_005cfrontmatter"/><indexterm role="fn"><primary>\frontmatter</primary></indexterm>
<indexterm role="cp"><primary>libro, portada</primary></indexterm>
<indexterm role="cp"><primary>portada de un libro</primary></indexterm>
<!-- -->
<anchor id="_005cmainmatter"/><indexterm role="fn"><primary>\mainmatter</primary></indexterm>
<indexterm role="cp"><primary>libro, asunto principal</primary></indexterm>
<indexterm role="cp"><primary>asunto principal de un libro</primary></indexterm>
<!-- -->
<anchor id="_005cbackmatter"/><indexterm role="fn"><primary>\backmatter</primary></indexterm>
<indexterm role="cp"><primary>libro, asunto contraportada</primary></indexterm>
<indexterm role="cp"><primary>libro, asunto final</primary></indexterm>
<indexterm role="cp"><primary>asunto de contraportada de un libro</primary></indexterm>
<indexterm role="cp"><primary>asunto final de un libro</primary></indexterm>

<para>Sinopsis, una o más de:
</para>
<screen>\frontmatter
...
\mainmatter
...
\backmatter
...
</screen>
<para>Da  formato a  un documento  de clase  <literal>book</literal> de  forma diferente
según  la parte  del  documento  que se  está  produciendo.  Los  tres
comandos son opcionales.
</para>
<para>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.
</para>
<para>El  comando <literal>\frontmatter</literal>  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
<literal>*</literal>-versión (véase <link linkend="Seccionado">Seccionado</link>).
</para>
<para>El comando <literal>\mainmatter</literal>  cambia el comportamiento de  nuevo a la
versión esperada y restablece el número de página.
</para>
<para>El comando <literal>\backmatter</literal> deja la  numeración de páginas sola pero
cambia los capítulos de nuevo a no estar numerados.
</para>
<para>Véase <link linkend="Plantilla-de-libro-Larger">Plantilla  de  libro Larger</link>,  por  ejemplo,  usando estos  tres
comandos.
</para>

</sect1>
<sect1 label="6.8" id="_005c_0040startsection">
<title><literal>\@startsection</literal>, composición tipográfica de encabezados de unidades seccionales</title>

<indexterm role="fn"><primary>\@startsection</primary></indexterm>
<indexterm role="cp"><primary>sección, redefiniendo</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\@startsection{<replaceable>name</replaceable>}{<replaceable>level</replaceable>}{<replaceable>indent</replaceable>}{<replaceable>beforeskip</replaceable>}{<replaceable>afterskip</replaceable>}{<replaceable>style</replaceable>}
</screen>
<para>Se usa para  ayudar a redefinir el comportamiento de  los comandos que
comienzan    a   seccionar    divisiones   como    <literal>\section</literal>   o
<literal>\subsection</literal>.
</para>
<para>Ten  en   cuenta  que   el  paquete  <literal>titlesec</literal>   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
<literal>\@startsection</literal>, algunos no pueden.  por ejemplo, en las clases
&latex;   estándar   <literal>book</literal>   y   <literal>report</literal>   los   comandos
<literal>\chapter</literal>  y  <literal>\report</literal> no  se  construyen  de esta  forma.
Hacer  un comando  de este  tipo, es  posible que  desees utilizar  el
comando <literal>\secdef</literal>.
<!-- xx define y hace una referencia cruzada a secdef. -->
</para>
<para>Técnicamente, <literal>\@startsection</literal> tiene la forma
</para>
<screen>\@startsection{<replaceable>name</replaceable>}
  {<replaceable>level</replaceable>}
  {<replaceable>indent</replaceable>}
  {<replaceable>beforeskip</replaceable>}
  {<replaceable>afterskip</replaceable>}
  {<replaceable>style</replaceable>}*[<replaceable>toctitle</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>por lo tanto emite
</para>
<screen>\renewcommand{\section}{\@startsection{<replaceable>name</replaceable>}
  {<replaceable>level</replaceable>}
  {<replaceable>indent</replaceable>}
  {<replaceable>beforeskip</replaceable>}
  {<replaceable>afterskip</replaceable>}
  {<replaceable>style</replaceable>}}
</screen>
<para>redefine  <literal>\section</literal> manteniendo  su  forma  de llamada  estándar
<literal>\section*[<replaceable>toctitle</replaceable>]{<replaceable>title</replaceable>}</literal>   (en  el   que,  como
recordatorio, el star&#160;<literal>*</literal>  es opcional).  Véase <link linkend="Seccionado">Seccionado</link>.
Esto    implica    que    cuando     escribes    un    comando    como
<literal>\renewcommand{\section}{...}</literal>,                            el
<literal>\@startsection{...}</literal> debe ser el último en la definición.  Ve
los ejemplos a continuación.
</para>
<variablelist>
<varlistentry><term><replaceable>name</replaceable>
</term><listitem><anchor id="nombre-de-la-secci_00f3n-de-inicio"/><anchor id="_005c_0040startsection_002fname"/><para>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  <literal>sección</literal>, <literal>subsección</literal>  o  <literal>párrafo</literal>.  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.
</para>
<para>Entonces  <literal>\the</literal><replaceable>name</replaceable>   muestra  el  número  del   título  y
<literal>\</literal><replaceable>name</replaceable><literal>mark</literal> es  para los encabezados de  página.  Ve
el tercer ejemplo a continuación.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>level</replaceable>
</term><listitem><anchor id="startsection-level"/><anchor id="_005c_0040startsection_002flevel"/><para>Un número
entero  que  proporciona la  profundidad  del  comando de  seccionado.
Véase <link linkend="Seccionado">Seccionado</link>, para la lista de números de nivel estándar.
</para>
<para>Si  <replaceable>level</replaceable>   es  menor  o   igual  que  el  valor   del  contador
<literal>secnumdepth</literal>  entonces   los  títulos   para  este   comando  de
seccionado  serán   numerados  (véase <link linkend="Seccionado_002fsecnumdepth">Seccionado/secnumdepth</link>).   Por
ejemplo,  si <literal>secnumdepth</literal>  es 1  en un  <literal>article</literal> luego  el
comando <literal>\section{Introducción}</literal> producirá  una salida como &#8220;1
Introducción&#8221;  mientras  que  <literal>\subsection{Debate}</literal>  producirá
salida como &#8220;Debate&#8221;, sin el prefijo numérico.
</para>
<para>Si  <replaceable>level</replaceable>   es  menor  o   igual  que  el  valor   del  contador
<replaceable>tocdepth</replaceable> entonces la tabla de  contenido tendrá una entrada para
esta unidad de seccionado (véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>).  Por ejemplo,
en un  <literal>article</literal>, si <replaceable>tocdepth</replaceable>  es 1, la tabla  de contenido
será listar secciones pero no subsecciones.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>indent</replaceable>
</term><listitem><anchor id="startsection-indent"/><anchor id="_005c_0040startsection_002findent"/><para>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 <literal>0pt</literal>.  Una sangría negativa como <literal>-\parindent</literal> se
moverá el título en el margen izquierdo.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>beforeskip</replaceable>
</term><listitem><anchor id="startsection-beforeskip"/><anchor id="_005c_0040startsection_002fbeforeskip"/><para>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 <literal>1pt  plus 2pt  minus 3pt</literal>  es <literal>-1pt  plus -2pt
minus -3pt</literal>).
</para>
<para>Por  ejemplo,  si <replaceable>beforeskip</replaceable>  es  <literal>-3.5ex  plus -1ex  minus
-0.2ex</literal> 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  <literal>plus</literal>  y <literal>minus</literal>,  es  una  buena
práctica aquí ya que da &latex; más flexibilidad para crear la página
(véase <link linkend="Longitudes">Longitudes</link>).
</para>
<para>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 <literal>\parskip</literal> de la
letra del texto,  el <literal>\baselineskip</literal> de la letra del  título y el
valor absoluto de <replaceable>beforeskip</replaceable>.   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).
</para>
</listitem></varlistentry><varlistentry><term><replaceable>afterskip</replaceable>
</term><listitem><anchor id="startsection-afterskip"/><anchor id="_005c_0040startsection_002fafterskip"/><para>Esta es  una longitud.   Si <replaceable>afterskip</replaceable>  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 <literal>1pt  plus 2pt  minus 3pt</literal>  es <literal>-1pt  plus -2pt
minus -3pt</literal>).
</para>
<para>Al igual que  con <replaceable>beforeskip</replaceable>, usando una  longitud elástica, con
<literal>plus</literal> y <literal>minus</literal> componentes, es  una buena práctica aquí ya
que da a &latex; más flexibilidad en la elaboración de la página.
</para>
<para>Si  <literal>afterskip</literal>  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 <literal>\parskip</literal>  de la  letra del  título, el
<literal>\baselineskip</literal> de la letra del  texto y el valor de <replaceable>after</replaceable>.
Ese espacio suele ser elástico, por lo que se puede estirar o encoger.
(Ten en cuenta que debido a que el signo de <literal>afterskip</literal> cambia la
unidad  de seccionado  encabezado  independiente de  la ejecución,  no
puedes  usar  un <literal>afterskip</literal>  negativo  para  cancelar parte  del
<literal>\parskip</literal>).
</para>
</listitem></varlistentry><varlistentry><term><replaceable>style</replaceable>
</term><listitem><anchor id="estilo-de-startsection"/><anchor id="_005c_0040startsection_002fstyle"/><para>Controla el estilo  del título.  Ve los ejemplos  a continuación.  Los
comandos    típicos   para    usar    aquí   son    <literal>\centering</literal>,
<literal>\raggedright</literal>,      <literal>\normalfont</literal>,     <literal>\hrule</literal>      o
<literal>\newpage</literal>.  El ultimo  comando en <replaceable>style</replaceable> puede  ser uno que
tome un argumento, como  <literal>\MakeUppercase</literal> o <literal>\fbox</literal> que toma
un argumento.  El título de la sección se proporcionará como argumento
para   este   comando.   Por  ejemplo,   establecer   <replaceable>style</replaceable>   en
<literal>\bfseries\MakeUppercase</literal>  sería producir  títulos  en negrita  y
mayúsculas.
</para></listitem></varlistentry></variablelist>
<para>Estos son  los valores predeterminados  de &latex; para  las primeras
tres unidades de seccionado que se definen con <literal>\@startsection</literal>,
para las clases <filename>article</filename>, <filename>book</filename> y <filename>report</filename>.
</para>
<itemizedlist><listitem><para>Para  <literal>section</literal>: <replaceable>level</replaceable>  es  1,  <replaceable>indent</replaceable> es  0pt,
<replaceable>beforeskip</replaceable>   es   <literal>-3.5ex    plus   -1ex   minus   -0.2ex</literal>,
<replaceable>afterskip</replaceable>   es  <literal>2.3ex   plus  0.2ex</literal>   y  <replaceable>style</replaceable>   es
<literal>\normalfont\Large\bfseries</literal>.
</para>
</listitem><listitem><para>Para <literal>subsection</literal>:  <replaceable>level</replaceable> es 2, <replaceable>indent</replaceable>  es 0pt,
<replaceable>beforeskip</replaceable>  es   <literal>-3.25ex  plus  -1ex   minus  -0.2ex<!-- /@w --></literal>,
<replaceable>afterskip</replaceable>   es  <literal>1.5ex   plus  0.2ex</literal>   y  <replaceable>style</replaceable>   es
<literal>\normalfont\large\bfseries</literal>.
</para>
</listitem><listitem><para>Para   <literal>subsubsection</literal>:  <replaceable>level</replaceable>   es   3,  <replaceable>indent</replaceable>   es
0pt, <replaceable>beforeskip</replaceable> es <literal>-3.25ex  plus -1ex minus -0.2ex</literal>,
<replaceable>afterskip</replaceable>   es  <literal>1.5ex   plus  0.2ex</literal>   y  <replaceable>style</replaceable>   es
<literal>\normalfont\normalsize\bfseries</literal>.
</para></listitem></itemizedlist>
<para>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 <literal>\makeatletter</literal> y
un <literal>\makeatother</literal>.   (Probablemente el mensaje de  error <literal>No
puedes  usar `\spacefactor'  en modo  vertical.</literal> significa  que se  te
olvidó esto).  Véase <link linkend="_005cmakeatletter-y-_005cmakeatother">\makeatletter y \makeatother</link>.
</para>
<para>Esto  colocará  los  títulos  de  las  secciones  en  negrita  grande,
centrados.  Dice  <literal>\renewcommand</literal> porque  las clases  estándar de
&latex; ya han  definió una <literal>\section</literal>.  Por la  misma razón, no
define un contador <literal>section</literal>, o los comandos <literal>\thesection</literal> y
<literal>\l@section</literal>.
</para>
<screen>\renewcommand\section{%
  \@startsection{section}%
      <link linkend="_005c_0040startsection_002fname"><replaceable>name</replaceable></link>
    {1}% <link linkend="_005c_0040startsection_002flevel"><replaceable>level</replaceable></link>
    {0pt}% <link linkend="_005c_0040startsection_002findent"><replaceable>indent</replaceable></link>
    {-3.5ex plus -1ex minus -.2ex}% <link linkend="_005c_0040startsection_002fbeforeskip"><replaceable>beforeskip</replaceable></link>
    {2.3ex plus.2ex}% <link linkend="_005c_0040startsection_002fafterskip"><replaceable>afterskip</replaceable></link>
    {\centering\normalfont\Large\bfseries}% <link linkend="_005c_0040startsection_002fstyle"><replaceable>style</replaceable></link>
  }
</screen>
<para>Esto  pondrá los  títulos de  <literal>subsection</literal> en  letras minúsculas,
alineados con el párrafo.
</para>
<screen>\renewcommand\subsection{%
  \@startsection{subsection}% <link linkend="_005c_0040startsection_002fname"><replaceable>name</replaceable></link>
    {2}% <link linkend="_005c_0040startsection_002flevel"><replaceable>level</replaceable></link>
    {0em}% <link linkend="_005c_0040startsection_002findent"><replaceable>indent</replaceable></link>
    {-1ex plus 0.1ex minus -0.05ex}% <link linkend="_005c_0040startsection_002fbeforeskip"><replaceable>beforeskip</replaceable></link>
    {-1em plus 0,2em}% <link linkend="_005c_0040startsection_002fafterskip"><replaceable>afterskip</replaceable></link>
    {\scshape}% <link linkend="_005c_0040startsection_002fstyle"><replaceable>style</replaceable></link>
  }
</screen>
<para>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.
</para>
<!-- De -->
<!-- https//groups.google.com/forum/#!searchin/comp.text.tex/startsection%7Csort:relevance/comp.text.tex/sB-nTS-oL08/ZZeKYdG0llMJ -->
<screen>\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
</screen>

</sect1>
</chapter>
<chapter label="7" id="Referencias-cruzadas">
<title>Referencias cruzadas</title>

<indexterm role="cp"><primary>referencias cruzadas</primary></indexterm>

<indexterm role="cp"><primary>label</primary></indexterm>
<para>A menudo  queremos algo  como &#8216;<literal>Ve  Teorema~31</literal>&#8217;.  Pero  escribir a
mano  el  31  es  mala  práctica.  En  su  lugar,  debes  escribir  un
<firstterm>label</firstterm>     como     <literal>\label{eq:GreensThm}</literal>     y     luego
<firstterm>reference</firstterm>,  como  con  <literal>Ve  ecuación~\ref{eq:GreensThm}</literal>.
&latex; automáticamente  calcula el  número, lo pone  en la  salida y
cambiará ese número más tarde si es necesario.
</para>
<screen>
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}.
</screen>
<para>&latex; rastrea información de referencias cruzadas en un archivo que
tiene  la extensión  <filename>.aux</filename> y  con el  mismo nombre  base que  el
archivo  que contiene  la <literal>\label</literal>.   Entonces, si  <literal>\label</literal>
está   en  <filename>calculus.tex</filename>   entonces  la   información  está   en
<filename>calculus.aux</filename>.  &latex; pone la información en ese archivo cada
vez que se encuentra con un <literal>\label</literal>.
</para>
<indexterm role="cp"><primary>referencia directa</primary></indexterm>
<indexterm role="cp"><primary>referencia, adelantada</primary></indexterm>
<para>El comportamiento  descrito en el  párrafo anterior da  como resultado
una   peculiaridad  que   sucede   cuando  tu   documento  tiene   una
<firstterm>referencia hacia adelante</firstterm>, una <literal>\ref</literal> que aparece antes del
<literal>\label</literal>  asociado.   Si  esta  es   la  primera  vez  que  estás
compilando el documento, obtendrás la &#8216;<literal>Advertencia LaTeX: : La(s)
etiqueta(s) pueden haber cambiado. Vuelve  a ejecutar para obtener las
referencias cruzadas correctas</literal>&#8217; y en  la salida, la referencia directa
aparecerá como  dos preguntas  mark&#160;&#8216;<literal>??</literal>&#8217;, 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.
</para>
<indexterm role="cp"><primary>package, <literal>cleveref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>cleveref</literal> package</primary></indexterm>
<para>El   paquete   <literal>cleveref</literal>   mejora   las
características de referencias cruzadas  de &latex;.  Puedes arreglar
eso  si  entras  <literal>\begin{thm}\label{th:Nerode}...\end{thm}</literal>
entonces  <literal>\cref{thNerode}</literal> generará  &#8216;<literal>Teorema 3.21</literal>&#8217;,  sin
que tengas que ingresar el &#8220;Teorema.&#8221;
</para>


<sect1 label="7.1" id="_005clabel">
<title><literal>\label</literal></title>

<indexterm role="fn"><primary>\label</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\label{<replaceable>key</replaceable>}
</screen>
<para>Asigna  un  número de  referencia  a  <replaceable>key</replaceable>.  En  texto  ordinario
<literal>\label{<replaceable>key</replaceable>}</literal> asigna  a <replaceable>key</replaceable> el número  de la unidad
de seccionado  actual. Dentro  de un entorno  con numeración,  como un
entorno  <literal>table</literal>  o <literal>theorem</literal>,  <literal>\label{<replaceable>clave</replaceable>}</literal>
asigna  a <replaceable>key</replaceable>  el número  de ese  entorno.  Recuperar  el número
asignado con el comando <literal>\ref{<replaceable>key</replaceable>}</literal> (véase <link linkend="_005cref">\ref</link>).
</para>
<para>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.
</para>
<para>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,
<literal>\label{fig:Post}</literal>  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:
</para>
<variablelist><varlistentry><term><literal>ch</literal>
</term><listitem><para>por capítulos
</para>
</listitem></varlistentry><varlistentry><term><literal>sec</literal>
</term><term><literal>subsec</literal>
</term><listitem><para>para comandos de seccionado de nivel inferior
</para>
</listitem></varlistentry><varlistentry><term><literal>fig</literal>
</term><listitem><para>para figuras
</para>
</listitem></varlistentry><varlistentry><term><literal>tab</literal>
</term><listitem><para>para tablas
</para>
</listitem></varlistentry><varlistentry><term><literal>eq</literal>
</term><listitem><para>para ecuaciones
</para></listitem></varlistentry></variablelist>
<para>En el archivo  auxiliar se conserva la información  de referencia como
el      texto      de      un       comando      de      la      forma
<literal>\newlabel{<replaceable>label</replaceable>}{{<replaceable>currentlabel</replaceable>}{<replaceable>pagenumber</replaceable>}}</literal>.
Aquí   <replaceable>currentlabel</replaceable>   es   el   valor   actual   de   la   macro
<literal>\@currentlabel</literal>  que generalmente  se  actualiza  cada vez  que
llamas a <literal>\refstepcounter{<replaceable>counter</replaceable>}</literal>.
</para>
<para>A continuación, la tecla <literal>sec:test</literal> obtendrá el número de sección
actual y  la tecla  <literal>fig:test</literal> obtendrá el  número de  la figura.
(Por cierto, coloca etiquetas después de los subtítulos en las figuras
y tablas).
</para>
<screen>\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}.
</screen>

</sect1>
<sect1 label="7.2" id="_005cpageref">
<title><literal>\pageref</literal></title>

<indexterm role="fn"><primary>\pageref</primary></indexterm>
<indexterm role="cp"><primary>referencias cruzadas con el número de página</primary></indexterm>
<indexterm role="cp"><primary>número de página, referencias cruzadas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\pageref{<replaceable>key</replaceable>}
</screen>
<para>Proporciona  el número  de  página  del lugar  en  el  texto donde  se
encuentra el comando <literal>\label</literal>{<replaceable>key</replaceable>} correspondiente.
</para>
<para>Si  no  hay  <literal>\label{<replaceable>key</replaceable>}</literal> entonces  obtienes  algo  como
&#8216;<literal>Advertencia de  LaTeX: Referencia  `th:GrensThm' en la  página 1
indefinida en la línea de entrada 11.</literal>&#8217;
</para>
<para>A  continuación,  el <literal>\label{eq:main}</literal>  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).
</para>
<screen>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}
</screen>

</sect1>
<sect1 label="7.3" id="_005cref">
<title><literal>\ref</literal></title>

<indexterm role="fn"><primary>\ref</primary></indexterm>
<indexterm role="cp"><primary>referencias cruzadas, simbólico</primary></indexterm>
<indexterm role="cp"><primary>número de sección, referencias cruzadas</primary></indexterm>
<indexterm role="cp"><primary>número de ecuación, referencias cruzadas</primary></indexterm>
<indexterm role="cp"><primary>número de figura, referencias cruzadas</primary></indexterm>
<indexterm role="cp"><primary>número de nota al pie, referencias cruzadas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\ref{<replaceable>key</replaceable>}
</screen>
<para>Produce el  número de  la unidad seccional,  ecuación, pie  de página,
figura,   &#8230;,    del   comando    <literal>\label</literal>   correspondiente
(véase <link linkend="_005clabel">\label</link>).  No produce ningún  texto, como la palabra &#8216;Sección&#8217;
o &#8216;Figura&#8217;, simplemente el número en sí.
</para>
<para>Si  no  hay  <literal>\label{<replaceable>key</replaceable>}</literal> entonces  obtienes  algo  como
&#8216;<literal>Advertencia de  LaTeX: Referencia  `th:GrensThm' en la  página 1
indefinida en la línea de entrada 11.</literal>&#8217;
</para>
<para>En  este ejemplo,  <literal>\ref{popular}</literal>  produce  &#8216;<literal>2</literal>&#8217;.  Ten  en
cuenta  que  es   una  referencia  directa  ya  que   viene  antes  de
<literal>\label{popular}</literal>  por  lo  que   este  documento  tendría  que
compilarse dos veces.
</para>
<screen>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}
</screen>
<indexterm role="cp"><primary>package, <literal>cleveref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>cleveref</literal> package</primary></indexterm>
<para>El  paquete <literal>cleveref</literal> incluye  texto como
&#8216;<literal>Theorem</literal>&#8217; en la referencia.  Consulta la documentación en CTAN.
</para>

</sect1>
<sect1 label="7.4" id="paquete-xr">
<title>paquete <literal>xr</literal></title>

<indexterm role="cp"><primary>package, <literal>xr</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>xr</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>xr-hyper</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>xr-hyper</literal> package</primary></indexterm>

<indexterm role="fn"><primary>\externaldocument</primary></indexterm>
<indexterm role="cp"><primary>referencias cruzadas, entre documentos</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usepackage{xr}
  \externaldocument{<replaceable>document-basename</replaceable>}
</screen>
<para>o
</para>
<screen>\usepackage{xr}
  \externaldocument[<replaceable>reference-prefix</replaceable>]{<replaceable>document-basename</replaceable>}
</screen>
<para>Hacer      referencias     cruzadas      al     documento      externo
<filename><replaceable>document-basename</replaceable>.tex</filename>.
</para>
<para>Aquí  tienes  un ejemplo:  Si  <filename>lectures.tex</filename>  tiene esto  en  el
preámbulo
</para>
<screen>\usepackage{xr}
  \externaldocument{exercises}
  \externaldocument[H-]{hints}
  \externaldocument{answers}
</screen>
<para>entonces puede  usar etiquetas  de referencias  cruzadas de  los otros
tres  documentos.   Supón  que <filename>exercises.tex</filename>  tiene  una  lista
enumerada que contiene este,
</para>
<screen>\item \label{exer:EulersThm} ¿Qué pasa si cada vértice tiene un grado impar?
</screen>
<para>y <filename>hints.tex</filename> tiene una lista enumerada con este,
</para>
<screen>\item \label{exerEulersThm} Distingue el caso de dos vértices.
</screen>
<para>y <filename>answers.tex</filename> tiene una lista enumerada con este,
</para>
<screen>\item \label{ansEulersThm}  No hay camino  de Euler, excepto  si hay
  exactamente dos vértices.
</screen>
<para>Después  de  compilar  los  ejercicios, sugerencias  y  documentos  de
respuestas,  ingresar esto  en el  cuerpo de  <filename>lectures.tex</filename> dará
como  resultado la  obtención  de  los números  de  referencia de  las
conferencias utilizadas en los otros documentos.
</para>
<screen>Ve          el          ejercicio~\ref{exer:EulersThm},          con
Sugerencia~\ref{H-exer:EulersThm}.      La     solución    es     la
respuesta~\ref{ans:EulersThm}.
</screen>
<para>Se necesita  el prefijo  <literal>H-</literal> 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.
</para>
<para>Nota: si  el documento usa  el paquete <literal>hyperref</literal>  entonces en
lugar de <literal>xr</literal>, coloca <literal>\usepackage{xr-hyper}</literal> antes del
<literal>\usepackage{hyperref}</literal>.   Además, si  alguno de  los múltiples
documentos usa <literal>hyperref</literal> entonces todos lo deben usar.
</para>

</sect1>
</chapter>
<chapter label="8" id="Entornos">
<title>Entornos</title>

<indexterm role="cp"><primary>entornos</primary></indexterm>
<indexterm role="fn"><primary>\begin</primary></indexterm>
<indexterm role="fn"><primary>\end</primary></indexterm>

<para>&latex;   proporciona   muchos   entornos   para   delimitar   cierto
comportamiento.  Un  entorno comienza con <literal>\begin</literal>  y termina con
<literal>\end</literal>, como este:
</para>
<screen>\begin{<replaceable>nombre-entorno</replaceable>}
  ...
\end{<replaceable>nombre-entorno</replaceable>}
</screen>
<para>El <replaceable>nombre-entorno</replaceable> al principio debe coincidir exactamente con el
de       el       fin.       Por       ejemplo,       la       entrada
<literal>\begin{table*}...\end{table}</literal>   generará   un  error   como:
&#8216;<literal>!  Error de  LaTeX: \begin{table*}  en la  línea de  entrada 5
terminada en \end{table}.</literal>&#8217;
</para>
<indexterm role="cp"><primary>grupo, y entornos</primary></indexterm>
<para>Los entornos se ejecutan dentro de un grupo.
</para>


<sect1 label="8.1" id="abstract">
<title><literal>abstract</literal></title>

<indexterm role="fn"><primary>environment, <literal>abstract</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>abstract</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>resúmenes</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{abstract}
...
\end{abstract}
</screen>
<para>Produce  un resumen,  posiblemente de  varios párrafos.   Este entorno
solo  se  define   en  las  clases  de   documentos  <literal>article</literal>  y
<literal>report</literal> (véase <link linkend="Clases-de-documentos">Clases de documentos</link>).
</para>
<para>Usar el ejemplo  a continuación en la clase  <literal>article</literal> produce la
exhibición  de   un  párrafo.   La   opción  de  clase   de  documento
<literal>titlepage</literal>   genera   el   resumen  en   una   página   separada
(véase <link linkend="Opciones-de-la-clase-documento">Opciones de  la clase  documento</link>); este es  el predeterminado
solo en la clase <literal>report</literal>.
</para>
<screen>\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}
</screen>
<indexterm role="cp"><primary>package, <literal>abstract</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>abstract</literal> package</primary></indexterm>
<para>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 <literal>abstract</literal>).
</para>
<!-- Adoptado de http://www.tex.ac.uk/FAQ-onecolabs.html -->
<screen>\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.}
}
</screen>

</sect1>
<sect1 label="8.2" id="array">
<title><literal>array</literal></title>

<indexterm role="fn"><primary>environment, <literal>array</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>array</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>arreglos, matemáticos</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{array}{<replaceable>cols</replaceable>}
  <replaceable>column 1 entry</replaceable> &amp;<replaceable>column 2 entry</replaceable> ... &amp;<replaceable>column n entry</replaceable> \\
  ...
\end{array}
</screen>
<para>o:
</para>
<screen>\begin{array}[<replaceable>pos</replaceable>]{<replaceable>cols</replaceable>}
  <replaceable>column 1 entry</replaceable> &amp;<replaceable>column 2 entry</replaceable> ... &amp;<replaceable>column n entry</replaceable> \\
  ...
\end{array}
</screen>
<para>Produce un arreglo de matemáticas.  Este entorno solo se puede usar en
modo math (véase <link linkend="Modos">Modos</link>), y normalmente  aparece dentro de un entorno
math como  <literal>equation</literal> (véase <link linkend="equation">equation</link>).   Dentro de  cada fila,
las  entradas  de  la  columna   están  separadas  por  un  ampersand,
(<literal>&amp;</literal>).   Las   filas  terminan   con  barras   invertidas  dobles
(véase <link linkend="_005c_005c">\\</link>).
</para>
<para>Este ejemplo muestra un arreglo de tres por tres.
</para>
<screen>\begin{equation*}
  \chi(x) =
  \left|              % cerca de la barra vertical
    \begin{array}{ccc}
      x-a  &amp;-b  &amp;-c  \\
      -d   &amp;x-e &amp;-f  \\
      -g   &amp;-h  &amp;x-i
    \end{array}
 \right|
\end{equation*}
</screen>
<para>El argumento requerido  <replaceable>cols</replaceable> describe el número  de columnas, su
alineación y el formato de  las regiones entre columnas.  Por ejemplo,
<literal>\begin{array}{rcl}...\end{array}</literal>  da  tres  columnas:  el
primero  alineado a  la  derecha,  el segundo  centrado  y el  tercero
alineado a  la izquierda.  <link linkend="tabular">tabular</link> para  la descripción completa
de <replaceable>cols</replaceable> y de otras  características comunes de los dos entornos,
incluido el argumento opcional <replaceable>pos</replaceable>.
</para>
<para>Hay  dos formas  en que  <literal>array</literal> difiere  de <literal>tabular</literal>.   La
primera es que las entradas de  <literal>array</literal> se escriben en modo math,
en  estilo  texto  (véase <link linkend="Estilos-math">Estilos  math</link>) excepto  si  la  definición
<replaceable>cols</replaceable> especifica la columna con  <literal>p{...}</literal>, lo que hace que
la entrada se escriba  en modo de texto.  La segunda  es que, en lugar
del  parámetro  <literal>tabular</literal>  <literal>\tabcolsep</literal>,  el  espacio  entre
columnas de &latex; en un <literal>array</literal> está gobernado por
<indexterm role="fn"><primary>\arraycolsep</primary></indexterm>
<literal>\arraycolsep</literal>,  que da  la mitad  del ancho  entre columnas.  El
predeterminado para esto  es &#8216;<literal>5pt</literal>&#8217; por lo que  entre dos columnas
viene 10pt de espacio.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>Para obtener  arreglos con  llaves el  estándar es
usar el paquete <literal>amsmath</literal>.   Viene con entornos <literal>pmatrix</literal>
para    un    arreglo   rodeado    de    paréntesis&#160;<literal>(...)</literal>,
<literal>bmatrix</literal>  para  un  arreglo  entre  corchetes&#160;<literal>[...]</literal>,
<literal>Bmatrix</literal> para un  arreglo rodeado de llaves&#160;<literal>{...}</literal>,
<literal>vmatrix</literal>     para    un     arreglo     rodeado    de     barras
verticales&#160;<literal>|...|</literal>, y <literal>Vmatrix</literal> para un arreglo rodeado
por  dobles  barras  verticales&#160;<literal>||...||</literal>, junto  con  otras
construcciones de arreglo.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>

<para>El siguiente ejemplo usa el paquete <literal>amsmath</literal>.
</para>
<screen>\usepackage{amsmath}  % en el preámbulo

\begin{equation}
  \begin{vmatrix}{cc} % arreglo con líneas verticales
    a &amp;b \\
    c &amp;d
  \end{vmatrix}=ad-bc
\end{equation}
</screen>
<indexterm role="cp"><primary>package, <literal>array</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>array</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>dcolumn</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>dcolumn</literal> package</primary></indexterm>
<para>Hay muchos  paquetes relacionados
con  arreglos.  El  paquete <literal>array</literal>  tiene muchas  extensiones
útiles, incluidos más tipos de columnas.  El paquete <literal>dcolumn</literal>
agrega un  tipo de columna para  centrarse en un punto  decimal.  Para
ambos ve la documentación en CTAN.
</para>

</sect1>
<sect1 label="8.3" id="center">
<title><literal>center</literal></title>

<indexterm role="fn"><primary>environment, <literal>center</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>center</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>texto centrado, entorno para</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{center}
  <replaceable>line1</replaceable> \\
  <replaceable>line2</replaceable> \\
  ...
\end{center}
</screen>
<para>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, <literal>\\</literal>, para obtener un salto de línea (véase <link linkend="_005c_005c">\\</link>).
<indexterm role="fn"><primary>\\ (para <literal>centro</literal>)</primary></indexterm>
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.
</para>
<para>Este entorno  inserta espacio por encima  y por debajo del  cuerpo del
texto.  <link linkend="_005ccentering">\centering</link> para evitar dicho espacio, por ejemplo dentro
de un entorno <literal>figure</literal>.
</para>
<para>Este  ejemplo  produce  tres  líneas  centradas.   Hay  espacio  extra
vertical entre las dos últimas líneas.
</para>
<screen>\begin{center}
  Una Tesis Presentada en Cumplimiento Parcial \\
  de los Requisitos de \\[0.5ex]
  la Escuela de Ingeniería Ambiental
\end{center}
</screen>
<para>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.
</para>
<screen>\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}
</screen>
<para>Una barra invertida  doble después de la línea final  es opcional.  Si
está presente no agrega ningún espacio vertical.
</para>
<para>En  un documento  de  dos  columnas, el  texto  está  centrado en  una
columna, no en la página completa.
</para>


<sect2 label="8.3.1" id="_005ccentering">
<title><literal>\centering</literal></title>

<indexterm role="fn"><primary>\centering</primary></indexterm>
<indexterm role="cp"><primary>texto centrado, declaración para</primary></indexterm>

<para>Sinopsis:
</para>
<screen>{\centering ... }
</screen>
<para>o
</para>
<screen>\begin{group}
  \centering ...
\end{group}
</screen>
<para>Centra el  material en  su entorno.  Se  utiliza con  mayor frecuencia
dentro de un entorno como <literal>figure</literal>, o en un <literal>parbox</literal>.
</para>
<para>La declaración <literal>\centering</literal>  de este ejemplo hace  que el gráfico
sea centrado horizontalmente.
</para>
<screen>\begin{figure}
  \centering
  \includegraphics[width=0.6\textwidth]{ctan_lion.png}
  \caption{CTAN Lion}  \label{fig:CTANLion}
\end{figure}
</screen>
<para>El     entorno    de     este     <literal>\centering</literal>    termina     con
<literal>\end{figure}</literal>.
</para>
<para>A diferencia  del entorno <literal>center</literal>, el  comando <literal>\centering</literal>
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.
</para>
<para>Tampoco comienza un nuevo párrafo; simplemente cambia cómo &latex; da
formato a  las unidades  de párrafo.  Si  <literal>ww {\centering  xx \\
yy} zz</literal> está rodeado de líneas en blanco, entonces &latex; creará un
párrafo cuya primera  línea &#8216;<literal>ww xx</literal>&#8217; está centrada  y cuya segunda
línea, no centrada, contiene &#8216;<literal>yy zz</literal>&#8217;.  Usualmente lo que se desea
es para el alcance de la declaración para contener una línea en blanco
o  el  comando   <literal>\end</literal>  de  un  entorno   como  <literal>figure</literal>  o
<literal>table</literal>  que termina  la unidad  de  párrafo.  Por  lo tanto,  si
<literal>{\centering  xx  \\ yy\par}  zz</literal>  está  rodeado de  líneas  en
blanco,  entonces  crea un  nuevo  párrafo  con dos  líneas  centradas
&#8216;<literal>xx</literal>&#8217; y &#8216;<literal>yy</literal>&#8217;, seguidas de  un nuevo párrafo con &#8216;<literal>zz</literal>&#8217; que
tiene el formato habitual.
</para>

</sect2>
</sect1>
<sect1 label="8.4" id="description">
<title><literal>Description</literal></title>

<indexterm role="fn"><primary>environment, <literal>Description</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>Description</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>listas etiquetadas, crear</primary></indexterm>
<indexterm role="cp"><primary>listas de descripción, crear</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{description}
  \item[<replaceable>etiqueta  del  primer  elemento</replaceable>] <replaceable>texto  del  primer
  elemento</replaceable>
  \item[<replaceable>etiqueta  del segundo  elemento</replaceable>] <replaceable>texto  del segundo
  elemento</replaceable>
   ...
\end{description}
</screen>
<para>Entorno para hacer una lista de elementos etiquetados.  La <replaceable>label</replaceable>
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;  &#8216;<literal>Algo  anda mal,  tal  vez  un  \item
perdido</literal>&#8217;.
</para>
<para>Este  ejemplo  muestra el  entorno  utilizado  para una  secuencia  de
definiciones.
</para>
<screen>\begin{description}
  \item[lama] un sacerdote.
  \item[llama] a una bestia.
\end{description}
</screen>
<para>Las etiquetas &#8216;<literal>lama</literal>&#8217;  y &#8216;<literal>llama</literal>&#8217; se muestran  en negrita, con
el borde izquierdo en el margen izquierdo.
</para>
<indexterm role="fn"><primary>\item</primary></indexterm>
<para>Inicia   la   lista  de   elementos   con   el  comando   <literal>\item</literal>
(véase <link linkend="_005citem">\item</link>).    Utiliza   las   etiquetas  opcionales,   como   en
<literal>\item[Main  point]</literal>,  porque  hay  ningún  valor  predeterminado
sensato.   Después  de  <literal>\item</literal>  hay texto  opcional,  que  puede
contener varios párrafos.
</para>
<indexterm role="cp"><primary>máquina de escribir en negrita, evitando</primary></indexterm>
<indexterm role="cp"><primary>etiquetas de máquina de escribir en listas</primary></indexterm>
<para>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
(<link linkend="Estilos-de-tipos-de-letra">Estilos de  tipos de  letra</link>) entonces  vendrá en  negrita.  Por
ejemplo, si el  texto de la etiqueta requiere una  máquina de escribir
con <literal>\item[\texttt{label text}]</literal>  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:   <literal>\item[{\tt  label
text}]</literal>.   Del  mismo modo,  obtiene  la  letra romana  estándar  con
<literal>\item[{\rm texto etiqueta}]</literal>.
</para>
<para>Para  otros  entornos  principales  de  listas  etiquetadas  &latex;,
<link linkend="itemize">itemize</link>  y  <link linkend="enumerate">enumerate</link>.   A diferencia  de  esos  entornos,
anidar   entornos    <literal>description</literal>   no   cambia    la   etiqueta
predeterminada;  es negrita  y alineada  a la  izquierda en  todos los
niveles.
</para>
<para>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,  <link linkend="list">list</link>.    El  paquete
<literal>enumitem</literal> es útil para personalizar listas.
</para>
<para>Este ejemplo cambia las etiquetas de descripción a versalitas.
</para>
<screen>\renewcommand{\descriptionlabel}[1]{%
  {\hspace{\labelsep}\textsc{#1}}}
</screen>

</sect1>
<sect1 label="8.5" id="displaymath">
<title><literal>displaymath</literal></title>
<!-- https://tex.stackexchange.com/questions/40492/what-are-the-differences-between-align-equation-and-displaymath -->

<indexterm role="fn"><primary>environment, <literal>displaymath</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>displaymath</literal> environment</primary></indexterm>


<para>Sinopsis:
</para>
<screen>\begin{displaymath}
  <replaceable>texto matemático</replaceable>
\end{displaymath}
</screen>
<para>Entorno para componer el <replaceable>texto matemático</replaceable> 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  <literal>fleqn</literal>;
<link linkend="Opciones-de-la-clase-documento">Opciones de la clase documento</link>.
</para>
<para>En  el  entorno  <literal>displaymath</literal>  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 <literal>equation</literal> (véase <link linkend="equation">equation</link>).
</para>
<para>&latex; no dividirá el <replaceable>texto matemático</replaceable> entre líneas.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>Ten en  cuenta  que  el paquete  <literal>amsmath</literal>
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.
</para>
<indexterm role="fn"><primary>\[...\] mostrar matemáticas</primary></indexterm>
<para>La  construcción  <literal>\[<replaceable>math</replaceable>\]</literal>  es un  sinónimo  del  entorno
<literal>\begin{displaymath} <replaceable>math</replaceable>  \end{displaymath}</literal> 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
<literal>displaymath</literal> probablemente será único.
</para>
<indexterm role="fn"><primary>$$...$$ normal &tex; matemáticas de visualización</primary></indexterm>
<para>(Aparte: la construcción  <literal>$$<replaceable>math</replaceable>$$</literal> de Plain&#160;&tex; a
veces se  usa erróneamente como sinónimo  de <literal>displaymath</literal>.  Esté
no  es  un sinónimo,  y  no  se  admite  oficialmente en  &latex;  en
absoluto; <literal>$$</literal> no admite  la opción <literal>fleqn</literal> (véase <link linkend="Opciones-de-la-clase-documento">Opciones
de la  clase documento</link>), tiene  un espaciado vertical diferente  y no
realiza comprobaciones de consistencia).
</para>
<para>La salida de este ejemplo está centrada y sola en su línea.
</para>
<screen>\begin{displaymath}
  \int_1^2 x^2\,dx=7/3
\end{displaymath}
</screen>
<para>Además, el  signo integral es más  grande que la versión  en línea que
produce <literal>\( \int_1^2 x^2\,dx=7/3 \)</literal>.
</para>

</sect1>
<sect1 label="8.6" id="document">
<title><literal>document</literal></title>

<indexterm role="fn"><primary>environment, <literal>document</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>document</literal> environment</primary></indexterm>


<para>El entorno <literal>document</literal> incluye todo el cuerpo de un documento.  Se
requiere  en   todos  los   documentos  &latex;.    Véase <link linkend="Comenzar-y-terminar">Comenzar  y
terminar</link>.
</para>


<sect2 label="8.6.1" id="_005cAtBeginDocument">
<title><literal>\AtBeginDocument</literal></title>

<indexterm role="fn"><primary>\AtBeginDocument</primary></indexterm>
<indexterm role="cp"><primary>comienzo del gancho del documento</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\AtBeginDocument{<replaceable>code</replaceable>}
</screen>
<para>Guarda  <replaceable>code</replaceable> y  ejecútelo  cuando <literal>\begin{document}</literal>  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.
</para>
<para>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.
</para>

</sect2>
<sect2 label="8.6.2" id="_005cAtEndDocument">
<title><literal>\AtEndDocument</literal></title>

<indexterm role="fn"><primary>\AtEndDocument</primary></indexterm>
<indexterm role="cp"><primary>gancho final del documento</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\AtEndDocument{<replaceable>code</replaceable>}
</screen>
<para>Guarda  <replaceable>code</replaceable>   y  ejecútalo  cerca  del   final  del  documento.
Específicamente, se ejecuta cuando se ejecuta <literal>\end{document}</literal>,
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  <literal>\clearpage</literal> en  el
punto apropiado en <replaceable>code</replaceable>.
</para>
<para>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.
</para>

</sect2>
</sect1>
<sect1 label="8.7" id="enumerate">
<title><literal>enumerate</literal></title>

<indexterm role="fn"><primary>environment, <literal>enumerate</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>enumerate</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>listas de elementos, numerados</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{enumerate}
  \item[<replaceable>etiqueta  opcional del  primer elemento</replaceable>]  <replaceable>texto del
         primer elemento</replaceable>
  \item[<replaceable>etiqueta opcional  del segundo elemento</replaceable>]  <replaceable>texto del
         segundo elemento</replaceable>
  ...
\end{enumerate}
</screen>
<para>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 &#8216;<literal>1.</literal>&#8217;,  &#8216;<literal>2.</literal>&#8217;, etc. Cada entorno  de lista <literal>enumerate</literal>
debe  tener al  menos un  elemento; no  tiene ninguna  causa el  error
&latex; &#8216;<literal>Algo anda mal, tal vez un \item perdido</literal>&#8217;.
</para>
<para>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 &#8216;<literal>1.</literal>&#8217; y &#8216;<literal>2.</literal>&#8217;.
</para>
<screen>\begin{enumerate}
 \item Johnny Hayes (USA)
 \item Charles Hefferon (RSA)
\end{enumerate}
</screen>
<indexterm role="fn"><primary>\item</primary></indexterm>
<para>Inicia   la   lista  de   elementos   con   el  comando   <literal>\item</literal>
(véase <link linkend="_005citem">\item</link>).   Si  le das  a  <literal>\item</literal>  un argumento  opcional
siguiéndolo    con    corchetes,    como    en    <literal>\item[Etiqueta
intersticial]</literal>, entonces el siguiente elemento continuará la secuencia
interrumpida  (véase <link linkend="_005citem">\item</link>).   Es  decir, obtendrás  etiquetas  como
&#8216;<literal>1.</literal>&#8217;,  entonces  &#8216;<literal>Etiqueta intersticial</literal>&#8217;,  luego  &#8216;<literal>2.</literal>&#8217;.
Después de <literal>\item</literal> hay texto  opcional, que puede contener varios
párrafos.
</para>
<para>Las  enumeraciones   se  pueden   anidar  dentro  de   otros  entornos
<literal>enumerate</literal>,  o  dentro  de  cualquier  entorno  de  creación  de
párrafos como  <literal>itemize</literal> (véase <link linkend="itemize">itemize</link>), 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.
</para>
<orderedlist numeration="arabic"><listitem><para>número arábigo seguido de un punto: &#8216;<literal>1.</literal>&#8217;, &#8216;<literal>2.</literal>&#8217;,&#160;&#8230;
</para></listitem><listitem><para>letra minúscula entre paréntesis: &#8216;<literal>(a)</literal>&#8217;, &#8216;<literal>(b)</literal>&#8217;&#160;&#8230;
</para></listitem><listitem><para>número romano en minúsculas seguido de un punto: &#8216;<literal>i.</literal>&#8217;, &#8216;<literal>ii.</literal>&#8217;,&#160;&#8230;
</para></listitem><listitem><para>letra mayúscula seguida de un punto: &#8216;<literal>A.</literal>&#8217;, &#8216;<literal>B.</literal>&#8217;,&#160;&#8230;
</para></listitem></orderedlist>
<indexterm role="fn"><primary>\enumi</primary></indexterm>
<indexterm role="fn"><primary>\enumii</primary></indexterm>
<indexterm role="fn"><primary>\enumiii</primary></indexterm>
<indexterm role="fn"><primary>\enumiv</primary></indexterm>
<anchor id="enumerate-enumi"/><anchor id="enumerate-enumii"/><anchor id="enumerate-enumiii"/><anchor id="enumerate-enumiv"/><para>El entorno <literal>enumerate</literal> utiliza
los      contadores       <literal>\enumi</literal>      hasta      <literal>\enumiv</literal>
(véase <link linkend="Contadores">Contadores</link>).
</para>
<para>Para  otros  entornos  principales  de  listas  etiquetadas  &latex;,
<link linkend="description">description</link> e <link linkend="itemize">itemize</link>.  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,
<link linkend="list">list</link>.  El  paquete <literal>enumitem</literal> es útil  para personalizar
listas.
</para>
<indexterm role="fn"><primary>\labelenumi</primary></indexterm>
<indexterm role="fn"><primary>\labelenumii</primary></indexterm>
<indexterm role="fn"><primary>\labelenumiii</primary></indexterm>
<indexterm role="fn"><primary>\labelenumiv</primary></indexterm>
<anchor id="enumerate-labelenumi"/><anchor id="enumerate-labelenumii"/><anchor id="enumerate-labelenumiii"/><anchor id="enumerate-labelenumiv"/><para>Para
cambiar   el  formato   de   la   etiqueta  usa   <literal>\renewcommand</literal>
(véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand    y     \renewcommand</link>)    en     los    comandos
<literal>\labelenumi</literal> a través de  <literal>\labelenumiv</literal>. Por ejemplo, esta
lista  de  primer nivel  será  etiquetada  con letras  mayúsculas,  en
negrita y sin punto final.
</para>
<indexterm role="fn"><primary>\Alph example</primary></indexterm>
<screen>\renewcommand{\labelenumi}{\textbf{\Alph{enumi}}}
\begin{enumerate}
  \item Se muestra en negrita A
  \item Se muestra en negrita B
\end{enumerate}
</screen>
<para>Para  obtener  una lista  de  comandos  de contraetiquetado,  consulta
<link linkend="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">\alph \Alph \arabic \roman \Roman \fnsymbol</link>.
</para>

</sect1>
<sect1 label="8.8" id="eqnarray">
<title><literal>eqnarray</literal></title>

<indexterm role="fn"><primary>environment, <literal>eqnarray</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>eqnarray</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>ecuaciones, alineando</primary></indexterm>
<indexterm role="cp"><primary>alineando ecuaciones</primary></indexterm>

<indexterm role="cp"><primary>alinea entorno, de <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary>amsmath package, reemplazar <literal>eqnarray</literal></primary></indexterm>
<indexterm role="cp"><primary>Madsen, Lars</primary></indexterm>
<para>El  entorno  <literal>eqnarray</literal>   está  obsoleto.   Tiene  infelicidades,
incluyendo  el  espaciado que  es  inconsistente  con otros  elementos
matemáticos.    (Ve    &#8220;¡Evita   eqnarray!&#8221;   por    Lars   Madsen
<ulink url="https://tug.org/TUGboat/tb33-1/tb103madsen.pdf">https://tug.org/TUGboat/tb33-1/tb103madsen.pdf</ulink>).          Nuevos
documentos deben  incluir el paquete  <literal>amsmath</literal> y usar  el que
muestra  entornos matemáticos  proporcionados  allí,  como el  entorno
<literal>align</literal>.  Incluimos  una descripción  solo para completar  y para
trabajar con documentos antiguos.
</para>
<para>Sinopsis:
</para>
<screen>\begin{eqnarray}
  <replaceable>primera  fórmula a  la izquierda</replaceable>,  <replaceable>primera fórmula  en el
  medio</replaceable> y <replaceable>primera fórmula a la derecha</replaceable> \\
  ...
\end{eqnarray}
</screen>
<para>o
</para>
<screen>\begin{eqnarray*}
  <replaceable>primera  fórmula a  la izquierda</replaceable>,  <replaceable>primera fórmula  en el
  medio</replaceable> y <replaceable>primera fórmula a la derecha</replaceable> \\
  ...
\end{eqnarray*}
</screen>
<indexterm role="fn"><primary>\\ (para <literal>eqnarray</literal>)</primary></indexterm>
<para>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.
</para>
<para>Es similar a  un entorno <literal>array</literal> de tres  columnas, con elementos
dentro de  una fila separada  por un ampersand&#160;(<literal>&amp;</literal>),  y con
filas separadas por dobles barras inversas&#160;<literal>\\</literal>).
<indexterm role="fn"><primary>\\* (para <literal>eqnarray</literal>)</primary></indexterm>
La forma de estrella del salto  de línea (<literal>\\*</literal>) también se puede
usar para separar  ecuaciones, y no permitirá un salto  de página allí
(véase <link linkend="_005c_005c">\\</link>).
</para>
<indexterm role="fn"><primary>\nonumber</primary></indexterm>
<indexterm role="cp"><primary>números de ecuación, omitir</primary></indexterm>
<para>La forma sin estrella <literal>eqnarray</literal>  coloca un número de ecuación en
cada línea (usando el contador <literal>equation</literal>), a menos que esa línea
contenga   un   comando    <literal>\nonumber</literal>.    La   forma   destacada
<literal>eqnarray*</literal> omite  numeración de ecuaciones, mientras  que por lo
demás son iguales.
</para>
<indexterm role="fn"><primary>\lefteqn</primary></indexterm>
<para>El  comando <literal>\lefteqn</literal>  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.
</para>
<para>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.
</para>
<screen>\begin{eqnarray*}
  \lefteqn{x_1+x_2+\cdots+x_n}     \\
    &amp;\leq &amp;y_1+y_2+\cdots+y_n      \\
    &amp;=    &amp;z+y_3+\cdots+y_n
\end{eqnarray*}
</screen>

</sect1>
<sect1 label="8.9" id="equation">
<title><literal>equation</literal></title>

<indexterm role="fn"><primary>environment, <literal>equation</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>equation</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>ecuaciones, entorno para</primary></indexterm>
<indexterm role="cp"><primary>fórmulas, entorno para</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{equation}
  <replaceable>texto matemático</replaceable>
\end{equation}
</screen>
<para>Lo  mismo  que  un  entorno  <literal>displaymath</literal>  (véase <link linkend="displaymath">displaymath</link>)
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
<literal>equation</literal>.
</para>
<para>No  debe  haber líneas  en  blanco  entre <literal>\begin{equation}</literal>  y
<literal>\begin{equation}</literal>, o  &latex; te dirá  que falta el  signo de
dólar.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>El paquete  <literal>amsmath</literal>  tiene una  extensas
facilidades  para mostrar  ecuaciones.   Los  nuevos documentos  deben
incluir este paquete.
</para>

</sect1>
<sect1 label="8.10" id="figure">
<title><literal>figure</literal></title>

<indexterm role="fn"><primary>environment, <literal>figure</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>figure</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>insertar figuras</primary></indexterm>
<indexterm role="cp"><primary>figuras, insertando</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{figure}[<replaceable>placement</replaceable>]
  <replaceable>cuerpo de figura</replaceable>
  \caption[<replaceable>loftitle</replaceable>]{<replaceable>title</replaceable>}  % opcional
  \label{<replaceable>label}</replaceable>              % opcional
\end{figure}
</screen>
<para>o:
</para>
<screen>\begin{figure*}[<replaceable>placement</replaceable>]
  <replaceable>cuerpo de figura</replaceable>
  \caption[<replaceable>loftitle</replaceable>]{<replaceable>title</replaceable>}  % opcional
  \label{<replaceable>label}</replaceable>              % opcional
\end{figure*}
</screen>
<para>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 &#8220;hace flotar&#8221;  a un  lugar conveniente,
como la parte superior de una página siguiente (véase <link linkend="Flotantes">Flotantes</link>).
</para>
<para>El  <replaceable>cuerpo  de figura</replaceable>  puede  consistir  en gráficos  importados
(véase <link linkend="Gr_00e1ficos">Gráficos</link>), o  texto, comandos de &latex;,  etc. Está escrito
en un <literal>parbox</literal> de ancho <literal>\textwidth</literal>.
</para>
<para>Los posibles valores de <replaceable>placement</replaceable> son <literal>h</literal> para &#8216;<literal>aquí</literal>&#8217;,
<literal>t</literal> para &#8216;<literal>top</literal>&#8217;, <literal>b</literal>  para &#8216;<literal>bottom</literal>&#8217; y <literal>p</literal> para
&#8216;<literal>en una página  de flotantes separada</literal>&#8217;.  Para el  efecto de estas
opciones en el algoritmo de colocación de flotantes, <link linkend="Flotantes">Flotantes</link>.
</para>
<para>La forma destacada  <literal>figure*</literal> se usa cuando un  documento está en
modo de  doble columna  (véase <link linkend="_005ctwocolumn">\twocolumn</link>).  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 <replaceable>placement</replaceable> <literal>b</literal> en <link linkend="Flotantes">Flotantes</link>.
</para>
<indexterm role="fn"><primary>\caption</primary></indexterm>
<para>La   etiqueta  es   opcional;   se  usa   para  referencias   cruzadas
(véase <link linkend="Referencias-cruzadas">Referencias cruzadas</link>).   El comando  opcional <literal>\caption</literal>
especifica el texto del título  para la figura (véase <link linkend="_005ccaption">\caption</link>).  De
manera predeterminada está numerado.  Si <replaceable>loftitle</replaceable> está presente,
se usa en la lista de figuras en lugar de <replaceable>title</replaceable> (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de
contenido etc.</link>).
</para>
<para>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.
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="8.11" id="filecontents">
<title><literal>filecontents</literal></title>

<indexterm role="fn"><primary>environment, <literal>filecontents</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>filecontents</literal> environment</primary></indexterm>

<indexterm role="fn"><primary>environment, <literal>filecontents*</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>filecontents*</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>archivos externos, escritura</primary></indexterm>
<indexterm role="cp"><primary>escribiendo varios archivos desde la fuente.</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{filecontents}[<replaceable>option</replaceable>]{<replaceable>filename</replaceable>}
  <replaceable>text</replaceable>
\end{filecontents}
</screen>
<para>o
</para>
<screen>\begin{filecontents*}[<replaceable>option</replaceable>]{<replaceable>filename</replaceable>}
  <replaceable>text</replaceable>
\end{filecontents*}
</screen>
<para>Crea un archivo  llamado <replaceable>filename</replaceable> en el directorio  actual (o el
directorio de salida, si  se especifica; véase <link linkend="directorio-de-salida">directorio de salida</link>)
y  escribir <replaceable>text</replaceable>  en él.   De forma  predeterminada, un  archivo
existente no se sobrescribe.
</para>
<para>La  versión sin  estrella del  entorno <literal>filecontents</literal>  prefija el
contenido del archivo creado con  un encabezado de comentarios &tex;;
ve el siguiente ejemplo.  La versión protagonista <literal>filecontents*</literal>
no incluye el encabezado.
</para>
<para>Las opciones posibles son::
</para>
<variablelist><varlistentry><term><literal>force</literal>
</term><term><literal>overwrite</literal>
</term><listitem><indexterm role="cp"><primary><literal>force</literal> opción para <literal>filecontents</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>force</literal> opción para <literal>filecontents</literal></primary></indexterm>
<para>La opción <literal>overwrite</literal> para <literal>filecontents</literal>
Sobrescribe un archivo existente.
</para>
</listitem></varlistentry><varlistentry><term><literal>noheader</literal>
</term><listitem><indexterm role="cp"><primary>Opción <literal>noheader</literal> para <literal>filecontents</literal></primary></indexterm>
<para>Omite el encabezado. Equivale a usar <literal>filecontents*</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>nosearch</literal>
</term><listitem><indexterm role="cp"><primary>Opción <literal>nosearch</literal> para <literal>filecontents</literal></primary></indexterm>
<para>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.
</para>
</listitem></varlistentry></variablelist>
<para>Estas opciones se agregaron en una versión de &latex; de 2019.
</para>
<indexterm role="cp"><primary>fuentes autónomas</primary></indexterm>
<indexterm role="cp"><primary>archivos fuente, que los convierte en autónomos</primary></indexterm>
<para>Este  entorno se  puede  utilizar en  cualquier  parte del  preámbulo,
aunque a menudo aparece antes del comando <literal>\documentclass</literal>.  Esta
comúnmente se  usa para crear un  <literal>.bib</literal> 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.
</para>
<para>Por ejemplo, este documento::
</para>
<screen>\documentclass{article}
\begin{filecontents}{JH.sty}
\newcommand{\myname}{Jim Hef{}feron}
\end{filecontents}
\usepackage{JH}
\begin{document}
Artículo por \myname.
\end{document}
</screen>
<para>produce este archivo <filename>JH.sty</filename>:
</para>
<screen>%% Archivo LaTeX2e `JH.sty'
%% generado por el entorno `filecontents'
%% de la fuente `test' el 12/10/2015.
%%
\newcommand{\myname}{Jim Hef{}feron}
</screen>

</sect1>
<sect1 label="8.12" id="flushleft">
<title><literal>flushleft</literal></title>

<indexterm role="fn"><primary>environment, <literal>flushleft</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>flushleft</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>texto justificado a la izquierda, entorno para</primary></indexterm>
<indexterm role="cp"><primary>texto justificado a la derecha irregular, entorno para</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{flushleft}
  <replaceable>line1</replaceable> \\
  <replaceable>line2</replaceable> \\
  ...
\end{flushleft}
</screen>
<indexterm role="fn"><primary>\\ (para <literal>flushleft</literal>)</primary></indexterm>
<para>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, <literal>\\</literal>.
Para la forma de declaración&#160;<link linkend="_005craggedright">\raggedright</link>.
</para>
<para>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.
</para>
<screen>\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}
</screen>



<sect2 label="8.12.1" id="_005craggedright">
<title><literal>\raggedright</literal></title>

<indexterm role="fn"><primary>\raggedright</primary></indexterm>
<indexterm role="cp"><primary>texto justificado a la derecha irregular</primary></indexterm>
<indexterm role="cp"><primary>texto justificado a la izquierda</primary></indexterm>
<indexterm role="cp"><primary>justificación, irregular a la derecha</primary></indexterm>

<para>Sinopsis:
</para>
<screen>{\raggedright  ... }
</screen>
<para>o
</para>
<screen>\begin{<replaceable>environment</replaceable>} \raggedright
  ...
\end{<replaceable>environment</replaceable>}
</screen>
<para>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
<replaceable>environment</replaceable> como  <literal>quote</literal> o  en un <literal>parbox</literal>.   Para la
forma del entorno&#160;<link linkend="flushleft">flushleft</link>.
</para>
<para>A  diferencia  del  entorno <literal>flushleft</literal>,  <literal>\raggedright</literal>  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 <literal>\end</literal> que finaliza la unidad de párrafo.
</para>
<para>Aquí <literal>\raggedright</literal>  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  <literal>\raggedright</literal> está dentro
de llaves <literal>{...}</literal> para delimitar su efecto.
</para>
<screen>\begin{tabular}{rp{2in}}
  Equipo alfa &amp;{\raggedright Este equipo hace todo el trabajo real.} \\
  Equipo beta &amp;{\raggedright Este equipo se asegura de que el
                enfriador de agua nunca esté vacío.}               \\
\end{tabular}
</screen>

</sect2>
</sect1>
<sect1 label="8.13" id="flushright">
<title><literal>flushright</literal></title>

<indexterm role="fn"><primary>environment, <literal>flushright</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>flushright</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>texto izquierdo irregular, entorno para</primary></indexterm>
<indexterm role="cp"><primary>justificar texto a la derecha, entorno para</primary></indexterm>

<screen>\begin{flushright}
  <replaceable>line1</replaceable> \\
  <replaceable>line2</replaceable> \\
  ...
\end{flushright}
</screen>
<indexterm role="fn"><primary>\\ (para <literal>flushright</literal>)</primary></indexterm>
<para>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,    <literal>\\</literal>.     Para    la   forma    de
declaración&#160;<link linkend="_005craggedleft">\raggedleft</link>.
</para>
<para>Para  ver un  ejemplo relacionado  con este  entorno, <link linkend="flushleft">flushleft</link>,
donde uno solo tiene mutatis mutandis para reemplazar <literal>flushleft</literal>
por <literal>flushright</literal>.
</para>


<sect2 label="8.13.1" id="_005craggedleft">
<title><literal>\raggedleft</literal></title>

<indexterm role="fn"><primary>\raggedleft</primary></indexterm>
<indexterm role="cp"><primary>texto alineado a la izquierda irregular</primary></indexterm>
<indexterm role="cp"><primary>justificación, desigual izquierda</primary></indexterm>
<indexterm role="cp"><primary>justificación de texto a la derecha</primary></indexterm>

<para>Sinopsis:
</para>
<screen>{\raggedleft  ... }
</screen>
<para>o
</para>
<screen>\begin{<replaceable>environment</replaceable>} \raggedleft
  ...
\end{<replaceable>environment</replaceable>}
</screen>
<para>Una  declaración que  hace que  las líneas  queden al  ras del  margen
derecho  e   izquierdo  irregular.   Se  puede   usar  dentro   de  un
<replaceable>environment</replaceable> como  <literal>quote</literal> o  en un <literal>parbox</literal>.   Para la
forma del entorno&#160;<link linkend="flushright">flushright</link>.
</para>
<para>A  diferencia  del  entorno <literal>flushright</literal>,  <literal>\raggedleft</literal>  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 <literal>\end</literal> que finaliza la unidad de párrafo.
</para>
<para>Para    ver    un    ejemplo    relacionado    con    este    entorno,
&#160;<link linkend="_005craggedright">\raggedright</link>, donde  uno solo tiene mutatis  mutandis para
reemplazar <literal>\raggedright</literal> por <literal>\raggedleft</literal>.
</para>

</sect2>
</sect1>
<sect1 label="8.14" id="itemize">
<title><literal>itemize</literal></title>

<indexterm role="fn"><primary>environment, <literal>itemize</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>itemize</literal> environment</primary></indexterm>

<indexterm role="fn"><primary>\item</primary></indexterm>
<indexterm role="cp"><primary>listas de elementos</primary></indexterm>
<indexterm role="cp"><primary>listas no ordenadas</primary></indexterm>
<indexterm role="cp"><primary>listas con viñetas</primary></indexterm>
<indexterm role="cp"><primary>listas de viñetas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{itemize}
  \item[<replaceable>etiqueta  opcional del  primer elemento</replaceable>]  <replaceable>texto del
  primer elemento</replaceable>
  \item[<replaceable>etiqueta opcional  del segundo elemento</replaceable>]  <replaceable>texto del
  segundo elemento</replaceable>
  ...
\end{itemize}
</screen>
<para>Produce  una <firstterm>lista  desordenada</firstterm>,  a veces  denominada lista  con
viñetas.  Ahí debe haber al  menos un <literal>\item</literal> dentro del entorno;
no tiene ninguna causa el error  &latex; &#8216;<literal>Algo anda mal, tal vez
un \item faltante</literal>&#8217;.
</para>
<para>Esto da una lista de dos elementos.
</para>
<screen>\begin{itemize}
 \item Dibujo a lápiz y acuarela por Cassandra
 \item Retrato de arroz
\end{itemize}
</screen>
<para>Con  la  configuración regional  predeterminada  &#8212;  sin cargar,  por
ejemplo,   el  paquete <literal>babel</literal>  con otro  idioma que  no sea
inglés&#8212;como una lista  de nivel superior cada  etiqueta saldría como
una viñeta, &#8226;.  El formato del etiquetado depende del nivel de
anidamiento; ve abajo.
</para>
<indexterm role="fn"><primary>\item</primary></indexterm>
<para>Inicia   la   lista  de   elementos   con   el  comando   <literal>\item</literal>
(véase <link linkend="_005citem">\item</link>).  Si le das a <literal>\item</literal> un argumento opcional entre
corchetes siguiéndolo, como  en <literal>\item[<replaceable>Etiqueta optional</replaceable>]</literal>,
entonces de manera predeterminada <replaceable>Etiqueta opcional</replaceable> 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  <link linkend="description">description</link>.   Después  del
<literal>\item</literal>  está el  texto del  elemento,  que puede  estar vacío  o
contener varios párrafos.
</para>
<para>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   <literal>enumerate</literal>
(véase <link linkend="enumerate">enumerate</link>).
</para>
<indexterm role="fn"><primary>\labelitemi</primary></indexterm>
<indexterm role="fn"><primary>\labelitemii</primary></indexterm>
<indexterm role="fn"><primary>\labelitemiii</primary></indexterm>
<indexterm role="fn"><primary>\labelitemiv</primary></indexterm>
<anchor id="itemize-labelitemi"/><anchor id="itemize-labelitemii"/><anchor id="itemize-labelitemiii"/><anchor id="itemize-labelitemiv"/><para>El entorno
<literal>itemize</literal>  usa  los  comandos   <literal>\labelitemi</literal>  a  través  de
<literal>\labelitemiv</literal> 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.
</para>
<orderedlist numeration="arabic"><listitem><para>&#8226; (bullet, de <literal>\textbullet</literal>)
</para></listitem><listitem><para><emphasis role="bold">--<!-- /@w --></emphasis> (bold en-dash, de <literal>\normalfont\bfseries\textendash</literal>)
</para></listitem><listitem><para>* (asterisco, de <literal>\textasteriskcentered</literal>)
</para></listitem><listitem><para>. (verticalmente centrado dot, representado aquí como un punto, de <literal>\textperiodcentered</literal>)
</para></listitem></orderedlist>
<para>Cambia las etiquetas con <literal>\renewcommand</literal>.  Por ejemplo, esto hace
que el primer nivel use diamantes.
</para>
<screen>\renewcommand{\labelitemi}{$\diamond$}
</screen>
<indexterm role="fn"><primary>\leftmargin</primary></indexterm>
<indexterm role="fn"><primary>\leftmargini</primary></indexterm>
<indexterm role="fn"><primary>\leftmarginii</primary></indexterm>
<indexterm role="fn"><primary>\leftmarginiii</primary></indexterm>
<indexterm role="fn"><primary>\leftmarginiv</primary></indexterm>
<indexterm role="fn"><primary>\leftmarginv</primary></indexterm>
<indexterm role="fn"><primary>\leftmarginvi</primary></indexterm>
<anchor id="itemize-leftmargin"/><anchor id="itemize-leftmargini"/><anchor id="itemize-leftmarginii"/><anchor id="itemize-leftmarginiii"/><anchor id="itemize-leftmarginiv"/><anchor id="itemize-leftmarginv"/><anchor id="itemize-leftmarginvi"/><para>La distancia entre el  margen izquierdo
del   entorno  envolvente   y  el   margen  izquierdo   de  la   lista
<literal>itemize</literal> está determinado  por el parámetros <literal>\leftmargini</literal>
a  <literal>\leftmarginvi</literal>.   (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:
<literal>2.5em</literal>  en el  nivel 1  (<literal>2em</literal>  en modo  de dos  columnas),
<literal>2.2em</literal> en el nivel 2, <literal>1.87em</literal> en el nivel 3 y <literal>1.7em</literal>
en el  nivel 4,  con valores  más pequeños  para niveles  anidados más
profundos.
</para>
<indexterm role="cp"><primary>package, <literal>enumitem</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>enumitem</literal> package</primary></indexterm>
<para>Para  otros   entornos  principales   de  listas
etiquetadas    &latex;,    <link linkend="description">description</link>    y    <link linkend="enumerate">enumerate</link>.
<literal>itemize</literal>,  los  entornos <literal>enumerate</literal>  y  <literal>description</literal>
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, <link linkend="list">list</link>.
El paquete <literal>enumitem</literal> es útil para personalizar listas.
</para>
<para>Este ejemplo  reduce en  gran medida  el espacio  del margen  para los
elementos detallados más externos de listas.
</para>
<screen>\setlength{\leftmargini}{1.25em} % predeterminado 2.5em
</screen>
<indexterm role="fn"><primary>\parskip ejemplo</primary></indexterm>
<para>Especialmente  para listas  con artículos  cortos, puede  ser deseable
eludir espacio  entre elementos.   Aquí hay un  ejemplo que  define un
entorno  <literal>itemize*</literal> sin  espacios adicionales  entre elementos  o
entre  párrafos dentro  de  un solo  elemento  (<literal>\parskip</literal> no  es
específico de la lista, véase <link linkend="_005cparindent-y-_005cparskip">\parindent y \parskip</link>):
</para>
<screen>\newenvironment{itemize*}%
  {\begin{itemize}%
    \setlength{\itemsep}{0pt}%
    \setlength{\parsep}{0pt}}%
    \setlength{\parskip}{0pt}}%
  {\end{itemize}}
</screen>

</sect1>
<sect1 label="8.15" id="letter">
<title>entorno <literal>letter</literal>: escribir cartas</title>

<indexterm role="fn"><primary>environment, <literal>letter</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>letter</literal> environment</primary></indexterm>


<para>Este entorno se utiliza para crear cartas.  Véase <link linkend="Cartas">Cartas</link>.
</para>

</sect1>
<sect1 label="8.16" id="list">
<title><literal>list</literal></title>

<indexterm role="fn"><primary>environment, <literal>list</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>list</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>listas de elementos, genérica</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{list}{<replaceable>labeling</replaceable>}{<replaceable>spacing</replaceable>}
  \item[<replaceable>etiqueta  opcional del  primer elemento</replaceable>]  <replaceable>texto del
  primer elemento</replaceable>
  \item[<replaceable>etiqueta opcional  del segundo elemento</replaceable>]  <replaceable>texto del
  segundo elemento</replaceable>
  ...
\end{list}
</screen>
<para>Un entorno para la construcción de listas.
</para>
<para>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 <literal>description</literal>,
<literal>enumerate</literal>      e      <literal>itemize</literal>      (véase <link linkend="description">description</link>,
<link linkend="enumerate">enumerate</link> y <link linkend="itemize">itemize</link>).
</para>
<para>En  cambio, el  entorno <literal>list</literal>  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   <literal>list</literal>,    incluyendo   <literal>quotation</literal>,
<literal>quote</literal>    y    <literal>center</literal>    (véase <link linkend="comillas-y-citas">comillas    y    citas</link>,
véase <link linkend="center">center</link>).
</para>
<para>Este  usa  el  entorno  <literal>list</literal>  para  definir  un  nuevo  entorno
personalizado.
</para>
<screen>\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}
</screen>
<para>El  primer argumento  obligatorio <replaceable>labeling</replaceable>  especifica el  valor
predeterminado  de etiquetado  de los  elementos de  la lista.   Puede
contener  comandos de  texto y  &latex;, como  arriba donde  contiene
&#8216;<literal>Item</literal>&#8217;  y &#8216;<literal>\Roman{&#8230;}</literal>&#8217;.   &latex; forma  la etiqueta
poniendo   el  argumento   <replaceable>labeling</replaceable>  en   un  cuadro   de  ancho
<literal>\labelwidth</literal>.  Si la etiqueta es  más ancha que eso, el material
adicional se  extiende a la  derecha.  Al  hacer una instancia  de una
<literal>list</literal>  puedes redefinir  el  etiquetado  predeterminado dando  a
<literal>\item</literal> un  argumento opcional al  incluir corchetes y  el texto,
como en la <literal>\item[Etiqueta especial.]</literal>; véase <link linkend="_005citem">\item</link>.
</para>
<para>El  segundo argumento  obligatorio  <replaceable>spacing</replaceable> tiene  una lista  de
comandos.  Esta lista puede estar  vacía.  Un comando que puede entrar
aquí es <literal>\usecounter{<replaceable>countername</replaceable>}</literal> (véase <link linkend="_005cusecounter">\usecounter</link>).
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 <literal>\item</literal> que no  tiene un argumento
opcional.
</para>
<indexterm role="fn"><primary>\makelabel</primary></indexterm>
<anchor id="list-makelabel"/><para>Otro comando que  puede ir en <replaceable>spacing</replaceable> es
<literal>\makelabel</literal>, 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
(véase <link linkend="Modos">Modos</link>). Un ejemplo de cambiar su definición es la del ejemplo
del <literal>named</literal>  anterior, antes de  la definición del  entorno añade
<literal>\newcommand{\namedmakelabel}[1]{\textsc{#1}}</literal>, y  entre el
comando  <literal>\setlength</literal> y  el  paréntesis que  cierra el  argumento
<replaceable>spacing</replaceable>  también   agrega  <literal>\let\makelabel\namedmakelabel</literal>.
Luego, las  etiquetas se  compondrán en  versalitas.  Del  mismo modo,
cambiando  la segunda  línea del  código a  <literal>\let\makelabel\fbox</literal>
pone las  etiquetas dentro de  una caja enmarcada.  A  continuación se
muestra otro  ejemplo del comando <literal>\makelabel</literal>,  en la definición
del entorno <literal>redlabel</literal>.
</para>
<para>También  a menudo  en  <replaceable>spacing</replaceable> 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 <literal>itemize</literal> pueden ser
diferentes a los  valores que se muestran aquí).   Consulta también la
siguiente   figura   de   lista.    Cada  uno   tiene   una   longitud
(véase <link linkend="Longitudes">Longitudes</link>).    Los  espacios   verticales  normalmente   son
longitudes elásticas, con componentes <literal>plus</literal> y <literal>minus</literal>, para
darle flexibilidad a &tex; en la configuración de la página.  Cambiar
cada uno con un  comando como <literal>\setlength{itemsep}{2pt plus1pt
minus1pt}</literal>.  Para algunos efectos, estas  longitudes deben ser cero o
negativas.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\itemindent</primary></indexterm><literal>\itemindent</literal>
</term><listitem><anchor id="lista-itemindent"/><para>Sangría de espacio horizontal adicional, más
allá de <literal>leftmargin</literal>,  de la primera línea de  cada elemento.  Su
valor predeterminado es <literal>0pt</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\itemsep</primary></indexterm><literal>\itemsep</literal>
</term><listitem><anchor id="lista-itemsep"/><para>Espacio vertical  entre elementos, más allá del
<literal>\parsep</literal>.  Los  valores predeterminados  para los  tres primeros
niveles  en   las  clases   &latex;  &#8216;<literal>article</literal>&#8217;,   &#8216;<literal>book</literal>&#8217;  y
&#8216;<literal>report</literal>&#8217; con un tamaño de  10 puntos son: <literal>4pt plus2pt minus
1pt</literal>,  <literal>\parsep</literal> (es  decir, <literal>2pt  plus 1pt  minus 1pt</literal>),  y
<literal>\topsep</literal> (es decir, <literal>2pt plus 1pt minus 1pt</literal>).  Los valores
predeterminados en  11 puntos  son: <literal>4.5pt  plus 2pt  minus 1pt</literal>,
<literal>\parsep</literal>   (es  decir,   <literal>2pt  plus   1pt  minus   1pt</literal>)  y
<literal>\topsep</literal> (es decir, <literal>2pt plus 1pt minus 1pt</literal>).  Los valores
predeterminados en  12 puntos  son: <literal>5pt  plus 2.5pt  minus 1pt</literal>,
<literal>\parsep</literal>  (es  decir,  <literal>2.5pt   plus  1pt  minus  1pt</literal>),  y
<literal>\topsep</literal> (es decir, <literal>2.5pt plus 1pt minus 1pt</literal>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\labelsep</primary></indexterm><literal>\labelsep</literal>
</term><listitem><anchor id="lista-labelsep"/><para>Espacio  horizontal  entre la  etiqueta y  el
texto  de  un  elemento.   El valor  predeterminado  para  las  clases
&latex; &#8216;<literal>article</literal>&#8217;, &#8216;<literal>book</literal>&#8217;, y &#8216;<literal>report</literal>&#8217; es <literal>0.5em</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\labelwidth</primary></indexterm><literal>\labelwidth</literal>
</term><listitem><anchor id="lista-labelwidth"/><para>Ancho horizontal.  La caja  que contiene la
etiqueta nominalmente es así  de ancha.  Si <literal>\makelabel</literal> 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
<literal>\makelabel</literal>  devuelve   texto  de   ancho  menor  o   igual  que
<literal>\labelwidth</literal> entonces el valor predeterminado de &latex; es que
la etiqueta está compuesta al ras en una caja de este ancho.
</para>
<para>El     borde    izquierdo     del     cuadro     de    etiqueta     es
<literal>\leftmargin</literal>+<literal>\itemindent</literal>-<literal>\labelsep</literal>-<literal>\labelwidth</literal>
del margen izquierdo del entorno envolvente.
</para>
<para>El valor predeterminado para  las clases &#8216;<literal>article</literal>&#8217;, &#8216;<literal>book</literal>&#8217; y
&#8216;<literal>report</literal>&#8217;    de    &latex;    en    el    nivel    superior    es
<literal>\leftmargini</literal>-<literal>\labelsep</literal>, (que  es <literal>2em</literal> en  modo una
columna y <literal>1.5em</literal> en modo de  dos columnas).  En el segundo nivel
es  <literal>\leftmarginii</literal>-<literal>\labelsep</literal>, y  en  el  tercer nivel  es
<literal>\leftmarginiii</literal>-<literal>\labelsep</literal>.  Estas  definiciones hacen que
el borde izquierdo de la etiqueta coincida con el margen izquierdo del
entorno envolvente.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leftmargin</primary></indexterm><literal>\leftmargin</literal>
</term><listitem><anchor id="lista-leftmargin"/><para>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.
</para>
<para>En las clases  de documentos estándar de &latex;, una  lista de nivel
superior tiene este conjunto al valor de <literal>\leftmargini</literal>, mientras
que una  lista anidada dentro una  lista de nivel superior  tiene este
margen   establecido   en   <literal>\leftmarginii</literal>.   Las   listas   más
profundamente anidadas obtienen los valores de <literal>\leftmarginiii</literal> a
través de <literal>\leftmarginvi</literal>.  (La anidación superior al nivel cinco
genera el mensaje de error &#8216;<literal>Anidado demasiado profundo</literal>&#8217;).
</para>
<para>Los valores predeterminados para los primeros tres niveles en las clases
&latex; &#8216;<literal>article</literal>&#8217;, &#8216;<literal>book</literal>&#8217; y &#8216;<literal>report</literal>&#8217; son: <literal>\leftmargini</literal> es
<literal>2.5em</literal> (en modo de dos columnas, <literal>2em</literal>), <literal>\leftmarginii</literal>
es
<literal>2.2em</literal> y <literal>\leftmarginiii</literal> es <literal>1.87em</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\listparindent</primary></indexterm><literal>\listparindent</literal>
</term><listitem><anchor id="lista-listparindent"/><para>Espacio horizontal  de sangría  de línea
adicional,  más   allá  de  <literal>\leftmargin</literal>,  para   el  segundo  y
posteriores  párrafos  dentro  de  una lista  <literal>item</literal>.   Un  valor
negativo  lo convierte  en  &#8220;outdent&#8221;.  Su  valor predeterminado  es
<literal>0pt</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\parsep</primary></indexterm><literal>\parsep</literal>
</term><listitem><anchor id="lista-parsep"/><para>Espacio  vertical entre  párrafos dentro  de un
elemento.  Los valores predeterminados  para los primeros tres niveles
en las clases &latex; &#8216;<literal>article</literal>&#8217;, &#8216;<literal>book</literal>&#8217; y &#8216;<literal>report</literal>&#8217; con
un tamaño de  10 puntos son: <literal>4pt plus 2pt  minus 1pt</literal>, <literal>2pt
plus  1pt minus  1pt</literal> y  <literal>0pt</literal>.  Los  valores predeterminados  en
tamaño de  11 puntos son:  <literal>4.5pt plus 2pt minus  1pt</literal>, <literal>2pt
plus1pt  minus1pt</literal>,  y  <literal>0pt</literal>.  Los  valores  predeterminados  en
tamaño de 12 puntos son:  <literal>5pt plus 2.5pt minus 1pt</literal>, <literal>2.5pt
plus 1pt minus 1pt</literal> y <literal>0pt</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\partopsep</primary></indexterm><literal>\partopsep</literal>
</term><listitem><anchor id="lista-partopsep"/><para>Espacio  vertical  agregado,  más  allá  de
<literal>\topsep</literal>+<literal>\parskip</literal>,  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).
</para>
<para>Los  valores predeterminados  para los  primeros tres  niveles en  las
clases  &latex; &#8216;<literal>article</literal>&#8217;,  &#8216;<literal>book</literal>&#8217; y  &#8216;<literal>report</literal>&#8217; con  un
tamaño de 10 puntos son: <literal>2pt plus 1pt minus 1pt</literal>, <literal>2pt plus
1pt   minus  1pt</literal>   y  <literal>1pt   plus0pt  minus1pt</literal>.    Los  valores
predeterminados  en  11  puntos   son:  <literal>3pt  plus1pt  minus1pt</literal>,
<literal>3pt plus  1pt minus 1pt</literal>  y <literal>1pt plus0pt minus  1pt</literal>).  Los
valores predeterminados  en 12  puntos son:  <literal>3pt plus  2pt minus
3pt</literal>, <literal>3pt plus 2pt minus 2pt</literal> y <literal>1pt plus0pt minus 1pt</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rightmargin</primary></indexterm><literal>\rightmargin</literal>
</term><listitem><anchor id="lista-rightmargin"/><para>Espacio horizontal  entre el margen derecho
de la  lista y  el margen  derecho del  entorno envolvente.   Su valor
predeterminado es <literal>0pt</literal>.  No debe ser negativo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\topsep</primary></indexterm><literal>\topsep</literal>
</term><listitem><anchor id="lista-topsep"/><para>Espacio vertical agregado  a la parte superior e
inferior de  la lista,  además a <literal>\parskip</literal>  (véase <link linkend="_005cparindent-y-_005cparskip">\parindent y
\parskip</link>).   Los  valores  predeterminados  para  los  tres  primeros
niveles  en   las  clases   &latex;  &#8216;<literal>article</literal>&#8217;,   &#8216;<literal>book</literal>&#8217;  y
&#8216;<literal>report</literal>&#8217; con un tamaño de 10 puntos son: <literal>8pt plus 2pt minus
4pt</literal>, <literal>4pt plus  2pt minus 1pt</literal> y <literal>2pt plus  1pt minus 1pt</literal>.
Los valores predeterminados en 11 puntos son: <literal>9pt plus 3pt minus
5pt</literal>, <literal>4.5pt plus 2pt minus 1pt</literal> y <literal>2pt plus 1pt minus 1pt</literal>.
Los valores  predeterminados para 12  puntos son: <literal>10pt  plus 4pt
minus 6pt</literal>,  <literal>5pt plus 2.5pt  minus 1pt</literal>, y <literal>2.5pt  plus 1pt
minus 1pt</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>Esto muestra las distancias horizontal y vertical.
</para>
<informalfigure><mediaobject><imageobject><imagedata fileref="latex2e-figures/list.eps" format="EPS"></imagedata></imageobject><imageobject><imagedata fileref="latex2e-figures/list.pdf" format="PDF"></imagedata></imageobject><imageobject><imagedata fileref="latex2e-figures/list.png" format="PNG"></imagedata></imageobject><textobject><literallayout>.......................................................................
..............Surrounding environment, preceding material.............. -
                                                                        | v0 
 |---h0--|-h1-|                                                         |
 ..Label..    .....First item.....................................      -
      ............................................................
      ............................................................      -
                                                                        | v1
           ........First item, second paragraph ..................      -
      |-h2-|                                                            | v2
                                                                        |
 ..Label..    .....Second item....................................      -
      ............................................................
      ............................................................      -
|-h3--|-h4-|                                                     |-h5-| |v3
                                                                        |
..............Surrounding environment, following material.............. -
.......................................................................</literallayout></textobject></mediaobject></informalfigure>

<para>Las  longitudes  que  se  muestran se  enumeran  a  continuación.   La
relación clave es que el borde derecho del paréntesis para <replaceable>h1</replaceable> es
igual al  borde derecho  del corchete  para <replaceable>h4</replaceable>,  de modo  que el
borde    izquierdo     del    cuadro     de    etiqueta     esté    en
<replaceable>h3</replaceable>+<replaceable>h4</replaceable>-(<replaceable>h0</replaceable>+<replaceable>h1</replaceable>).
</para>
<variablelist><varlistentry><term><replaceable>v0</replaceable>
</term><listitem><para><inlineequation><mathphrase><literal>\topsep</literal> + <literal>\parskip</literal></mathphrase></inlineequation> si el entorno de la lista no
comienza            un           nuevo            párrafo,           y
<literal>\topsep</literal>+<literal>\parskip</literal>+<literal>\partopsep</literal> si lo comienza
</para>
</listitem></varlistentry><varlistentry><term><replaceable>v1</replaceable>
</term><listitem><para><literal>\parsep</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>v2</replaceable>
</term><listitem><para><literal>\itemsep</literal>+<literal>\parsep</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>v3</replaceable>
</term><listitem><para>Igual que <replaceable>v0</replaceable>.  (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).
</para>
</listitem></varlistentry><varlistentry><term><replaceable>h0</replaceable>
</term><listitem><para><literal>\labelwidth</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>h1</replaceable>
</term><listitem><para><literal>\labelsep</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>h2</replaceable>
</term><listitem><para><literal>\listparindent</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>h3</replaceable>
</term><listitem><para><literal>\leftmargin</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>h4</replaceable>
</term><listitem><para><literal>\itemindent</literal>
</para>
</listitem></varlistentry><varlistentry><term><replaceable>h5</replaceable>
</term><listitem><para><literal>\rightmargin</literal>
</para>
</listitem></varlistentry></variablelist>
<para>Los márgenes izquierdo  y derecho de la lista, que  se muestran arriba
como <replaceable>h3</replaceable> y <replaceable>h5</replaceable>, 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  <literal>\linewidth</literal> (véase <link linkend="Par_00e1metros-de-composici_00f3n-de-p_00e1gina">Parámetros de
composición de  página</link>).  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
<literal>\setlength{\leftmargin}{0.25\linewidth}</literal>.
</para>
<para>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  <literal>-\@lowpenalty</literal>,   es  decir,
<literal>-51</literal>.  Porque es negativo, de  alguna manera fomenta un salto de
página    en    cada    punto.    Cambiarlo    con,    por    ejemplo,
<literal>\@beginparpenalty=9999</literal>; un valor de  10000 prohíbe un salto de
página.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\@beginparpenalty</primary></indexterm><literal>\@beginparpenalty</literal>
</term><listitem><anchor id="lista-beginparpenalty"/><para>La penalización  de salto de página por
romper antes de la lista (predeterminado <literal>-51</literal>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\@itempenalty</primary></indexterm><literal>\@itempenalty</literal>
</term><listitem><anchor id="lista-itempenalty"/><para>La  penalización  por salto  de página  al
romper antes de un elemento de lista (predeterminado <literal>-51</literal>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\@endparpenalty</primary></indexterm><literal>\@endparpenalty</literal>
</term><listitem><anchor id="lista-endparpenalty"/><para>La penalización  de salto de  página por
romper después de una lista (predeterminado <literal>-51</literal>).
</para>
</listitem></varlistentry></variablelist>
<indexterm role="cp"><primary>package, <literal>enumitem</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>enumitem</literal> package</primary></indexterm>

<para>El paquete <literal>enumitem</literal> es útil para personalizar listas.
</para>
<para>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.  Véase <link linkend="_005cusecounter">\usecounter</link>.
</para>
<screen>\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}}
</screen>


<sect2 label="8.16.1" id="_005citem">
<title><literal>\item</literal>: Una entrada en una lista</title>

<para>Sinopsis:
</para>
<screen>\item texto del elemento
</screen>
<para>o
</para>
<screen>\item[<replaceable>optional-label</replaceable>] texto del elemento
</screen>
<para>Una  entrada en  una lista.   Las  entradas están  precedidas por  una
etiqueta, cuyo valor predeterminado depende del tipo de lista.
</para>
<para>Porque  la etiqueta  opcional  está entre  corchetes &#8216;<literal>[...]</literal>&#8217;,  si
tienes un  elemento cuyo texto comienza  con [, tienes que  ocultar el
corchete  dentro de  las  llaves,  como en:  <literal>\item  {[} es  un
corchete de apertura</literal>;  de lo contrario, &latex; pensará  en la marca
como el comienzo de una etiqueta opcional.
</para>
<para>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: <literal>\item[Corchete  de cierre, {]}]</literal>.  Véase <link linkend="Sintaxis-del-comando-LaTeX">Sintaxis
del comando &latex;</link>.
</para>
<para>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.
</para>
<screen>\begin{enumerate}
  \item Moe
  \item[a veces] Shemp
  \item Larry
\end{enumerate}
</screen>
<para>El primer elemento está etiquetado como &#8216;<literal>1.</literal>&#8217;, el segundo elemento
está etiquetado &#8216;<literal>a  veces</literal>&#8217;, y el tercer  elemento está etiquetado
como  &#8216;<literal>2.</literal>&#8217;.   Porque  de  la  etiqueta  opcional  en  el  segundo
artículo, el tercer artículo no está etiquetado&#160;&#8216;<literal>3.</literal>&#8217;.
</para>

</sect2>
<sect2 label="8.16.2" id="trivlist">
<title><literal>trivlist</literal>: Una forma restringida de <literal>list</literal></title>

<para>Sinopsis:
</para>
<screen>\begin{trivlist}
  ...
\end{trivlist}
</screen>
<para>Una versión  restringida del entorno list,  en la que los  márgenes no
son sangrados y  un <literal>\item</literal> sin un argumento  opcional no produce
texto.  Se  utiliza con  mayor frecuencia en  macros, para  definir un
entorno en  el que el comando  <literal>\item</literal> es parte de  la definición
del  entorno.   Para instancia,  el  entorno  <literal>center</literal> se  define
esencialmente como este:
</para>
<screen>\newenvironment{center}
  {\begin{trivlist}\centering\item\relax}
  {\end{trivlist}}
</screen>
<para>El uso de  <literal>trivlist</literal> 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.
</para>
<para>Específicamente,  <literal>trivlist</literal>  usa  los valores  actuales  de  los
parámetros  de lista  (véase <link linkend="list">list</link>),  excepto  que <literal>\parsep</literal>  se
establece  en  el  valor  de  <literal>\parskip</literal>,  y  <literal>\leftmargin</literal>,
<literal>\labelwidth</literal>, e <literal>\itemindent</literal> se establecen en cero.
</para>
<para>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.
</para>
<screen>\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}
</screen>

</sect2>
</sect1>
<sect1 label="8.17" id="math">
<title><literal>math</literal></title>

<indexterm role="fn"><primary>environment, <literal>math</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>math</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>fórmulas en línea</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{math}
<replaceable>math</replaceable>
\end{math}
</screen>
<indexterm role="fn"><primary>$ matemáticas en línea</primary></indexterm>
<indexterm role="fn"><primary>\(...\) matemáticas en línea</primary></indexterm>
<para>El  entorno <literal>math</literal>  inserta material  dado <replaceable>math</replaceable>  dentro del
texto  en ejecución.   <literal>\(...\)</literal>  y  <literal>$...$</literal> son  sinónimos.
Véase <link linkend="F_00f3rmulas-math">Fórmulas math</link>.
</para>

</sect1>
<sect1 label="8.18" id="minipage">
<title><literal>minipage</literal></title>

<indexterm role="fn"><primary>environment, <literal>minipage</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>minipage</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>minipágina, crear una</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{minipage}{<replaceable>width</replaceable>}
  <replaceable>contenido</replaceable>
\end{minipage}
</screen>
<para>o
</para>
<screen>\begin{minipage}[<replaceable>position</replaceable>][<replaceable>height</replaceable>][<replaceable>inner-pos</replaceable>]{<replaceable>width</replaceable>}
  <replaceable>contenido</replaceable>
\end{minipage}
</screen>
<para>Pon <replaceable>contenido</replaceable>  en un cuadro  que tenga un ancho  de <replaceable>width</replaceable>.
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 <literal>minipage</literal>  es similar a
<literal>\parbox</literal> (véase <link linkend="_005cparbox">\parbox</link>) pero aquí puedes tener párrafos.
</para>
<para>Este ejemplo tendrá 3&#160;pulgadas de ancho y tiene dos párrafos.
</para>
<screen>\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}
</screen>
<para>Ve adelante, para  una explicación de la sangría de  párrafo dentro de
una <literal>minipage</literal>.
</para>
<para>El   argumento   requerido   <replaceable>width</replaceable>  es   una   longitud   rígida
(véase <link linkend="Longitudes">Longitudes</link>).  Da  el ancho de  la caja  en la que  se compone
<replaceable>contenido</replaceable>.
</para>
<para>Hay  tres   argumentos  opcionales,  <replaceable>position</replaceable>,   <replaceable>height</replaceable>  e
<replaceable>inner-pos</replaceable>.   No  es necesario  incluir  los  tres. Por  ejemplo,
obtener la <replaceable>position</replaceable> predeterminada y establecer <replaceable>height</replaceable> con
<literal>\begin{minipage}[c][2.54cm]{\columnwidth}      <replaceable>content</replaceable>
\end{minipage}</literal>.  (Obtiene la altura natural con un argumento vacío,
<literal>[]</literal>).
</para>
<para>El argumento opcional <replaceable>position</replaceable>  gobierna cómo <literal>minipage</literal> se
alinea verticalmente con el material circundante.
</para>
<variablelist><varlistentry><term><literal>c</literal>
</term><listitem><!-- xx Clarifica lo que significa cuando las líneas de texto adyacentes -->
<!--    no están @c alineadas al centro vertical entre sí -->
<para>(sinónimo <literal>m</literal>) Predeterminado.  Posiciona la <literal>minipage</literal> para
que su centro  vertical se alinee con  el centro de la  línea de texto
adyacente.
</para>
</listitem></varlistentry><varlistentry><term><literal>t</literal>
</term><listitem><indexterm role="fn"><primary>\vtop plain &tex;</primary></indexterm>
<para>Alinea la línea base de la línea superior en la <literal>minipage</literal> con la
línea base del texto circundante (el <literal>\vtop</literal> de &tex; simple).
</para>
</listitem></varlistentry><varlistentry><term><literal>b</literal>
</term><listitem><indexterm role="fn"><primary>\vbox (simple &tex;)</primary></indexterm>
<para>Alinea la línea base de la línea inferior en la <literal>minipage</literal> con la
línea base del texto circundante (el <literal>\vbox</literal> de &tex; simple).
</para></listitem></varlistentry></variablelist>
<para>Para ver los efectos de estos, contrasta esta ejecución
</para>
<screen>---\begin{minipage}[c]{0.25in}
  primero\\ segundo\\ tercero
\end{minipage}
</screen>
<para>con los resultados de cambiar <literal>c</literal> a <literal>b</literal> o&#160;<literal>t</literal>.
</para>
<!-- xx Aclara qué sucede si el usuario ingresa una longitud elástica en -->
<!--    lugar de una longitud rígida. -->
<para>El   argumento   opcional   <replaceable>height</replaceable>  es   una   longitud   rígida
(véase <link linkend="Longitudes">Longitudes</link>).   Establece  la  altura de  la  <literal>minipage</literal>.
Puedes ingresar  cualquier valor más  grande que, igual o  más pequeño
que el código natural de <literal>minipage</literal> height y &latex; no darán un
error o  una advertencia.  También  puedes establecer a una  altura de
cero o un valor negativo.
</para>
<para>El último argumento opcional  <replaceable>inner-pos</replaceable> controla la ubicación de
<replaceable>contenido</replaceable> dentro del cuadro. Estos  son los valores posibles (el
predeterminado es el valor de <replaceable>position</replaceable>).
</para>
<variablelist><varlistentry><term><literal>t</literal>
</term><listitem><para>Coloca <replaceable>contenido</replaceable> en la parte superior del cuadro.
</para>
</listitem></varlistentry><varlistentry><term><literal>c</literal>
</term><listitem><para>Lo coloca en el centro vertical.
</para>
</listitem></varlistentry><varlistentry><term><literal>b</literal>
</term><listitem><para>Lo coloca en el fondo de la caja.
</para>
</listitem></varlistentry><varlistentry><term><literal>s</literal>
</term><listitem><para>Estira <replaceable>contenido</replaceable>  verticalmente; debe contener  espacio elástico
verticalmente.
</para>
</listitem></varlistentry></variablelist>
<para>El   argumento  <replaceable>inner-pos</replaceable>   tiene  sentido   cuando  la   opción
<replaceable>height</replaceable> se establece  en un valor mayor que la  altura natural de
<literal>minipage</literal>.  Para  ver el  efecto de  las opciones,  ejecuta este
ejemplo con las distintas opciones en lugar de <literal>b</literal>.
</para>
<screen>Texto antes
\begin{center}
  ---\begin{minipage}[c][3in][b]{0.25\textwidth}
       primero\\ segundo\\ tercero
  \end{minipage}
\end{center}
Texto después
</screen>
<indexterm role="cp"><primary>sangría de párrafos, en minipágina</primary></indexterm>
<indexterm role="cp"><primary>sangría, de párrafo en minipágina</primary></indexterm>
<indexterm role="fn"><primary>\parindent</primary></indexterm>
<para>De  manera  predeterminada, los  párrafos  no  tienen sangría  en  una
<literal>minipage</literal>.      Cambio    que     con     un    comando     como
<literal>\setlength{\parindent}{1pc}</literal>     en     el     inicio     de
<replaceable>contenido</replaceable>.
</para>
<indexterm role="cp"><primary>notas al pie en figuras</primary></indexterm>
<indexterm role="cp"><primary>figuras, notas al pie en</primary></indexterm>
<para>Las  notas al  pie en  un entorno  <literal>minipage</literal> se  manejan de  una
manera que es particularmente útil para poner notas a pie de página en
figuras   o    tablas.    Para    el   comando    <literal>\footnote</literal>   o
<literal>\footnotetext</literal> 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   <literal>\mpfootnote</literal>   en   lugar  del   contador   ordinario
<literal>footnote</literal> (véase <link linkend="Contadores">Contadores</link>).
</para>
<para>Esto coloca la nota al pie en la  parte inferior de la tabla, no en la
parte inferior de la página.
</para>
<screen>\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} &amp;\textsc{Reinado} \\ \hline
      Isabel II &amp;96 años\footnote{hasta su fallecimiento} \\
      Victoria &amp;63 años \\
      Jorge III &amp;59 años
    \end{tabular}
  \end{centro}
\end{minipage}
\end{center}
</screen>
<para>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 <literal>\end{minipage}</literal> que puede no ser su lugar lógico.
</para>
<para>Esto coloca  una tabla  que contiene  datos al lado  de un  gráfico de
mapa.  Ellos están centrados verticalmente.
</para>
<indexterm role="cp"><primary>package, <literal>siunitx</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>siunitx</literal> package</primary></indexterm>

<screen>% 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} &amp;
      % llaves para evitar que siunitx malinterprete el
      % período como separador decimal
      {Pop. (million)}  \\ \hline
      The Bronx      &amp;1.5  \\
      Brooklyn       &amp;2.6  \\
      Manhattan      &amp;1.6  \\
      Queens         &amp;2.3  \\
      Staten Island  &amp;0.5
    \end{tabular}
  \end{minipage}
\end{center}
</screen>

</sect1>
<sect1 label="8.19" id="picture">
<title><literal>picture</literal></title>

<indexterm role="fn"><primary>environment, <literal>picture</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>picture</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>crear imágenes</primary></indexterm>
<indexterm role="cp"><primary>imágenes, crear</primary></indexterm>

<para>Sinopsis:
</para><screen>\begin{picture}(<replaceable>width</replaceable>,<replaceable>height</replaceable>)
   <replaceable>comando picture</replaceable>
\end{picture}
</screen>
<para>o
</para>
<screen>\begin{picture}(<replaceable>width</replaceable>,<replaceable>height</replaceable>)(<replaceable>xoffset</replaceable>,<replaceable>yoffset</replaceable>)
  <replaceable>comando picture</replaceable>
\end{picture}
</screen>
<para>Donde puede haber cualquier número de <replaceable>comando picture</replaceable>.
</para>
<para>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>
<para>Para empezar, aquí hay un ejemplo que muestra la ley del paralelogramo
para sumar vectores.
</para>
<indexterm role="fn"><primary>\unitlength</primary></indexterm>
<screen>\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}
</screen>
<para>El  entorno <literal>picture</literal>  tiene un  argumento requerido,  un par  de
números  reales  positivos  (<replaceable>width</replaceable>,  <replaceable>height</replaceable>).   Multiplica
estos  por  el valor  de  <literal>\unitlength</literal>  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.
</para>
<para>Este  entorno  también  tiene un  argumento  opcional  (<replaceable>xoffset</replaceable>,
<replaceable>yoffset</replaceable>).  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 <literal>\unitlength</literal>  para  obtener  las
coordenadas del punto en la esquina inferior izquierda de la imagen.
</para>
<para>Por ejemplo, si <literal>\unitlength</literal> se ha establecido en <literal>1mm</literal>, el
comando
</para>
<screen>\begin{picture}(100,200)(10,20)
</screen>
<para>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.
</para>
<indexterm role="cp"><primary>posición, en imagen</primary></indexterm>
<para>Cada  <replaceable>comando picture</replaceable>  le  dice a  &latex;  dónde colocar  algo
proporcionando  su  posición.   Una  <firstterm>position</firstterm>  es  un  par  como
<literal>(2.4,-5)</literal> dando las coordenadas x  e y.  Una <firstterm>coordenada</firstterm> 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 <literal>\unitlength</literal>, por lo que si <literal>\unitlength</literal> se ha
establecido   en  <literal>1cm</literal>,   entonces  la   coordenada  <literal>2.54</literal>
especifica una longitud de 2.54 centímetros.
</para>
<para>El  valor  predeterminado  de   &latex;  para  <literal>\unitlength</literal>  es
<literal>1pt</literal>.   Es una  longitud rígida  (véase <link linkend="Longitudes">Longitudes</link>).  Cámbialo
con  el  comando  <literal>\setlength</literal>  (véase <link linkend="_005csetlength">\setlength</link>).   Haz  este
cambio solo fuera de un entorno <literal>picture</literal>.
</para>
<para>El  entorno <literal>picture</literal>  admite el  uso de  expresiones aritméticas
estándar como números.
</para>
<para>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
<literal>\put(1,2){...}</literal>,  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
<literal>y</literal> más grandes son más arriba en la página, por ejemplo, <inlineequation><mathphrase>y
= 1</mathphrase></inlineequation> es <emphasis>arriba</emphasis> <inlineequation><mathphrase>y = 0</mathphrase></inlineequation>.
</para>
<para>Hay  cuatro  formas  de  poner   cosas  en  una  imagen:  <literal>\put</literal>,
<literal>\multiput</literal>, <literal>\qbezier</literal> y  <literal>\graphpaper</literal>.  Más a menudo
se usa <literal>\put</literal>. Este
</para>
<screen>\put(11.3,-0.3){...}
</screen>
<para>coloca  el  objeto con  su  punto  de  referencia en  las  coordenadas
<inlineequation><mathphrase>(11.3,-0.3)</mathphrase></inlineequation>.   Los puntos  de  referencia  para varios  objetos
serán descritos abajo.
<indexterm role="fn"><primary>Caja LR</primary></indexterm>
El  comando   <literal>\put</literal>  crea   un  <firstterm>LR   box</firstterm>  (véase <link linkend="Modos">Modos</link>).
Cualquier  cosa  que  pueda  ir en  un  <literal>\mbox</literal>  (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox  y
\makebox</link>) puede ir en el  argumento de texto del comando <literal>\put</literal>.
El punto de referencia será la  esquina inferior izquierda de la caja.
En esta imagen
</para>
<screen>\setlength{\unitlength}{1cm}
...\begin{picture}(1,1)
  \put(0,0){\line(1,0){1}}
  \put(0,0){\line(1,1){1}}
\end{picture}
</screen>
<para>los tres puntos están ligeramente a  la izquierda del punto del ángulo
formado  por  las  dos  líneas.   (Además,  <literal>\line(1,1){1}</literal>  no
requiere una línea de longitud uno;  más bien la línea tiene un cambio
en la coordenada x de 1).
</para>
<para>Los  comandos  <literal>\multiput</literal>,  <literal>qbezier</literal>  y  <literal>graphpaper</literal>
están descritos abajo.
</para>
<para>También puedes utilizar este  entorno para colocar material arbitrario
en una ubicación exacta. Por ejemplo:
</para>
<screen>\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}
</screen>
<para>La red&#160;X será precisamente una cuarta parte del <literal>\textwidth</literal>
de el margen  izquierdo y <literal>0.35\textwidth</literal> 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.
</para>


<sect2 label="8.19.1" id="_005cput">
<title><literal>\put</literal></title>

<indexterm role="fn"><primary>\put</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\put(<replaceable>xcoord</replaceable>,<replaceable>ycoord</replaceable>){<replaceable>content</replaceable>}
</screen>
<para>Coloca <replaceable>content</replaceable> en la coordenada (<replaceable>xcoord</replaceable>,<replaceable>ycoord</replaceable>).  Ve
la discusión de coordenadas y <literal>\unitlength</literal> en <link linkend="picture">picture</link>.  El
<replaceable>contenido</replaceable> se  procesa en modo  LR (véase <link linkend="Modos">Modos</link>) por lo  que no
puede contener saltos de línea.
</para>
<para>Esto incluye el texto en la <literal>picture</literal>.
</para>
<screen>\put(4.5,2.5){Aplica el \textit{unpoke} move}
</screen>
<para>El punto de  referencia, la ubicación (4.5,2.5), es  la parte inferior
izquierda del texto, en la parte inferior izquierda de &#8216;<literal>A</literal>&#8217;.
</para>

</sect2>
<sect2 label="8.19.2" id="_005cmultiput">
<title><literal>\multiput</literal></title>

<indexterm role="fn"><primary>\multiput</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\multiput(<replaceable>x</replaceable>,<replaceable>y</replaceable>)(<replaceable>delta_x</replaceable>,<replaceable>delta_y</replaceable>){<replaceable>num-copies</replaceable>}{<replaceable>obj</replaceable>}
</screen>
<para>Copia <replaceable>obj</replaceable> un total de  <replaceable>num-copies</replaceable> veces, con un incremento
de <replaceable>delta_x,delta_y</replaceable>.  El <replaceable>obj</replaceable> aparece primero en la posición
<inlineequation><mathphrase>(x,y)</mathphrase></inlineequation>,  entonces   en  <inlineequation><mathphrase>(x+\delta_x,y+\delta_y)</mathphrase></inlineequation>,   y  así
sucesivamente.
</para>
<para>Esto dibuja una cuadrícula simple con cada quinta línea en negrita (ve
también <link linkend="_005cgraphpaper">\graphpaper</link>).
</para>
<screen>\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}
</screen>

</sect2>
<sect2 label="8.19.3" id="_005cqbezier">
<title><literal>\qbezier</literal></title>

<indexterm role="fn"><primary>\qbezier</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\qbezier(<replaceable>x1</replaceable>,<replaceable>y1</replaceable>)(<replaceable>x2</replaceable>,<replaceable>y2</replaceable>)(<replaceable>x3</replaceable>,<replaceable>y3</replaceable>)
\qbezier[<replaceable>num</replaceable>](<replaceable>x1</replaceable>,<replaceable>y1</replaceable>)(<replaceable>x2</replaceable>,<replaceable>y2</replaceable>)(<replaceable>x3</replaceable>,<replaceable>y3</replaceable>)
</screen>
<para>Dibuja una  curva de Bézier  cuadrática cuyos puntos de  control estén
dados  por  tres   argumentos  requeridos  <literal>(<replaceable>x1</replaceable>,<replaceable>y1</replaceable>)</literal>,
<literal>(<replaceable>x2</replaceable>,<replaceable>y2</replaceable>)</literal> y  <literal>(<replaceable>x3</replaceable>,<replaceable>y3</replaceable>)</literal>.  Eso  es, la
curva va de <replaceable>(x1,y1)</replaceable> a <replaceable>(x3,y3)</replaceable>,  es cuadrática y es tal que
la recta  tangente en <replaceable>(x1,y1)</replaceable>  pasa por <replaceable>(x2,y2)</replaceable>,  al igual
que la recta tangente en <replaceable>(x3,y3)</replaceable>.
</para>
<para>Esto dibuja una curva desde la coordenada (1,1) a (1,0).
</para>
<screen>\qbezier(1,1)(1.25,0.75)(1,0)
</screen>
<para>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).
</para>
<para>El argumento  opcional <replaceable>num</replaceable>  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 <literal>\qbeziermax</literal> (cambia  este valor con
<literal>\renewcommand</literal>).
</para>
<para>Esto  dibuja un  rectángulo con  una parte  superior ondulada,  usando
<literal>\qbezier</literal> para esa curva
</para>
<screen>\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}
</screen>
</sect2>
<sect2 label="8.19.4" id="_005cgraphpaper">
<title><literal>\graphpaper</literal></title>

<indexterm role="fn"><primary>\graphpaper</primary></indexterm>
<para>Sinopsis:
</para>
<screen>\graphpaper(<replaceable>x_init</replaceable>,<replaceable>y_init</replaceable>)(<replaceable>x_dimen</replaceable>,<replaceable>y_dimen</replaceable>)
\graphpaper[<replaceable>spacing</replaceable>](<replaceable>x_init</replaceable>,<replaceable>y_init</replaceable>)(<replaceable>x_dimen</replaceable>,<replaceable>y_dimen</replaceable>)
</screen>
<indexterm role="cp"><primary>package, <literal>graphpap</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>graphpap</literal> package</primary></indexterm>
<para>Dibuja una cuadrícula de coordenadas.  Requiere el
paquete   <literal>graphpap</literal>.   El   origen   de   la  cuadrícula   es
<literal>(<replaceable>x_init</replaceable>,<replaceable>y_init</replaceable>)</literal>.   Las  líneas   de  la  cuadrícula
vienen cada  <replaceable>spacing</replaceable> unidades  (el valor predeterminado  es 10).
La  cuadrícula  extiende <replaceable>x_dimen</replaceable>  unidades  hacia  la derecha  y
<replaceable>y_dimen</replaceable> unidades  hacia arriba.  Todos los  argumentos deben ser
números enteros positivos.
</para>
<para>Esto crea  una cuadrícula  con siete líneas  verticales y  once líneas
horizontales.
</para>
<screen>\usepackage{graphpap}    % en el preámbulo
  ...
\begin{picture}(6,20)    % en el cuerpo del documento
  \graphpaper[2](0,0)(12,20)
\end{picture}
</screen>
<para>Las líneas están numeradas cada diez unidades.
</para>

</sect2>
<sect2 label="8.19.5" id="_005cline">
<title><literal>\line</literal></title>

<indexterm role="fn"><primary>\line</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\line(<replaceable>x_run</replaceable>,<replaceable>y_rise</replaceable>){<replaceable>travel</replaceable>}
</screen>
<para>Dibuja  una línea.   Tiene una  pendiente tal  que sube  verticalmente
<replaceable>y_rise</replaceable> para cada <replaceable>x_run</replaceable>  horizontal.  El <replaceable>travel</replaceable> es el
cambio horizontal total &#8212; no es la longitud del vector, es el cambio
en  <inlineequation><mathphrase>x</mathphrase></inlineequation>.  En  el caso  especial de  las líneas  verticales, donde
(<replaceable>x_run</replaceable>,<replaceable>y_rise</replaceable>)=(0,1),   <replaceable>travel</replaceable>  da   el  cambio   en
<inlineequation><mathphrase>y</mathphrase></inlineequation>.
</para>
<para>Esto dibuja una línea que comienza en las coordenadas (1,3).
</para>
<screen>\put(1,3){\line(2,5){4}}
</screen>
<para>Por  cada más  de  2,  esta línea  aumentará  5.  Porque  <replaceable>travel</replaceable>
especifica que esto pasa de 4, debe subir a&#160;10.  Por lo tanto, su
punto  final es  <inlineequation><mathphrase>(1,3)+(4,10)=(5,13)</mathphrase></inlineequation>.   En  particular, ten  en
cuenta que <inlineequation><mathphrase><replaceable>travel</replaceable>=4</mathphrase></inlineequation> no es la  longitud de la línea, es el
cambio en <inlineequation><mathphrase>x</mathphrase></inlineequation>.
</para>
<para>Los argumentos <replaceable>x_run</replaceable>  y <replaceable>y_rise</replaceable> son números  enteros que se
pueden positivo,  negativo o cero.  (Si ambos son 0  entonces &latex;
trata         el         segundo          como         1).         Con
<literal>\put(<replaceable>x_init</replaceable>,<replaceable>y_init</replaceable>){\line(<replaceable>x_run</replaceable>,<replaceable>y_rise</replaceable>){<replaceable>travel</replaceable>}}</literal>,
si  <replaceable>x_run</replaceable> es  negativo, el  punto final  de la  línea tiene  una
primer coordenada menor que <replaceable>x_init</replaceable>.  Si <replaceable>y_rise</replaceable> es negativo
entonces el punto  final de la línea tiene una  segunda coordenada que
es menor que <replaceable>y_init</replaceable>.
</para>
<para>Si  <replaceable>travel</replaceable> es  negativo, obtendrás  <literal>Error de  LaTeX: \line
incorrecta o el argumento \vector.</literal>
</para>
<indexterm role="cp"><primary>paquetes gráficos</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>pict2e</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>pict2e</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>TikZ</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>TikZ</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>PSTricks</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>PSTricks</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>MetaPost</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>MetaPost</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>Asymptote</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>Asymptote</literal> package</primary></indexterm>
<para>&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 <replaceable>x_run</replaceable>  y <replaceable>y_rise</replaceable>  deben tener  valores enteros
desde  &#8722;6  hasta&#160;6.   Asimismo,  deben  ser  relativamente
primos, por lo que <replaceable>(x_run,y_rise)</replaceable>  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
<literal>picture</literal>,       ve       el       paquete       <literal>pict2e</literal>
(<ulink url="https://ctan.org/pkg/pict2e">https://ctan.org/pkg/pict2e</ulink>).  Otra solución es usar un sistema
de gráficos completo como TikZ, PSTricks, MetaPost o Asymptote.
</para>

</sect2>
<sect2 label="8.19.6" id="_005clinethickness">
<title><literal>\linethickness</literal></title>

<indexterm role="fn"><primary>\linethickness</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\linethickness{<replaceable>dim</replaceable>}
</screen>
<para>Declara   el  grosor   de   las  líneas   horizontales  y   verticales
subsiguientes en  una imagen  debe ser <replaceable>dim</replaceable>,  que debe  tener una
longitud    positiva   (véase <link linkend="Longitudes">Longitudes</link>).     Se   diferencia    de
<literal>\thinlines</literal> y <literal>\thicklines</literal> en el  sentido de que no afecta
el grosor de las líneas inclinadas, círculos u óvalos (véase <link linkend="_005coval">\oval</link>).
</para>

</sect2>
<sect2 label="8.19.7" id="_005cthinlines">
<title><literal>\thinlines</literal></title>

<indexterm role="fn"><primary>\thinlines</primary></indexterm>

<para>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  <link linkend="_005clinethickness">\linethickness</link>  o
<link linkend="_005cthicklines">\thicklines</link>.
</para>

</sect2>
<sect2 label="8.19.8" id="_005cthicklines">
<title><literal>\thicklines</literal></title>

<indexterm role="fn"><primary>\thicklines</primary></indexterm>

<para>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
<link linkend="_005clinethickness">\linethickness</link> y  <link linkend="_005cthinlines">\thinlines</link>.  Este comando se  ilustra en
el ejemplo de regla trapezoidal de <link linkend="_005cqbezier">\qbezier</link>.
</para>

</sect2>
<sect2 label="8.19.9" id="_005ccircle">
<title><literal>\circle</literal></title>

<indexterm role="fn"><primary>\circle</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\circle{<replaceable>diameter</replaceable>}
\circle*{<replaceable>diameter</replaceable>}
</screen>
<para>Produce  un  círculo  con  un  diámetro  lo  más  cercano  posible  al
especificado.  La forma <literal>*</literal>&#160;produce un círculo relleno.
</para>
<para>Esto dibuja un círculo de radio 6, centrado en <literal>(5,7)</literal>.
</para>
<screen>\put(5,7){\circle{6}}
</screen>
<para>Los radios disponibles para <literal>\circle</literal> son, en puntos, los números
pares del  2 al 20,  ambos inclusive.  Para <literal>\circle*</literal>  son todos
los números enteros del 1 al 15.
</para>

</sect2>
<sect2 label="8.19.10" id="_005coval">
<title><literal>\oval</literal></title>

<indexterm role="fn"><primary>\oval</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\oval(<replaceable>width</replaceable>,<replaceable>height</replaceable>)
\oval(<replaceable>width</replaceable>,<replaceable>height</replaceable>)[<replaceable>portion</replaceable>]
</screen>
<para>Produce  un  rectángulo  con  esquinas  redondeadas,  en  lo  sucesivo
denominado <firstterm>oval</firstterm>.  El argumento opcional <replaceable>portion</replaceable> te permite
producir sólo la  mitad o un cuarto del óvalo.   Para medio óvalo toma
<replaceable>portion</replaceable> para que sea uno de estos.
</para>
<variablelist><varlistentry><term><literal>t</literal>
</term><listitem><para>mitad superior (top)
</para></listitem></varlistentry><varlistentry><term><literal>b</literal>
</term><listitem><para>mitad inferior (bottom)
</para></listitem></varlistentry><varlistentry><term><literal>r</literal>
</term><listitem><para>mitad derecha (right)
</para></listitem></varlistentry><varlistentry><term><literal>l</literal>
</term><listitem><para>mitad izquierda (left)
</para></listitem></varlistentry></variablelist>
<para>Produce  solo un  cuarto del  óvalo configurando  en <replaceable>portion</replaceable>  en
<literal>tr</literal>, <literal>br</literal>, <literal>bl</literal> o <literal>tl</literal>.
</para>
<para>Esto dibuja la mitad superior de un óvalo de 3 de ancho y 7 de alto.
</para>
<screen>\put(5,7){\oval(3,7)[t]}
</screen>
<para>El (5,7) es el centro de todo el  óvalo, no solo el centro de la mitad
superior.
</para>
<para>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 (véase <link linkend="_005ccircle">\circle</link>  para los tamaños).  Por  lo tanto, los
óvalos grandes  son solo Marcos  con una pequeña cantidad  de esquinas
redondeadas.
</para>

</sect2>
<sect2 label="8.19.11" id="_005cshortstack">
<title><literal>\shortstack</literal></title>

<indexterm role="fn"><primary>\shortstack</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\shortstack[<replaceable>position</replaceable>]{<replaceable>line 1</replaceable> \\ ... }
</screen>
<para>Produce una pila vertical de objetos.
</para>
<para>Esto etiqueta  el eje <inlineequation><mathphrase>y</mathphrase></inlineequation> escribiendo  la palabra &#8216;<literal><inlineequation><mathphrase>y</mathphrase></inlineequation></literal>&#8217;
arriba de la palabra &#8216;<literal>eje</literal>&#8217;.
</para>
<screen>\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}
</screen>
<para>Para una  pila pequeña, el  punto de  referencia es la  parte inferior
izquierda  de la  pila.  En  el ejemplo  anterior, el  <literal>\makebox</literal>
(véase <link linkend="_005cmbox-y-_005cmakebox">\mbox y \makebox</link>)  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&#160;<inlineequation><mathphrase>y</mathphrase></inlineequation>.
</para>
<para>Los puestos válidos son:
</para>
<variablelist><varlistentry><term><literal>r</literal>
</term><listitem><para>Hace que los objetos queden alineados a la derecha
</para></listitem></varlistentry><varlistentry><term><literal>l</literal>
</term><listitem><para>Hace que los objetos queden alineados a la izquierda
</para></listitem></varlistentry><varlistentry><term><literal>c</literal>
</term><listitem><para>Centra objetos (predeterminado)
</para></listitem></varlistentry></variablelist>
<indexterm role="fn"><primary>\\ (para objetos <literal>\shortstack</literal>)</primary></indexterm>
<para>Separa los objetos en líneas con <literal>\\</literal>.  Estas pilas son cortas en
que, a  diferencia de un  entorno <literal>tabular</literal> o  <literal>array</literal>, aquí
las  filas  no  están  espaciadas  para tener  saltos  de  línea  base
uniformes.  Así,  en <literal>\shortstack{X\\o\\o\\X}</literal> 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     <literal>\shortstack{X\\     \strut     o\\o\\X}</literal>
(véase <link linkend="_005cstrut">\strut</link>), o  explícitamente, a  través de  un cuadro  de ancho
cero   <literal>\shortstack{X  \\   \rule{0pt}{12pt}  o\\o\\X}</literal>   o
mediante     el     uso     opcional    de     <literal>\\</literal>     argumento
<literal>\shortstack{X\\[2pt] o\\o\\X}</literal>.
</para>
<para>El  comando  <literal>\shortstack</literal>  también  está  disponible  fuera  del
entorno <literal>picture</literal>.
</para>

</sect2>
<sect2 label="8.19.12" id="_005cvector">
<title><literal>\vector</literal></title>

<indexterm role="fn"><primary>\vector</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\vector(<replaceable>x_run</replaceable>,<replaceable>y_rise</replaceable>){<replaceable>travel</replaceable>}
</screen>
<para>Dibuja una línea que termine en una flecha.  La pendiente de esa recta
es: sube  verticalmente <replaceable>y_rise</replaceable> por cada  <replaceable>x_run</replaceable> horizontal.
Los <replaceable>travel</replaceable> es  el cambio horizontal total &#8212; no  es la longitud
del vector, es el cambio en <inlineequation><mathphrase>x</mathphrase></inlineequation>.  En el caso especial de vectores
verticales, si (<replaceable>x_run</replaceable>,<replaceable>y_rise</replaceable>)=(0,1), entonces <replaceable>travel</replaceable>
da el cambio en <inlineequation><mathphrase>y</mathphrase></inlineequation>.
</para>
<para>Para ver un ejemplo, <link linkend="picture">picture</link>.
</para>
<para>Para obtener  más detalles sobre <replaceable>x_run</replaceable>  y <replaceable>y_rise</replaceable>, consulta
<link linkend="_005cline">\line</link>.   Como allí,  los valores  de <replaceable>x_run</replaceable>  y <replaceable>y_rise</replaceable>
están  limitados.  Para  <literal>\vector</literal> debes  elegir números  enteros
entre &#8722;4 y 4, inclusive.  Además,  los dos que elijas deben ser
relativamente  primos.   De  este  modo,  <literal>\vector(2,1){4}</literal>  es
aceptable pero  <literal>\vector(4,2){4}</literal> no  es (si usas  este último,
obtendrás una secuencia de puntas de flecha).
</para>

</sect2>
<sect2 label="8.19.13" id="_005cmakebox-_0028picture_0029">
<title><literal>\makebox</literal> (picture)</title>

<indexterm role="fn"><primary>\makebox (para <literal>picture</literal>)</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\makebox(<replaceable>rec-width</replaceable>,<replaceable>rec-height</replaceable>){<replaceable>text</replaceable>}
\makebox(<replaceable>rec-width</replaceable>,<replaceable>rec-height</replaceable>)[<replaceable>position</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Hace un cuadro  para contener <replaceable>text</replaceable>.  Este comando  encaja con el
entorno <literal>picture</literal>, aunque  los puedes usar fuera  de allí, porque
<replaceable>rec-width</replaceable>  y   <replaceable>rec-height</replaceable>  son  números   que  especifican
distancias en términos  de <literal>\unitlength</literal> (véase <link linkend="picture">picture</link>).  Este
comando es  similar al comando <literal>\makebox</literal>  normal (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox y
\makebox</link>), excepto  que aquí  debes especificar el  ancho y  el alto.
Este el comando es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Esto hace una caja de longitud 3.5 veces <literal>\unitlength</literal> y altura 4
veces <literal>\unitlength</literal>.
</para>
<screen>\put(1,2){\makebox(3.5,4){...}}
</screen>
<para>El argumento  opcional <literal><replaceable>position</replaceable></literal> especifica  dónde aparece
el <replaceable>text</replaceable>  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.
</para>
<variablelist><varlistentry><term><literal>t</literal>
</term><listitem><para>Pone <replaceable>text</replaceable> en la parte superior de la caja.
</para>
</listitem></varlistentry><varlistentry><term><literal>b</literal>
</term><listitem><para>Pone <replaceable>text</replaceable> en la parte inferior.
</para>
</listitem></varlistentry><varlistentry><term><literal>l</literal>
</term><listitem><para>Pone el <replaceable>text</replaceable> a la izquierda.
</para>
</listitem></varlistentry><varlistentry><term><literal>r</literal>
</term><listitem><para>Pone el <replaceable>text</replaceable> a la derecha.
</para>
</listitem></varlistentry></variablelist>

</sect2>
<sect2 label="8.19.14" id="_005cframebox-_0028picture_0029">
<title><literal>\framebox</literal> (picture)</title>

<indexterm role="fn"><primary>\framebox</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\framebox(<replaceable>rec-width</replaceable>,<replaceable>rec-height</replaceable>){<replaceable>text</replaceable>}
\framebox(<replaceable>rec-width</replaceable>,<replaceable>rec-height</replaceable>)[<replaceable>position</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Esto  es lo  mismo que  <link linkend="_005cmakebox-_0028picture_0029">\makebox (picture)</link>  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 <literal>picture</literal>, aunque lo puedes  usar fuera de
allí, porque las  longitudes son números que  especifican la distancia
en términos de <literal>\unitlength</literal>  (véase <link linkend="picture">picture</link>).  Este comando es
frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Este ejemplo crea un marco  de 2.5&#160;pulgadas por 3&#160;pulgadas y
coloca el texto en el centro.
</para>
<screen>\setlength{\unitlength}{1in}
\framebox(2.5,3){test text}
</screen>
<para>Los argumentos requeridos  son que el rectángulo tiene  un ancho total
de  <replaceable>rect-width</replaceable>  unidades  y   una  altura  de  <replaceable>rect-height</replaceable>
unidades.
</para>
<para>El  argumento  opcional  <replaceable>position</replaceable>   especifica  la  posición  de
<replaceable>text</replaceable>; <link linkend="_005cmakebox-_0028picture_0029">\makebox (picture)</link> para los valores que puede tomar.
</para>
<indexterm role="fn"><primary>\fboxrule</primary></indexterm>
<indexterm role="fn"><primary>\fboxsep</primary></indexterm>
<para>La regla tiene  <literal>\fboxrule</literal> de grosor y hay un  espacio en blanco
<literal>\fboxsep</literal> entre el marco y el contenido de la caja.
</para>
<para>Para este  comando, debes especificar <replaceable>width</replaceable>  y <replaceable>height</replaceable>.  Si
solo  quieres  poner  un  marco  alrededor  de  algún  contenido  cuya
dimensión  está  determinada  de  alguna  otra  manera,  entonces  usa
<literal>\fbox</literal>    (véase <link linkend="_005cfbox-y-_005cframebox">\fbox    y   \framebox</link>)    o    <literal>\frame</literal>
(véase <link linkend="_005cframe">\frame</link>).
</para>

</sect2>
<sect2 label="8.19.15" id="_005cframe">
<title><literal>\frame</literal></title>

<indexterm role="fn"><primary>\frame</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\frame{<replaceable>contenido</replaceable>}
</screen>
<para>Pone un  marco rectangular  alrededor de  <replaceable>content</replaceable>.  El  punto de
referencia es la  esquina inferior izquierda del  marco.  En contraste
con  <literal>\framebox</literal> (véase <link linkend="_005cframebox-_0028picture_0029">\framebox  (picture)</link>), este  comando no
pone  espacio  adicional  entre  el  marco y  el  objeto.   es  frágil
(véase <link linkend="_005cprotect">\protect</link>).
</para>

</sect2>
<sect2 label="8.19.16" id="_005cdashbox">
<title><literal>\dashbox</literal></title>

<indexterm role="fn"><primary>\dashbox</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\dashbox{<replaceable>dash-len</replaceable>}(<replaceable>rect-width</replaceable>,<replaceable>rect-height</replaceable>){<replaceable>text</replaceable>}
\dashbox{<replaceable>dash-len</replaceable>}(<replaceable>rect-width</replaceable>,<replaceable>rect-height</replaceable>)[<replaceable>position</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Crea  un rectángulo  punteado alrededor  de <replaceable>text</replaceable>.   Este comando
encaja con el  entorno <literal>picture</literal>, aunque lo puedes  usar fuera de
allí, porque las  longitudes son números que  especifican la distancia
en términos de <literal>\unitlength</literal> (véase <link linkend="picture">picture</link>).
</para>
<para>Los argumentos requeridos son: los guiones son <replaceable>dash-len</replaceable> unidades
de largo, con  el mismo espacio de longitud, y  el rectángulo tiene un
ancho   total   de  <replaceable>rect-width</replaceable>   unidades   y   una  altura   de
<replaceable>rect-height</replaceable> unidades.
</para>
<para>El  argumento  opcional  <replaceable>position</replaceable>   especifica  la  posición  de
<replaceable>text</replaceable>; <link linkend="_005cmakebox-_0028picture_0029">\makebox (picture)</link> para los valores que puede tomar.
</para>
<para>Esto muestra que puedes usar un valor no entero para <replaceable>dash-len</replaceable>.
</para>
<screen>\put(0,0){\dashbox{0.1}(5,0.5){Mi  aerodeslizador  está  lleno  de
anguilas.}}
</screen>
<para>Cada guión tendrá una longitud  de <literal>0.1\unitlength</literal>, el ancho del
cuadro es <literal>5\unitlength</literal> y su altura es <literal>0.5\unitlength</literal>.
</para>
<para>Como  en  ese  ejemplo,  un  cuadro discontinuo  se  ve  mejor  cuando
<replaceable>rect-width</replaceable> y <replaceable>rect-height</replaceable> son múltiplos de <replaceable>dash-len</replaceable>.
</para>

</sect2>
</sect1>
<sect1 label="8.20" id="comillas-y-citas">
<title><literal>quotation</literal> y <literal>quote</literal></title>

<anchor id="quotation"/><indexterm role="fn"><primary>environment, <literal>quotation</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>quotation</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>texto citado con sangría de párrafo, mostrando</primary></indexterm>
<indexterm role="cp"><primary>mostrar texto citado con sangría de párrafo</primary></indexterm>
<indexterm role="cp"><primary>sangría de párrafo en el texto citado</primary></indexterm>
<anchor id="quote"/><indexterm role="fn"><primary>environment, <literal>quote</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>quote</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>texto citado sin sangría de párrafo, mostrando</primary></indexterm>
<indexterm role="cp"><primary>mostrar texto citado sin sangría de párrafo</primary></indexterm>
<indexterm role="cp"><primary>sangrías de párrafo en texto citado, omitiendo</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{quotation}
  <replaceable>text</replaceable>
\end{quotation}
</screen>
<para>o
</para>
<screen>\begin{quote}
  <replaceable>text</replaceable>
\end{quote}
</screen>
<para>Incluye  una comilla.  Ambos entornos  sangran los  márgenes en  ambos
lados por <literal>\leftmargin</literal> y el texto está justificado a la derecha.
</para>
<para>Se  diferencian   en  cómo   tratan  los   párrafos.  En   el  entorno
<literal>quotation</literal>, los párrafos tienen una  sangría de 1.5em y el
espacio entre párrafos es pequeño, <literal>0pt plus 1pt</literal>.  En el entorno
<literal>quote</literal>, los  párrafos no tienen  sangría y hay  espacio vertical
entre párrafos (es la longitud elástica <literal>\parsep</literal>).
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="8.21" id="tabbing">
<title><literal>tabbing</literal></title>

<!-- xx TODO  se alinea  con  el  francés, que  es más  preciso y  tiene -->
<!--    ejemplos más ilustrativos. -->

<indexterm role="fn"><primary>environment, <literal>tabbing</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>tabbing</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>tabulaciones, usando</primary></indexterm>
<indexterm role="cp"><primary>alinear el texto usando tabulaciones</primary></indexterm>
<indexterm role="cp"><primary>alineación mediante tabulación</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{tabbing}
<replaceable>row1col1</replaceable> \= <replaceable>row1col2</replaceable> ...  \\
<replaceable>row2col1</replaceable> \&gt; <replaceable>row2col2</replaceable> ...  \\
...
\end{tabbing}
</screen>
<para>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 <literal>tabular</literal> (véase <link linkend="tabular">tabular</link>)
o  <literal>array</literal>  (véase <link linkend="array">array</link>) porque  en  esos,  el ancho  de  cada
columna  no necesita  ser constante  y  no es  necesario conocerlo  de
antemano.
</para>
<para>Este  ejemplo  tiene  una  primera línea  donde  las  tabulaciones  se
establecen   en  anchos   explícitos,   terminados   por  un   comando
<literal>\kill</literal> (que se describe a continuación):
</para>
<screen>\begin{tabbing}
\hspace{1.2in}\=\hspace{1in}\=\kill
Ship                \&gt;Armas             \&gt;Año    \\
\textit{Sophie}     \&gt;14               \&gt;1800    \\
\textit{Polychrest} \&gt;24               \&gt;1803    \\
\textit{Lively}     \&gt;38               \&gt;1804    \\
\textit{Surprise}   \&gt;28               \&gt;1805    \\
\end{tabbing}
</screen>
<para>Tanto  el  entorno  <literal>tabbing</literal>   como  el  entorno  más  utilizado
<literal>tabular</literal>  ponen  el  texto   en  columnas.   La  más  importante
distinción es que en <literal>tabular</literal>  el ancho de las columnas &latex;
lo  determina  automáticamente,  mientras  que  en  <literal>tabbing</literal>  el
usuario establece las  paradas de tabulación.  Otra  distinción es que
ese <literal>tabular</literal>  genera un cuadro,  pero <literal>tabbing</literal> se  puede a
dividir en páginas.  Finalmente,  mientras que <literal>tabular</literal> se puede
usar  en cualquier  modo, <literal>tabbing</literal>  se puede  usar solo  en modo
párrafo y siempre comienza un nuevo párrafo, sin sangría.
</para>
<para>Además, como se  muestra en el ejemplo anterior, no  es necesario para
usar la forma destacada del comando <literal>\hspace</literal> al principio de una
fila tabulada.   El margen  derecho del  entorno <literal>tabbing</literal>  es el
final  de   la  línea,  de   modo  que   el  ancho  del   entorno  sea
<literal>\linewidth</literal>.
</para>
<indexterm role="cp"><primary>fila, tabbing</primary></indexterm>
<para>El  entorno  <literal>tabbing</literal>  contiene   una  secuencia  de  <firstterm>filas
tabuladas</firstterm>.  La primera fila  tabulada comienza inmediatamente después
<literal>\begin{tabbing}</literal>  y   cada  fila   termina  con   <literal>\\</literal>  o
<literal>\kill</literal>. La última fila puede  omitir el <literal>\\</literal> y terminar con
solo <literal>\end{tabbing}</literal>.
</para>
<indexterm role="cp"><primary>patrón, tabulaciones actuales, tabbing</primary></indexterm>
<para>En cualquier punto, el entorno <literal>tabbing</literal> tiene un <firstterm>patrón</firstterm> de
tabulación actual,  una secuencia de tabulaciones  <inlineequation><mathphrase><replaceable>n</replaceable> &gt; 0</mathphrase></inlineequation>,
numeradas 0,  1, etc.  Estos crean <replaceable>n</replaceable>  columnas correspondientes.
Tabulaciones&#160;0 siempre  es el  margen izquierdo, definido  por el
entorno envolvente.  Tabulación número&#160;<replaceable>i</replaceable> se establece si se
le  asigna   una  posición  horizontal   en  la  página.    Número  de
tabulación&#160;<replaceable>i</replaceable> solo se puede  establecer si todas las paradas
0, &#8230;, <inlineequation><mathphrase>i-1</mathphrase></inlineequation> ya se  han configurado; normalmente las paradas
posteriores están a la derecha de las anteriores.
</para>
<para>De  forma  predeterminada, cualquier  texto  compuesto  en un  entorno
<literal>tabbing</literal> 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 (véase <link linkend="Modos">Modos</link>).
</para>
<para>Los  siguientes  comandos   se  pueden  usar  dentro   de  un  entorno
<literal>tabbing</literal>.  Todos son frágiles (véase <link linkend="_005cprotect">\protect</link>).
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\\ (tabulación)</primary></indexterm><literal>\\ (tabulación)</literal>
</term><listitem><para>Termina una línea tabulada y la compone.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\= (tabulación)</primary></indexterm><literal>\= (tabulación)</literal>
</term><listitem><para>Establece una tabulación en la posición actual.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\&gt; (tabulación)</primary></indexterm><literal>\&gt; (tabulación)</literal>
</term><listitem><indexterm role="fn"><primary>\&gt;</primary></indexterm>
<para>Avanza a la siguiente tabulación.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\&lt;</primary></indexterm><literal>\&lt;</literal>
</term><listitem><para>Pone el siguiente  texto a la izquierda del margen  local (sin cambiar
el margen).  Solo se puede utilizar al principio de la línea.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\+</primary></indexterm><literal>\+</literal>
</term><listitem><para>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.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\-</primary></indexterm><literal>\-</literal>
</term><listitem><para>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.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\' (tabulación)</primary></indexterm><literal>\' (tabulación)</literal>
</term><listitem><para>Mueve todo lo  que hayas escrito hasta ahora en  la columna actual, es
decir,  todo,  desde el  comando  <literal>\&gt;</literal>  más reciente,  <literal>\&lt;</literal>,
<literal>\'</literal>, <literal>\\</literal>, o <literal>\kill</literal>, a la columna anterior y alineado
a la derecha, al ras contra la tabulación de la columna actual.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\` (tabulación)</primary></indexterm><literal>\` (tabulación)</literal>
</term><listitem><para>Te  permite  poner  el  texto  al  ras  contra  cualquier  tabulación,
incluidas las  tabulaciones&#160;0.  Sin  embargo, no puedes  mover el
texto a la  derecha de la última columna porque  no hay una tabulación
allí.  El comando <literal>\`</literal> mueve todo el texto que le sigue, hasta el
comando <literal>\\</literal>  o <literal>\end{tabbing}</literal> que finaliza  la línea, al
margen  derecho  del entorno  <literal>tabbing</literal>.   No  debe haber  ningún
comando  <literal>\&gt;</literal>   o  <literal>\'</literal>   entre  <literal>\`</literal>  y   <literal>\\</literal>  o
<literal>\end{tabbing}</literal> que finaliza la línea.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\a (tabulación)</primary></indexterm><literal>\a (tabulación)</literal>
</term><listitem><indexterm role="fn"><primary>\a' (acento agudo en tabulación)</primary></indexterm>
<indexterm role="fn"><primary>\a` (acento grave en tabulación)</primary></indexterm>
<indexterm role="fn"><primary>\a= (acento macrón en tabulación)</primary></indexterm>
<para>En  un entorno  <literal>tabbing</literal>,  los comandos  <literal>\=</literal>, <literal>\'</literal>  y
<literal>\`</literal> no produce acentos  como de costumbre (véase <link linkend="Acentos">Acentos</link>).  En
cambio, usa los comandos <literal>\a=</literal>, <literal>\a'</literal> y <literal>\a`</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\kill</primary></indexterm><literal>\kill</literal>
</term><listitem><para>Establece  tabulaciones  sin  producir   texto.   Funciona  igual  que
<literal>\\</literal> excepto que desecha la línea actual en lugar de producir una
salida para ella.  Cualquier  comando <literal>\=</literal>, <literal>\+</literal> o <literal>\-</literal>
en esa línea permanece en efecto.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\poptabs</primary></indexterm><literal>\poptabs</literal>
</term><listitem><indexterm role="fn"><primary>\poptabs</primary></indexterm>
<para>Restaura  las  posiciones  de   tabulación  guardadas  por  el  último
<literal>\pushtabs</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\pushtabs</primary></indexterm><literal>\pushtabs</literal>
</term><listitem><para>Guarda todas las posiciones de  tabulación actuales. Útil para cambiar
temporalmente  posiciones  de  tabulación   en  medio  de  un  entorno
<literal>tabbing</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tabbingsep</primary></indexterm><literal>\tabbingsep</literal>
</term><listitem><para>Distancia  del  texto  movido  por  <literal>\'</literal> a  la  izquierda  de  la
tabulación actual.
</para>
</listitem></varlistentry></variablelist>
<para>Este ejemplo compone una función de Pascal:
</para>
<screen>\begin{tabbing}
function \= fact(n : integer) : integer;\\
         \&gt; begin \= \+ \\
               \&gt; if \= n &gt; 1 then \+ \\
                        fact := n * fact(n-1) \- \\
                  else \+ \\
                        fact := 1; \-\- \\
            end;\\
\end{tabbing}
</screen>
<para>La salida se ve así.
</para>
<screen>function fact(n : integer) : integer;
         begin
               if n &gt; 1 then
                  fact := n * fact(n-1);
               else
                  fact := 1;
         end;
</screen>
<indexterm role="cp"><primary>package, <literal>algorithm2e</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>algorithm2e</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>listings</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>listings</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>minted</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>minted</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>fancyvrb</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>fancyvrb</literal> package</primary></indexterm>

<para>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 (véase <link linkend="verbatim">verbatim</link>) normalmente sería lo mejor.  Para un código
bien     impreso,    hay     unos    cuantos     paquetes,    incluido
<literal>algorithm2e</literal>,   <literal>fancyvrb</literal>,    <literal>listings</literal>   y
<literal>minted</literal>.
</para>

</sect1>
<sect1 label="8.22" id="table">
<title><literal>table</literal></title>

<indexterm role="fn"><primary>environment, <literal>table</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>table</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>tablas, crear</primary></indexterm>
<indexterm role="cp"><primary>crear tablas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{table}[<replaceable>ubicación</replaceable>]
  <replaceable>cuerpo de la tabla</replaceable>
  \caption[<replaceable>loftitle</replaceable>]{<replaceable>title</replaceable>}  % opcional
  \label{<replaceable>label}</replaceable>              % también opcional
\end{table}
</screen>
<para>Una clase de  flotantes (véase <link linkend="Flotantes">Flotantes</link>).  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.
</para>
<para>Este entorno <literal>table</literal> de ejemplo contiene un <literal>tabular</literal>
</para>
<screen>\begin{table}
  \centering\small
  \begin{tabular}{ll}
    \multicolumn{1}{c}{\textit{Autor}}
      &amp;\multicolumn{1}{c}{\textit{Pieza}}  \\ \hline
    Bach            &amp;Cello Suite Número 1  \\
    Beethoven       &amp;Cello Sonata Número 3 \\
    Brahms          &amp;Cello Sonata Número 1
  \end{tabular}
  \caption{Las mejores piezas de violonchelo}
  \label{tab:cello}
\end{table}
</screen>
<para>pero  puedes  poner  muchos  tipos  diferentes  de  contenido  en  una
<literal>tabla</literal>:   el  <replaceable>cuerpo de  la  tabla</replaceable>  puede contener  texto,
comandos   de  &latex;,   gráficos,  etc.   Es  tipografiado   en  un
<literal>parbox</literal> de ancho <literal>\textwidth</literal>.
</para>
<para>Para  los  posibles valores  de  <replaceable>placement</replaceable>  y  su efecto  en  el
algoritmo de colocación de flotantes, <link linkend="Flotantes">Flotantes</link>.
</para>
<para>La   etiqueta  es   opcional;   se  usa   para  referencias   cruzadas
(véase <link linkend="Referencias-cruzadas">Referencias cruzadas</link>).
<indexterm role="fn"><primary>\caption</primary></indexterm>
El comando <literal>\caption</literal> también  es opcional.  Especifica texto del
título  <replaceable>title</replaceable>  para  la  tabla  (véase <link linkend="_005ccaption">\caption</link>).   De  manera
predeterminada  es  numerado.   Si  su  <replaceable>lottitle</replaceable>  opcional  está
presente, entonces ese texto se utiliza en la lista de tablas en lugar
de <replaceable>title</replaceable> (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla de contenido etc.</link>).
</para>
<para>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.
</para>
<screen>\begin{table}[b]
  \centering
  \begin{tabular}{r|p{2in}} \hline
    Uno &amp;El número loneliest \\
    Dos &amp;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}
</screen>

</sect1>
<sect1 label="8.23" id="tabular">
<title><literal>tabular</literal></title>

<indexterm role="fn"><primary>environment, <literal>tabular</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>tabular</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>líneas en tablas</primary></indexterm>
<indexterm role="cp"><primary>alineando texto en tablas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{tabular}[<replaceable>pos</replaceable>]{<replaceable>cols</replaceable>}
  <replaceable>entrada de columna 1</replaceable>  &amp;<replaceable>entrada de columna 2</replaceable>
  ...
  &amp;<replaceable>entrada de columna n</replaceable> \\
  ...
\end{tabular}
</screen>
<para>o
</para>
<screen>\begin{tabular*}{<replaceable>width</replaceable>}[<replaceable>pos</replaceable>]{<replaceable>cols</replaceable>}
  <replaceable>entrada de columna 1</replaceable>  &amp;<replaceable>entrada de columna 2</replaceable>
  ...
  &amp;<replaceable>entrada de columna n</replaceable> \\
  ...
\end{tabular*}
</screen>
<para>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.
</para>
<screen>\begin{tabular}{l|l}
  \textit{Nombre del jugador} &amp;\textit{Carrera de jonrones} \\
  \hline
  Hank Aarón &amp;755 \\
  nena Ruth &amp;714
\end{tabular}
</screen>
<para>La salida tendrá  dos columnas alineadas a la izquierda  con una barra
vertical   entre  ellos.    Esto   se  especifica   en  el   argumento
<literal>{l|l}</literal> de <literal>tabular</literal>.
<indexterm role="fn"><primary>&amp; (para celdas de tabla)</primary></indexterm>
Coloca  las  entradas  en  diferentes  columnas  separándolas  con  un
ampersand, <literal>&amp;</literal>.  El final de cada fila está marcado con una doble
barra invertida, <literal>\\</literal>.   Pone una regla horizontal  debajo de una
fila, después de una doble barra invertida, con <literal>\hline</literal>.
<indexterm role="fn"><primary>\\ (para <literal>tabular</literal>)</primary></indexterm>
Después de la  última fila, las <literal>\\</literal> son opcionales,  a menos que
un <literal>\hline</literal>  siga el comando  para poner  una regla debajo  de la
tabla.
</para>
<para>Los argumentos  requeridos y opcionales para  <literal>tabular</literal> consisten
en:
</para>
<variablelist><varlistentry><term><replaceable>pos</replaceable>
</term><listitem><para>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: <literal>t</literal>  alinea  la tabla  para  que su  fila
superior coincida con  la línea base del texto  circundante y <literal>b</literal>
se alinea en la fila inferior.
</para>
<para>Esto solo  tiene efecto  si hay otro  texto.  En el  caso común  de un
<literal>tabular</literal> solo  en un entorno  <literal>center</literal> esta opción  no hace
ninguna diferencia.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>cols</replaceable>
</term><listitem><para>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.
</para>
<variablelist><varlistentry><term><literal>l</literal>
</term><listitem><para>Una columna de elementos alineados a la izquierda.
</para>
</listitem></varlistentry><varlistentry><term><literal>r</literal>
</term><listitem><para>Una columna de elementos alineados a la derecha.
</para>
</listitem></varlistentry><varlistentry><term><literal>c</literal>
</term><listitem><para>Una columna de elementos centrados.
</para>
</listitem></varlistentry><varlistentry><term><literal>|</literal>
</term><listitem><para>Una  línea  vertical de  la  altura  y  la profundidad  completas  del
entorno.
</para>
</listitem></varlistentry><varlistentry><term><literal>@{<replaceable>texto o espacio</replaceable>}</literal>
</term><listitem><para>Inserta  <replaceable>texto o  espacio</replaceable> en  esta ubicación  en cada  fila.  El
material <replaceable>texto o espacio</replaceable> está  compuesto en modo LR.  Este texto
es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Si  entre dos  especificadores  de columna  no  hay una  @-expresión,
entonces  las clases  <literal>book</literal>, <literal>article</literal>  y <literal>report</literal>  de
&latex;  ponen a  cada  lado  de cada  columna  un  espacio de  ancho
<literal>\tabcolsep</literal>,  que de  manera  predeterminada  es 6pt.   Es
decir, de manera predeterminada las columnas adyacentes se separan con
12pt (por lo  que <literal>\tabcolsep</literal> tiene un  nombre engañoso ya
que  es solo  la mitad  de  la separación  entre columnas  tabulares).
Además,  un espacio  de <literal>\tabcolsep</literal>  también viene  antes de  la
primera columna  y después de la  columna final, a menos  que coloques
una <literal>@{...}</literal> allí.
</para>
<para>Si redefines el valor predeterminado y usas una @-expresión, entonces
&latex;  no  inserta  <literal>\tabcolsep</literal>  por lo  que  debes  insertar
cualquier      espacio     deseado      tú     mismo,      como     en
<literal>@{\hspace{1em}}</literal>.
</para>
<para>Una expresión <literal>@{}</literal> 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.
</para>
<screen>\begin{flushleft}
  \begin{tabular}{@{}l}
    ...
  \end{tabular}
\end{flushleft}
</screen>
<para>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.
</para>
<screen>\begin{tabular}{r@{$.$}l}
  $3$ &amp;$14$  \\
  $9$ &amp;$80665$
\end{tabular}
</screen>
<anchor id="_005cextracolsep"/><indexterm role="fn"><primary>\extracolsep</primary></indexterm>
<para>Un comando <literal>\extracolsep{<replaceable>wd</replaceable>}</literal> en una expresión @ provoca
un  espacio  adicional  de  ancho  <replaceable>wd</replaceable> para  que  aparezca  a  la
izquierda de todas las subsiguientes  columnas, hasta que sea revocado
por otro <literal>\extracolsep</literal>.  A diferencia del espacio entre columnas
ordinario, este espacio adicional no  se suprime por una @-expresión.
Un comando <literal>\extracolsep</literal> solo se  puede usar en una @-expresión
en  el argumento  <literal>cols</literal>.   A continuación,  &latex; inserta  la
cantidad correcta  de espacios entre  columnas para que toda  la tabla
tenga 4 pulgadas de ancho.
</para>
<screen>\begin{tabular*}{4in}{l@{\extracolsep{\fill}}l}
  Siete veces abajo, ocho veces arriba \ldots
  &amp;¡así es la vida!
\end{tabular*}
</screen>
<para>Para insertar  comandos que se  ejecutan automáticamente antes  de una
determinada  columna,   carga  el   paquete  <literal>array</literal>  y   usa  el
especificador <literal>&gt;{...}</literal>.
<!-- xx se  deberían explicar completamente array, tabularx  y todos los -->
<!--    demás paquetes base... -->
</para>
</listitem></varlistentry><varlistentry><term><literal>p{<replaceable>wd</replaceable>}</literal>
</term><listitem><para>Cada elemento de la columna se escribe en un parbox de ancho <replaceable>wd</replaceable>,
como     si      fuera     el     argumento     de      un     comando
<literal>\parbox[t]{wd}{...}</literal>.
</para>
<para>Un salto de línea de doble barra invertida <literal>\\</literal> puede no aparecer
en el  elemento, excepto  dentro de  un entorno  como <literal>minipage</literal>,
<literal>array</literal>  o   <literal>tabular</literal>,  o   dentro  de   un  <literal>\parbox</literal>
explícito,  o  en el  entorno  de  una declaración  <literal>\centering</literal>,
<literal>\raggedright</literal> o <literal>\raggedleft</literal> (cuando se usa en un elemento
de columna <literal>p</literal>, estas  declaraciones deben aparecer entre llaves,
como con  <literal>{\centering .. \\  ..}</literal>). 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
<literal>\newline</literal> (véase <link linkend="_005cnewline">\newline</link>).
</para>
</listitem></varlistentry><varlistentry><term><literal>*{<replaceable>num</replaceable>}{<replaceable>cols</replaceable>}</literal>
</term><listitem><para>Equivalente a  <replaceable>num</replaceable> copias de  <replaceable>cols</replaceable>, donde <replaceable>num</replaceable>  es un
entero positivo y <replaceable>cols</replaceable> es  una lista de especificadores.  Por lo
tanto, el especificador <literal>\begin{tabular}{|*{3}{l|r}|}</literal> es
equivalente              a               el              especificador
<literal>\begin{tabular}{|l|rl|rl|r|}</literal>.  Ten en cuenta que <replaceable>cols</replaceable>
puede contener otra <literal>*</literal>-expresión.
</para>
</listitem></varlistentry></variablelist>
</listitem></varlistentry><varlistentry><term><replaceable>width</replaceable>
</term><listitem><para>Obligatorio     para     <literal>tabular*</literal>,    no     permitido     para
<literal>tabular</literal>. Especifica  el ancho del entorno  <literal>tabular*</literal>.  El
espacio    entre    columnas    debe   ser    elástico,    como    con
<literal>@{\extracolsep{\fill}}</literal>,  para   permitir  la   tabla  para
estirar o encoger para hacer el  ancho especificado, o de lo contrario
es probable  que obtengan el <literal>Underfull  \hbox (incorrecto 10000)
alineado ...</literal> advertencia.
</para>
</listitem></varlistentry></variablelist>
<para>Parámetros que controlan el formato:
<!-- xx predeterminados, propio nodo (xref del arreglo)? -->
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\arrayrulewidth</primary></indexterm><literal>\arrayrulewidth</literal>
</term><listitem><anchor id="tabular-arrayrulewidth"/><para>Una longitud que  es el grosor  de la
regla   creada  por   <literal>|</literal>,  <literal>\hline</literal>   y  <literal>\vline</literal>   en
<literal>tabular</literal> y  <literal>array</literal> entornos.   El valor  predeterminado es
&#8216;<literal>.4pt</literal>&#8217;.               Cámbialo              como               en
<literal>\setlength{\arrayrulewidth}{0.8pt}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\arraystretch</primary></indexterm><literal>\arraystretch</literal>
</term><listitem><anchor id="tabular-arraystrech"/><para>Un factor por  el cual el  espacio entre
filas en los entorno <literal>tabular</literal>  y <literal>array</literal> se multiplica.  El
valor  predeterminado  es  &#8216;<literal>1</literal>&#8217;,  para  sin  escala.   Cámbialo  a
<literal>\renewcommand{\arraystretch}{1.2}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\doublerulesep</primary></indexterm><literal>\doublerulesep</literal>
</term><listitem><anchor id="tabular-doublerulesep"/><para>Una longitud  que es la distancia entre
las reglas  verticales producidas por el  especificador <literal>||</literal>.  El
valor predeterminado es &#8216;<literal>2pt</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tabcolsep</primary></indexterm><literal>\tabcolsep</literal>
</term><listitem><anchor id="tabular-tabcolsep"/><para>Una longitud que  es la mitad  del espacio
entre columnas.  El valor predeterminado es  &#8216;<literal>6pt</literal>&#8217;.  Cámbialo con
<literal>\setlength</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>Los siguientes comandos se pueden usar dentro del cuerpo de un entorno
<literal>tabular</literal>,  los dos  primeros dentro  de  una entrada  y los  dos
segundos entre líneas:
</para>


<sect2 label="8.23.1" id="_005cmulticolumn">
<title><literal>\multicolumn</literal></title>

<indexterm role="fn"><primary>\multicolumn</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\multicolumn{<replaceable>numcols</replaceable>}{<replaceable>cols</replaceable>}{<replaceable>text</replaceable>}
</screen>
<para>Crea  una entrada  <literal>array</literal>  o <literal>tabular</literal>  que abarque  varias
columnas.  El primer argumento <replaceable>numcols</replaceable>  da el número de columnas
a abarcar.  El  segundo argumento <replaceable>cols</replaceable> especifica  el formato de
la entrada,  con <literal>c</literal> para  centrado, <literal>l</literal> para alineado  a la
izquierda o <literal>r</literal> para volcarlo  a la derecha.  El tercer argumento
<replaceable>text</replaceable> da el contenido de esa entrada.
</para>
<para>En este ejemplo,  en la primera fila, la segunda  y la tercera columna
son abarcadas por el encabezado único &#8216;<literal>Name</literal>&#8217;.
</para>
<screen>\begin{tabular}{lccl}
  \textit{ID}       &amp;\multicolumn{2}{c}{\textit{Name}} &amp;\textit{Age} \\
  \hline
  978-0-393-03701-2 &amp;O'Brian &amp;Patrick                  &amp;55           \\
    ...
\end{tabular}
</screen>
<para>Lo que cuenta como una columna es:&#160;el especificador de formato de
columna para  el entorno  <literal>array</literal> o  <literal>tabular</literal> se  divide en
partes, donde cada  parte (excepto la primera)  comienza con <literal>l</literal>,
<literal>c</literal>,     <literal>r</literal>,     o&#160;<literal>p</literal>.     Así     que     desde
<literal>\begin{tabular}{|r|ccp{1.5in}|}</literal>     las    partes     son
<literal>|r|</literal>, <literal>c</literal>, <literal>c</literal>, y&#160;<literal>p{1.5in}|</literal>.
</para>
<para>El argumento <replaceable>cols</replaceable> redefine el área <literal>array</literal> o <literal>tabular</literal>
intercolumna  del   entorno  predeterminado   junto  a   esta  entrada
multicolumna.  Para afectar  esa área,  este argumento  puede contener
barras  verticales <literal>|</literal>  que  indica la  ubicación  de las  reglas
verticales  y   expresiones  <literal>@{...}</literal>.    Por  lo   tanto,  si
<replaceable>cols</replaceable>  es &#8216;<literal>|c|</literal>&#8217;  entonces esta  entrada multicolumna  estará
centrada y una regla vertical  vendrá en el área intercolumna anterior
y posterior.  Esta tabla detalla el comportamiento exacto.
</para>
<screen>\begin{tabular}{|cc|c|c|}
  \multicolumn{1}{r}{w}            % entrada uno
    &amp;\multicolumn{1}{|r|}{x}      % entrada dos
    &amp;\multicolumn{1}{|r}{y}       % entrada tres
    &amp;z                                                         % entrada cuatro
\end{tabular}
</screen>
<para>Antes de  la primera entrada, la  salida no tendrá una  regla vertical
porque <literal>\multicolumn</literal> tiene  el especificador <replaceable>cols</replaceable> &#8216;<literal>r</literal>&#8217;
sin barra  vertical inicial.  Entre  la entrada  uno y la  entrada dos
habrá una regla vertical; aunque  la primera <replaceable>cols</replaceable> no tiene barra
vertical final,  la segunda  <replaceable>cols</replaceable> tiene  una inicial.   Entre la
entrada dos y entrada tres hay una sola regla vertical; a pesar de eso
<replaceable>cols</replaceable> en  ambas llamadas de <literal>multicolumn</literal>  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  <replaceable>cols</replaceable> en la  entrada tres <literal>\multicolumn</literal>  lo deja
afuera,  y  eso tiene  prioridad.   Finalmente,  siguiendo la  entrada
cuatro hay una regla vertical debido al valor predeterminado.
</para>
<para>El número de columnas distribuidas  <replaceable>numcols</replaceable> 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  <literal>tabular</literal>, incluida la
colocación de reglas verticales.
</para>
<para>En  el  siguiente ejemplo,  en  la  definición de  <literal>tabular</literal>,  la
primera columna  se especifica de manera  predeterminada justificada a
la izquierda,  pero en la  primera fila  la entrada está  centrada con
<literal>\multicolumn{1}{c}{\textsc{Punto}}</literal>.    También  en   la
primera fila, las columnas segunda y tercera están atravesadas por una
entrada única  con <literal>\\multicolumn{2}{c}{\\textsc{Span}}</literal>,
redefiniendo la especificación para centrar  ese rango de dos columnas
en la página en-guión.
</para>
<screen>\begin{tabular}{l|r@{--}l}
  \multicolumn{1}{c}{\textsc{Punto}}
    &amp;\multicolumn{2}{c}{\textsc{Span}} \\ \hline
  Barroca              &amp;1600              &amp;1760                    \\
  Clásica               &amp;1730              &amp;1820                    \\
  Romántica         &amp;1780              &amp;1910                    \\
  Impresionista    &amp;1875              &amp;1925
\end{tabular}
</screen>
<para>Aunque la especificación <literal>tabular</literal>  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   <replaceable>cols</replaceable>   del  primer   comando
<literal>\multicolumn</literal> de la primera fila.
</para>

</sect2>
<sect2 label="8.23.2" id="_005cvline">
<title><literal>\vline</literal></title>

<indexterm role="fn"><primary>\vline</primary></indexterm>
<para>Dibuja una línea vertical en  un entorno <literal>tabular</literal> o <literal>array</literal>
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&#160;<literal>|</literal> 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 <replaceable>cols</replaceable> de
<literal>tabular</literal> y se anula  según sea necesario con <literal>\multicolumn</literal>
(véase <link linkend="tabular">tabular</link>).
</para>
<para>El siguiente ejemplo  ilustra algunas dificultades.  En  el segundo de
la primera fila la entrada  <literal>\hfill</literal> mueve <literal>\vline</literal> 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
<literal>{c|cc}</literal>    viniendo    antes     de    uno    producido    por
<literal>\vline\hfill</literal>.   En  cambio,  la primera  fila  tercera  entrada
muestra  la forma  habitual  de  poner una  barra  vertical entre  dos
columnas.  En la  segunda fila, <literal>ghi</literal> es la entrada  más ancha en
su columna por lo que en <literal>\vline\hfill</literal> el <literal>\hfill</literal> no tiene
efecto y  la línea vertical  en esa entrada aparece  inmediatamente al
lado de <literal>g</literal>, sin espacios en blanco.
</para>
<screen>\begin{tabular}{c|cc}
  x   &amp;\vline\hfill y   &amp;\multicolumn{1}{|r}{z} \\ % fila 1
  abc &amp;def &amp;\vline\hfill ghi                             % fila 2
\end{tabular}
</screen>

</sect2>
<sect2 label="8.23.3" id="_005ccline">
<title><literal>\cline</literal></title>

<indexterm role="fn"><primary>\cline</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\cline{<replaceable>i</replaceable>-<replaceable>j</replaceable>}
</screen>
<para>En  un  entorno  <literal>array</literal>   o  <literal>tabular</literal>,  dibuja  una  regla
horizontal   comenzando  en   column&#160;<replaceable>i</replaceable>   y  terminando   en
column&#160;<replaceable>j</replaceable>.  Los  guiones,  <literal>-</literal>, deben  aparecer  en  el
argumento obligatorio. Para abarcar una sola columna usa el número dos
veces, como con <literal>\cline{2-2}</literal>.
</para>
<para>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.
</para>
<screen>\begin{tabular}{llrr}
  a &amp;b &amp;c &amp;d \\ \cline{1-1} \cline{3-4}
  e &amp;f &amp;g &amp;h
\end{tabular}
</screen>

</sect2>
<sect2 label="8.23.4" id="_005chline">
<title><literal>\hline</literal></title>

<indexterm role="fn"><primary>\hline</primary></indexterm>

<para>Dibuja una  línea horizontal  del ancho  del <literal>tabular</literal>  adjunto o
entorno <literal>array</literal>.   Se utiliza  comúnmente para dibujar  una línea
arriba, abajo y entre las filas de una tabla.
</para>
<para>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  <literal>\hline</literal>,  la línea  <literal>tabular</literal> de  la
segunda fila  que termina con doble  barra invertida&#160;<literal>\\</literal> es
obligatoria.
</para>
<screen>\begin{tabular}{ll} \hline\hline
  Béisbol y Medias Rojas     \\
  Baloncesto y Celtics          \\ \hline
\end{tabular}
</screen>

</sect2>
</sect1>
<sect1 label="8.24" id="thebibliography">
<title><literal>thebibliography</literal></title>

<indexterm role="fn"><primary>environment, <literal>thebibliography</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>thebibliography</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>bibliografía, crear (manualmente)</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{thebibliography}{<replaceable>widest-label</replaceable>}
  \bibitem[<replaceable>label</replaceable>]{<replaceable>cite_key}</replaceable>
  ...
\end{thebibliography}
</screen>
<para>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.
Véase <link linkend="Usar-BibTeX">Usar BibTeX</link>, para un enfoque más sofisticado.
</para>
<para>Esto muestra el entorno con dos entradas.
</para>
<screen>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}
</screen>
<para>Esto estiliza la primera referencia  como &#8216;<literal>[1] Leslie ...</literal>&#8217;, y así
<literal>...  basado   en  \cite{latexdps}</literal>  produce   la  coincidencia
&#8216;<literal>... basado  en [1]</literal>&#8217;.  El segundo  <literal>\cite</literal> produce &#8216;<literal>[1,
2]</literal>&#8217;.   Debes  compilar el  documento  dos  veces para  resolver  estas
referencias.
</para>
<para>El argumento  obligatorio <replaceable>widest-label</replaceable>  es texto que,  cuando se
compone, es tan ancho como la etiqueta de artículo más ancha producida
por los comandos <literal>\bibitem</literal>.  La  tradición es usar <literal>9</literal> para
bibliografías con menos de 10 referencias, <literal>99</literal> para las de menos
de 100, etc.
</para>
<indexterm role="fn"><primary>\bibname</primary></indexterm>
<indexterm role="fn"><primary>\refname</primary></indexterm>
<para>La   lista  bibliográfica   está   encabezada  por   un  título   como
&#8216;<literal>Bibliography</literal>&#8217;.   Para cambiarlo  hay dos  casos.  En  las clases
<filename>book</filename> y  <filename>report</filename>, donde  la sección  de nivel  superior es
<literal>\chapter</literal> y el título predeterminado es &#8216;<literal>Bibliography</literal>&#8217;, ese
título está  en la macro <literal>\bibname</literal>.   Para <filename>article</filename>, donde
el nivel  superior de la clase  de seccionado es <literal>\section</literal>  y la
predeterminada  es  &#8216;<literal>References</literal>&#8217;,  el  título está  en  la  macro
<literal>\refname</literal>.    Cámbialo  redefiniendo   el   comando,  como   con
<literal>\renewcommand{\refname}{Referencias    citadas}</literal>,    después
<literal>\begin{document}</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>babel</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>babel</literal> package</primary></indexterm>
<para>Los   paquetes   de   soporte   de   idiomas   como
<literal>babel</literal>    automáticamente    redefinen   <literal>\refname</literal>    o
<literal>\bibname</literal> para ajustarse al idioma seleccionado.
</para>
<para>Véase <link linkend="list">list</link>, para los parámetros de control de diseño de lista.
</para>


<sect2 label="8.24.1" id="_005cbibitem">
<title><literal>\bibitem</literal></title>

<indexterm role="fn"><primary>\bibitem</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\bibitem{<replaceable>cite_key</replaceable>}
</screen>
<para>o
</para>
<screen>\bibitem[<replaceable>label</replaceable>]{<replaceable>cite_key</replaceable>}
</screen>
<para>Genera una entrada  etiquetada de manera predeterminada  por un número
generado usando el contador <literal>enumi</literal>.  La <firstterm>clave de cita</firstterm>
<indexterm role="cp"><primary>clave de cita</primary></indexterm>
<replaceable>cite_key</replaceable> puede ser cualquier cadena  de letras, números y signos
de puntuación (pero no comas).
</para>
<para>Véase <link linkend="thebibliography">thebibliography</link>, por ejemplo.
</para>
<para>Cuando  se proporciona,  el <replaceable>label</replaceable>  opcional se  convierte en  la
etiqueta de entrada y el  contador <literal>enumi</literal> no se incrementa.  Con
este
</para>
<screen>\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}
</screen>
<para>la primera entrada  tendrá el estilo &#8216;<literal>[Lamport  1993] Leslie ...</literal>&#8217;
(La cantidad de espacio horizontal  que &latex; deja para la etiqueta
depende    de   el    argumento    <replaceable>widest-label</replaceable>   del    entorno
<literal>thebibliography</literal>; ve <link linkend="thebibliography">thebibliography</link>).  De manera similar,
<literal>... basado  en \cite{latexdps}</literal> producirá &#8216;<literal>...  basado en
[Lamport 1994]</literal>&#8217;.
</para>
<para>Si mezclas las entradas de  <literal>\bibitem</literal> que tienen <replaceable>label</replaceable> con
las   que  no,   entonces  &latex;   enumerará  las   no  etiquetadas
secuencialmente.  En  el ejemplo  de arriba la  entrada <literal>texbook</literal>
aparecerá como  &#8216;<literal>[1] Donald ...</literal>&#8217;,  a pesar  de que es  la segunda
entrada.
</para>
<para>Si usas el mismo <replaceable>cite_key</replaceable> dos veces, obtendrás &#8216;<literal>Advertencia
LaTeX: había etiquetas definidas de forma múltiple</literal>&#8217;.
</para>
<para>Bajo  el   capó,  &latex;   recuerda  información   <replaceable>cite_key</replaceable>  y
<replaceable>label</replaceable> porque  <literal>\bibitem</literal> la escribe en  el archivo auxiliar
<filename><replaceable>jobname</replaceable>.aux</filename> (véase <link linkend="Nombre-del-trabajo">Nombre  del trabajo</link>).   Por ejemplo,
el       ejemplo      anterior       hace       que      los       dos
<literal>\bibcite{latexdps}{Lamport,             1993}</literal>             y
<literal>\bibcite{texbook}{1}</literal>  que  aparezcan  en ese  archivo.   El
archivo <filename>.aux</filename> es leído  por el comando <literal>\begin{document}</literal>
y luego la información está disponible para los comandos <literal>\cite</literal>.
Esto  explica  por qué  necesitas  ejecutar  &latex; dos  veces  para
resolver  las referencias:  una vez  para  escribirlo y  una vez  para
leerlo.
</para>
<para>Debido   a  este   algoritmo   de  dos   pasos,   cuando  agregas   un
<literal>\bibitem</literal>   o   cambias   su   <replaceable>cite_key</replaceable>   puedes   obtener
&#8216;<literal>Advertencia   de  LaTeX:   la(s)   etiqueta(s)  puede(n)   haber
cambiado.  Vuelve   a  ejecutar  para  obtener   referencias  cruzadas
correctas</literal>&#8217;.  Arréglalo para recompilarlo.
</para>

</sect2>
<sect2 label="8.24.2" id="_005ccite">
<title><literal>\cite</literal></title>

<indexterm role="fn"><primary>\cite</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\cite{<replaceable>keys</replaceable>}
</screen>
<para>o
</para>
<screen>\cite[<replaceable>subcite</replaceable>]{<replaceable>keys</replaceable>}
</screen>
<para>Genera como salida una cita  a las referencias asociadas a <replaceable>keys</replaceable>.
La <replaceable>keys</replaceable> obligatoria es una clave  de cita, o una lista de claves
de citas separadas por comas (véase <link linkend="_005cbibitem">\bibitem</link>).
</para>
<para>Este
</para>
<screen>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}
</screen>
<para>produce una salida  como &#8216;<literal>... la fuente es  [1]</literal>&#8217;.  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
<literal>thebibliography</literal>.  Para más información <link linkend="Usar-BibTeX">Usar BibTeX</link>.
</para>
<para>El  argumento  opcional  <replaceable>subcite</replaceable>  se adjunta  a  la  cita.   Por
ejemplo,  <literal>Ve 14.3  en \cite[p.~314]{texbook}</literal>  podría producir
&#8216;<literal>Ve 14.3 en [1, p.&#160;314]</literal>&#8217;.
</para>
<para>Además  de  lo   que  aparece  en  la   salida,  <literal>\cite</literal>  escribe
información     al    archivo     auxiliar    <filename><replaceable>jobname</replaceable>.aux</filename>
(véase <link linkend="Nombre-del-trabajo">Nombre del  trabajo</link>).  Por  ejemplo, <literal>\cite{latexdps}</literal>
escribe &#8216;<literal>\citation{latexdps}</literal>&#8217; a  ese archivo.  Esta información
la  utiliza Bib&tex;  para incluir  en su  lista de  referencias solo
aquellos trabajos que realmente se han citado; <link linkend="_005cnocite">\nocite</link> también.
</para>
<para>Si <replaceable>keys</replaceable> no está en  la información de tu bibliografía, obtendrás
&#8216;<literal>Advertencia de LaTeX:  Había referencias no definidas</literal>&#8217;,  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  <literal>\cite{texbok}</literal>   entonces  necesitas   corregir  la
ortografía.   Por  otro  lado,  si   acabas  de  agregar  o  modificar
información  bibliográfica  y  así   cambias  el  archivo  <filename>.aux</filename>
(véase <link linkend="_005cbibitem">\bibitem</link>) entonces  la solución  puede ser  ejecutar &latex;
nuevamente.
</para>

</sect2>
<sect2 label="8.24.3" id="_005cnocite">
<title><literal>\nocite</literal></title>

<indexterm role="fn"><primary>\nocite</primary></indexterm>

<para>Sinopsis:
</para>
<screen><literal>\nocite{<replaceable>keys</replaceable>}</literal>
</screen>
<para>No  produce salida  pero  escribe <replaceable>keys</replaceable>  en  el archivo  auxiliar
<filename><replaceable>jobname</replaceable>.aux</filename> (véase <link linkend="Nombre-del-trabajo">Nombre del trabajo</link>).
</para>
<para>El argumento obligatorio <replaceable>keys</replaceable> es una lista separada por comas de
una  o más  claves de  cita (véase <link linkend="_005cbibitem">\bibitem</link>).   Esta información  la
utiliza  Bib&tex;  para  incluir  estos   trabajos  en  tu  lista  de
referencia aunque no los hayas citado explícitamente (véase <link linkend="_005ccite">\cite</link>).
</para>

</sect2>
<sect2 label="8.24.4" id="Usar-BibTeX">
<title>Usar Bib&tex;</title>

<indexterm role="cp"><primary>usando Bib&tex;</primary></indexterm>
<indexterm role="cp"><primary>bib&tex;, usando</primary></indexterm>
<indexterm role="cp"><primary>bibliografía, crear (automáticamente)</primary></indexterm>
<indexterm role="fn"><primary>\bibliographystyle</primary></indexterm>
<indexterm role="fn"><primary>\bibliography</primary></indexterm>

<para>Como se describe  en <literal>thebibliography</literal> (véase <link linkend="thebibliography">thebibliography</link>),
un   enfoque  sofisticado   para  la   gestión  de   bibliografías  es
proporcionado   por  el   programa  Bib&tex;.    Esta  es   solo  una
introducción; ve la documentación completa sobre CTAN (véase <link linkend="CTAN">CTAN</link>).
</para>
<para>Con Bib&tex;, no usas  el entorno <literal>thebibliography</literal> directamente
(véase <link linkend="thebibliography">thebibliography</link>). En su lugar, incluye estas líneas:
</para>
<screen>\bibliographystyle{<replaceable>bibstyle</replaceable>}
\bibliography{<replaceable>bibfile1</replaceable>, <replaceable>bibfile2</replaceable>, ...}
</screen>
<para><replaceable>bibstyle</replaceable> hace referencia a un archivo <filename><replaceable>bibstyle</replaceable>.bst</filename>,
que  define cómo  se verán  tus citas.   Los <replaceable>bibstyle</replaceable>s  estándar
distribuidos con Bib&tex; son:
</para>
<variablelist><varlistentry><term><literal>alfa</literal>
</term><listitem><para>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.
</para></listitem></varlistentry><varlistentry><term><literal>plain</literal>
</term><listitem><para>Las   etiquetas   son   números   enteros.    Ordena   los   elementos
bibliográficos alfabéticamente.
</para></listitem></varlistentry><varlistentry><term><literal>unsrt</literal>
</term><listitem><para>Como <literal>plain</literal>, pero las entradas están en orden de cita.
</para></listitem></varlistentry><varlistentry><term><literal>abbrv</literal>
</term><listitem><para>Como <literal>plain</literal>, pero etiquetas más compactas.
</para></listitem></varlistentry></variablelist>
<para>Existen muchos, muchos otros archivos de estilo Bib&tex;,
adaptados a  las demandas  de varias publicaciones.   Ve el  tema CTAN
<ulink url="https://ctan.org/topic/bibtex-sty">https://ctan.org/topic/bibtex-sty</ulink>.
</para>
<para>El  comando  <literal>\bibliography</literal>  es  lo  que  realmente  produce  la
bibliografía.  Su  argumento es una  lista separada por comas,  que se
refiere     a     archivos     llamados     <filename><replaceable>bibfile1</replaceable>.bib</filename>,
<filename><replaceable>bibfile2</replaceable>.bib</filename>, &#8230; Estos contienen tu base de datos en
formato  Bib&tex;.  Esto  muestra un  par típico  de entradas  en ese
formato.
</para>
<screen>@book{texbook,
  title     = {El {{\TeX}}book},
  author    = {D.E. Knuth},
  isbn      = {0201134489},
  series    = {Ordenadores \&amp; 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}
}
</screen>
<para>Solo las entradas bibliográficas a las que se hace referencia a través
de  <literal>\cite</literal> y  <literal>\nocite</literal>  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 Bib&tex;
para incluir en este documento solo aquellos que usaste.
</para>
<indexterm role="cp"><primary>&#8216;<literal>*}, para todas las claves <literal>\nocite</literal></literal>&#8217;</primary></indexterm>
<indexterm role="fn"><primary>\nocite {*}, para todas las claves</primary></indexterm>
<para>Con  Bib&tex;, el  argumento <replaceable>keys</replaceable>  para <literal>\nocite</literal>  también
puede  ser   el  carácter   único  &#8216;<literal>*</literal>&#8217;.   Esto   significa  citar
implícitamente todas las entradas de todas las bibliografías dadas.
</para>

<sect3 label="8.24.4.1" id="Mensajes-de-error-BibTeX">
<title>Mensajes de error Bib&tex;</title>

<indexterm role="cp"><primary>Mensajes de error Bib&tex;</primary></indexterm>
<indexterm role="cp"><primary>mensajes de error, de Bib&tex;</primary></indexterm>
<indexterm role="fn"><primary>.aux  comandos file y Bib&tex;</primary></indexterm>

<para>Si olvidas usar <literal>\bibliography</literal> o <literal>\bibliographystyle</literal> en tu
documento (o,  menos probablemente,  cualquier comando  <literal>\cite</literal> o
<literal>\nocite</literal>),  Bib&tex;  emitirá  un  mensaje  de  error.   Porque
Bib&tex; se puede usar con  cualquier programa, no solo &latex;, los
mensajes  de error  se refieren  a  los comandos  internos leídos  por
Bib&tex; (desde un archivo <filename>.aux</filename>),  en lugar de los comandos de
nivel de usuario descritos anteriormente.
</para>
<para>Aquí hay  una tabla que  muestra los comandos internos  mencionados en
los  errores Bib&tex;  y  los correspondientes  comandos  a nivel  de
usuario.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\bibdata</primary></indexterm><literal>\bibdata</literal>
</term><listitem><indexterm role="fn"><primary>\bibliography y <literal>\bibdata</literal> interno</primary></indexterm>
<para><literal>\bibliography</literal>
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bibstyle</primary></indexterm><literal>\bibstyle</literal>
</term><listitem><indexterm role="fn"><primary>\bibliographystyle y <literal>\bibstyle</literal> interno</primary></indexterm>
<para><literal>\bibliographystyle</literal>
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\citation</primary></indexterm><literal>\citation</literal>
</term><listitem><indexterm role="fn"><primary>\cite y <literal>\citation</literal> interna</primary></indexterm>
<indexterm role="fn"><primary>\nocite y <literal>\citation</literal> interna</primary></indexterm>
<para><literal>\cite</literal>, <literal>\nocite</literal>
</para></listitem></varlistentry></variablelist>
<para>Por     ejemplo,    si     tu    documento     no    tiene     comando
<literal>\bibliographystyle</literal>, Bib&tex; se queja de la siguiente manera:
</para>
<screen>No  encontré ningún  comando \bibstyle  --- mientras  leía el  archivo
<replaceable>document</replaceable>.aux
</screen>

</sect3>
</sect2>
</sect1>
<sect1 label="8.25" id="theorem">
<title><literal>theorem</literal></title>

<indexterm role="fn"><primary>environment, <literal>theorem</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>theorem</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>teoremas, tipografía</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{theorem}
  <replaceable>cuerpo del teorema</replaceable>
\end{theorem}
</screen>
<para>Produce &#8216;<literal>Teorema <replaceable>n</replaceable></literal>&#8217; en  negrita seguido del <replaceable>cuerpo del
teorema</replaceable> en  cursiva.  La  posibilidad de  numeración para  <replaceable>n</replaceable> se
describe en <literal>\newtheorem</literal> (véase <link linkend="_005cnewtheorem">\newtheorem</link>).
</para>
<screen>\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}
</screen>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>amsthm</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsthm</literal> package</primary></indexterm>
<para>La  mayoría de  los  documentos
nuevos usan  los paquetes  <literal>amsthm</literal> y <literal>amsmath</literal>  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.
</para>

</sect1>
<sect1 label="8.26" id="titlepage">
<title><literal>titlepage</literal></title>

<indexterm role="fn"><primary>environment, <literal>titlepage</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>titlepage</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>hacer una página de título</primary></indexterm>
<indexterm role="cp"><primary>páginas de título, crear</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{titlepage}
  ... texto y espaciado ...
\end{titlepage}
</screen>
<para>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.
</para>
<para>En este ejemplo,  todo el formato, incluido el  espaciado vertical, se
deja a el autor.
</para>
<screen>\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}
</screen>
<para>En su  lugar, produce  una página  de título  estándar sin  un entorno
<literal>titlepage</literal>, usa <literal>\maketitle</literal> (véase <link linkend="_005cmaketitle">\maketitle</link>).
</para>

</sect1>
<sect1 label="8.27" id="verbatim">
<title><literal>verbatim</literal></title>

<indexterm role="fn"><primary>environment, <literal>verbatim</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>verbatim</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>texto literal</primary></indexterm>
<indexterm role="cp"><primary>simular texto mecanografiado</primary></indexterm>
<indexterm role="cp"><primary>texto mecanografiado, simular</primary></indexterm>
<indexterm role="cp"><primary>código, tipografía</primary></indexterm>
<indexterm role="cp"><primary>programas informáticos, composición tipográfica</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{verbatim}
<replaceable>texto-literal</replaceable>
\end{verbatim}
</screen>
<para>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 <replaceable>texto-literal</replaceable>  el carácter backslash&#160;<literal>\</literal>  no inicia
los  comandos,  imprime una  &#8216;<literal>\</literal>&#8217;,  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 (<literal>\tt</literal>).
</para>
<screen>\begin{verbatim}
Símbolo juramento: %&amp;$#?!.
\end{verbatim}
</screen>
<para>La única restricción  en <literal>texto-literal</literal> es que  no puede incluir
la cadena <literal>\end{verbatim}</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>cprotect</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>cprotect</literal> package</primary></indexterm>
<para>No puedes usar el  entorno textual en el argumento
de las  macros, por instancia  en el argumento de  un <literal>\section</literal>.
Esto no es lo mismo  que los comandos son frágiles (véase <link linkend="_005cprotect">\protect</link>),
en lugar  de eso, simplemente  no puede  funcionar, ya que  el entorno
<literal>verbatim</literal>  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  <literal>cprotect</literal> puede
ayudar con esto
</para>
<indexterm role="cp"><primary>package, <literal>listings</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>listings</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>minted</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>minted</literal> package</primary></indexterm>
<para>Un  uso común  de  la  entrada
textual es escribir código informático.   Existen paquetes que son una
mejora  del  entorno  <literal>verbatim</literal>.   Por ejemplo,  una  mejora  es
permitir la  inclusión palabra  por palabra de  archivos, o  partes de
esos  archivos.    Dichos  paquetes  incluyen   <literal>listings</literal>,  y
<literal>minted</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>fancyvrb</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>fancyvrb</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>verbatimbox</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>verbatimbox</literal> package</primary></indexterm>
<para>Un  paquete que proporciona
muchas  más opciones  para entornos  textuales es  <literal>fancyvrb</literal>.
Otro es <literal>verbatimbox</literal>.
</para>
<para>Para obtener una lista de todos los paquetes relevantes, consulta CTAN
(véase <link linkend="CTAN">CTAN</link>).
</para>


<sect2 label="8.27.1" id="_005cverb">
<title><literal>\verb</literal></title>

<indexterm role="fn"><primary>\verb</primary></indexterm>
<indexterm role="cp"><primary>texto literal, en línea</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\verb <replaceable>char</replaceable> <replaceable>texto-literal</replaceable> <replaceable>char</replaceable>
\verb* <replaceable>char</replaceable> <replaceable>texto-literal</replaceable> <replaceable>char</replaceable>
</screen>
<para>Compone  el <replaceable>texto-literal</replaceable>  tal  como se  ingresa, incluidos  los
caracteres  especiales  y espacios,  usando  la  letra de  máquina  de
escribir (<literal>\tt</literal>).
</para>
<para>Este ejemplo muestra dos diferentes invocaciones de <literal>\verb</literal>.
</para>
<screen>¡Esto es  \verb! ¡Literalmente!  la calabaza más  grande de  todos los
tiempos.  Y esta es la mejor calabaza, \verb+¡literalmente!+
</screen>
<para>El primer <literal>\verb</literal> tiene  su <replaceable>texto-literal</replaceable> rodeado de signos
de exclamación,  <literal>!</literal>.  En cambio,  el segundo usa  más, <literal>+</literal>,
porque el signo de exclamación es parte del <literal>texto-literal</literal>.
</para>
<para>El    delimitador   de    un    solo    carácter   <replaceable>char</replaceable>    rodea
<replaceable>texto-literal</replaceable>&#8212;debe ser el mismo  carácter antes y después.  No
hay espacios entre <literal>\verb</literal> o  <literal>\verb*</literal> y <replaceable>char</replaceable>, o entre
<replaceable>char</replaceable>  y <replaceable>texto-literal</replaceable>,  o entre  <replaceable>texto-literal</replaceable> y  la
segunda aparición de  <replaceable>char</replaceable> (la sinopsis muestra  un espacio solo
para  distinguir un  componente  del otro).   El  delimitador no  debe
aparecer  en  <replaceable>texto-literal</replaceable>.  El  <replaceable>texto-literal</replaceable>  no  puede
incluir un salto de línea.
</para>
<indexterm role="cp"><primary>espacio visible</primary></indexterm>
<para>La forma <literal>*</literal>  se diferencia solo en que los  espacios se imprimen
con un carácter espacial.
</para>
<para>El resultado de esto incluirá un  espacio visible en ambos lados de la
palabra &#8216;<literal>con</literal>&#8217;:
</para>
<screen>El primer argumento del comando es \verb*!filename con extensión! y
  ...
</screen>
<indexterm role="cp"><primary>package, <literal>url</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>url</literal> package</primary></indexterm>
<para>Para escribir direcciones  de Internet, URL, el paquete
<literal>url</literal> es una mejor opción  que el comando <literal>\verb</literal>, ya que
permite saltos de línea.
</para>
<indexterm role="cp"><primary>package, <literal>listings</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>listings</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>minted</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>minted</literal> package</primary></indexterm>
<para>Para el código  informático hay
muchos   paquetes   con   ventajas   sobre   <literal>\verb</literal>.    Uno   es
<literal>listings</literal>, otro es <literal>minted</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>cprotect</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>cprotect</literal> package</primary></indexterm>
<para>No puedes usar <literal>\verb</literal> en el argumento de una
macro,  por ejemplo  en el  argumento de  una <literal>\section</literal>.   No es
cuestión de  que <literal>\verb</literal> sea frágil  (véase <link linkend="_005cprotect">\protect</link>), en lugar
de eso, simplemente no puede  trabajar, ya que el comando <literal>\verb</literal>
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 <literal>cprotect</literal> puede ayudar con esto.
</para>

</sect2>
</sect1>
<sect1 label="8.28" id="verse">
<title><literal>verse</literal></title>

<indexterm role="fn"><primary>environment, <literal>verse</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>verse</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>poesía, un entorno para</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{verse}
  <replaceable>line1</replaceable> \\
  <replaceable>line2</replaceable> \\
  ...
\end{verse}
</screen>
<para>Un entorno para la poesía.
</para>
<para>Aquí hay dos líneas de Romeo y Julieta de Shakespeare.
</para>
<screen>Entonces sé claramente que el querido amor de mi corazón está \\
establecido sobre la bella hija del rico Capuleto.
</screen>
<indexterm role="fn"><primary>\\ (para <literal>verse</literal>)</primary></indexterm>
<para>Separa las líneas de cada estrofa con <literal>\\</literal> y usa una o más líneas
en blanco para separar las estrofas.
</para>
<screen>\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}
</screen>
<para>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.
</para>

</sect1>
</chapter>
<chapter label="9" id="Salto-de-l_00ednea">
<title>Salto de línea</title>

<indexterm role="cp"><primary>salto de linea</primary></indexterm>
<indexterm role="cp"><primary>romper líneas</primary></indexterm>

<para>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).
</para>
<para>&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.
</para>
<para>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.
<!-- Texto            alternativo             propuesto            aquí: -->
<!-- https://tug.org/pipermail/latexrefman/2021q3/000803.html este texto -->
<!-- es el de la versión francesa. -->
</para>


<sect1 label="9.1" id="_005c_005c">
<title><literal>\\</literal></title>

<indexterm role="fn"><primary>\\ (fuerza el salto de línea)</primary></indexterm>
<indexterm role="cp"><primary>nueva línea, comenzando</primary></indexterm>
<indexterm role="cp"><primary>salto de línea, forzando</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\\
\\[<replaceable>morespace</replaceable>]
</screen>
<para>o una de:
</para>
<screen>\\*
\\*[<replaceable>morespace</replaceable>]
</screen>
<para>Finaliza  la  línea  actual.  El  argumento  opcional  <replaceable>morespace</replaceable>
especifica espacio  vertical adicional  que se  insertará antes  de la
siguiente línea.  Esta es  un longitud elástica (véase <link linkend="Longitudes">Longitudes</link>) 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 (véase <link linkend="_005cprotect">\protect</link>).
</para>
<screen>\title{Mi historia: \\[0.25in]
una historia de aflicción}
</screen>
<para>La forma destacada,  <literal>\\*</literal>, le dice a &latex; que  no inicie una
nueva página entre las dos líneas, emitiendo un <literal>\nobreak</literal>.
</para>
<para>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 <literal>\\</literal>.   En lugar de eso,  deja una línea en  blanco entre los
dos párrafos.   Y no  pongas una secuencia  de <literal>\\</literal>&#8217;s  para hacer
espacio vertical.  En su  lugar, usa  <literal>\vspace{<replaceable>length</replaceable>}</literal> o
<literal>\leavevmode\vspace{<replaceable>length</replaceable>}</literal>                            o
<literal>\vspace*{<replaceable>length</replaceable>}</literal> si deseas que  no se arroje el espacio
en la parte superior de una nueva página (véase <link linkend="_005cvspace">\vspace</link>).
</para>
<para>El comando <literal>\\</literal>  se usa principalmente fuera  del flujo principal
de texto  como en  un entorno  <literal>tabular</literal> o  <literal>array</literal> o  en un
entorno de la ecuación.
</para>
<para>El   comando    <literal>\\</literal>   es   un   sinónimo    de   <literal>\newline</literal>
(véase <link linkend="_005cnewline">\newline</link>)  en circunstancias  ordinarias (un  ejemplo de  una
excepción es la columna  <literal>p{...}</literal> en un entorno <literal>tabular</literal>;
véase <link linkend="tabular">tabular</link>).
</para>
<!-- crédito: David Carlisle https://tex.stackexchange.com/a/82666 -->
<para>El comando  <literal>\\</literal> es  una macro  y su  definición cambia  según el
contexto  para  que   su  definición  en  texto   normal,  un  entorno
<literal>center</literal>,   un  <literal>flushleft</literal>   y  <literal>tabular</literal>   son  todos
diferentes.   En  texto  normal,  cuando fuerza  un  salto  de  línea,
esencialmente es una abreviatura para <literal>\newline</literal>.  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.
</para>
<para>Obtienes &#8216;<literal>Error  de LaTeX:  No hay línea  para terminar  aquí</literal>&#8217; si
usas <literal>\\</literal> para  solicitar una nueva línea, en  lugar de finalizar
la línea actual.  Un  ejemplo es si tienes <literal>\begin{document}\\</literal>
o, más probablemente, algo como esto.
</para>
<screen>\begin{center}
  \begin{minipage}{0.5\textwidth}
  \\
  En ese espacio vertical pon tu marca.
  \end{minipage}
\end{center}
</screen>
<para>Solucionalo  reemplazando  la  doble  barra invertida  con  algo  como
<literal>\vspace{\baselineskip}</literal>.
</para>

</sect1>
<sect1 label="9.2" id="_005cobeycr-y-_005crestorecr">
<title><literal>\obeycr</literal> y <literal>\restorecr</literal></title>

<anchor id="_005cobeycr"/><anchor id="_005crestorecr"/><indexterm role="fn"><primary>\obeycr</primary></indexterm>
<indexterm role="fn"><primary>\restorecr</primary></indexterm>
<indexterm role="cp"><primary>nueva línea, salida como entrada</primary></indexterm>

<para>El comando  <literal>\obeycr</literal> hace  un retorno en  el archivo  de entrada
(&#8216;<literal>^^M</literal>&#8217;,  internamente)   lo  mismo  que  <literal>\\</literal>,   seguido  de
<literal>\relax</literal>.  Así  que cada nueva  línea en la entrada  también será
una nueva línea  en la salida.  El  comando <literal>\restorecr</literal> restaura
el comportamiento normal de salto de línea.
</para>
<para>Esta no  es la forma  de mostrar  texto textual o  código informático.
Usa <literal>verbatim</literal> (véase <link linkend="verbatim">verbatim</link>) en su lugar.
</para>
<para>Con los valores predeterminados habituales de &latex;, este
</para>
<screen>aaa
bbb

\obeycr
ccc
ddd
   eee

\restorecr
fff
ggg

hhh
iii
</screen>
<para>produce una salida como esta.
</para>
<screen>  aaa bbb
  ccc
ddd
eee

fff ggg
  hhh iii
</screen>
<para>Las sangrías son sangrías de párrafo.
</para>

</sect1>
<sect1 label="9.3" id="_005cnewline">
<title><literal>\newline</literal></title>

<indexterm role="fn"><primary>\newline</primary></indexterm>
<indexterm role="cp"><primary>nueva línea, comenzando (modo párrafo)</primary></indexterm>

<para>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 (véase <link linkend="Modos">Modos</link>), el
comando  <literal>\newline</literal>  es  equivalente   a  doble  barra  invertida
(véase <link linkend="_005c_005c">\\</link>).  Este comando es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Sin  embargo, los  dos comandos  son diferentes  dentro de  un entorno
<literal>tabular</literal>  o   entorno  <literal>array</literal>.  En  una   columna  con  un
especificador  que  produce  un  cuadro de  párrafo  como  típicamente
<literal>p{...}</literal>, <literal>\newline</literal>  inserta un final de  línea dentro de
la columna;  es decir, no  rompe toda  la fila tabular.   Para dividir
toda la fila, usa <literal>\\</literal> o su equivalente <literal>\tabularnewline</literal>.
</para>
<para>Esto imprimirá  &#8216;<literal>Nombre:</literal>&#8217; y &#8216;<literal>Dirección:</literal>&#8217; como  dos líneas en
una sola celda de la tabla.
</para>
<screen>\begin{tabular}{p{1in}@{\hspace{2in}}p{1in}}
  Nombre: \newline Dirección: &amp;Date: \\ \hline
\end{tabular}
</screen>
<para>&#8216;<literal>Date:</literal>&#8217; se alineará con la línea base con &#8216;<literal>Nombre:</literal>&#8217;.
</para>

</sect1>
<sect1 label="9.4" id="_005c_002d-_0028separaci_00f3n-sil_00e1bica_0029">
<title><literal>\-</literal> (guion discrecional)</title>

<indexterm role="fn"><primary>\- (separación silábica)</primary></indexterm>
<indexterm role="cp"><primary>separación silábica, forzando</primary></indexterm>

<para>Le dice a &latex; que puede  separar la palabra en ese punto.  Cuando
insertas  comandos  <literal>\-</literal>  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 (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>&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 <literal>\-</literal>  es para  casos
excepcionales.
</para>
<para>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.
</para>
<screen>\begin{tabular}{rp{1.75in}}
  Isaac Asimov &amp;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}
</screen>
<para>Comentar la  tercera línea  y descomentar la  cuarta hace  mucho mejor
ajuste.
</para>
<para>El comando <literal>\-</literal> solo permite que &latex; rompa allí, no requiere
que  se  rompa  allí.   Puedes  forzar  una  división  con  algo  como
<literal>Hef-\linebreak feron</literal>.  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.
</para>

</sect1>
<sect1 label="9.5" id="_005cdiscretionary">
<title><literal>\discretionary</literal> (punto de separación silábica generalizada)</title>
<indexterm role="cp"><primary>separación silábica, discrecional</primary></indexterm>
<indexterm role="cp"><primary>discrecional, separación silábica</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\discretionary{<replaceable>pre-break</replaceable>}{<replaceable>post-break</replaceable>}{<replaceable>no-break</replaceable>}
</screen>
<para>Maneja cambios de  palabras alrededor de guiones.  Este  comando no se
usa a menudo en documentos &latex;.
</para>
<para>Si  se  produce   un  salto  de  línea  en  el   punto  donde  aparece
<literal>\discretionary</literal> entonces &tex; pone <replaceable>pre-break</replaceable> al final de
la línea  actual y pone  <replaceable>post-break</replaceable> al comienzo de  la siguiente
línea.   Si  no   hay  salto  de  linea  aquí   entonces  &tex;  pone
<replaceable>no-break</replaceable>.
</para>
<para>En &#8216;<literal>difficult</literal>&#8217;  las tres  letras <literal>ffi</literal> forman  una ligadura.
Pero no obstante,  &tex; se puede dividir entre las  dos &#8216;<literal>f</literal>&#8217; con
esto.
</para>
<screen>di\discretionary{f-}{fi}{ffi}cult
</screen>
<para>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;.
</para>
<!-- xxx  TODO,  completa este  nodo,  ve  LaTeX-fr  (copiar y  pegar  a -->
<!-- continuación, con letra acentuada escapada) -->


</sect1>
<sect1 label="9.6" id="_005cfussy-y-_005csloppy">
<title><literal>\fussy</literal> y <literal>\sloppy</literal></title>

<anchor id="_005cfussy"/><anchor id="_005csloppy"/><indexterm role="fn"><primary>\fussy</primary></indexterm>
<indexterm role="fn"><primary>\sloppy</primary></indexterm>
<indexterm role="cp"><primary>saltos de línea, cambiando</primary></indexterm>

<para>Declaraciones para hacer  que &tex; sea más o  menos quisquilloso con
el  salto  de línea.   Declarar  <literal>\fussy</literal>  por lo  general  evita
demasiado  espacio entre  palabras, a  costa de  alguna que  otra caja
llena  en exceso.   En  cambio, <literal>\sloppy</literal>  evita cajas  demasiado
llenas mientras sufre espaciado interpalabras sueltas.
</para>
<para>El valor  predeterminado es  <literal>\fussy</literal>.  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  <literal>\par</literal> 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.
</para>


<sect2 label="9.6.1" id="sloppypar">
<title><literal>sloppypar</literal></title>

<indexterm role="fn"><primary>environment, <literal>sloppypar</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>sloppypar</literal> environment</primary></indexterm>

<indexterm role="cp"><primary>entorno descuidado</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{sloppypar}
  ... párrafos ...
\end{sloppypar}
</screen>
<para>Compone  los párrafos  con <literal>\sloppy</literal>  en efecto  (véase <link linkend="_005cfussy-y-_005csloppy">\fussy y
\sloppy</link>).  Usa esto  para ajustar localmente el salto  de línea, para
evitar   los  errores   &#8216;<literal>Caja  demasiado   llena</literal>&#8217;  o   &#8216;<literal>Caja
incompleta</literal>&#8217;.
</para>
<para>El ejemplo es simple.
</para>
<screen>\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}
</screen>

</sect2>
</sect1>
<sect1 label="9.7" id="_005chyphenation">
<title><literal>\hyphenation</literal></title>

<indexterm role="fn"><primary>\hyphenation</primary></indexterm>
<indexterm role="cp"><primary>separación silábica, definiendo</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\hyphenation{<replaceable>word1</replaceable> ...}
</screen>
<para>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, <literal>-</literal>.
</para>
<para>Aquí hay un ejemplo:
</para>
<screen>\hyphenation{hat-er il-lit-e-ra-ti tru-th-i-ness}
</screen>
<para>Utiliza  letras  minúsculas.   &tex;  solo  dividirá  si  la  palabra
coincide   exactamente,  no   se   intentan  inflexiones.    Múltiples
<literal>\hyphenation</literal> los comandos se acumulan.
</para>
<!-- xx Vuelve a alinear en LaTeX-fr que también menciona fontenc, y eso -->
<!-- babel/polyglossia ya carga los patrones de separación de sílabas, y -->
<!-- tienes que declarar solo palabras no existentes. -->


</sect1>
<sect1 label="9.8" id="_005clinebreak-y-_005cnolinebreak">
<title><literal>\linebreak</literal> y <literal>\nolinebreak</literal></title>

<anchor id="_005clinebreak"/><anchor id="_005cnolinebreak"/><indexterm role="fn"><primary>\linebreak</primary></indexterm>
<indexterm role="fn"><primary>\nolinebreak</primary></indexterm>
<indexterm role="cp"><primary>saltos de línea, forzando</primary></indexterm>
<indexterm role="cp"><primary>saltos de línea, previniendo</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\linebreak
\linebreak[<replaceable>cero-a-cuatro</replaceable>]
</screen>
<para>o uno de estos.
</para>
<screen>\nolinebreak
\nolinebreak[<replaceable>cero-a-cuatro</replaceable>]
</screen>
<para>Anima o desalienta un salto de línea.  El <replaceable>cero-a-cuatro</replaceable> 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, <literal>\nolinebreak[1]</literal> 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
(véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Aquí le decimos  a &latex; que un  buen lugar para poner  un salto de
línea es después del texto legal estándar.
</para>
<screen>\boilerplatelegal{} \linebreak[2]
Alentamos especialmente las solicitudes de miembros de tradicionalmente
grupos subrepresentados.
</screen>
<para>Cuando emite  <literal>\linebreak</literal>, los espacios  en la línea  se estiran
para que  el punto  de quiebre alcance  el margen  derecho.  Véase <link linkend="_005c_005c">\\</link>
y&#160;<link linkend="_005cnewline">\newline</link>, para que los espacios no se extiendan.
</para>

</sect1>
</chapter>
<chapter label="10" id="Salto-de-p_00e1gina">
<title>Salto de página</title>

<indexterm role="cp"><primary>salto de página</primary></indexterm>
<indexterm role="cp"><primary>rompiendo páginas</primary></indexterm>

<para>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.
</para>
<!-- crédito: H Vogt https://tex.stackexchange.com/a/115563 -->
<indexterm role="cp"><primary>badness</primary></indexterm>
<para>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 <firstterm>badness</firstterm> 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.
</para>
<para>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.
</para>
<para>Véase <link linkend="Composici_00f3n">Composición</link>, para obtener más  material relevante para el salto
de página.
</para>


<sect1 label="10.1" id="_005cclearpage-y-_005ccleardoublepage">
<title><literal>\clearpage</literal> y <literal>\cleardoublepage</literal></title>

<anchor id="_005cclearpage"/><indexterm role="fn"><primary>\clearpage</primary></indexterm>
<indexterm role="cp"><primary>enjuagar flotantes y comenzar una página</primary></indexterm>
<indexterm role="cp"><primary>comenzar una nueva página y borrar flotantes</primary></indexterm>
<anchor id="_005ccleardoublepage"/><indexterm role="fn"><primary>\cleardoublepage</primary></indexterm>
<indexterm role="cp"><primary>comenzando en una página de la derecha</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\clearpage
</screen>
<para>o
</para>
<screen>\cleardoublepage
</screen>
<para>Finaliza  la  página  actual  y genera  todas  las  figuras  flotantes
pendientes y tablas (véase <link linkend="Flotantes">Flotantes</link>).   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,
<literal>\cleardoublepage</literal>  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
<literal>\clearpage</literal>  es  robusto   mientras  <literal>\cleardoublepage</literal>  es
frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>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.
</para>
<!-- crédito: https://www.tex.ac.uk/FAQ-reallyblank.html -->
<para>El comando <literal>\cleardoublepage</literal> 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.
</para>
<screen>\let\origdoublepage\cleardoublepage
\newcommand{\clearemptydoublepage}{%
  \clearpage
  {\pagestyle{empty}\origdoublepage}%
}
</screen>
<para>Si deseas  que el  comando <literal>\chapter</literal>  estándar de  &latex; haga
esto,           entonces           agrega           la           línea
<literal>\let\cleardoublepage\clearemptydoublepage</literal>. (Por  supuesto, esto
afecta  todos los  usos  de <literal>\cleardoublepage</literal>,  no  solo uno  en
<literal>\chapter</literal>).
</para>
<para>El  comando  <literal>\newpage</literal>  (véase <link linkend="_005cnewpage">\newpage</link>)  también  termina  la
página  actual,  pero sin  borrar  los  flotantes pendientes.   Y,  si
&latex;  está  en  modo  de dos  columnas,  entonces  <literal>\newpage</literal>
finaliza    la   columna    actual   mientras    <literal>\clearpage</literal>   y
<literal>\cleardoublepage</literal> finalizan la página actual.
</para>


</sect1>
<sect1 label="10.2" id="_005cnewpage">
<title><literal>\newpage</literal></title>

<indexterm role="fn"><primary>\newpage</primary></indexterm>
<indexterm role="cp"><primary>nueva página, comenzando</primary></indexterm>
<indexterm role="cp"><primary>comenzando una nueva página</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\newpage
</screen>
<para>Finaliza    la   página    actual.     Este    comando   es    robusto
(véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>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.
</para>
<para>Mientras que los  comandos <literal>\clearpage</literal> y <literal>\cleardoublepage</literal>
también  finalizan  la  página  actual, además  borran  los  flotantes
pendientes  (véase <link linkend="_005cclearpage-y-_005ccleardoublepage">\clearpage y  \cleardoublepage</link>).  Y,  si &latex;
está   en  modo   de  dos   columnas,  entonces   <literal>\clearpage</literal>  y
<literal>\cleardoublepage</literal>  terminan   la  página   actual,  posiblemente
dejando una  columna vacía, mientras <literal>\newpage</literal>  solo finaliza la
columna actual.
</para>
<para>A diferencia de <literal>\pagebreak</literal> (véase <link linkend="_005cpagebreak-y-_005cnopagebreak">\pagebreak y \nopagebreak</link>),
el comando  <literal>\newpage</literal> hará  que la  nueva página  comience justo
donde se solicitó.  Este
</para>
<screen>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.
</screen>
<para>hace que una nueva página  comience después de &#8216;<literal>continente</literal>&#8217;, y la
línea cortada no  se justifica a la  derecha.  Además, <literal>\newpage</literal>
no estira verticalmente la página, como lo hace <literal>\pagebreak</literal>.
</para>

</sect1>
<sect1 label="10.3" id="_005cenlargethispage">
<title><literal>\enlargethispage</literal></title>

<indexterm role="fn"><primary>\enlargethispage</primary></indexterm>
<indexterm role="cp"><primary>ampliar la página actual</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\enlargethispage{<replaceable>size</replaceable>}
\enlargethispage*{<replaceable>size</replaceable>}
</screen>
<para>Amplía  el <literal>\textheight</literal>  para  la página  actual.  El  argumento
requerido    <replaceable>size</replaceable>    debe     tener    una    longitud    rígida
(véase <link linkend="Longitudes">Longitudes</link>).  Puede ser positivo o negativo.  Este comando es
frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>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.
</para>
<para>Esto permitirá una línea adicional en la página actual.
</para>
<screen>\enlargethispage{\baselineskip}
</screen>
<para>La forma  con estrella  <literal>\enlargesthispage*</literal> 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 <literal>\pagebreak</literal> explícito.
</para>

</sect1>
<sect1 label="10.4" id="_005cpagebreak-y-_005cnopagebreak">
<title><literal>\pagebreak</literal> y <literal>\nopagebreak</literal></title>

<anchor id="_005cpagebreak"/><anchor id="_005cnopagebreak"/><indexterm role="fn"><primary>\pagebreak</primary></indexterm>
<indexterm role="fn"><primary>\nopagebreak</primary></indexterm>
<indexterm role="cp"><primary>salto de página, forzando</primary></indexterm>
<indexterm role="cp"><primary>salto de página, evitando</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\pagebreak
\pagebreak[<replaceable>cero-a-cuatro</replaceable>]
</screen>
<para>o
</para>
<screen>\nopagebreak
\nopagebreak[<replaceable>cero-a-cuatro</replaceable>]
</screen>
<para>Anima  o  desalienta  un  salto  de  página.   El  <replaceable>cero-a-cuatro</replaceable>
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,
<literal>\nopagebreak[1]</literal> 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.  (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>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.
</para>
<para>Si los usas dentro  de un párrafo, se aplica al  punto siguiente de la
línea en la que aparecen.  Así que esto
</para>
<screen>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.
</screen>
<para>no da un salto de  página en &#8216;<literal>continente</literal>&#8217;, sino en &#8216;<literal>nación</literal>&#8217;,
ya  que  ahí   es  donde  &latex;  rompe  esa   línea.   Además,  con
<literal>\pagebreak</literal> 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  <literal>\flushbottom</literal> está en  efecto esto
puede  hacer que  obtengas &#8216;<literal>Infralleno  \vbox (incorrecto  10000)
ocurrió  mientras  \output  está activo</literal>&#8217;.   Véase <link linkend="_005cnewpage">\newpage</link>,  para  un
comando que no tiene estos efectos.
</para>
<indexterm role="fn"><primary>\samepage</primary></indexterm>
<indexterm role="fn"><primary>samepage entorno</primary></indexterm>
<para>(Hay  una  declaración  obsoleta <literal>\samepage</literal>,  que  intenta  solo
permitir  un  salto de  línea  entre  dos  párrafos.  Hay  un  entorno
relacionado  <literal>samepage</literal>,  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 <ulink url="https://texfaq.org/FAQ-nopagebrk">https://texfaq.org/FAQ-nopagebrk</ulink>).
</para>

</sect1>
</chapter>
<chapter label="11" id="Notas-al-pie">
<title>Notas al pie</title>

<indexterm role="cp"><primary>notas al pie, crear</primary></indexterm>

<para>Coloca una  nota a  pie de página  en la parte  inferior de  la página
actual, como aquí.
</para>
<screen>No&#235;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.}
</screen>
<para>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.
</para>
<para>También puedes producir notas al pie combinando <literal>\footnotemark</literal> y
los  comandos   <literal>\footnotetext</literal>,  que   es  útil  en   casos  con
circunstancias especiales.
</para>
<para>Para  que las  referencias bibliográficas  salgan a  pie de  página es
necesario  incluir  un  estilo bibliográfico  con  ese  comportamiento
(véase <link linkend="Usar-BibTeX">Usar BibTeX</link>).
</para>


<sect1 label="11.1" id="_005cfootnote">
<title><literal>\footnote</literal></title>

<indexterm role="fn"><primary>\footnote</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\footnote{<replaceable>text</replaceable>}
\footnote[<replaceable>number</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Coloca <replaceable>text</replaceable> como nota al pie al final de la página actual.
</para>
<screen>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.''}
</screen>
<para>El argumento opcional <replaceable>number</replaceable> te permite especificar el número de
la nota  al pie.   Si usas  esto, entonces  &latex; no  incrementa el
contador <literal>footnote</literal>.
</para>
<indexterm role="cp"><primary>notas al pie, símbolos en lugar de números</primary></indexterm>
<indexterm role="fn"><primary>\fnsymbol, y notas al pie</primary></indexterm>
<indexterm role="fn"><primary>\@fnsymbol</primary></indexterm>
<para>De  manera   predeterminada,  &latex;   usa  números   arábigos  como
marcadores   de   notas  al   pie.    Cambia   esto  con   algo   como
<literal>\renewcommand{\thefootnote}{\fnsymbol{footnote}}</literal>,     que
utiliza una  secuencia de símbolos (véase <link linkend="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">\alph  \Alph \arabic \roman
\Roman  \fnsymbol</link>).  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
<literal>\setcounter{footnote}{0}</literal>.
</para>
<para>&latex;  determina  el  espaciado  de   las  notas  al  pie  con  dos
parámetros.
</para>
<indexterm role="cp"><primary>parámetros de nota al pie</primary></indexterm>
<indexterm role="cp"><primary>parámetros, para notas al pie</primary></indexterm>

<variablelist><varlistentry><term><indexterm role="fn"><primary>\footnoterule</primary></indexterm><literal>\footnoterule</literal>
</term><listitem><anchor id="footnote-footnoterule"/><para>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  <literal>slides</literal>, donde  no  aparece) es:  espesor vertical  de
<literal>0.4pt</literal>, y tamaño horizontal  de <literal>0.4\columnwidth</literal> de largo.
Cambia la regla con algo como esto.
</para>
<!-- Agregación de créditos: https://tex.stackexchange.com/a/21917 -->
<screen>\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
</screen>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\footnotesep</primary></indexterm><literal>\footnotesep</literal>
</term><listitem><anchor id="footnote-footnotesep"/><indexterm role="cp"><primary>strut</primary></indexterm>
<para>La  altura  del  puntal  colocado  al comienzo  de  la  nota  al  pie.
(véase <link linkend="_005cstrut">\strut</link>).  De  manera predeterminada, esto se  establece en el
puntal normal para <literal>\footnotesize</literal> fuentes (véase <link linkend="Tama_00f1os-de-los-tipos-de-letra">Tamaños de los
tipos de  letra</link>), por  lo tanto  no hay  espacio adicional  entre las
notas al  pie.  Este  es &#8216;<literal>6.65pt</literal>&#8217; para  &#8216;<literal>10pt</literal>&#8217;, &#8216;<literal>7.7pt</literal>&#8217;
para  &#8216;<literal>11pt</literal>&#8217; y  &#8216;<literal>8.4pt</literal>&#8217; para  &#8216;<literal>12pt</literal>&#8217;.  Cambio  como con
<literal>\setlength{\footnotesep}{11pt}</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>El comando <literal>\footnote</literal> es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>El valor  predeterminado de  &latex; pone muchas  restricciones sobre
dónde puedes usar un <literal>\footnote</literal>;  por ejemplo, no lo puedes usar
en un  argumento para  un comando  de seccionado  como <literal>\chapter</literal>
(solo se puede  usar en modo de párrafo;  véase <link linkend="Modos">Modos</link>).  Hay algunas
soluciones; ve las siguientes secciones.
</para>
<indexterm role="cp"><primary>footnotes, en una minipágina</primary></indexterm>
<indexterm role="cp"><primary>mpfootnote contador</primary></indexterm>
<para>En  un entorno  <literal>minipage</literal>,  el comando  <literal>\footnote</literal> usa  el
contador <literal>mpfootnote</literal> en lugar  del contador <literal>footnote</literal>, 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.  Véase <link linkend="minipage">minipage</link> y
<link linkend="Notas-al-pie-en-una-tabla">Notas al pie en una tabla</link>.
</para>

</sect1>
<sect1 label="11.2" id="_005cfootnotemark">
<title><literal>\footnotemark</literal></title>

<indexterm role="fn"><primary>\footnotemark</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\footnotemark
\footnotemark[<replaceable>number</replaceable>]
</screen>
<para>Coloca la  marca de nota al  pie actual en el  texto. Para especificar
texto  asociado  para  la nota  al  pie&#160;<link linkend="_005cfootnotetext">\footnotetext</link>.   El
argumento <replaceable>number</replaceable>  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 (véase <link linkend="Modos">Modos</link>).
</para>
<para>Si  usas  <literal>\footnotemark</literal>  sin el  argumento  opcional,  entonces
incrementa  el  contador <literal>footnote</literal>,  pero  si  usas el  contador
opcional  <replaceable>number</replaceable>  entonces  no  lo hace.  El  siguiente  ejemplo
produce varios marcadores consecutivos de notas al pie que se refieren
a la misma nota al pie.
</para>
<screen>El   primer  teorema\footnote{Debido   a   Gauss.}   y  el   segundo
teorema\footnotemark[\value{footnote}]       y       el       tercer
teorema.\footnotemark[\value{footnote}]
</screen>
<para>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  (<literal>\thanks</literal>  es   una  versión  de
<literal>\footnote</literal>), dando a mano el número de la nota al pie.
</para>
<screen>\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
</screen>
<para>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.
</para>
<screen>\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é.
</screen>
<indexterm role="cp"><primary>package, <literal>cleveref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>cleveref</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>hyperref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>hyperref</literal> package</primary></indexterm>

<para>Este ejemplo logra lo mismo usando el paquete <literal>cleveref</literal>.
</para>
<!-- del usuario SE Jake https://tex.stackexchange.com/a/10116/339 -->
<screen>\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}
</screen>
<indexterm role="cp"><primary>package, <literal>hyperref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>hyperref</literal> package</primary></indexterm>

<para>Funcionará con el paquete <literal>hyperref</literal>.
</para>

</sect1>
<sect1 label="11.3" id="_005cfootnotetext">
<title><literal>\footnotetext</literal></title>

<indexterm role="fn"><primary>\footnotetext</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\footnotetext{<replaceable>text</replaceable>}
\footnotetext[<replaceable>number</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Coloca <replaceable>text</replaceable> en la parte inferior  de la página como nota al pie.
Se empareja  con <literal>\footnotemark</literal> (véase <link linkend="_005cfootnotemark">\footnotemark</link>)  y puede
venir en cualquier lugar después de ese comando, pero debe aparecer en
modo  de  párrafo  externo  (véase <link linkend="Modos">Modos</link>).   El  argumento  opcional
<replaceable>number</replaceable> cambia el número de la marca de nota al pie.
</para>
<para>Véase <link linkend="_005cfootnotemark">\footnotemark</link> y&#160;<link linkend="Notas-al-pie-en-una-tabla">Notas al pie en una tabla</link>, para usar
en ejemplos
</para>

</sect1>
<sect1 label="11.4" id="Notas-a-pie-de-p_00e1gina-en-los-t_00edtulos-de-las-secciones">
<title>Notas a pie de página en los títulos de las secciones</title>

<indexterm role="cp"><primary>Notas a pie de página, en los títulos de las secciones</primary></indexterm>
<indexterm role="cp"><primary>tabla de contenido, evitando notas al pie de página</primary></indexterm>

<para>Pone una nota al pie en el título de una sección, como en:
</para>
<screen>\section{Juegos completos\protect\footnote{Este material se debe a
  ...}}
</screen>
<para>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 <literal>\section</literal>
</para>
<screen>\section[Por favor]{Por favor\footnote{%
  ¡No incluyas notas al pie en los encabezados de capítulos y
   secciones!}}
</screen>
<para>No se necesita <literal>\protect</literal> delante de <literal>\footnote</literal> aquí porque
lo que se mueve a la tabla de contenido es el argumento opcional.
</para>

</sect1>
<sect1 label="11.5" id="Notas-al-pie-en-una-tabla">
<title>Notas al pie en una tabla</title>

<indexterm role="cp"><primary>nota al pie, en una tabla</primary></indexterm>

<para>Dentro  de  un  entorno   <literal>tabular</literal>  o  <literal>array</literal>  el  comando
<literal>\footnote</literal> 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 <literal>minipage</literal> como aquí (véase <link linkend="minipage">minipage</link>).
</para>
<screen>\begin{center}
  \begin{minipage}{\textwidth} \centering
     \begin{tabular}{l|l}
       \textsc{Barco} &amp;\textsc{Libro} \\ \hline
       \textit{HMS Sophie} &amp;Maestro y Comandante \\
       \textit{HMS Polychrest} &amp;Capitán de puesto \\
       \textit{HMS Lively} &amp;Capitán de puesto \\
       \textit{HMS Surprise} &amp;Un número de libros\footnote{%
                                  Comenzando con \textit{HMS Sorpresa}.}
     \end{tabular}
  \end{minipage}
\end{center}
</screen>
<para>Dentro de  una <literal>minipage</literal>,  las marcas  de las  notas al  pie son
letras      minúsculas.      Cambio      que     con      algo     así
<literal>\renewcommand{\thempfootnote}{\arabic{mpfootnote}}</literal>
(véase <link linkend="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">\alph \Alph \arabic \roman \Roman \fnsymbol</link>).
</para>
<para>Las notas al pie en el  ejemplo anterior aparecen en la parte inferior
de la <literal>minipage</literal>.  Para que aparezcan  en la parte inferior de la
página principal, como parte de la  secuencia regular de notas al pie,
utiliza <literal>\footnotemark</literal> y <literal>\footnotetext</literal> empareja y crea un
nuevo contador.
</para>
<screen>\newcounter{mpFootnoteValueSaver}
\begin{center}
  \begin{minipage}{\textwidth}
    \setcounter{mpFootnoteValueSaver}{\value{footnote}} \centering
     \begin{tabular}{l|l}
       \textsc{Mujer} &amp;\textsc{Relación} \\ \hline
       Mona &amp;Adjunto\footnotemark\\
       Diana Villiers &amp;Eventual esposa \\
       Christine Hatherleigh Wood &amp;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}
</screen>
<indexterm role="cp"><primary>package, <literal>tablefootnote</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>tablefootnote</literal> package</primary></indexterm>
<para>Para  un   entorno  <literal>table</literal>   flotante
(véase <link linkend="table">table</link>), usa el paquete <literal>tablefootnote</literal>.
</para>
<screen>\usepackage{tablefootnote} % en el preámbulo
   ...
\begin{table}
  \centering
     \begin{tabular}{l|l}
     \textsc{Fecha} &amp;\textsc{Campaña} \\ \hline
     1862             &amp; Fuerte Donelson \\
     1863             &amp;Vicksburg \\
     1865             &amp;Ejército de Virginia del Norte\tablefootnote{%
                          Pone fin a la guerra.}
     \end{tabular}
    \caption{Fuerzas capturadas por US Grant}
\end table}
</screen>
<para>La  nota al  pie aparece  en la  parte inferior  de la  página y  está
numerada en secuencia con otras notas al pie.
</para>

</sect1>
<sect1 label="11.6" id="Notas-al-pie-de-notas-al-pie">
<title>Notas al pie de notas al pie</title>

<indexterm role="cp"><primary>nota al pie, de una nota al pie</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>bigfoot</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>bigfoot</literal> package</primary></indexterm>
<para>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 <literal>bigfoot</literal>  amplía el
mecanismo  de  notas  al  pie predeterminado  de  &latex;  en  muchas
maneras, incluyendo permitir estos dos, como en este ejemplo.
</para>
<screen>\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.}}
</screen>

</sect1>
</chapter>
<chapter label="12" id="Definiciones">
<title>Definiciones</title>

<indexterm role="cp"><primary>definiciones</primary></indexterm>

<para>&latex;  tiene soporte  para crear  nuevos comandos  de muchos  tipos
diferentes.
</para>


<sect1 label="12.1" id="_005cnewcommand-y-_005crenewcommand">
<title><literal>\newcommand</literal> y <literal>\renewcommand</literal></title>

<anchor id="_005cnewcommand"/><anchor id="_005crenewcommand"/><indexterm role="fn"><primary>\newcommand</primary></indexterm>
<indexterm role="fn"><primary>\renewcommand</primary></indexterm>
<indexterm role="cp"><primary>comandos, definiendo nuevos</primary></indexterm>
<indexterm role="cp"><primary>comandos, redefiniendo</primary></indexterm>
<indexterm role="cp"><primary>definir un nuevo comando</primary></indexterm>
<indexterm role="cp"><primary>redefinir un comando</primary></indexterm>
<indexterm role="cp"><primary>nuevos comandos, definiendo</primary></indexterm>

<para>Sinopsis, una de (tres formas regulares, tres formas destacadas):
</para>
<screen>\newcommand{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
\newcommand{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\newcommand{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
\newcommand*{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
\newcommand*{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\newcommand*{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
</screen>
<para>o todas las mismas posibilidades  con <literal>\renewcommand</literal> en lugar de
<literal>\newcommand</literal>:
</para>
<screen>\renewcommand{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
\renewcommand{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\renewcommand{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
\renewcommand*{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
\renewcommand*{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\renewcommand*{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
</screen>

<para>Define o redefine un  comando (ve también <literal>\DeclareRobustCommand</literal>
en <link linkend="Comandos-class-y-package">Comandos class y package</link>).
</para>
<indexterm role="cp"><primary>forma estrella, definiendo nuevos comandos</primary></indexterm>
<indexterm role="cp"><primary>*-forma, definiendo nuevos comandos</primary></indexterm>
<indexterm role="fn"><primary>\long</primary></indexterm>
<para>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 <literal>\long</literal>).   Con la  forma predeterminada,  los argumentos
pueden ser varios párrafos.
</para>
<para>Estos  son   los  parámetros  (a  continuación   se  muestran  algunos
ejemplos):
</para>
<variablelist><varlistentry><term><replaceable>cmd</replaceable>
</term><listitem><para>Requerido; <literal>\<replaceable>cmd</replaceable></literal> es el  nombre del comando.  Debe comenzar
con una barra invertida, <literal>\</literal>, y no debe comenzar con la cadena de
cuatro caracteres <literal>\end</literal>.  Para <literal>\newcommand</literal>, no debe estar
ya  definido.  Para  <literal>\renewcommand</literal>, este  nombre ya  debe estar
definido.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>nargs</replaceable>
</term><listitem><para>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.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>optargdefault</replaceable>
</term><listitem><indexterm role="cp"><primary>argumentos opcionales, definir y usar</primary></indexterm>
<indexterm role="cp"><primary>argumentos, opcional, definir y usar</primary></indexterm>
<para>Opcional; si este argumento está presente entonces el primer argumento
de   <literal>\<replaceable>cmd</replaceable></literal>   es   opcional,   con   valor   predeterminado
<replaceable>optargdefault</replaceable>   (que   puede   ser   la   cadena   vacía).    Si
<replaceable>optargdefault</replaceable>  no está  presente  entonces <literal>\<replaceable>cmd</replaceable></literal>  no
toma un argumento opcional.
</para>
<para>Es decir,  si <literal>\<replaceable>cmd</replaceable></literal>  se llama  con el  siguiente argumento
entre  corchetes,  como en  <literal>\<replaceable>cmd</replaceable>[<replaceable>optval</replaceable>]{...}...</literal>,
entonces   dentro  de   <replaceable>defn</replaceable>,  el   parámetro&#160;<literal>#1</literal>  se
establece  en <replaceable>optval</replaceable>.   Por otro  lado, si  <literal>\<replaceable>cmd</replaceable></literal> se
llama sin  los siguientes corchetes  entonces dentro de  <replaceable>defn</replaceable> se
establece el parámetro <literal>#1</literal>  a <replaceable>optargdefault</replaceable>.  En cualquier
caso, los argumentos requeridos comienzan con <literal>#2</literal>.
</para>
<para>Omitir <literal>[<replaceable>optargdefault</replaceable>]</literal> de  la definición es completamente
diferente de dar los corchetes con contenido vacío, como en <literal>[]</literal>.
El primero dice que el comando  que se define no requiere un argumento
opcional, por  lo que <literal>#1</literal>  es el primer argumento  requerido (si
<inlineequation><mathphrase><replaceable>nargs</replaceable>  &#8805;  1</mathphrase></inlineequation>);  este último  establece  el  argumento
opcional <literal>#1</literal> a la cadena  vacía como valor predeterminado, si no
hay un argumento opcional dado en la llamada.
</para>
<para>De manera similar, omitir <literal>[<replaceable>optval</replaceable>]</literal> de una llamada también
es completamente diferente  de dar los corchetes  con contenido vacío.
El anterior  establece <literal>#1</literal> al valor  de <replaceable>optval</replaceable> (suponiendo
que el comando se definió para tomar un argumento opcional); el último
<literal>#1</literal> configurado  a la cadena  vacía, al igual que  con cualquier
otro valor.
</para>
<para>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.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>defn</replaceable>
</term><listitem><indexterm role="cp"><primary>parámetros, sustituir</primary></indexterm>
<para>Requerido;  el  texto   que  se  sustituirá  por   cada  aparición  de
<literal>\<replaceable>cmd</replaceable></literal>.  Los  parámetros   <literal>#1</literal>,  <literal>#2</literal>,  &#8230;,
<literal>#<replaceable>nargs</replaceable></literal>  se  reemplazan  por  los  valores  proporcionados
cuando se llama al comando (o por <replaceable>optargdefault</replaceable> en el caso de un
argumento opcional  no especificado  en la llamada,  como se  acaba de
explicar).
</para>
</listitem></varlistentry></variablelist>
<indexterm role="cp"><primary>espacios en blanco, después de las secuencias de control</primary></indexterm>
<para>&tex;  ignora los  espacios en  blanco en  la fuente  después de  una
secuencia  de   control  (véase <link linkend="Secuencias-de-control">Secuencias  de  control</link>),   como  en
&#8216;<literal>\cmd </literal>&#8217;.   Si quieres un  espacio allí, una solución  es escribir
<literal>{}</literal> después del comando (&#8216;<literal>\cmd{} </literal>&#8217;), y otra solución es
usar un espacio de control explícito (&#8216;<literal>\cmd\ </literal>&#8217;).
</para>
<para>Un   ejemplo    simple   de   definición   de    un   nuevo   comando:
<literal>\newcommand{\RS}{Robin   Smith}</literal>  da   como  resultado   que
<literal>\RS</literal>  sea reemplazado  por  el texto  más  largo.  Redefinir  un
comando               existente              es               similar:
<literal>\renewcommand{\qedsymbol}{{\small QED}}</literal>.
</para>
<para>Si usas  <literal>\newcommand</literal> y  el nombre  del comando  ya se  ha usado
entonces obtienes  algo como  &#8216;<literal>Error de  LaTeX: Comando  \fred ya
definido.  O nombre  \end...  ilegal,  ve  la p.192  del manual</literal>&#8217;.   De
manera similar, si  usas <literal>\renewcommand</literal> y el  nombre del comando
no se ha  definido, obtienes algo como &#8216;<literal>Error de  LaTeX: \hank no
se ha definido</literal>&#8217;.
</para>
<para>Aquí  la primera  definición  crea  un comando  sin  argumentos, y  la
segunda, un comando con un argumento requerido:
</para>
<screen>\newcommand{\student}{Ms~O'Leary}
\newcommand{\defref}[1]{Definición~\ref{#1}}
</screen>
<para>Usa el primero como en  <literal>Te recomiendo \student{}</literal>.  El segundo
tiene un argumento variable, por lo que <literal>\defref{def:basis}</literal> se
expande  a  <literal>Definición~\ref{def:basis}</literal>,   que  finalmente  se
expande a algo así como &#8216;<literal>Definición~3.14</literal>&#8217;.
</para>
<para>Del   mismo    modo,   pero    con   dos    argumentos   obligatorios:
<literal>\newcommand{\nbym}[2]{$#1  \times   #2$}</literal>  se   invoca  como
<literal>\nbym{2}{k}</literal>.
</para>
<para>Este ejemplo tiene un argumento opcional.
</para>
<screen>\newcommand{\salutation}[1][Señor o señora]{Estimado #1:}
</screen>
<para>Entonces  <literal>\salutation</literal>   da  &#8216;<literal>Estimado  señor   o  señora:</literal>&#8217;
mientras   <literal>\salutation[John]</literal>   da  &#8216;<literal>Querido   John:</literal>&#8217;.    Y
<literal>\salutation[]</literal> da &#8216;<literal>Estimado :</literal>&#8217;.
</para>
<para>Este   ejemplo  tiene   un   argumento  opcional   y  dos   argumentos
obligatorios.
</para>
<screen>\newcommand{\lawyers}[3][empresa]{#2, #3 y~#1}
Empleo a \lawyers[Howe]{Dewey}{Cheatem}.
</screen>
<para>El resultado  es &#8216;<literal>Empleo  Dewey, Cheatem  y Howe</literal>&#8217;.   El argumento
opcional,  <literal>Howe</literal>,  está  asociado con  <literal>#1</literal>,  mientras  que
<literal>Dewey</literal>   y   <literal>Cheatem</literal>   están  asociados   con   <literal>#2</literal>
y&#160;<literal>#3</literal>.        Debido      al       argumento      opcional,
<literal>\lawyers{Dewey}{Cheatem}</literal> dará la salida &#8216;<literal>Empleo Dewey,
Cheatem y Howe</literal>&#8217;.
</para>
<para>Las llaves alrededor  de <replaceable>defn</replaceable> no definen un grupo,  es decir, no
delimitan  el  alcance  del  resultado de  expandir  <replaceable>defn</replaceable>.   Por
ejemplo,  con  <literal>\newcommand{\shipname}[1]{\it #1}</literal>,  en  esta
oración,
</para>
<screen>El \shipname{Monitor} se encontró con el \shipname{Merrimac}.
</screen>
<para>las  palabras  &#8216;<literal>se  encontró  con   el</literal>&#8217;,  y  el  punto,  estarían
incorrectamente  en  cursiva.   La  solución  es  poner  otro  par  de
corchetes          dentro          de          la          definición:
<literal>\newcommand{\shipname}[1]{{\it #1}}</literal>.
</para>

<sect2 label="12.1.1" id="Secuencias-de-control">
<title>Secuencia de control, palabra de control y símbolo de control</title>

<indexterm role="cp"><primary>secuencias de control</primary></indexterm>

<para>Al leer la  entrada &tex; convierte el flujo de  caracteres leídos en
una secuencia de  <firstterm>tókenes</firstterm>. Cuando &tex; ve  una barra invertida
<literal>\</literal>,  la hará  manejar los  siguientes caracteres  de una  manera
especial para hacer un token de <firstterm>secuencia de control</firstterm>.
</para>
<para>Las secuencias de control se dividen en dos categorías:
</para>
<itemizedlist><listitem><indexterm role="cp"><primary>palabra de control, definir</primary></indexterm>
<para><firstterm>palabra de control</firstterm>, cuando la secuencia de control se obtiene de
una  <literal>\</literal>  seguida de  al  menos  una  letra ASCII  (<literal>A-Z</literal>  y
<literal>a-z</literal>), seguida de al menos una no letra.
</para>
</listitem><listitem><indexterm role="cp"><primary>símbolo de control, definir</primary></indexterm>
<para><firstterm>símbolo de control</firstterm>, cuando la secuencia de control se obtiene de
una <literal>\</literal> seguida de un carácter que no sea una letra.
</para></listitem></itemizedlist>
<para>La secuencia de  caracteres que se encuentran después  de una <literal>\</literal>
también se denominan el <firstterm>nombre de la secuencia de control</firstterm>.
</para>
<para>Los espacios en blanco después de  una palabra de control se ignoran y
no  producen espacio  en  blanco en  la  salida (véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand  y
\renewcommand</link> y <link linkend="_005c_0028SPACE_0029">\(SPACE)</link>).
</para>
<para>Así como el  comando <literal>\relax</literal> no hace nada,  la siguiente entrada
simplemente  imprimirá &#8216;<literal>¡Hola!</literal>&#8217;  :
</para>
<screen>¡Hol\relax <!-- /@w --> <!-- /@w --> <!-- /@w -->
 <!-- /@w --> <!-- /@w --> <!-- /@w -->a!
</screen>
<para>Esto se  debe a que los  espacios en blanco después  de <literal>\relax</literal>,
incluida la  nueva línea, son ignorados,  y los espacios en  blanco al
principio  de  una línea  también  son  ignorados (véase <link linkend="Espacios-en-blanco-iniciales">Espacios  en
blanco iniciales</link>).
</para>
</sect2>
</sect1>
<sect1 label="12.2" id="_005cprovidecommand">
<title><literal>\providecommand</literal></title>

<indexterm role="fn"><primary>\providecommand</primary></indexterm>
<indexterm role="cp"><primary>comandos, definiendo nuevos</primary></indexterm>
<indexterm role="cp"><primary>definir un nuevo comando</primary></indexterm>
<indexterm role="cp"><primary>nuevos comandos, definiendo</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\providecommand{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
\providecommand{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\providecommand{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
\providecommand*{\<replaceable>cmd</replaceable>}{<replaceable>defn</replaceable>}
\providecommand*{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>defn</replaceable>}
\providecommand*{\<replaceable>cmd</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>defn</replaceable>}
</screen>
<para>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 <literal>\newcommand</literal>.  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.  Véase <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand  y \renewcommand</link>, para
la descripción de los argumentos.
</para>
<para>Este ejemplo
</para>
<screen>\providecommand{\myaffiliation}{Colegio de San Miguel}
\providecommand{\myafiliation}{Lyc\'ee Henri IV}
De \myafiliation.
</screen>
<para>produce   &#8216;<literal>De  Saint   Michael's  College.</literal>&#8217;    A  diferencia   de
<literal>\newcommand</literal>,  el uso  repetido  de <literal>\providecommand</literal>  para
(intentar) definir <literal>\myaffiliation</literal> no da error.
</para>
</sect1>
<sect1 label="12.3" id="_005cmakeatletter-y-_005cmakeatother">
<title><literal>\makeatletter</literal> y <literal>\makeatother</literal></title>

<anchor id="_005cmakeatletter"/><anchor id="_005cmakeatother"/><indexterm role="fn"><primary>\makeatother</primary></indexterm>
<indexterm role="fn"><primary>\makeatother</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\makeatletter
  ... definición de comandos con @ en su nombre ..
\makeatother
</screen>
<para>Usa este par cuando redefines los  comandos de &latex; que se nombran
con   un   carácter  arroba&#160;&#8216;<literal><literal>@</literal></literal>&#8217;.    La   declaración
<literal>\makeatletter</literal> hace que el carácter de arroba tenga el código de
categoría    de    una    letra,   code&#160;11.     La    declaración
<literal>\makeatother</literal>  establece el  código  de categoría  del signo  de
arroba a code&#160;12, su valor predeterminado.
</para>
<para>A medida  que &tex; lee  caracteres, asigna a  cada uno un  código de
categoría, o
<indexterm role="cp"><primary>catcode</primary></indexterm>
<indexterm role="cp"><primary>código de categoría de caracter</primary></indexterm>
<indexterm role="cp"><primary>código de categoría, carácter</primary></indexterm>
<firstterm>catcode</firstterm>. Por ejemplo, asigna el carácter&#160;&#8216;<literal><literal>\</literal></literal>&#8217; de
barra invertida el catcode&#160;0.  Nombres  de comandos constan de un
carácter  categoría&#160;0, normalmente  barra invertida,  seguido por
letras,  caracteres de  categoría&#160;11  (excepto que  un nombre  de
comando también puede constar  de un carácter categoría&#160;0 seguido
de un solo símbolo que no es una letra).
</para>
<para>El  código fuente  de  &latex;  tiene la  convención  de que  algunos
comandos usan <literal>@</literal> 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&#160;12.
</para>
<para>Usa  el par  <literal>\makeatletter</literal> y  <literal>\makeatother</literal> dentro  de un
<filename>.tex</filename>, generalmente  en el preámbulo, cuando  estás definiendo o
redefiniendo comandos nombrados con  <literal>@</literal>, haciendo que rodeen tu
definición.   No  los  uses  dentro  de  los  archivos  <filename>.sty</filename>  o
<filename>.cls</filename>    ya    que    los    comandos    <literal>\usepackage</literal>    y
<literal>\documentclass</literal> ya  disponen que  la arroba  tenga el  código de
carácter de una letra, catcode&#160;11.
</para>
<indexterm role="cp"><primary>package, <literal>macros2e</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>macros2e</literal> package</primary></indexterm>
<para>Para obtener  una lista completa de  macros con un
signo      de      arroba      en      sus      nombres,      consulta
<ulink url="https://ctan.org/pkg/macros2e">https://ctan.org/pkg/macros2e</ulink>.
</para>
<para>En   este   ejemplo,   el   archivo  de   clase   tiene   un   comando
<literal>\thesis@universityname</literal> que  el usuario quiere  cambiar.  Estas
tres    líneas    deben    ir    en   el    preámbulo,    antes    del
<literal>\begin{document}</literal>.
</para>
<screen><literal>\begin{document}</literal>.
\makeatletter
\renewcommand{\thesis@universityname}{Colegio de San Miguel}
\makeatother
</screen>

</sect1>
<sect1 label="12.4" id="_005c_0040ifstar">
<title><literal>\@ifstar</literal></title>

<indexterm role="fn"><primary>\@ifstar</primary></indexterm>
<indexterm role="cp"><primary>comandos, variantes con estrella</primary></indexterm>
<indexterm role="cp"><primary>variantes con estrella, comandos</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\newcommand{\mycmd}{\@ifstar{\mycmd@star}{\mycmd@nostar}}
\newcommand{\mycmd@nostar}[<replaceable>nostar-num-args</replaceable>]{<replaceable>nostar-body</replaceable>}
\newcommand{\mycmd@star}[<replaceable>star-num-args</replaceable>]{<replaceable>star-body</replaceable>}
</screen>
<para>Muchos entornos  o comandos estándar  de &latex; tienen  una variante
con   el   mismo  nombre   pero   terminando   con  un   carácter   de
estrella&#160;<literal>*</literal>,  un  asterisco.    Algunos  ejemplos  son  los
entornos <literal>table</literal> y <literal>table*</literal> y los comandos <literal>\section</literal> y
<literal>\section*</literal>.
</para>
<para>Al   definir  entornos,   seguir  este   patrón  es   sencillo  porque
<literal>\newenvironment</literal>  y  <literal>\renewenvironment</literal>  permiten  que  el
nombre del  entorno contenga una  estrella.  Entonces solo  tienes que
escribir            <literal>\newenvironment{<replaceable>myenv</replaceable>}</literal>            o
<literal>\newenvironment{<replaceable>myenv</replaceable>*}</literal> 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 <literal>\mycmd</literal>, que mira hacia delante para ver
si le sigue una estrella.  Por ejemplo, &latex; realmente no tiene un
comando <literal>\section*</literal>;  en cambio, el comando  <literal>\section</literal> 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 <literal>\mycmd@nostar</literal>  y <literal>\mycmd@star</literal>.
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&#160;<literal>@</literal> en  su  nombre se  debe
encerrar  dentro de  un bloque  <literal>\makeatletter ...  \makeatother</literal>
(véase <link linkend="_005cmakeatletter-y-_005cmakeatother">\makeatletter y \makeatother</link>).
</para>
<para>Este ejemplo de <literal>\@ifstar</literal> define  el comando <literal>\ciel</literal> y una
variante <literal>\ciel*</literal>.   Ambos tienen un argumento  obligatorio.  Una
llamada a  <literal>\ciel{blue}</literal> devolverá  &quot;cielo azul  no estrellado&quot;
mientras <literal>\ciel*{night}</literal> devolverá &quot;cielo nocturno estrellado&quot;.
</para>
<screen>\makeatletter
\newcommand*{\ciel@unstarred}[1]{no estrellado #1 cielo}
\newcommand*{\ciel@starred}[1]{cielo estrellado #1}
\newcommand*{\ciel}{\@ifstar{\ciel@starred}{\ciel@unstarred}}
\makeatother
</screen>
<para>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    <literal>``Mi     nombre    es    \agentsecret*{Bond},
\agentsecret{James}{Bond}.''</literal>  es   equivalente  a   ingresar  los
comandos  <literal>``Mi   nombre  es   \textsc{Bond},  \textit{James}
textsc{Bond}.''</literal>
</para>
<screen>\newcommand*{\agentsecret@unstarred}[2]{\textit{#1} \textsc{#2}}
\newcommand*{\agentsecret@starred}[1]{\textsc{#1}}
\newcommand*{\agentsecret}{%
  \@ifstar{\agentsecret@starred}{\agentsecret@unstarred}}
</screen>
<para>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í  <literal>\agentsecret*{Bond}</literal>  y  <literal>\agentsecret
*<!-- /@w -->{Bond}</literal> son equivalentes. Sin embargo,  la práctica estándar es no
insertar tales espacios.
</para>
<indexterm role="cp"><primary>package, <literal>sufijo</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>sufijo</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>xparse</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>xparse</literal> package</primary></indexterm>
<para>Hay  dos  formas alternativas  de
realizar   el  trabajo   de  <literal>\@ifstar</literal>.    (1)&#160;El  paquete
<literal>suffix</literal>           permite           la           construcción
<literal>\newcommand\mycommand{<replaceable>variante-sin-estrella</replaceable>}</literal>    seguida
por <literal>\WithSuffix\newcommand\mycommand*{<replaceable>starred-variant</replaceable>}</literal>.
(2)&#160;&latex; proporciona el paquete <literal>xparse</literal>, que permite
este código:
</para>
<screen>\NewDocumentCommand\foo{s}{\IfBooleanTF#1
  {<replaceable>variante-con-estrella</replaceable>}%
  {<replaceable>variante-sin-estrella</replaceable>}%
  }
</screen>

</sect1>
<sect1 label="12.5" id="_005cnewcounter">
<title><literal>\newcounter</literal>: Asignar un contador</title>

<indexterm role="fn"><primary>\newcounter</primary></indexterm>
<indexterm role="cp"><primary>contadores, definiendo nuevos</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\newcounter{<replaceable>countername</replaceable>}
\newcounter{<replaceable>countername</replaceable>}[<replaceable>supercounter</replaceable>]
</screen>
<para>Define globalmente  un nuevo  contador llamado <replaceable>countername</replaceable>  y lo
inicializa a cero (véase <link linkend="Contadores">Contadores</link>).
</para>
<para>El  nombre <replaceable>countername</replaceable>  debe  constar únicamente  de letras.  No
comienza con una barra invertida.  Este nombre no debe estar ya en uso
por otro contador.
</para>
<para>Cuando usas el argumento opcional <literal>[<replaceable>supercounter</replaceable>]</literal> entonces
el  contador  <replaceable>countername</replaceable> se  restablecerá  a  cero siempre  que
<replaceable>supercounter</replaceable>   se  incrementa.    Por  ejemplo,   ordinariamente
<literal>subsection</literal> está numerado dentro de <literal>section</literal> para que cada
vez  que  incremente  <replaceable>sección</replaceable>, ya  sea  con  <literal>\stepcounter</literal>
(véase <link linkend="_005cstepcounter">\stepcounter</link>)             o            <literal>\refstepcounter</literal>
(véase <link linkend="_005crefstepcounter">\refstepcounter</link>),     entonces      &latex;     restablecerá
<replaceable>subsection</replaceable> a cero.
</para>
<para>Este ejemplo
</para>
<screen>\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}.
</screen>
<para>produce &#8216;<literal>El valor de asuper es 1 y el de asub es 3</literal>&#8217; y &#8216;<literal>Ahora
asuper es 2 mientras que asub es 0</literal>&#8217;.
</para>
<para>Si el  contador ya  existe, por  ejemplo ingresando  <literal>asuper</literal> dos
veces,  obtienes algo  como &#8216;<literal>Error  LaTeX: Comando  \c@asuper Ya
definido.  O name \end... ilegal, ve la p.192 del manual.</literal>&#8217;.
</para>
<para>Si  usas el  argumento opcional,  entonces el  súper contador  ya debe
existir. Al ingresar  <literal>\newcounter{jh}[lh]</literal> cuando <literal>lh</literal> no
es un contador definido obtendrás &#8216;<literal>Error LaTeX: Sin contador 'lh'
definido.</literal>&#8217;
</para>

</sect1>
<sect1 label="12.6" id="_005cnewlength">
<title><literal>\newlength</literal></title>

<indexterm role="fn"><primary>\newlength</primary></indexterm>
<indexterm role="cp"><primary>longitudes, asignando nuevas</primary></indexterm>
<indexterm role="cp"><primary>longitudes elásticas, definiendo nuevas</primary></indexterm>
<indexterm role="cp"><primary>omitir registro, &tex; simple</primary></indexterm>
<indexterm role="cp"><primary>registro de pegamento, &tex; simple</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\newlength{\<replaceable>len</replaceable>}
</screen>
<para>Asigna  un  nuevo  registro   de  longitud  (véase <link linkend="Longitudes">Longitudes</link>).   El
argumento requerido  <literal>\<replaceable>len</replaceable></literal> tiene que ser  una secuencia de
control (véase <link linkend="Secuencias-de-control">Secuencias de control</link>), y  como tal debe comenzar con
una barra invertida, <literal>\</literal>  bajo circunstancias normales.  El nuevo
registro contiene longitudes elásticas como <literal>72.27pt</literal> o <literal>1in
plus.2in  minus.1in</literal> (una  longitud  de registro  &latex;  es lo  que
&tex; llama un  <literal>skip</literal> de registro).  El valor  inicial es cero.
La secuencia de control <literal>\<replaceable>len</replaceable></literal> no debe estar definida ya.
</para>
<para>Un ejemplo:
</para>
<screen>\newlength{\graphichgt}
</screen>
<para>Si olvidas  la barra invertida, obtienes  &#8216;<literal>Insertada secuencia de
control faltante</literal>&#8217;.   Si la  secuencia de  control ya  existe, entonces
obtienes  algo  así como  &#8216;<literal>Error  LaTeX:  Comando \graphichgt  ya
definido.  O nombre \end...  ilegal, ve la p.192 del manual</literal>&#8217;.
</para>

</sect1>
<sect1 label="12.7" id="_005cnewsavebox">
<title><literal>\newsavebox</literal></title>

<indexterm role="fn"><primary>\newsavebox</primary></indexterm>
<indexterm role="cp"><primary>caja, asignando nueva</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\newsavebox{\<replaceable>cmd</replaceable>}
</screen>
<para>Define \<replaceable>cmd</replaceable>, la cadena que consta de una barra invertida seguida
de  <replaceable>cmd</replaceable>, 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
(véase <link linkend="Cajas">Cajas</link>).  El nombre del  contenedor \<replaceable>cmd</replaceable> es obligatorio,
debe comenzar  con una barra  invertida, \, y  no debe ser  un comando
definido.  Este comando es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Esto asigna un contenedor y luego coloca material tipográfico en él.
</para>
<screen>\newsavebox{\logobox}
\savebox{\logobox}{LoGo}
Nuestro logo es \usebox{\logobox}.
</screen>
<para>La salida es &#8216;<literal>Nuestro logotipo es LoGo</literal>&#8217;.
</para>
<para>Si ya  hay un contenedor  definido, obtienes algo como  &#8216;<literal>Error de
LaTeX: Comando  \logobox ya definido.  O nombre \end... ilegal,  ve la
p.192 del manual</literal>&#8217;.
</para>
<para>La asignación de una caja es global.
</para>

</sect1>
<sect1 label="12.8" id="_005cnewenvironment-y-_005crenewenvironment">
<title><literal>\newenvironment</literal> y <literal>\renewenvironment</literal></title>

<anchor id="_005cnewenvironment"/><anchor id="_005crenewenvironment"/><indexterm role="fn"><primary>\newenvironment</primary></indexterm>
<indexterm role="fn"><primary>\renewenvironment</primary></indexterm>
<indexterm role="cp"><primary>entornos, definiendo</primary></indexterm>
<indexterm role="cp"><primary>definiendo nuevos entornos</primary></indexterm>
<indexterm role="cp"><primary>redefiniendo entornos</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\newenvironment{<replaceable>env</replaceable>}{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\newenvironment{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\newenvironment{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\newenvironment*{<replaceable>env</replaceable>}{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\newenvironment*{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\newenvironment*{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
</screen>
<para>o uno de estos.
</para>
<screen>\renewenvironment{<replaceable>env</replaceable>}{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\renewenvironment{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\renewenvironment{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\renewenvironment*{<replaceable>env</replaceable>}{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\renewenvironment*{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
\renewenvironment*{<replaceable>env</replaceable>}[<replaceable>nargs</replaceable>][<replaceable>optargdefault</replaceable>]{<replaceable>begdef</replaceable>}{<replaceable>enddef</replaceable>}
</screen>
<para>Definir  o  redefinir  el  entorno   <replaceable>env</replaceable>,  es  decir,  crear  el
constructor       <literal>\begin{<replaceable>env</replaceable>}       ...       <replaceable>body</replaceable>
... \end{<replaceable>env</replaceable>}</literal>.
</para>
<indexterm role="cp"><primary>forma-<literal>*</literal> de comandos de entorno</primary></indexterm>
<para>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.
</para>
<variablelist><varlistentry><term><replaceable>env</replaceable>
</term><listitem><para>Requerido; el  nombre del  entorno.  Se  compone sólo  de letras  o el
carácter forma-<literal>*</literal>  y, por  lo tanto, no  comienza con  una barra
invertida, <literal>\</literal>.  No debe comenzar con la cadena <literal>end</literal>.  Para
<literal>\newenvironment</literal>, el nombre  <replaceable>env</replaceable> no debe ser  el nombre de
un entorno ya  existente, y también el  comando <literal>\<replaceable>env</replaceable></literal> debe
ser indefinido.  Para <literal>\renewenvironment</literal>,  <replaceable>env</replaceable> debe ser el
nombre de un entorno existente.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>nargs</replaceable>
</term><listitem><para>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       <literal>\begin</literal>,      como       en
<literal>\begin{<replaceable>env</replaceable>}{<replaceable>arg1</replaceable>}      ...      {<replaceable>argn</replaceable>}</literal>.
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.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>optargdefault</replaceable>
</term><listitem><para>Opcional;  si esto  está presente,  entonces el  primer argumento  del
entorno   definido   es   opcional,  con   el   valor   predeterminado
<replaceable>optargdefault</replaceable> (que puede ser la  cadena vacía).  Si esto no está
en la definición, entonces el entorno no acepta un argumento opcional.
</para>
<para>Es decir,  cuando <replaceable>optargdefault</replaceable>  está presente en  la definición
del entorno entonces puedes comenzar el entorno con corchetes, como en
<literal>\begin{<replaceable>env</replaceable>}[<replaceable>optval</replaceable>]{...} ... \end{<replaceable>env</replaceable>}</literal>.
En  este  caso, dentro  de  <replaceable>begdefn</replaceable>  el parámetro  <literal>#1</literal>  se
establece   en    el   valor    de   <replaceable>optval</replaceable>.    Si    llamas   a
<literal>\begin{<replaceable>env</replaceable>}</literal>    sin   corchetes,    luego   dentro    de
<replaceable>begdefn</replaceable>  el  parámetro  <literal>#1</literal>  es establecido  en  el  valor
predeterminado  <replaceable>optargdefault</replaceable>.   En  cualquier  caso,  cualquier
argumento requerido comienza con <literal>#2</literal>.
</para>
<para>Omitir  <literal>[<replaceable>myval</replaceable>]</literal>  en  la  llamada  es  diferente  a  tener
corchetes sin contenido, como en <literal>[]</literal>.  Los resultados anteriores
en <literal>#1</literal> expandiéndose a  <replaceable>optargdefault</replaceable>; esto último resulta
en <literal>#1</literal> expandiéndose a la cadena vacía.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>begdef</replaceable>
</term><listitem><para>Requerido;   el    texto   se    expande   en   cada    aparición   de
<literal>\begin{<replaceable>env</replaceable>}</literal>.   Dentro de  <replaceable>begdef</replaceable>, los  parámetros
<literal>#1</literal>, <literal>#2</literal>,  ... <literal>#<replaceable>nargs</replaceable></literal>, se sustituyen  por los
valores que  proporcionas cuando  llamas al  entorno; ve  los ejemplos
abajo.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>enddef</replaceable>
</term><listitem><para>Requerido;   el    texto   se    expande   en   cada    aparición   de
<literal>\end{<replaceable>env</replaceable>}</literal>.  Esto no puede contener ningún parámetro, es
decir, no  puedes usar  <literal>#1</literal>, <literal>#2</literal>, etc.,  aquí (pero  ve el
ejemplo final a continuación).
</para>
</listitem></varlistentry></variablelist>
<para>Todos los entornos, es decir el código <replaceable>begdef</replaceable>, el entorno body y
el código  <replaceable>enddef</replaceable> se procesan  dentro de  un grupo.  Así,  en el
primer ejemplo a continuación, el  efecto de <literal>\small</literal> se limita a
la cotización y no se extiende al material siguiendo el entorno.
</para>
<para>Si intentas definir un entorno y el nombre ya se ha utilizado entonces
obtienes algo como &#8216;<literal>Error de  LaTeX: Comando \fred ya definido. O
nombre  \end...   ilegal,  ve  la  p.192  del  manual</literal>&#8217;.   Si  intentas
redefinir un  entorno y  el nombre  aún no  se ha  utilizado, entonces
obtienes algo como &#8216;<literal>Error de LaTeX: Entorno hank indefinido.</literal>&#8217;.
</para>
<para>Este ejemplo proporciona un  entorno como <literal>quotation</literal> de &latex;
excepto que se establecerá en letra más pequeña.
</para>
<screen>\newenvironment{smallquote}{%
  \small\begin{quotation}
}{%
  \end{quotation}
}
</screen>
<para>Esto  tiene un  argumento,  que  está en  negrita  al  comienzo de  un
párrafo.
</para>
<screen>\newenvironment{point}[1]{%
  \noindent\textbf{#1}
}{%
}
</screen>
<para>Este muestra el uso de un  argumento opcional; da un entorno quotation
que cita el autor.
</para>
<screen>\newenvironment{citequote}[1][Shakespeare]{%
  \begin{quotation}
  \noindent\textit{#1}:
}{%
  \end{quotation}
}
</screen>
<para>El  nombre  del  autor  es  opcional y  de  manera  predeterminada  es
&#8216;<literal>Shakespeare</literal>&#8217;.  En el documento, utiliza el entorno como este.
</para>
<screen>\begin{citequote}[Lincoln]
  ...
\end{citequote}
</screen>
<para>El último ejemplo  muestra cómo guardar el valor de  un argumento para
usarlo  en <replaceable>enddef</replaceable>,  en este  caso  en una  caja (véase <link linkend="_005csbox-y-_005csavebox">\sbox  y
\savebox</link>).
</para>
<screen>\newsavebox{\quoteauthor}
\newenvironment{citequote}[1][Shakespeare]{%
  \sbox\quoteauthor{#1}%
  \begin{quotation}
}{%
  \hspace{1em plus 1fill}---\usebox{\quoteauthor}
  \end{quotation}
}
</screen>

</sect1>
<sect1 label="12.9" id="_005cnewtheorem">
<title><literal>\newtheorem</literal></title>

<indexterm role="fn"><primary>\newtheorem</primary></indexterm>
<indexterm role="cp"><primary>teoremas, definiendo</primary></indexterm>
<indexterm role="cp"><primary>definir nuevos teoremas</primary></indexterm>

<indexterm role="cp"><primary>entorno similar a un teorema</primary></indexterm>
<indexterm role="cp"><primary>entorno, similar a un teorema</primary></indexterm>
<para>Sinopsis:
</para>
<screen>\newtheorem{<replaceable>name</replaceable>}{<replaceable>title</replaceable>}
\newtheorem{<replaceable>name</replaceable>}{<replaceable>title</replaceable>}[<replaceable>numbered_within</replaceable>]
\newtheorem{<replaceable>name</replaceable>}[<replaceable>numbered_like</replaceable>]{<replaceable>title</replaceable>}
</screen>
<para>Define un nuevo entorno similar  a un teorema.  Puedes especificar uno
de  <replaceable>numbered_within</replaceable> y  <replaceable>numbered_like</replaceable>, o  ninguno, pero  no
ambos.
</para>
<para>La  primera   forma,  <literal>\newtheorem{<replaceable>name</replaceable>}{<replaceable>title</replaceable>}</literal>,
crea  un entorno  que  se  etiquetará con  <replaceable>title</replaceable>;  ve el  primer
ejemplo a continuación.
</para>
<para>La                            segunda                           forma,
<literal>\newtheorem{<replaceable>name</replaceable>}{<replaceable>título</replaceable>}[<replaceable>numbered_within</replaceable>]</literal>,
crea un  entorno cuyo contador  está subordinado al  counter existente
<replaceable>numbered_within</replaceable>, por lo que este contador se restablecerá cuando
<replaceable>numbered_within</replaceable>  se   restablece.   Ve  el  segundo   ejemplo  a
continuación.
</para>
<para>La                            tercera                            forma
<literal>\newtheorem{<replaceable>name</replaceable>}[<replaceable>numbered_like</replaceable>]{<replaceable>title</replaceable>}</literal>,
con un argumento opcional entre los dos argumentos requeridos, crea un
entorno  cuyo contador  compartirá  el  contador definido  previamente
<replaceable>numbered_like</replaceable>.  Ve el tercer ejemplo.
</para>
<para>Este comando crea un contador llamado <replaceable>name</replaceable>.  Además, a menos que
se use  el argumento opcional <replaceable>numbered_like</replaceable>,  dentro del entorno
similar  a un  teorema,  el valor  actual de  <literal>\ref</literal>  será el  de
<literal>\the<replaceable>numbered_within</replaceable></literal> (véase <link linkend="_005cref">\ref</link>).
</para>
<para>Esta declaración es global.  Es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Argumentos:
</para>
<variablelist><varlistentry><term><replaceable>name</replaceable>
</term><listitem><para>El nombre del entorno.  Es una cadena de letras.  No debe comenzar con
una barra  invertida, <literal>\</literal>.  No debe  ser el nombre de  un entorno
existente, y  el nombre del  comando <literal>\<replaceable>name</replaceable></literal> no  debe estar
definido.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>title</replaceable>
</term><listitem><para>El  texto  que  se  imprimirá  al principio  del  entorno,  antes  del
número. Por ejemplo, &#8216;<literal>Teorema</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>numbered_within</replaceable>
</term><listitem><para>Opcional;  el nombre  de  un contador  ya  definido, generalmente  una
unidad  seccional como  <literal>chapter</literal>  o  <literal>section</literal>.  Cuando  el
contador  <replaceable>numbered_within</replaceable>  se  restablece  y  luego  el  entorno
<replaceable>name</replaceable> el contador también se restablecerá.
</para>
<para>Si   no    se   utiliza   este   argumento    opcional,   el   comando
<literal>\the<replaceable>name</replaceable></literal> se establece en <literal>\arabic{<replaceable>name</replaceable>}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>numbered_like</replaceable>
</term><listitem><para>Opcional; el nombre de un entorno similar a un teorema ya definido. El
nuevo entorno se numerará en secuencia con <replaceable>numbered_like</replaceable>.
</para>
</listitem></varlistentry></variablelist>
<para>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   &#8216;<literal>Definición&#160;1</literal>&#8217;   y
&#8216;<literal>Definición&#160;2</literal>&#8217; en producción.
</para>
<screen>\newtheorem{defn}{Definición}
\begin{document}
\section{...}
\begin{defn}
  Primer definición
\end{defn}

\section{...}
\begin{defn}
  Segunda definición
\end{defn}
</screen>
<para>Este ejemplo tiene el mismo cuerpo de documento que el anterior.  Pero
aquí el argumento opcional de <literal>\newtheorem</literal> <replaceable>numbered_within</replaceable>
se  da  como   <literal>section</literal>,  por  lo  que  el   resultado  es  como
&#8216;<literal>Definición&#160;1.1</literal>&#8217; y &#8216;<literal>Definición&#160;2.1</literal>&#8217;.
</para>
<screen>\newtheorem{defn}{Definición}[sección]
\begin{document}
\section{...}
\begin{defn}
  Primer definición
\end{defn}

\section{...}
\begin{defn}
  Segunda definición
\end{defn}
</screen>
<para>En  el siguiente  ejemplo hay  dos declaraciones  en el  preámbulo, el
segundo de los cuales requiere que  el nuevo entorno <literal>thm</literal> use el
mismo  contador  como   <literal>defn</literal>.   Da  &#8216;<literal>Definición&#160;1.1</literal>&#8217;,
seguido por &#8216;<literal>Teorema&#160;2.1</literal>&#8217; y &#8216;<literal>Definición&#160;2.2</literal>&#8217;.
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="12.10" id="_005cnewfont">
<title><literal>\newfont</literal></title>

<indexterm role="fn"><primary>\newfont</primary></indexterm>
<indexterm role="cp"><primary>tipos de letra, nuevos comandos para</primary></indexterm>
<indexterm role="cp"><primary>definir nuevos tipos de letra</primary></indexterm>

<!-- @findex .fd @r{archivo} -->
<para>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
(véase <link linkend="Tipos-de-letra">Tipos de letra</link>).
<!-- Esto se  hace usando archivos  @file{.fd} o  mediante el uso  de un -->
<!-- motor  que pueda  acceder a  los tipos  de letra  del sistema  como -->
<!-- Xe@LaTeX{} (@pxref{Motores @TeX{}}). -->
</para>
<para>Sinopsis:
</para>
<screen>\newfont{\<replaceable>cmd</replaceable>}{<replaceable>font description</replaceable>}
</screen>
<para>Define  un comando  <literal>\<replaceable>cmd</replaceable></literal> que  cambiará el  tipo de  letra
actual.   La secuencia  de control  no  debe estar  ya definida.  Debe
comenzar con una barra invertida, <literal>\</literal>.
</para>
<indexterm role="cp"><primary>cláusula at, en definiciones de tipos de letra</primary></indexterm>
<indexterm role="cp"><primary>tamaño de diseño, en definiciones de letras</primary></indexterm>
<para>La <replaceable>descripción de la letra</replaceable> consta  de un <replaceable>nombre de letra</replaceable> y
una  opción <firstterm>cláusula  at</firstterm>.   &latex; buscará  en  tu sistema  un
archivo llamado <filename><replaceable>fontname</replaceable>.tfm</filename>.  La cláusula at puede tener
la forma <literal>en <replaceable>dimen</replaceable></literal>  o <literal><replaceable>factor</replaceable> de escala</literal>, donde
un <replaceable>factor</replaceable>  de &#8216;<literal>1000</literal>&#8217; 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 <filename>.tfm</filename>.
</para>
<para>Esto  define dos  tipos  de letra  equivalentes  y algunos  caracteres
tipográficos en cada una.
</para>
<screen>\newfont{\testfontat}{cmb10 at 11pt}
\newfont{\testfontscaled}{cmb10 scaled 1100}
\testfontat abc
\testfontscaled abc
</screen>

</sect1>
<sect1 label="12.11" id="_005cprotect">
<title><literal>\protect</literal></title>

<indexterm role="fn"><primary>\protect</primary></indexterm>
<indexterm role="cp"><primary>comandos frágiles</primary></indexterm>
<indexterm role="cp"><primary>comandos robustos</primary></indexterm>

<para>Todos  los comandos  de  &latex; son  frágiles &#8212;<firstterm>fragile</firstterm>&#8212;  o
robustos &#8212;<firstterm>robust</firstterm>&#8212;.  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
<literal>\protect</literal>.
</para>
<para>Por  ejemplo,  cuando   &latex;  ejecuta  <literal>\section{<replaceable>nombre
sección</replaceable>}</literal>  escribe  el  texto  <replaceable>nombre sección</replaceable>  en  el  archivo
auxiliar <filename>.aux</filename>,  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
<indexterm role="cp"><primary>argumentos móviles</primary></indexterm>
<firstterm>argumento  móvil</firstterm>.  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
<literal>\caption{...}</literal>     (véase <link linkend="figure">figure</link>),     en     el     comando
<literal>\thanks{...}</literal> (véase <link linkend="_005cmaketitle">\maketitle</link>), y  en @expresiones en los
entornos <literal>tabular</literal> y <literal>array</literal> (véase <link linkend="tabular">tabular</link>).
</para>
<para>Si obtienes  extraños errores  de los  comandos utilizados  para mover
argumentos,  intenta precediéndolos  con  <literal>\protect</literal>.  Todos  los
comandos frágiles se deben proteger con su propio <literal>\protect</literal>.
</para>
<para>Aunque  por  lo  general  un comando  <literal>\protect</literal>  no  duele,  los
comandos de longitud  son robustos y no deben estar  precedidos por un
comando   <literal>\protect</literal>.   Tampoco   se  puede   usar   un   comando
<literal>\protect</literal> en el argumento para los comandos <literal>\addtocounter</literal>
o <literal>\setcounter</literal>.
</para>
<para>En este  ejemplo, el  comando <literal>\caption</literal>  da un  misterioso error
sobre  una llave  extra.   Soluciona el  problema  precediendo a  cada
comando <literal>\raisebox</literal> con <literal>\protect</literal>.
</para>
<screen>\begin{figure}
  ...
  \caption{Sede de la empresa A\raisebox{1pt}{B}\raisebox{-1pt}{C}}
\end{figure}
</screen>
<para>En  el siguiente  ejemplo,  el comando  <literal>\tableofcontents</literal> da  un
error porque los <literal>\(..\)</literal> en el título de la sección se expande a
ilegal  &tex;  en  el  archivo  <filename>.toc</filename>.   Puedes  resolver  esto
cambiando <literal>\(..\)</literal> a <literal>\protect\(..\protect\)</literal>.
</para>
<screen>\begin{document}
\tableofcontents
...
\section{Einstein \( e=mc^2 \)}
...
</screen>

</sect1>
<sect1 label="12.12" id="_005cignorespaces-e-_005cignorespacesafterend">
<title><literal>\ignorespaces e \ignorespacesafterend</literal></title>

<anchor id="_005cignorespaces"/><anchor id="_005cignorespacesafterend"/><indexterm role="fn"><primary>\ignorespaces</primary></indexterm>
<indexterm role="fn"><primary>\ignorespacesafterend</primary></indexterm>
<indexterm role="cp"><primary>espacios, ignorar en comandos</primary></indexterm>
<indexterm role="cp"><primary>comandos, ignorar espacios</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\ignorespaces
</screen>
<para>o
</para>
<screen>\ignorespacesafterend
</screen>
<para>Ambos comandos  hacen que &latex;  ignore los espacios en  blanco (es
decir, los  caracteres de  catcode&#160;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;.
</para>
<para>El <literal>\ignorespaces</literal> se  usa a menudo cuando se  definen comandos a
través de <literal>\newcommand</literal>, o <literal>\newenvironment</literal>, o <literal>\def</literal>.
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
<literal>enumerate</literal>, los usuarios no deben  poner ningún espacio entre el
comando y el texto de la pregunta.
</para>
<screen>\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}
</screen>
<para>La solución es cambiar a esto.
</para>
<screen>\newcommand{\points}[1]{%
  \makebox[0pt]{\makebox[10em][l]{#1~pts}}\ignorespaces}
</screen>
<para>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
<literal>\fullname</literal> reproducirá eso.
</para>
<screen>\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}
</screen>
<para>Para            arreglar           esto,            cambia           a
<literal>\newcommand{\fullname}[1]{\ignorespaces\honorific~#1}</literal>.
</para>
<para>El   <literal>\ignorespaces</literal>   también   se    usa   a   menudo   en   un
<literal>\newenvironment</literal> al  final de  la cláusula <replaceable>begin</replaceable>,  como en
<literal>\begin{newenvironment}{<replaceable>nombre
entorno</replaceable>}{... \ignorespaces}{...}</literal>.
</para>
<para>Para  quitar los  espacios  en blanco  del final  de  un entorno,  usa
<literal>\ignorespacesafterend</literal>.  Un  ejemplo es que esto  mostrará mucho
mayor espacio vertical entre el primer  y el segundo entorno que entre
el segundo y el tercero.
</para>
<screen>\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}
</screen>
<para>Poner un  carácter de comentario&#160;<literal>%</literal>  inmediatamente después
del <literal>\end{eq}</literal>  hará desaparecer el espacio  vertical, pero eso
es      inconveniente.      La      solución     es      cambiar     a
<literal>\newenvironment{eq}{\begin{equation}}{\end{equation}\ignorespacesafterend}</literal>.
</para>

</sect1>
<sect1 label="12.13" id="paquete-xspace">
<title>paquete xspace</title>

<indexterm role="fn"><primary>\xspace</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>xspace</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>xspace</literal> package</primary></indexterm>

<indexterm role="cp"><primary>espacios, ignorar en comandos</primary></indexterm>
<indexterm role="cp"><primary>comandos, ignorar espacios</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usepackage{xspace}
  ...
\newcommand{...}{...\xspace}
</screen>
<para>La macro <literal>\xspace</literal>,  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.
</para>
<para>Después de  un comando de secuencia  de control que es  una palabra de
control (véase <link linkend="Secuencias-de-control">Secuencias  de control</link>, a diferencia  de los símbolos
de control como <literal>\$</literal>), &tex;  engulle caracteres en blanco.  Por
lo  tanto, en  la  primera  oración a  continuación,  la salida  tiene
&#8216;<literal>Vermont</literal>&#8217;  colocado  cómodamente  contra  el  punto,  sin  ningún
espacio intermedio.
</para>
<screen>\newcommand{\VT}{Vermont}
Nuestro colegio está en \VT.
Los veranos \VT{} son agradables.
</screen>
<para>Pero  debido  al engullimiento,  la  segunda  oración necesita  llaves
vacías o de lo contrario no habría espacio que separe a &#8216;<literal>Vermont</literal>&#8217;
de &#8216;<literal>veranos</literal>&#8217;.   (Muchos autores  en su  lugar utilizan  una barra
invertida-espacio <literal>\ </literal> para esto.  Véase <link linkend="_005c_0028SPACE_0029">\(SPACE)</link>).
</para>
<para>El  paquete  <literal>xspace</literal>  proporciona  <literal>\xspace</literal>.   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.
</para>
<screen>\newcommand{\VT}{Vermont\xspace}
Nuestro colegio está en \VT .
\VT los veranos son agradables.
</screen>
<para>La  lista  de  excepciones   predeterminada  contiene  los  caracteres
<literal>,.'/?;:!~-)</literal>, la  llave de apertura  y el comando de  espacio de
barra   invertida    explicados   anteriormente,   y    los   comandos
<literal>\footnote</literal>   o  <literal>\footnotemark</literal>.    Añaden   a  esa   lista
<literal>\xspaceaddexceptions{\myfni \myfnii}</literal> que agrega <literal>\myfni</literal>
y&#160;<literal>\myfnii</literal>  a la  lista, y  elimina de  esa lista  como con
<literal>\xspaceaddexceptions{!}</literal>.
</para>
<!-- David Carlisle https://tex.stackexchange.com/a/86620/339 -->
<para>Un  comentario:  muchos  expertos prefieren  no  usar  <literal>\xspace</literal>.
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 <literal>\xspace</literal>  se  equivocará,  como
cuando le  sigue otro comando,  por lo que <literal>\xspace</literal>  puede hacer
que  editar material  sea más  difícil y  más propenso  a errores  que
siempre insertar las llaves vacías.
</para>

</sect1>
</chapter>
<chapter label="13" id="Contadores">
<title>Contadores</title>

<indexterm role="cp"><primary>contadores, una lista de</primary></indexterm>
<indexterm role="cp"><primary>variables, una lista de</primary></indexterm>

<para>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&#160;<literal>\</literal>.   Así, asociado  al
comando <literal>\chapter</literal>  está el contador <literal>chapter</literal>  que mantiene
la pista del número de capítulo.
</para>
<para>A continuación se muestra una lista de los contadores utilizados en la
clase  <literal>document</literal>   estándar  de   &latex;  para   controlar  la
numeración.
</para>

<indexterm role="fn"><primary>contador de partes</primary></indexterm>
<indexterm role="fn"><primary>contador de capítulos</primary></indexterm>
<indexterm role="fn"><primary>contador de sección</primary></indexterm>
<indexterm role="fn"><primary>contador de subsección</primary></indexterm>
<indexterm role="fn"><primary>contador de subsubsección</primary></indexterm>
<indexterm role="fn"><primary>contador de párrafos</primary></indexterm>
<indexterm role="fn"><primary>contador de subpárrafos</primary></indexterm>
<indexterm role="fn"><primary>contador de páginas</primary></indexterm>
<indexterm role="fn"><primary>contador de ecuaciones</primary></indexterm>
<indexterm role="fn"><primary>contador de cifras</primary></indexterm>
<indexterm role="fn"><primary>contador de tabla</primary></indexterm>
<indexterm role="fn"><primary>contador de notas al pie</primary></indexterm>
<indexterm role="fn"><primary>contador de mpfootnote</primary></indexterm>
<indexterm role="fn"><primary>contador enumi</primary></indexterm>
<indexterm role="fn"><primary>contador enumii</primary></indexterm>
<indexterm role="fn"><primary>contador enumiii</primary></indexterm>
<indexterm role="fn"><primary>contador enumiv</primary></indexterm>
<screen>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
</screen>
<para>El contador  <literal>mpfootnote</literal> lo utiliza el  comando <literal>\footnote</literal>
dentro   de  una   minipágina   (véase <link linkend="minipage">minipage</link>).   Los   contadores
<literal>enumi</literal>  a través  de  <literal>enumiv</literal> se  utilizan  en el  entorno
<literal>enumerate</literal>,   por   hasta    cuatro   niveles   de   anidamiento
(véase <link linkend="enumerate">enumerate</link>).
</para>
<para>Los contadores  pueden tener cualquier valor  entero, pero normalmente
son positivos.
</para>
<para>Los    nuevos   contadores    se    crean   con    <literal>\newcounter</literal>.
Véase <link linkend="_005cnewcounter">\newcounter</link>.
</para>



<sect1 label="13.1" id="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">
<title><literal>\alph \Alph \arabic \roman \Roman \fnsymbol</literal>: Imprime contadores</title>

<indexterm role="cp"><primary>contadores, impresión</primary></indexterm>

<para>Imprime  el  valor de  un  contador,  en  un estilo  específico.   Por
ejemplo, si  el contador  <replaceable>counter</replaceable> tiene el  valor 1  entonces un
<literal>\alph{<replaceable>counter</replaceable>}</literal>   en   tu   fuente  resultará   en   una
letra&#160;a en minúsculas que aparece en la salida.
</para>
<para>Todos  estos  comandos toman  un  solo  contador como  argumento,  por
ejemplo,  <literal>\alph{enumi}</literal>.   Ten en  cuenta  que  el nombre  del
contador no comienza con una barra invertida.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\alph{<replaceable>counter</replaceable>}</primary></indexterm><literal>\alph{<replaceable>counter</replaceable>}</literal>
</term><listitem><para>Imprime el valor de <replaceable>counter</replaceable>  en minúsculas: &#8216;a&#8217;, &#8216;b&#8217;, ...
Si el  valor del  contador es  menor que  1 o  mayor que  26, entonces
obtienes &#8216;<literal>Error de LaTeX: Contador demasiado grande</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Alph{<replaceable>counter</replaceable>}</primary></indexterm><literal>\Alph{<replaceable>counter</replaceable>}</literal>
</term><listitem><para>Escribe en  letras mayúsculas:  &#8216;A&#8217;, &#8216;B&#8217;, ...  Si el  valor del
contador es menor que 1 o  mayor que 26, obtiene &#8216;<literal>Error de LaTeX:
Contador demasiado grande.</literal>&#8217;
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\arabic{<replaceable>counter</replaceable>}</primary></indexterm><literal>\arabic{<replaceable>counter</replaceable>}</literal>
</term><listitem><para>Imprime en números arábigos como &#8216;<literal>5</literal>&#8217; o &#8216;<literal>-2</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\roman{<replaceable>counter</replaceable>}</primary></indexterm><literal>\roman{<replaceable>counter</replaceable>}</literal>
</term><listitem><para>Escribe en  minúsculas números  romanos: &#8216;i&#8217;,  &#8216;ii&#8217;, ...  Si el
valor  del  contador  es  menor  que 1,  entonces  no  recibe  ninguna
advertencia o error, pero &latex; no imprime nada en la salida.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Roman{<replaceable>counter</replaceable>}</primary></indexterm><literal>\Roman{<replaceable>counter</replaceable>}</literal>
</term><listitem><para>Imprime en números romanos en  mayúsculas: &#8216;I&#8217;, &#8216;II&#8217;, ... Si el
valor  del  contador  es  menor  que 1,  entonces  no  recibe  ninguna
advertencia o error, pero &latex; no imprime nada en la salida.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\fnsymbol{<replaceable>counter</replaceable>}</primary></indexterm><literal>\fnsymbol{<replaceable>counter</replaceable>}</literal>
</term><listitem><para>Imprime  el  valor de  <replaceable>counter</replaceable>  usando  una secuencia  de  nueve
símbolos que se utilizan tradicionalmente  para etiquetar las notas al
pie.   El valor  de  <replaceable>counter</replaceable> debe  estar entre&#160;1  y&#160;9,
inclusive.  Si el el valor del contador  es menor que 0 o mayor que 9,
entonces obtienes  &#8216;<literal>Error de  LaTeX: Contador  demasiado grande</literal>&#8217;,
mientras que  si es  0, no  obtienes ningún  error o  advertencia pero
&latex; no genera nada.
</para>
<para>Aquí están los símbolos:
</para>
<informaltable><tgroup cols="4"><colspec colwidth="11*"></colspec><colspec colwidth="30*"></colspec><colspec colwidth="30*"></colspec><colspec colwidth="29*"></colspec><thead><row><entry><para>Número</para></entry><entry><para>Nombre</para></entry><entry><para>Comando</para></entry><entry><para>Símbolo
</para></entry></row></thead><tbody><row><entry><para>1</para></entry><entry><para>asterisk</para></entry><entry><para><literal>\ast</literal></para></entry><entry><para>*<!-- -->
</para></entry></row><row><entry><para>2</para></entry><entry><para>dagger</para></entry><entry><para><literal>\dagger</literal></para></entry><entry><para>&#x2020;
</para></entry></row><row><entry><para>3</para></entry><entry><para>ddagger</para></entry><entry><para><literal>\ddagger</literal></para></entry><entry><para>&#x2021;
</para></entry></row><row><entry><para>4</para></entry><entry><para>section-sign</para></entry><entry><para><literal>\S</literal></para></entry><entry><para>&#x00A7;
</para></entry></row><row><entry><para>5</para></entry><entry><para>paragraph-sign</para></entry><entry><para><literal>\P</literal></para></entry><entry><para>&#x00B6;
</para></entry></row><row><entry><para>6</para></entry><entry><para>double-vert</para></entry><entry><para><literal>\parallel</literal></para></entry><entry><para>&#x2016;
</para></entry></row><row><entry><para>7</para></entry><entry><para>double-asterisk</para></entry><entry><para><literal>\ast\ast</literal></para></entry><entry><para>**<!-- -->
</para></entry></row><row><entry><para>8</para></entry><entry><para>double-dagger</para></entry><entry><para><literal>\dagger\dagger</literal></para></entry><entry><para>&#x2020;&#x2020;
</para></entry></row><row><entry><para>9</para></entry><entry><para>double-ddagger</para></entry><entry><para><literal>\ddagger\ddagger</literal></para></entry><entry><para>&#x2021;&#x2021;
</para></entry></row></tbody></tgroup></informaltable>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="13.2" id="_005cusecounter">
<title><literal>\usecounter</literal></title>

<indexterm role="fn"><primary>\usecounter</primary></indexterm>
<indexterm role="cp"><primary>listar elementos, especificando contador</primary></indexterm>
<indexterm role="cp"><primary>elementos numerados, especificando contador</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usecounter{<replaceable>counter</replaceable>}
</screen>
<para>Usado en el segundo  argumento del entorno <literal>list</literal> (véase <link linkend="list">list</link>),
este  declara  que los  elementos  de  la  lista serán  numerados  por
<replaceable>counter</replaceable>.  Inicializa <replaceable>counter</replaceable> a  cero y organiza que cuando
se  llama   a  <literal>\item</literal>   sin  su  argumento   opcional,  entonces
<replaceable>counter</replaceable> se incrementa en <literal>\refstepcounter</literal>, haciendo que su
valor sea ​​el valor actual  de <literal>ref</literal> (véase <link linkend="_005cref">\ref</link>).  Este comando
es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Al ponerlo en  el preámbulo del documento, este ejemplo  crea un nuevo
entorno de lista enumerada con <replaceable>testcounter</replaceable>:
</para>
<screen>\newcounter{testcounter}
\newenvironment{test}{%
  \begin{list}{}{%
    \usecounter{testcounter}
  }
}{%
  \end{list}
}
</screen>

</sect1>
<sect1 label="13.3" id="_005cvalue">
<title><literal>\value</literal></title>

<indexterm role="fn"><primary>\value</primary></indexterm>
<indexterm role="cp"><primary>contadores, obteniendo el valor de</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\value{<replaceable>counter</replaceable>}
</screen>
<para>Se expande al valor del contador  <replaceable>counter</replaceable>. (Ten en cuenta que el
nombre de un contador no comienza con una barra invertida).
</para>
<para>Este  ejemplo  genera  &#8216;<literal>El  contador de  prueba  es&#160;6.  Otro
contador es&#160;5.</literal>&#8217;.
</para>
<screen>\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}.
</screen>
<para>El  comando  <literal>\value</literal>  no  se  usa para  componer  el  valor  del
contador.    Para  eso,   <link linkend="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">\alph  \Alph   \arabic  \roman   \Roman
\fnsymbol</link>.
</para>
<para>A  menudo se  usa  en <literal>\setcounter</literal>  o <literal>\addtocounter</literal>  pero
<literal>\value</literal> se puede  usar en cualquier lugar  donde &latex; espera
un número, como en <literal>\hspace{\value{foo}\parindent}</literal>.  No debe
estar precedido por <literal>\protect</literal> (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Este ejemplo inserta <literal>\hspace{4\parindent}</literal>.
</para>
<screen>\setcounter{myctr}{3} \addtocounter{myctr}{1}
\hspace{\value{myctr}\parindent}
</screen>

</sect1>
<sect1 label="13.4" id="_005csetcounter">
<title><literal>\setcounter</literal></title>

<indexterm role="fn"><primary>\setcounter</primary></indexterm>
<indexterm role="cp"><primary>contadores, ajuste de</primary></indexterm>
<indexterm role="cp"><primary>configurar contadores</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\setcounter{<replaceable>counter</replaceable>}{<replaceable>value</replaceable>}
</screen>
<para>Configura  globalmente el  contador  <replaceable>counter</replaceable> para  que tenga  el
valor del argumento  <replaceable>value</replaceable>, que debe ser un  número entero.  Por
lo   tanto,   puedes   establecer   un   valor   del   contador   como
<literal>\setcounter{section}{5}</literal>.  Ten  en cuenta que el  nombre del
contador no comienza con una barra invertida.
</para>
<para>En  este ejemplo,  si el  contador <literal>theorem</literal>  tiene el  valor 12,
entonces la segunda línea imprimirá &#8216;<literal>XII</literal>&#8217;.
</para>
<screen>\setcounter{ejercicio}{\value{teorema}}
Aquí está en Roman:  \Roman{exercise}.
</screen>

</sect1>
<sect1 label="13.5" id="_005caddtocounter">
<title><literal>\addtocounter</literal></title>

<indexterm role="fn"><primary>\addtocounter</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\addtocounter{<replaceable>counter</replaceable>}{<replaceable>value</replaceable>}
</screen>
<para>Incrementar globalmente <replaceable>counter</replaceable> por la cantidad especificada por
el argumento <replaceable>value</replaceable>, que puede ser negativo.
</para>
<para>En este ejemplo, el valor de la sección aparece como &#8216;<literal>VII</literal>&#8217;.
</para>
<screen>\setcounter{section}{5}
\addtocounter{section}{2}
Aquí está en Roman: \Roman{section}.
</screen>

</sect1>
<sect1 label="13.6" id="_005crefstepcounter">
<title><literal>\refstepcounter</literal></title>

<indexterm role="fn"><primary>\refstepcounter</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\refstepcounter{<replaceable>counter</replaceable>}
</screen>
<para>Incrementa globalmente el valor de  <replaceable>counter</replaceable> en uno, al igual que
<literal>\stepcounter</literal> (véase <link linkend="_005cstepcounter">\stepcounter</link>).  La diferencia es que este
comando restablece el  valor de cualquier contador  numerado dentro de
él.   (Para   la  definición   de  &#8220;contadores   numerados  dentro&#8221;,
véase <link linkend="_005cnewcounter">\newcounter</link>).
</para>
<para>Además, este comando también define  el valor actual de <literal>\ref</literal> es
el resultado de <literal>\thecounter</literal>.
</para>
<para>Mientras que el valor del  contador se establece globalmente, el valor
de <literal>\ref</literal>  se establece  localmente, es  decir, dentro  del grupo
actual.
</para>

</sect1>
<sect1 label="13.7" id="_005cstepcounter">
<title><literal>\stepcounter</literal></title>

<indexterm role="fn"><primary>\stepcounter</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\stepcounter{<replaceable>counter</replaceable>}
</screen>
<para>Agrega  globalmente  uno  a   <replaceable>counter</replaceable>  y  restablece  todos  los
contadores  numerados   dentro  de  ella.   (Para   la  definición  de
&#8220;contadores numerados dentro&#8221;, véase <link linkend="_005cnewcounter">\newcounter</link>).
</para>
<para>Este comando difiere de <literal>\refstepcounter</literal>  en que este no influye
en las referencias; es decir, no define el valor actual de <literal>\ref</literal>
será el resultado de <literal>\thecounter</literal> (véase <link linkend="_005crefstepcounter">\refstepcounter</link>).
</para>

</sect1>
<sect1 label="13.8" id="_005cday-_002d-_005cmonth-y-_005cyear">
<title><literal>\day</literal>, <literal>\month</literal> y <literal>\year</literal></title>

<anchor id="_005cday"/><anchor id="_005cmonth"/><anchor id="_005cyear"/><indexterm role="fn"><primary>\day</primary></indexterm>
<indexterm role="fn"><primary>\month</primary></indexterm>
<indexterm role="fn"><primary>\year</primary></indexterm>

<para>&latex;  define  el   contador  <literal>\day</literal>  para  el   día  del  mes
(nominalmente con valor  entre 1 y 31), <literal>\month</literal> para  el mes del
año (nominalmente con  un valor entre 1 y 12),  y <literal>\year</literal> para el
año.  Cuando &tex;  se inicia, se establecen a partir  de los valores
actuales en el sistema.   El comando relacionado <literal>\today</literal> produce
una cadena que representa el día actual (véase <link linkend="_005ctoday">\today</link>).
</para>
<para>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:
</para>
<screen>\day=-2 \month=13 \year=-4 \today
</screen>
<para>no  da ningún  error  o  advertencia y  da  como  resultado la  salida
&#8216;<literal>-2, -4</literal>&#8217; (el valor del mes falso no produce ningún resultado).
</para>
<para>Véase <link linkend="Entrada-de-la-l_00ednea-de-comandos">Entrada de  la línea  de comandos</link>,  para forzar  la fecha  a un
valor dado desde la línea de comandos.
</para>
</sect1>
</chapter>
<chapter label="14" id="Longitudes">
<title>Longitudes</title>

<indexterm role="cp"><primary>longitudes, definiendo y usando</primary></indexterm>

<para><firstterm>length</firstterm> es una medida de  distancia.  Muchos comandos de &latex;
toman un argumento como longitud.
</para>
<indexterm role="cp"><primary>longitudes rígidas</primary></indexterm>
<indexterm role="cp"><primary>longitudes elásticas</primary></indexterm>
<indexterm role="cp"><primary>dimen &tex; simple</primary></indexterm>
<indexterm role="cp"><primary>skip &tex; simple</primary></indexterm>
<indexterm role="cp"><primary>pegamento simple &tex;</primary></indexterm>
<para>Las longitudes  vienen en  dos tipos.   Un <firstterm>longitud  rígida</firstterm> como
<literal>10pt</literal>  no contiene  un  componente  <literal>plus</literal> o  <literal>minus</literal>.
(&tex; sencillo llama a  esto una <firstterm>dimensión</firstterm>). Una <firstterm>longitud
de goma</firstterm> (que &tex; simple llama  a <firstterm>skip</firstterm> o <firstterm>glue</firstterm>) como con
<literal>1cm  plus0.05cm   minus0.01cm</literal>  puede   contener  uno   o  ambos
componentes.   En   esa  longitud   elástica,  el  <literal>1cm</literal>   es  la
<firstterm>longitud  natural</firstterm>  mientras  que   los  otros  dos,  componentes
<literal>plus</literal> y  <literal>minus</literal>, permiten que  &tex; estire o  reduzca la
longitud para optimizar la colocación.
</para>
<para>Las siguientes ilustraciones utilizan estos dos comandos.
</para>
<screen>% 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}}}
</screen>
<para>Este  ejemplo  usa esos  comandos  para  mostrar  una barra  negra  de
100&#160;puntos de largo entre &#8216;<literal>XXX</literal>&#8217; y &#8216;<literal>YYY</literal>&#8217;.  Esta longitud
es rígida.
</para>
<screen>XXX\muestracaja{100pt}{\barranegra{100pt}}YYY
</screen>
<para>En cuanto a las longitudes elásticas,  la reducción es más simple: con
<literal>1cm minus 0.05cm</literal>, 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&#160;puntos entre las dos barras.
</para>
<screen>XXX\showhbox{300pt}{%
  \blackbar{101pt}\hspace{100pt minus 2pt}\blackbar{101pt}}YYY

XXX\showhbox{300pt}{%
  \blackbar{105pt}\hspace{100pt minus 1pt}\blackbar{105pt}}YYY
</screen>
<para>Pero  el  segundo recibe  una  advertencia  como &#8216;<literal>Overfull  \hbox
(1.0pt too wide)  detectado en la línea 17</literal>&#8217;.  En  la salida, la primer
&#8216;<literal>Y</literal>&#8217; 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&#160;puntos.
</para>
<para>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&#160;puntos entre las barras.
</para>
<screen>XXX\showhbox{300pt}{%
  \blackbar{95pt}\hspace{100pt plus 10pt}\blackbar{95pt}}YYY

XXX\showhbox{300pt}{%
  \blackbar{95pt}\hspace{100pt plus 1pt}\blackbar{95pt}}YYY
</screen>
<para>En la segunda línea &tex; necesita  un tramo de 10&#160;puntos y solo
se  especificó 1&#160;punto.   &tex; estira  el espacio  al requerido
pero te da una  advertencia como &#8216;<literal>Infracompleto \hbox (maliciosos
10000) detectados en la línea 22</literal>&#8217;.  (No hablaremos de la malicia).
</para>
<para>Puedes estirar y encoger en la  misma longitud, como en <literal>1ex plus
0.05ex minus 0.02ex</literal>.
</para>
<para>Si &tex; está configurando dos  o más longitudes elásticas, asigna la
ampliación o reducción en proporción.
</para>
<screen>XXX\showhbox{300pt}{%
  \blackbar{100pt}%  left
  \hspace{0pt plus 50pt}\blackbar{80pt}\hspace{0pt plus 10pt}%  middle
  \blackbar{100pt}}YYY  % right
</screen>
<para>Las barras izquierda  y derecha ocupan 100&#160;puntos, por  lo que la
del medio necesita  otros 100.  La barra central  es de 80&#160;puntos
por lo  que los dos  <literal>\hspace</literal> se deben  extender 20&#160;puntos.
Porque los dos son <literal>plus 50pt</literal> y <literal>plus 10pt</literal>, &tex; obtiene
5/6 del tramo del primer espacio y 1/6 del segundo.
</para>
<para>El  componente <literal>plus</literal>  o  <literal>minus</literal> de  una longitud  elástica
puede contener un componente <firstterm>fill</firstterm>, como en <literal>1in plus2fill</literal>.
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.
</para>
<screen>\begin{minipage}{\linewidth}
  \hspace{0pt plus 1fill}\includegraphics{godel.png}%
  \hspace{0pt plus 1fill}\includegraphics{einstein.png}%
  \hspace{0pt plus 1fill}
\end{minipage}
</screen>
<para>&tex; tiene tres  niveles de infinito para  componentes de pegamento:
<literal>fil</literal>, <literal>fill</literal> y <literal>filll</literal>.  Los últimos son más infinitos
que los  anteriores.  Por lo  general, los autores de  documentos solo
usan el del medio (véase <link linkend="_005chfill">\hfill</link> y véase <link linkend="_005cvfill">\vfill</link>).
</para>
<para>Multiplicar una  longitud elástica por  un número la convierte  en una
longitud      rígida,       por      lo      que       después      de
<literal>\setlength{\ylength}{1in      plus      0.2      in}</literal>      y
<literal>\setlength{\zlength}{3\ylength}</literal>   entonces   el  valor   de
<literal>\zlength</literal> es <literal>3in</literal>.
</para>


<sect1 label="14.1" id="Unidades-de-longitud">
<title>Unidades de longitud</title>

<indexterm role="cp"><primary>unidades, de longitud</primary></indexterm>

<para>&tex; y &latex;  conocen estas unidades tanto dentro  como fuera del
modo math.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>pt</primary></indexterm><literal>pt</literal>
</term><listitem><indexterm role="cp"><primary>point</primary></indexterm>
<anchor id="unidades-de-longitud-pt"/><para>Punto,  1/72,27   pulgadas.   La
conversión  (aproximada)   a  unidades  métricas  es   1punto  =
.35146mm = .035146cm.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>pc</primary></indexterm><literal>pc</literal>
</term><listitem><indexterm role="cp"><primary>pica</primary></indexterm>
<anchor id="unidades-de-longitud-pc"/><para>Pica, 12 puntos
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>in</primary></indexterm><literal>in</literal>
</term><listitem><indexterm role="cp"><primary>inch</primary></indexterm>
<anchor id="unidades-de-longitud-en"/><para>Pulgada, 72.27 puntos
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>bp</primary></indexterm><literal>bp</literal>
</term><listitem><indexterm role="cp"><primary>gran punto</primary></indexterm>
<indexterm role="cp"><primary>punto PostScript</primary></indexterm>
<anchor id="unidades-de-longitud-pb"/><para>Punto  grande, 1/72  pulgada.  Esta
longitud es la definición de un  punto en PostScript y muchos sistemas
de autoedición.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>mm</primary></indexterm><literal>mm</literal>
</term><listitem><indexterm role="cp"><primary>milímetro</primary></indexterm>
<anchor id="mm-unidades-de-longitud"/><para>Milímetro, 2.845pt
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>cm</primary></indexterm><literal>cm</literal>
</term><listitem><indexterm role="cp"><primary>centímetro</primary></indexterm>
<anchor id="cm-unidades-de-longitud"/><para>Centímetro, 10mm
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>dd</primary></indexterm><literal>dd</literal>
</term><listitem><indexterm role="cp"><primary>punto didot</primary></indexterm>
<anchor id="unidades-de-longitud-dd"/><para>Punto didot, 1.07 pt
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>cc</primary></indexterm><literal>cc</literal>
</term><listitem><indexterm role="cp"><primary>cícero</primary></indexterm>
<anchor id="unidades-de-longitud-cc"/><para>Cicero, 12 dd
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>sp</primary></indexterm><literal>sp</literal>
</term><listitem><indexterm role="cp"><primary>punto escalado</primary></indexterm>
<anchor id="unidades-de-longitud-sp"/><para>Punto escalado, 1/65536 pt
</para>
</listitem></varlistentry></variablelist>
<para>Otras tres  unidades se  definen de  acuerdo con  la letra  actual, en
lugar de que sea una dimensión absoluta.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>ex</primary></indexterm><literal>ex</literal>
</term><listitem><indexterm role="cp"><primary>x-height</primary></indexterm>
<indexterm role="cp"><primary>ex</primary></indexterm>
<anchor id="Longitudes_002fex"/><anchor id="unidades-de-longitud-ex"/><para>La altura x de
la  letra actual  <firstterm>ex</firstterm>,  tradicionalmente la  altura  de la  letra
minúscula x, se usa a menudo para longitudes verticales.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>em</primary></indexterm><literal>em</literal>
</term><listitem><indexterm role="cp"><primary>m-width</primary></indexterm>
<indexterm role="cp"><primary>em</primary></indexterm>
<anchor id="Longitudes_002fem"/><anchor id="unidades-de-longitud-em"/><para>Del mismo modo
<firstterm>em</firstterm>,  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
(véase <link linkend="_005censpace-_002d-_005cquad-y-_005cqquad">\enspace - \quad y \qquad</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>mu</primary></indexterm><literal>mu</literal>
</term><listitem><indexterm role="cp"><primary>mu, unidad matemática</primary></indexterm>
<anchor id="unidades-de-longitud-mu"/><para>Finalmente, en el  modo matemático,
muchas definiciones  se expresan en  términos de la  unidad matemática
<firstterm>mu</firstterm>, definida por 1em = 18mu, donde el em es tomar de
la familia  actual de  símbolos matemáticos.  Véase <link linkend="Espaciado-en-modo-matem_00e1tico">Espaciado  en modo
matemático</link>.
</para>
</listitem></varlistentry></variablelist>
<para>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
<literal>\setlength{\itemsep}{1ex plus  0.05ex minus 0.01ex}</literal>  es más
probable  que siga  siendo razonable  si se  cambia la  letra que  una
definición dada en puntos.
</para>
</sect1>
<sect1 label="14.2" id="_005csetlength">
<title><literal>\setlength</literal></title>

<indexterm role="fn"><primary>\setlength</primary></indexterm>
<indexterm role="cp"><primary>longitudes, configuración</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\setlength{\<replaceable>len</replaceable>}{<replaceable>amount</replaceable>}
</screen>
<para>Establece  la  longitud  \<replaceable>len</replaceable>  en <replaceable>amount</replaceable>.   El  nombre  de
longitud  <literal>\<replaceable>len</replaceable></literal> tiene  que  ser una  secuencia de  control
(véase <link linkend="Secuencias-de-control">Secuencias  de control</link>),  y como  tal debe  comenzar con  una
barra   invertida,   <literal>\</literal>   bajo  circunstancias   normales.    La
<replaceable>cantidad</replaceable> puede  ser una longitud  elástica (véase <link linkend="Longitudes">Longitudes</link>).
Puede ser positivo, negativo o cero, y puede estar en cualquier unidad
que &latex; entienda (véase <link linkend="Unidades-de-longitud">Unidades de longitud</link>).
</para>
<para>A continuación, con los valores predeterminados de &latex;, el primer
párrafo tendrá sangría mientras que el segundo no.
</para>
<screen>Le dije al médico que me rompí la pierna en dos lugares.

\setlength{\parindent}{0em}
Dijo que dejara de ir a esos lugares.
</screen>
<para>Si no declaraste  \<replaceable>len</replaceable> con <literal>\newlength</literal>, por  ejemplo si lo
escribes                  mal                 como                  en
<literal>\newlength{\specparindent}\setlength{\sepcparindent}{...}</literal>,
entonces  obtienes  un  error   como  &#8216;<literal>Secuencia  de  control  no
definida. &lt;argument&gt;  \sepcindent</literal>&#8217;.  Si  omites la barra  invertida al
comienzo del  nombre de  la longitud entonces  obtienes un  error como
&#8216;<literal>Número faltante, tratado como cero.</literal>&#8217;.
</para>
</sect1>
<sect1 label="14.3" id="_005caddtolength">
<title><literal>\addtolength</literal></title>

<indexterm role="fn"><primary>\addtolength</primary></indexterm>
<indexterm role="cp"><primary>longitudes, agregando a</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\addtolength{\<replaceable>len</replaceable>}{<replaceable>amount</replaceable>}
</screen>
<para>Incrementa la  longitud \<replaceable>len</replaceable>  por <replaceable>cantidad</replaceable>.  El  nombre de
longitud  <literal>\<replaceable>len</replaceable></literal> tiene  que  ser una  secuencia de  control
(véase <link linkend="Secuencias-de-control">Secuencias  de control</link>),  y como  tal debe  comenzar con  una
barra   invertida,   <literal>\</literal>   bajo  circunstancias   normales.    La
<replaceable>cantidad</replaceable> es  una longitud elástica  (véase <link linkend="Longitudes">Longitudes</link>).  Puede
ser positivo, negativo  o cero, y puede estar en  cualquier unidad que
&latex; entienda (véase <link linkend="Unidades-de-longitud">Unidades de longitud</link>).
</para>
<para>A  continuación, si  <literal>\parskip</literal> comienza  con el  valor <literal>0pt
plus 1pt</literal>
</para>
<screen>Doctor: ¿cómo está el niño que se tragó el dólar de plata?
\addtolength{\parskip}{1pt}

Enfermera: sin cambios.
</screen>
<para>luego tiene el valor <literal>1pt plus 1pt</literal> para el segundo párrafo.
</para>
<para>Si no declaraste  \<replaceable>len</replaceable> con <literal>\newlength</literal>, por  ejemplo si lo
escribes                  mal                 como                  en
<literal>\newlength{\specparindent}\addtolength{\sepcparindent}{...}</literal>,
luego   obtienes  un   error  como   &#8216;<literal>Secuencia  de   control  no
definida. &lt;argument&gt; \sepcindent</literal>&#8217;. Si  <replaceable>cantidad</replaceable> usa una longitud
que no ha sido declarada, por  ejemplo, si por ejemplo escribes mal lo
anterior  como  <literal>\addtolength{\specparindent}{0.6\prainden}</literal>,
entonces   obtienes  algo   así   como   &#8216;<literal>Secuencia  de   control
indefinida.  &lt;argumento&gt; \praindent</literal>&#8217;.   Si  dejas  la barra  invertida
fuera de \<replaceable>len</replaceable>,  como en <literal>\addtolength{parindent}{1pt}</literal>,
entonces obtienes algo como &#8216;<literal>No  puedes usar `la letra p' después
de \advance</literal>&#8217;.
</para>
</sect1>
<sect1 label="14.4" id="_005csettodepth">
<title><literal>\settodepth</literal></title>

<indexterm role="fn"><primary>\settodepth</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\settodepth{\<replaceable>len</replaceable>}{<replaceable>text</replaceable>}
</screen>
<para>Establece la  longitud \<replaceable>len</replaceable> en  la profundidad del cuadro  en el
que  se encuentra  &latex; escribiendo  el argumento  <replaceable>text</replaceable>.  El
nombre de  longitud <literal>\<replaceable>len</replaceable></literal> tiene  que ser una  secuencia de
control (véase <link linkend="Secuencias-de-control">Secuencias de control</link>), y  como tal debe comenzar con
una barra invertida, <literal>\</literal> en circunstancias normales.
</para>
<para>Esto imprimirá qué tan bajo van los descendientes de caracteres.
</para>
<screen>\newlength{\alphabetdepth}
\settodepth{\alphabetdepth}{abcdefghijklmnopqrstuvwxyz}
\the\alphabetdepth
</screen>
<para>Si  no declaraste  \<replaceable>len</replaceable>  con <literal>\newlength</literal>,  si por  ejemplo
escribes   mal   lo   anterior  como   <literal>\setto   depth{\aplhabet
depth}{abc...}</literal>,  entonces obtienes  algo  como &#8216;<literal>Secuencia  de
control indefinida.  &lt;argument&gt; \aplhabetdepth</literal>&#8217;.   Si omites  la barra
invertida               \<replaceable>len</replaceable>,              como               en
<literal>\settodepth{alphabetdepth}{...}</literal> entonces obtienes algo como
&#8216;<literal>Número faltante,  tratado como cero.  &lt;para ser leído  de nuevo&gt;
\setbox</literal>&#8217;.
</para>

</sect1>
<sect1 label="14.5" id="_005csettoheight">
<title><literal>\settoheight</literal></title>

<indexterm role="fn"><primary>\settoheight</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\settoheight{\<replaceable>len</replaceable>}{text}
</screen>
<para>Establece la longitud  \<replaceable>len</replaceable> a la altura del cuadro  en el que se
coloca  &latex;  escribe  el  argumento <literal>text</literal>.   El  nombre  de
longitud  <literal>\<replaceable>len</replaceable></literal> tiene  que  ser una  secuencia de  control
(véase <link linkend="Secuencias-de-control">Secuencias  de control</link>),  y como  tal debe  comenzar con  una
barra invertida, <literal>\</literal> en circunstancias normales.
</para>
<para>Esto imprimirá qué tan alto van los caracteres.
</para>
<screen>\newlength{\alphabetheight}
\settoheight{\alphabetheight}{abcdefghijklmnopqrstuvwxyz}
\the\alphabetheight
</screen>
<para>Si no se  ha declarado tal longitud  \<replaceable>len</replaceable> con <literal>\newlength</literal>,
si         por        ejemplo         escribes        mal         como
<literal>\settoheight{\aplhabetheight}{abc...}</literal>,   entonces  obtienes
algo   como  &#8216;<literal>Secuencia   de   control  indefinida.   &lt;argumento&gt;
\alphabetheight</literal>&#8217;.  Si y  deja la barra invertida  fuera de \<replaceable>len</replaceable>,
como en <literal>\settoheight{alphabetheight}{...}</literal> entonces obtienes
algo como &#8216;<literal>Número faltante, tratado como cero. &lt;para ser leído de
nuevo&gt; \setbox</literal>&#8217;.
</para>

</sect1>
<sect1 label="14.6" id="_005csettowidth">
<title><literal>\settowidth</literal></title>

<indexterm role="fn"><primary>\settowidth</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\settowidth{\<replaceable>len</replaceable>}{<replaceable>text</replaceable>}
</screen>
<para>Establece  la  longitud \<replaceable>len</replaceable>  al  ancho  del  cuadro en  el  que
&latex;  coloca  el  argumento  <replaceable>text</replaceable>  escrito.   El  nombre  de
longitud  <literal>\<replaceable>len</replaceable></literal> tiene  que  ser una  secuencia de  control
(véase <link linkend="Secuencias-de-control">Secuencias  de control</link>),  y como  tal debe  comenzar con  una
barra invertida, <literal>\</literal> en circunstancias normales.
</para>
<para>Esto imprime el ancho del alfabeto ASCII en minúsculas.
</para>
<screen>\newlength{\alphabetwidth}
\settowidth{\alphabetwidth}{abcdefghijklmnopqrstuvwxyz}
\the\alphabetwidth
</screen>
<para>Si no se  ha declarado tal longitud  \<replaceable>len</replaceable> con <literal>\newlength</literal>,
si,    por     ejemplo,    escribes     mal    lo     anterior    como
<literal>\settowidth{\aplhabetwidth}{abc...}</literal>, entonces obtienes algo
como    &#8216;<literal>Secuencia    de    control    indefinida.    &lt;argumento&gt;
\aplhabetwidth</literal>&#8217;.  Si  y deja la  barra invertida fuera  de \<replaceable>len</replaceable>,
como en  <literal>\settoheight{alphabetwidth}{...}</literal> entonces obtienes
algo como &#8216;<literal>Número faltante, tratado como cero. &lt;para ser leído de
nuevo&gt; \setbox</literal>&#8217;.
</para>

</sect1>
<sect1 label="14.7" id="_005cstretch">
<title><literal>\stretch</literal></title>

<indexterm role="fn"><primary>\stretch</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\stretch{<replaceable>number</replaceable>}
</screen>
<para>Produce  una   longitud  de  caucho   con  longitud  natural   cero  y
<replaceable>number</replaceable> veces <literal>\fill</literal> unidades  de capacidad de estiramiento
(véase <link linkend="Longitudes">Longitudes</link>).  El <replaceable>number</replaceable> puede  ser positivo o negativo.
Este comando es robusto (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Este  comando  es  robusto.    (véase <link linkend="_005cprotect">\protect</link>).   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.
</para>
<screen>\rule{0.4pt}{1ex}\hspace{\stretch{1.5}}%
  \rule{0.4pt}{1ex}\hspace{\stretch{1}}%
  \rule{0.4pt}{1ex}
</screen>
<para>En  este ejemplo  vertical,  el &#8216;<literal>Dedicamos  &#8230;</literal>&#8217; tendrá  tres
veces el espacio debajo de él que encima de él.
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="14.8" id="Expresiones">
<title>Expresiones</title>

<indexterm role="fn"><primary>expresiones</primary></indexterm>

<!-- Gran parte de https://tex.stackexchange.com/a/245663/339 -->
<para>Sinopsis, una de:
</para>
<screen>\numexpr <replaceable>expression</replaceable>
\dimexpr <replaceable>expression</replaceable>
\glueexpr <replaceable>expression</replaceable>
\muglue <replaceable>expression</replaceable>
</screen>
<para>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.
</para>
<para>Un ejemplo es que <literal>\the\dimexpr\linewidth-4pt\relax</literal> produce como
salida la  longitud que  es cuatro  puntos menos que  el ancho  de una
línea (el único propósito de <literal>\the</literal> es mostrar el resultado en el
documento).     Análogamente,    <literal>\romannumeral\numexpr6+3\relax</literal>
produce  &#8216;<literal>ix</literal>&#8217; y  <literal>\the\glueexpr  5pt plus  1pt  * 2  \relax</literal>
producirá &#8216;<literal>10.0pt plus 2.0pt</literal>&#8217;.
</para>
<para>Una conveniencia aquí  sobre hacer cálculos mediante  la asignación de
registros  y   entonces  usando  <literal>\advance</literal>,  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 <literal>\parbox</literal>.
</para>
<screen>\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}
</screen>
<para>La  <replaceable>expresión</replaceable>  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 <literal>\numexpr</literal> produce un  número entero, <literal>\dimexpr</literal> produce
una dimensión, etc.
</para>
<para>En     el     ejemplo     de    cita     anterior,     cambiando     a
<literal>\dimexpr\linewidth-3*\offset</literal> da el error <literal>Unidad de medida
ilegal (pt  insertado)</literal>.  Esto  se debe a  que para  <literal>\dimexpr</literal> y
<literal>\glueexpr</literal>,  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í  <literal>\the\dimexpr  1pt*10\relax</literal>  es  válido  y  produce
&#8216;<literal>10.0pt</literal>&#8217;,  pero  <literal>\the\dimexpr  10*1pt\relax</literal>  da  el  error
<literal>Unidad ilegal</literal>.
</para>
<para>Las  expresiones absorben  tókenes  y llevan  a  cabo las  matemáticas
apropiadas hasta  un <literal>\relax</literal>  (que será  absorbido), o  hasta el
primer  token  no  válido.   Por  lo  tanto,  <literal>\the\numexpr2+3px</literal>
imprimirá &#8216;<literal>5px</literal>&#8217;,  porque &latex; lee el  <literal>\numexpr2+3</literal>, que
está formado por números, y luego  encuentra la letra <literal>p</literal>, que no
puede ser  parte de un número.   Por lo tanto, termina  la expresión y
produce &#8216;<literal>5</literal>&#8217;, seguido del texto normal &#8216;<literal>px</literal>&#8217;.
</para>
<para>Este comportamiento de  terminación es útil en  las comparaciones.  En
<literal>\ifnum\numexpr\parindent*2 &lt; 10pt Yes\else  No\fi</literal>, el menor que
sign termina la expresión y el  resultado &#8216;<literal>No</literal>&#8217; es (en un artículo
estándar de &latex;).
</para>
<para>Las  expresiones  pueden  usar   los  operadores  <literal>+</literal>,  <literal>-</literal>,
<literal>*</literal>  y   <literal>/</literal>  junto  con  paréntesis   para  subexpresiones,
<literal>(...)</literal>.  En  pegar expresiones en  que las partes  <literal>plus</literal> y
<literal>minus</literal>  no  necesitan  paréntesis  para  ser  afectadas  por  un
factor. Entonces <literal>\the\glueexpr 5pt plus  1pt * 2 \relax</literal> da como
resultado &#8216;<literal>10pt plus 2pt</literal>&#8217;.
</para>
<para>&tex; obligará a otros tipos numéricos de la misma manera que lo hace
cuando  hace asignación  de  registro. Así  <literal>\the\numexpr\dimexpr
1pt\relax\relax</literal> dará  como resultado &#8216;<literal>65536</literal>&#8217;, que  es <literal>1pt</literal>
convertido   a   puntos   escalados   (véase <link linkend="unidades-de-longitud-sp"><literal>sp</literal></link>,  la unidad  interna de  &tex;)  y luego  forzado a  un
número entero.  Con un <literal>\glueexpr</literal>  aquí, el estirar y encoger se
eliminaría.  Yendo por  el contrario, un <literal>\numexpr</literal>  dentro de un
<literal>\dimexpr</literal>  o  <literal>\glueexpr</literal> necesitará  unidades  apropiadas,
como en <literal>\the\dimexpr\numexpr 1  + 2\relax pt\relax</literal>, que produce
&#8216;<literal>3.0pt</literal>&#8217;.
</para>
<para>Detalles de la  aritmética: cada factor se comprueba para  estar en el
rango permitido,  los números deben  ser menores que  <inlineequation><mathphrase>2^{31}</mathphrase></inlineequation> en
valor  absoluto, y  las dimensiones  o los  componentes del  pegamento
deben  ser   inferiores  a   <inlineequation><mathphrase>2^{14}</mathphrase></inlineequation>  puntos,  o   <literal>mu</literal>,  o
<literal>fil</literal>,   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.
</para>
<para>Finalmente,  la división  y  la  escala se  realizan  con redondeo  (a
diferencia  de &tex;&#8217;s  <literal>\divide</literal>,  que trunca).   De este  modo
<literal>\the\dimexpr   5pt*(3/2)\relax</literal>   pone   &#8216;<literal>10.0pt</literal>&#8217;   en   el
documento,  porque  redondea  <literal>3/2</literal>   a  <literal>2</literal>,  mientras  que
<literal>\the\dimexpr 5pt*(4/3)\relax</literal> produce &#8216;<literal>5.0pt</literal>&#8217;.
</para>

</sect1>
</chapter>
<chapter label="15" id="Crear-p_00e1rrafos">
<title>Crear párrafos</title>

<indexterm role="cp"><primary>hacer párrafos</primary></indexterm>
<indexterm role="cp"><primary>párrafos</primary></indexterm>

<para>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.
</para>
<screen>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?''
</screen>
<para>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
<literal>%</literal> y  se extienden hasta el  final de la línea.  En el siguiente
ejemplo, las dos columnas son idénticas:
</para>
<screen>\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}
</screen>

<para>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 (véase <link linkend="Salto-de-l_00ednea">Salto de línea</link>).
</para>
<para>Hay lugares donde no se permite un nuevo párrafo.  No pongas una línea
en blanco en modo math (véase <link linkend="Modos">Modos</link>);  aquí la línea en blanco antes
del <literal>\end{equation}</literal>
</para>
<screen>\begin{equation}
  2^{|S|} &gt; |S|

\end{equation}
</screen>
<para>obtendrás el error  &#8216;<literal>Se inserto el $ faltante</literal>&#8217;.   Del mismo modo,
la línea en blanco en este argumento <literal>\section</literal>
</para>
<screen>\section{aaa

bbb}
</screen>
<para>obtiene &#8216;<literal>¿Argumento faltante? {aaa ! El párrafo terminó antes de
completar \@sect</literal>&#8217;.
</para>



<sect1 label="15.1" id="_005cpar">
<title><literal>\par</literal></title>

<indexterm role="fn"><primary>\par</primary></indexterm>
<indexterm role="cp"><primary>párrafo, terminando</primary></indexterm>

<para>Sinopsis (ten en cuenta que  mientras lees la entrada &tex; convierte
cualquier secuencia  de una o más  líneas en blanco a  un <literal>\par</literal>,
<link linkend="Crear-p_00e1rrafos">Crear párrafos</link>):
</para>
<screen>\par
</screen>
<para>Finaliza el párrafo actual.  La  forma habitual de separar párrafos es
con una línea  en blanco pero el comando  <literal>\par</literal> es completamente
equivalente.  Este comando es robusto (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Este  ejemplo  usa  <literal>\par</literal>  en  lugar  de  una  línea  en  blanco
simplemente por legibilidad.
</para>
<screen>\newcommand{\syllabusLegalese}{%
  \whatCheatingIs\par\whatHappensWhenICatchYou}
</screen>
<para>En el modo  LR, el comando <literal>\par</literal>  no hace nada y  se ignora.  En
modo de párrafo,  el comando <literal>\par</literal> finaliza el  modo de párrafo,
cambiando &latex; a modo vertical (véase <link linkend="Modos">Modos</link>).
</para>
<para>No puedes usar el comando  <literal>\par</literal> en modo matemático.  Tampoco lo
puedes utilizar en el argumento  de muchos comandos, como los comandos
de seccionado, por ejemplo,  <literal>\section</literal> (véase <link linkend="Crear-p_00e1rrafos">Crear párrafos</link>
y <link linkend="_005cnewcommand-y-_005crenewcommand">\newcommand y \renewcommand</link>).
</para>
<para>El   comando   <literal>\par</literal>   no   es   lo   mismo   que   el   comando
<literal>\paragraph</literal>.   Este   último    es,   como   <literal>\section</literal>   o
<literal>\subsection</literal>, un comando de  seccionado utilizado por las clases
de documentos estándar &latex;  (véase <link linkend="_005csubsubsection-_002d-_005cparagraph-y-_005csubparagraph">\subsubsection - \paragraph y
\subparagraph</link>).
</para>
<para>El comando <literal>\par</literal>  no es lo mismo que <literal>\newline</literal>  o el salto
de  línea doble  barra  invertida, <literal>\\</literal>.   La  diferencia es  que
<literal>\par</literal>  finaliza  el  párrafo,  no   solo  la  línea,  y  también
desencadena  la   adición  de  el  espacio   vertical  entre  párrafos
<literal>\parskip</literal> (véase <link linkend="_005cparindent-y-_005cparskip">\parindent y \parskip</link>).
</para>
<para>La salida de este ejemplo
</para>
<screen>xyz

\setlength{\parindent}{3in}
\setlength{\parskip}{5in}
\noindent test\indent test1\par test2
</screen>
<para>es: después de  &#8216;<literal>xyz</literal>&#8217; hay un salto vertical  de 5&#160;pulgadas y
luego aparece  &#8216;<literal>test</literal>&#8217;, alineado con  el margen izquierdo.   En la
misma  línea, hay  un espacio  horizontal vacío  de 3&#160;pulgadas  y
luego aparece  &#8216;<literal>test1</literal>&#8217;.  Finalmente,  hay un espacio  vertical de
5&#160;pulgadas,  seguido  de un  párrafo  nuevo  con una  sangría  de
párrafo   de  3&#160;pulgadas,   y  luego   &latex;  pone   el  texto
&#8216;<literal>test2</literal>&#8217;.
</para>

</sect1>
<sect1 label="15.2" id="_005cindent-y-_005cnoindent">
<title><literal>\indent</literal> y <literal>\noindent</literal></title>

<anchor id="_005cindent"/><anchor id="_005cnoindent"/><indexterm role="fn"><primary>\indent</primary></indexterm>
<indexterm role="fn"><primary>\noindent</primary></indexterm>
<indexterm role="cp"><primary>sangría, forzando</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\indent
</screen>
<para>o
</para>
<screen>\noindent
</screen>
<para>Va  al modo  horizontal  (véase <link linkend="Modos">Modos</link>).   El comando  <literal>\indent</literal>
primero genera un cuadro vacío cuyo ancho es <literal>\parindent</literal>.  Estos
comandos son robustos (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Normalmente se  crea un  nuevo párrafo poniendo  una línea  en blanco.
Véase <link linkend="_005cpar">\par</link>, por la diferencia entre este comando y <literal>\par</literal>.  Para
comenzar un párrafo sin sangría,  o continuar un párrafo interrumpido,
usa <literal>\noindent</literal>.
</para>
<para>En medio de  un párrafo, el comando <literal>\noindent</literal>  no tiene efecto,
porque &latex; ya está en modo  horizontal allí.  El único efecto del
comando <literal>\indent</literal> es generar un espacio.
</para>
<para>Este ejemplo inicia un párrafo nuevo.
</para>
<screen>... fin del párrafo anterior.

\noindent Este párrafo no tiene sangría.
</screen>
<para>y esto continúa un párrafo interrumpido.
</para>
<screen>Los datos

\begin{center}
  \begin{tabular}{rl} ... \end{tabular}
\end{center}

\noindent muestra esto claramente.
</screen>
<indexterm role="fn"><primary>\parindent</primary></indexterm>
<para>Para    omitir    la   sangría    en    todo    el   documento,    pon
<literal>\setlength{\parindent}{0pt}</literal> en el  preámbulo.  Si lo haces,
es posible que  también desees establecer la longitud  de los espacios
entre párrafos, <literal>\parskip</literal> (véase <link linkend="_005cparindent-y-_005cparskip">\parindent y \parskip</link>).
</para>
<indexterm role="cp"><primary>package, <literal>indentfirst</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>indentfirst</literal> package</primary></indexterm>
<para>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 <literal>indentfirst</literal>.
</para>

</sect1>
<sect1 label="15.3" id="_005cparindent-y-_005cparskip">
<title><literal>\parindent</literal> y <literal>\parskip</literal></title>

<anchor id="_005cparindent"/><anchor id="_005cparskip"/><indexterm role="fn"><primary>\parindent</primary></indexterm>
<indexterm role="fn"><primary>\parskip</primary></indexterm>
<indexterm role="cp"><primary>sangría de párrafo</primary></indexterm>
<indexterm role="cp"><primary>sangría de párrafo horizontal</primary></indexterm>
<indexterm role="cp"><primary>espacio vertical antes de los párrafos</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\setlength{\parindent}{<replaceable>horizontal len</replaceable>}
\setlength{\parskip}{<replaceable>vertical len</replaceable>}
</screen>
<para>Ambas  son longitudes  elásticas (véase <link linkend="Longitudes">Longitudes</link>).   Afectan a  la
sangría de párrafos  ordinarios, no de párrafos  dentro de minipáginas
(véase <link linkend="minipage">minipage</link>),   y   el    espacio   vertical   entre   párrafos,
respectivamente.
</para>
<para>Por ejemplo, si esto se pone en el preámbulo:
</para>
<screen>\setlength{\parindent}{0em}
\setlength{\parskip}{1ex}
</screen>
<para>El  documento tendrá  párrafos sin  sangría,  pero en  su lugar  están
separados verticalmente por aproximadamente  la altura de una &#8216;<literal>x</literal>&#8217;
minúscula.
</para>
<para>En   la  clase   <replaceable>document</replaceable>   estándar  de   &latex;,  el   valor
predeterminado para <literal>\parindent</literal> en  documentos de una columna es
<literal>15pt</literal>   cuando  el   el  tamaño   de  texto   predeterminado  es
<literal>10pt</literal>,   <literal>17pt</literal>  para   <literal>11pt</literal>  y   <literal>1.5em</literal>  para
<literal>12pt</literal>.   En documentos  de dos  columnas es  <literal>1em</literal>.  (Estos
valores se establecen antes de que &latex; llame a <literal>\normalfont</literal>
para  que <literal>em</literal>  se derive  de la  letra predeterminada,  Computer
Modern.   Si   utilizas  una   letra  diferente  y   luego  estableces
<literal>\parindent</literal>  en   1em  coincidentes  en  esa   letra,  pon
<literal>\AtBeginDocument{\setlength{\parindent}{1em}}</literal>    en    el
preámbulo).
</para>
<para>El   valor  predeterminado   para   <literal>\parskip</literal>   en  las   clases
<literal>document</literal> estándar de &latex; es <literal>0pt plus1pt</literal>.
</para>

</sect1>
<sect1 label="15.4" id="Notas-marginales">
<title>Notas marginales</title>

<indexterm role="cp"><primary>notas marginales</primary></indexterm>
<indexterm role="cp"><primary>notas en el margen</primary></indexterm>
<indexterm role="cp"><primary>comentarios en el margen</primary></indexterm>
<indexterm role="fn"><primary>\marginpar</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\marginpar{<replaceable>right</replaceable>}
\marginpar[<replaceable>left</replaceable>]{<replaceable>right</replaceable>}
</screen>
<para>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 <literal>\marginpar</literal>
ocurre.
</para>
<para>El margen  que usa  &latex; para  la nota  depende del  diseño actual
(véase <link linkend="Opciones-de-la-clase-documento">Opciones   de    la   clase    documento</link>)   y    también   en
<literal>\reversemarginpar</literal> (ve abajo).  Si estás utilizando el diseño de
un solo  lado (opción de  documento <literal>oneside</literal>) entonces va  en el
margen  derecho.  Si  estás  usando  diseño de  dos  caras (opción  de
documento <literal>twoside</literal>) entonces va en el margen exterior.  Si estás
en el  diseño de dos  columnas (opción de  documento <literal>twocolumn</literal>)
entonces va en el margen más cercano.
</para>
<indexterm role="fn"><primary>\reversemarginpar</primary></indexterm>
<indexterm role="fn"><primary>\normalmarginpar</primary></indexterm>
<para>Si declaras <literal>\reversemarginpar</literal>  entonces &latex; colocará notas
marginales  posteriores en  el margen  opuesto al  dado en  el párrafo
anterior.     Vuelve     a    la    posición     predeterminada    con
<literal>\normalmarginpar</literal>.
</para>
<para>Cuando especificas  el argumento opcional <replaceable>left</replaceable>,  entonces se usa
para  una nota  en  el  margen izquierdo,  mientras  que el  argumento
obligatorio <replaceable>right</replaceable> se utiliza para una nota en el margen derecho.
</para>
<para>Normalmente, a  la primera palabra de  una nota, no se  le aplicará la
separación  silábica.    Puedes  habilitar  guiones   allí  comenzando
<replaceable>left</replaceable> o <replaceable>right</replaceable> con <literal>\hspace{0pt}</literal>.
</para>
<para>Estos parámetros afectan el formato de la nota:
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\marginparpush</primary></indexterm><literal>\marginparpush</literal>
</term><listitem><anchor id="notas-marginales-marginparpush"/><para>Espacio vertical mínimo entre
notas;   predeterminado   &#8216;<literal>7pt</literal>&#8217;  para   documentos   &#8216;<literal>12pt</literal>&#8217;,
&#8216;<literal>5pt</literal>&#8217;   de   lo    contrario.   Ve   también&#160;<link linkend="par_00e1metros-marginparpush-del-dise_00f1o-de-p_00e1gina">parámetros
marginparpush del diseño de página</link>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\marginparsep</primary></indexterm><literal>\marginparsep</literal>
</term><listitem><anchor id="notas-marginales-marginparsep"/><para>Espacio horizontal entre el texto principal y la nota; predeterminado
&#8216;<literal>11pt</literal>&#8217; para documentos &#8216;<literal>10pt</literal>&#8217;, &#8216;<literal>10pt</literal>&#8217; de lo contrario.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\marginparwidth</primary></indexterm><literal>\marginparwidth</literal>
</term><listitem><anchor id="notas-marginales-marginparwidth"/><para>Ancho  de  la  nota en  sí;
predeterminado  para un  documento  &#8216;<literal>10pt</literal>&#8217; de  una  sola cara  es
&#8216;<literal>90pt</literal>&#8217;,   &#8216;<literal>83pt</literal>&#8217;  para   &#8216;<literal>11pt</literal>&#8217;   y  &#8216;<literal>68pt</literal>&#8217;   para
&#8216;<literal>12pt</literal>&#8217;; &#8216;<literal>17pt</literal>&#8217;  más en  cada caso para  un documento  de dos
caras.   En  el modo  de  dos  columnas,  el valor  predeterminado  es
&#8216;<literal>48pt</literal>&#8217;.
</para>
</listitem></varlistentry></variablelist>
<para>La rutina estándar  de &latex; para notas marginales  no impide notas
se caigan de la parte inferior de la página.
<!--  @TeX{} Entrada de preguntas frecuentes  sobre este tema (xx cuando -->
<!-- existe): -->
<!-- @url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=marginparside}. -->
<!-- (+marginfix) -->
</para>

</sect1>
</chapter>
<chapter label="16" id="F_00f3rmulas-math">
<title>Fórmulas math</title>

<indexterm role="cp"><primary>math, fórmulas</primary></indexterm>
<indexterm role="cp"><primary>formulas, math</primary></indexterm>
<indexterm role="cp"><primary>math mode, ingresar</primary></indexterm>
<indexterm role="fn"><primary>environment, <literal>math</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>math</literal> environment</primary></indexterm>

<indexterm role="fn"><primary>environment, <literal>displaymath</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>displaymath</literal> environment</primary></indexterm>

<indexterm role="fn"><primary>environment, <literal>equation</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>equation</literal> environment</primary></indexterm>


<para>Produce  texto  matemático  poniendo  &latex; en  modo  matemático  o
pantalla modo matemático (véase <link linkend="Modos">Modos</link>).  Este ejemplo muestra ambos.
</para>
<screen>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.
</screen>
<para>El modo math es para matemáticas  en línea.  En el ejemplo anterior se
invoca por  la <literal>\(</literal>  inicial y terminado  por la  <literal>\)</literal> final
correspondiente.  El  modo de  pantalla matemática es  para ecuaciones
mostradas y aquí  es invocado por el  entorno <literal>displaymath</literal>.  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.
</para>
<para>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,
</para>
<screen>contrastar x+y con \( x+y \)
</screen>
<para>en  el modo  matemático,  las letras  están en  cursiva  y el  espacio
alrededor del signo más es diferente.
</para>
<para>Hay tres  formas de hacer  fórmulas en  línea, para poner  &latex; en
modo math.
</para>
<screen>\( <replaceable>material matemático</replaceable> \)
$ <replaceable>material matemático</replaceable> $
\begin{math} <replaceable>material matemático</replaceable> \end{math}
</screen>
<para>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 <literal>\(x\) y $y$</literal>.  Puedes utilizar estos en el párrafo
o en modo LR (véase <link linkend="Modos">Modos</link>).
</para>
<para>Para  mostrar  fórmulas,  pon  a &latex;  en  modo  de  visualización
matemática con o:
</para>
<screen>\begin{displaymath}
   <replaceable>material matemático</replaceable>
\end{displaymath}
</screen>
<para>o
</para>
<screen>\begin{equation}
   <replaceable>material matemático</replaceable>
\end{equation}
</screen>
<para>(véase <link linkend="displaymath">displaymath</link>, véase <link linkend="equation">equation</link>).   La única diferencia  es que
con el  entorno <literal>equation</literal>,  &latex; pone  un número  de fórmula
junto  a  la fórmula.   La  construcción  <literal>\[ <replaceable>math</replaceable>  \]</literal>  es
equivalente       a       <literal>\begin{displaymath}       <replaceable>math</replaceable>
\end{displaymath}</literal>.  Estos  entornos sólo  se pueden utilizar  en el
modo párrafo (véase <link linkend="Modos">Modos</link>).
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>amsfonts</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsfonts</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>mathtools</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mathtools</literal> package</primary></indexterm>
<para>La
American Mathematical Society ha puesto a disposición gratuitamente un
conjunto  de  paquetes  que  amplían  enormemente  sus  opciones  para
escribir matemáticas,  <literal>amsmath</literal> y  <literal>amssymb</literal> (también
ten en  cuenta el paquete  <literal>mathtools</literal> que es una  extensión y
carga  <literal>amsmath</literal>).  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.
</para>


<sect1 label="16.1" id="Sub_00edndices-y-super_00edndices">
<title>Subíndices y superíndices</title>

<anchor id="superscript"/><anchor id="subscript"/><indexterm role="cp"><primary>superíndice</primary></indexterm>
<indexterm role="cp"><primary>subíndice</primary></indexterm>
<indexterm role="fn"><primary>^ superíndice</primary></indexterm>
<indexterm role="fn"><primary>_ subíndice</primary></indexterm>
<indexterm role="cp"><primary>exponente</primary></indexterm>

<para>Sinopsis (en modo matemático o  modo de visualización matemático), uno
de:
</para>
<screen><replaceable>base</replaceable>^<replaceable>exp</replaceable>
<replaceable>base</replaceable>^{<replaceable>exp</replaceable>}
</screen>
<para>o, uno de:
</para>
<screen><replaceable>base</replaceable>_<replaceable>exp</replaceable>
<replaceable>base</replaceable>_{<replaceable>exp</replaceable>}
</screen>
<para>Hace que <replaceable>exp</replaceable> aparezca como  un superíndice de <replaceable>base</replaceable> (con el
carácter signo  de intercalación,&#160;<literal>^</literal>)  o un  subíndice (con
guión bajo,&#160;<literal>_</literal>).
</para>
<para>En  este ejemplo,  <literal>0</literal>  y <literal>1</literal>  son  subscripts mientras  que
<literal>2</literal> son superscripts.
</para>
<screen>\( (x_0+x_1)^2 \leq (x_0)^2+(x_1)^2 \)
</screen>
<para>Para que el subscript o superscript contenga más de un carácter, rodea
la expresión con llaves, como en <literal>e^{-2x}</literal>.  La cuarta línea de
este ejemplo muestra llaves usadas  para agrupar una expresión para el
exponente.
</para>
<screen>\begin{displaymath}
  (3^3)^3=27^3=19\,683
  \qquad
  3^{(3^3)}=3^{27}=7\,625\,597\,484\,987
\end{displaymath}
</screen>
<para>&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 <literal>e^{x^2}</literal> y <literal>x_{i_0}</literal>
dan producción.   Ten en cuenta el  uso en esas expresiones  de llaves
para  dar  a  <replaceable>base</replaceable>   una  determinada  <replaceable>exp</replaceable>.   Si  ingresas
<literal>\(3^3^3\)</literal>, esto  se interpreta como  <literal>\(3^{3}^{3}\)</literal> y
luego obtienes el error &tex; &#8216;<literal>Doble superíndice</literal>&#8217;.
</para>
<para>&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.
</para>
<screen>\begin{displaymath}
  \int_{x=a}^b f'(x)\,dx = f(b)-f(a)
\end{displaymath}
</screen>
<para>Ten en  cuenta las llaves  alrededor de  <literal>x=a</literal> para hacer  que la
expresión completa sea un subíndice.
</para>
<para>Para poner  un superscript o  subscript antes  de un símbolo,  usa una
construcción como  <literal>{}_t K^2</literal>.   Las llaves  vacías <literal>{}</literal>
dan  al  subíndice algo  para  adjuntar  y evita  que  accidentalmente
adjuntes un símbolo anterior.
</para>
<para>Usar el carácter  de subíndice o superíndice fuera del  modo math o el
modo <literal>display  math</literal>, como en <literal>la  expresión x^2</literal>, obtendrás
el error &tex; &#8216;<literal>Falta insertar el $</literal>&#8217;.
</para>
<indexterm role="cp"><primary>package, <literal>mhchem</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mhchem</literal> package</primary></indexterm>
<para>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 <literal>mhchem</literal>; ve CTAN.
</para>

</sect1>
<sect1 label="16.2" id="S_00edmbolos-matem_00e1ticos">
<title>Símbolos matemáticos</title>

<indexterm role="cp"><primary>símbolos matemáticos</primary></indexterm>
<indexterm role="cp"><primary>símbolos, matemáticos</primary></indexterm>
<indexterm role="cp"><primary>letras griegas</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>comprehensive</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>comprehensive</literal> package</primary></indexterm>


<para>&latex; proporciona  casi cualquier símbolo matemático  o técnico que
cualquiera usa.  Por ejemplo, si  incluyes <literal>$\pi$</literal> en  tu fuente,
obtendrás  el  símbolo pi  &#x03C0;.  Ve  el &#8220;Paquete  &latex;
Integral           Lista           de          símbolos&#8221;           en
<ulink url="https://ctan.org/pkg/comprehensive">https://ctan.org/pkg/comprehensive</ulink>.
</para>
<para>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, <link linkend="_005censuremath">\ensuremath</link>.
</para>
<!-- xx Agrega negación: para negaciones de símbolos relevantes -->
<!-- Útil: https://www.w3.org/TR/WD-math-970515/section6.html -->

<variablelist><varlistentry><term><indexterm role="fn"><primary>\|</primary></indexterm><literal>\|</literal>
</term><listitem><para>&#x2225; Paralelo (relación). Sinónimo:&#160;<literal>\parallel</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\aleph</primary></indexterm><literal>\aleph</literal>
</term><listitem><para>&#x2135; Aleph, cardinal transfinito (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\alpha</primary></indexterm><literal>\alpha</literal>
</term><listitem><para>&#x03B1; Letra griega alfa minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\amalg</primary></indexterm><literal>\amalg</literal>
</term><listitem><para>&#x2A3F; Unión disjunta (binaria)
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\angle</primary></indexterm><literal>\angle</literal>
</term><listitem><para>&#x2220;  Ángulo geométrico  (común). Similar:  less-than
sign&#160;<literal>&lt;</literal> y salto de línea angular&#160;<literal>\langle</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\approx</primary></indexterm><literal>\approx</literal>
</term><listitem><para>&#x2248; Casi igual a (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ast</primary></indexterm><literal>\ast</literal>
</term><listitem><para>&#x2217;   Operador   asterisco,   convolución,   seis   puntas
(binario).  Sinónimo:&#160;<literal>*</literal>, que  suele ser  un superíndice  o
subíndice, como en la  estrella Kleene. Similar&#160;<literal>\star</literal>, 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.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\asymp</primary></indexterm><literal>\asymp</literal>
</term><listitem><para>&#x224D; Asintóticamente equivalente (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\backslash</primary></indexterm><literal>\backslash</literal>
</term><listitem><para>\      Barra      invertida       (común).       Similar:      set
minus&#160;<literal>\setminus</literal>,   y   <literal>\textbackslash</literal>  para   barra
invertida fuera del modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\beta</primary></indexterm><literal>\beta</literal>
</term><listitem><para>&#x03B2; Letra griega minúscula beta (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigcap</primary></indexterm><literal>\bigcap</literal>
</term><listitem><para>&#x22C2;  Intersección  (operador)   de  tamaño  variable  o
n-ario. Similar:  intersección binaria&#160;<literal>\cap</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigcirc</primary></indexterm><literal>\bigcirc</literal>
</term><listitem><para>&#x26AA; Círculo,  más grande (binario).   Similar: función
composición&#160;<literal>\circ</literal>.
<!-- bb ¿El mejor símbolo Unicode para esto? -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigcup</primary></indexterm><literal>\bigcup</literal>
</term><listitem><para>&#x22C3;   Unión    (operador)   de   tamaño    variable   o
n-aria. Similar: binario union&#160;<literal>\cup</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigodot</primary></indexterm><literal>\bigodot</literal>
</term><listitem><para>&#x2A00; Operador de punto en un círculo de tamaño variable
u (operador) n-ario.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigoplus</primary></indexterm><literal>\bigoplus</literal>
</term><listitem><para>&#x2A01;  Operador más  (operador) de  tamaño variable,  o
n-ario, dentro de un círculo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigotimes</primary></indexterm><literal>\bigotimes</literal>
</term><listitem><para>&#x2A02;  Operador  de tiempo  dentro  de  un círculo  de
tamaño variable, u (operador) n-ario.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigtriangledown</primary></indexterm><literal>\bigtriangledown</literal>
</term><listitem><para>&#x25BD;  Triángulo abierto  de  tamaño variable  o
n-ary     apuntando      hacia     abajo      (binario).     Sinónimo:
<replaceable>\varbigtriangledown</replaceable>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigtriangleup</primary></indexterm><literal>\bigtriangleup</literal>
</term><listitem><para>&#x25B3;  Triángulo  abierto  de tamaño  variable  o
n-ary     apuntando     hacia      arriba     (binario).     Sinónimo:
<replaceable>\varbigtriangleup</replaceable>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigsqcup</primary></indexterm><literal>\bigsqcup</literal>
</term><listitem><para>&#x2A06; Unión  cuadrada de  tamaño variable  u (operador)
n-ario.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\biguplus</primary></indexterm><literal>\biguplus</literal>
</term><listitem><para>&#x2A04; 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).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigvee</primary></indexterm><literal>\bigvee</literal>
</term><listitem><para>&#x22C1; De tamaño variable, o n-ario, u (operador) lógico.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bigwedge</primary></indexterm><literal>\bigwedge</literal>
</term><listitem><para>&#x22C0;   De  tamaño   variable,  o   n-ario,  y   lógico
(operador).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bot</primary></indexterm><literal>\bot</literal>
</term><listitem><para>&#x22A5;, arriba, abajo, elemento mínimo de un conjunto de elementos
parcialmente  ordenado,  o  una contradicción  (común).   Consulta
también&#160;<literal>\top</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bowtie</primary></indexterm><literal>\bowtie</literal>
</term><listitem><para>&#x22C8; Unión natural de dos relaciones (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Box</primary></indexterm><literal>\Box</literal>
</term><listitem><para>&#x25A1; Operador  modal por  necesidad; caja  cuadrada abierta
(común).  No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
<!-- bb ¿El mejor equivalente Unicode? -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bullet</primary></indexterm><literal>\bullet</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de bala</primary></indexterm>
<para>&#x2022;   Viñeta    (binario).    Similar:   multiplicación
dot&#160;<literal>\cdot</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cap</primary></indexterm><literal>\cap</literal>
</term><listitem><para>&#x2229; Intersección de dos  conjuntos (binario).  Similar: de
tamaño variable operator&#160;<literal>\bigcap</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cdot</primary></indexterm><literal>\cdot</literal>
</term><listitem><para>&#x22C5;    Multiplicación     (binario).     Similar:    Bala
dot&#160;<literal>\bullet</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\chi</primary></indexterm><literal>\chi</literal>
</term><listitem><para>&#x03C7; Chi griego minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\circ</primary></indexterm><literal>\circ</literal>
</term><listitem><para>&#x2218;   Composición  de   funciones,  operador   de  anillo
(binario).    Similar:     operator&#160;<literal>\bigcirc</literal>   de   tamaño
variable.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\clubsuit</primary></indexterm><literal>\clubsuit</literal>
</term><listitem><para>&#x2663; Palo de la carta del club (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\complement</primary></indexterm><literal>\complement</literal>
</term><listitem><para>&#x2201;, Complemento  de conjunto,  usado como superíndice  como en
<literal>$S^\complement$</literal>   (común).   No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.   También
usado:  <literal>$S^{\mathsf{c}}$</literal> or&#160;<literal>$\bar{S}$</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cong</primary></indexterm><literal>\cong</literal>
</term><listitem><para>&#x2245; Congruente (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\coprod</primary></indexterm><literal>\coprod</literal>
</term><listitem><para>&#x2210; Coproducto (operador).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cup</primary></indexterm><literal>\cup</literal>
</term><listitem><para>&#x222A; Unión de dos  conjuntos (binario).  Similar: de tamaño
variable operator&#160;<literal>\bigcup</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dagger</primary></indexterm><literal>\dagger</literal>
</term><listitem><para>&#x2020; Relación Dagger (binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dashv</primary></indexterm><literal>\dashv</literal>
</term><listitem><para>&#x22A3; Guión con  torniquete invertido vertical (relación).
Similar:  turnstile&#160;<literal>\vdash</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ddagger</primary></indexterm><literal>\ddagger</literal>
</term><listitem><para>&#x2021; Relación de doble daga (binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Delta</primary></indexterm><literal>\Delta</literal>
</term><listitem><para>&#x0394;  Delta  mayúscula   griega,  usado  para  incremento
(común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\delta</primary></indexterm><literal>\delta</literal>
</term><listitem><para>&#x03B4; Delta minúscula griega (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Diamond</primary></indexterm><literal>\Diamond</literal>
</term><listitem><para>&#x25C7;   Operador   de   diamante   grande   (común).
No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\diamond</primary></indexterm><literal>\diamond</literal>
</term><listitem><para>&#x22C4;  Operador de  diamante (binario).   Similar: large
diamond&#160;<literal>\Diamond</literal>,      encierra     en      un     círculo
bullet&#160;<literal>\bullet</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\diamondsuit</primary></indexterm><literal>\diamondsuit</literal>
</term><listitem><para>&#x2662; Palo de carta diamante (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\div</primary></indexterm><literal>\div</literal>
</term><listitem><para>&#x00F7; Signo de división (binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\doteq</primary></indexterm><literal>\doteq</literal>
</term><listitem><para>&#x2250;   Se   acerca   al  límite   (relación).    Similar:
geométricamente igual to&#160;<literal>\Doteq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\downarrow</primary></indexterm><literal>\downarrow</literal>
</term><listitem><para>&#x2193;   Flecha  hacia   abajo,  converge   (relación).
Similar:  <literal>\Downarrow</literal> flecha hacia abajo de doble línea.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Downarrow</primary></indexterm><literal>\Downarrow</literal>
</term><listitem><para>&#x21D3; Flecha  hacia abajo  de doble  línea (relación).
Similar:  <literal>\downarrow</literal> flecha hacia abajo de una sola línea.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ell</primary></indexterm><literal>\ell</literal>
</term><listitem><para>&#x2113; Letra cursiva minúscula l (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\emptyset</primary></indexterm><literal>\emptyset</literal>
</term><listitem><para>&#x2205; Símbolo de conjunto  vacío (común).  La forma
variante es <literal>\varnothing</literal>.
<!-- bb ¿Por qué Unicode tiene \revemptyset pero no \emptyset? -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\epsilon</primary></indexterm><literal>\epsilon</literal>
</term><listitem><para>&#x03F5;      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
<literal>\varepsilon</literal>&#160;&#x03B5;.    Relacionado:     la
relación de pertenencia del conjunto <literal>\in</literal>&#160;&#x2208;.
<!-- src:  David   Carlisle  http://tex.stackexchange.com/a/98018/339  y -->
<!-- Unicode referenciado  allí afirma que  varepsilon se usa  mucho más -->
<!-- ampliamente. -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\equiv</primary></indexterm><literal>\equiv</literal>
</term><listitem><para>&#x2261; Equivalencia (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\eta</primary></indexterm><literal>\eta</literal>
</term><listitem><para>&#x03B7; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\exists</primary></indexterm><literal>\exists</literal>
</term><listitem><para>&#x2203; Cuantificador existencial (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\flat</primary></indexterm><literal>\flat</literal>
</term><listitem><para>&#x266D; Bemol musical (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\forall</primary></indexterm><literal>\forall</literal>
</term><listitem><para>&#x2200; Cuantificador universal (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\frown</primary></indexterm><literal>\frown</literal>
</term><listitem><para>&#x2322; Arco curvo hacia abajo (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Gamma</primary></indexterm><literal>\Gamma</literal>
</term><listitem><para>&#x0393; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\gamma</primary></indexterm><literal>\gamma</literal>
</term><listitem><para>&#x03B3; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ge</primary></indexterm><literal>\ge</literal>
</term><listitem><para>&#x2265;  Mayor o  igual que  (relación).  este  es un  sinónimo
for&#160;<literal>\geq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\geq</primary></indexterm><literal>\geq</literal>
</term><listitem><para>&#x2265; Mayor  o igual  que (relación).   este es  un sinónimo
for&#160;<literal>\ge</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\gets</primary></indexterm><literal>\gets</literal>
</term><listitem><para>&#x2190;    Se     le    asigna    el     valor    (relación).
Sinónimo:&#160;<literal>\leftarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\gg</primary></indexterm><literal>\gg</literal>
</term><listitem><para>&#x226B;  Mucho  mayor  que (relación).   Similar:  mucho  menos
que&#160;<literal>\ll</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\hbar</primary></indexterm><literal>\hbar</literal>
</term><listitem><para>&#x210F; Constante de Planck sobre dos pi (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\heartsuit</primary></indexterm><literal>\heartsuit</literal>
</term><listitem><para>&#x2661; Palo de cartas de corazón (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\hookleftarrow</primary></indexterm><literal>\hookleftarrow</literal>
</term><listitem><para>&#x21A9; Flecha izquierda enganchada (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\hookrightarrow</primary></indexterm><literal>\hookrightarrow</literal>
</term><listitem><para>&#x21AA; Flecha derecha enganchada (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\iff</primary></indexterm><literal>\iff</literal>
</term><listitem><para>&#x27F7;     Si      y     solo     si      (relación).      Es
<literal>\Longleftrightarrow</literal> con un <literal>\thickmuskip</literal> a cada lado.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Im</primary></indexterm><literal>\Im</literal>
</term><listitem><para>&#x2111;    Parte    imaginaria    (común).     Ve:    parte
real&#160;<literal>\Re</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\imath</primary></indexterm><literal>\imath</literal>
</term><listitem><indexterm role="cp"><primary>i sin punto, matemáticas</primary></indexterm>
<para>i sin  punto; se usa cuando  pones un acento en  una i (véase <link linkend="Acentos-matem_00e1ticos">Acentos
matemáticos</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\in</primary></indexterm><literal>\in</literal>
</term><listitem><para>&#x2208; Establecer elemento  (relación).  Ve también: semilunar
minúscula   epsilon&#160;<literal>\epsilon</literal>&#x03F5;  y   letra
minúscula epsilon&#160;<literal>\varepsilon</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\infty</primary></indexterm><literal>\infty</literal>
</term><listitem><para>&#x221E; Infinito (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\int</primary></indexterm><literal>\int</literal>
</term><listitem><para>&#x222B; Integral (operador).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\iota</primary></indexterm><literal>\iota</literal>
</term><listitem><para>&#x03B9; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Join</primary></indexterm><literal>\Join</literal>
</term><listitem><para>&#x2A1D;  Símbolo  de   corbatín  condensado  (relación).   No
disponible en &tex; estándar.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\jmath</primary></indexterm><literal>\jmath</literal>
</term><listitem><indexterm role="cp"><primary>j sin punto, matemáticas</primary></indexterm>
<para>J sin  punto; se usa cuando  pones un acento en  una j (véase <link linkend="Acentos-matem_00e1ticos">Acentos
matemáticos</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\kappa</primary></indexterm><literal>\kappa</literal>
</term><listitem><para>&#x03BA; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Lambda</primary></indexterm><literal>\Lambda</literal>
</term><listitem><para>&#x039B; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lambda</primary></indexterm><literal>\lambda</literal>
</term><listitem><para>&#x03BB; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\land</primary></indexterm><literal>\land</literal>
</term><listitem><para>&#x2227;  Lógico  y (binario).   Sinónimo:&#160;<literal>\wedge</literal>.
Consulta también or&#160;lógico&#160;<literal>\lor</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\langle</primary></indexterm><literal>\langle</literal>
</term><listitem><para>&#x27E8; Ángulo izquierdo, o secuencia, corchete (apertura).
Similar:  menos-que&#160;<literal>&lt;</literal>. Coincide con&#160;<literal>\rangle</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lbrace</primary></indexterm><literal>\lbrace</literal>
</term><listitem><para>&#x007B;                   Llave                   izquierda
(apertura).             Sinónimo:&#160;<literal>\{</literal>.            Coincide
con&#160;<literal>\rbrace</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lbrack</primary></indexterm><literal>\lbrack</literal>
</term><listitem><para>&#x005B;        Corchete        izquierdo        (apertura).
Sinónimo:&#160;<literal>[</literal>. Coincide con&#160;<literal>\rbrack</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lceil</primary></indexterm><literal>\lceil</literal>
</term><listitem><para>&#x2308; Soporte  de techo  izquierdo, como un  corchete pero
con    la    parte     inferior    rasurada    (apertura).    Coincide
con&#160;<literal>\rceil</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\le</primary></indexterm><literal>\le</literal>
</term><listitem><para>&#x2264;  Menor o  igual que  (relación).  Este  es un  sinónimo
para&#160;<literal>\leq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leadsto</primary></indexterm><literal>\leadsto</literal>
</term><listitem><para>&#x21DD; Flecha derecha  ondulada (relación).  Para obtener
este    símbolo   fuera    del   modo    matemático,   puedes    poner
<literal>\newcommand*{\Leadsto}{\ensuremath{\leadsto}}</literal>    en    el
preámbulo y entonces usa <literal>\Leadsto</literal> en su lugar.
<!-- bb ¿El mejor equivalente Unicode? -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Leftarrow</primary></indexterm><literal>\Leftarrow</literal>
</term><listitem><para>&#x21D0; Está  implícito en la flecha  izquierda de doble
línea   (relación).    Similar:    flecha  izquierda   de   una   sola
línea&#160;<literal>\leftarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leftarrow</primary></indexterm><literal>\leftarrow</literal>
</term><listitem><para>&#x2190; Flecha  izquierda de una sola  línea (relación).
Sinónimo:&#160;<literal>\gets</literal>.    Similar:    doble   línea    izquierda
flecha&#160;<literal>\Leftarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leftharpoondown</primary></indexterm><literal>\leftharpoondown</literal>
</term><listitem><para>&#x21BD;  Arpón izquierdo  de  una línea,  lengüeta
debajo de la lengüeta (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leftharpoonup</primary></indexterm><literal>\leftharpoonup</literal>
</term><listitem><para>&#x21BC;  Arpón izquierdo  de  una  línea, púa  sobre
barra (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Leftrightarrow</primary></indexterm><literal>\Leftrightarrow</literal>
</term><listitem><para>&#x21D4;  Biimplicación;  flecha  de dos  puntas  de
doble línea  (relación).  Similar:  flecha de dos  puntas de  una sola
línea&#160;<literal>\leftrightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leftrightarrow</primary></indexterm><literal>\leftrightarrow</literal>
</term><listitem><para>&#x2194;  Flecha de  dos  puntas de  una sola  línea
(relación).      Similar:     doble     línea     flecha    de     dos
puntas&#160;<literal>\Leftrightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\leq</primary></indexterm><literal>\leq</literal>
</term><listitem><para>&#x2264; Menor  o igual  que (relación).   Este es  un sinónimo
para&#160;<literal>\le</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lfloor</primary></indexterm><literal>\lfloor</literal>
</term><listitem><para>&#x230A;        Soporte       de        piso       izquierdo
(apertura). Coincidencia:&#160;<literal>\floor</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lhd</primary></indexterm><literal>\lhd</literal>
</term><listitem><para>&#x25C1; Punta de  flecha, es decir, triángulo,  apuntando a la
izquierda (binario).  Para el símbolo  de subgrupo normal, debe cargar
<literal>amssymb</literal>  y  usa&#160;<literal>\vartriangleleft</literal>   (que  es  una
relación y así da un mejor espaciado).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ll</primary></indexterm><literal>\ll</literal>
</term><listitem><para>&#x226A;  Mucho  menos  que (relación).   Similar:  mucho  mayor
que&#160;<literal>\gg</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lnot</primary></indexterm><literal>\lnot</literal>
</term><listitem><para>&#x00AC;                    Negación                    lógica
(común). Sinónimo:&#160;<literal>\neg</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\longleftarrow</primary></indexterm><literal>\longleftarrow</literal>
</term><listitem><para>&#x27F5;  Flecha izquierda  larga de  una sola  línea
(relación).     Similar:    largo    flecha   izquierda    de    doble
línea&#160;<literal>\Longleftarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\longleftrightarrow</primary></indexterm><literal>\longleftrightarrow</literal>
</term><listitem><para>&#x27F7; Flecha larga de  dos puntas de una sola
línea  (relación).    Similar:  larga   doble  línea  flecha   de  dos
puntas&#160;<literal>\Longleftrightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\longmapsto</primary></indexterm><literal>\longmapsto</literal>
</term><listitem><para>&#x27FC; Flecha  izquierda larga  de una sola  línea que
comienza  con una  barra  vertical (relación).   Similar: versión  más
corta&#160;<literal>\mapsto</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\longrightarrow</primary></indexterm><literal>\longrightarrow</literal>
</term><listitem><para>&#x27F6;  Flecha derecha  larga  de  una sola  línea
(relación).     Similar:    largo     flecha    derecha    de    doble
línea&#160;<literal>\Longrightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lor</primary></indexterm><literal>\lor</literal>
</term><listitem><para>&#x2228;   Lógico  o   (binario).   Sinónimo:&#160;<literal>\vee</literal>.
Consulta también y&#160;lógico&#160;<literal>\land</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mapsto</primary></indexterm><literal>\mapsto</literal>
</term><listitem><para>&#x21A6; Flecha izquierda de una sola línea que comienza con
una    barra    vertical    (relación).     Similar:    versión    más
larga&#160;<literal>\longmapsto</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mho</primary></indexterm><literal>\mho</literal>
</term><listitem><para>&#x2127;  Conductancia,  semicírculo   omega  mayúscula  girada
(común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mid</primary></indexterm><literal>\mid</literal>
</term><listitem><para>&#x2223; Barra vertical de una línea (relación).  Un uso típico
de <literal>\mid</literal> es para un conjunto <literal>\{\, x \mid x\geq 5 \,\}</literal>.
</para>
<para>Similar: <literal>\vert</literal> y&#160;<literal>|</literal> 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&#160;<literal>\vert</literal> y por norma ve la
entrada para&#160;<literal>\Vert</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\models</primary></indexterm><literal>\models</literal>
</term><listitem><para>&#x22A8; Implica o satisface;  torniquete doble, guión doble
corto (relación).  Similar: guión doble largo&#160;<literal>\vDash</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mp</primary></indexterm><literal>\mp</literal>
</term><listitem><para>&#x2213; Menos o más (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mu</primary></indexterm><literal>\mu</literal>
</term><listitem><para>&#x03BC; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\nabla</primary></indexterm><literal>\nabla</literal>
</term><listitem><para>&#x2207;   Operador   del,   o   diferencial,   de   Hamilton
(común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\natural</primary></indexterm><literal>\natural</literal>
</term><listitem><para>&#x266E; Notación musical natural (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ne</primary></indexterm><literal>\ne</literal>
</term><listitem><para>&#x2260; No es igual (relación). Sinónimo:&#160;<literal>\neq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\nearrow</primary></indexterm><literal>\nearrow</literal>
</term><listitem><para>&#x2197; Flecha noreste (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\neg</primary></indexterm><literal>\neg</literal>
</term><listitem><para>&#x00AC;          Negación         lógica          (común).
Sinónimo:&#160;<literal>\lnot</literal>.  A   veces,  en   cambio,  se   usa  para
negación:&#160;<literal>\sim</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\neq</primary></indexterm><literal>\neq</literal>
</term><listitem><para>&#x2260; No es igual (relación). Sinónimo:&#160;<literal>\ne</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ni</primary></indexterm><literal>\ni</literal>
</term><listitem><para>&#x220B;   Membresía  reflejada   épsilon;   tiene  el   miembro
(relación).  Sinónimo:&#160;<literal>\owns</literal>.   Similar:  es   un  miembro
de&#160;<literal>\in</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\not</primary></indexterm><literal>\not</literal>
</term><listitem><!-- las "@  " se  colocan en espacios  para que la  barra no  llegue al -->
<!-- siguiente caracter. -->
<para>&#x0020;&#160;&#160;&#160;&#160;Sólido largo,  o barra oblicua, que se usa para
tachar un siguiente operador (relación).
</para>
<para>Muchos  operadores   negados  están   disponibles  que   no  requieren
<literal>\not</literal>,  particularmente con  el  paquete <literal>amssymb</literal>.  Por
ejemplo,    <literal>\notin</literal>    es    tipográficamente    preferible    a
<literal>\not\in</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\notin</primary></indexterm><literal>\notin</literal>
</term><listitem><para>&#x2209;  No  es  un  elemento de  (relación).   Similar:  no
subconjunto de&#160;<literal>\nsubseteq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\nu</primary></indexterm><literal>\nu</literal>
</term><listitem><para>&#x03BD; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\nwarrow</primary></indexterm><literal>\nwarrow</literal>
</term><listitem><para>&#x2196; Flecha noroeste (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\odot</primary></indexterm><literal>\odot</literal>
</term><listitem><para>&#x2299; Punto  dentro de  un círculo (binario).   Similar: de
tamaño variable operador&#160;<literal>\bigodot</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\oint</primary></indexterm><literal>\oint</literal>
</term><listitem><para>&#x222E;  Integral de  contorno,  integral con  círculo en  el
medio (operador).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Omega</primary></indexterm><literal>\Omega</literal>
</term><listitem><para>&#x03A9; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\omega</primary></indexterm><literal>\omega</literal>
</term><listitem><para>&#x03C9; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ominus</primary></indexterm><literal>\ominus</literal>
</term><listitem><para>&#x2296;  Signo  menos,  o   guión,  dentro  de  un  círculo
(binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\oplus</primary></indexterm><literal>\oplus</literal>
</term><listitem><para>&#x2295; Signo más dentro  de un círculo (binario).  Similar:
de tamaño variable operador&#160;<literal>\bigoplus</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\oslash</primary></indexterm><literal>\oslash</literal>
</term><listitem><para>&#x2298; Solidus, o slash, dentro de un círculo (binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\otimes</primary></indexterm><literal>\otimes</literal>
</term><listitem><para>&#x2297;  Signo de  tiempo,  o cruz,  dentro  de un  círculo
(binario).          Similar:         operador         de        tamaño
variable&#160;<literal>\bigotimes</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\owns</primary></indexterm><literal>\owns</literal>
</term><listitem><para>&#x220B;  épsilon de  membresía reflejada;  tiene el  miembro
(relación).   Sinónimo:&#160;<literal>\ni</literal>.   Similar:  es   un   miembro
de&#160;<literal>\in</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\parallel</primary></indexterm><literal>\parallel</literal>
</term><listitem><para>&#x2225; Paralelo (relación). Sinónimo:&#160;<literal>\|</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\partial</primary></indexterm><literal>\partial</literal>
</term><listitem><para>&#x2202; Diferencial parcial (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\perp</primary></indexterm><literal>\perp</literal>
</term><listitem><para>&#x27C2; Perpendicular  (relación).  Similar:&#160;<literal>\bot</literal>
usa el  mismo glifo pero el  espaciado es diferente porque  está en la
clase común.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Phi</primary></indexterm><literal>\Phi</literal>
</term><listitem><para>&#x03A6; Letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\phi</primary></indexterm><literal>\phi</literal>
</term><listitem><para>&#x03D5; Letra griega minúscula (común).  La forma variante
es <literal>\varphi</literal>&#160;&#x03C6;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Pi</primary></indexterm><literal>\Pi</literal>
</term><listitem><para>&#x03A0; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\pi</primary></indexterm><literal>\pi</literal>
</term><listitem><para>&#x03C0; Letra griega minúscula  (común).  La forma variante
es <literal>\varpi</literal>&#160;&#x03D6;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\pm</primary></indexterm><literal>\pm</literal>
</term><listitem><para>&#x00B1; Más o menos (binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\prec</primary></indexterm><literal>\prec</literal>
</term><listitem><para>&#x227A; Precede (relación). Similar: menor que&#160;<literal>&lt;</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\preceq</primary></indexterm><literal>\preceq</literal>
</term><listitem><para>&#x2AAF; Precede o es igual a (relación). Similar: menor que
o igual a&#160;<literal>\leq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\prime</primary></indexterm><literal>\prime</literal>
</term><listitem><para>&#x2032;  Prime,   o  minuto  en  una   expresión  de  tiempo
(común).     Normalmente    se    usa   como    un    superíndice:
<literal>$f^\prime$</literal>; <literal>$f^\prime$</literal>  y <literal>$f'$</literal> producen  el mismo
resultado.  Una  ventaja del segundo  es que <literal>$f'''$</literal>  produce el
símbolo    deseado,    es    decir,   el    mismo    resultado    como
<literal>$f^{\prime\prime\prime}$</literal>,    pero    usa    bastante    menos
mecanografía.  Solo puedes usar <literal>\prime</literal> en modo math.  Usando la
comilla derecha simple&#160;<literal>'</literal> en modo texto produce un carácter
diferente (apóstrofe).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\prod</primary></indexterm><literal>\prod</literal>
</term><listitem><para>&#x220F; Producto (operador).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\propto</primary></indexterm><literal>\propto</literal>
</term><listitem><para>&#x221D; Es proporcional a (relación)
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Psi</primary></indexterm><literal>\Psi</literal>
</term><listitem><para>&#x03A8; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\psi</primary></indexterm><literal>\psi</literal>
</term><listitem><para>&#x03C8; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rangle</primary></indexterm><literal>\rangle</literal>
</term><listitem><para>&#x27E9;  Ángulo  recto,  o  secuencia,  corchete  (cierre).
Similar: mayor que&#160;<literal>&gt;</literal>. Coincidencia:<literal>\langle</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rbrace</primary></indexterm><literal>\rbrace</literal>
</term><listitem><para>&#x007D;            Llave             derecha            (de
cierre). Sinónimo:&#160;<literal>\}</literal>. Coincide con&#160;<literal>\lbrace</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rbrack</primary></indexterm><literal>\rbrack</literal>
</term><listitem><para>&#x005D;           Corchete            derecho           (de
cierre). Sinónimo:&#160;<literal>]</literal>. Coincide con&#160;<literal>\lbrack</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rceil</primary></indexterm><literal>\rceil</literal>
</term><listitem><para>&#x2309;   Soporte  de   techo  derecho   (cierre).  Coincide
con&#160;<literal>\lceil</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Re</primary></indexterm><literal>\Re</literal>
</term><listitem><para>&#x211C;  Parte  real,  números   reales,  R  mayúscula  cursiva
(común).  Relacionado:    doble  línea   o  negrita   de  pizarra,
R&#160;<literal>\mathbb{R}</literal>;   acceder    esto,   carga    el   paquete
<literal>amsfonts</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\restriction</primary></indexterm><literal>\restriction</literal>
</term><listitem><para>&#x21BE;,   Restricción  de   una   función  (relación).   Sinónimo:
<literal>\upharpoonright</literal>.  No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\revemptyset</primary></indexterm><literal>\revemptyset</literal>
</term><listitem><para>&#x29B0;,   Símbolo  de   conjunto   vacío  invertido   (común).
Relacionado:  <literal>\varnothing</literal>. No disponible en &tex; simple. En &latex; necesitas cargar el paquete <filename>stix</filename>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rfloor</primary></indexterm><literal>\rfloor</literal>
</term><listitem><para>&#x230B; Soporte de piso derecho, un corchete derecho con el
corte superior apagado (cierre). Coincide con&#160;<literal>\lfloor</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rhd</primary></indexterm><literal>\rhd</literal>
</term><listitem><para>&#x25C1; Punta de  flecha, es decir, triángulo,  apuntando a la
derecha (binario).  Para  el símbolo de subgrupo normal,  en su lugar,
debes  cargar  <literal>amssymb</literal>  y  use&#160;<literal>\vartriangleright</literal>
(que es una relación y así da un mejor espaciado).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rho</primary></indexterm><literal>\rho</literal>
</term><listitem><para>&#x03C1; Letra griega minúscula (común).  La forma variante
es <literal>\varrho</literal>&#160;&#x03F1;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Rightarrow</primary></indexterm><literal>\Rightarrow</literal>
</term><listitem><para>&#x21D2; Implica, flecha de doble línea hacia la derecha
(relación).     Similar:     flecha     derecha    de     una     sola
línea&#160;<literal>\rightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rightarrow</primary></indexterm><literal>\rightarrow</literal>
</term><listitem><para>&#x2192; Flecha  de una sola  línea que apunta  hacia la
derecha (relación).   Sinónimo:&#160;<literal>\to</literal>. Similar:  línea doble
fecha derecha&#160;<literal>\Rightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rightharpoondown</primary></indexterm><literal>\rightharpoondown</literal>
</term><listitem><para>&#x21C1;  Arpón que  apunta hacia  la derecha  con
lengüeta debajo de la línea (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rightharpoonup</primary></indexterm><literal>\rightharpoonup</literal>
</term><listitem><para>&#x21C0; Arpón  apuntando a la derecha  con lengüeta
sobre el línea (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rightleftharpoons</primary></indexterm><literal>\rightleftharpoons</literal>
</term><listitem><para>&#x21CC;  Arpón  derecho arriba  arpón  izquierdo
abajo (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\searrow</primary></indexterm><literal>\searrow</literal>
</term><listitem><para>&#x2198; Flecha que apunta al sureste (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\setminus</primary></indexterm><literal>\setminus</literal>
</term><listitem><para>&#x29F5;  Establecer diferencia,  solido  inverso o  barra
invertida,      como       \      (binario).       Similar:      barra
inversa&#160;<literal>\backslash</literal>  y también  <literal>\textbackslash</literal> fuera
del modo matemático.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sharp</primary></indexterm><literal>\sharp</literal>
</term><listitem><para>&#x266F; Sostenido musical (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Sigma</primary></indexterm><literal>\Sigma</literal>
</term><listitem><para>&#x03A3; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sigma</primary></indexterm><literal>\sigma</literal>
</term><listitem><para>&#x03C3;  Letra   griega  minúscula  (común).   La  forma
variante es <literal>\varsigma</literal>&#160;&#x03C2;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sim</primary></indexterm><literal>\sim</literal>
</term><listitem><para>&#x223C; Similar, en una relación (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\simeq</primary></indexterm><literal>\simeq</literal>
</term><listitem><para>&#x2243; Similar o igual a, en una relación (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\smallint</primary></indexterm><literal>\smallint</literal>
</term><listitem><para>&#x222B; Signo integral que no cambia a un tamaño mayor en
una pantalla (operador).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\smile</primary></indexterm><literal>\smile</literal>
</term><listitem><para>&#x2323; Arco curvo hacia arriba, sonrisa (normal).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\spadesuit</primary></indexterm><literal>\spadesuit</literal>
</term><listitem><para>&#x2660; Palo de cartas de espadas (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sqcap</primary></indexterm><literal>\sqcap</literal>
</term><listitem><para>&#x2293; Símbolo de intersección cuadrada (binario). Similar:
intersección&#160;<literal>cap</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sqcup</primary></indexterm><literal>\sqcup</literal>
</term><listitem><para>&#x2294;  Símbolo  de   unión  cuadrada  (binario).  Similar:
unión&#160;<literal>cup</literal>.     Relacionado:     de     tamaño     variable
operator&#160;<literal>\bigsqcup</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sqsubset</primary></indexterm><literal>\sqsubset</literal>
</term><listitem><para>&#x228F;,  símbolo  de  subconjunto  cuadrado  (relación).  Similar:
subconjunto&#160;<literal>\subset</literal>. No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sqsubseteq</primary></indexterm><literal>\sqsubseteq</literal>
</term><listitem><para>&#x2291;   Subconjunto   cuadrado    o   símbolo   igual
(binario). Similar: subconjunto o igual a&#160;<literal>\subseteq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sqsupset</primary></indexterm><literal>\sqsupset</literal>
</term><listitem><para>&#x2290;,  símbolo de  superconjunto  cuadrado (relación).  Similar:
superconjunto&#160;<literal>\supset</literal>. No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sqsupseteq</primary></indexterm><literal>\sqsupseteq</literal>
</term><listitem><para>&#x2292;   Superconjunto   cuadrado  o   símbolo   igual
(binario).  Similar: superconjunto o igual&#160;<literal>\supseteq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\star</primary></indexterm><literal>\star</literal>
</term><listitem><para>&#x22C6;  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&#160;<literal>*</literal>   y
<literal>\ast</literal>, que son  de seis puntas, y más a  menudo aparecen como un
superíndice o subíndice, como con la estrella Kleene.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\subset</primary></indexterm><literal>\subset</literal>
</term><listitem><para>&#x2282;  Subconjunto  (ocasionalmente, está  implícito  en)
(relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\subseteq</primary></indexterm><literal>\subseteq</literal>
</term><listitem><para>&#x2286; Subconjunto o igual a (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\succ</primary></indexterm><literal>\succ</literal>
</term><listitem><para>&#x227B; Viene  después, tiene  éxito (relación).  Similar: es
menos que&#160;<literal>&gt;</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\succeq</primary></indexterm><literal>\succeq</literal>
</term><listitem><para>&#x2AB0; Tiene éxito o es igual a (relación). Similar: menos
que o igual a&#160;<literal>\leq</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sum</primary></indexterm><literal>\sum</literal>
</term><listitem><para>&#x2211;   Sumatoria   (operador).  Similar:   capital   griega
sigma&#160;<literal>\Sigma</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\supset</primary></indexterm><literal>\supset</literal>
</term><listitem><para>&#x2283; Superconjunto (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\supseteq</primary></indexterm><literal>\supseteq</literal>
</term><listitem><para>&#x2287; Superconjunto o igual a (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\surd</primary></indexterm><literal>\surd</literal>
</term><listitem><para>&#x221A;  Símbolo radical  (común).   El comando  &latex;
<literal>\sqrt{...}</literal> escribe  la raíz  cuadrada del argumento,  con una
barra que se extiende para cubrir el argumento.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\swarrow</primary></indexterm><literal>\swarrow</literal>
</term><listitem><para>&#x2199; Flecha que apunta al suroeste (relación).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tau</primary></indexterm><literal>\tau</literal>
</term><listitem><para>&#x03C4; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\theta</primary></indexterm><literal>\theta</literal>
</term><listitem><para>&#x03B8;  Letra   griega  minúscula  (común).   La  forma
variante es <literal>\vartheta</literal>&#160;&#x03D1;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\times</primary></indexterm><literal>\times</literal>
</term><listitem><para>&#x00D7;   Signo  de   multiplicación  de   escuela  primaria
(binario). Ve también&#160;<literal>\cdot</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\to</primary></indexterm><literal>\to</literal>
</term><listitem><para>&#x2192; Flecha  de una sola  línea que apunta hacia  la derecha
(relación).  Sinónimo:&#160;<literal>\rightarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\top</primary></indexterm><literal>\top</literal>
</term><listitem><para>&#x22A4;   Arriba,  elemento   más   grande   de  un   conjunto
parcialmente ordenado (común). Consulta también&#160;<literal>\bot</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\triangle</primary></indexterm><literal>\triangle</literal>
</term><listitem><para>&#x25B3; Triángulo (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\triangleleft</primary></indexterm><literal>\triangleleft</literal>
</term><listitem><para>&#x25C1; Triángulo  sin rellenar  que apunta  hacia la
izquierda  (binario). Similar:&#160;<literal>\lhd</literal>.  Para  el símbolo  de
subgrupo    normal    que     debe    cargar    <literal>amssymb</literal>    y
usar&#160;<literal>\vartriangleleft</literal> (que es una  relación y por lo tanto
proporciona un mejor espaciado).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\triangleright</primary></indexterm><literal>\triangleright</literal>
</term><listitem><para>&#x25B7;  Triángulo  sin  rellenar que  apunta  a  la
derecha (binario).  Para el símbolo  de subgrupo normal, en  su lugar,
debe  cargar  <literal>amssymb</literal>  y  usar&#160;<literal>\vartriangleright</literal>
(que es una relación y así da un mejor espaciado).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\unlhd</primary></indexterm><literal>\unlhd</literal>
</term><listitem><para>&#x22B4;  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 <literal>amssymb</literal>
y  usa&#160;<literal>\vartrianglelefteq</literal> (que  es una  relación y  por lo
tanto da mejor espaciado).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\unrhd</primary></indexterm><literal>\unrhd</literal>
</term><listitem><para>&#x22B5;  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 <literal>amssymb</literal>
y usa&#160;<literal>\vartrianglerighteq</literal>  (que es  una relación y  por lo
tanto da mejor espaciado).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Uparrow</primary></indexterm><literal>\Uparrow</literal>
</term><listitem><para>&#x21D1;  Flecha de  doble  línea que  apunta hacia  arriba
(relación).  Similar:  apuntando  hacia   arriba  de  una  sola  línea
flecha&#160;<literal>\uparrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\uparrow</primary></indexterm><literal>\uparrow</literal>
</term><listitem><para>&#x2191; Flecha de una sola  línea que apunta hacia arriba,
diverge  (relación).  Similar:  doble  línea  apuntando  hacia  arriba
flecha&#160;<literal>\Uparrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Updownarrow</primary></indexterm><literal>\Updownarrow</literal>
</term><listitem><para>&#x21D5; 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&#160;<literal>\updownarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\updownarrow</primary></indexterm><literal>\updownarrow</literal>
</term><listitem><para>&#x2195;  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&#160;<literal>\Updownarrow</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\upharpoonright</primary></indexterm><literal>\upharpoonright</literal>
</term><listitem><para>&#x21BE;,   arpón   levantado,   con   púa  en   el   lado   derecho
(relación).         Sinónimo:&#160;<literal>&#92;restriction</literal>.
No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\uplus</primary></indexterm><literal>\uplus</literal>
</term><listitem><para>&#x228E;  Unión multiconjunto,  un  símbolo de  unión con  un
símbolo      más     en      el     medio      (binario).     Similar:
union&#160;<literal>\cup</literal>.     Relacionado:     operador     de    tamaño
variable&#160;<literal>\biguplus</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Upsilon</primary></indexterm><literal>\Upsilon</literal>
</term><listitem><para>&#x03A5; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\upsilon</primary></indexterm><literal>\upsilon</literal>
</term><listitem><para>&#x03C5; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\varepsilon</primary></indexterm><literal>\varepsilon</literal>
</term><listitem><para>&#x03B5;   Epsilon   de   script  en   letra   minúscula
(común).   Esto es  ampliamente  utilizado en  matemáticas que  la
forma          épsilon          semilunar         no          variante
<literal>\epsilon</literal>&#160;&#x03F5;.    Relacionado:    establece
membresía&#160;<literal>\in</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vanothing</primary></indexterm><literal>\vanothing</literal>
</term><listitem><para>&#x2205;,      Símbolo     de      conjunto     vacío.      Similar:
<literal>\emptyset</literal>.                                         Relacionado:
<literal>\revemptyset</literal>. No disponible en &tex; simple. En &latex; necesitas cargar el paquete <literal>amssymb</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\varphi</primary></indexterm><literal>\varphi</literal>
</term><listitem><para>&#x03C6; Variante de la  letra griega minúscula (común).
La forma no variante es <literal>\phi</literal>&#160;&#x03D5;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\varpi</primary></indexterm><literal>\varpi</literal>
</term><listitem><para>&#x03D6; Variante  de la letra griega  minúscula (común).
La forma no variante es <literal>\pi</literal>&#160;&#x03C0;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\varrho</primary></indexterm><literal>\varrho</literal>
</term><listitem><para>&#x03F1; Variante de la  letra griega minúscula (común).
La forma no variante es <literal>\rho</literal>&#160;&#x03C1;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\varsigma</primary></indexterm><literal>\varsigma</literal>
</term><listitem><para>&#x03C2; Variante  de la  letra griega  minúscula (común).
La forma no variante es <literal>\sigma</literal>&#160;&#x03C3;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vartheta</primary></indexterm><literal>\vartheta</literal>
</term><listitem><para>&#x03D1; Variante  de la  letra griega  minúscula (común).
La forma no variante es <literal>\theta</literal>&#160;&#x03B8;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vdash</primary></indexterm><literal>\vdash</literal>
</term><listitem><para>&#x22A2;  Demostrable;   torniquete,  vertical  y   un  guión
(relación).         Similar:          torniquete        giró        un
semicírculo&#160;<literal>\dashv</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vee</primary></indexterm><literal>\vee</literal>
</term><listitem><para>&#x2228;  Lógico  o; una  forma  de  v hacia  abajo  (binario).
Relacionado:   y   lógico&#160;<literal>\wedge</literal>.   Similar:    de  tamaño
variable operator&#160;<literal>\bigvee</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Vert</primary></indexterm><literal>\Vert</literal>
</term><listitem><para>&#x2016; Doble barra  vertical (común).  Véase <link linkend="Delimitadores">Delimitadores</link>,
sobre cómo usar el paquete  <literal>mathtools</literal> para crear símbolos de
norma.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vert</primary></indexterm><literal>\vert</literal>
</term><listitem><para>&#x007C; Barra vertical de una sola línea (común).  Para &#8220;tal
que&#8221;,  como en  la  definición de  un conjunto,  usa&#160;<literal>\mid</literal>
porque es una  relación Véase <link linkend="Delimitadores">Delimitadores</link>, para saber  cómo usar el
paquete <literal>mathtools</literal>  para crear símbolos de  valor absoluto de
tamaño flexible.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\wedge</primary></indexterm><literal>\wedge</literal>
</term><listitem><para>&#x2227;  y lógico  (binario).  Sinónimo:&#160;<literal>\land</literal>.
Ve  también  or  lógico   <literal>\vee</literal>.  Similar:  operator  de  tamaño
variable&#160;<literal>\bigwedge</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\wp</primary></indexterm><literal>\wp</literal>
</term><listitem><para>&#x2118; Weierstrass p (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\wr</primary></indexterm><literal>\wr</literal>
</term><listitem><para>&#x2240; Producto de guirnalda (binario).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Xi</primary></indexterm><literal>\Xi</literal>
</term><listitem><para>&#x039E; letra griega mayúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\xi</primary></indexterm><literal>\xi</literal>
</term><listitem><para>&#x03BE; Letra griega minúscula (común).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\zeta</primary></indexterm><literal>\zeta</literal>
</term><listitem><para>&#x03B6; Letra griega minúscula (común).
</para>
</listitem></varlistentry></variablelist>
<para>Los  siguientes símbolos  se usan  con mayor  frecuencia en  texto sin
formato,  pero  &latex;  proporciona  versiones para  usar  en  texto
matemático.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\mathdollar</primary></indexterm><literal>\mathdollar</literal>
</term><listitem><para>Signo de dólar en modo matemático: $.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mathparagraph</primary></indexterm><literal>\mathparagraph</literal>
</term><listitem><para>Signo de párrafo (pilcrow) en modo matemático, &#x00B6;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mathsection</primary></indexterm><literal>\mathsection</literal>
</term><listitem><para>Signo de sección en modo math: &#x00A7;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mathsterling</primary></indexterm><literal>\mathsterling</literal>
</term><listitem><para>Signo esterlina en modo matemático: &#163;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mathunderscore</primary></indexterm><literal>\mathunderscore</literal>
</term><listitem><para>Guión bajo en modo matemático: _.
</para>
</listitem></varlistentry></variablelist>


<sect2 label="16.2.1" id="Flechas">
<title>Flechas</title>

<indexterm role="cp"><primary>flechas</primary></indexterm>
<indexterm role="cp"><primary>símbolos, flechas</primary></indexterm>
<indexterm role="fn"><primary>math, flechas</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>amsfonts</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsfonts</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>latexsym</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>latexsym</literal> package</primary></indexterm>
<para>Estas  son las  flechas  que
vienen  con  &latex;  estándar.  Los  paquetes  <literal>latexsym</literal>  y
<literal>amsfonts</literal> contienen muchos más.
</para>
<informaltable><tgroup cols="3"><colspec colwidth="10*"></colspec><colspec colwidth="40*"></colspec><colspec colwidth="50*"></colspec><thead><row><entry><para>Símbolo</para></entry><entry><para>Comando</para></entry><entry></entry></row></thead><tbody><row><entry><para>&#x021D3; </para></entry><entry><para><literal>\Downarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02193; </para></entry><entry><para><literal>\downarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021A9; </para></entry><entry><para><literal>\hookleftarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021AA; </para></entry><entry><para><literal>\hookrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x2190; </para></entry><entry><para><literal>\leftarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021D0; </para></entry><entry><para><literal>\Leftarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021D4; </para></entry><entry><para><literal>\Leftrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02194; </para></entry><entry><para><literal>\leftrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x027F5; </para></entry><entry><para><literal>\longleftarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x027F8; </para></entry><entry><para><literal>\Longleftarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x027F7; </para></entry><entry><para><literal>\longleftrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x027FA; </para></entry><entry><para><literal>\Longleftrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x027FC; </para></entry><entry><para><literal>\longmapsto</literal> </para></entry><entry></entry></row><row><entry><para>&#x027F9; </para></entry><entry><para><literal>\Longrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x027F6; </para></entry><entry><para><literal>\longrightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021A6; </para></entry><entry><para><literal>\mapsto</literal> </para></entry><entry></entry></row><row><entry><para>&#x02197; </para></entry><entry><para><literal>\nearrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02196; </para></entry><entry><para><literal>\nwarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021D2; </para></entry><entry><para><literal>\Rightarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02192; </para></entry><entry><para><literal>\rightarrow</literal>, o <literal>\to</literal> </para></entry><entry></entry></row><row><entry><para>&#x02198; </para></entry><entry><para><literal>\searrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02199; </para></entry><entry><para><literal>\swarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02191; </para></entry><entry><para><literal>\uparrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021D1; </para></entry><entry><para><literal>\Uparrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x02195; </para></entry><entry><para><literal>\updownarrow</literal> </para></entry><entry></entry></row><row><entry><para>&#x021D5; </para></entry><entry><para><literal>\Updownarrow</literal> </para></entry><entry></entry></row></tbody></tgroup></informaltable>
<para>Un  ejemplo de  la diferencia  entre <literal>\to</literal>  y <literal>\mapsto</literal>  es:
<literal>\( f\colon D\to C \) dado por \( n\mapsto n^2 \)</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>amscd</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amscd</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>tikz-cd</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>tikz-cd</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>amscd</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amscd</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>tikz-cd</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>tikz-cd</literal> package</primary></indexterm>
<para>Para  diagramas  conmutativos  hay  una  serie  de
paquetes, incluyendo <literal>tikz-cd</literal> y <literal>amscd</literal>.
</para>

</sect2>
<sect2 label="16.2.2" id="_005cboldmath-y-_005cunboldmath">
<title><literal>\boldmath</literal> y <literal>\unboldmath</literal></title>

<anchor id="_005cboldmath"/><anchor id="_005cunboldmath"/><indexterm role="fn"><primary>\boldmath</primary></indexterm>
<indexterm role="fn"><primary>\unboldmath</primary></indexterm>
<indexterm role="cp"><primary>matemáticas en negrita</primary></indexterm>
<indexterm role="cp"><primary>matemáticas, negrita</primary></indexterm>

<para>Sinopsis (usada en modo párrafo o modo LR):
</para>
<screen>\boldmath \( <replaceable>math</replaceable> \)
</screen>
<para>o
</para>
<screen>\unboldmath \( <replaceable>math</replaceable> \)
</screen>
<indexterm role="fn"><primary>\boldmath</primary></indexterm>
<indexterm role="fn"><primary>\unboldmath</primary></indexterm>
<para>Declaraciones para  cambiar las letras  y símbolos en  <replaceable>math</replaceable> 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  <emphasis>no</emphasis> está  en modo  math  o el  modo <literal>display  math</literal>
(véase <link linkend="Modos">Modos</link>). Ambos comandos son frágiles (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>En este ejemplo,  cada comando <literal>\boldmath</literal> tiene  lugar dentro de
un <literal>\mbox</literal>,
</para>
<screen>tenemos $\mbox{\boldmath \(v \)} = 5\cdot\mbox{\boldmath \(u \)$}$
</screen>
<para>lo cual  significa que <literal>\boldmath</literal>  solo se llama en  modo texto,
aquí LR y  explica por qué debemos cambiar &latex;  al modo math para
establecer <literal>v</literal> y <literal>u</literal>.
</para>
<para>Si usas cualquiera  de los comandos dentro del  <literal>modo math</literal>, como
con <literal>Problema:  \( \boldmath x  \)</literal>, entonces obtienes  algo como
&#8216;<literal>Advertencia  de letras  LaTeX:  Comando  \boldmath no  válido en
modo  math</literal>&#8217;  y &#8216;<literal>Advertencia  de  tipo  de letra  LaTeX:   Comando
\mathversion inválido en modo math</literal>&#8217;.
</para>

<sect3 label="16.2.2.1" id="bm">
<title><literal>bm</literal>: Símbolos matemáticos individuales en negrita</title>

<indexterm role="cp"><primary>package, <literal>bm</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>bm</literal> package</primary></indexterm>

<indexterm role="cp"><primary>símbolos, negrita</primary></indexterm>

<!-- https://github.com/latex3/latex2e/issues/974 -->
<para>Especificar  <literal>\boldmath</literal> 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
<literal>bm</literal>  proporcionado por  el  equipo del  proyecto &latex;  es
mejor.  Su uso  está fuera del alcance de este  documento (consulta su
documentación  en <ulink url="https://ctan.org/pkg/bm">https://ctan.org/pkg/bm</ulink>  o en  tu instalación)
pero el espacio  en la salida de este pequeño  ejemplo mostrará que es
una mejora sobre <literal>\boldmath</literal> dentro de una expresión:
</para>
<screen>\usepackage{bm}   % en el preámbulo
...
tenemos $\bm{v} = 5\cdot\bm{u}$
</screen>
</sect3>
<sect3 label="16.2.2.2" id="Math-OpenType-en-negrita">
<title>Math OpenType en negrita</title>

<indexterm role="cp"><primary>package, <literal>fontspec</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>fontspec</literal> package</primary></indexterm>


<para>Desafortunadamente,   al  usar   los   motores  Unicode   (Xe&latex;,
Lua&latex;),  ni <literal>\boldmath</literal>  ni  <literal>bm</literal> 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 <literal>\boldmath</literal> como  <literal>bm</literal> lo requieren.
(La implementación de <literal>bm</literal> se basa en <literal>\boldmath</literal>, por lo
que  los requisitos  son  los mismos).   Si tienes  un  tipo de  letra
matemático  en negrita,  entonces <literal>\boldmath</literal>  y el  <literal>bm</literal>
funcionan bien.
</para>
<para>Si no hay  tal tipo de letra disponible, una  alternativa es construir
un tipo de  letra en negrita falso con  el parámetro <literal>FakeBold=1</literal>
del   paquete    <literal>fontspec</literal>   (consulta    su   documentación,
<ulink url="https://ctan.org/pkg/fontspec">https://ctan.org/pkg/fontspec</ulink>).  Esto  puede ser  aceptable para
redacción o distribución informal, pero  los resultados están lejos de
ser una verdadera negrita.
</para>
<indexterm role="cp"><primary>package, <literal>unicode-math</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>unicode-math</literal> package</primary></indexterm>

<indexterm role="fn"><primary>\symbf</primary></indexterm>
<indexterm role="fn"><primary>\symbfit</primary></indexterm>
<para>Otra alternativa al manejo de  negrita para tipos de letra matemáticos
OpenType es usar el  <literal>\symbf</literal> (negrita), <literal>\symbfit</literal> (negrita
y cursiva) y comandos relacionados del paquete <literal>unicode-math</literal>.
Estos  no  cambian el  tipo  de  letra  actual,  sino que  cambian  el
&quot;alfabeto&quot; (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
(<ulink url="https://ctan.org/pkg/unicode-math">https://ctan.org/pkg/unicode-math</ulink>).
</para>
</sect3>
</sect2>
<sect2 label="16.2.3" id="Pizarra-negra">
<title>Pizarra negra</title>

<indexterm role="cp"><primary>pizarra en negrita</primary></indexterm>
<indexterm role="cp"><primary>doblemente sorprendido</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usepackage{amssymb}   % en el preámbulo
  ...
\mathbb{<replaceable>uppercase-letter</replaceable>}
</screen>
<para>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.
</para>
<para>Aquí
</para>
<screen>\( \forall n \in \mathbb{N}, n^2 \geq 0 \)
</screen>
<para>el   <literal>\mathbb{N}</literal>  da   el  símbolo   de  pizarra   en  negrita
&#x2115;, representación de los números naturales.
</para>
<para>Si  el argumento  contiene algo  que no  sea una  letra mayúscula,  no
obtienes  un  error,  pero  obtienes  resultados  extraños,  incluidos
caracteres inesperados.
</para>
<para>Hay paquetes  que dan  acceso a  otros símbolos  además de  las letras
mayúsculas; mira en CTAN.
</para>

</sect2>
<sect2 label="16.2.4" id="Caligr_00e1fico">
<title>Caligráfico</title>

<indexterm role="cp"><primary>tipos de letra caligráficas</primary></indexterm>
<indexterm role="cp"><primary>tipos de letra script</primary></indexterm>
<indexterm role="cp"><primary>tipos de letra, script</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\mathcal{<replaceable>letras-mayúsculas</replaceable>}
</screen>
<para>Utiliza un tipo de letra como el tipo script.
</para>
<para>En  este ejemplo,  el identificador  del  gráfico se  genera en  letra
cursiva.
</para>
<screen>Sea la gráfica \( \mathcal{G} \).
</screen>
<para>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, <literal>\mathcal{g}</literal> genera un símbolo de llave de cierre.
</para>

</sect2>
<sect2 label="16.2.5" id="Delimitadores">
<title>Delimitadores</title>

<indexterm role="cp"><primary>delimitadores</primary></indexterm>
<indexterm role="cp"><primary>paréntesis</primary></indexterm>
<indexterm role="cp"><primary>corchetes</primary></indexterm>
<indexterm role="cp"><primary>llaves</primary></indexterm>
<indexterm role="cp"><primary>soportes</primary></indexterm>

<para>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.
</para>
<screen>(z-z_0)^2 = (x-x_0)^2 + (y-y_0)^2
</screen>
<para>No es  necesario que  los delimitadores coincidan,  por lo  que puedes
ingresar <literal>\( [0,1) \)</literal>.
</para>
<para>Estos son los delimitadores comunes.:
</para>
<informaltable><tgroup cols="4"><colspec colwidth="11*"></colspec><colspec colwidth="20*"></colspec><colspec colwidth="40*"></colspec><colspec colwidth="29*"></colspec><thead><row><entry><para>Delimitador</para></entry><entry><para>Comando</para></entry><entry><para>Nombre
</para></entry></row></thead><tbody><row><entry><para>( </para></entry><entry><para><literal>(</literal> </para></entry><entry><para>Paréntesis izquierdo
</para></entry></row><row><entry><para>) </para></entry><entry><para><literal>)</literal> </para></entry><entry><para>Paréntesis derecho
</para></entry></row><row><entry><para>\} </para></entry><entry><para><literal>{</literal> o <literal>\lbrace</literal> </para></entry><entry><para>Llave izquierda
</para></entry></row><row><entry><para>\{ </para></entry><entry><para><literal>}</literal> o <literal>\rbrace</literal> </para></entry><entry><para>Llave derecha
</para></entry></row><row><entry><para>[ </para></entry><entry><para><literal>[</literal> o <literal>\lbrack</literal> </para></entry><entry><para>Corchete izquierdo
</para></entry></row><row><entry><para>] </para></entry><entry><para><literal>]</literal> o <literal>\rbrack</literal> </para></entry><entry><para>Corchete derecho
</para></entry></row><row><entry><para>&#x230A; </para></entry><entry><para><literal>\lfloor</literal> </para></entry><entry><para>Left floor bracket
</para></entry></row><row><entry><para>&#x230B; </para></entry><entry><para><literal>\rfloor</literal> </para></entry><entry><para>Soporte de piso derecho
</para></entry></row><row><entry><para>&#x2308; </para></entry><entry><para><literal>\lceil</literal> </para></entry><entry><para>Soporte superior izquierdo
</para></entry></row><row><entry><para>&#x2309; </para></entry><entry><para><literal>\rceil</literal> </para></entry><entry><para>Soporte superior derecho
</para></entry></row><row><entry><para>&#x27E8;   </para></entry><entry><para><literal>\langle</literal>   </para></entry><entry><para>Paréntesis   angular
izquierdo
</para></entry></row><row><entry><para>&#x27E9; </para></entry><entry><para><literal>\rangle</literal> </para></entry><entry><para>Soporte angular derecho
</para></entry></row><row><entry><para>/ </para></entry><entry><para><literal>/</literal> </para></entry><entry><para>Barra o barra inclinada
</para></entry></row><row><entry><para>\ </para></entry><entry><para><literal>\backslash</literal> </para></entry><entry><para>Barra invertida o barra invertida
</para></entry></row><row><entry><para>| </para></entry><entry><para><literal>|</literal> o <literal>\vert</literal> </para></entry><entry><para>Barra vertical
</para></entry></row><row><entry><para>&#x2016; </para></entry><entry><para><literal>\|</literal> o <literal>\Vert</literal> </para></entry><entry><para>Barra vertical doble
</para></entry></row></tbody></tgroup></informaltable>
<indexterm role="cp"><primary>package, <literal>mathtools</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mathtools</literal> package</primary></indexterm>
<para>El  paquete <literal>mathtools</literal> te  permite crear
comandos   para   pares   delimitadores.   Por   ejemplo,   si   pones
<literal>\DeclarePairedDelimiter\abs{\lvert}{\rvert}</literal> 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 <literal>\abs*{\frac{22}{7}}</literal>,  tiene la altura de  las barras
verticales  coincide  con  la  altura del  argumento.   La  forma  sin
estrella, como <literal>\abs{\frac{22}{7}}</literal>, tiene las barras fijas
a una altura predeterminada.  Esta forma acepta un argumento opcional,
como en el  <literal>\abs[<replaceable>comando size</replaceable>]{\frac{22}{7}}</literal>, donde
la  altura   de  las  barras   se  da  en  <replaceable>comando   size</replaceable>,  como
<literal>\Bigg</literal>. Usando  en su  lugar <literal>\lVert</literal> y  <literal>\rVert</literal> como
símbolos te darán un símbolo de norma con el mismo comportamiento.
</para>


<sect3 label="16.2.5.1" id="_005cleft-y-_005cright">
<title><literal>\left</literal> y <literal>\right</literal></title>

<anchor id="_005cleft"/><anchor id="_005cright"/><indexterm role="fn"><primary>\left</primary></indexterm>
<indexterm role="fn"><primary>\right|</primary></indexterm>
<indexterm role="cp"><primary>delimitadores, emparejados</primary></indexterm>
<indexterm role="cp"><primary>delimitadores emparejados</primary></indexterm>
<indexterm role="cp"><primary>paréntesis coincidentes</primary></indexterm>
<indexterm role="cp"><primary>corchetes coincidentes</primary></indexterm>
<indexterm role="cp"><primary>delimitador nulo</primary></indexterm>

<!-- Créditos: SE userPhilipp https://tex.stackexchange.com/a/12793 -->

<para>Sinopsis:
</para>
<screen>\left <replaceable>delimiter1</replaceable> ... \right <replaceable>delimiter2</replaceable>
</screen>
<para>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.
</para>
<para>Esto crea un vector unitario rodeado por paréntesis lo suficientemente
alto como para cubrir las entradas.
</para>
<screen>\begin{equation}
  \left(\begin{array}{c}
    1   \\
    0   \\
  \end{array}\right)
\end{equation}
</screen>
<para>Véase <link linkend="Delimitadores">Delimitadores</link>,  para obtener  una  lista  de los  delimitadores
comunes.
</para>
<para>Cada  <literal>\left</literal> debe  tener  un <literal>\right</literal>  coincidente.  En  el
ejemplo anterior, al omitir <literal>\left(</literal>  aparece el mensaje de error
&#8216;<literal>Extra \right</literal>&#8217;.  Omitir el <literal>\right)</literal> obtiene &#8216;<literal>No puedes
usar `\eqno' en modo matemático</literal>&#8217;.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>mathtools</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mathtools</literal> package</primary></indexterm>
<para>Sin embargo, <replaceable>delimiter1</replaceable>
y  <replaceable>delimiter2</replaceable> 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, &#8216;<literal>.</literal>&#8217;, como <firstterm>delimitador nulo</firstterm>.
</para>
<screen>\begin{equation}
  f(n)=\left\{\begin{array}{ll}
                1             &amp;\mbox{--if \(n=0\)} \\
                f(n-1)+3n^2   &amp;\mbox{--else}
       \end{array}\right.
\end{equation}
</screen>
<para>Ten en cuenta  que para obtener una llave como  delimitador, los debes
prefijar  con  una   barra  invertida,  <literal>\{</literal>  (véase <link linkend="Caracteres-reservados">Caracteres
reservados</link>).  (Los  paquetes <literal>amsmath</literal>  y <literal>mathtools</literal>
te permiten  obtener la construcción  anterior a través de  un entorno
<literal>cases</literal>).
</para>
<para>El par  <literal>\left ... \right</literal>  forma un grupo.  Una  consecuencia es
que la  fórmula encerrada en el  par <literal>\left ... \right</literal>  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.
</para>
<screen>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) \)
</screen>
<para>Pero con <literal>\left</literal> y <literal>\right</literal>
</para>
<screen>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) \)
</screen>
<para>&latex; no romperá  la línea, lo que hará que  la fórmula se extienda
al margen.
</para>
<para>Porque  <literal>\left ...  \right</literal> hace  un grupo,  todas las  reglas de
agrupación usuales se mantienen.  Aquí, el valor de <literal>\testlength</literal>
establecido  dentro  de  la  ecuación  se  olvidará  y  la  salida  es
&#8216;<literal>1.2pt</literal>&#8217;.
</para>
<screen>\newlength{\testlength} \setlength{\testlength}{1.2pt}
\begin{equation}
  \left( a+b=c \setlength{\testlength}{3.4pt} \right)
  \the\testlength
\end{equation}
</screen>
<para>El par  <literal>\left ... \right</literal>  afecta el espaciado horizontal  de la
fórmula  adjunta, de  dos  maneras.   La primera  es  que en  <literal>\(
\sin(x) = \sin\left(x\right)  \)</literal> el que está después  del signo igual
tiene más espacio alrededor del  <literal>x</literal>.  Eso es porque <literal>\left(
...  \right)</literal> inserta  un nodo  interno  mientras que  <literal>( ...  )</literal>
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.
</para>
<para>&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.
</para>
<screen>\begin{equation}
  \left[ \int_{x=r_0}^{\infty} -G\frac{Mm}{r^2}\, dr \right]
\end{equation}
</screen>
<para>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.
</para>
<screen>\begin{equation}
  \left( \rule{1pt}{1cm} \right)
\end{equation}
</screen>
<para>&tex; puede elegir delimitadores que  son demasiado pequeños, como en
<literal>\(   \left|  |x|+|y|   \right|   \)</literal>.    También  puede   elegir
delimitadores demasiado grandes, como aquí.
</para>
<screen>\begin{equation}
  \left( \sum_{0\leq i&lt;n} i^k \right)
\end{equation}
</screen>
<para>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
<literal>\left</literal> en la  primera línea y <literal>\right</literal> en  la última porque
deben estar emparejados.
</para>
<para>Para cambiar manualmente el tamaño  de los delimitadores, <link linkend="_005cbigl-y-_005cbigr-etc_002e">\bigl y
\bigr etc.</link>.
</para>

</sect3>
<sect3 label="16.2.5.2" id="_005cbigl-y-_005cbigr-etc_002e">
<title><literal>\bigl</literal>, <literal>\bigr</literal>, etc.</title>

<anchor id="_005cbigl"/><anchor id="_005cbigr"/><indexterm role="fn"><primary>\bigl</primary></indexterm>
<indexterm role="fn"><primary>\bigr</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\bigl<replaceable>delimiter1</replaceable> ... \bigr<replaceable>delimiter2</replaceable>
\Bigl<replaceable>delimiter1</replaceable> ... \bigr<replaceable>delimiter2</replaceable>
\biggl<replaceable>delimiter1</replaceable> ... \biggr<replaceable>delimiter2</replaceable>
\Biggl<replaceable>delimiter1</replaceable> ... \Biggr<replaceable>delimiter2</replaceable>
</screen>
<para>(como con <literal>\bigl[...\bigr]</literal>; estrictamente hablando, no necesitan
coincidir, ve más abajo), o uno de:
</para>
<screen>\bigm<replaceable>delimiter</replaceable>
\Bigm<replaceable>delimiter</replaceable>
\biggm<replaceable>delimiter</replaceable>
\Biggm<replaceable>delimiter</replaceable>
</screen>
<para>(como con <literal>\bigm|</literal>), o uno de:
</para>
<screen>\big<replaceable>delimiter</replaceable>
\Big<replaceable>delimiter</replaceable>
\bigg<replaceable>delimiter</replaceable>
\Bigg<replaceable>delimiter</replaceable>
</screen>
<para>(como con <literal>\\big[</literal>).
</para>
<para>Produce delimitadores  de tamaño  manual.  Para delimitadores  que son
tamaño automático&#160;<link linkend="_005cleft-y-_005cright">\left y \right</link>).
</para>
<para>Esto produce barras verticales exteriores ligeramente más grandes.
</para>
<screen>  \bigl| |x|+|y| \bigr|
</screen>
<para>Los  comandos anteriores  se enumeran  en orden  de tamaño  creciente.
Puedes  usar el  tamaño más  pequeño como  <literal>\bigl...\bigr</literal> 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.
</para>
<para>Véase <link linkend="Delimitadores">Delimitadores</link>,  para obtener  una  lista  de los  delimitadores
comunes.   En la  familia  de comandos  con &#8216;<literal>l</literal>&#8217;  o&#160;&#8216;<literal>r</literal>&#8217;,
<replaceable>delimiter1</replaceable> y <replaceable>delimiter2</replaceable> no necesita coincidir.
</para>
<para>Los  comandos &#8216;<literal>l</literal>&#8217;  y &#8216;<literal>r</literal>&#8217;  producen delimitadores  abiertos y
cerrados  que no  insertan ningún  espacio horizontal  entre un  átomo
precedente y el delimitador, mientras  que los comandos sin &#8216;<literal>l</literal>&#8217; y
&#8216;<literal>r</literal>&#8217;  insertan  algunos  espacios   (porque  cada  delimitador  se
establece como una variable ordinaria).  Compara estos dos.
</para>
<!-- crédito: Martin Heller https://tex.stackexchange.com/a/1234 -->
<screen>\begin{tabular}{l}
  \(\displaystyle \sin\biggl(\frac{1}{2}\biggr) \)  \\  % bien
  \(\displaystyle \sin\bigg(\frac{1}{2}\bigg)  \)   \\  % mal
\end{tabular}
</screen>
<para>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 <literal>\sin</literal> y el que apoya una moción paréntesis de apertura.
</para>
<para>Los comandos sin  &#8216;<literal>l</literal>&#8217; o&#160;&#8216;<literal>r</literal>&#8217; dan el  espacio correcto en
algunas circunstancias, como con esta gran línea vertical
</para>
<screen>\begin{equation}
  \int_{x=a}^b x^2\,dx = \frac{1}{3} x^3 \Big|_{x=a}^b
\end{equation}
</screen>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>

<para>(muchos   autores   reemplazarían    <literal>\frac</literal>   con   el   comando
<literal>\tfrac</literal> del  paquete <literal>amsmath</literal>),  y como con  esta barra
inclinada más grande.
</para>
<screen>\begin{equation}
  \lim_{n\to\infty}\pi(n) \big/ (n/\log n) = 1
\end{equation}
</screen>
<para>A diferencia  del par <literal>\left...\right</literal> (véase <link linkend="_005cleft-y-_005cright">\left  y \right</link>),
los comandos  aquí con  &#8216;<literal>l</literal>&#8217; o&#160;&#8216;<literal>r</literal>&#8217;  no forman  un grupo.
Estrictamente hablando, no es necesario  que coincidan para que puedas
escribir algo como esto.
</para>
<screen>\begin{equation}
  \Biggl[ \pi/6 ]
\end{equation}
</screen>
<para>Los comandos con  &#8216;<literal>m</literal>&#8217; son para relaciones, que están  en medio de
fórmulas, como aquí.
</para>
<screen>\begin{equation}
  \biggl\{ a\in B \biggm| a=\sum_{0\leq i&lt;n}3i^2+4 \biggr\}
\end{equation}
</screen>
<!-- xx Agregar  discusión \bigg\mid no  es bueno y \bigg|  tiene razón; -->
<!-- ¿Quizás mencionar el paquete \middle y braket? -->


</sect3>
</sect2>
<sect2 label="16.2.6" id="Puntos">
<title>Puntos, horizontales o verticales</title>

<indexterm role="cp"><primary>puntos suspensivos</primary></indexterm>
<indexterm role="cp"><primary>puntos</primary></indexterm>

<para>Las elipsis son los tres puntos (generalmente tres) que indican que un patrón
continúa.
</para>
<screen>\begin{array}{cccc}
  a_{0,0}    &amp;a_{0,1}   &amp;a_{0,2} &amp;\ldots \\
  a_{1,0}    &amp;\ddots                         \\
  \vdots
\end{array}
</screen>
<para>&latex; proporciona estos.
</para>
<variablelist><anchor id="elipsis-cdots"/><varlistentry><term><indexterm role="fn"><primary>\cdots</primary></indexterm><literal>\cdots</literal>
</term><listitem><para>Puntos suspensivos horizontales  con los puntos elevados  al centro de
la línea,  como en  &#x22EF;.  Usado como:  <literal>\( a_0\cdot
a_1\cdots a_{n-1} \)</literal>.
</para>
<anchor id="elipsis-ddots"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ddots</primary></indexterm><literal>\ddots</literal>
</term><listitem><para>Puntos suspensivos  diagonales, &#x22F1;.  Ve el  arreglo del
ejemplo anterior para un uso.
</para>
<anchor id="elipsis-ldots"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ldots</primary></indexterm><literal>\ldots</literal>
</term><term><indexterm role="fn"><primary>\mathellipsis</primary></indexterm><literal>\mathellipsis</literal>
</term><term><indexterm role="fn"><primary>\dots</primary></indexterm><literal>\dots</literal>
</term><listitem><para>Puntos suspensivos  en la línea base,  &#x2026;.  Usado como:
<literal>\( x_0,\ldots  x_{n-1} \)</literal>.   Otro ejemplo  es el  arreglo del
ejemplo   anterior.    Los   sinónimos  son   <literal>\mathellipsis</literal>   y
<literal>\dots</literal>.   Un   sinónimo  de  el  paquete   <literal>amsmath</literal>  es
<literal>\hdots</literal>.
</para>
<para>También puedes usar  este comando fuera del texto  matemático, como en
<literal>Los engranajes, frenos, \ldots{} están todos rotos</literal>.
</para>
<anchor id="elipsis-vdots"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vdots</primary></indexterm><literal>\vdots</literal>
</term><listitem><para>Puntos suspensivos  verticales, &#x22EE;.  Ve el  arreglo del
ejemplo anterior para un uso.
</para>
</listitem></varlistentry></variablelist>
<indexterm role="cp"><primary>package, <literal>ammath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>ammath</literal> package</primary></indexterm>
<para>El  paquete   <literal>amsmath</literal>  tiene  el  comando
<literal>\dots</literal>  para  semánticamente  marcar puntos  suspensivos.   Este
ejemplo produce dos salidas de aspecto diferente para los dos primeros
usos del comando <literal>\dots</literal>.
</para>
<screen>\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 \).
</screen>
<indexterm role="fn"><primary>\dotsc</primary></indexterm>
<indexterm role="fn"><primary>\dotsb</primary></indexterm>
<indexterm role="fn"><primary>\dotsi</primary></indexterm>
<indexterm role="fn"><primary>\dot</primary></indexterm>
<para>En la primera  línea, &latex; busca la coma que  sigue a <literal>\dots</literal>
para determinar que debe generar  puntos suspensivos en la línea base.
El segundo  tiene un <literal>\cdot</literal>  después de <literal>\dots</literal> 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: <literal>\dotsc</literal>  si necesitas
los puntos suspensivos apropiados para una coma después, <literal>\dotsb</literal>
si necesitas los  puntos suspensivos que se ajustan  cuando los puntos
van  seguidos   de  un  operador   binario  o  símbolo   de  relación,
<literal>\dotsi</literal> para puntos con integrales, o <literal>\dotso</literal> para otros.
</para>
<!-- https://github.com/latex3/latex2e/issues/976 -->
<indexterm role="cp"><primary>package, <literal>unicode-math</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>unicode-math</literal> package</primary></indexterm>
<para>El  comando <literal>\dots</literal>  de <literal>amsmath</literal>
difiere  de  otra  manera  del  comando  <literal>\dots</literal>  del  kernel  de
&latex;:   emite   un  espacio   delgado   después   de  los   puntos
suspensivos. Además, el paquete <literal>unicode-math</literal> automáticamente
carga <literal>amsmath</literal>, por lo que <literal>\dots</literal> del <literal>amsmath</literal>
puede  estar  activo incluso  cuando  no  lo cargaste  explícitamente,
cambiando así  la salida de <literal>\dots</literal>  tanto en modo de  texto como
matemático.
</para>
<indexterm role="cp"><primary>puntos suspensivos, en Unicode (U+2026)</primary></indexterm>
<indexterm role="cp"><primary>puntos suspensivos, tradicional (tres puntos)</primary></indexterm>
<para>Aún más  sobre los comandos  de puntos suspensivos: cuando  se ejecuta
bajo motores Unicode (<literal>lualatex</literal>, <literal>xelatex</literal>), &latex; usará
el  carácter de  puntos suspensivos  Unicode  (U+2026) en  el tipo  de
letra,  si   está  disponible;   bajo  motores   &tex;  tradicionales
(<literal>pdflatex</literal>,   <literal>latex</literal>),  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.
</para>

</sect2>
<sect2 label="16.2.7" id="Letras-griegas">
<title>Letras griegas</title>

<indexterm role="cp"><primary>Letras griegas</primary></indexterm>

<para>Las versiones en  mayúsculas de estas letras griegas  solo se muestran
cuando difieren de las mayúsculas romanas.
</para>
<informaltable><tgroup cols="4"><colspec colwidth="10*"></colspec><colspec colwidth="30*"></colspec><colspec colwidth="15*"></colspec><colspec colwidth="45*"></colspec><thead><row><entry><para>Symbol</para></entry><entry><para>Command</para></entry><entry><para>Name</para></entry><entry></entry></row></thead><tbody><row><entry><para>&#x03B1;</para></entry><entry><para><literal>\alpha</literal></para></entry><entry><para>Alpha
</para></entry></row><row><entry><para>&#x03B2;</para></entry><entry><para><literal>\beta</literal></para></entry><entry><para>Beta
</para></entry></row><row><entry><para>&#x03B3;,         &#x0393;</para></entry><entry><para><literal>\gamma</literal>,
<literal>\Gamma</literal></para></entry><entry><para>Gamma
</para></entry></row><row><entry><para>&#x03B4;,         &#x0394;</para></entry><entry><para><literal>\delta</literal>,
<literal>\Delta</literal></para></entry><entry><para>Delta
</para></entry></row><row><entry><para>&#x03B5;, &#x03F5;</para></entry><entry><para><literal>\varepsilon</literal>, <literal>\epsilon</literal></para></entry><entry><para>Epsilon
</para></entry></row><row><entry><para>&#x03B6;</para></entry><entry><para><literal>\zeta</literal></para></entry><entry><para>Zeta
</para></entry></row><row><entry><para>&#x03B7;</para></entry><entry><para><literal>\eta</literal></para></entry><entry><para>Eta
</para></entry></row><row><entry><para>&#x03B8;,       &#x03D1;</para></entry><entry><para><literal>\theta</literal>,
  <literal>\vartheta</literal></para></entry><entry><para>Theta
</para></entry></row><row><entry><para>&#x03B9;</para></entry><entry><para><literal>\iota</literal></para></entry><entry><para>Iota
</para></entry></row><row><entry><para>&#x03BA;</para></entry><entry><para><literal>\kappa</literal></para></entry><entry><para>Kappa
</para></entry></row><row><entry><para>&#x03BB;,       &#x039B;</para></entry><entry><para><literal>\lambda</literal>,
  <literal>\Lambda</literal></para></entry><entry><para>Lambda
</para></entry></row><row><entry><para>&#x03BC;</para></entry><entry><para><literal>\mu</literal></para></entry><entry><para>Mu
</para></entry></row><row><entry><para>&#x03BD;</para></entry><entry><para><literal>\nu</literal></para></entry><entry><para>Nu
</para></entry></row><row><entry><para>&#x03BE;, &#x039E;</para></entry><entry><para><literal>\xi</literal>, <literal>\Xi</literal></para></entry><entry><para>Xi
</para></entry></row><row><entry><para>&#x03C0;, &#x03A0;</para></entry><entry><para><literal>\pi</literal>, <literal>\Pi</literal></para></entry><entry><para>Pi
</para></entry></row><row><entry><para>&#x03C1;,          &#x03F1;</para></entry><entry><para><literal>\rho</literal>,
<literal>\varrho</literal></para></entry><entry><para>Rho
</para></entry></row><row><entry><para>&#x03C3;,         &#x03A3;</para></entry><entry><para><literal>\sigma</literal>,
<literal>\Sigma</literal></para></entry><entry><para>Sigma
</para></entry></row><row><entry><para>&#x03C4;</para></entry><entry><para><literal>\tau</literal></para></entry><entry><para>Tau
</para></entry></row><row><entry><para>&#x03D5;, &#x03C6;,  &#x03A6;</para></entry><entry><para><literal>\phi</literal>,
  <literal>\varphi</literal>, <literal>\Phi</literal></para></entry><entry><para>Phi
</para></entry></row><row><entry><para>&#x03C7;</para></entry><entry><para><literal>\chi</literal></para></entry><entry><para>chi
</para></entry></row><row><entry><para>&#x03C8;, &#x03A8;</para></entry><entry><para><literal>\psi</literal>, <literal>\Psi</literal></para></entry><entry><para>Psi
</para></entry></row><row><entry><para>&#x03C9;,         &#x03A9;</para></entry><entry><para><literal>\omega</literal>,
<literal>\Omega</literal></para></entry><entry><para>Omega
</para></entry></row></tbody></tgroup></informaltable>
<para>Para   ómicron,  si   estás  utilizando   la  letra   Computer  Modern
predeterminada  de  &latex; luego  ingresa  ómicron  como &#8216;<literal>o</literal>&#8217;  o
&#8216;<literal>O</literal>&#8217;.   Si te  gusta tener  el nombre  o si  tu letra  muestra una
diferencia,       entonces      puedes       usar      algo       como
<literal>\newcommand\omicron{o}</literal>.   El  paquete  <literal>unicode-math</literal>
tiene  <literal>\upomicron</literal> para  omicron  vertical y  <literal>\mitomicron</literal>
para matemáticas itálicas.
</para>
<para>Mientras  que  el  símbolo  de  relación  de  pertenencia  establecida
&#x2208; generado  por <literal>\in</literal> está relacionado  con epsilon,
nunca se usa para una variable.
</para>

</sect2>
</sect1>
<sect1 label="16.3" id="Funciones-matem_00e1ticas">
<title>Funciones matemáticas</title>

<indexterm role="cp"><primary>funciones, matemáticas</primary></indexterm>
<indexterm role="cp"><primary>funciones, math</primary></indexterm>

<para>Estos  comandos   producen  nombres  de  funciones   romanas  en  modo
matemático con espaciado.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\arccos</primary></indexterm><literal>\arccos</literal>
</term><listitem><para>coseno inverso
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\arcsin</primary></indexterm><literal>\arcsin</literal>
</term><listitem><para>Seno inverso
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\arctan</primary></indexterm><literal>\arctan</literal>
</term><listitem><para>Tangente inversa
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\arg</primary></indexterm><literal>\arg</literal>
</term><listitem><para>Ángulo entre el eje real y un punto en el plano complejo
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bmod</primary></indexterm><literal>\bmod</literal>
</term><listitem><para>Operador módulo binario, usado como en <literal>\( 5\bmod 3=2 \)</literal>
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cos</primary></indexterm><literal>\cos</literal>
</term><listitem><para>Coseno
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cosh</primary></indexterm><literal>\cosh</literal>
</term><listitem><para>Coseno hiperbólico
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\cot</primary></indexterm><literal>\cot</literal>
</term><listitem><para>Cotangente
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\coth</primary></indexterm><literal>\coth</literal>
</term><listitem><para>Cotangente hiperbólico
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\csc</primary></indexterm><literal>\csc</literal>
</term><listitem><para>Cosecante
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\deg</primary></indexterm><literal>\deg</literal>
</term><listitem><para>Grados
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\det</primary></indexterm><literal>\det</literal>
</term><listitem><para>Determinante
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dim</primary></indexterm><literal>\dim</literal>
</term><listitem><para>Dimensión
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\exp</primary></indexterm><literal>\exp</literal>
</term><listitem><para>Exponencial
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\gcd</primary></indexterm><literal>\gcd</literal>
</term><listitem><para>Máximo común divisor
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\hom</primary></indexterm><literal>\hom</literal>
</term><listitem><para>Homomorfismo
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\inf</primary></indexterm><literal>\inf</literal>
</term><listitem><para>Infimum
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ker</primary></indexterm><literal>\ker</literal>
</term><listitem><para>Kernel
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lg</primary></indexterm><literal>\lg</literal>
</term><listitem><para>Logaritmo en base 2
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lim</primary></indexterm><literal>\lim</literal>
</term><listitem><para>Límite
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\liminf</primary></indexterm><literal>\liminf</literal>
</term><listitem><para>Límite inferior
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\limsup</primary></indexterm><literal>\limsup</literal>
</term><listitem><para>Límite superior
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ln</primary></indexterm><literal>\ln</literal>
</term><listitem><para>Logaritmo natural
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\log</primary></indexterm><literal>\log</literal>
</term><listitem><para>Logaritmo
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\max</primary></indexterm><literal>\max</literal>
</term><listitem><para>Máximo
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\min</primary></indexterm><literal>\min</literal>
</term><listitem><para>Mínimo
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>Módulo entre paréntesis, como se usa en <literal>\( 5\equiv 2\pmod 3 \)</literal></primary></indexterm><literal>Módulo entre paréntesis, como se usa en <literal>\( 5\equiv 2\pmod 3 \)</literal></literal>
</term><listitem>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\Pr</primary></indexterm><literal>\Pr</literal>
</term><listitem><para>Probabilidad
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sec</primary></indexterm><literal>\sec</literal>
</term><listitem><para>Secante
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sin</primary></indexterm><literal>\sin</literal>
</term><listitem><para>Seno
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sinh</primary></indexterm><literal>\sinh</literal>
</term><listitem><para>Seno hiperbólico
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\sup</primary></indexterm><literal>\sup</literal>
</term><listitem><para>Supremum
sup
<!-- no intentes usar \sup con salida  dvi/pdf ya que se convirtió en un -->
<!-- comando  Texinfo  y  no  vale la  pena  molestarse  con  diferentes -->
<!-- versiones cuando son solo tres letras romanas de todos modos. -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tan</primary></indexterm><literal>\tan</literal>
</term><listitem><para>Tangente
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tanh</primary></indexterm><literal>\tanh</literal>
</term><listitem><para>Tangente hiperbólica
</para>
</listitem></varlistentry></variablelist>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>El  paquete  <literal>amsmath</literal> 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
<literal>\DeclareMathOperator{\identity}{id}</literal>  que  es  como  los  de
arriba  pero   se  imprime   como  &#8216;<literal>id</literal>&#8217;.   La   forma  estrellada
<literal>\DeclareMathOperator*{\op}{op}</literal>      establece     cualquier
superíndice o subíndice para estar arriba y abajo, como es tradicional
con <literal>\lim</literal>, <literal>\sup</literal> o <literal>\max</literal>.
</para>

</sect1>
<sect1 label="16.4" id="Acentos-matem_00e1ticos">
<title>Acentos matemáticos</title>

<indexterm role="cp"><primary>Acentos matemáticos</primary></indexterm>
<indexterm role="cp"><primary>acentos, matemáticos</primary></indexterm>

<para>&latex;  proporciona una  variedad de  comandos para  producir letras
acentuadas en matemáticas.  Estos son  diferentes de los acentos en el
texto normal. (véase <link linkend="Acentos">Acentos</link>).
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\acute</primary></indexterm><literal>\acute</literal>
</term><listitem><indexterm role="cp"><primary>acento agudo, matemáticas</primary></indexterm>
<para>Acento agudo matemático
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\bar</primary></indexterm><literal>\bar</literal>
</term><listitem><indexterm role="cp"><primary>acento de barra, matemáticas</primary></indexterm>
<indexterm role="cp"><primary>acento macrón, matemáticas</primary></indexterm>
<para>Acento de barra de matemáticas
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\breve</primary></indexterm><literal>\breve</literal>
</term><listitem><indexterm role="cp"><primary>acento breve, matemáticas</primary></indexterm>
<para>Acento matemático breve
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\check</primary></indexterm><literal>\check</literal>
</term><listitem><indexterm role="cp"><primary>comprobar acento, matemáticas</primary></indexterm>
<indexterm role="cp"><primary>acento h&#225;&#269;ek, matemáticas</primary></indexterm>

</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ddots</primary></indexterm><literal>\ddots</literal>
</term><listitem><indexterm role="cp"><primary>acento de doble punto, matemáticas</primary></indexterm>

</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dot</primary></indexterm><literal>\dot</literal>
</term><listitem><indexterm role="cp"><primary>acento exagerado, matemáticas</primary></indexterm>
<indexterm role="cp"><primary>punto sobre acento, matemáticas</primary></indexterm>

</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\grave</primary></indexterm><literal>\grave</literal>
</term><listitem><indexterm role="cp"><primary>acento grave, matemáticas</primary></indexterm>

</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\hat</primary></indexterm><literal>\hat</literal>
</term><listitem><indexterm role="cp"><primary>acento de sombrero, matemáticas</primary></indexterm>
<indexterm role="cp"><primary>acento circunflejo, matemáticas</primary></indexterm>
<para>Acento de sombrero de matemáticas (circunflejo)
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\mathring</primary></indexterm><literal>\mathring</literal>
</term><listitem><indexterm role="cp"><primary>acento de anillo, matemáticas</primary></indexterm>
<para>Acento  de anillo  matemático <!--  no te  molestes en  implementarlo en -->
                              <!-- texinfo -->
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\tilde</primary></indexterm><literal>\tilde</literal>
</term><listitem><indexterm role="cp"><primary>acento tilde, matemáticas</primary></indexterm>
<para>Acento de tilde matemática
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\vec</primary></indexterm><literal>\vec</literal>
</term><listitem><indexterm role="cp"><primary>símbolo vectorial, matemáticas</primary></indexterm>
<para>símbolo de vector de matemáticas
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\widehat</primary></indexterm><literal>\widehat</literal>
</term><listitem><indexterm role="cp"><primary>acento de sombrero ancho, matemáticas</primary></indexterm>
<para>Acento de sombrero ancho de matemáticas
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\widetilde</primary></indexterm><literal>\widetilde</literal>
</term><listitem><indexterm role="cp"><primary>acento de tilde ancho, matemáticas</primary></indexterm>
<para>Acento de tilde ancho de matemáticas
</para>
</listitem></varlistentry></variablelist>
<para>Cuando pones un acento en una i o  una j, la tradición es usar uno sin
punto, <literal>\imath</literal> o <literal>jmath</literal> (véase <link linkend="S_00edmbolos-matem_00e1ticos">Símbolos matemáticos</link>).
</para>

</sect1>
<sect1 label="16.5" id="Sobre-y-subrayado">
<title>Sobre y subrayado</title>

<indexterm role="cp"><primary>superposición</primary></indexterm>
<indexterm role="cp"><primary>subrayado</primary></indexterm>

<para>&latex;  proporciona  comandos  para   hacer  líneas  superpuestas  o
subrayadas, o poner llaves sobre o debajo de algún material.
</para>
<variablelist>
<varlistentry><term><indexterm role="fn"><primary>\underline{<replaceable>text</replaceable>}</primary></indexterm><literal>\underline{<replaceable>text</replaceable>}</literal>
</term><listitem><para><replaceable>text</replaceable> 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 <literal>\(\underline{y}\)</literal>  la
línea es más baja que  en <literal>\(\underline{x}\)</literal>.  Este comando es
frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<indexterm role="cp"><primary>package, <literal>ulem</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>ulem</literal> package</primary></indexterm>
<para>Ten en cuenta que el paquete <literal>ulem</literal> 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&#160;<link linkend="_005chrulefill-y-_005cdotfill">\hrulefill y \dotfill</link> para producir una línea, para
cosas como una firma.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\overline{<replaceable>text</replaceable>}</primary></indexterm><literal>\overline{<replaceable>text</replaceable>}</literal>
</term><listitem><para>Coloca una línea horizontal sobre <replaceable>text</replaceable>.  Funciona dentro y fuera
del modo matemático.  Por ejemplo, <literal>\overline{x+y}</literal>.
Ten en cuenta que esto difiere del comando <literal>\bar</literal> (véase <link linkend="Acentos-matem_00e1ticos">Acentos
matemáticos</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\underbrace{<replaceable>math</replaceable>}</primary></indexterm><literal>\underbrace{<replaceable>math</replaceable>}</literal>
</term><listitem><para>Pone   una   llave   debajo   de   <replaceable>math</replaceable>.   Por   ejemplo,   este
<literal>(1-\underbrace{1/2)+(1/2}-1/3)</literal> enfatiza la parte telescópica.
Adjunta texto  a la llave usando  el comando de subíndice,  <literal>_</literal> o
superíndice, <literal>^</literal>, como aquí.
</para>
<screen>\begin{displaymath}
  1+1/2+\underbrace{1/3+1/4}_{&gt;1/2}+
       \underbrace{1/5+1/6+1/7+1/8}_{&gt;1/2}+\cdots
\end{displaymath}
</screen>
<para>El superíndice aparece encima de la expresión, por lo que se puede ver
desconectado de la llave inferior.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\overbrace{<replaceable>math</replaceable>}</primary></indexterm><literal>\overbrace{<replaceable>math</replaceable>}</literal>
</term><listitem><para>Pone      una      llave      sobre     <replaceable>math</replaceable>,      como      con
<literal>\overbrace{x+x+\cdots+x}^{\mbox{\(k\)     times}}</literal>.     Ve
también <literal>\underbrace</literal>.
</para>
</listitem></varlistentry></variablelist>
<indexterm role="cp"><primary>package, <literal>mathtools</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mathtools</literal> package</primary></indexterm>
<para>El  paquete <literal>mathtools</literal> agrega  una llave
superior  e  inferior, así  como  algunas  mejoras en  los  corchetes.
Consulta la documentación en CTAN.
</para>

</sect1>
<sect1 label="16.6" id="Espaciado-en-modo-matem_00e1tico">
<title>Espaciado en modo matemático</title>

<indexterm role="cp"><primary>Espaciado dentro del modo matemático</primary></indexterm>
<indexterm role="cp"><primary>modo matemático, espaciado</primary></indexterm>

<para>Al componer  matemáticas, &latex;  pone espacios  de acuerdo  con las
reglas normales para textos de  matemáticas.  Si ingresas <literal>y=m x</literal>
entonces &latex; ignora el  espacio y en la salida la  m está al lado
de la x, como <inlineequation><mathphrase>y=mx</mathphrase></inlineequation>.
</para>
<para>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  <literal>f(x)</literal> y el <literal>dx</literal>, aquí hecho  con el comando
<literal>\,</literal>:
</para>
<screen>\int_0^1 f(x)\,dx
</screen>
<para>&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   <firstterm>mu</firstterm>.   Se   define  como
1/18em, donde  el em se  toma de  la familia actual  de símbolos
matemáticos     (véase <link linkend="Unidades-de-longitud">Unidades    de     longitud</link>).     Así,     un
<literal>\thickspace</literal>  es   algo  así  como   5/18  veces  el   ancho  de
una&#160;&#8216;<literal>M</literal>&#8217;.
</para>
<variablelist><varlistentry><term><literal>\;</literal>
</term><listitem><indexterm role="fn"><primary>\;</primary></indexterm>
<indexterm role="fn"><primary>\thickspace</primary></indexterm>
<anchor id="espaciado-en-modo-matem_00e1tico-espacio-grueso"/><indexterm role="cp"><primary>package, <literal>ammath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>ammath</literal> package</primary></indexterm>

<para>Sinónimo:  <literal>\thickspace</literal>.  Normalmente  <literal>5.0mu plus  5.0mu</literal>.
Con el paquete <literal>amsmath</literal>, 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.
</para>
</listitem></varlistentry><varlistentry><term><literal>\negthickspace</literal>
</term><listitem><indexterm role="fn"><primary>\negthickspace</primary></indexterm>
<para>Normalmente  <literal>-5.0mu plus  2.0mu  minus 4.0mu</literal>.   Con el  paquete
<literal>amsmath</literal>, 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.
</para>
</listitem></varlistentry><varlistentry><term><literal>\:</literal>
</term><term><literal>\&gt;</literal>
</term><listitem><indexterm role="fn"><primary>\:</primary></indexterm>
<indexterm role="fn"><primary>\&gt;</primary></indexterm>
<indexterm role="fn"><primary>\medspace</primary></indexterm>
<anchor id="espaciado-en-modo-matem_00e1tico-medspace"/><para>Sinónimo:
<literal>\medspace</literal>.   Normalmente <literal>4.0mu  plus 2.0mu  minus 4.0mu</literal>.
Con el paquete <literal>amsmath</literal>, 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.
</para>
</listitem></varlistentry><varlistentry><term><literal>\negmedspace</literal>
</term><listitem><indexterm role="fn"><primary>\negmedspace</primary></indexterm>
<para>Normalmente  <literal>-4.0mu plus  2.0mu  minus 4.0mu</literal>.   Con el  paquete
<literal>amsmath</literal>, 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.
</para>
</listitem></varlistentry><varlistentry><term><literal>\,</literal>
</term><listitem><indexterm role="fn"><primary>\,</primary></indexterm>
<indexterm role="fn"><primary>\thinspace</primary></indexterm>
<indexterm role="cp"><primary>espacio delgado</primary></indexterm>
<anchor id="Espaciado-en-modo-matem_00e1tico_002f_005cthinspace"/><anchor id="espaciado-en-modo-matem_00e1tico-thinspace"/><para>Sinónimo:  <literal>\thinspace</literal>.  Normalmente
<literal>3mu</literal>,  que  es  1/6em.   Se   puede  usar  tanto  en  modo
matemático como en modo texto (véase <link linkend="_005cthinspace-y-_005cnegthinspace">\thinspace y \negthinspace</link>).
</para>
<para>Este  espacio es  muy utilizado,  por ejemplo  entre la  función y  el
infinitesimal en una integral <literal>\int f(x)\,dx</literal> y, si un autor hace
esto, antes de la puntuación en una ecuación mostrada.
</para>
<screen>La antiderivada es
\begin{equation}
   3x^{-1/2}+3^{1/2}\,.
\end{equation}
\end{equation}
</screen>
</listitem></varlistentry><varlistentry><term><literal>\!</literal>
</term><listitem><indexterm role="fn"><primary>\!</primary></indexterm>
<indexterm role="fn"><primary>\negthinspace</primary></indexterm>
<indexterm role="cp"><primary>espacio delgado, negativo</primary></indexterm>
<anchor id="espaciado-en-modo-matem_00e1tico-negthinspace"/><para>Sinónimo:
<literal>\negthinspace</literal>.   Un  espacio   delgado  negativo.   Normalmente
<literal>-3mu</literal>.   Con el  paquete  <literal>amsmath</literal>, 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 <literal>\!</literal> es solo
modo  matemático,  pero  el comando  <literal>\negthinspace</literal>  también  ha
funcionado siempre en modo texto (véase <link linkend="_005cthinspace-y-_005cnegthinspace">\thinspace y \negthinspace</link>).
</para>
</listitem></varlistentry><varlistentry><term><literal>\quad</literal>
</term><listitem><indexterm role="cp"><primary>quad</primary></indexterm>
<indexterm role="fn"><primary>\quad</primary></indexterm>
<anchor id="espaciado-en-modo-matem_00e1tico-quad"/><para>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 <literal>displaymath</literal>.   Está disponible
tanto en modo de texto como matemático.
</para>
</listitem></varlistentry><varlistentry><term><literal>\qquad</literal>
</term><listitem><indexterm role="fn"><primary>\qquad</primary></indexterm>
<anchor id="espaciado-en-modo-matem_00e1tico-qquad"/><para>Una longitud  de 2 quads,
es decir,  36mu =  2em.  Esta disponible  en modo  texto y
modo matemático.
</para></listitem></varlistentry></variablelist>


<sect2 label="16.6.1" id="_005csmash">
<title><literal>\smash</literal></title>

<indexterm role="cp"><primary>espaciado vertical, modo matemático</primary></indexterm>
<indexterm role="cp"><primary>modo matemático, espacio vertical</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\smash{<replaceable>subformula</replaceable>}
</screen>
<para>Escribe <replaceable>subformula</replaceable> como si su altura y profundidad fuera cero.
</para>
<para>En  este ejemplo,  la  exponencial  es tan  alta  que  sin el  comando
<literal>\smash</literal> &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>
<screen>Para calcular la tetración $\smash{2^{2^{2^2}}}$,
evaluar de arriba hacia abajo, como $2^{2^4}=2^{16}=65536$.
</screen>
<para>(Debido al <literal>\smash</literal>, 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).
</para>
<para>Esto representa  el efecto  de <literal>\smash</literal> usando  <literal>\fbox</literal> para
rodear  el  cuadro  que  &latex;  pondrá en  la  línea.   El  comando
<literal>\blackbar</literal> crea  una barra que se  extiende desde 10&#160;puntos
debajo la línea base a 20&#160;puntos arriba.
</para>
<screen>\newcommand{\blackbar}{\rule[-10pt]{5pt}{30pt}}
\fbox{\blackbar}
\fbox{\smash{\blackbar}}
</screen>
<para>El   primer  cuadro   que  coloca   &latex;  tiene   una  altura   de
20&#160;puntos  y  10&#160;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.
</para>
<para>El comando <literal>\smash</literal> 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.
</para>
<screen>\begin{equation}
\sqrt{\sum_{0\leq k&lt; n} f(k)}
\sqrt{\vphantom{\sum}\smash{\sum_{0\leq k&lt; n}} f(k)}
\end{equation}
</screen>
<para>Ten  en  cuenta  el  uso  de <literal>\\vphantom</literal>  para  dar  al  comando
<literal>\sqrt</literal>   un    argumento   con   la   altura    de   <literal>\sum</literal>
(véase <link linkend="_005cphantom-_002d-_005cvphantom-y-_005chphantom">\phantom - \vphantom y \hphantom</link>).
</para>
<para>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 <literal>\leavevmode</literal>.
</para>
<screen>xxx xxx xxx

\smash{yyy} % sin sangría de párrafo

\leavevmode\smash{zzz} % sangría de párrafo habitual
</screen>
<indexterm role="cp"><primary>package, <literal>mathtools</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mathtools</literal> package</primary></indexterm>
<para>El  paquete <literal>mathtools</literal>  tiene operadores
que brindan control sobre romper un cuadro de subfórmula.
</para>

</sect2>
<sect2 label="16.6.2" id="_005cphantom-_002d-_005cvphantom-y-_005chphantom">
<title><literal>\phantom</literal>, <literal>\vphantom</literal> y <literal>\hphantom</literal></title>

<anchor id="_005cphantom"/><anchor id="_005cvphantom"/><anchor id="_005chphantom"/><indexterm role="fn"><primary>\phantom</primary></indexterm>
<indexterm role="fn"><primary>\vphantom</primary></indexterm>
<indexterm role="fn"><primary>\hphantom</primary></indexterm>

<indexterm role="cp"><primary>espaciado, modo matemático</primary></indexterm>
<indexterm role="cp"><primary>espaciado horizontal</primary></indexterm>
<indexterm role="cp"><primary>espaciado vertical</primary></indexterm>
<indexterm role="cp"><primary>modo matemático, espaciado</primary></indexterm>
<indexterm role="cp"><primary>carácter invisible</primary></indexterm>
<indexterm role="cp"><primary>carácter, invisible</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\phantom{<replaceable>subformula</replaceable>}
</screen>
<para>o
</para>
<screen>\vphantom{<replaceable>subformula</replaceable>}
</screen>
<para>o
</para>
<screen>\hphantom{<replaceable>subformula</replaceable>}
</screen>
<para>El  comando  <literal>\phantom</literal>  crea  un cuadro  con  la  misma  altura,
profundidad y ancho como <replaceable>subformula</replaceable>, 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.
</para>
<screen>\begin{displaymath}
  \int x^2\,dx=\mbox{\underline{$\phantom{(1/3)x^3+C}$}}
\end{displaymath}
</screen>
<para>La variante <literal>\vphantom</literal> produce un  cuadro invisible con el mismo
tamaño vertical  que <replaceable>subformula</replaceable>, la misma  altura y profundidad,
pero teniendo  ancho cero.  Y  <literal>\hphantom</literal> crea un cuadro  con el
mismo ancho que <replaceable>subformula</replaceable> pero con altura y profundidad cero.
</para>
<para>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  <literal>\vphantom</literal> 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.
</para>
<screen>\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}
</screen>
<para>Estos comandos a menudo se usan junto con <literal>\smash</literal>.
Véase <link linkend="_005csmash">\smash</link>, que incluye otro ejemplo de <literal>\vphantom</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>mathtools</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mathtools</literal> package</primary></indexterm>
<para>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 <literal>\makebox</literal>  (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox y  \makebox</link>)
también      como       <literal>\settodepth</literal>      (véase <link linkend="_005csettodepth">\settodepth</link>),
<literal>\settoheight</literal>   (véase <link linkend="_005csettoheight">\settoheight</link>),   y   <literal>\settowidth</literal>
(véase <link linkend="_005csettowidth">\settowidth</link>).  Además,  el paquete  <literal>mathtools</literal> tiene
muchos comandos que ofrecen control detallado sobre el espaciado.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>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 <literal>\operatorname</literal> del paquete <literal>amsmath</literal>.
</para>
<para>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 <literal>\leavevmode</literal>.
</para>

</sect2>
<sect2 label="16.6.3" id="_005cmathstrut">
<title><literal>\mathstrut</literal></title>

<indexterm role="fn"><primary><literal>\mathstrut</literal></primary></indexterm>
<indexterm role="cp"><primary>espaciado, modo matemático</primary></indexterm>
<indexterm role="cp"><primary>espaciado vertical</primary></indexterm>
<indexterm role="cp"><primary>modo matemático, espaciado</primary></indexterm>
<indexterm role="cp"><primary>carácter invisible</primary></indexterm>
<indexterm role="cp"><primary>carácter, invisible</primary></indexterm>
<indexterm role="cp"><primary>strut, math</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\mathstrut
</screen>
<para>El análogo de <literal>\strut</literal> para matemáticas.  Véase <link linkend="_005cstrut">\strut</link>.
</para>
<para>La  entrada  <literal>$\sqrt{x} +  \sqrt{x^i}$</literal>  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   <literal>$\sqrt{x\mathstrut}   +
\sqrt{x^i\mathstrut}$</literal>.
</para>
<para>El  comando   <literal>\mathstrut</literal>  agrega  la  altura   vertical  de  un
paréntesis  de apertura,  <literal>(</literal>, pero  sin espacio  horizontal.  Se
define como <literal>\vphantom{(}</literal>, así que <link linkend="_005cphantom-_002d-_005cvphantom-y-_005chphantom">\phantom - \vphantom y
\hphantom</link>  para   más.   Una  ventaja  sobre   <literal>\strut</literal>  es  que
<literal>\mathstrut</literal>  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 <literal>\rule</literal> con un ancho cero.  Véase <link linkend="_005crule">\rule</link>.
</para>

</sect2>
</sect1>
<sect1 label="16.7" id="Estilos-math">
<title>Estilos math</title>

<indexterm role="cp"><primary>math estilos</primary></indexterm>

<para>Las reglas de &tex; para  escribir una fórmula dependen del contexto.
Por   ejemplo,   dentro  de   una   ecuación   mostrada,  la   entrada
<literal>\sum_{0\leq  i&lt;n}k^m=\frac{n^{m+1}}{m+1}+\mbox{términos
de orden inferior}</literal> 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.
</para>
<para>&tex; usa cuatro estilos matemáticos.
</para>
<itemizedlist>
<listitem><indexterm role="cp"><primary>estilo de visualización</primary></indexterm>
<para>El estilo de  visualización es para una fórmula que  se muestra en una
línea    por    sí    misma,   como    con    <literal>\begin{equation}
... \end{equation}</literal>.
</para>
</listitem><listitem><indexterm role="cp"><primary>estilo de texto</primary></indexterm>
<para>El estilo  de texto es para  una fórmula en línea,  como con &#8216;<literal>así
que tenemos $ ... $</literal>&#8217;.
</para>
</listitem><listitem><indexterm role="cp"><primary>estilo de script</primary></indexterm>
<para>El estilo de escritura es para partes de una fórmula en un subíndice o
superíndice.
</para>
</listitem><listitem><indexterm role="cp"><primary>estilo scriptscript</primary></indexterm>
<para>El estilo  Scriptscript es para  partes de  una fórmula en  un segundo
nivel (o más) de subíndice o superíndice.
</para>
</listitem></itemizedlist>
<indexterm role="fn"><primary>\displaystyle</primary></indexterm>
<indexterm role="fn"><primary>\textstyle</primary></indexterm>
<indexterm role="fn"><primary>\scriptstyle</primary></indexterm>
<indexterm role="fn"><primary>\scriptscriptstyle</primary></indexterm>
<para>&tex; determina  un estilo matemático predeterminado,  pero lo puedes
redefinir   con    una   declaración   de    <literal>\displaystyle</literal>,   o
<literal>\textstyle</literal>, o <literal>\scriptstyle</literal> o <literal>\scriptscriptstyle</literal>.
</para>
<para>En este  ejemplo, la  fracción de la  línea &#8216;<literal>Arithmetic</literal>&#8217;  se verá
arrugada.
</para>

<screen>\begin{tabular}{r|cc}
  \textsc{Name}  &amp;\textsc{Series}  &amp;\textsc{Sum}  \\  \hline
  Arithmetic     &amp;$a+(a+b)+(a+2b)+\cdots+(a+(n-1)b)$
                   &amp;$na+(n-1)n\cdot\frac{b}{2}$  \\
  Geometric      &amp;$a+ab+ab^2+\cdots+ab^{n-1}$
                   &amp;$\displaystyle a\cdot\frac{1-b^n}{1-b}$  \\
\end{tabular}
</screen>
<para>Pero debido a  la declaración <literal>\displaystyle</literal>, la  fracción de la
línea &#8216;<literal>Geometric</literal>&#8217;  será fácil de  leer, con caracteres  del mismo
tamaño que en el resto de la línea.
</para>
<para>Otro  ejemplo es  que,  en comparación  con la  misma  entrada sin  la
declaración, el resultado de
</para>
<screen>obtenemos
$\pi=2\cdot{\displaystyle\int_{x=0}^1 \sqrt{1-x^2}\,dx}$
</screen>
<para>tendrá un  signo integral que  es mucho más  alto.  Ten en  cuenta que
aquí el <literal>\displaystyle</literal> se aplica solo a una parte de la fórmula,
y    está   delimitado    por   estar    dentro   de    llaves,   como
&#8216;<literal>{\displaystyle ...}</literal>&#8217;.
</para>
<para>El último ejemplo es una fracción continua.
</para>
<screen>\begin{equation}
a_0+\frac{1}{
       \displaystyle a_1+\frac{\mathstrut 1}{
       \displaystyle a_2+\frac{\mathstrut 1}{
       \displaystyle a_3}}}
\end{equation}
</screen>
<para>Sin  las  declaraciones  de  <literal>\displaystyle</literal>,  los  denominadores
serían  establecido  en  estilo  script y  estilo  scriptscript.   (El
<literal>\mathstrut</literal>   mejora    la   altura   de    los   denominadores;
véase <link linkend="_005cmathstrut">\mathstrut</link>).
</para>

</sect1>
<sect1 label="16.8" id="Miscel_00e1nea-matem_00e1tica">
<title>Miscelánea matemática</title>

<indexterm role="cp"><primary>miscelánea matemática</primary></indexterm>

<para>&latex; contiene una amplia  variedad de funciones matemáticas.  Aquí
están algunas que no encajan en otras categorías.
</para>


<sect2 label="16.8.1" id="Car_00e1cter-de-dos-puntos-y-_005ccolon">
<title>Carácter de dos puntos <literal>:</literal> y <literal>\colon</literal></title>

<anchor id="Dos-puntos"/><indexterm role="cp"><primary>carácter dos puntos</primary></indexterm>
<indexterm role="fn"><primary>: (para math)</primary></indexterm>
<indexterm role="fn"><primary>\colon</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>:
\colon
</screen>
<para>En matemáticas, el carácter de dos puntos, <literal>:</literal>, es una relación.
</para>
<screen>Con proporciones  laterales \(  3:4 \)  y \( 4:5  \), el  triángulo es
correcto.
</screen>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>

<para>&latex; ordinario  define <literal>\colon</literal> 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 <literal>\{x\colon 0\leq x&lt;1\}</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>Pero  el   paquete  <literal>amsmath</literal>  ampliamente
utilizado  define  <literal>\colon</literal>  para  su uso  en  la  definición  de
funciones <literal>f\colon  D\to C</literal>.  Así  que si quieres el  carácter de
dos puntos como puntuación y entonces usa <literal>\mathpunct{:}</literal>.
</para>

</sect2>
<sect2 label="16.8.2" id="_005c_002a">
<title><literal>\*</literal></title>

<indexterm role="cp"><primary>multiplicación, discrecional</primary></indexterm>
<indexterm role="cp"><primary>saltos, multiplicación discrecional</primary></indexterm>
<indexterm role="cp"><primary>saltos de línea, multiplicación discrecional</primary></indexterm>
<indexterm role="cp"><primary>saltos discrecionales, multiplicación</primary></indexterm>
<indexterm role="fn"><primary>\*</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\*
</screen>
<para>Un símbolo de multiplicación que permite un salto de línea.  Si hay un
salto    entonces   &latex;    pone    un   símbolo    <literal>\times</literal>,
&#x00D7;, antes de ese salto.
</para>
<para>En  <literal>\( A_1\*  A_2\* A_3\*  A_4 \)</literal>,  si no  hay salto  de línea,
entonces &latex; los  muestra como si fuera <literal>\( A_1  A_2 A_3 A_4
\)</literal>.  Si  ocurre un  salto de  línea, por ejemplo,  entre los  dos del
medio, entonces  &latex; lo  establece como  <literal>\( A_1  A_2 \times
\)</literal>, seguido por el salto, seguido de <literal>\( A_3 A_4 \)</literal>.
</para>

</sect2>
<sect2 label="16.8.3" id="_005cfrac">
<title><literal>\frac</literal></title>

<indexterm role="cp"><primary>fracción</primary></indexterm>
<indexterm role="fn"><primary>\frac</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\frac{<replaceable>numerator</replaceable>}{<replaceable>denominator</replaceable>}
</screen>
<para>Produce   la   fracción.   Usado   como:   <literal>\begin{displaymath}
\frac{1}{\sqrt{2\pi\sigma}}  \end{displaymath}</literal>.   En el  modo
math en línea sale pequeño;  ve la explicación de <literal>\displaystyle</literal>
(véase <link linkend="F_00f3rmulas-math">Fórmulas math</link>).
</para>

</sect2>
<sect2 label="16.8.4" id="_005csqrt">
<title><literal>\sqrt</literal></title>

<indexterm role="cp"><primary>raíz cuadrada</primary></indexterm>
<indexterm role="cp"><primary>roots</primary></indexterm>
<indexterm role="cp"><primary>radical</primary></indexterm>
<indexterm role="fn"><primary>\sqrt</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\sqrt{<replaceable>arg</replaceable>}
\sqrt[<replaceable>root-number</replaceable>]{<replaceable>arg</replaceable>}
</screen>
<para>La  raíz cuadrada,  u opcionalmente  otras raíces,  de <replaceable>arg</replaceable>.   El
argumento opcional <replaceable>root-number</replaceable> da la  raíz, es decir, ingresa la
raíz cúbica de <literal>x+y</literal> como <literal>\sqrt[3]{x+y}</literal>.
El tamaño  del radical crece con  el de <replaceable>arg</replaceable> (conforme  la altura
del radical crece,  el ángulo en la  parte más a la  izquierda se hace
más pronunciado, hasta  que <literal>arg</literal> es lo  suficientemente alto, es
vertical).
</para>
<para>&latex; tiene  un símbolo <literal>\surd</literal>  separado para hacer  una raíz
cuadrada sin <replaceable>arg</replaceable> (véase <link linkend="S_00edmbolos-matem_00e1ticos">Símbolos matemáticos</link>).
</para>

</sect2>
<sect2 label="16.8.5" id="_005cstackrel">
<title><literal>\stackrel</literal></title>

<indexterm role="cp"><primary>la pila de matemáticas</primary></indexterm>
<indexterm role="cp"><primary>relación, texto arriba</primary></indexterm>
<indexterm role="fn"><primary>\stackrel</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\stackrel{<replaceable>text</replaceable>}{<replaceable>relation</replaceable>}
</screen>
<para>Pon  <replaceable>text</replaceable> encima  de <replaceable>relation</replaceable>.   Para poner  un nombre  de
función        encima        de       una        flecha        ingresa
<literal>\stackrel{f}{\longrightarrow}</literal>.
</para>

</sect2>
</sect1>
</chapter>
<chapter label="17" id="Modos">
<title>Modos</title>

<indexterm role="cp"><primary>modos</primary></indexterm>

<para>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.
</para>
<itemizedlist><listitem><anchor id="modos-modo-p_00e1rrafo"/><indexterm role="cp"><primary>modo párrafo</primary></indexterm>
<para><firstterm>Modo  párrafo</firstterm>   (en  &tex;  simple  esto   se  llama  <firstterm>modo
horizontal</firstterm>) 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.
</para>
<indexterm role="cp"><primary>modo de izquierda a derecha</primary></indexterm>
<indexterm role="cp"><primary>modo LR</primary></indexterm>
<anchor id="modos-modo-lr"/><para><firstterm>modo LR</firstterm>  (para el  modo de  izquierda a
derecha;  en   &tex;  simple  esto  se   llama  <firstterm>modo  horizontal
restringido</firstterm>) está  en vigor cuando  se inicia &latex; hace  una caja
con un comando <literal>\mbox</literal>.  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í).
</para>
</listitem><listitem><indexterm role="cp"><primary>modo matemático</primary></indexterm>
<anchor id="modos-modo-matem_00e1tico"/><para><firstterm>modo  matemático</firstterm>   es  cuando
&latex; está generando una fórmula matemática en línea.
</para>
<indexterm role="cp"><primary>muestra el modo matemático</primary></indexterm>
<para><firstterm>Muestra modo math</firstterm> 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 <literal>\int</literal>
difiere en las dos situaciones).
</para>
</listitem><listitem><indexterm role="cp"><primary>modo vertical</primary></indexterm>
<anchor id="modos-modo-vertical"/><para><firstterm>Modo  vertical</firstterm> 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.
</para>
<indexterm role="cp"><primary>modo vertical interno</primary></indexterm>
<anchor id="modos-modo-vertical-interno"/><para><firstterm>Modo vertical interno</firstterm> está
en efecto cuando &latex; comienza  a hacer una <literal>\vbox</literal>. No tiene
saltos de página, y como tal es el análogo vertical del modo LR.
</para>
</listitem></itemizedlist>
<para>Por ejemplo, si  comienzas un artículo de &latex; con  &#8216;<literal>Let \( x
\) ...</literal>&#8217;  entonces estos  son los modos:  primero &latex;  inicia cada
documento en modo vertical, entonces lee  la &#8216;<literal>L</literal>&#8217; y cambia al modo
párrafo, entonces  el siguiente  cambio ocurre  en la  &#8216;<literal>\(</literal>&#8217; donde
&latex;  cambia  al modo  matemático,  y  luego,  cuando sale  de  la
fórmula, parece volver al modo de párrafo.
</para>
<indexterm role="cp"><primary>modo de párrafo interno</primary></indexterm>
<indexterm role="cp"><primary>modo párrafo externo</primary></indexterm>
<anchor id="modos-modo-p_00e1rrafo-interno"/><anchor id="modos-modo-p_00e1rrafo-externo"/><para>El modo  párrafo tiene  dos  subcasos.  Si  usas un  comando
<literal>\parbox</literal> o un <literal>minipage</literal> entonces  &latex; se pone en modo
párrafo.  Pero  no pondré un salto  de página aquí.  Dentro  de una de
estas  cajas,  llamada <firstterm>parbox</firstterm>,  &latex;  está  en <firstterm>modo  de
párrafo  interior</firstterm>.  Es  la situación  mas usual,  donde puedes  poner
saltos de  página, es <firstterm>modo  de párrafo externo</firstterm>  (véase <link linkend="Salto-de-p_00e1gina">Salto de
página</link>).
</para>

<sect1 label="17.1" id="_005censuremath">
<title><literal>\ensuremath</literal></title>

<para>Sinopsis:
</para>
<screen>\ensuremath{<replaceable>formula</replaceable>}
</screen>
<para>Se asegura de que <replaceable>formula</replaceable> esté escrito en modo matemático.
</para>
<para>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.
</para>
<screen>\newcommand{\dx}{\ensuremath{dx}}
En $\int f(x)\, \dx$, el \dx{} es un infinitesimal.
</screen>
<para>Precaución: el comando <literal>\ensuremath</literal> es útil pero no una panacea.
</para>
<screen>\newcommand{\alf}{\ensuremath{\alpha}}

Obtienes  un alfa  en modo  texto:  \alf.  Pero  compara el  espaciado
correcto en $\alf+\alf$ con el de \alf+\alf.
</screen>
<para>Lo mejor es escribir cosas matemáticas en modo math.
</para>

</sect1>
</chapter>
<chapter label="18" id="Estilos-de-p_00e1gina">
<title>Estilos de página</title>

<indexterm role="cp"><primary>estilos, página</primary></indexterm>
<indexterm role="cp"><primary>página, estilos</primary></indexterm>

<para>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.
</para>
<indexterm role="cp"><primary>package, <literal>fancyhdr</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>fancyhdr</literal> package</primary></indexterm>
<para>El paquete  <literal>fancyhdr</literal> se  usa comúnmente
para construir estilos de página.  Ve su documentación.
</para>


<sect1 label="18.1" id="_005cmaketitle">
<title><literal>\maketitle</literal></title>

<indexterm role="cp"><primary>títulos, hacer</primary></indexterm>
<indexterm role="fn"><primary>\maketitle</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\maketitle
</screen>
<para>Genera un  título.  En las  clases estándar  el título aparece  en una
página separada, excepto  en la clase <literal>article</literal> donde  está en la
parte  superior de  la primera  página.  (Véase <link linkend="Opciones-de-la-clase-documento">Opciones  de la  clase
documento</link>, para obtener información  sobre la opción <literal>titlepage</literal>
de la clase documento).
</para>
<para>Este  ejemplo  muestra  que  <literal>\maketitle</literal>  aparece  en  su  lugar
habitual, inmediatamente después de <literal>\begin{document}</literal>.
</para>
<screen>\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.
  ...
</screen>
<para>Le dices a  &latex; la información utilizada para  producir el título
haciendo  las siguientes  declaraciones.  Estos  deben venir  antes de
<literal>\maketitle</literal>,  ya  sea  en  el  preámbulo  o  en  el  cuerpo  del
documento.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\author{<replaceable>name1</replaceable> \and <replaceable>name2</replaceable> \and ...}</primary></indexterm><literal>\author{<replaceable>name1</replaceable> \and <replaceable>name2</replaceable> \and ...}</literal>
</term><listitem><indexterm role="cp"><primary>autor, para portada</primary></indexterm>
<indexterm role="fn"><primary>\\ (para <literal>\author</literal>)</primary></indexterm>
<indexterm role="fn"><primary>\and (para <literal>\author</literal>)</primary></indexterm>
<para>Requerido.  Declara el autor o autores del documento.  El argumento es
un  lista de  autores separados  por los  comandos <literal>\and</literal>.   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,
<literal>\\</literal>.  Si omites la  declaración <literal>\author</literal> entonces obtienes
&#8216;<literal>Advertencia LaTeX: Sin \autor dado</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\date{<replaceable>text</replaceable>}</primary></indexterm><literal>\date{<replaceable>text</replaceable>}</literal>
</term><listitem><indexterm role="cp"><primary>fecha, para portada</primary></indexterm>
<para>Opcional.   Declara  <replaceable>text</replaceable>  como  la  fecha  del  documento.   El
<replaceable>text</replaceable>  no  necesita estar  en  un  formato  de fecha;  puede  ser
cualquier  texto.  Si  omites  <literal>\date</literal> entonces  &latex; usa  la
fecha  actual   (véase <link linkend="_005ctoday">\today</link>).   Para   no  tener   fecha,  utiliza
<literal>\date{}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\thanks{<replaceable>text</replaceable>}</primary></indexterm><literal>\thanks{<replaceable>text</replaceable>}</literal>
</term><listitem><indexterm role="cp"><primary>thanks, para la portada</primary></indexterm>
<indexterm role="cp"><primary>crédito, en nota al pie</primary></indexterm>
<para>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.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\title{<replaceable>text</replaceable>}</primary></indexterm><literal>\title{<replaceable>text</replaceable>}</literal>
</term><listitem><indexterm role="cp"><primary>título, para portada</primary></indexterm>
<indexterm role="fn"><primary>\\ (para <literal>\title</literal>)</primary></indexterm>
<para>Requerido.  Declara <replaceable>text</replaceable> como  título del documento.  Obtiene un
salto de  línea dentro  de <replaceable>text</replaceable> con  una barra  invertida doble,
<literal>\\</literal>.   Si  omites  la  declaración  <literal>\title</literal>,  entonces  el
comando  <literal>\maketitle</literal>  produce el  &#8216;<literal>Error  de  LaTeX: No  se
proporcionó \title</literal>&#8217;.
</para>
</listitem></varlistentry></variablelist>
<para>Para crear  tu propia  página de  título, <link linkend="titlepage">titlepage</link>.  También lo
puedes crear como  único o lo puedes incluir como  parte de un comando
<literal>\maketitle</literal> renovado.  (Muchos editores proporcionarán una clase
para usar en lugar de <literal>article</literal>  que formatea el título según sus
requisitos de la casa).
</para>

</sect1>
<sect1 label="18.2" id="_005cpagenumbering">
<title><literal>\pagenumbering</literal></title>

<indexterm role="fn"><primary>\pagenumbering</primary></indexterm>
<indexterm role="cp"><primary>estilo de numeración de páginas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\pagenumbering{<replaceable>number-style</replaceable>}
</screen>
<para>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.
</para>
<para>En  este ejemplo,  antes de  la sección  &#8216;<literal>Principal</literal>&#8217; las  páginas
están numeradas &#8216;<literal>a</literal>&#8217;, etc. Comenzando en la página que contiene la
llamada  a <literal>\pagenumbering</literal>  en  esa sección,  las páginas  están
numeradas &#8216;<literal>1</literal>&#8217;, etc.
</para>
<screen>\begin{document}\pagenumbering{alph}
  ...
\section{Main}\pagenumbering{arabic}
  ...
</screen>
<para>El   argumento   <replaceable>number-style</replaceable>   es   uno   de   los   siguientes
(también&#160;<link linkend="_005calph-_005cAlph-_005carabic-_005croman-_005cRoman-_005cfnsymbol">\alph \Alph \arabic \roman \Roman \fnsymbol</link>).
</para>
<variablelist><varlistentry><term><literal>arabic</literal>
</term><listitem><para>número arábigo: 1, 2, &#8230;
</para>
</listitem></varlistentry><varlistentry><term><literal>roman</literal>
</term><listitem><para>Números romanos en minúsculas: i, ii, &#8230;
</para>
</listitem></varlistentry><varlistentry><term><literal>Roman</literal>
</term><listitem><para>Números romanos en mayúsculas: I, II, &#8230;
</para>
</listitem></varlistentry><varlistentry><term><literal>alph</literal>
</term><listitem><para>minúsculas: a, b, &#8230; Si tienes  más de 26 páginas, entonces obtén
&#8216;<literal>Error de LaTeX: Contador demasiado grande</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><literal>Alph</literal>
</term><listitem><para>letras mayúsculas: A, B, &#8230; Si  tiene más de 26 páginas, entonces
obtienes &#8216;<literal>Error de LaTeX: Contador demasiado grande</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><literal>gobble</literal>
</term><listitem><indexterm role="cp"><primary>package, <literal>hyperref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>hyperref</literal> package</primary></indexterm>
<para>&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 <literal>hyperref</literal>
para  tener el  número de  página no  aparece, es  posible que  desees
utilizar <literal>\pagestyle{empty}</literal> o <literal>\thispagestyle{empty}</literal>).
</para>
</listitem></varlistentry></variablelist>
<para>Tradicionalmente, si un documento  tiene antesala&#8212;prefacio, tabla de
contenido,   etc.&#8212;entonces  se   numera  con   números  romanos   en
minúsculas.  El asunto  principal de  un documento  utiliza el  árabe.
Véase <link linkend="_005cfrontmatter-_002d-_005cmainmatter-y-_005cbackmatter">\frontmatter - \mainmatter y \backmatter</link>.
</para>
<para>Si deseas  cambiar el lugar  donde aparece el  número de página  en la
página, <link linkend="_005cpagestyle">\pagestyle</link>.   Si deseas cambiar  el valor del  número de
página,     entonces     manipula      el     contador     <literal>page</literal>
(véase <link linkend="Contadores">Contadores</link>).
</para>

</sect1>
<sect1 label="18.3" id="_005cpagestyle">
<title><literal>\pagestyle</literal></title>

<indexterm role="fn"><primary>\pagestyle</primary></indexterm>
<indexterm role="cp"><primary>estilo de encabezado</primary></indexterm>
<indexterm role="cp"><primary>estilo de pie de página</primary></indexterm>
<indexterm role="cp"><primary>ejecutar estilo de encabezado y pie de página</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\pagestyle{<replaceable>style</replaceable>}
</screen>
<para>Declaración que especifica cómo se  componen los encabezados y pies de
página, desde la página actual en adelante.
</para>
<indexterm role="cp"><primary>package, <literal>fancyhdr</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>fancyhdr</literal> package</primary></indexterm>
<para>Una explicación con un ejemplo está abajo.  Ten en
cuenta primero  que el  paquete <literal>fancyhdr</literal>  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.
</para>
<para>Valores para <replaceable>style</replaceable>:
</para>
<variablelist><varlistentry><term><literal>plain</literal>
</term><listitem><para>El encabezado está vacío.  El pie de página contiene solo un número de
página, centrado.
</para>
</listitem></varlistentry><varlistentry><term><literal>empty</literal>
</term><listitem><para>Tanto el encabezado como el pie de página están vacíos.
</para>
</listitem></varlistentry><varlistentry><term><literal>headings</literal>
</term><listitem><para>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.
</para>
</listitem></varlistentry><varlistentry><term><literal>myheadings</literal>
</term><listitem><para>Encabezados  personalizados, especificados  a través  de los  comandos
<literal>\markboth</literal> o <literal>\markright</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>Un poco de discusión sobre la  motivación del mecanismo de &latex; te
ayudará   a    trabajar   con    las   opciones    <literal>headings</literal>   o
<literal>myheadings</literal>.  La fuente del  documento a continuación produce un
artículo, a  dos caras, con  el estilo de página  <literal>headings</literal>.  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
<literal>\leftmark</literal>   y   <literal>\rightmark</literal>.     Así   que   depende   de
<literal>\section</literal>  y <literal>\subsection</literal>  para almacenar  esa información
allí.
</para>
<screen>\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}
  ...
</screen>
<para>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á &#8216;<literal>Sección&#160;2</literal>&#8217; 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, &#8230;, 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>
<para>Para  lograr esto,  en un  artículo de  dos caras,  &latex; hace  que
<literal>\section</literal>emita   un   comando   <literal>\markboth</literal>,   configurando
<literal>\leftmark</literal> a &#8216;<literal>Section&#160;2</literal>&#8217; y configura <literal>\rightmark</literal>
en un contenido vacío.  Y,  &latex; hace que <literal>\subsection</literal> emita
un   comando  <literal>\markright</literal>,   configurando  <literal>\rightmark</literal>   a
&#8216;<literal>Subsección&#160;2.1</literal>&#8217;, etc.
</para>
<para>Aquí están las descripciones de <literal>\markboth</literal> y <literal>\markright</literal>:
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\markboth{<replaceable>left-head</replaceable>}{<replaceable>right-head</replaceable>}</primary></indexterm><literal>\markboth{<replaceable>left-head</replaceable>}{<replaceable>right-head</replaceable>}</literal>
</term><listitem><para>Establece  la información  de  rumbo  tanto a  la  derecha  como a  la
izquierda   para   un   estilo   de  página   de   <literal>headings</literal>   o
<literal>myheadings</literal>.   Una   página  de   la  izquierda   el  encabezado
<replaceable>left-head</replaceable>  es generado  por el  último comando  <literal>\markboth</literal>
antes del  final de la página.   Un encabezado de página  a la derecha
<replaceable>right-head</replaceable>  es   generado  por  el  primer   <literal>\markboth</literal>  o
<literal>\markright</literal> que viene  en la página si hay uno,  de lo contrario
por el último que vino antes de esa página.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\markright{<replaceable>right-head</replaceable>}</primary></indexterm><literal>\markright{<replaceable>right-head</replaceable>}</literal>
</term><listitem><para>Establece  el  encabezado de  la  página  de  la derecha,  dejando  el
izquierdo sin cambios.
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="18.4" id="_005cthispagestyle">
<title><literal>\thispagestyle</literal></title>

<indexterm role="fn"><primary>\thispagestyle</primary></indexterm>
<indexterm role="cp"><primary>estilo de página, esta página</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\thispagestyle{<replaceable>style</replaceable>}
</screen>
<para>Funciona    de   la    misma   manera    que   el    <literal>\pagestyle</literal>
(véase <link linkend="_005cpagestyle">\pagestyle</link>), excepto  que cambia  a <replaceable>style</replaceable> solo  para la
página actual.  Esta  declaración tiene alcance global, por  lo que su
efecto no está delimitado por llaves o entornos.
</para>
<para>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 <literal>plain</literal>, como es el
predeterminado (véase <link linkend="Estilos-de-p_00e1gina">Estilos de página</link>).
</para>
<screen>\documentclass{book}
\pagestyle{headings}
\begin{document}
\chapter{Primer capítulo}
  ...
\chapter{Segundo capítulo}\thispagestyle{empty}
  ...
</screen>
<para>El estilo <literal>plain</literal>  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 <literal>\thispagestyle{empty}</literal> sigue inmediatamente al segundo
<literal>\chapter</literal>.
</para>

</sect1>
</chapter>
<chapter label="19" id="Espacios">
<title>Espacios</title>

<indexterm role="cp"><primary>espacios</primary></indexterm>
<indexterm role="cp"><primary>espacio en blanco</primary></indexterm>

<para>&latex; tiene muchas formas de producir espacios en blanco o espacios
llenos.  Algunos de  estos se adaptan mejor al  texto matemático; para
estos&#160;<link linkend="Espaciado-en-modo-matem_00e1tico">Espaciado en modo matemático</link>.
</para>


<sect1 label="19.1" id="_005censpace-_002d-_005cquad-y-_005cqquad">
<title><literal>\enspace</literal>, <literal>\quad</literal> y <literal>\qquad</literal></title>

<anchor id="_005censpace"/><anchor id="_005cquad"/><anchor id="_005cqquad"/><indexterm role="fn"><primary>\enspace</primary></indexterm>
<indexterm role="fn"><primary>\quad</primary></indexterm>
<indexterm role="fn"><primary>\qquad</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\enspace
\quad
\qquad
</screen>
<para>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&#160;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
(véase <link linkend="Longitudes_002fem">Longitudes/em</link>).
</para>
<para>Esto pone un
espacio adecuado entre dos gráficos.
</para>
<screen>\begin{center}
  \includegraphics{womensmile.png}%
  \qquad\includegraphics{mensmile.png}
\end{center}
</screen>
<para>Véase <link linkend="Espaciado-en-modo-matem_00e1tico">Espaciado   en    modo   matemático</link>,   para    <literal>\quad</literal>   y
<literal>\qquad</literal>.   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 <literal>\hspace</literal>.
</para>

</sect1>
<sect1 label="19.2" id="_005chspace">
<title><literal>\hspace</literal></title>

<indexterm role="fn"><primary>\hspace</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\hspace{<replaceable>length</replaceable>}
\hspace*{<replaceable>length</replaceable>}
</screen>
<para>Inserta la  cantidad <replaceable>length</replaceable> de espacio  horizontal. <replaceable>length</replaceable>
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   <literal>plus</literal>   o   <literal>minus</literal>,  o   ambas
(véase <link linkend="Longitudes">Longitudes</link>).   Debido a  que el  espacio se  puede estirar  y
contraer, a veces se le llama <firstterm>pegamento</firstterm>.
</para>
<para>Esto hace una línea con &#8216;<literal>Name:</literal>&#8217; a una pulgada del margen derecho.
</para>
<screen>\noindent\makebox[\linewidth][r]{Name:\hspace{1in}}
</screen>
<para>La  forma <literal>*</literal>  inserta  un  espacio horizontal  que  no se  puede
descartar.   Más  precisamente, cuando  &tex;  divide  un párrafo  en
líneas  blancas el  espacio&#8212;pegamentos  y kerns&#8212;que  vienen en  un
salto   de  línea   se   descartan.   La   forma-<literal>*</literal>  evita   eso
(técnicamente, agrega un elemento invisible no descartable delante del
espacio).
</para>
<para>En este ejemplo
</para>
<screen>\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}.}
</screen>
<para>el espacio en blanco de 1&#160;pulgada que sigue a &#8216;<literal>concebido en</literal>&#8217;
cae  al  principio de  una  linea.   Si  borras el  <literal>*</literal>  entonces
&latex; descarta el espacio en blanco.
</para>
<para>Aquí, el <literal>\hspace</literal> separa los tres gráficos.
</para>
<screen>\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}
</screen>
<para>Porque el argumento de  cada <literal>\hspace</literal> tiene <literal>minus 0.25cm</literal>,
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
(véase <link linkend="Longitudes">Longitudes</link>).
</para>

</sect1>
<sect1 label="19.3" id="_005chfill">
<title><literal>\hfill</literal></title>

<indexterm role="fn"><primary>\hfill</primary></indexterm>

<indexterm role="cp"><primary>tramo, infinito horizontal</primary></indexterm>
<indexterm role="cp"><primary>tramo horizontal infinito</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\hfill
</screen>
<para>Produce una longitud elástica que no tenga espacio natural pero que se
pueda    estirar   horizontalmente    tanto    como   sea    necesario
(véase <link linkend="Longitudes">Longitudes</link>).
</para>
<para>Esto crea un párrafo de una línea con &#8216;<literal>Name:</literal>&#8217; en el lado izquierdo
de la página y &#8216;<literal>Prueba uno</literal>&#8217; a la derecha.
</para>
<screen>\noindent Name:\hfill Prueba uno
</screen>
<indexterm role="fn"><primary>\fill</primary></indexterm>
<para>El comando  <literal>\hfill</literal> es  equivalente a  <literal>\hspace{\fill}</literal> y
por lo que el espacio se puede descartar en los saltos de línea.  Para
evitar    eso,    en    su    lugar    usa    <literal>\hspace*{\fill}</literal>
(véase <link linkend="_005chspace">\hspace</link>).
</para>
<para>Aquí las  gráficas están espaciadas  uniformemente en el centro  de la
figura.
</para>
<screen>\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}
</screen>
<para>Ten en cuenta los <literal>\hspace*</literal> donde el espacio se podría eliminar.
</para>

</sect1>
<sect1 label="19.4" id="_005chss">
<title><literal>\hss</literal></title>

<indexterm role="fn"><primary>\hss</primary></indexterm>
<indexterm role="cp"><primary>espacio horizontal</primary></indexterm>
<indexterm role="cp"><primary>espacio horizontal, extensible</primary></indexterm>
<indexterm role="cp"><primary>espacio, insertando horizontal</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\hss
</screen>
<para>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  <literal>\makebox</literal>
para obtener efectos de <literal>\hss</literal> (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox y \makebox</link>).
</para>
<para>Aquí, el  <literal>\hss</literal> 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.
</para>
<screen>X\hbox to 0pt{Z\hss}Y
X\hbox to 0pt{\hss Z}Y
</screen>
<para>Sin  el   <literal>\hss</literal>  obtienes   algo  como   &#8216;<literal>Sobrecarga  \hbox
(6.11111pt demasiado ancho) detectado en la línea 20</literal>&#8217;.
</para>

</sect1>
<sect1 label="19.5" id="_005cspacefactor">
<title><literal>\spacefactor</literal></title>

<para>Sinopsis:
</para>
<screen>\spacefactor=<replaceable>integer</replaceable>
</screen>
<indexterm role="fn"><primary>\spacefactor</primary></indexterm>
<para>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.
</para>
<para>Mientras  &latex;  está estilizando  el  material,  puedes estirar  o
encoger los espacios entre palabras.  (Este espacio no es un carácter;
se  llama el  <firstterm>pegamento  entre  palabras</firstterm>; véase <link linkend="_005chspace">\hspace</link>).   El
comando  <literal>\spacefactor</literal> (de  &tex;&#160;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.
</para>
<para>Después de  que &latex;  coloca cada carácter,  regla u  otro cuadro,
establece  un  parámetro  llamado  <firstterm>factor  de  espacio</firstterm>.   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.
</para>
<para>Si  el factor  espacio&#160;<replaceable>f</replaceable> 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&#160;puntos).  De lo contrario,
si el  factor de  espacio <replaceable>f</replaceable>  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&#160;points), y entonces la  letra el
valor de  estiramiento normal  se multiplica por  <inlineequation><mathphrase>f /1000</mathphrase></inlineequation>  y el
valor normal el  valor de contracción se  multiplica por <inlineequation><mathphrase>1000/f</mathphrase></inlineequation>
(para  Computer   Modern  Roman  10   puntos,  estos  son   1.66666  y
1.11111&#160;puntos).
</para>
<para>Por ejemplo, considera el punto que termina <literal>El mejor amigo de un
hombre es  su perro.</literal>  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 <literal>amigo</literal>,  que no
termina en un punto.
</para>
<para>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 (véase <link linkend="_005c_0040">\@</link>).
</para>
<para>Solo  puedes  usar  <literal>\spacefactor</literal>  en modo  párrafo  o  modo  LR
(véase <link linkend="Modos">Modos</link>).      Puedes    ver     el     valor    actual     con
<literal>\the\spacefactor</literal> o <literal>\showthe\spacefactor</literal>.
</para>
<para>(Comentario,  no  realmente  relacionado con  <literal>\spacefactor</literal>:  si
obtienes  errores como  &#8216;<literal>No  puedes usar  `\spacefactor' en  modo
vertical</literal>&#8217;, o &#8216;<literal>No puedes usar `\spacefactor' en modo matemático.</literal>&#8217;,
o &#8216;<literal>Impropio \spacefactor</literal>&#8217;  entonces probablemente hayas intentado
redefinir un comando interno.  Véase <link linkend="_005cmakeatletter-y-_005cmakeatother">\makeatletter y \makeatother</link>).
</para>



<sect2 label="19.5.1" id="_005c_0040">
<title><literal>\@</literal></title>

<indexterm role="fn"><primary>\@</primary></indexterm>
<indexterm role="fn"><primary>arroba</primary></indexterm>
<indexterm role="cp"><primary>punto, final de oración</primary></indexterm>
<indexterm role="cp"><primary>punto, final de abreviatura</primary></indexterm>
<indexterm role="cp"><primary>punto, espaciado después</primary></indexterm>
<anchor id="_005cAT"/><!-- nombre antiguo -->

<para>Sinopsis:
</para>
<screen><replaceable>capital-letter</replaceable>\@.
</screen>
<para>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 (véase <link linkend="_005cspacefactor">\spacefactor</link>).
</para>
<para>Este ejemplo muestra los dos casos para recordar.
</para>
<screen>Las   canciones  \textit{Guitarra   roja},  etc.\   son  de   Loudon
Wainwright~III\@.
</screen>
<para>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
<literal>\@</literal> antes.  El primer  punto termina la abreviatura &#8216;<literal>etc.</literal>&#8217;
pero no la oración.  El espacio de barra invertida, <literal>\ </literal>, produce
un espacio en la mitad de la oración.
</para>
<para>Entonces:  si tienes  una  letra  mayúscula seguida  de  un punto  que
termina la oración, entonces coloca  <literal>\@</literal> 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
</para>
<screen>Usa la  \textit{Guía de Prácticas  de Instrucción}, (un libro  de la
MAA)\@.
</screen>
<para>tendrá el espaciado correcto entre oraciones después del punto.
</para>
<para>El comando <literal>\@</literal> es solo para un  modo de texto. Si lo usas fuera
de  un  modo   de  texto,  entonces  obtienes   &#8216;<literal>No  puedes  usar
`\spacefactor' en modo vertical</literal>&#8217; (véase <link linkend="Modos">Modos</link>).
</para>
<para>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,  (<literal>\ </literal>),  o una  tie, (<literal>~</literal>),  o <literal>\@</literal>.
Algunos ejemplos son <literal>Nat.\  Acad.\ Science</literal> y <literal>Mr.~Bean</literal>, y
<literal>(manure,  etc.\@) a  la  venta</literal>  (nótese en  la  última que  la
<literal>\@</literal> viene antes del paréntesis de cierre).
</para>

</sect2>
<sect2 label="19.5.2" id="_005cfrenchspacing-y-_005cnonfrenchspacing">
<title><literal>\frenchspacing</literal> y <literal>\nonfrenchspacing</literal></title>
<anchor id="_005cfrenchspacing"/><!-- nombre de nodo antiguo -->

<anchor id="_005cnonfrenchspacing"/><indexterm role="fn"><primary>\frenchspacing</primary></indexterm>
<indexterm role="fn"><primary>\nonfrenchspacing</primary></indexterm>
<indexterm role="cp"><primary>espaciado, entre oraciones</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\frenchspacing
\nonfrenchspacing
</screen>
<para>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
(véase <link linkend="_005cspacefactor">\spacefactor</link>).
</para>
<para>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
<literal>\frenchspacing</literal> (el  comando es  de &tex;)  simple cambia  a la
tradición de que todos los espacios son tratados por igual.
</para>

</sect2>
<sect2 label="19.5.3" id="_005cnormalsfcodes">
<title><literal>\normalsfcodes</literal></title>

<indexterm role="fn"><primary>\normalsfcodes</primary></indexterm>
<indexterm role="cp"><primary>espaciado, entre oraciones</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\normalsfcodes
</screen>
<para>Restablece  los  factores  de  espacio   de  &latex;  a  los  valores
predeterminados (véase <link linkend="_005cspacefactor">\spacefactor</link>).
</para>

</sect2>
</sect1>
<sect1 label="19.6" id="_005c_0028SPACE_0029">
<title>Barra invertida-espacio, <literal>\ </literal></title>

<indexterm role="cp"><primary>\<keycap>NEWLINE</keycap></primary></indexterm>
<indexterm role="cp"><primary>\<keycap>SPACE</keycap></primary></indexterm>
<indexterm role="cp"><primary>\<keycap>TAB</keycap></primary></indexterm>
<indexterm role="fn"><primary>\ <!-- /@w --> (backslash-space)</primary></indexterm>
<indexterm role="fn"><primary>\<keycap>SPACE</keycap></primary></indexterm>

<para>Esta sección se  refiere al comando que consta de  dos caracteres, una
barra invertida seguida de un espacio.
Sinopsis:
</para>
<screen>\ <!-- /@w -->
</screen>
<para>Produce  un  espacio. De  manera  predeterminada  produce espacios  en
blanco   de  longitud   3.33333pt   más  1.66666pt   menos
1.11111pt.
</para>
<para>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.
</para>
<screen>\begin{tabular}{rl}
Un espacio en blanco:&amp; hace algo de espacio \\
Tres espacios en blanco:&amp;   en un renglón \\
Tres espacios:&amp;\ \ \ en un renglón \\
\end{tabular}
</screen>
<para>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 <literal>\hspace</literal>; <link linkend="_005chspace">\hspace</link>).
</para>
<para>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  <literal>\TeX</literal>  en
<literal>\TeX\ (o \LaTeX)</literal>.  (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 <literal>\TeX{} (o \LaTeX{})</literal> en la
que <literal>{}</literal>  se puede  agregar después  de <literal>\LaTeX</literal>  así como
después de <literal>\TeX</literal>). El otro uso  común es que marca un punto como
final de  una abreviatura en  lugar de  terminar una oración,  como en
<literal>Prof.\ Smith</literal> o <literal>Jones et al.\ (1993)</literal> (véase <link linkend="_005c_0040">\@</link>).
</para>
<para>En circunstancias normales,  <literal>\</literal><keycap>TAB</keycap> y <literal>\</literal><keycap>NEWLINE</keycap>
son equivalentes a la barra invertida-espacio, <literal>\ </literal>.
</para>
<anchor id="Espacios-en-blanco-iniciales"/><para>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 &#8216;<literal>una palabra</literal>&#8217;:
</para>
<screen>una
  palabra
</screen>
<para>donde  el  espacio en  blanco  entre  &#8216;<literal>una</literal>&#8217; y  &#8216;<literal>palabra</literal>&#8217;  es
producido por la nueva línea después  de &#8216;<literal>una</literal>&#8217;, no por el espacio
antes de &#8216;<literal>palabra</literal>&#8217;.
</para>
<!-- @PkgIndex{xspace} Algunos comandos  individuales, en particular los -->
<!-- definidos   con   @package{xspace},   el  paquete   no   sigue   el -->
<!-- comportamiento estándar. -->


</sect1>
<sect1 label="19.7" id="_007e">
<title><literal>~</literal></title>

<indexterm role="fn"><primary>~</primary></indexterm>
<indexterm role="cp"><primary>tie</primary></indexterm>
<indexterm role="cp"><primary>espacio, irrompible</primary></indexterm>
<indexterm role="cp"><primary>espacio duro</primary></indexterm>
<indexterm role="cp"><primary>espacio irrompible</primary></indexterm>
<indexterm role="cp"><primary>NBSP</primary></indexterm>

<para>Sinopsis:
</para>
<screen><replaceable>before</replaceable>~<replaceable>after</replaceable>
</screen>
<para>El carácter <firstterm>tie</firstterm>, <literal>~</literal>,  genera un espacio entre <replaceable>before</replaceable>
y  <replaceable>after</replaceable>  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
(véase <link linkend="Longitudes">Longitudes</link>).
</para>
<!-- Este párrafo no está traducido al  francés, ya que la traducción al -->
<!-- francés usa un término que significa ``irrompible''. -->
<para>Ten en cuenta  que la palabra &#8216;<literal>tie</literal>&#8217; tiene este  significado en la
comunidad  &tex;/Texinfo;   esto  difiere  del   término  tipográfico
&#8220;tie&#8221;, que  es un  diacrítico en  forma de  arco, llamado  acento de
&#8220;lazo-después&#8221; en <citetitle>El libro &tex;</citetitle>.
</para>
<para>Aquí &latex; no romperá la línea entre las dos últimas palabras:
</para>
<screen>Gracias al Prof.~Lerman.
</screen>
<para>Además, a pesar del punto, &latex; no usa el espaciado al final de la
oración (véase <link linkend="_005c_0040">\@</link>).
</para>
<para>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
<literal>\mbox</literal> (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox y \makebox</link>).
</para>
<para>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 <citetitle>El libro de &tex;</citetitle>.
</para>
<itemizedlist><listitem><para>Entre una etiqueta de enumerador y un número, como en las referencias:
<literal>Capítulo~12</literal>,     o     <literal>Teorema~\ref{th:Wilsons}</literal>,     o
<literal>Figura~\ref{fig:KGraph}</literal>.
</para>
</listitem><listitem><para>Cuando los casos se enumeran en línea: <literal>(b)~Muestra que $f(x)$ es
(1)~continuo, y (2)~acotado</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>siunitx</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>siunitx</literal> package</primary></indexterm>

</listitem><listitem><para>Entre  un  número  y  su unidad:  <literal>$745.7.8$~watts</literal>  (El  paquete
<literal>siunitx</literal>   tiene   una   función  especial   para   esto)   o
<literal>144~eggs</literal>. Esto  incluye entre  un número  de mes  y día  en una
fecha:  <literal>Octubre~12</literal>  o <literal>12~Oct</literal>.  En general,  en cualquier
expresión donde números y abreviaturas  o símbolos están separados por
un espacio:   <literal>AD~565</literal>, o <literal>2:50~pm</literal>, o  <literal>Boeing~747</literal>, o
<literal>268~Camino  de  las  llanuras</literal>, o  <literal>\$$1.4$~billón</literal>.  Otras
opciones  comunes aquí  son  un espacio  delgado (véase <link linkend="_005cthinspace-y-_005cnegthinspace">\thinspace  y
\negthinspace</link>) y no hay espacio en absoluto.
</para>
</listitem><listitem><para>Cuando   las    frases   matemáticas   se   traducen    en   palabras:
<literal>equals~$n$</literal>, o <literal>menor que~$\epsilon$</literal>, o <literal>dado~$X$</literal>, o
<literal>módulo~$p^e$  para   todos  los  ~$n$</literal>  grandes   (pero  compara
<literal>es~$15$</literal>  con <literal>es  $15$~veces la  altura</literal>). Entre  símbolos
matemáticos  en  aposición  con sustantivos:   <literal>dimensión~$d$</literal>  o
<literal>función~$f(x)$</literal>   (pero   compara   <literal>con   longitud   $l$~o
más</literal>).  Cuando un  símbolo  es  un objeto  fuertemente  ligado de  una
preposición: <literal>de~$x$</literal>,  o <literal>de  $0$ a~$1$</literal>, o  <literal>en común
con ~$m$</literal>.
</para>
</listitem><listitem><para>Entre  símbolos en  serie:  <literal>$1$,~$2$,  o~$3$</literal> o  <literal>$1$,~$2$,
\ldots,~$n$</literal>.
</para>
</listitem><listitem><para>Entre los  nombres de pila  de una  persona y entre  varios apellidos:
<literal>Donald~E.    Knuth</literal>,    o    <literal>Luis~I.    Trabb~Pardo</literal>,    o
<literal>Charles~XII</literal>&#8212;pero debes darle a  &tex; lugares para romper la
línea así  que podrías  hacer <literal>Charles Louis  Xavier~Joseph de~la
Vall\'ee~Poussin</literal>.
</para>
</listitem></itemizedlist>

</sect1>
<sect1 label="19.8" id="_005cthinspace-y-_005cnegthinspace">
<title><literal>\thinspace</literal> y <literal>\negthinspace</literal></title>

<anchor id="_005cthinspace"/><anchor id="_005cnegthinspace"/><indexterm role="fn"><primary>\thinspace</primary></indexterm>
<indexterm role="fn"><primary>\negthinspace</primary></indexterm>
<indexterm role="cp"><primary>espacio delgado</primary></indexterm>
<indexterm role="cp"><primary>espacio, delgado</primary></indexterm>
<indexterm role="cp"><primary>espacio delgado, negativo</primary></indexterm>
<indexterm role="cp"><primary>espacio, negativo delgado</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\thinspace
\negthinspace
</screen>
<para>Estos producen  espacios irrompibles e inextensibles  de 1/6em y
-1/6em,  respectivamente.  Estos  son los  equivalentes en  modo
texto   de   <literal>\,</literal>   y   <literal>\!</literal>   (véase <link linkend="Espaciado-en-modo-matem_00e1tico_002f_005cthinspace">Espaciado   en   modo
matemático/\thinspace</link>).
</para>
<para>Puedes  usar  <literal>\,</literal> como  sinónimo  de  <literal>\thinspace</literal> en  modo
texto.
</para>
<para>Un uso  común de <literal>\thinspace</literal>  es como el espacio  entre comillas
anidadas:
</para>
<screen>Killick respondió: &quot;Escuché al capitán decir: 'Ahoy allí.'\thinspace&quot;
</screen>
<para>Otro uso es que algunas guías de estilo requieren un <literal>\thinspace</literal>
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
<literal>D.\thinspace E.\Knuth</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>amsmath</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsmath</literal> package</primary></indexterm>
<para>&latex;  proporciona una  variedad de  comandos de
espaciado similares para el  modo matemático (véase <link linkend="Espaciado-en-modo-matem_00e1tico">Espaciado en modo
matemático</link>).  Con el paquete <literal>amsmath</literal>,  o como de la versión
2020-10-01 &latex;,  se pueden usar  en modo  texto así como  el modo
matemático, incluido  <literal>\!</literal> para <literal>\negthinspace</literal>; pero  de lo
contrario, solo están disponibles en el modo matemático.
</para>
</sect1>
<sect1 label="19.9" id="_005c_002f">
<title><literal>\/</literal></title>

<indexterm role="fn"><primary>\/</primary></indexterm>
<indexterm role="cp"><primary>corrección en cursiva</primary></indexterm>

<para>Sinopsis:
</para>
<screen><replaceable>before-character</replaceable>\/<replaceable>after-character</replaceable>
</screen>
<para>Inserta una  <firstterm>corrección en cursiva</firstterm>, 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 <literal>\/</literal>,
&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.
</para>
<para>Aquí,  si  no  fuera   por  la  <literal>\/</literal>,  el  <replaceable>before-character</replaceable>
cursiva&#160;f golpearía el <replaceable>after-character</replaceable> roman&#160;H
</para>
<screen>\newcommand{\companylogo}{{\it f}\/H}
</screen>
<para>porque la letra cursiva f se inclina mucho hacia la derecha.
</para>
<para>Si  <replaceable>after-character</replaceable> 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.
</para>
<para>Cuando   usas   comandos   como  <literal>\emph</literal>   y   <literal>\textit</literal>   y
<literal>\textsl</literal>   para   cambiar    las   fuentes,   &latex;   inserta
automáticamente  la   corrección  en  cursiva  cuando   sea  necesario
(véase <link linkend="Estilos-de-tipos-de-letra">Estilos de tipos de  letra</link>).  Sin embargo, declaraciones como
<literal>\em</literal>   e   <literal>\itshape</literal>    y   <literal>\slshape</literal>   no   inserta
automáticamente correcciones en cursiva.
</para>
<para>Los  caracteres  verticales también  pueden  tener  una corrección  en
cursiva.    Un    ejemplo   donde    se   necesita   es    el   nombre
<literal>pdf\/\TeX</literal>. 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.
</para>
<indexterm role="fn"><primary>\fontdimen1</primary></indexterm>
<indexterm role="cp"><primary>dimensión de fuente, inclinación</primary></indexterm>
<para>Técnicamente, &latex; usa otro valor específico de fuente, el llamado
<firstterm>parámetro   inclinado</firstterm>  (es   decir,  <literal>\fontdimen1</literal>),   para
determinar  si posiblemente  insertar  una corrección  en cursiva,  en
lugar de vincular la acción a comandos de fuente particulares.
</para>
<para>No existe el concepto de corrección  de cursiva en el modo matemático;
el espaciado matemático está hecho de una manera diferente.
</para>

</sect1>
<sect1 label="19.10" id="_005chrulefill-y-_005cdotfill">
<title><literal>\hrulefill</literal> y <literal>\dotfill</literal></title>

<anchor id="_005chrulefill"/><anchor id="_005cdotfill"/><indexterm role="fn"><primary>\hrulefill</primary></indexterm>
<indexterm role="fn"><primary>\dotfill</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\hrulefill
\dotfill
</screen>
<para>Produce una longitud elástica horizontal infinita (véase <link linkend="Longitudes">Longitudes</link>)
que &latex;  se rellena  con una  regla (es decir,  una línea)  o con
puntos, en lugar de espacio en blanco.
</para>
<para>Esto genera una línea de 2 pulgadas de largo.
</para>
<screen>Nombre:~\makebox[2in]{\hrulefill}
</screen>
<para>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.
</para>
<screen>\noindent John Aubrey, RN \dotfill{} Melbury Lodge
</screen>
<para>Para hacer que la  regla o los puntos vayan al final  de la línea, usa
<literal>\null</literal> al comenzar o terminar.
</para>
<para>Para cambiar  el grosor de la  regla, copia la definición  y ajústala,
como aquí
</para>
<screen>\renewcommand{\hrulefill}{%
  \leavevmode\leaders\hrule height 1pt\hfill\kern0pt }
</screen>
<para>que cambia el  grosor predeterminado de 0.4pt  a 1pt.  Del
mismo modo, ajusta el espacio entre puntos como con
</para>
<screen>\renewcommand{\dotfill}{%
  \leavevmode\cleaders\hbox to 1.00em{\hss .\hss }\hfill\kern0pt }
</screen>
<para>que cambia la longitud predeterminada de 0.33em a 1.00em.
</para>
<para>Este ejemplo produce una línea para una firma.
</para>
<screen>\begin{minipage}{4cm}
  \centering
  \hrulefill\\
  Firmado
\end{minipage}
</screen>
<para>La línea mide 4cm de largo.
</para>

</sect1>
<sect1 label="19.11" id="_005cbigskip-_002d-_005cmedskip-y-_005csmallskip">
<title><literal>\bigskip</literal>, <literal>\medskip</literal> y <literal>\smallskip</literal></title>

<anchor id="_005cbigskip"/><anchor id="_005cmedskip"/><anchor id="_005csmallskip"/><indexterm role="fn"><primary>\bigskip</primary></indexterm>
<indexterm role="fn"><primary>\medskip</primary></indexterm>
<indexterm role="fn"><primary>\smallskip</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\bigskip
\medskip
\smallskip
</screen>
<para>Produce  una   cantidad  de   espacio  vertical,  grande,   mediano  o
pequeño. Estos comandos son frágiles (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Aquí el salto sugiere el paso  del tiempo (de <emphasis>El océano dorado</emphasis> por
O&#8217;Brian).
</para>
<screen>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&quot;,
dijo Pedro.
</screen>
<para>Cada comando está asociado a una longitud definida en el archivo de la clase
documento.
</para>
<variablelist><anchor id="bigskip"/><varlistentry><term><indexterm role="fn"><primary>\bigskip</primary></indexterm><literal>\bigskip</literal>
</term><listitem><indexterm role="fn"><primary>\bigskipamount</primary></indexterm>
<para>Lo mismo  que <literal>\vspace{\bigskipamount}</literal>,  normalmente alrededor
de una  línea de  espacio, con estiramiento  y contracción.   El valor
predeterminado para el <literal>libro</literal> y las clases de <literal>article</literal> son
<literal>12pt plus 4pt minus 4pt</literal>.
</para>
<anchor id="medskip"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\medskip</primary></indexterm><literal>\medskip</literal>
</term><listitem><indexterm role="fn"><primary>\medskipamount</primary></indexterm>
<para>Lo mismo  que <literal>\vspace{\medskipamount}</literal>,  normalmente alrededor
de la mitad  de una línea de espacio, con  estiramiento y contracción.
El valor  predeterminado para las clases  <literal>book</literal> y <literal>article</literal>
son <literal>6pt plus 2pt minus 2pt</literal>.
</para>
<anchor id="smallskip"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\smallskip</primary></indexterm><literal>\smallskip</literal>
</term><listitem><indexterm role="fn"><primary>\smallskipamount</primary></indexterm>
<para>Lo mismo que  <literal>\vspace{\smallskipamount}</literal>, normalmente sobre un
espacio de  un cuarto  de línea, con  estiramiento y  contracción.  El
valor predeterminado para las  clases <literal>book</literal> y <literal>article</literal> son
<literal>3pt plus 1pt minus 1pt</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>Debido a  que cada comando es  un <literal>\vspace</literal>, 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.
</para>
<para>Los comandos  <literal>\bigbreak</literal>, <literal>\medbreak</literal>  y <literal>\smallbreak</literal>
son similares  pero también sugieren  a &latex;  que este es  un buen
lugar para  poner un salto  de página (véase <link linkend="_005cbigbreak-_002d-_005cmedbreak-y-_005csmallbreak">\bigbreak -  \medbreak y
\smallbreak</link>.
</para>

</sect1>
<sect1 label="19.12" id="_005cbigbreak-_002d-_005cmedbreak-y-_005csmallbreak">
<title><literal>\bigbreak</literal>, <literal>\medbreak</literal> y <literal>\smallbreak</literal></title>

<anchor id="_005cbigbreak"/><anchor id="_005cmedbreak"/><anchor id="_005csmallbreak"/><indexterm role="fn"><primary>\bigbreak</primary></indexterm>
<indexterm role="fn"><primary>\medbreak</primary></indexterm>
<indexterm role="fn"><primary>\smallbreak</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\bigbreak
\medbreak
\smallbreak
</screen>
<para>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  &#8722;200, &#8722;100  y &#8722;50)
respectivamente.
</para>
<para>Véase <link linkend="_005cbigskip-_002d-_005cmedskip-y-_005csmallskip">\bigskip  - \medskip  y \smallskip</link>,  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 <literal>\addvspace</literal>).  Además, terminan un párrafo
donde se usan: este ejemplo
</para>
<screen>abc\bigbreak def ghi

jkl mno pqr
</screen>
<para>generará  tres párrafos,  el primero  que termina  en &#8216;<literal>abc</literal>&#8217;  y el
segundo  comienza, después  de  un espacio  vertical  adicional y  una
sangría de párrafo, con &#8216;<literal>def</literal>&#8217;.
</para>

</sect1>
<sect1 label="19.13" id="_005cstrut">
<title><literal>\strut</literal></title>

<indexterm role="fn"><primary>\strut</primary></indexterm>
<indexterm role="cp"><primary>strut</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\strut
</screen>
<para>Asegúrate  de  que la  línea  actual  tenga  una  altura de  al  menos
<literal>0.7\baselineskip</literal>     y     profundidad      al     menos     de
<literal>0.3\baselineskip</literal>.  Esencialmente, &latex;  inserta en la línea
un            rectángulo           de            ancho           cero,
<literal>\rule[-0.3\baselineskip]{0pt}{\baselineskip}</literal>
(véase <link linkend="_005crule">\rule</link>).   El  <literal>\baselineskip</literal>  cambia con  la  fuente  o
tamaño de fuente actual.
</para>
<para>En este  ejemplo, <literal>\strut</literal> mantiene  la caja dentro del  marco de
tener altura cero.
</para>
<screen>\setlength{\fboxsep}{0pt}\framebox[2in]{\strut}
</screen>
<para>Este ejemplo tiene cuatro listas.  En  el primero hay una brecha mucho
mayor.   entre los  elementos 2  y&#160;3  que entre  los elementos  1
y&#160;2.  La segunda lista corrige  eso con un <literal>\strut</literal> al final
de su primer elemento de la segunda línea.
</para>
<screen>\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}%
</screen>
<para>Las  dos listas  finales usan  <literal>\fbox</literal> para  mostrar lo  que está
sucediendo.  El primer elemento <literal>\parbox</literal>  de la tercera lista va
solo  al final  de su  segundo &#8216;<literal>test</literal>&#8217;,  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.
</para>
<indexterm role="cp"><primary>package, <literal>TikZ</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>TikZ</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>Asymptote</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>Asymptote</literal> package</primary></indexterm>
<para>El  comando <literal>\strut</literal>  suele
ser útil  en gráficos,  como en <literal>TikZ</literal>  o <literal>Asymptote</literal>.
Por      ejemplo,      puedes      tener     un      comando      como
<literal>\graphnode{<replaceable>nombre-nodo</replaceable>}</literal>  que  se  ajusta a  un  círculo
alrededor  de  <replaceable>nombre-nodo</replaceable>.  Sin  embargo,  a  menos que  tengas
cuidado  con  el  <replaceable>nombre-nodo</replaceable>  &#8216;<literal>x</literal>&#8217;  y  &#8216;<literal>y</literal>&#8217;  producirán
círculos  de  diferentes  diámetros   porque  los  caracteres  son  de
diferentes  tamaños.  Un  <literal>\graphnode</literal> cuidadoso  podría insertar
<literal>\strut</literal>, entonces <replaceable>nombre-nodo</replaceable> y luego dibujar el círculo.
</para>
<para>El  enfoque general  de usar  un <literal>\rule</literal>  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 <literal>\hline</literal>.
Del  mismo  modo, la  segunda  regla  evita  que la  segunda  integral
coincida con la primera.
</para>
<screen>\begin{tabular}{rl}
  \textsc{Integral}   &amp;\textsc{Value}           \\
  \hline
  $\int_0^x t\, dt$   &amp;$x^2/2$  \rule{0em}{2.5ex} \\
  $\int_0^x t^2\, dt$ &amp;$x^3/3$  \rule{0em}{2.5ex}
\end{tabular}
</screen>
<para>(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 <literal>\\[2.5ex]</literal> pondrá más espacio
entre la línea  de encabezado y la regla <literal>\hline</literal>,  y la integral
seguiría cumpliendo la regla).
</para>

</sect1>
<sect1 label="19.14" id="_005cvspace">
<title><literal>\vspace</literal></title>

<indexterm role="fn"><primary>\vspace</primary></indexterm>
<indexterm role="cp"><primary>espacio vertical</primary></indexterm>
<indexterm role="cp"><primary>espacio, vertical</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\vspace{<replaceable>length</replaceable>}
\vspace*{<replaceable>length</replaceable>}
</screen>
<para>Agrega  <replaceable>length</replaceable>  al  espacio vertical.   <replaceable>length</replaceable>  puede  ser
positivo,  negativo  o  cero.   Es una  longitud  elástica  &#8212;  puede
contener     un     componente      <literal>plus</literal>     o     <literal>minus</literal>
(véase <link linkend="Longitudes">Longitudes</link>).
</para>
<para>Esto pone espacio entre los dos párrafos.
</para>
<screen>Y dormí.

\vspace{1ex plus 0.5ex}
El nuevo día amaneció frío.
</screen>
<para>(Véase <link linkend="_005cbigskip-_002d-_005cmedskip-y-_005csmallskip">\bigskip  -  \medskip  y   \smallskip</link>,  para  interpárrafo  de
espacios común).
</para>
<para>La  forma  <literal>*</literal>  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-<literal>*</literal> hace que el espacio permanezca.
Este ejemplo deja espacio entre las dos preguntas.
</para>
<screen>Pregunta: Encuentra la integral de \( 5x^4+5 \).

\vspace*{2cm más 0.5cm}
Pregunta: Encuentra la derivada de \( x^5+5x+9 \).
</screen>
<para>Ese espacio  estará presente incluso si  el salto de página  cae entre
las preguntas.
</para>
<para>Si  usas <literal>\vspace</literal>  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 <literal>\vspace</literal>; no comienza un nuevo párrafo en el
comando <literal>\vspace</literal>.
</para>
<para>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.
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="19.15" id="_005cvfill">
<title><literal>\vfill</literal></title>

<indexterm role="fn"><primary>\vfill</primary></indexterm>

<indexterm role="cp"><primary>estiramiento, infinito vertical</primary></indexterm>
<indexterm role="cp"><primary>estiramiento vertical infinito</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\vfill
</screen>
<para>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 (véase <link linkend="Longitudes">Longitudes</link>).
</para>
<para>A  menudo  se usa  de  la  misma manera  que  <literal>\vspace{\fill}</literal>,
excepto  que <literal>\vfill</literal>  finaliza  el párrafo  actual mientras  que
<literal>\vspace{\fill}</literal> 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&#160;<link linkend="_005cvspace">\vspace</link>.
</para>
<para>En este ejemplo, la página está  llena, por lo que las líneas superior
e  inferior contienen  el texto  &#8216;<literal>¡Perro perdido!</literal>&#8217;  y el  segundo
&#8216;<literal>¡Perro perdido!</literal>&#8217; es exactamente a medio camino entre ellos.
</para>
<screen>\begin{document}
¡Perro perdido!
\vfill
¡Perro perdido!  % perfectamente en el medio
\vfill
¡Perro perdido!
\end{document}
</screen>

</sect1>
<sect1 label="19.16" id="_005caddvspace">
<title><literal>\addvspace</literal></title>

<indexterm role="fn"><primary>\addvspace</primary></indexterm>
<indexterm role="cp"><primary>espacio vertical</primary></indexterm>
<indexterm role="cp"><primary>espacio, insertar vertical</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\addvspace{<replaceable>vert-length</replaceable>}
</screen>
<para>Agrega un espacio vertical de  <replaceable>vert-length</replaceable>.  Sin embargo, si hay
dos  o más  <literal>\addvspace</literal> en  una  secuencia y  luego juntos  solo
agregan el espacio necesario para que la longitud natural sea igual al
máximo de la <replaceable>vert-length</replaceable> está  en esa secuencia. Este comando es
frágil  (véase <link linkend="_005cprotect">\protect</link>).   El  <replaceable>vert-length</replaceable>  es  una  longitud
elástica (véase <link linkend="Longitudes">Longitudes</link>).
</para>
<para>Este ejemplo  ilustra.  El <literal>picture</literal>  dibuja una escala  sobre la
cual  se colocan  las reglas.   En un  artículo &latex;  estándar, la
longitud <literal>\baselineskip</literal> es 12pt.   Como muestra la escala,
las  dos   reglas  están  separadas   por  22pt:  la   suma  del
<literal>\baselineskip</literal>    y    el    10pt    desde    el    primer
<literal>\addvspace</literal>.
</para>
<screen>\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}
</screen>
<para>Ahora  descomenta el  segundo  <literal>\addvspace</literal>.  No  hace la  brecha
20pt   más;   en    cambio,   la   brecha   es    la   suma   de
<literal>\baselineskip</literal>  y  20pt.   Entonces  <literal>\addvspace</literal>  en
cierto  sentido hace  lo contrario  de su  nombre&#8212;se asegura  de que
múltiples espacios verticales no acumulan, sino que sólo se utiliza el
más grande.
</para>
<para>&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 <literal>theorem</literal>  comienza y termina con  <literal>\addvspace</literal>, por
lo que dos <literal>theorem</literal> consecutivos  están separados por un espacio
vertical, no dos.
</para>
<para>Un error &#8216;<literal>Algo anda mal, tal  vez un \item</literal>&#8217; faltante que apunta a
un <literal>\addvspace</literal> significa que no  estabas en modo vertical cuando
presionaste  este comando.  Una forma  de  cambiar eso  es preceder  a
<literal>\addvspace</literal> con  un comando <literal>\par</literal> (véase <link linkend="_005cpar">\par</link>),  como en
el ejemplo anterior.
</para>

</sect1>
</chapter>
<chapter label="20" id="Cajas">
<title>Cajas</title>

<indexterm role="cp"><primary>cajas</primary></indexterm>

<!-- xx Amplía los cuadros y pega, para xref de otro lugar. -->
<para>En esencia, &latex; pone las cosas en cajas y luego pone las cajas en
una página.  Así que estos comandos son centrales.
</para>
<indexterm role="cp"><primary>package, <literal>adjustbox</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>adjustbox</literal> package</primary></indexterm>
<para>Hay muchos  paquetes en CTAN que  son útiles para
manipular  cajas.   Un complemento  útil  para  los comandos  aquí  es
<literal>adjustbox</literal>.
</para>


<sect1 label="20.1" id="_005cmbox-y-_005cmakebox">
<title><literal>\mbox</literal> y <literal>\makebox</literal></title>

<anchor id="_005cmbox"/><anchor id="_005cmakebox"/><indexterm role="fn"><primary>\mbox</primary></indexterm>
<indexterm role="fn"><primary>\makebox</primary></indexterm>
<indexterm role="cp"><primary>caja</primary></indexterm>
<indexterm role="cp"><primary>hace una caja</primary></indexterm>
<indexterm role="cp"><primary>separación silábica, prevenir</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\mbox{<replaceable>text</replaceable>}
\makebox{<replaceable>text</replaceable>}
\makebox[<replaceable>width</replaceable>]{<replaceable>text</replaceable>}
\makebox[<replaceable>width</replaceable>][<replaceable>position</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Crea una  caja, un  contenedor para el  material.  El  <replaceable>text</replaceable> está
escrito en  modo LR (véase <link linkend="Modos">Modos</link>) para  que no se divida  en líneas.
El comando  <literal>\mbox</literal> es  robusto, mientras que  <literal>\makebox</literal> es
frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Debido  a  que  <literal>text</literal>  no  se  divide  en  líneas,  puedes  usar
<literal>\mbox</literal>  para evitar  la separación  silábica.  En  este ejemplo,
&latex; no dividirá con guiones el nombre del tanque, &#8216;<literal>T-34</literal>&#8217;.
</para>
<screen>El tanque soviético \mbox{T-34} es  un símbolo de victoria contra el
nazismo.
</screen>
<para>Las dos primeras  llamadas a comandos que se  muestran, <literal>\mbox</literal> y
<literal>\makebox</literal>, son  más o menos  iguales.  Crean una caja  apenas lo
suficientemente ancha para contener el <replaceable>text</replaceable>o.  (Son como simples
<literal>\hbox</literal> de &tex;).
</para>
<para>En la tercera versión, el argumento opcional <replaceable>width</replaceable> 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, <replaceable>text</replaceable>
puede ser demasiado pequeño; esto crea un cuadro de línea completa
</para>
<screen>\makebox[\linewidth]{Examen del capítulo}
</screen>
<para>con  &#8216;<literal>Examen del  capítulo</literal>&#8217;  centrado.   Pero <replaceable>text</replaceable>  también
puede ser demasiado  ancho para <replaceable>width</replaceable>.  Ve  el siguiente ejemplo
de cuadros de ancho cero.
</para>
<anchor id="mbox-makebox-depth"/><anchor id="mbox-makebox-height"/><anchor id="mbox-makebox-width"/><anchor id="mbox-makebox-totalheight"/><para>En  el  argumento
<replaceable>width</replaceable> puedes usar las siguientes longitudes que se refieren a la
dimensión  de la  caja que  obtiene &latex;  al componer  <replaceable>text</replaceable>:
<literal>\depth</literal>,   <literal>\height</literal>,  <literal>\width</literal>,   <literal>\totalheight</literal>
(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.
</para>
<screen>\makebox[2\width]{Obtener una camilla}
</screen>
<para>Para  la cuarta  versión  de  la sinopsis  del  comando, el  argumento
opcional  <replaceable>position</replaceable>   da  la   posición  del  texto   dentro  del
cuadro. Puede tomar los siguientes valores:
</para>
<variablelist><varlistentry><term><literal>c</literal>
</term><listitem><para>El <replaceable>text</replaceable> está centrado (predeterminado).
</para>
</listitem></varlistentry><varlistentry><term><literal>l</literal>
</term><listitem><para>El <replaceable>text</replaceable> está alineado a la izquierda.
</para>
</listitem></varlistentry><varlistentry><term><literal>r</literal>
</term><listitem><para>Flujo a la derecha.
</para>
</listitem></varlistentry><varlistentry><term><literal>s</literal>
</term><listitem><!-- xx TODO agrega un nodo genérico para aclarar que alguna declaración -->
<!-- puede  no  ser  cierto  para alguna  internacionalización  o  algún -->
<!-- script. P. ej. en árabe script  o con paquete de microtipo creo que -->
<!-- el estirar también juega en ancho de palabra -->
<para>Estira el espacio entre palabras en <replaceable>text</replaceable> en todo el <replaceable>width</replaceable>.
El  <replaceable>text</replaceable>  debe contener  un  espacio  extensible para  que  esto
funcione.  Por ejemplo, esto podría encabezar un comunicado de prensa:
<literal>\noindent\makebox[\textwidth][s]{\large\hfil    LIBERACIÓN\hfil
INMEDIATA\hfil}</literal>
</para></listitem></varlistentry></variablelist>
<para>Un uso  común de <literal>\makebox</literal>  es crear  cuadros de texto  de ancho
cero.   Esto pone  el valor  de las  preguntas del  cuestionario a  la
izquierda de esas preguntas.
</para>
<screen>\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?
</screen>
<indexterm role="cp"><primary>package, <literal>TikZ</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>TikZ</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>Asymptote</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>Asymptote</literal> package</primary></indexterm>
<para>El  borde derecho  de la  salida
&#8216;<literal>10  puntos</literal>&#8217;  (ten   en  cuenta  el  espacio   final  después  de
&#8216;<literal>puntos</literal>&#8217;)  estará  justo  antes   de  &#8216;<literal>Cual</literal>&#8217;.   Puedes  usar
<literal>\makebox</literal>  de   manera  similar  al  hacer   gráficos,  como  en
<literal>TikZ</literal> o  <literal>Asymptote</literal>, donde pones el  borde del texto
en  una  ubicación en  un  punto  conocido, independientemente  de  la
longitud de ese texto.
</para>
<para>Para   cajas    con   marcos&#160;<link linkend="_005cfbox-y-_005cframebox">\fbox   y    \framebox</link>.   Para
colores&#160;<link linkend="Cuadros-de-colores">Cuadros de colores</link>.
</para>
<para>Hay una versión  relacionada de <literal>\makebox</literal> que se  usa dentro del
entorno  <literal>picture</literal>,  donde  la  longitud se  da  en  términos  de
<literal>\unitlength</literal> (véase <link linkend="_005cmakebox-_0028picture_0029">\makebox (picture)</link>).
</para>
<para>Puesto que <replaceable>text</replaceable> está escrito en  modo LR, ni una barra invertida
doble <literal>\\</literal> ni  <literal>\par</literal> te darán una nueva  línea; por ejemplo
<literal>\makebox{abc def  \\ ghi}</literal>  genera &#8216;<literal>abc  defghi</literal>&#8217; mientras
<literal>\makebox{abc def  \par ghi}</literal> genera &#8216;<literal>abc  def ghi</literal>&#8217;, ambos
en  una  sola  línea.    Para  obtener  varias  líneas,  <link linkend="_005cparbox">\parbox</link>
y&#160;<link linkend="minipage">minipage</link>.
</para>

</sect1>
<sect1 label="20.2" id="_005cfbox-y-_005cframebox">
<title><literal>\fbox</literal> y <literal>\framebox</literal></title>

<anchor id="_005cfbox"/><anchor id="_005cframebox"/><indexterm role="fn"><primary>\fbox</primary></indexterm>
<indexterm role="fn"><primary>\framebox</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\fbox{<replaceable>text</replaceable>}
\framebox{<replaceable>text</replaceable>}
\framebox[<replaceable>width</replaceable>]{<replaceable>text</replaceable>}
\framebox[<replaceable>width</replaceable>][<replaceable>position</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Crea un  cuadro con un marco  envolvente, cuatro reglas que  rodean el
<replaceable>text</replaceable>.   Estos  comandos  son   los  mismos  que  <literal>\mbox</literal>  y
<literal>\makebox</literal> excepto  para el marco (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox  y \makebox</link>). El
comando <literal>\fbox</literal> es robusto, el comando <literal>\framebox</literal> es frágil
(véase <link linkend="_005cprotect">\protect</link>).
</para>
<screen>\fbox{¡Advertencia! No se muestra el trabajo, no se otorga crédito.}
</screen>
<para>&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.
</para>
<para>Las  dos  primeras  invocaciones de  comandos,  <literal>\fbox{...}</literal>  y
<literal>\framebox{...}</literal>,  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 <replaceable>width</replaceable> y la posición del
texto  dentro  de  ese  cuadro  como  <replaceable>position</replaceable>.   Véase <link linkend="_005cmbox-y-_005cmakebox">\mbox  y
\makebox</link>, para  la descripción completa  pero aquí hay un  ejemplo de
creación de un cuadro vacío de 1/4in de ancho.
</para>
<screen>\setlength{\fboxsep}{0pt}\framebox[0.25in]{\strut}}
</screen>
<para>El <literal>\strut</literal> asegura una altura total de <literal>\baselineskip</literal>
(véase <link linkend="_005cstrut">\strut</link>).
</para>
<para>Estos parámetros determinan el diseño del marco.
</para>
<variablelist><anchor id="fbox-framebox-fboxrule"/><varlistentry><term><indexterm role="fn"><primary>\fboxrule</primary></indexterm><literal>\fboxrule</literal>
</term><listitem><indexterm role="fn"><primary>marco, ancho de línea</primary></indexterm>
<indexterm role="fn"><primary>Ancho de la regla de cuadro</primary></indexterm>
<indexterm role="cp"><primary>\fboxrule</primary></indexterm>
<para>El  grosor de  las  reglas alrededor  de la  caja  cerrada.  El  valor
predeterminado  es   0.2pt.   Cámbialo   con  un   comando  como
<literal>\setlength{\fboxrule}{0.8pt}</literal> (véase <link linkend="_005csetlength">\setlength</link>).
</para>
<anchor id="fbox-framebox-fboxsep"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\fboxsep</primary></indexterm><literal>\fboxsep</literal>
</term><listitem><indexterm role="fn"><primary>marco, separación de contenido</primary></indexterm>
<indexterm role="cp"><primary>\fboxsep</primary></indexterm>
<para>La  distancia  desde  el  marco   hasta  la  caja  cerrada.  El  valor
predeterminado   es  3pt.    Cámbialo   con   un  comando   como
<literal>\setlength{\fboxsep}{0pt}</literal>             (véase <link linkend="_005csetlength">\setlength</link>).
Establecerlo en  0pt es  útil a veces:   esto colocará  un marco
alrededor de la imagen sin borde blanco.
</para>
<screen>{\setlength{\fboxsep}{0pt}%
 \framebox{%
   \includegraphics[width=0.5\textwidth]{prudence.jpg}}}
</screen>
<para>Las  llaves  adicionales  mantienen el  efecto  del  <literal>\setlength</literal>
local.
</para>
</listitem></varlistentry></variablelist>
<para>Al igual que  con <literal>\mbox</literal> y <literal>\makebox</literal>,  &latex; no romperá
líneas  en <replaceable>text</replaceable>.   Pero  este ejemplo  tiene  líneas de  ruptura
&latex; para hacer un párrafo, y luego encuadra el resultado.
</para>
<screen>\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}}
</screen>
<para>Véase <link linkend="Cuadros-de-colores">Cuadros de colores</link>, para colores que no sean blanco y negro.
</para>
<para>El   entorno   <literal>picture</literal>   tiene    una   versión   del   comando
<literal>\framebox</literal> donde las unidades dependen del <literal>\unitlength</literal> de
<literal>picture</literal> (véase <link linkend="_005cframebox-_0028picture_0029">\framebox (picture)</link>).
</para>

</sect1>
<sect1 label="20.3" id="_005cparbox">
<title><literal>\parbox</literal></title>

<indexterm role="fn"><primary>\parbox</primary></indexterm>
<indexterm role="cp"><primary>modo paragraph</primary></indexterm>
<indexterm role="cp"><primary>paragraph, en una caja</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\parbox{<replaceable>width</replaceable>}{<replaceable>contenido</replaceable>}
\parbox[<replaceable>position</replaceable>]{<replaceable>width</replaceable>}{<replaceable>contenido</replaceable>}
\parbox[<replaceable>position</replaceable>][<replaceable>height</replaceable>]{<replaceable>width</replaceable>}{<replaceable>contenido</replaceable>}
\parbox[<replaceable>position</replaceable>][<replaceable>height</replaceable>][<replaceable>inner-pos</replaceable>]{<replaceable>width</replaceable>}{<replaceable>contenido</replaceable>}
</screen>
<para>Produce un cuadro  de texto de <replaceable>width</replaceable> 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 (véase <link linkend="_005cprotect">\protect</link>).
</para>
<screen>\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}
</screen>
<para>El <replaceable>contenido</replaceable> se procesa en modo texto (véase <link linkend="Modos">Modos</link>) por lo que
&latex; dividirá líneas para formar  un párrafo.  Pero no hará varios
párrafos; para eso, usa un entorno <literal>minipage</literal> (véase <link linkend="minipage">minipage</link>).
</para>
<para>Las  opciones para  <literal>\parbox</literal> (excepto  <replaceable>contenido</replaceable>) son  las
mismas como las de <literal>minipage</literal>.   Para mayor comodidad, un resumen
de  las  opciones está  aquí,  pero  <link linkend="minipage">minipage</link> para  obtener  una
descripción completa.
</para>
<para>Hay dos argumentos necesarios.  El  <replaceable>width</replaceable> es una longitud rígida
(véase <link linkend="Longitudes">Longitudes</link>).   Establece  el  ancho  del  cuadro  en  el  que
&latex; compone <replaceable>contenido</replaceable>.  <replaceable>contenido</replaceable>  es el texto que se
coloca en  esa caja.  No debe  tener ningún componente de  creación de
párrafos.
</para>
<para>Hay  tres   argumentos  opcionales,  <replaceable>position</replaceable>,   <replaceable>height</replaceable>  e
<replaceable>inner-pos</replaceable>.  La  <replaceable>position</replaceable> da  la alineación vertical  de la
<firstterm>parbox</firstterm>  con  respecto  al  material  circundante.   Los  valores
apoyados son <literal>c</literal> o <literal>m</literal> 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 <literal>t</literal> para  hacer coincidir la línea superior
del parbox con la línea base del material circundante, o <literal>b</literal> para
que coincida con la línea de fondo.
</para>
<para>El argumento  opcional <replaceable>height</replaceable> redefine  la altura natural  de la
caja.
</para>
<para>El  argumento  opcional  <replaceable>inner-pos</replaceable>   controla  la  ubicación  de
<replaceable>content</replaceable> dentro del <literal>parbox</literal>.  Su valor predeterminado es el
valor  de <replaceable>position</replaceable>.   Sus  posibles valores  son: <literal>t</literal>  para
poner el <replaceable>content</replaceable> en la  parte superior del cuadro, <literal>c</literal> para
ponerlo en  el centro  vertical, <literal>b</literal> para  colocarlo en  la parte
inferior  del cuadro  y  <literal>s</literal> para  estirarlo verticalmente  (para
ello, el texto debe contener espacio extensible verticalmente).
</para>
</sect1>
<sect1 label="20.4" id="_005craisebox">
<title><literal>\raisebox</literal></title>

<indexterm role="fn"><primary>\raisebox</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\raisebox{<replaceable>distance</replaceable>}{<replaceable>text</replaceable>}
\raisebox{<replaceable>distance</replaceable>}[<replaceable>height</replaceable>]{<replaceable>text</replaceable>}
\raisebox{<replaceable>distance</replaceable>}[<replaceable>height</replaceable>][<replaceable>depth</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Sube o baja <replaceable>text</replaceable>. Este comando es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Este  ejemplo hace  un  comando  para denotar  la  restricción de  una
función bajando el símbolo de la barra vertical.
</para>
<!-- crédito: egreg https://tex.stackexchange.com/a/278631/121234 -->
<screen>\newcommand*\restricted[1]{\raisebox{-.5ex}{$|$}_{#1}}
$f\restricted{A}$
</screen>
<para>El  primer argumento  obligatorio  <replaceable>distance</replaceable>  especifica qué  tan
lejos subir el  segundo argumento obligatorio <replaceable>text</replaceable>.  Esta es una
longitud rígida  (véase <link linkend="Longitudes">Longitudes</link>).  Si  es negativo  entonces baja
<replaceable>text</replaceable>.  El <replaceable>text</replaceable>  se procesa en modo LR por  lo que no puede
contener saltos de línea (véase <link linkend="Modos">Modos</link>).
</para>
<para>Los argumentos opcionales <replaceable>height</replaceable>  y <replaceable>depth</replaceable> son dimensiones.
Si se  especifican, redefinen  la altura y  profundidad natural  de la
caja, &latex; compone tipográficamente <replaceable>text</replaceable>.
</para>
<anchor id="raisebox-depth"/><anchor id="raisebox-height"/><anchor id="raisebox-width"/><anchor id="raisebox-totalheight"/><para>En los argumentos <replaceable>distance</replaceable>,
<replaceable>height</replaceable> y  <replaceable>depth</replaceable> puedes utilizar las  siguientes longitudes
que  se refieren  a la  dimensión de  la caja  que &latex;  empieza a
componer  <replaceable>text</replaceable>:  <literal>\depth</literal>,  <literal>\height</literal>,  <literal>\width</literal>,
<literal>\totalheight</literal> (esta es la altura de la caja más su profundidad).
</para>
<para>Esto alineará dos gráficos en su parte superior (véase <link linkend="Gr_00e1ficos">Gráficos</link>).
</para>
<!-- crédito: Preguntas frecuentes https://texfaq.org/FAQ-topgraph -->
<screen>\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}
</screen>
<para>El primer <literal>\height</literal> es la  altura de <filename>lion.png</filename> mientras que
el segundo es la altura de <filename>meta.png</filename>.
</para>

</sect1>
<sect1 label="20.5" id="_005csbox-y-_005csavebox">
<title><literal>\sbox</literal> y <literal>\savebox</literal></title>

<anchor id="_005csbox"/><anchor id="_005csavebox"/><indexterm role="fn"><primary>\sbox</primary></indexterm>
<indexterm role="fn"><primary>\savebox</primary></indexterm>
<indexterm role="cp"><primary>caja, guardar</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\sbox{<replaceable>box-cmd</replaceable>}{<replaceable>text</replaceable>}
\savebox{<replaceable>box-cmd</replaceable>}{<replaceable>text</replaceable>}
\savebox{<replaceable>box-cmd</replaceable>}[<replaceable>width</replaceable>]{<replaceable>text</replaceable>}
\savebox{<replaceable>box-cmd</replaceable>}[<replaceable>width</replaceable>][<replaceable>pos</replaceable>]{<replaceable>text</replaceable>}
</screen>
<para>Compone  <replaceable>text</replaceable>  igual  que con  <literal>\makebox</literal>  (véase <link linkend="_005cmbox-y-_005cmakebox">\mbox  y
\makebox</link>) excepto que &latex; no lo genera, sino que lo guarda en un
registro  de  caja al  que  hace  referencia una  variable  denominada
<replaceable>box-cmd</replaceable>.  El  nombre de  la variable <replaceable>box-cmd</replaceable>  comienza con
una barra  invertida, <literal>\</literal>.   Debes haber asignado  previamente el
cuadro    de    registro    <replaceable>box-cmd</replaceable>    con    <literal>\newsavebox</literal>
(véase <link linkend="_005cnewsavebox">\newsavebox</link>).  El comando  <literal>\sbox</literal>  es robusto  mientras
<literal>\savebox</literal> es frágil (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Esto crea y utiliza un registro de caja.
</para>
<screen>\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.
</screen>
<para>Una  ventaja de  usar  y  reutilizar un  registro  de  caja sobre  una
variable macro  <literal>\newcommand</literal> es  la eficiencia, que  &latex; no
necesita vuelve a escribir repetidamente  el contenido.  Ve el ejemplo
a continuación.
</para>
<para>Las  dos  primeras  llamadas  a   comandos  que  se  muestran  arriba,
<literal>\sbox{<replaceable>box-cmd</replaceable>}{<replaceable>text</replaceable>}</literal>                          y
<literal>\savebox{<replaceable>box-cmd</replaceable>}{<replaceable>text</replaceable>}</literal>,   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 <replaceable>width</replaceable>,  y la
posición   del  texto   dentro  de   esa  caja   como  <replaceable>position</replaceable>.
Véase <link linkend="_005cmbox-y-_005cmakebox">\mbox y \makebox</link>, para la descripción completa.
</para>
<para>En  los  comandos  <literal>\sbox</literal>  y <literal>\savebox</literal>  el  <replaceable>text</replaceable>  es
tipografiado  en   modo  LR  para   que  no  tenga  saltos   de  línea
(véase <link linkend="Modos">Modos</link>).  Si usas  estos, entonces &latex; no te  da un error
pero ignora  lo que quieres: si  ingresas <literal>\sbox{\newreg}{test
\\    test}</literal>    y   <literal>\usebox{\newreg}</literal>    entonces    obtienes
&#8216;<literal>testtest</literal>&#8217;, mientras que si ingresas <literal>\sbox{\newreg}{test
\par test}</literal> y  <literal>\usebox{\newreg}</literal> entonces obtienes &#8216;<literal>test
test</literal>&#8217;, pero  no hay error  ni advertencia.  Para solucionar  esto, usa
<literal>\parbox</literal> o <literal>minipage</literal> como aquí.
</para>
<!-- crédito: egreg https://tex.stackexchange.com/a/41668/121234 -->
<screen>\newsavebox{\areg}
\savebox{\areg}{%
  \begin{minipage}{\linewidth}
    \begin{enumerate}
      \item Primer elemento
      \item Segundo elemento
    \end{enumerate}
  \end{minipage}}
  ...
\usebox{\areg}
</screen>
<para>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.
</para>
<screen>\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}
</screen>
<para>El entorno <literal>picture</literal> es bueno para ajustar la ubicación.
</para>
<para>Si el  registro <literal>\noreg</literal>  aún no se  ha definido,  obtendrás algo
como &#8216;<literal>Secuencia de control indefinida. &lt;argument&gt; \noreg</literal>&#8217;.
</para>

</sect1>
<sect1 label="20.6" id="lrbox">
<title><literal>lrbox</literal></title>

<indexterm role="fn"><primary>lrbox</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\begin{lrbox}{<replaceable>box-cmd</replaceable>}
  <replaceable>text</replaceable>
\end{lrbox}
</screen>
<para>Esta  es  la   forma  de  entorno  de  los   comandos  <literal>\sbox</literal>  y
<literal>\savebox</literal>, y  es equivalente a ellos.   Véase <link linkend="_005csbox-y-_005csavebox">\sbox y \savebox</link>,
para la descripción completa.
</para>
<para>El <replaceable>text</replaceable>  dentro del entorno se  guarda en el cuadro  de registro
referido  por  la  variable  <literal><replaceable>box-cmd</replaceable></literal>.  El  nombre  de  la
variable  <replaceable>box-cmd</replaceable>   debe  comenzar  con  una   barra  invertida,
<literal>\</literal>.  Debes asignar  esta  caja regístrate  con anticipación  con
<literal>\newsavebox</literal> (véase <link linkend="_005cnewsavebox">\newsavebox</link>).  En  este ejemplo el entorno
es conveniente para ingresar el <literal>tabular</literal>.
</para>
<screen>\newsavebox{\jhreg}
\begin{lrbox}{\jhreg}
  \begin{tabular}{c}
    \includegraphics[height=1in]{jh.png} \\
    Jim Hef{}feron
  \end{tabular}
\end{lrbox}
  ...
\usebox{\jhreg}
</screen>

</sect1>
<sect1 label="20.7" id="_005cusebox">
<title><literal>\usebox</literal></title>

<indexterm role="fn"><primary>\usebox</primary></indexterm>
<indexterm role="cp"><primary>cuadro, usa cuadro guardado</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usebox{<replaceable>box-cmd</replaceable>}
</screen>
<para>Produce el cuadro guardado más  recientemente en el registro de cuadro
<replaceable>box-cmd</replaceable> por  los comandos  <literal>\sbox</literal> o <literal>\savebox</literal>,  o el
entorno  <literal>lrbox</literal>.   Para  obtener  más  información  y  ejemplos,
véase <link linkend="_005csbox-y-_005csavebox">\sbox y \savebox</link>.  (Ten en cuenta que el nombre de la variable
<replaceable>box-cmd</replaceable>  comienza  con  una  barra  invertida,  <literal>\</literal>).  Este
comando es robusto (véase <link linkend="_005cprotect">\protect</link>).
</para>

</sect1>
</chapter>
<chapter label="21" id="Color">
<title>Color</title>

<indexterm role="cp"><primary>color</primary></indexterm>

<para>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.
</para>
<para>El soporte  de color  viene como  un paquete  adicional.  Así  que pon
<literal>\usepackage{color}</literal> en el preámbulo  de su documento para usar
los comandos descritos aquí.
</para>
<para>Muchos otros paquetes también complementan las capacidades de color de
&latex;.  Particularmente  digno de mención es  <filename>xcolor</filename>, que se
utiliza  ampliamente  y  extiende significativamente  las  capacidades
descritas aquí, incluida la adición  de modelos de color &#8216;<literal>HTML</literal>&#8217; y
&#8216;<literal>Hsb</literal>&#8217;.
</para>


<sect1 label="21.1" id="Opciones-del-paquete-Color">
<title>Opciones del paquete <literal>color</literal></title>

<indexterm role="cp"><primary>opciones de paquete color</primary></indexterm>
<indexterm role="cp"><primary>opciones, paquete color</primary></indexterm>

<para>Sinopsis (debe estar en el preámbulo del documento):
</para>
<screen>\usepackage[<replaceable>comma-separated option list</replaceable>]{color}
</screen>
<para>Cuando cargas  el paquete  <filename>color</filename> hay dos  tipos de  opciones de
archivo disponibles.
</para>
<para>El primero especifica el  <firstterm>controlador de impresora</firstterm>.  &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:   <filename>dvipdfmx</filename>,  <filename>dvips</filename>,   <filename>dvisvgm</filename>,
<filename>luatex</filename>,  <filename>pdftex</filename>, <filename>xetex</filename>.   Los  dos <filename>xdvi</filename>  y
<filename>oztex</filename> esencialmente son alias  para <filename>dvips</filename> (y <filename>xdvi</filename>
es monocromo).   Los que no  se deben  usar para nuevos  sistemas son:
<filename>dvipdf</filename>,    <filename>dvipdfm</filename>,   <filename>dviwin</filename>,    <filename>dvipsone</filename>,
<filename>emtex</filename>,    <filename>pctexps</filename>,   <filename>pctexwin</filename>,    <filename>pctexhp</filename>,
<filename>pctex32</filename>,   <filename>truetex</filename>,    <filename>tcidvi</filename>,   <filename>vtex</filename>   (y
<filename>dviwindo</filename> es un alias de <filename>dvipsone</filename>).
</para>
<para>El  segundo  tipo de  opciones,  más  allá  de los  controladores,  se
encuentran a continuación.
</para>
<variablelist>
<varlistentry><term><literal>monochrome</literal>
</term><listitem><para>Deshabilita los  comandos de color,  para que no generen  errores pero
tampoco generar color.
</para>
</listitem></varlistentry><varlistentry><term><literal>dvipsnames</literal>
</term><listitem><para>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
<filename>dvips</filename>, dando el nombre de la opción.
</para>
</listitem></varlistentry><varlistentry><term><literal>nodvipsnames</literal>
</term><listitem><para>No  carga esa  lista de  nombres  de colores,  ahorrando &latex;  una
pequeña cantidad de espacio de memoria.
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="21.2" id="Modelos-de-color">
<title>Modelos de color</title>

<indexterm role="cp"><primary>modelos de color</primary></indexterm>

<para>Un <firstterm>modelo de color</firstterm> es una forma de representar los colores.  Las
capacidades de &latex; dependen del controlador de la impresora.  Sin
embargo, <filename>pdftex</filename>, los controladores  de impresora <filename>xetex</filename> y
<filename>luatex</filename> 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.
</para>
<para>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.
</para>
<variablelist><anchor id="modelos-de-color-cmyk"/><varlistentry><term><literal>cmyk</literal>
</term><listitem><para>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.
</para>
<anchor id="modelos-de-color-gris"/></listitem></varlistentry><varlistentry><term><literal>gray</literal>
</term><listitem><para>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.
</para>
<anchor id="modelos-de-color-rgb"/></listitem></varlistentry><varlistentry><term><literal>rgb</literal>
</term><listitem><para>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.
</para>
<anchor id="modelos-de-color-RGB"/></listitem></varlistentry><varlistentry><term><literal>RGB</literal>
</term><listitem><para>(<filename>pdftex</filename>,   <filename>xetex</filename>,  <filename>luatex</filename>   drivers)  Una   lista
separada  por comas  con tres  números enteros  entre 0  y 255,  ambos
inclusive.  Este modelo es una  conveniencia de usar <literal>rgb</literal> 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 <literal>rgb</literal> mediante división
entre 255.
</para>
<anchor id="modelos-de-color-nombrados"/></listitem></varlistentry><varlistentry><term><literal>named</literal>
</term><listitem><para>Se  accede a  los colores  por nombre,  como &#8216;<literal>PrussianBlue</literal>&#8217;.   La
lista  de nombres  depende  del controlador,  pero  todos admiten  los
nombres   &#8216;<literal>black</literal>&#8217;,    &#8216;<literal>azul</literal>&#8217;,   &#8216;<literal>cian</literal>&#8217;,   &#8216;<literal>verde</literal>&#8217;,
&#8216;<literal>magenta</literal>&#8217;, &#8216;<literal>rojo</literal>&#8217;, &#8216;<literal>white</literal>&#8217; y &#8216;<literal>yellow</literal>&#8217; (Consulta la
opción <literal>dvipsnames</literal> en <link linkend="Opciones-del-paquete-Color">Opciones del paquete Color</link>).
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="21.3" id="Comandos-para-color">
<title>Comandos para color</title>

<indexterm role="cp"><primary>comandos del paquete color</primary></indexterm>

<para>Estos son los comandos disponibles con el paquete <filename>color</filename>.
</para>


<sect2 label="21.3.1" id="Definir-colores">
<title>Definir colores</title>

<indexterm role="cp"><primary>color</primary></indexterm>
<indexterm role="cp"><primary>definir color</primary></indexterm>
<indexterm role="cp"><primary>color, definir</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\definecolor{<replaceable>name</replaceable>}{<replaceable>model</replaceable>}{<replaceable>specification</replaceable>}
</screen>
<para>Asigna el nombre <replaceable>name</replaceable> al color.  Por ejemplo, después de esto
</para>
<screen>\definecolor{silver}{rgb}{0.75,0.75,0.74}
</screen>
<para>puedes   usar    ese   nombre   de   color    con   <literal>Hola   hola,
\textcolor{silver}{Silver}!</literal>.
</para>
<para>Este ejemplo  da al color un  nombre más abstracto, por  lo que podría
cambiar y no ser engañoso.
</para>
<screen>\definecolor{logocolor}{RGB}{145,92,131}  %  RGB needs  pdflatex
\newcommand{\logo}{\textcolor{logocolor}{Bob's Big Bagels}}
</screen>
<para>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.
</para>

</sect2>
<sect2 label="21.3.2" id="Texto-en-color">
<title>Texto en color</title>

<indexterm role="cp"><primary>color</primary></indexterm>
<indexterm role="cp"><primary>texto en color</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\textcolor{<replaceable>name</replaceable>}{...}
\textcolor[<replaceable>color model</replaceable>]{<replaceable>color specification</replaceable>}{...}
</screen>
<para>o
</para>
<screen>\color{<replaceable>name</replaceable>}
\color[<replaceable>color model</replaceable>]{<replaceable>color specification</replaceable>}
</screen>
<para>El texto afectado obtiene el color.  Esta línea
</para>
<screen>\textcolor{magenta}{Mi nombre es Ozymandias, Rey de Reyes;} ¡Mirad
mis obras, poderosos, y desesperaos!
</screen>
<para>hace que la  primera mitad esté en magenta mientras  que el resto está
en  negro.  Puedes  usar  un color  declarado con  <literal>\definecolor</literal>
exactamente  de  la  misma  manera   que  usamos  el  color  integrado
&#8216;<literal>magenta</literal>&#8217;.
</para>
<screen>\definecolor{MidlifeCrisisRed}{rgb}{1.0,0.11,0.0}
Estoy  pensando  en adquirir  un  \textcolor{MidlifeCrisisRed}{auto
deportivo}.
</screen>
<para>Los dos <literal>\textcolor</literal>  y <literal>\color</literal> 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 <literal>La
luna está hecha de {\color{green}  green} cheese</literal>, 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 <literal>center</literal>, incluyendo las  líneas verticales y
horizontales.
</para>
<screen>\begin{center} \color{blue}
  \begin{tabular}{l|r}
    UL &amp;UR \\ \hline
    LL &amp;LR
  \end{tabular}
\end{center}
</screen>
<para>Puedes usar  el color  en las ecuaciones.   Un documento  podría tener
esta definición en el preámbulo
</para>
<screen>\definecolor{highlightcolor}{RGB}{225,15,0}
</screen>
<para>y luego contener esta ecuación.
</para>
<screen>\begin{equation}
  \int_a^b \textcolor{highlightcolor}{f'(x)}\,dx=f(b)-f(a)
\end{equation}
</screen>
<para>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.
</para>
<screen>Colores de \textcolor[rgb]{0.33,0.14,0.47}{Purple} y
{\color[rgb]{0.72,0.60,0.37}Gold} para el equipo.
</screen>
<para>El  formato de  <replaceable>especificación de  color</replaceable> depende  del modelo  de
color (véase <link linkend="Modelos-de-color">Modelos  de color</link>).   Por ejemplo,  mientras <literal>rgb</literal>
toma tres números, <literal>gray</literal> solo toma uno.
</para>
<screen>La selección fue \textcolor[gray]{0.5}{grayed out}.
</screen>
<para>Los colores dentro de los colores no combinan.  De este modo
</para>
<screen>\textcolor{green}{clase de \textcolor{blue}{blue}}
</screen>
<para>tiene una  palabra final  que es  azul, no una  combinación de  azul y
verde.
</para>
<!-- xx ¿dirección coloreando una línea de una tabla? -->


</sect2>
<sect2 label="21.3.3" id="Cuadros-de-colores">
<title>Cuadros de colores</title>

<indexterm role="cp"><primary>color</primary></indexterm>
<indexterm role="cp"><primary>cajas de colores</primary></indexterm>
<indexterm role="cp"><primary>caja, coloreada</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\colorbox{<replaceable>name</replaceable>}{...}
\colorbox[<replaceable>nombre   del   modelo</replaceable>]{<replaceable>color    de   fondo   del
cuadro</replaceable>}{...}
</screen>
<para>o
</para>
<screen>\fcolorbox{<replaceable>color   del   cuadro</replaceable>}{<replaceable>color  de   fondo   del
cuadro</replaceable>}{...}
\fcolorbox[<replaceable>nombre       del        modelo</replaceable>]{<replaceable>color       del
cuadro</replaceable>}{<replaceable>color de fondo del cuadro</replaceable>}{...}
</screen>
<para>Haz  un   cuadro  con  el   color  de  fondo  indicado.    El  comando
<literal>\fcolorbox</literal> pone  un marco  alrededor de  la caja.   Por ejemplo
esto
</para>
<screen>Nombre:~\colorbox{cyan}{\makebox[5cm][l]{\strut}}
</screen>
<para>hace una caja de color cian de  cinco centímetros de largo y recibe su
profundidad y altura  del <literal>\strut</literal> (por lo que  la profundidad es
<literal>-.3\baselineskip</literal>  y la  altura es  <literal>\baselineskip</literal>).  Este
pone texto blanco sobre un fondo azul.
</para>
<screen>\colorbox{blue}{\textcolor{white}{Bienvenido a la máquina.}}
</screen>
<para>Los  comandos   <literal>\fcolorbox</literal>  usan  los  mismos   parámetros  que
<literal>\fbox</literal>   (véase <link linkend="_005cfbox-y-_005cframebox">\fbox   y   \framebox</link>),   <literal>\fboxrule</literal>   y
<literal>\fboxsep</literal>, 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   <literal>0.4pt</literal>   y   <literal>3pt</literal>,
respectivamente.
</para>
<para>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.
</para>
<screen>{\setlength{\fboxrule}{0.8pt}
\fcolorbox{black}{red}{Bajo  ninguna   circunstancia  gires  esta
perilla.}}
</screen>

</sect2>
<sect2 label="21.3.4" id="P_00e1ginas-coloreadas">
<title>Páginas coloreadas</title>

<indexterm role="cp"><primary>color</primary></indexterm>
<indexterm role="cp"><primary>pagina coloreada</primary></indexterm>
<indexterm role="cp"><primary>página, en color</primary></indexterm>
<indexterm role="cp"><primary>fondo, coloreado</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\pagecolor{<replaceable>name</replaceable>}
\pagecolor[<replaceable>modelo de color</replaceable>]{<replaceable>especificación de color</replaceable>}
\nopagecolor
</screen>
<para>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 véase <link linkend="Texto-en-color">Texto en color</link>.  La tercera devuelve el fondo
a  la  normalidad, que  es  un  fondo  transparente.   (Si eso  no  es
compatible, usa  <literal>\pagecolor{white}</literal>, aunque eso hará  un fondo
blanco en lugar del fondo transparente predeterminado).
</para>
<screen> ...
\pagecolor{cyan}
 ...
\nopagecolor
</screen>

</sect2>
</sect1>
</chapter>
<chapter label="22" id="Gr_00e1ficos">
<title>Gráficos</title>

<indexterm role="cp"><primary>gráficos</primary></indexterm>
<indexterm role="cp"><primary>paquete graphics</primary></indexterm>

<para>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.
</para>
<screen>\include{graphicx} % va en el preámbulo
   ...
\includegraphics[width=0.5\linewidth]{plot.pdf}
</screen>
<para>Para usar  los comandos descritos  aquí, el preámbulo de  tu documento
debe    contener     ya    sea     <literal>\usepackage{graphicx}</literal>    o
<literal>\usepackage{graphics}</literal>.    La    mayoría   de    las    veces,
<literal>graphicx</literal> es la mejor elección.
</para>
<para>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  &#8216;<literal>dibuja un  círculo  con  este radio  y  ese
centro</literal>&#8217;.  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.
</para>
<para>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
<literal>picture</literal>  (véase <link linkend="picture">picture</link>)   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.
</para>


<sect1 label="22.1" id="Opciones-del-paquete-Graphics">
<title>Opciones del paquete <literal>graphics</literal></title>

<indexterm role="cp"><primary>opciones del paquete graphics</primary></indexterm>
<indexterm role="cp"><primary>opciones, paquete graphics</primary></indexterm>

<para>Sinopsis (debe estar en el preámbulo del documento):
</para>
<screen>\usepackage[<replaceable>lista de opciones separadas por comas</replaceable>]{graphics}
</screen>
<para>o
</para>
<screen>\usepackage[<replaceable>lista de opciones separadas por comas</replaceable>]{graphicx}
</screen>
<para>El paquete <literal>graphicx</literal> tiene un formato para argumentos opcionales
al comando <literal>\includegraphics</literal> que  sea conveniente (es el formato
valor-clave), por  lo que es  la mejor opción para  documentos nuevos.
Cuando cargas  el paquete <literal>graphics</literal> o  <literal>graphicx</literal> con
<literal>\usepackage</literal> hay dos tipos de opciones disponibles.
</para>
<para>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  <firstterm>controlador  de impresora</firstterm>.   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>
<para>Para  completar,  aquí  hay  una  lista  de  los  controladores.   Los
actualmente    relevantes    son:    <filename>dvipdfmx</filename>,    <filename>dvips</filename>,
<filename>dvisvgm</filename>, <filename>luatex</filename>,  <filename>pdftex</filename>, <filename>xetex</filename>.   Los dos
<filename>xdvi</filename> y  <filename>oztex</filename> esencialmente son alias  para <filename>dvips</filename>
(y <filename>xdvi</filename> es monocromo).  Los que  no se deben usar para sistemas
nuevos    son:     <filename>dvipdf</filename>,    <filename>dvipdfm</filename>,    <filename>dviwin</filename>,
<filename>dvipsone</filename>,   <filename>emtex</filename>,    <filename>pctexps</filename>,   <filename>pctexwin</filename>,
<filename>pctexhp</filename>,    <filename>pctex32</filename>,   <filename>truetex</filename>,    <filename>tcidvi</filename>,
<filename>vtex</filename>  (y <filename>dviwindo</filename>  es  un  alias para  <filename>dvipsone</filename>).
Estos se  almacenan en  archivos con  una extensión  <filename>.def</filename>, como
<filename>pdftex.def</filename>.
</para>
<para>El segundo tipo de opciones se encuentra a continuación.
</para>
<variablelist><varlistentry><term><literal>demo</literal>
</term><listitem><para>En lugar  de un archivo  de imagen,  &latex; coloca un  rectángulo de
150&#160;pt por 100&#160;pt (a menos que se especifique otro tamaño en
el comando <literal>\includegraphics</literal>).
</para>
</listitem></varlistentry><varlistentry><term><literal>draft</literal>
</term><listitem><para>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.
</para>
</listitem></varlistentry><varlistentry><term><literal>final</literal>
</term><listitem><para>(Predeterminado) Redefinir cualquier  opción <literal>draft</literal> anterior, de
modo que el documento muestra el contenido de los archivos gráficos.
</para>
</listitem></varlistentry><varlistentry><term><literal>hiderotate</literal>
</term><listitem><para>No  muestra texto  girado.  (Esto  permite la  posibilidad de  que una
vista previa no tiene la capacidad de rotar el texto).
<!-- ¿qué muestra? -->
</para>
</listitem></varlistentry><varlistentry><term><literal>hidescale</literal>
</term><listitem><para>No mostrar  texto escalado.  (Esto  permite la posibilidad de  que una
vista previa no tiene la capacidad de escalar).
<!-- ¿qué muestra? -->
</para>
</listitem></varlistentry><varlistentry><term><literal>hiresbb</literal>
</term><listitem><para>En un archivo PS o EPS, el  tamaño del gráfico se puede especificar de
dos formas.   Las líneas  de <literal>%%BoundingBox</literal> 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
<literal>%%HiResBoundingBox</literal>.  Esta  opción tiene  &latex; para  leer el
tamaño de esta última.
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="22.2" id="Configuraci_00f3n-del-paquete-de-graphics">
<title>Configuración del paquete <literal>graphics</literal></title>

<indexterm role="cp"><primary>gráficos</primary></indexterm>
<indexterm role="cp"><primary>paquete graphics</primary></indexterm>
<indexterm role="cp"><primary>configuración, paquete graphics</primary></indexterm>

<para>Estos comandos configuran la forma en que &latex; busca en el sistema
de archivos gráficos.
</para>
<para>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 <filename>grfguide.pdf</filename>, o la fuente de &latex;, o su documentación de
la distribución de &tex;.
</para>


<sect2 label="22.2.1" id="_005cgraphicspath">
<title><literal>\graphicspath</literal></title>

<indexterm role="fn"><primary>\graphicspath</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\graphicspath{<replaceable>lista de directorios entre llaves</replaceable>}
</screen>
<para>Declara una lista de directorios  para buscar archivos gráficos.  Esto
permite que luego  digas algo como <literal>\includegraphics{lion.png}</literal>
en lugar de tener que dar su ruta.
</para>
<para>&latex;  siempre busca  archivos  gráficos primero  en el  directorio
actual (y el directorio de salida, si se especifica; véase <link linkend="directorio-de-salida">directorio
de salida</link>).  La  siguiente declaración le dice al  sistema que busque
en el subdirectorio <filename>pix</filename>, y luego <filename>../pix</filename>.
</para>
<screen>\usepackage{graphicx} % o gráficos; poner en el preámbulo
   ...
\graphicspath{ {pix/} {../pix/} }
</screen>
<para>La declaración  <literal>\graphicspath</literal> 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
<literal>\input@path</literal> de &latex;).  En particular,  en este caso uno de
los lugares donde mira es el directorio actual.
</para>
<para>Encierra cada  nombre de directorio  entre llaves; por  ejemplo arriba
dice  &#8216;<literal><literal>{pix}</literal></literal>&#8217;.    Haz  esto  incluso  si   solo  hay  un
directorio.   Cada nombre  de directorio  debe terminar  en una  barra
diagonal,  <filename>/</filename>.  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  <literal>{&quot;my docs/&quot;}</literal>.  Usar una  de estas
reglas incorrectamente hará que  &latex; informe <literal>Error: Archivo
`<replaceable>filename</replaceable>' no encontrado</literal>.
</para>
<para>Básicamente, el algoritmo es que con este ejemplo, después de mirar en
el directorio actual,
</para>
<screen>\graphicspath{ {pix/} {../pix/} }
...
\usepackage{lion.png}
</screen>
<para>para cada uno de los directorios enumerados, &latex; lo concatena con
el   nombre   de   archivo   y   busca   el   resultado,   encontrando
<filename>pix/lion.png</filename>  y luego  <filename>../pix/lion.png</filename>.  Este  algoritmo
significa que el comando  <literal>\graphicspath</literal> no busca subdirectorios
recursivamente:  si emites <literal>\graphicspath{{a/}}</literal> y el gráfico
está  en  <filename>a/b/lion.png</filename>  entonces  &latex;  no  lo  encontrará.
También   significa    que   puedes   usar   rutas    absolutas   como
<literal>\graphicspath{{/home/jim/logos/}}</literal>                         o
<literal>\graphicspath{{C:/Users/Albert/Pictures/}}</literal>.   Sin  embargo,
usar  esto  significa  que  el  documento  no  es  portátil.   (Puedes
conservar portabilidad  ajustando el parámetro <literal>TEXINPUTS</literal>  de tu
archivo de configuración del sistema &tex;; consulta la documentación
de tu sistema).
</para>
<para>Puedes usar <literal>\graphicspath</literal> en cualquier parte del documento.  Lo
puedes   usar    más   de   una    vez.    Muestra   su    valor   con
<literal>\makeatletter\typeout{\Ginput@path}\makeatother</literal>.
</para>
<para>Los directorios se toman con respecto  al archivo base.  Eso es, supón
que estás trabajando en un  documento basado en <filename>book/book.tex</filename> y
contiene  <literal>\include{chapters/chap1}</literal>.   Si en  <filename>chap1.tex</filename>
pones <literal>\graphicspath{{plots/}}</literal> entonces  &latex; no buscará
gráficos   en   <filename>book/chapters/plots</filename>,    sino   en   cambio   en
<filename>book/plots</filename>.
</para>

</sect2>
<sect2 label="22.2.2" id="_005cDeclareGraphicsExtensions">
<title><literal>\DeclareGraphicsExtensions</literal></title>

<indexterm role="fn"><primary>\DeclareGraphicsExtensions</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareGraphicsExtensions{<replaceable>lista   de  extensiones   de  archivo
separadas por comas</replaceable>}
</screen>
<para>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 <literal>\includegraphics{functionplot}</literal>.
</para>
<para>En este ejemplo, &latex; encontrará archivos en formato PNG antes que
archivos PDF.
</para>
<screen>\DeclareGraphicsExtensions{.png,PNG,.pdf,.PDF}
  ...
\includegraphics{lion}  %   encontrará  <filename>lion.png</filename>   antes  que
<filename>lion.pdf</filename>
</screen>
<para>Debido a que el nombre de archivo <filename>lion</filename> no tiene punto, &latex;
usa  la lista  de extensiones.   Para cada  directorio en  la ruta  de
gráficos (véase <link linkend="_005cgraphicspath">\graphicspath</link>), &latex;  probará las extensiones en
el orden dado.  Si no encuentra  dicho archivo después de probar todos
los  directorios  y extensiones,  entonces  informa  &#8216;<literal>! Error  de
LaTeX: Archivo `<filename>lion</filename>' no encontrado</literal>&#8217;.   Ten en cuenta que debes
incluir los puntos al comienzo de las extensiones.
</para>
<para>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.
</para>
<para>No es  necesario que  incluya <literal>\DeclareGraphicsExtensions</literal>  en tu
documento;   el   controlador  de   la   impresora   tiene  un   valor
predeterminado  razonable.   Por  ejemplo,  el  <filename>pdftex.def</filename>  más
reciente tiene esta lista de extensiones.
</para>
<screen>.pdf,.png,.jpg,.mps,.jpeg,.jbig2,.jb2,.PDF,.PNG,.JPG,.JPEG,.JBIG2,.JB2
</screen>
<indexterm role="cp"><primary>package, <literal>grfext</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>grfext</literal> package</primary></indexterm>

<para>Para cambiar el orden, usa el paquete <literal>grfext</literal>.
</para>
<para>Puedes usar este comando en  cualquier parte del documento.  Lo puedes
usar     más    de     una    vez.      Muestra    su     valor    con
<literal>\makeatletter\typeout{\Gin@extensions}\makeatother</literal>.
</para>

</sect2>
<sect2 label="22.2.3" id="_005cDeclareGraphicsRule">
<title><literal>\DeclareGraphicsRule</literal></title>

<indexterm role="fn"><primary>\DeclareGraphicsRule</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\DeclareGraphicsRule{<replaceable>extension</replaceable>}{<replaceable>type</replaceable>}{<replaceable>size-file
extension</replaceable>}{<replaceable>command</replaceable>}
</screen>
<para>Declara  cómo  manejar archivos  gráficos  cuyos  nombres terminan  en
<replaceable>extensión</replaceable>.
</para>
<para>Este ejemplo  declara que todos los  archivos con nombres de  la forma
<filename>nombre-de-archivo-sin-punto.mps</filename>  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.
</para>
<screen>\DeclareGraphicsRule{.mps}{mps}{.mps}{}
</screen>
<para>Este
</para>
<screen>\DeclareGraphicsRule{*}{mps}{*}{}
</screen>
<para>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>filename.1</filename>, <filename>nombre-de-archivo.2</filename>, etc.
</para>
<para>Esto describe los cuatro argumentos.
</para>
<variablelist><varlistentry><term><replaceable>extension</replaceable>
</term><listitem><para>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-<literal>*</literal>,  para indicar  el
comportamiento predeterminado de todas las extensiones no declaradas.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>type</replaceable>
</term><listitem><para>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   <filename>.ps</filename>,  <filename>.eps</filename>   o  <filename>.ps.gz</filename>   se  pueden
clasificar como tipo <literal>eps</literal>.  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  <filename>pdftex</filename>
reconoce  son:   <literal>jpg</literal>,  <literal>jbig2</literal>,   <literal>mps</literal>,  <literal>pdf</literal>,
<literal>png</literal>, <literal>tif</literal>.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>tamaño de extensión de archivo</replaceable>
</term><listitem><para>La extensión del archivo a leer para determinar el tamaño del gráfico,
si existe  tal archivo.  Puede ser lo  mismo que  <replaceable>extension</replaceable> pero
puede ser diferente.
</para>
<para>Como  ejemplo,  considera un  gráfico  PostScript.   Para hacerlo  más
pequeño,  puede estar  comprimido  en un  archivo <filename>.ps.gz</filename>.   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 <replaceable>size-file  extension</replaceable>  está  vacío, entonces  debes
especificar   la  información   de   tamaño  en   los  argumentos   de
<literal>\includegraphics</literal>.
</para>
<para>Si  el  archivo  del  controlador tiene  un  procedimiento  para  leer
archivos de tamaño para <literal>tipo</literal> entonces se usará, de lo contrario
usará el procedimiento para leer archivos <filename>.eps</filename>.  (Por lo tanto,
puedes especificar el tamaño de archivos de mapa de bits en un archivo
con una  línea de  estilo PostScript  <literal>%%BoundingBox</literal> si  no otro
formato está disponible).
</para>
</listitem></varlistentry><varlistentry><term><replaceable>command</replaceable>
</term><listitem><para>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,
<literal>\DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{`gunzip    -c
#1}</literal> especifica que cualquier archivo con la extensión <filename>.eps.gz</filename>
se  debe tratar  como un  archivo  <literal>eps</literal>, con  la información  de
BoundingBox almacenado  en el archivo con  extensión <filename>.eps.bb</filename>, y
que el  comando <literal>gunzip  -c</literal> se ejecutará  en tu  plataforma para
descomprimir el archivo.
</para>
<para>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;.
</para>
</listitem></varlistentry></variablelist>
</sect2>
</sect1>
<sect1 label="22.3" id="Comandos-para-graphics">
<title>Comandos para graphics</title>

<indexterm role="cp"><primary>comandos del paquete graphics</primary></indexterm>
<indexterm role="cp"><primary>comandos, paquete graphics</primary></indexterm>

<para>Estos son los comandos disponibles con los paquetes <literal>graphics</literal>
y <literal>graphicx</literal>.
</para>


<sect2 label="22.3.1" id="_005cincludegraphics">
<title><literal>\includegraphics</literal></title>

<indexterm role="cp"><primary>gráficos</primary></indexterm>
<indexterm role="cp"><primary>paquete graphics</primary></indexterm>
<indexterm role="cp"><primary>incluir gráficos</primary></indexterm>
<indexterm role="cp"><primary>importar gráficos</primary></indexterm>
<indexterm role="cp"><primary>archivos EPS</primary></indexterm>
<indexterm role="cp"><primary>archivos JPEG</primary></indexterm>
<indexterm role="cp"><primary>archivos JPG</primary></indexterm>
<indexterm role="cp"><primary>archivos gráficos PDF</primary></indexterm>
<indexterm role="cp"><primary>archivos PNG</primary></indexterm>
<indexterm role="fn"><primary>\includegraphics</primary></indexterm>

<para>Sinopsis del paquete <literal>graphics</literal>:
</para>
<screen>\includegraphics{<replaceable>filename</replaceable>}
\includegraphics[<replaceable>urx</replaceable>,<replaceable>ury</replaceable>]{<replaceable>filename</replaceable>}
\includegraphics[<replaceable>llx</replaceable>,<replaceable>lly</replaceable>][<replaceable>urx</replaceable>,<replaceable>ury</replaceable>]{<replaceable>filename</replaceable>}
\includegraphics*{<replaceable>filename</replaceable>}
\includegraphics*[<replaceable>urx</replaceable>,<replaceable>ury</replaceable>]{<replaceable>filename</replaceable>}
\includegraphics*[<replaceable>llx</replaceable>,<replaceable>lly</replaceable>][<replaceable>urx</replaceable>,<replaceable>ury</replaceable>]{<replaceable>filename</replaceable>}
</screen>
<para>Sinopsis del paquete <literal>graphicx</literal>:
</para>
<screen>\includegraphics{<replaceable>filename</replaceable>}
\includegraphics[<replaceable>key-value list</replaceable>]{<replaceable>filename</replaceable>}
\includegraphics*{<replaceable>filename</replaceable>}
\includegraphics*[<replaceable>key-value list</replaceable>]{<replaceable>filename</replaceable>}
</screen>
<para>Incluye    un   archivo    de    gráficos.     La   forma    destacada
<literal>\includegraphics*</literal> 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.
</para>
<para>Este
</para>
<screen>\usepackage{graphicx}  % en el preámbulo
  ...
\begin{center}
  \includegraphics{plot.pdf}
\end{center}
</screen>
<para>incorporará al documento el gráfico  en <filename>plot.pdf</filename>, centrado y en
su tamaño nominal.   También puedes dar una ruta al  archivo, como con
<literal>\includegraphics{graphics/plot.pdf}</literal>.   Para  especificar  una
lista de ubicaciones para buscar el archivo, véase <link linkend="_005cgraphicspath">\graphicspath</link>.
</para>
<para>Si  tu  nombre  de  archivo incluye  espacios,  ponlo  entre  comillas
dobles. Un ejemplo es <literal>\includegraphics{&quot;sister picture.jpg&quot;}</literal>.
</para>
<para>El comando  <literal>\includegraphics{<replaceable>filename</replaceable>}</literal> decide  sobre el
tipo de gráfico dividiendo <replaceable>filename</replaceable>  en el primer punto.  Puedes
en   su    lugar,   usar    <replaceable>filename</replaceable>   sin   punto,    como   en
<literal>\includegraphics{turing}</literal>,  y   luego  &latex;   intenta  una
secuencia  de extensiones  como  <literal>.png</literal> y  <literal>.pdf</literal> hasta  que
encuentre       un        archivo       con        esa       extensión
(véase <link linkend="_005cDeclareGraphicsExtensions">\DeclareGraphicsExtensions</link>).
</para>
<para>Si tu nombre de archivo contiene  puntos antes de la extensión, puedes
ocultar            con            llaves,           como            en
<literal>\includegraphics{{plot.2018.03.12.a}.pdf}</literal>.   O, si  usas el
paquete   <literal>graphicx</literal>  entonces   puedes   usar  las   opciones
<literal>type</literal> y <literal>ext</literal>; ve abajo.   Este y otros problemas de nombre
de archivo también se manejan con el paquete <filename>grffile</filename>.
</para>
<para>Este ejemplo  coloca un gráfico  en un entorno <literal>figure</literal>  para que
&latex; lo  pueda mover a la  página siguiente si al  encajarlo en la
página actual es incómodo (véase <link linkend="figure">figure</link>).
</para>
<screen>\begin{figure}
  \centering
  \includegraphics[width=3cm]{lungxray.jpg}
  \caption{La evidencia es abrumadora: no fumes.}  \label{fig:xray}
\end{figure}
</screen>
<para>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.
</para>
<screen>\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}
</screen>
<para>Este ejemplo pone  una caja con un  gráfico al lado de  otra que tiene
texto, con los dos centrados verticalmente.
</para>
<screen>\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}
</screen>
<para>Si  usas el  paquete <literal>graphics</literal>  entonces las  únicas opciones
involucran   el   tamaño   del  gráfico   (pero   <link linkend="_005crotatebox">\rotatebox</link>   y
<link linkend="_005cscalebox">\scalebox</link>).   Cuando   un  argumento  opcional   está  presente,
entonces es  <literal>[<replaceable>urx</replaceable>,<replaceable>ury</replaceable>]</literal> y  da las coordenadas  de la
parte  superior  esquina  derecha  de   la  imagen,  como  un  par  de
dimensiones &tex;  (véase <link linkend="Unidades-de-longitud">Unidades de longitud</link>).  Si  se omiten las
unidades, de  manera predeterminada son  <literal>bp</literal>.  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
<literal>[<replaceable>llx</replaceable>,<replaceable>lly</replaceable>]</literal>,  especificando  las  coordenadas  de  la
imagen     abajo     a     la    izquierda.      Por     lo     tanto,
<literal>\includegraphics[1in,0.618in]{...}</literal>   pide   el   gráfico   se
colocará   de   manera   que   tenga  1&#160;pulgadas   de   ancho   y
0.618&#160;pulgadas alto y por lo que su origen está en (0,0).
</para>
<para>El  paquete   <literal>graphicx</literal>  te   brinda  muchas   más  opciones.
Especifícalos en una forma clave-valor, como aquí.
</para>
<screen>\begin{center}
  \includegraphics[width=1in,angle=90]{lion}
  \hspace{2em}
  \includegraphics[angle=90,width=1in]{lion}
\end{center}
</screen>
<para>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.
</para>
<para>Hay muchas opciones.  Las principales se enumeran primero.
</para>
<indexterm role="cp"><primary>delimitador del cuadro</primary></indexterm>
<indexterm role="cp"><primary>cuadro, delimitar</primary></indexterm>
<para>Ten en  cuenta que  &latex; coloca  un gráfico en  un cuadro,  que es
conocido   tradicionalmente  como   su  <firstterm>delimitador   de  cuadro</firstterm>
(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.
</para>
<variablelist><anchor id="incluye-ancho-de-gr_00e1ficos"/><varlistentry><term><literal>width</literal>
</term><listitem><para>El gráfico  se mostrará de modo  que su cuadro delimitador  tenga este
ancho.   Un   ejemplo  es  <literal>\includegraphics[width=1in]{plot}</literal>.
Puedes  usar  las  dimensiones  &tex;  estándar  (véase <link linkend="Unidades-de-longitud">Unidades  de
longitud</link>)  y  también  es  conveniente  <literal>\linewidth</literal>,  o  en  un
documento de  dos columnas, <literal>\columnwidth</literal>  (véase <link linkend="Par_00e1metros-de-composici_00f3n-de-p_00e1gina">Parámetros de
composición de página</link>).  Un ejemplo es que al usar <filename>calc</filename> puedes
hacer que el gráfico sea 1&#160;cm más estrecho que el ancho del texto
con <literal>\includegraphics[width=\linewidth-1.0cm]{hefferon.jpg}</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>height</literal>
</term><listitem><anchor id="includegraphics-height"/><para>El gráfico se  mostrará de modo que su
delimitador de cuadro tenga esta  altura.  Puedes usar las dimensiones
&tex;   estándar   (véase <link linkend="Unidades-de-longitud">Unidades    de   longitud</link>),   y   también
<literal>\pageheight</literal>     y    <literal>\textheight</literal>     son    convenientes
(véase <link linkend="Par_00e1metros-de-composici_00f3n-de-p_00e1gina">Parámetros  de  composición  de  página</link>).   Por  ejemplo,  el
comando  <literal>\includegraphics[height=0.25\textheight]{godel}</literal> hará
el gráfico un cuarto de la altura del área de texto.
</para>
</listitem></varlistentry><varlistentry><term><literal>totalheight</literal>
</term><listitem><anchor id="incluye-la-altura-total-de-los-gr_00e1ficos"/><para>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.
</para>
</listitem></varlistentry><varlistentry><term><literal>keepaspectratio</literal>
</term><listitem><anchor id="includegraphics-keepaspectratio"/><para>Si    se   establece   en
<literal>true</literal>, o simplemente se especifica como aquí
</para>
<screen><literal>\includegraphics[...,keepaspectratio,...]{...}</literal>
</screen>
<para>y  das   como  opciones  tanto  <literal>width</literal>   como  <literal>height</literal>  (o
<literal>totalheight</literal>),  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 <literal>width</literal> ni más
alto que <literal>height</literal> (o <literal>totalheight</literal>).
</para>
</listitem></varlistentry><varlistentry><term><literal>scale</literal>
</term><listitem><para>Factor por el cual escalar el gráfico.  Para hacer un gráfico el doble
de           su            tamaño           nominal,           ingresa
<literal>\includegraphics[scale=2.0]{...}</literal>.   Este   número  puede  ser
cualquier valor; un  número entre 0 y&#160;1 reducirá el  gráfico y un
número negativo lo reflejará.
</para>
</listitem></varlistentry><varlistentry><term><literal>angle</literal>
</term><listitem><para>Rota  el  gráfico.   El  ángulo  se   toma  en  grados  y  en  sentido
antihorario.   El  gráfico se  gira  sobre  su <literal>origen</literal>;  ve  esa
opción.  Para una descripción completa  de cómo se compone el material
rotado, véase <link linkend="_005crotatebox">\rotatebox</link>.
</para>
</listitem></varlistentry><varlistentry><term><literal>origin</literal>
</term><listitem><para>El punto  del gráfico sobre  el que  ocurre la rotación.   Los posible
valores son  cualquier cadena  que contenga una  o dos:  <literal>l</literal> para
izquierda,  <literal>r</literal> para  derecha, <literal>b</literal>  para la  parte inferior,
<literal>c</literal> para  el centro, <literal>t</literal>  para la parte superior  y <literal>B</literal>
para  la   línea  base.   Por   lo  tanto,  al  ingresar   el  comando
<literal>\includegraphics[angle=180,origin=c]{moon}</literal>    convertirá   la
imagen al revés sobre el centro de esa imagen, mientras que el comando
<literal>\includegraphics[angle=180,origin=lB]{LeBateau}</literal> convertirá su
imagen al revés sobre su  línea base izquierda.  (El carácter <literal>c</literal>
da el  centro horizontal en <literal>bc</literal>  o <literal>tc</literal>, pero da  el centro
vertical  en  <literal>lc</literal>  o  <literal>rc</literal>).  El  valor  predeterminado  es
<literal>lB</literal>.
</para>
<para>Para rotar sobre un punto arbitrario, véase <link linkend="_005crotatebox">\rotatebox</link>.
</para>
</listitem></varlistentry></variablelist>
<para>Estas son opciones menos utilizadas.
</para>
<variablelist><anchor id="incluir-ventana-gr_00e1fica"/><varlistentry><term><literal>viewport</literal>
</term><listitem><para>Selecciona  una  subregión  del  gráfico para  mostrar.   Toma  cuatro
argumentos, separados por espacios y dados en dimensiones &tex;, como
con <literal>\includegraphics[.., viewport=0in  0in 1in 0.618in]{...}</literal>.
Cuando la unidad se omite, las dimensiones predeterminadas son grandes
puntos&#160;<literal>bp</literal>.    Se  toman   en   relación   con  el   origen
especificado  por el  delimitador del  cuadro.  Ve  también la  opción
<literal>trim</literal>.
</para>
<anchor id="includegraphics-trim"/></listitem></varlistentry><varlistentry><term><literal>trim</literal>
</term><listitem><para>Proporciona partes del  gráfico para que no se  muestren.  Toma cuatro
argumentos, separados por espacios, que  se dan en dimensiones &tex;,
como  con  <literal>\includegraphics[..,  trim= 0in  0.1in  0.2in  0.3in,
...]{...}</literal>.  Estos dan  las cantidades del gráfico  para no mostrar,
es decir, &latex; recortará la imagen 0&#160;pulgadas a la izquierda,
0.1&#160;pulgadas a la parte  inferior, 0.2&#160;pulgadas a la derecha
y 0.3&#160;pulgadas en la parte  superior.  Consulta también la opción
<literal>viewport</literal>.
</para>
<anchor id="includegraphics-clip"/></listitem></varlistentry><varlistentry><term><literal>clip</literal>
</term><listitem><para>Si se establece en <literal>true</literal>, o solo se especifica como aquí
</para>
<screen>\includegraphics[...,clip,...]{...}
</screen>
<para>luego, el  gráfico se recorta al  delimitador del cuadro.  Esto  es lo
mismo    que   utilizar    la    forma    estrellada   del    comando,
<literal>\includegraphics*[...]{...}</literal>.
</para>
<anchor id="includegraphics-page"/></listitem></varlistentry><varlistentry><term><literal>page</literal>
</term><listitem><para>Proporciona el número  de página de un archivo PDF  de varias páginas.
El valor predeterminado es <literal>page=1</literal>.
</para>
<anchor id="includegraphics-pagebox"/></listitem></varlistentry><varlistentry><term><literal>pagebox</literal>
</term><listitem><para>Especifica qué  delimitador de  cuadro usar para  los archivos  PDF de
entre      <literal>mediabox</literal>,      <literal>cropbox</literal>,      <literal>bleedbox</literal>,
<literal>trimbox</literal>,  o  <literal>artbox</literal>.   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.
</para>
<anchor id="includegraphics-interpolate"/></listitem></varlistentry><varlistentry><term><literal>interpolate</literal>
</term><listitem><para>Habilita o  deshabilita la interpolación de  imágenes rasterizadas por
parte del espectador.  Se puede configurar con <literal>interpolate=true</literal>
o simplemente especificarlo como aquí.
</para>
<screen>\includegraphics[...,interpolate,...]{...}
</screen>
<anchor id="includegraphics-quiet"/></listitem></varlistentry><varlistentry><term><literal>quiet</literal>
</term><listitem><para>No  escribe información  en  el registro.   Lo  puedes configurar  con
<literal>quiet=true</literal>      o       simplemente      especificarlo      con
<literal>\includegraphics[...,quiet,...]{...}</literal>,
</para>
<anchor id="includegraphics-draft"/></listitem></varlistentry><varlistentry><term><literal>draft</literal>
</term><listitem><para>Si lo  configuras con  <literal>draft=true</literal> o simplemente  lo especificas
con
</para>
<screen>\includegraphics[...,draft,...]{...}
</screen>
<para>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.
</para>
</listitem></varlistentry></variablelist>
<para>Estas  opciones  abordan el  delimitador  del  cuadro para  PostScript
encapsulando archivos gráficos, que  tienen un tamaño especificado con
una  línea  <literal>%%BoundingBox</literal> que  aparece  en  el archivo.   Tiene
cuatro valores,  dando la coordenada <inlineequation><mathphrase>x</mathphrase></inlineequation>  inferior, la coordenada
<inlineequation><mathphrase>y</mathphrase></inlineequation>  inferior, la  coordenada <inlineequation><mathphrase>x</mathphrase></inlineequation>  superior y  la coordenada
<inlineequation><mathphrase>y</mathphrase></inlineequation> superior.  Las unidades son puntos PostScript, equivalentes a
los puntos grandes  de &tex;, 1/72&#160;pulgada.  Por  ejemplo, si un
archivo <filename>.eps</filename>  tiene la línea  <literal>%%BoundingBox 10 20  40 80</literal>
entonces  su  tamaño  natural  es  30/72&#160;pulgadas  de  ancho  por
60/72&#160;pulgadas de alto.
</para>
<variablelist><anchor id="includegraphics-bb"/><varlistentry><term><literal>bb</literal>
</term><listitem><para>Especifica el cuadro delimitador de  la región mostrada.  El argumento
es   cuatro    dimensiones   separadas   por   espacios,    como   con
<literal>\includegraphics[.., bb=  0in 0in 1in 0.618in]{...}</literal>.   Por lo
general,  <literal>\includegraphics</literal>  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.
</para>
<anchor id="includegraphics-bbllx"/><anchor id="includegraphics-bblly"/><anchor id="includegraphics-bburx"/><anchor id="includegraphics-bbury"/></listitem></varlistentry><varlistentry><term><literal>bbllx, bblly, bburx, bbury</literal>
</term><listitem><para>Establece el cuadro delimitador.  Estos  cuatro son obsoletos, pero se
conservan por compatibilidad con paquetes antiguos.
</para>
<anchor id="includegraphics-natwidth"/><anchor id="includegraphics-natheight"/></listitem></varlistentry><varlistentry><term><literal>natwidth, natheight</literal>
</term><listitem><para>Una alternativa para <literal>bb</literal>.  Ajustar
</para>
<screen>\includegraphics[...,natwidth=1in,natheight=0.618in,...]{...}
</screen>
<para>es lo mismo que configurar <literal>bb=0 0 1in 0.618in</literal>.
</para>
<anchor id="includegraphics-hiresbb"/></listitem></varlistentry><varlistentry><term><literal>hiresbb</literal>
</term><listitem><para>Si se establece en <literal>true</literal>, o simplemente se especifica como con
</para>
<screen>\includegraphics[...,hiresbb,...]{...}
</screen>
<para>entonces  &latex;  buscará  las líneas  <literal>%%HiResBoundingBox</literal>  en
lugar de líneas  <literal>%%BoundingBox</literal>.  (Las líneas <literal>BoundingBox</literal>
solo    usan   números    naturales    mientras    que   las    líneas
<literal>HiResBoundingBox</literal>   usan   decimales;    ambos   usan   unidades
equivalentes a los puntos grandes de &tex;, 1/72&#160;pulgadas). Para
redefinir  una  configuración  anterior   de  <literal>true</literal>,  la  puedes
establecer en <literal>false</literal>.
</para>
</listitem></varlistentry></variablelist>
<para>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
<literal>\includegraphics[type=png,ext=.xxx,read=.xxx]{lion}</literal>  leerá el
archivo <filename>lion.xxx</filename>  como si  fuera <filename>lion.png</filename>.  Para obtener
más información sobre estos, véase <link linkend="_005cDeclareGraphicsRule">\DeclareGraphicsRule</link>.
</para>
<variablelist><anchor id="includegraphics-type"/><varlistentry><term><literal>type</literal>
</term><listitem><para>Especifica el tipo de gráficos.
</para>
<anchor id="includegraphics-ext"/></listitem></varlistentry><varlistentry><term><literal>ext</literal>
</term><listitem><para>Especifica  la extensión  de gráficos.   Solo  usa esto  junto con  la
opción <literal>type</literal>.
</para>
<anchor id="includegraphics-read"/></listitem></varlistentry><varlistentry><term><literal>read</literal>
</term><listitem><para>Especifica la extensión  de archivo del archivo leído.   Solo usa esto
junto con la opción <literal>type</literal>.
</para>
<anchor id="includegraphics-command"/></listitem></varlistentry><varlistentry><term><literal>command</literal>
</term><listitem><para>Especifica un comando  que se aplicará a este archivo.   Solo usa esto
en conjunción con  la opción <literal>type</literal>.  Véase <link linkend="Opciones-de-la-l_00ednea-de-comandos">Opciones  de la línea
de   comandos</link>,  para   una  explicación   sobre  cómo   habilitar  la
funcionalidad <literal>\write18</literal> para ejecutar comandos externos.
</para>
</listitem></varlistentry></variablelist>

</sect2>
<sect2 label="22.3.2" id="_005crotatebox">
<title><literal>\rotatebox</literal></title>

<indexterm role="cp"><primary>rotación</primary></indexterm>
<indexterm role="cp"><primary>gráficos giratorios</primary></indexterm>
<indexterm role="cp"><primary>texto giratorio</primary></indexterm>
<indexterm role="fn"><primary>\rotatebox</primary></indexterm>

<para>Sinopsis si usas el paquete <literal>graphics</literal>:
</para>
<screen>\rotatebox{<replaceable>angle</replaceable>}{<replaceable>material</replaceable>}
</screen>
<para>Sinopsis si usas el paquete <literal>graphicx</literal>:
</para>
<screen>\rotatebox{<replaceable>angle</replaceable>}{<replaceable>material</replaceable>}
\rotatebox[<replaceable>key-value list</replaceable>]{<replaceable>angle</replaceable>}{<replaceable>material</replaceable>}
</screen>
<para>Pon  <replaceable>material</replaceable> en  un  cuadro  y lo  gira  <replaceable>angle</replaceable> grados  en
sentido antihorario.
</para>
<para>Este ejemplo gira los encabezados de las columnas de la tabla cuarenta
y cinco grados.
</para>
<screen>\begin{tabular}{ll}
  \rotatebox{45}{Character} &amp;\rotatebox{45}{NATO phonetic}   \\
  A                         &amp;AL-FAH  \\
  B                         &amp;BRAH-VOH
\end{tabular}
</screen>
<para>El  <replaceable>material</replaceable> puede  ser cualquier  cosa  que vaya  en una  caja,
incluido un gráfico.
</para>
<screen>  \rotatebox[origin=c]{45}{\includegraphics[width=1in]{lion}}
</screen>
<para>Para  colocar el  material  rotado,  el primer  paso  es que  &latex;
establece <replaceable>material</replaceable> 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.
</para>
<para>Si usas el paquete <literal>graphics</literal> entonces la rotación es sobre el
punto de referencia de la  caja. Si usas el paquete <literal>graphicx</literal>
entonces estas  son las  opciones que  pueden ir  en la  <replaceable>lista de
valores clave</replaceable>, pero ten en cuenta  que puedes obtener el mismo efecto
sin  necesidad  de  este  paquete, excepto  las  opciones  <literal>x</literal>  e
<literal>y</literal> (véase <link linkend="_005cincludegraphics">\includegraphics</link>).
</para>
<variablelist><varlistentry><term><literal>origin</literal>
</term><listitem><para>El  punto  de la  caja  de  <replaceable>material</replaceable>  sobre  el cual  ocurre  la
rotación.  El posible valor es cualquier cadena que contenga uno o dos
de: <literal>l</literal> para  izquierda, <literal>r</literal> para derecha,  <literal>b</literal> para la
parte  inferior,  <literal>c</literal> para  el  centro,  <literal>t</literal> para  la  parte
superior y <literal>B</literal> para la línea base.  Así, la primera línea aquí
</para>
<screen>\rotatebox[origin=c]{180}{moon}
\rotatebox[origin=lB]{180}{LeBateau}
</screen>
<para>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
<literal>c</literal> da el  centro horizontal en <literal>bc</literal> o <literal>tc</literal>  pero da el
centro vertical en <literal>lc</literal> o <literal>rc</literal>, y da ambos en <literal>c</literal>).  El
valor predeterminado es <literal>lB</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>x, y</literal>
</term><listitem><para>Especifica     un     punto     arbitrario     de     rotación     con
<literal>\rotatebox[x=<replaceable>&tex;                dimensión</replaceable>,y=<replaceable>&tex;
dimensión</replaceable>]{...}</literal>  (véase <link linkend="Unidades-de-longitud">Unidades  de  longitud</link>).  Estos  dan  la
compensación desde el punto de referencia de la caja.
</para>
</listitem></varlistentry><varlistentry><term><literal>units</literal>
</term><listitem><para>Esta clave te permite cambiar el  valor predeterminado de grados en el
sentido   contrario    a   las    agujas   del    reloj.    Establecer
<literal>units=-360</literal> cambia  la dirección a  grados en el sentido  de las
agujas del reloj y la  configuración de <literal>units=6.283185</literal> cambia a
radianes en sentido contrario a las agujas del reloj.
</para>
</listitem></varlistentry></variablelist>

</sect2>
<sect2 label="22.3.3" id="_005cscalebox">
<title><literal>\scalebox</literal></title>

<indexterm role="cp"><primary>gráficos, escalar</primary></indexterm>
<indexterm role="cp"><primary>gráficos, cambiar de tamaño</primary></indexterm>
<indexterm role="cp"><primary>escalando</primary></indexterm>
<indexterm role="cp"><primary>redimensionado</primary></indexterm>
<indexterm role="cp"><primary>texto, escalado</primary></indexterm>
<indexterm role="cp"><primary>texto, cambio de tamaño</primary></indexterm>
<indexterm role="fn"><primary>\scalebox</primary></indexterm>
<indexterm role="fn"><primary>\reflectbox</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\scalebox{<replaceable>factor horizontal</replaceable>}{<replaceable>material</replaceable>}
\scalebox{<replaceable>factor horizontal</replaceable>}[<replaceable>factor vertical</replaceable>]{<replaceable>material</replaceable>}
\reflectbox{<replaceable>material</replaceable>}
</screen>
<para>Escala el <replaceable>material</replaceable>.
</para>
<para>Este  ejemplo reduce  a  la  mitad el  tamaño,  tanto horizontal  como
verticalmente, del primer texto y duplica el tamaño del segundo.
</para>
<screen>\scalebox{0.5}{DRINK ME} and \scalebox{2.0}{Eat Me}
</screen>
<para>Si no especificas el <replaceable>factor vertical</replaceable> opcional, entonces el valor
predeterminado es el mismo que el <replaceable>factor horizontal</replaceable>.
</para>
<para>Puedes usar  este comando para cambiar  el tamaño de un  gráfico, como
aquí.
</para>
<screen>\scalebox{0.5}{\includegraphics{lion}}
</screen>
<para>Si usas el paquete <literal>graphicx</literal>,  puedes conseguir la misma cosa
con     argumentos     opcionales     para     <literal>\includegraphics</literal>
(véase <link linkend="_005cincludegraphics">\includegraphics</link>).
</para>
<para>El            comando            <literal>\reflectbox</literal>            abrevia
<literal>\scalebox{-1}[1]{<replaceable>material</replaceable>}</literal>.  Por lo tanto, <literal>Able
was I\reflectbox{Able  was I}</literal> mostrará  la frase &#8216;<literal>Able  was I</literal>&#8217;
seguida  inmediatamente  por  su   reflejo  especular  contra  un  eje
vertical.
</para>

</sect2>
<sect2 label="22.3.4" id="_005cresizebox">
<title><literal>\resizebox</literal></title>

<indexterm role="cp"><primary>gráficos, escalar</primary></indexterm>
<indexterm role="cp"><primary>gráficos, cambiar de tamaño</primary></indexterm>
<indexterm role="cp"><primary>escalando</primary></indexterm>
<indexterm role="cp"><primary>redimensionado</primary></indexterm>
<indexterm role="cp"><primary>texto, escalado</primary></indexterm>
<indexterm role="cp"><primary>texto, cambio de tamaño</primary></indexterm>
<indexterm role="fn"><primary>\resizebox</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\resizebox{<replaceable>horizontal length</replaceable>}{<replaceable>vertical length</replaceable>}{<replaceable>material</replaceable>}
\resizebox*{<replaceable>horizontal length</replaceable>}{<replaceable>vertical length</replaceable>}{<replaceable>material</replaceable>}
</screen>
<para>Dado  un  tamaño,  como  <literal>3cm</literal>,  transforma  <replaceable>material</replaceable>  para
hacerlo a  ese tamaño.   Si <replaceable>longitud horizontal</replaceable>  o <replaceable>longitud
vertical</replaceable> es un signo de  exclamación&#160;<literal>!</literal> entonces se usa el
otro  argumento  para  determinar  un  factor  de  escala  para  ambas
direcciones.
</para>
<para>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.
</para>
<screen>\resizebox{0.5in}{!}{\includegraphics{lion}}
</screen>
<para>La forma  sin estrella <literal>\resizebox</literal> toma  <replaceable>longitud vertical</replaceable>
como  la   altura  del  cuadro   mientras  que  la   forma  estrellada
<literal>\resizebox*</literal> lo  lleva a  ser altura+profundidad.   Por ejemplo,
haz que el texto tenga una  altura+profundidad de un cuarto de pulgada
con   <literal>\resizebox*{!}{0.25in}{\parbox{3.5in}{Este  cuadro
tiene altura y profundidad.}}</literal>.
</para>
<para>Puedes  usar  <literal>\depth</literal>,   <literal>\height</literal>,  <literal>\totalheight</literal>  y
<literal>\width</literal> 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 <literal>\resizebox{2in}{\height}{Dos pulgadas}</literal>.
</para>

</sect2>
</sect1>
</chapter>
<chapter label="23" id="Inserciones-especiales">
<title>Inserciones especiales</title>

<indexterm role="cp"><primary>Inserciones especiales</primary></indexterm>
<indexterm role="cp"><primary>Inserción de caracteres especiales</primary></indexterm>

<para>&latex; proporciona  comandos para insertar caracteres  que tienen un
significado  especial  no corresponde  a  los  caracteres simples  que
puedes escribir.
</para>


<sect1 label="23.1" id="Caracteres-reservados">
<title>Caracteres reservados</title>

<indexterm role="cp"><primary>caracteres reservados</primary></indexterm>
<indexterm role="cp"><primary>caracteres, reservados</primary></indexterm>
<indexterm role="cp"><primary>caracteres especiales</primary></indexterm>
<indexterm role="cp"><primary>caracteres, especiales</primary></indexterm>
<para>&latex;   reserva   los   siguientes   caracteres   para   propósitos
especiales. Por ejemplo, el  signo de porcentaje&#160;<literal>%</literal> es para
comentarios.  Se llaman  <firstterm>caracteres reservados</firstterm> o <firstterm>caracteres
especiales</firstterm>. Todo está explicado en otra parte de este manual.
</para>
<screen># $ % &amp; { } _ ~ ^ \
</screen>
<indexterm role="fn"><primary>\#</primary></indexterm>
<indexterm role="fn"><primary>\$</primary></indexterm>
<indexterm role="fn"><primary>\%</primary></indexterm>
<indexterm role="fn"><primary>\&amp;</primary></indexterm>
<indexterm role="fn"><primary>\_</primary></indexterm>
<indexterm role="fn"><primary>\{</primary></indexterm>
<indexterm role="fn"><primary>\}</primary></indexterm>
<para>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&#160;<literal>\</literal>
delante   del  carácter.    De  este   modo,  escribir   <literal>\$1.23</literal>
producirá&#160;<literal>$1.23</literal> en tu salida.
</para>
<indexterm role="fn"><primary>\~</primary></indexterm>
<indexterm role="fn"><primary>\^</primary></indexterm>
<indexterm role="fn"><primary>\textbackslash</primary></indexterm>
<para>En cuanto a los últimos tres  caracteres, para obtener una tilde en la
letra del cuerpo del texto  usa <literal>\~{}</literal> (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 <literal>\^{}</literal>.  Para  colocar una barra invertida en
el texto del cuerpo fuente, ingresa <literal>\textbackslash{}</literal>.
</para>
<para>Para producir  los caracteres reservados  en una fuente de  máquina de
escribir, utiliza  <literal>\verb!!</literal> como  se muestra a  continuación (la
doble barra  inversa&#160;<literal>\\</literal> en el  ejemplo solo está  ahí para
dividir las líneas en la salida).
</para>
<screen>\begin{center}
  \# \$ \% \&amp; \{ \} \_ \~{} \^{} \textbackslash \\
  \verb!# $ % &amp; { } _ ~ ^ \!
\end{center}
</screen>

</sect1>
<sect1 label="23.2" id="May_00fasculas-y-min_00fasculas">
<title>Mayúsculas y minúsculas</title>

<indexterm role="cp"><primary>mayúsculas</primary></indexterm>
<indexterm role="cp"><primary>lowercase</primary></indexterm>
<indexterm role="cp"><primary>caracteres, caso de</primary></indexterm>
<indexterm role="cp"><primary>cambiar caracteres de mayúsculas y minúsculas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\uppercase{<replaceable>text</replaceable>}
\lowercase{<replaceable>text</replaceable>}
\MakeUppercase{<replaceable>text</replaceable>}
\MakeLowercase{<replaceable>text</replaceable>}
</screen>
<para>Cambia  el caso  de los  caracteres.  Los  comandos primitivos  &tex;
<literal>\uppercase</literal>  y  <literal>\lowercase</literal>  están configurados  de  forma
predeterminada para funcionar solo con las  26 letras a&#8211;z y A&#8211;Z. Los
comandos   &latex;   <literal>\MakeUppercase</literal>  y   <literal>\MakeLowercase</literal>
también cambian caracteres a los  que se accede mediante comandos como
<literal>\ae</literal>  o   <literal>\aa</literal>.   Los  comandos   <literal>\MakeUppercase</literal>  y
<literal>\MakeLowercase</literal>   son  robustos   pero   tienen  argumentos   en
movimiento (véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Estos comandos  no cambian  el uso  de mayúsculas  y minúsculas  en el
nombre de  un comando dentro de  <replaceable>text</replaceable>.  Pero cambian el  caso de
todas las demás letras dentro del argumento <replaceable>text</replaceable>.  De este modo,
<literal>\MakeUppercase{Let $y=f(x)$</literal>} produce &#8216;<literal>LET Y=F(X)</literal>&#8217;.  Otro
ejemplo  es que  se cambiará  el  nombre de  un entorno,  de modo  que
<literal>\MakeUppercase{\begin{tabular} ... \end{tabular}}</literal> produce
un error porque la primera mitad se cambia a <literal>\begin{TABULAR}</literal>.
</para>
<para>&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>
<para>Para cambiar  el caso  del texto  que resulta de  una macro  dentro de
<replaceable>text</replaceable> tienes que hacer  la expansión.  Aquí el <literal>\Schoolname</literal>
produce &#8216;<literal>FACULTAD DE MATEMÁTICAS</literal>&#8217;.
</para>
<screen>\newcommand{\schoolname}{Facultad de matemáticas}
\newcommand{\Schoolname}{\expandafter\MakeUppercase
                           <!-- /@w -->\expandafter{\schoolname}}
</screen>
<indexterm role="cp"><primary>package, <literal>textcase</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>textcase</literal> package</primary></indexterm>
<para>El paquete <literal>textcase</literal>  trae algunas de las
funciones   que    faltan   en   los   comandos    &latex;   estándar
<literal>\MakeUppercase</literal> y <literal>\MakeLowerCase</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>mfirstuc</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>mfirstuc</literal> package</primary></indexterm>
<para>Para escribir en  mayúsculas solo la primera letra
de las palabras, puedes usar el paquete <literal>mfirstuc</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>pict2e</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>pict2e</literal> package</primary></indexterm>

<indexterm role="cp"><primary>Wright, Joseph</primary></indexterm>
<para>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  <literal>expl3</literal> a partir
de  2020.  El artículo  &#8220;Cambio  de  caso:  De primitivas  &tex;  al
algoritmo   Unicode&#8221;,   (Joseph   Wright,   <citetitle>TUGboat</citetitle>&#160;41:1,
<ulink url="https://tug.org/TUGboat/tb41-1/tb127wright-case.pdf">https://tug.org/TUGboat/tb41-1/tb127wright-case.pdf</ulink>),   da   una
buena visión general del tema, pasado y presente.
</para>

</sect1>
<sect1 label="23.3" id="S_00edmbolos-por-posici_00f3n-de-fuente">
<title>Símbolos por posición de fuente</title>

<indexterm role="fn"><primary>\symbol</primary></indexterm>
<indexterm role="cp"><primary>acceder a cualquier carácter de una fuente</primary></indexterm>
<indexterm role="cp"><primary>símbolos de fuente, por número</primary></indexterm>

<para>Puedes  acceder a  cualquier carácter  de la  fuente actual  usando su
número  con el  comando <literal>\symbol</literal>.  Por ejemplo,  el carácter  de
espacio  visible usado  en el  comando <literal>\verb*</literal>  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 <literal>\symbol{32}</literal>.
</para>
<para>También puedes especificar números en octal (base 8) usando un prefijo
<literal>'</literal>, o hexadecimal (base 16) con  un prefijo <literal>&quot;</literal>, por lo que
el  espacio visible  en 32  decimal  también se  podría escribir  como
<literal>\symbol{'40}</literal> o <literal>\symbol{&quot;20}</literal>.
</para>

</sect1>
<sect1 label="23.4" id="S_00edmbolos-de-texto">
<title>Símbolos de texto</title>

<indexterm role="cp"><primary>símbolos de texto</primary></indexterm>
<indexterm role="cp"><primary>símbolos, texto</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>textcomp</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>textcomp</literal> package</primary></indexterm>

<indexterm role="cp"><primary>codificación TS1</primary></indexterm>
<para>&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
<literal>textcomp</literal>   para   algunos   (técnicamente,   aquellos   en   la
codificación de fuentes <literal>TS1</literal>).
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>\copyright</primary></indexterm><literal>\copyright</literal>
</term><term><indexterm role="fn"><primary>\textcopyright</primary></indexterm><literal>\textcopyright</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de derechos de autor</primary></indexterm>
<para>&#169; El símbolo de copyright.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\dag</primary></indexterm><literal>\dag</literal>
</term><listitem><indexterm role="cp"><primary>dagger, en texto</primary></indexterm>
<para>&#x2020; El símbolo de la daga (en texto).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ddag</primary></indexterm><literal>\ddag</literal>
</term><listitem><indexterm role="cp"><primary>daga doble, en texto</primary></indexterm>
<para>&#x2021; El símbolo de la daga doble (en texto).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>latex</primary></indexterm><literal>latex</literal>
</term><listitem><indexterm role="cp"><primary>logotipo &latex;</primary></indexterm>
<indexterm role="cp"><primary>logo, &latex;</primary></indexterm>
<para>El logotipo de &latex;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>latex</primary></indexterm><literal>latex</literal>
</term><listitem><indexterm role="cp"><primary>&latex;2e logo</primary></indexterm>
<indexterm role="cp"><primary>logo, &latex;2e</primary></indexterm>
<para>&latex;2e, logo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\guillemotleft (&#171;)</primary></indexterm><literal>\guillemotleft (&#171;)</literal>
</term><term><indexterm role="fn"><primary>\guillemotright (&#187;)</primary></indexterm><literal>\guillemotright (&#187;)</literal>
</term><term><indexterm role="fn"><primary>\guilsinglleft (&#8249;)</primary></indexterm><literal>\guilsinglleft (&#8249;)</literal>
</term><term><indexterm role="fn"><primary>\guilsinglright (&#8250;)</primary></indexterm><literal>\guilsinglright (&#8250;)</literal>
</term><listitem><indexterm role="cp"><primary>doble guillemets</primary></indexterm>
<indexterm role="cp"><primary>guillemet única</primary></indexterm>
<indexterm role="cp"><primary>comilla angular izquierda</primary></indexterm>
<indexterm role="cp"><primary>comilla angular derecha</primary></indexterm>
<indexterm role="cp"><primary>dobles comillas angulares</primary></indexterm>
<indexterm role="cp"><primary>comilla angular única</primary></indexterm>
<indexterm role="cp"><primary>comillas francesas</primary></indexterm>
<indexterm role="cp"><primary>comillas, francesas</primary></indexterm>
<para>&#171;, &#187;, &#8249;, &#8250;
Comillas angulares simples y dobles, de uso común en francés.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\ldots</primary></indexterm><literal>\ldots</literal>
</term><term><indexterm role="fn"><primary>\textellipsis</primary></indexterm><literal>\textellipsis</literal>
</term><term><indexterm role="fn"><primary>\dot</primary></indexterm><literal>\dot</literal>
</term><listitem><indexterm role="cp"><primary>elipsis</primary></indexterm>
<para>&#8230;   Puntos  suspensivos   (tres  puntos   en  la   línea  base):
<literal>\ldots</literal>   y   <literal>\dots</literal>   también  trabaja   en   modo   math
(véase <link linkend="Puntos">Puntos</link>).   Ve la  descripción de  los puntos  suspensivos del
<literal>modo math</literal> para obtener información adicional.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\lq</primary></indexterm><literal>\lq</literal>
</term><listitem><indexterm role="cp"><primary>comilla izquierda</primary></indexterm>
<indexterm role="cp"><primary>comilla de apertura</primary></indexterm>
<para>&#8216; Comilla izquierda (apertura).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>p</primary></indexterm><literal>p</literal>
</term><term><indexterm role="fn"><primary>\textparagraph</primary></indexterm><literal>\textparagraph</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de párrafo</primary></indexterm>
<indexterm role="cp"><primary>pilcrow, almohada</primary></indexterm>
<para>&#x00B6; Signo de párrafo (pilcrow).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\pounds</primary></indexterm><literal>\pounds</literal>
</term><term><indexterm role="fn"><primary>\textsterling</primary></indexterm><literal>\textsterling</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de libras</primary></indexterm>
<indexterm role="cp"><primary>símbolo de la libra esterlina</primary></indexterm>
<para>&#163; libras esterlinas inglesas.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\quotedblbase (&#8222;)</primary></indexterm><literal>\quotedblbase (&#8222;)</literal>
</term><term><indexterm role="fn"><primary>\quotesinglbase (&#8218;)</primary></indexterm><literal>\quotesinglbase (&#8218;)</literal>
</term><listitem><indexterm role="cp"><primary>dobles comillas low-9</primary></indexterm>
<indexterm role="cp"><primary>comillas simples low-9</primary></indexterm>
<indexterm role="cp"><primary>low-9 comillas simples y dobles</primary></indexterm>
<para>&#8222; y &#8218;
Comillas simples y dobles en la línea base.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\rq</primary></indexterm><literal>\rq</literal>
</term><listitem><indexterm role="cp"><primary>comilla derecha</primary></indexterm>
<indexterm role="cp"><primary>comilla de cierre</primary></indexterm>
<para>&#8217; Comilla de derecha (de cierre).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>s</primary></indexterm><literal>s</literal>
</term><term><indexterm role="fn"><primary>\textsection</primary></indexterm><literal>\textsection</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de sección</primary></indexterm>
<para>&#x00A7; Signo de sección.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>tex</primary></indexterm><literal>tex</literal>
</term><listitem><indexterm role="cp"><primary>Logotipo de &tex;</primary></indexterm>
<indexterm role="cp"><primary>logotipo, &tex;</primary></indexterm>
<para>El logotipo de &tex;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textasciicircum</primary></indexterm><literal>\textasciicircum</literal>
</term><listitem><indexterm role="cp"><primary>circunflejo, ASCII, en texto</primary></indexterm>
<indexterm role="cp"><primary>ASCII circunflejo, en texto</primary></indexterm>
<para>^ circunflejo ASCII.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textasciitilde</primary></indexterm><literal>\textasciitilde</literal>
</term><listitem><indexterm role="cp"><primary>tilde, ASCII, en texto</primary></indexterm>
<indexterm role="cp"><primary>tilde ASCII, en texto</primary></indexterm>
<para>~ Tilde ASCII.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textasteriskcentered</primary></indexterm><literal>\textasteriskcentered</literal>
</term><listitem><indexterm role="cp"><primary>asterisco, centrado, en texto</primary></indexterm>
<indexterm role="cp"><primary>Asterisco centrado, en texto</primary></indexterm>
<para>* asterisco centrado
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbackslash</primary></indexterm><literal>\textbackslash</literal>
</term><listitem><indexterm role="cp"><primary>barra invertida, en texto</primary></indexterm>
<para>\  Barra invertida.  Sin embargo,  <literal>\texttt{\textbackslash}</literal> 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:
</para>
<screen>\usepackage[T1]{fontenc}
</screen><!-- https://github.com/latex3/latex2e/issues/824 -->

</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbar</primary></indexterm><literal>\textbar</literal>
</term><listitem><indexterm role="cp"><primary>barra vertical, en texto</primary></indexterm>
<indexterm role="cp"><primary>barra, vertical, en texto</primary></indexterm>
<para>| Barra vertical.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbardbl</primary></indexterm><literal>\textbardbl</literal>
</term><listitem><indexterm role="cp"><primary>barra vertical, doble, en texto</primary></indexterm>
<indexterm role="cp"><primary>barra, doble vertical, en texto</primary></indexterm>
<indexterm role="cp"><primary>doble barra vertical, en texto</primary></indexterm>
<para>&#x23F8; Doble barra vertical.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbigcircle</primary></indexterm><literal>\textbigcircle</literal>
</term><listitem><indexterm role="cp"><primary>Símbolos de grandes círculos, en texto</primary></indexterm>
<indexterm role="cp"><primary>símbolo de círculo, grande, en texto</primary></indexterm>
<para>&#x25EF;, símbolo de círculo grande.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbraceleft</primary></indexterm><literal>\textbraceleft</literal>
</term><listitem><indexterm role="cp"><primary>llave izquierda, en texto</primary></indexterm>
<indexterm role="cp"><primary>llave, izquierdo, en texto</primary></indexterm>
<para>{  Llave  izquierda.   Ve los  comentarios  en  <literal>\textbackslash</literal>
arriba sobre  hacer que <literal>\texttt{\textbraceleft}</literal>  produzca una
llave en máquina de escribir.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbraceright</primary></indexterm><literal>\textbraceright</literal>
</term><listitem><indexterm role="cp"><primary>llave derecha, en texto</primary></indexterm>
<indexterm role="cp"><primary>llave, derecha, en texto</primary></indexterm>
<para>} Llave derecha.  Ve  los comentarios en <literal>\textbackslash</literal> arriba
sobre hacer  que <literal>\texttt{\textbraceright}</literal> produzca  una llave
en máquina de escribir.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textbullet</primary></indexterm><literal>\textbullet</literal>
</term><listitem><indexterm role="cp"><primary>viñeta, en texto</primary></indexterm>
<para>&#8226; Viñeta.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textcircled{<replaceable>letter</replaceable>}</primary></indexterm><literal>\textcircled{<replaceable>letter</replaceable>}</literal>
</term><listitem><indexterm role="cp"><primary>letra en círculo, en texto</primary></indexterm>
<para>&#x24B6;, circulo alrededor de <replaceable>letra</replaceable>.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textcompwordmark</primary></indexterm><literal>\textcompwordmark</literal>
</term><term><indexterm role="fn"><primary>\textcapitalcompwordmark</primary></indexterm><literal>\textcapitalcompwordmark</literal>
</term><term><indexterm role="fn"><primary>\textascendercompwordmark</primary></indexterm><literal>\textascendercompwordmark</literal>
</term><listitem><indexterm role="cp"><primary>marca denominativa compuesta, en texto</primary></indexterm>
<indexterm role="cp"><primary>altura de la tapa</primary></indexterm>
<indexterm role="cp"><primary>altura del ascendente</primary></indexterm>
<para>Se  utiliza  para separar  letras  que  normalmente se  ligarían.  Por
ejemplo,   <literal>f\textcompwordmark    i</literal>   produce    &#8216;<literal>fi</literal>&#8217;   sin
ligadura. Este es más útil en  idiomas distintos del inglés.  La forma
<literal>\textcapitalcompwordmark</literal> tiene  la altura  máxima de  la fuente
mientras que la forma <literal>\textascendercompwordmark</literal> tiene la altura
ascendente.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textdagger</primary></indexterm><literal>\textdagger</literal>
</term><listitem><indexterm role="cp"><primary>daga, en texto</primary></indexterm>
<para>&#x2020; Daga.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textdaggerdbl</primary></indexterm><literal>\textdaggerdbl</literal>
</term><listitem><indexterm role="cp"><primary>daga, doble, en texto</primary></indexterm>
<indexterm role="cp"><primary>daga doble, en texto</primary></indexterm>
<para>&#x2021; Daga doble.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textdollar (o <literal>\$</literal>)</primary></indexterm><literal>\textdollar (o <literal>\$</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>signo de dolar</primary></indexterm>
<indexterm role="cp"><primary>moneda, dólar</primary></indexterm>
<para>$ signo de dólar.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textemdash (o <literal>---</literal>)</primary></indexterm><literal>\textemdash (o <literal>---</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>em-dash</primary></indexterm>
<para>&#8212; Guión largo.  Se utiliza para puntuación, por lo general similar a
las  comas  o  paréntesis,  como en  &#8216;<literal>Los  playoffs---si  tienes
suficiente  suerte para  llegar a  los playoffs  --- son  más como  un
sprint.</literal>&#8217;  Convenciones  para  espaciar alrededor  de  guiones-em  que
varían ampliamente.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textendash (o <literal>--</literal>)</primary></indexterm><literal>\textendash (o <literal>--</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>e-dash</primary></indexterm>
<para>&#8211; En-dash. Usado para rangos, como en &#8216;<literal>ve las páginas 12--14</literal>&#8217;.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\texteuro</primary></indexterm><literal>\texteuro</literal>
</term><listitem><indexterm role="cp"><primary>símbolo del euro</primary></indexterm>
<indexterm role="cp"><primary>moneda, euro</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>eurosym</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>eurosym</literal> package</primary></indexterm>
<para>El  símbolo  de   la  moneda  del  euro:  &#8364;.
<indexterm role="cp"><primary>package, <literal>eurosym</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>eurosym</literal> package</primary></indexterm>
  Para un  diseño  de glifo  alternativo, prueba  el
paquete <literal>eurosym</literal>; además,  la mayoría de las  fuentes hoy día
vienen con su propio símbolo de euro (Unicode U+20AC).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textexclamdown (o <literal>!`</literal>)</primary></indexterm><literal>\textexclamdown (o <literal>!`</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>signo de exclamación, al revés</primary></indexterm>
<para>&#161; Signo de exclamación al revés.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textfiguredash</primary></indexterm><literal>\textfiguredash</literal>
</term><listitem><indexterm role="cp"><primary>figura del carácter guión</primary></indexterm>
<para>Guión usado entre  números, Unicode U+2012. Definido en  junio de 2021
lanzamiento de &latex;. Cuando se usa en pdf&tex;, 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  &#8220;Carácter
faltante&#8221; al archivo de registro.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textgreater</primary></indexterm><literal>\textgreater</literal>
</term><listitem><indexterm role="cp"><primary>símbolo mayor que, en texto</primary></indexterm>
<para>&gt; Símbolo mayor que.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\texthorizontalbar</primary></indexterm><literal>\texthorizontalbar</literal>
</term><listitem><indexterm role="cp"><primary>carácter de barra horizontal</primary></indexterm>
<para>Carácter de  barra horizontal,  Unicode U+2015.  Definido en  junio de
2021    lanzamiento    de    &latex;.   Comportamiento    como    con
<literal>\textfiguredash</literal> arriba;  la aproximación pdf&tex; es  un guión
largo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textless</primary></indexterm><literal>\textless</literal>
</term><listitem><indexterm role="cp"><primary>símbolo menor que, en texto</primary></indexterm>
<para>&lt; Símbolo menor que.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textleftarrow</primary></indexterm><literal>\textleftarrow</literal>
</term><listitem><indexterm role="cp"><primary>flecha, izquierda, en texto</primary></indexterm>
<indexterm role="cp"><primary>flecha izquierda, en texto</primary></indexterm>
<para>&#x2190;, Flecha izquierda.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textnonbreakinghyphen</primary></indexterm><literal>\textnonbreakinghyphen</literal>
</term><listitem><indexterm role="cp"><primary>carácter de guion que no se rompe</primary></indexterm>
<indexterm role="cp"><primary>carácter de guión, irrompible</primary></indexterm>
<para>Carácter de guión de no  separación, Unicode U+2011. Definido en junio
lanzamiento   de   2021   de   &latex;.   Comportamiento   como   con
<literal>\textfiguredash</literal> arriba;  la aproximación pdf&tex; es  un guión
ASCII regular (con saltos no permitidos después).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textordfeminine</primary></indexterm><literal>\textordfeminine</literal>
</term><term><indexterm role="fn"><primary>\textordmasculine</primary></indexterm><literal>\textordmasculine</literal>
</term><listitem><indexterm role="cp"><primary>símbolo ordinal femenino</primary></indexterm>
<indexterm role="cp"><primary>símbolo ordinal masculino</primary></indexterm>
<indexterm role="cp"><primary>ordinales, femenino y masculino</primary></indexterm>
<indexterm role="cp"><primary>Ordinales en español, femenino y masculino</primary></indexterm>
<para>&#170;, &#186; Símbolos ordinales femeninos y masculinos.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textperiodcentered</primary></indexterm><literal>\textperiodcentered</literal>
</term><listitem><indexterm role="cp"><primary>punto, centrado, en texto</primary></indexterm>
<indexterm role="cp"><primary>punto centrado, en texto</primary></indexterm>
<para>&#x00B7; Punto centrado.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquestiondown (o <literal>?`</literal>)</primary></indexterm><literal>\textquestiondown (o <literal>?`</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>signo de interrogación, al revés</primary></indexterm>
<para>&#191; Signo de interrogación de apertura.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquotedblleft (o <literal>``</literal>)</primary></indexterm><literal>\textquotedblleft (o <literal>``</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>comilla izquierda, doble</primary></indexterm>
<indexterm role="cp"><primary>comillas dobles a la izquierda</primary></indexterm>
<para>&#8220; Comillas dobles a la izquierda.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquotedblright (o <literal>''</literal>)</primary></indexterm><literal>\textquotedblright (o <literal>''</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>comilla derecha, doble</primary></indexterm>
<indexterm role="cp"><primary>comillas dobles a la derecha</primary></indexterm>
<para>&#8221; Doble comilla derecha.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquoteleft (o <literal>`</literal>)</primary></indexterm><literal>\textquoteleft (o <literal>`</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>comilla izquierda, simple</primary></indexterm>
<indexterm role="cp"><primary>comilla izquierda simple</primary></indexterm>
<para>&#8216; Comilla izquierda simple.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquoteright (o <literal>'</literal>)</primary></indexterm><literal>\textquoteright (o <literal>'</literal>)</literal>
</term><listitem><indexterm role="cp"><primary>comilla derecha, simple</primary></indexterm>
<indexterm role="cp"><primary>comilla derecha simple</primary></indexterm>
<para>&#8217; Comilla simple derecha.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquotesingle</primary></indexterm><literal>\textquotesingle</literal>
</term><listitem><indexterm role="cp"><primary>comilla, simple derecha</primary></indexterm>
<indexterm role="cp"><primary>comillas simples derechas</primary></indexterm>
<indexterm role="cp"><primary>comillas simples, rectas</primary></indexterm>
<para>&#x0027;, Comillas rectas simples.  (De la codificación TS1).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textquotestraightbase</primary></indexterm><literal>\textquotestraightbase</literal>
</term><term><indexterm role="fn"><primary>\textquotestraightdblbase</primary></indexterm><literal>\textquotestraightdblbase</literal>
</term><listitem><indexterm role="cp"><primary>comilla, recta base</primary></indexterm>
<indexterm role="cp"><primary>comilla, base recta</primary></indexterm>
<indexterm role="cp"><primary>comillas dobles, base recta</primary></indexterm>
<indexterm role="cp"><primary>comillas dobles rectas, base</primary></indexterm>
<!-- Unicode no tiene estos https://en.wikipedia.org/wiki/Quotation_mark -->
<para>Comillas rectas simples y dobles en la línea base.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textregistered</primary></indexterm><literal>\textregistered</literal>
</term><listitem><indexterm role="cp"><primary>símbolo registrado</primary></indexterm>
<para>&#174; Símbolo de registrado.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textrightarrow</primary></indexterm><literal>\textrightarrow</literal>
</term><listitem><indexterm role="cp"><primary>flecha, derecha, en texto</primary></indexterm>
<indexterm role="cp"><primary>flecha derecha, en texto</primary></indexterm>
<para>&#x2192;, Flecha derecha.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textthreequartersemdash</primary></indexterm><literal>\textthreequartersemdash</literal>
</term><listitem><indexterm role="cp"><primary>tres cuartos em-dash</primary></indexterm>
<indexterm role="cp"><primary>em-dash, tres cuartos</primary></indexterm>
<para>&#xFE58;, &#8220;Tres cuartos&#8221; de guión largo, entre guión corto y guión
largo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\texttrademark</primary></indexterm><literal>\texttrademark</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de marca registrada</primary></indexterm>
<para>&#x2122; Símbolo de marca comercial.
</para>
<!-- ?? ¿Diferencia de \texttrescuartosemdash?  ¿En Unicode? -->
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\texttwelveudash</primary></indexterm><literal>\texttwelveudash</literal>
</term><listitem><indexterm role="cp"><primary>dos tercios de em-guion</primary></indexterm>
<indexterm role="cp"><primary>em-dash, dos tercios</primary></indexterm>
<para>&#xFE58;, &#8220;Dos  tercios&#8221; guión  largo, entre  guión corto  y guión
largo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textunderscore</primary></indexterm><literal>\textunderscore</literal>
</term><listitem><indexterm role="cp"><primary>guión bajo, en texto</primary></indexterm>
<para>_ Guion bajo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>\textvisiblespace</primary></indexterm><literal>\textvisiblespace</literal>
</term><listitem><indexterm role="cp"><primary>símbolo de espacio visible, en texto</primary></indexterm>
<para>&#x2423;, Símbolo de espacio visible.
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="23.5" id="Acentos">
<title>Acentos</title>

<indexterm role="cp"><primary>acentos</primary></indexterm>
<indexterm role="cp"><primary>caracteres, acentuados</primary></indexterm>
<indexterm role="cp"><primary>letras, acentuadas</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>babel</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>babel</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>polyglossia</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>polyglossia</literal> package</primary></indexterm>

<indexterm role="cp"><primary>compatibilidad multilingüe</primary></indexterm>
<para>&latex; tiene  una amplia compatibilidad  para muchos de  los scripts
del  mundo e  idiomas, proporcionada  a través  del paquete  principal
<literal>babel</literal>, que admite pdf&latex;,  Xe&latex; y Lua&latex;. El
paquete <literal>polyglossia</literal>  proporciona una  compatibilidad similar
con estos últimos dos motores.
</para>
<para>Esta sección  no cubre esa  compatibilidad. Solo enumera  los comandos
del núcleo  &latex; para  crear caracteres acentuados.   Los comandos
<literal>\capital...</literal>  que se muestran  aquí producen formas alternativas
para utilizar con mayúsculas.  Estos no están disponibles con OT1.
</para>
<para>A continuación, para que sean más fáciles de encontrar, los acentos se
ilustran con minúsculas &#8216;<literal>o</literal>&#8217;.
</para>
<indexterm role="fn"><primary>\i (dotless i)</primary></indexterm>
<indexterm role="cp"><primary>dotless i</primary></indexterm>
<para>Ten en cuenta que <literal>\i</literal> produce una i sin punto,
<!-- @dotless{i}, -->
<indexterm role="fn"><primary>\j (j sin punto)</primary></indexterm>
<indexterm role="cp"><primary>dotless j</primary></indexterm>
y <literal>\j</literal> produce una j sin punto.
<!-- @dotless{j}. -->
Estos se usan  a menudo en lugar de sus  contrapartes punteadas cuando
están acentuados.
</para>
<variablelist><varlistentry><term><literal>\&quot;</literal>
</term><term><literal>\capitaldieresis</literal>
</term><listitem><indexterm role="fn"><primary>\&quot; (acento diéresis)</primary></indexterm>
<indexterm role="fn"><primary>\capitaldieresis</primary></indexterm>
<indexterm role="cp"><primary>acento diéresis</primary></indexterm>
<indexterm role="cp"><primary>diéresis acento</primary></indexterm>
<para>&#246; Umlaut (diéresis).
</para>
</listitem></varlistentry><varlistentry><term><literal>\'</literal>
</term><term><literal>\capitalacute</literal>
</term><listitem><indexterm role="fn"><primary>\' (acento agudo)</primary></indexterm>
<indexterm role="fn"><primary>\capitalacute</primary></indexterm>
<indexterm role="cp"><primary>acento agudo</primary></indexterm>
<para>&#243; Acento agudo.
</para>
</listitem></varlistentry><varlistentry><term><literal>\.</literal>
</term><listitem><indexterm role="fn"><primary>\. (acento de puntos)</primary></indexterm>
<indexterm role="cp"><primary>acento de punto</primary></indexterm>
<indexterm role="cp"><primary>Acento de punto sobre</primary></indexterm>
<para>&#559; Acento de punto.
</para>
</listitem></varlistentry><varlistentry><term><literal>\=</literal>
</term><term><literal>\capitalmacron</literal>
</term><listitem><indexterm role="fn"><primary>\= (acento macrón)</primary></indexterm>
<indexterm role="fn"><primary>\capitalmacron</primary></indexterm>
<indexterm role="cp"><primary>acento macrón</primary></indexterm>
<indexterm role="cp"><primary>acento sobre la barra</primary></indexterm>
<indexterm role="cp"><primary>acento de barra sobre</primary></indexterm>
<para>&#333; Acento macrón (sobre la barra).
</para>
</listitem></varlistentry><varlistentry><term><literal>\^</literal>
</term><term><literal>\capitalcircumflex</literal>
</term><listitem><indexterm role="fn"><primary>\^ (acento circunflejo)</primary></indexterm>
<indexterm role="fn"><primary>\capitalcircumflex</primary></indexterm>
<indexterm role="cp"><primary>acento circunflejo</primary></indexterm>
<indexterm role="cp"><primary>acento de sombrero</primary></indexterm>
<para>&#244; Acento circunflejo (sombrero).
</para>
</listitem></varlistentry><varlistentry><term><literal>\`</literal>
</term><term><literal>\capitalgrave</literal>
</term><listitem><indexterm role="fn"><primary>\` (acento grave)</primary></indexterm>
<indexterm role="fn"><primary>\capitalgrave</primary></indexterm>
<indexterm role="cp"><primary>acento grave</primary></indexterm>
<para>&#242; Acento grave.
</para>
</listitem></varlistentry><varlistentry><term><literal>\~</literal>
</term><term><literal>\capitaltilde</literal>
</term><listitem><indexterm role="fn"><primary>\~ (tilde acento)</primary></indexterm>
<indexterm role="fn"><primary>\capitaltilde</primary></indexterm>
<indexterm role="cp"><primary>acento de tilde</primary></indexterm>
<para>&#241; Acento de tilde.
</para>
</listitem></varlistentry><varlistentry><term><literal>b</literal>
</term><listitem><indexterm role="fn"><primary>\b (barra debajo del acento)</primary></indexterm>
<indexterm role="cp"><primary>barra debajo del acento</primary></indexterm>
<para>o&#818; Acento de barra debajo.
</para>
<indexterm role="fn"><primary>\underbar</primary></indexterm>
<indexterm role="cp"><primary>underbar</primary></indexterm>
<para>Relacionado con esto, <literal>\underbar{<replaceable>text</replaceable>}</literal> produce una barra
debajo del  <replaceable>text</replaceable>.  El  argumento siempre se  procesa en  modo LR
(véase <link linkend="Modos">Modos</link>).  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
<literal>\underline</literal> en <link linkend="Sobre-y-subrayado">Sobre y subrayado</link>.
</para>
</listitem></varlistentry><varlistentry><term><literal>c</literal>
</term><term><literal>\capitalcedilla</literal>
</term><listitem><indexterm role="fn"><primary>\c (acento cedilla)</primary></indexterm>
<indexterm role="fn"><primary>\capitalcedilla</primary></indexterm>
<indexterm role="cp"><primary>acento cedilla</primary></indexterm>
<para>&#231; Acento cedilla debajo.
</para>
</listitem></varlistentry><varlistentry><term><literal>\d</literal>
</term><term><literal>\capitaldotaccent</literal>
</term><listitem><indexterm role="fn"><primary>\d (punto debajo del acento)</primary></indexterm>
<indexterm role="fn"><primary>\capitaldotaccent</primary></indexterm>
<indexterm role="cp"><primary>acento de punto debajo</primary></indexterm>
<para>&#7885; Acento de puntos debajo.
</para>
</listitem></varlistentry><varlistentry><term><literal>\H</literal>
</term><term><literal>h</literal>
</term><listitem><indexterm role="fn"><primary>\H (acento húngaro con diéresis)</primary></indexterm>
<indexterm role="fn"><primary>h</primary></indexterm>
<indexterm role="cp"><primary>Acento con diéresis húngara</primary></indexterm>
<para>&#337; Acento largo con diéresis húngara.
</para>
</listitem></varlistentry><varlistentry><term><literal>\k</literal>
</term><term><literal>\capitalogonek</literal>
</term><listitem><indexterm role="fn"><primary>\k (ogonek)</primary></indexterm>
<indexterm role="fn"><primary>\capitalogonek</primary></indexterm>
<indexterm role="cp"><primary>ogonek</primary></indexterm>
<para>&#491; Ogonek.  No disponible en la codificación OT1.
</para>
</listitem></varlistentry><varlistentry><term><literal>\r</literal>
</term><term><literal>\capitalring</literal>
</term><listitem><indexterm role="fn"><primary>\r (acento de anillo)</primary></indexterm>
<indexterm role="fn"><primary>\capitalring</primary></indexterm>
<indexterm role="cp"><primary>acento de anillo</primary></indexterm>
<para>o&#778; Acento de anillo.
</para>
</listitem></varlistentry><varlistentry><term><literal>\t</literal>
</term><term><literal>\capitaltie</literal>
</term><term><literal>\newtie</literal>
</term><term><literal>\capitalnewtie</literal>
</term><listitem><indexterm role="fn"><primary>\t (ligadura después del acento)</primary></indexterm>
<indexterm role="fn"><primary>\capitaltie</primary></indexterm>
<indexterm role="fn"><primary>\newtie</primary></indexterm>
<indexterm role="fn"><primary>\capitalnewtie</primary></indexterm>
<indexterm role="cp"><primary>tie-después de acento</primary></indexterm>
<para>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 <literal>\newtie</literal> está centrada en su cuadro.
</para>
</listitem></varlistentry><varlistentry><term><literal>\u</literal>
</term><term><literal>\capitalbreve</literal>
</term><listitem><indexterm role="fn"><primary>\u (acento breve)</primary></indexterm>
<indexterm role="fn"><primary>\capitalbreve</primary></indexterm>
<indexterm role="cp"><primary>acento breve</primary></indexterm>
<para>&#335; Acento breve.
</para>
</listitem></varlistentry><varlistentry><term><literal>\v</literal>
</term><term><literal>\capitalcaron</literal>
</term><listitem><indexterm role="fn"><primary>\v (acento breve)</primary></indexterm>
<indexterm role="fn"><primary>\capitalcaron</primary></indexterm>
<indexterm role="cp"><primary>hacek accent</primary></indexterm>
<indexterm role="cp"><primary>comprobar acento</primary></indexterm>
<indexterm role="cp"><primary>acento carón</primary></indexterm>
<para>acento de &#466; H&#225;&#269;ek (cheque, carón).
</para>
</listitem></varlistentry></variablelist>


<sect2 label="23.5.1" id="_005caccent">
<title><literal>\accent</literal></title>
<indexterm role="fn"><primary>\accent</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\accent <replaceable>number</replaceable> <replaceable>character</replaceable>
</screen>
<para>Un  comando  primitivo de  &tex;  utilizado  para generar  caracteres
acentuados a partir de acentos y letras. El acento es seleccionado por
<replaceable>number</replaceable>, un argumento numérico, seguido  de un espacio y luego un
<replaceable>character</replaceable> argumento  para construir el carácter  acentuado en la
fuente actual.
</para>
<para>Estos son caracteres &#8216;<literal>e</literal>&#8217; acentuados.
</para>
<screen>\accent18 e
\accent20 e
\accent21 e
\accent22 e
\accent23 e
</screen>
<para>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.
</para>
<para>La posición del  acento la determina el diseñador de  la fuente y, por
lo tanto, el  resultado del uso de <literal>\accent</literal>  puede diferir entre
las  fuentes. En  &latex; es  deseable tener  glifos para  caracteres
acentuados en lugar de construirlos usando <literal>\accent</literal>. Usar glifos
que ya  contienen los caracteres  acentuados (como en  la codificación
T1)   permite   la   separación   silábica   correcta   mientras   que
<literal>\accent</literal> deshabilita la separación silábica (específicamente con
la  codificación  de fuente  OT1  donde  los glifos  acentuados  están
ausentes).
</para>
<para>Puede  haber  un  cambio  de  fuente  opcional  entre  <replaceable>number</replaceable>  y
<replaceable>character</replaceable>.  Ten en cuenta también  que este comando establece el
<literal>\spacefactor</literal> a 1000 (véase <link linkend="_005cspacefactor">\spacefactor</link>).
</para>
<para>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
<literal>\accent</literal> 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
<literal>\accent</literal> en estos  casos no funcionará ya que  no puede analizar
mayúsculas/minúsculas.
</para>

</sect2>
</sect1>
<sect1 label="23.6" id="Letras-latinas-adicionales">
<title>Letras latinas adicionales</title>

<anchor id="caracteres-no-ingleses"/><indexterm role="cp"><primary>letras latinas, adicional</primary></indexterm>
<indexterm role="cp"><primary>letras, latín adicional</primary></indexterm>
<indexterm role="cp"><primary>Latín extendido</primary></indexterm>
<indexterm role="cp"><primary>caracteres especiales</primary></indexterm>
<indexterm role="cp"><primary>caracteres no ingleses</primary></indexterm>
<indexterm role="cp"><primary>caracteres, no ingleses</primary></indexterm>

<para>Estos son  los comandos básicos  de &latex; para insertar  letras más
allá de A&#8211;Z  que extienden el alfabeto  latino, usados principalmente
en otros idiomas distintos al inglés.
</para>
<variablelist><varlistentry><term><literal>\aa</literal>
</term><term><literal>\AA</literal>
</term><listitem><indexterm role="fn"><primary>\aa (&#229;)</primary></indexterm>
<indexterm role="fn"><primary>\AA (&#197;)</primary></indexterm>
<indexterm role="cp"><primary>aring, un anillo</primary></indexterm>
<para>&#229; y &#197;.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ae</literal>
</term><term><literal>\AE</literal>
</term><listitem><indexterm role="fn"><primary>\ae (&#230;)</primary></indexterm>
<indexterm role="fn"><primary>\AE (&#198;)</primary></indexterm>
<indexterm role="cp"><primary>ae ligadura</primary></indexterm>
<para>&#230; y &#198;.
</para>
</listitem></varlistentry><varlistentry><term><literal>\dh</literal>
</term><term><literal>\DH</literal>
</term><listitem><indexterm role="fn"><primary>\dh (&#240;)</primary></indexterm>
<indexterm role="fn"><primary>\DH (&#208;)</primary></indexterm>
<indexterm role="cp"><primary>eth islandesa</primary></indexterm>
<indexterm role="cp"><primary>eth, letra islandesa</primary></indexterm>
<para>Letra islandesa  eth: &#240;  y &#208;.  No disponible  con codificación
OT1,  necesitas el  paquete <filename>fontenc</filename>  para seleccionar  una
codificación de fuentes alternativa, como T1.
</para>
</listitem></varlistentry><varlistentry><term><literal>\dj</literal>
</term><term><literal>\DJ</literal>
</term><listitem><indexterm role="fn"><primary>\dj</primary></indexterm>
<indexterm role="fn"><primary>\DJ</primary></indexterm>
<para>d  y D  cruzadas,  alias  d mayúscula  y  minúscula  con trazo.   No
disponible  con   la  codificación  OT1,  necesitas   el  paquete
<filename>fontenc</filename>   para   seleccionar   una   codificación   de   fuente
alternativa, como T1.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ij</literal>
</term><term><literal>\IJ</literal>
</term><listitem><indexterm role="fn"><primary>\ij (ij)</primary></indexterm>
<indexterm role="fn"><primary>\IJ (IJ)</primary></indexterm>
<indexterm role="cp"><primary>ij letra, Holandés</primary></indexterm>
<para>ij e IJ (excepto algo más juntos de lo que aparece aquí).
</para>
</listitem></varlistentry><varlistentry><term><literal>\l</literal>
</term><term><literal>\L</literal>
</term><listitem><indexterm role="fn"><primary>\l (&#322;)</primary></indexterm>
<indexterm role="fn"><primary>\L (&#321;)</primary></indexterm>
<indexterm role="cp"><primary>l polaco</primary></indexterm>
<para>&#322; y &#321;.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ng</literal>
</term><term><literal>\NG</literal>
</term><listitem><indexterm role="fn"><primary>\ng</primary></indexterm>
<indexterm role="fn"><primary>\NG</primary></indexterm>
<para>Letra lapona eng, también utilizada en fonética.
</para>
</listitem></varlistentry><varlistentry><term><literal>\o</literal>
</term><term><literal>\O</literal>
</term><listitem><indexterm role="fn"><primary>\o (&#248;)</primary></indexterm>
<indexterm role="fn"><primary>\O (&#216;)</primary></indexterm>
<indexterm role="cp"><primary>oslash</primary></indexterm>
<para>&#248; y &#216;.
</para>
</listitem></varlistentry><varlistentry><term><literal>\oe</literal>
</term><term><literal>\OE</literal>
</term><listitem><indexterm role="fn"><primary>\oe (&#339;)</primary></indexterm>
<indexterm role="fn"><primary>\OE (&#338;)</primary></indexterm>
<indexterm role="cp"><primary>ligadura oe</primary></indexterm>
<para>&#339; y &#338;.
</para>
</listitem></varlistentry><varlistentry><term><literal>\ss</literal>
</term><term><literal>\SS</literal>
</term><listitem><indexterm role="fn"><primary>\ss (&#223;)</primary></indexterm>
<indexterm role="fn"><primary>\SS (SS)</primary></indexterm>
<indexterm role="cp"><primary>es-zet Letra alemana</primary></indexterm>
<indexterm role="cp"><primary>letras S nítidas</primary></indexterm>
<para>&#223; y SS.
</para>
</listitem></varlistentry><varlistentry><term><literal>\th</literal>
</term><term><literal>\TH</literal>
</term><listitem><indexterm role="fn"><primary>\th (&#254;)</primary></indexterm>
<indexterm role="fn"><primary>\TH (&#222;)</primary></indexterm>
<indexterm role="cp"><primary>espina islandesa</primary></indexterm>
<indexterm role="cp"><primary>thorn, letra islandesa</primary></indexterm>
<para>Espina  de  letra   islandesa:  &#254;  y  &#222;.   No  disponible  con
codificación  OT1,  necesitas   el  paquete  <filename>fontenc</filename>  para
seleccionar una codificación de fuentes alternativa, como T1.
</para>
</listitem></varlistentry></variablelist>

</sect1>
<sect1 label="23.7" id="paquete-inputenc">
<title>paquete <literal>inputenc</literal></title>

<indexterm role="fn"><primary>inputenc</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usepackage[<replaceable>encoding-name</replaceable>]{inputenc}
</screen>
<para>Declara  que la  codificación  de  texto del  archivo  de entrada  sea
<replaceable>encoding-name</replaceable>. 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.
</para>
<indexterm role="cp"><primary>codificación, archivos de entrada</primary></indexterm>
<indexterm role="cp"><primary>codificación de caracteres</primary></indexterm>
<indexterm role="cp"><primary>Unicode</primary></indexterm>
<para>En un archivo de ordenador, los caracteres se almacenan de acuerdo con
un  esquema  llamado  <firstterm>codificación</firstterm>.  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 &#8216;<literal>&#228;</literal>&#8217;
en un archivo fuente &latex; codificado en ASCII, se usa la secuencia
<literal>\&quot;a</literal>. 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.
</para>
<para>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.
</para>
<para>El paquete <literal>inputenc</literal>  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).
</para>
<screen>\usepackage[utf8]{inputenc}
</screen>
<para>Precaución:   usa  <literal>inputenc</literal>   solo  con   el  motor   pdf&tex;
(véase <link linkend="Motores-TeX">Motores &tex;</link>).   (Los motores  Xe&tex; y  Lua&tex; asumen
que el  archivo de  entrada está  codificado en  UTF-8). Si  invocas a
&latex;  con  ya  sea  el  comando  <command>xelatex</command>  o  el  comando
<command>lualatex</command>  e intentas  declarar una  codificación que  no sea
UTF-8  con <literal>inputenc</literal>,  como  <literal>latin1</literal>,  obtendrás el  error
<literal>inputenc no está diseñado para xetex o luatex</literal>.
</para>
<para>Un error  de paquete <literal>inputenc</literal>  como <literal>Byte UTF-8  no válido
&quot;96</literal> 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  <literal>latin1</literal> 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.
</para>
<indexterm role="fn"><primary>\inputencoding</primary></indexterm>
<anchor id="_005cinputencoding"/><para>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 <literal>\inputencoding{<replaceable>encoding-name</replaceable>}</literal>.  Los valores más
comunes  para  <replaceable>encoding-name</replaceable> son:  <literal>ascii</literal>,  <literal>latin1</literal>,
<literal>latin2</literal>,     <literal>latin3</literal>,    <literal>latin4</literal>,     <literal>latin5</literal>,
<literal>latin9</literal>, <literal>latin10</literal>, y&#160;<literal>utf8</literal>.
</para>

</sect1>
<sect1 label="23.8" id="_005crule">
<title><literal>\rule</literal></title>

<indexterm role="fn"><primary>\rule</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\rule{<replaceable>width</replaceable>}{<replaceable>thickness</replaceable>}
\rule[<replaceable>raise</replaceable>]{<replaceable>width</replaceable>}{<replaceable>thickness</replaceable>}
</screen>
<para>Produce una <firstterm>regla</firstterm>, un rectángulo relleno.
</para>
<indexterm role="cp"><primary>símbolo Halmos</primary></indexterm>
<indexterm role="cp"><primary>tombstone</primary></indexterm>
<para>Este ejemplo produce  una mancha rectangular, a  veces llamada símbolo
de Halmos, o simplemente &#8220;qed&#8221;, a  menudo usado para marcar el final
de una prueba:
</para>
<screen>\newcommand{\qedsymbol}{\rule{0.4em}{2ex}}
</screen>
<indexterm role="cp"><primary>package, <literal>amsthm</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>amsthm</literal> package</primary></indexterm>

<para>El paquete  <literal>amsthm</literal> incluye este  comando, con un  símbolo de
aspecto poco diferente.
</para>
<para>Los  argumentos  obligatorios  dan  el  <replaceable>width</replaceable>  horizontal  y  el
vertical  <replaceable>thickness</replaceable>  del  rectángulo.   Son  longitudes  rígidas
(véase <link linkend="Longitudes">Longitudes</link>).  El argumento opcional <replaceable>raise</replaceable> 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.
</para>
<para>Esto produce una línea, un rectángulo que es ancho pero no alto.
</para>
<screen>\noindent\rule{\textwidth}{0.4pt}
</screen>
<para>La línea  es el ancho  de la página  y 0.4&#160;puntos de  altura.  El
grosor esta línea es común en &latex;.
</para>
<para>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.
Véase <link linkend="_005cstrut">\strut</link>, por ejemplo.
</para>

</sect1>
<sect1 label="23.9" id="_005ctoday">
<title><literal>\today</literal></title>

<indexterm role="fn"><primary>\today</primary></indexterm>
<indexterm role="cp"><primary>fecha, de hoy</primary></indexterm>
<indexterm role="cp"><primary>la fecha de hoy</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\today
</screen>
<para>Produce  la  fecha de  hoy  en  el formato  &#8216;<literal><replaceable>mes</replaceable>  <replaceable>dd</replaceable>,
<replaceable>yyyy</replaceable></literal>&#8217;.  Un ejemplo de una fecha en ese formato es &#8216;<literal>julio 4,
1976</literal>&#8217;.
</para>
<indexterm role="cp"><primary>package, <literal>babel</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>babel</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>polyglossia</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>polyglossia</literal> package</primary></indexterm>
<para>Paquetes  multilingües  como
<literal>babel</literal> o <literal>polyglossia</literal>,  o clases como <filename>lettre</filename>,
localizarán   <literal>\today</literal>.  Por   ejemplo,  lo   siguiente  generará
&#8216;<literal>julio 4, 1976</literal>&#8217;:
</para>
<screen>\year=1976 \month=7 \day=4
\documentclass{minimal}
\usepackage[french]{babel}
\begin{document}
\today
\end{document}
</screen>
<para><literal>\today</literal>  utiliza  los  contadores <literal>\day</literal>,  <literal>\month</literal>  y
<literal>\year</literal> (véase <link linkend="_005cday-_002d-_005cmonth-y-_005cyear">\day - \month y \year</link>).
</para>
<indexterm role="cp"><primary>package, <literal>datetime</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>datetime</literal> package</primary></indexterm>
<para>Varios paquetes en CTAN funcionan con fechas.  Uno
es  el  paquete  <literal>datetime</literal>  que  puede  producir  una  amplia
variedad de formatos de fecha, incluidos los estándares ISO.
</para>
<para>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.
</para>

</sect1>
</chapter>
<chapter label="24" id="Dividir-la-entrada">
<title>Dividir la entrada</title>

<indexterm role="cp"><primary>dividir el archivo de entrada</primary></indexterm>
<indexterm role="cp"><primary>archivo de entrada</primary></indexterm>

<para>&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.
</para>
<para>Independientemente  de   cuántos  archivos   independientes  utilices,
siempre hay uno
<indexterm role="cp"><primary>archivo raíz</primary></indexterm>
<indexterm role="cp"><primary>archivo, raíz</primary></indexterm>
<firstterm>archivo raíz</firstterm>,  en el  que comienza  la compilación  de &latex;.
Esto muestra tal archivo con cinco archivos incluidos.
</para>
<screen>\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}
</screen>
<para>Esto   traerá    material   de    <filename>pref.tex</filename>,   <filename>chap1.tex</filename>,
<filename>chap2.tex</filename>,  <filename>append.tex</filename>  y <filename>bib.tex</filename>.   Si  compilas
este   archivo,   y   luego   comentas   todas   las   líneas   dentro
<literal>\includeonly{...}</literal>  a excepción  de <literal>chap1</literal>,  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
<literal>\includeonly</literal> 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.
</para>
<para>Véase <link linkend="Plantilla-de-libro-Larger">Plantilla   de    libro   Larger</link>,   para   otro    ejemplo   de
<literal>\includeonly</literal>.
</para>



<sect1 label="24.1" id="_005cendinput">
<title><literal>\endinput</literal></title>

<indexterm role="fn"><primary>\endinput</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\endinput
</screen>
<para>Cuando <literal>\include{filename}</literal>,  dentro de  <filename>filename.tex</filename> el
material después de <literal>\endinput</literal> no  se incluirá.  Este comando es
opcional;  si <filename>filename.tex</filename>  no tiene  <literal>\endinput</literal> entonces
&latex; leerá todo el archivo.
</para>
<para>Por  ejemplo,  supón  que  el  archivo  raíz  de  un  documento  tiene
<literal>\input{chap1}</literal> y este es <filename>chap1.tex</filename>.
</para>
<screen>\chapter{Uno}
Este material aparecerá en el documento.
\endinput
Esto no aparecerá.
</screen>
<para>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 <literal>\endinput</literal>  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 <literal>\endinput</literal>  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.
</para>
<para>Después de  leer <literal>\endinput</literal>, &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
<literal>\if...</literal> con un <literal>\fi</literal>.
</para>

</sect1>
<sect1 label="24.2" id="_005cinclude-e-_005cincludeonly">
<title><literal>\include</literal> e <literal>\includeonly</literal></title>

<anchor id="_005cinclude"/><anchor id="_005cincludeonly"/><indexterm role="fn"><primary>\include</primary></indexterm>
<indexterm role="fn"><primary>\includeonly</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\includeonly{  % en el preámbulo del documento
  ...
  <replaceable>filename</replaceable>,
  ...
  }
  ...
\include{<replaceable>filename</replaceable>}  % en el cuerpo del documento
</screen>
<para>Lleva  material del  archivo  externo  <filename><replaceable>filename</replaceable>.tex</filename> a  un
documento &latex;.
</para>
<para>El comando <literal>\include</literal> hace  tres cosas: ejecuta <literal>\clearpage</literal>
(véase <link linkend="_005cclearpage-y-_005ccleardoublepage">\clearpage y \cleardoublepage</link>),  entonces ingresa el material
de  <filename><replaceable>filename</replaceable>.tex</filename>  en  el  documento, y  luego  hace  otro
<literal>\clearpage</literal>.  Este comando solo puede  aparecer en el cuerpo del
documento.
</para>
<para>El comando  <literal>\includeonly</literal> controla  qué archivos  leerá &latex;
bajo los siguientes comandos <literal>\include</literal>.  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.
</para>
<para>Este  documento raíz  de ejemplo,  <filename>constitution.tex</filename>, trae  tres
archivos,       <filename>preamble.tex</filename>,       <filename>articles.tex</filename>       y
<filename>enmiendas.tex</filename>.
</para>
<screen>\documentclass{book}
\includeonly{
  preamble,
  articles,
  amendments
  }
\begin{document}
\include{preamble}
\include{articles}
\include{amendments}
\end{document}
</screen>
<para>El  archivo <filename>preamble.tex</filename>  no contiene  ningún código  especial;
justamente tienes  un extracto del capítulo  <filename>constitution.tex</filename> y
lo pones en un archivo separado solo por conveniencia de edición.
</para>
<screen>\chapter{Preamble}

Nosotros, el  Pueblo de los Estados  Unidos, con el fin  de formar una
Unión más perfecta, ...
</screen>
<para>Ejecutar &latex;  en <filename>constitution.tex</filename> hace que  el material de
tres  archivos  aparezca  en  el documento  pero  también  genera  los
archivos   auxiliares   <filename>preamble.aux</filename>,   <filename>articles.aux</filename>   y
<filename>enmiendas.aux</filename>.  Estos  contienen  información como  números  de
página (véase <link linkend="Referencias-cruzadas">Referencias  cruzadas</link>).  Si  ahora comentas  líneas de
<literal>\includeonly</literal> con <literal>preámbulo</literal>  y <literal>enmiendas</literal> y ejecuta
&latex; nuevamente, el documento  resultante muestra solo el material
de  <filename>articles.tex</filename>,  no  el  material  de  <filename>preamble.tex</filename>  o
<filename>amendments.tex</filename>.   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.
</para>
<para>Si el  preámbulo del  documento no tiene  <literal>\includeonly</literal> entonces
&latex;  incluirá  todos  los  archivos que  solicites  con  comandos
<literal>\include</literal>.
</para>
<para>El  comando <literal>\include</literal>  crea  una nueva  página.  Para  evitarlo,
consulta  <link linkend="_005cinput">\input</link> (que,  sin embargo,  no retiene  la información
auxiliar).
</para>
<para>Véase <link linkend="Plantilla-de-libro-Larger">Plantilla   de  libro   Larger</link>,   para   otro  ejemplo   usando
<literal>\include</literal>  e  <literal>\includeonly</literal>.    Ese  ejemplo  también  usa
<literal>\input</literal> para  algún material que no  necesariamente comenzará en
una nueva página.
</para>
<para>Los nombres de archivo pueden incluir rutas.
</para>
<screen>\documentclass{book}
\includeonly{
  chapters/chap1,
  }
\begin{document}
\include{chapters/chap1}
\end{document}
</screen>
<para>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
&#8216;<literal>amo amas amat</literal>&#8217;, esto funciona bajo &tex; Live en GNU/Linux:
</para>
<indexterm role="fn"><primary>\space</primary></indexterm>
<screen>\documentclass{book}
\includeonly{
  &quot;amo\space amas\space amat&quot;
  }
\begin{document}
\include{&quot;amo\space amas\space amat&quot;}
\end{document}
</screen>
<para>y esto funciona bajo MiK&tex; en Windows:
</para>
<screen>\documentclass{book}
\includeonly{
  {&quot;amo amas amat&quot;}
  }
\begin{document}
\include{{&quot;amo amas amat&quot;}}
\end{document}
</screen>
<indexterm role="cp"><primary><literal>\include</literal> anidado, no permitido</primary></indexterm>
<para>No  puedes usar  <literal>\include</literal>  dentro  de un  archivo  que se  está
incluyendo u obtienes &#8216;<literal>Error LaTeX: \include no se puede anidar.</literal>&#8217;
El  comando <literal>\include</literal>  no  puede aparecer  en  el preámbulo  del
documento;    vas   a    obtener   &#8216;<literal>Error    de   LaTeX:    Falta
\begin{document}</literal>&#8217;.
</para>
<para>Si  un  archivo  que  <literal>\include</literal>   no  existe,  por  ejemplo,  si
<literal>\include{athiesm}</literal>         pero         quisiste         decir
<literal>\include{atheism}</literal>, entonces  &latex; no te da  un error pero
te   avisa  &#8216;<literal>No   hay  archivo   athiesm.tex.</literal>&#8217;  (También   creará
<filename>athiesm.aux</filename>).
</para>
<para>Si  <literal>\include</literal> el  archivo  raíz en  sí  mismo, primero  obtienes
&#8216;<literal>Error  de  LaTeX: solo  se  puede  usar  en el  preámbulo.</literal>&#8217;  Las
ejecuciones posteriores  obtienen &#8216;<literal>Capacidad excedida de  TeX, lo
siento  [text  input levels=15]</literal>&#8217;.   Arreglar  esto,  debe eliminar  la
inclusión  <literal>\include{<replaceable>root</replaceable>}</literal>   pero  también   elimina  el
archivo <filename><replaceable>root</replaceable>.aux</filename> y vuelve a ejecutar &latex;.
</para>

</sect1>
<sect1 label="24.3" id="_005cinput">
<title><literal>\input</literal></title>

<indexterm role="fn"><primary>\input</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\input{<replaceable>filename</replaceable>}
</screen>
<para>&latex; procesa el  archivo como si su  contenido estuviera insertado
en el archivo actual.  Para  un mecanismo de inclusión más sofisticado
<link linkend="_005cinclude-e-_005cincludeonly">\include e \includeonly</link>.
</para>
<para>Si <replaceable>filename</replaceable> no termina  en &#8216;<literal>.tex</literal>&#8217; entonces &latex; primero
intenta  el nombre  del archivo  con esa  extensión; este  es el  caso
habitual.  Si  <replaceable>filename</replaceable> termina  con &#8216;<literal>.tex</literal>&#8217;  luego &latex;
busca el nombre de archivo tal como es.
</para>
<para>Por ejemplo, este
</para>
<screen>\input{macros}
</screen>
<para>hará que  &latex; busque primero <filename>macros.tex</filename>.  Si encuentra ese
archivo, entonces procesa  su contenido como si hubiera  sido copiar y
pegar.   Si no  hay ningún  archivo con  el nombre  <filename>macros.tex</filename>,
entonces    &latex;   intenta    el    nombre   <filename>macros</filename>,    sin
extensión. (Esto puede variar según la distribución).
</para>
<para>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
&#8216;<literal>amo amas amat</literal>&#8217;, esto funciona bajo &tex; Live en GNU/Linux:
</para>
<indexterm role="fn"><primary>\space</primary></indexterm>
<screen>\input{&quot;amo\space amas\space amat&quot;}
</screen>
<para>y esto funciona bajo MiK&tex; en Windows:
</para>
<screen>\input{{&quot;amo amas amat&quot;}}
</screen>

</sect1>
</chapter>
<chapter label="25" id="Material-de-portada_002fcontraportada">
<title>Material de portada/contraportada</title>


<!-- sin coma  en el  nombre del  nodo porque Texinfo  no lo  admite tan -->
<!-- bien. -->
<sect1 label="25.1" id="Tabla-de-contenido-etc_002e">
<title>Tabla de contenido, lista de figuras, lista de tablas</title>

<indexterm role="cp"><primary>tabla de contenido, crear</primary></indexterm>

<indexterm role="fn"><primary>\tableofcontents</primary></indexterm>
<indexterm role="fn"><primary>.toc archivo</primary></indexterm>
<indexterm role="fn"><primary>\listoffigures</primary></indexterm>
<indexterm role="fn"><primary>\listoftables</primary></indexterm>
<indexterm role="fn"><primary>archivo .lof</primary></indexterm>
<indexterm role="fn"><primary>.lot archivo</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\tableofcontents
\listoffigures
\listoftables
</screen>
<para>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
<literal>\chapter</literal>, etc.
</para>
<para>Este  ejemplo  ilustra  el  primer  comando,  <literal>\tableofcontents</literal>.
&latex; producirá  una tabla  de contenido en  la primera  página del
libro.
</para>
<screen>\documentclass{book}
% \setcounter{tocdepth}{1}
\begin{document}
\tableofcontents\newpage
  ...
\chapter{...}
  ...
\section{...}
  ...
\subsection{...}
  ...
\end{document}
</screen>
<para>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    <literal>\section</literal>     tiene    nivel&#160;1.
Véase <link linkend="Seccionado">Seccionado</link>, para nivel números de  las unidades de corte.  Para
obtener     más      información     sobre      el     <literal>tocdepth</literal>
véase <link linkend="Seccionado_002ftocdepth">Seccionado/tocdepth</link>.
</para>
<para>Otro ejemplo del uso de <literal>\tableofcontents</literal> está en <link linkend="Plantilla-de-libro-Larger">Plantilla
de libro Larger</link>.
</para>
<para>Si deseas un salto de página después de la tabla de contenido, escribe
un      comando      <literal>\newpage</literal>     después      del      comando
<literal>\tableofcontents</literal>, como arriba.
</para>
<para>Para hacer la tabla de  contenido, &latex; almacena la información en
un archivo auxiliar llamado <filename><replaceable>root-file</replaceable>.toc</filename> (véase <link linkend="Dividir-la-entrada">Dividir
la entrada</link>).  Por ejemplo, este archivo &latex; <filename>test.tex</filename>
</para>
<screen>\documentclass{article}
\begin{document}
\tableofcontents\newpage
\section{Primera sección}
\subsection{Primera subsección}
  ...
</screen>
<para>escribe estas líneas en <filename>test.toc</filename>.
</para>
<screen>\contentsline {section}{\numberline {1}Primera sección}{2}
\contentsline        {subsection}{\numberline        {1.1}Primera
                       subsección}{2}
</screen>
<indexterm role="fn"><primary>\contentsline</primary></indexterm>
<para>Cada   línea   contiene    un   solo   comando,   <literal>\contentsline</literal>
(véase <link linkend="_005ccontentsline">\contentsline</link>).   El primer  argumento,  el <literal>section</literal>  o
<literal>subsection</literal>,  es  la  unidad   de  seccionamiento.   El  segundo
argumento  tiene   dos  componentes.   El   gancho  <literal>\numberline</literal>
determina cómo el número de sección, <literal>1</literal> o <literal>1.1</literal>, aparece en
la  tabla de  contenido (véase <link linkend="_005cnumberline">\numberline</link>).   El resto  del segundo
argumento   de   <literal>\contentsline</literal>,    &#8216;<literal>Primera   sección</literal>&#8217;   o
&#8216;<literal>Primera  subsección</literal>&#8217;, es  el  texto del  título  de la  sección.
Finalmente, el tercer  argumento, &#8216;<literal>2</literal>&#8217;, es el número  de página en
el que comienza esta unidad de seccionado.
</para>
<para>Para  componer   estas  líneas,  la  clase   &#8220;document&#8221;  proporciona
<literal>\l@<replaceable>section-unit</replaceable></literal>               comandos              como
<literal>\l@section{<replaceable>text</replaceable>}{<replaceable>pagenumber</replaceable>}</literal>                 y
<literal>\l@subsection{<replaceable>text</replaceable>}{<replaceable>pagenumber</replaceable>}</literal>.         Estos
comandos   a   menudo    usan   el   comando   <literal>\@dottedtocline</literal>
(véase <link linkend="_005c_0040dottedtocline">\@dottedtocline</link>).
</para>
<para>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  &#8216;<literal>Contenido</literal>&#8217;.   Simplemente  ejecuta  &latex;  de
nuevo.
</para>
<para>Los comandos <literal>\listoffigures</literal>  y <literal>\listoftables</literal> producen un
lista de  figuras y lista  de tablas.   Su información se  almacena en
archivos  con extensión  <filename>.lof</filename>  y <filename>.lot</filename>.  Funcionan de  la
misma  manera como  <literal>\tableofcontents</literal>  pero este  último es  más
común, así que lo usamos para la mayoría de los ejemplos.
</para>
<para>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
<literal>\addcontentsline{toc}{section}{<replaceable>text</replaceable>}</literal>.
(véase <link linkend="_005caddcontentsline">\addcontentsline</link>).   Agregar material  arbitrario, es  decir,
sin  línea material,  con <literal>\addtocontents</literal>,  como con  el comando
<literal>\addtocontents{lof}{\protect\vspace{2ex}}</literal>,   que   agrega
espacio vertical a la lista de figuras (véase <link linkend="_005caddtocontents">\addtocontents</link>).
</para>
<para>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  &#8216;<literal>Primera
sección</literal>&#8217;.  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,  véase <link linkend="_005c_0040dottedtocline">\@dottedtocline</link>.  El cuadro
del  margen derecho  tiene  ancho <literal>\@tocrmarg</literal>  y  el número  de
página  está justo  en  ese  espacio, dentro  de  un  cuadro de  ancho
<literal>\@pnumwidth</literal>.  De  manera predeterminada  <literal>\@tocrmarg</literal> es
<literal>2.55em</literal> y <literal>\@pnumwidth</literal>  es <literal>1.55em</literal>.  Cámbialos como
con <literal>\renewcommand{\@tocrmarg}{3.5em}</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>tocloft</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>tocloft</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>tocbibbind</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>tocbibbind</literal> package</primary></indexterm>
<para>CTAN  tiene muchos  paquetes
para   la  tabla   de  contenido   y  listas   de  figuras   y  tablas
(véase <link linkend="CTAN">CTAN</link>).   El  paquete  <literal>tocloft</literal> es  conveniente  para
ajustar algunos aspectos del  valor predeterminado, como el espaciado.
Y,  <literal>tocbibbind</literal>  agregará  automáticamente  la  bibliografía,
índice, etc. a la tabla de contenido.
</para>
<para>Para cambiar el encabezado de la  página de la tabla de contenido, haz
algo como  estos comandos  antes de llamar  a <literal>\tableofcontents</literal>,
etc.
</para>
<screen>\renewcommand{\contentsname}{Tabla de contenido}
\renewcommand{\listfigurename}{Traza}
\renewcommand{\listtablename}{especificaciones}
</screen>
<indexterm role="cp"><primary>package, <literal>babel</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>babel</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>polyglossia</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>polyglossia</literal> package</primary></indexterm>
<para>Paquetes       de
internacionalización  como   <literal>babel</literal>  o  <literal>polyglossia</literal>
cambiará estos encabezados según el idioma base elegido.
</para>


<sect2 label="25.1.1" id="_005c_0040dottedtocline">
<title><literal>\@dottedtocline</literal></title>

<indexterm role="fn"><primary>\@dottedtocline</primary></indexterm>
<indexterm role="cp"><primary>entrada de tabla de contenido, crea línea punteada</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\@dottedtocline{<replaceable>section-level-num</replaceable>}{<replaceable>indent</replaceable>}{<replaceable>numwidth</replaceable>}{<replaceable>text</replaceable>}{<replaceable>pagenumber</replaceable>}
</screen>
<para>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 <literal>\@dottedtocline</literal>.
</para>
<para>Este      comando       suele      utilizarlo      <literal>\l@section</literal>,
<literal>\l@subsection</literal>,  etc.,  para  dar   formato  a  las  líneas  de
contenido.  Por ejemplo, el  archivo <filename>article.cls</filename> contiene estas
definiciones:
</para>
<screen>\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}}
</screen>
<para>En este ejemplo, <literal>\@dottedcline</literal> parece haber recibido solo tres
argumentos.  Pero  rastrear el código  interno muestra que  recoge los
argumentos finales <replaceable>text</replaceable> y  <replaceable>pagenumber</replaceable> en la sinopsis desde
una llamada a <literal>\contentsline</literal> (véase <link linkend="_005ccontentsline">\contentsline</link>).
</para>
<indexterm role="cp"><primary>líderes, punteados en la tabla de contenido</primary></indexterm>
<para>Entre el cuadro  para el texto del  título de una sección  y el cuadro
del  margen derecho,  estos comandos  <literal>\@dottedtocline</literal> insertan
<firstterm>líderes punteados</firstterm>, es decir,  puntos espaciados uniformemente El
espacio de punto  a punto viene dado por  el comando <literal>\@dotsep</literal>.
De manera predeterminada es 4.5 (está en unidades matemáticas, también
conocido como    <literal>mu</literal>,  que son  <literal>1/18</literal>&#160;em.  Cámbialo
usando            <literal>\renewcommand</literal>,             como            en
<literal>\renewcommand{\@dotsep}{3.5}</literal>.
</para>
<para>En la  clase <filename>book</filename> estándar,  &latex; no usa  líderes punteados
para  las  entradas  de  la  tabla  Part y  Chapter,  y  en  la  clase
<filename>article</filename> estándar no usa líderes  punteados para las entradas de
la sección.
</para>

</sect2>
<sect2 label="25.1.2" id="_005caddcontentsline">
<title><literal>\addcontentsline</literal></title>

<indexterm role="fn"><primary>\addcontentsline</primary></indexterm>
<indexterm role="cp"><primary>entrada de la tabla de contenido, agregar manualmente</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\addcontentsline{<replaceable>ext</replaceable>}{<replaceable>unit</replaceable>}{<replaceable>text</replaceable>}
</screen>
<indexterm role="fn"><primary>\contentsline</primary></indexterm>
<para>Agrega una entrada al archivo auxiliar con extensión <replaceable>ext</replaceable>.
</para>
<para>Lo siguiente  resultará en una  línea &#8216;<literal>Apéndices</literal>&#8217; en la  tabla de
contenido.
</para>
<screen>\addcontentsline{toc}{section}{\protect\textbf{Apéndices}}
</screen>
<para>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.
</para>
<para>El comando  <literal>\addcontentsline</literal> escribe información en  el archivo
<filename><replaceable>root-name</replaceable>.<replaceable>ext</replaceable></filename>, donde  <replaceable>root-name</replaceable> es  el nombre
del   archivo  raíz   (véase <link linkend="Dividir-la-entrada">Dividir  la   entrada</link>).   Escribe   que
información        como       el        texto       del        comando
<literal>\contentsline{<replaceable>unit</replaceable>}{<replaceable>text</replaceable>}{<replaceable>num</replaceable>}</literal>,   dónde
<literal><replaceable>num</replaceable></literal>  es el  valor actual  del contador  <literal><replaceable>unit</replaceable></literal>
(véase <link linkend="_005ccontentsline">\contentsline</link>).  El caso más común es la tabla de contenido y
allí  <replaceable>num</replaceable>  es el  número  de  página  de  la primera  página  de
<replaceable>unit</replaceable>.
</para>
<para>Este   comando   es   invocado   por  los   comandos   de   seccionado
<literal>\chapter</literal>,    etc.   (véase <link linkend="Seccionado">Seccionado</link>),    y   también    por
<literal>\caption</literal>  dentro de  un  entorno flotante  (véase <link linkend="Flotantes">Flotantes</link>).
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  <literal>\chapter*</literal> con  asterisco.   Pero  ese
comando omite  la información de la  tabla de contenido, que  se puede
ingresar manualmente, como aquí.
</para>
<screen>\chapter*{Preface}
\addcontentsline{toc}{chapter}{\protect\numberline{}Prefacio}
</screen>
<para>En  el archivo  <filename><replaceable>root-name</replaceable>.toc</filename>  &latex;  pondrá la  línea
<literal>\contentsline   {chapter}{\numberline   {}Prefacio}{3}</literal>;
nota que el número de  página &#8216;<literal>3</literal>&#8217; es generado automáticamente por
el sistema, no ingresado manualmente.
</para>
<para>Todos los argumentos para <literal>\addcontentsline</literal> son obligatorios.
</para>
<variablelist><varlistentry><term><replaceable>ext</replaceable>
</term><listitem><para>Por  lo general,  una  de  las cadenas  <literal>toc</literal>  para  la tabla  de
contenido, <literal>lof</literal> para  la lista de figuras, o  <literal>lot</literal> para la
lista de  tablas. La extensión  del nombre  de archivo del  archivo de
información.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>unit</replaceable>
</term><listitem><para>Una cadena que depende del  valor del argumento <replaceable>ext</replaceable>, normalmente
una de:
</para>
<variablelist><varlistentry><term><literal>toc</literal>
</term><listitem><para>Para la tabla de contenido, este es el nombre de una unidad seccional:
<literal>part</literal>, <literal>chapter</literal>, <literal>section</literal>, <literal>subsection</literal>, etc.
</para>
</listitem></varlistentry><varlistentry><term><literal>lof</literal>
</term><listitem><para>Para la lista de figuras: <literal>figure</literal>.
</para>
</listitem></varlistentry><varlistentry><term><literal>lot</literal>
</term><listitem><para>Para la lista de tablas: <literal>table</literal>.
</para></listitem></varlistentry></variablelist>
</listitem></varlistentry><varlistentry><term><replaceable>text</replaceable>
</term><listitem><para>El  texto  de la  entrada.   Debes  <literal>\protect</literal> cualquier  comando
frágil (véase <link linkend="_005cprotect">\protect</link>) utilizado en él.
</para></listitem></varlistentry></variablelist>
<para>El   comando  <literal>\addcontentsline</literal>   tiene   una  interacción   con
<literal>\include</literal> (véase <link linkend="_005cinclude-e-_005cincludeonly">\include  e \includeonly</link>). Si los  usas en el
mismo                 nivel,                  como                 con
<literal>\addcontentsline{...}{...}{...}\include{...}</literal>   entonces
las  líneas en  la  tabla de  contenido pueden  aparecer  en el  orden
incorrecto.  La  solución es mover <literal>\addcontentsline</literal>  al archivo
que se incluye.
</para>
<para>Si usas una  <replaceable>unidad</replaceable> que &latex; no reconoce, como  con el error
tipográfico aquí
</para>
<screen>\addcontentsline{toc}{section}{\protect\textbf{Apéndices}}
</screen>
<para>entonces  no obtienes  un error  sino que  el formato  en la  tabla de
contenido no tendrá sentido.
</para>

</sect2>
<sect2 label="25.1.3" id="_005caddtocontents">
<title><literal>\addtocontents</literal></title>

<indexterm role="fn"><primary>\addtocontents{<replaceable>ext</replaceable>}{<replaceable>text</replaceable>}</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\addtocontents{<replaceable>ext</replaceable>}{<replaceable>text</replaceable>}
</screen>
<para>Agrega  <replaceable>text</replaceable>,  que  puede  ser  texto  o  comandos  de  formato,
directamente a el  archivo auxiliar con extensión  <replaceable>ext</replaceable>.  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.
</para>
<para>Esto pondrá un  espacio vertical en la tabla de  contenido después del
encabezado &#8216;<literal>Contenido</literal>&#8217;.
</para>
<screen>\tableofcontents\newpage
\addtocontents{toc}{\protect\vspace*{3ex}}
</screen>
<para>Esto pone la  palabra &#8216;<literal>Página</literal>&#8217;, en negrita, encima  de la columna
del número de página y después del encabezado.
</para>
<screen>\tableofcontents
\addtocontents{toc}{~\hfill\textbf{Página}\par}
\chapter{...}
</screen>
<para>Esto agrega una línea que anuncia el trabajo de un nuevo autor.
</para>
<screen>\addtocontents{toc}{%
  \protect\vspace{2ex}
  \textbf{Capítulos de N. Otro autor}\par}
</screen>
<para>La diferencia entre <literal>\addtocontents</literal> y <literal>\addcontentsline</literal> 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,
<literal>\addtocontents</literal> es para material como el espaciado.
</para>
<para>El  comando <literal>\addtocontents</literal>  tiene  dos  argumentos.  Ambos  son
requeridos.
</para>
<variablelist><varlistentry><term><replaceable>ext</replaceable>
</term><listitem><para>Por  lo  general, uno  de:  <filename>toc</filename>  para  la tabla  de  contenido,
<filename>lof</filename> para  la lista de  figuras, o  <filename>lot</filename> para la  lista de
tablas.  La extensión del archivo contiene la información.
</para>
</listitem></varlistentry><varlistentry><term><replaceable>text</replaceable>
</term><listitem><para>El texto, y posiblemente los comandos, que se van a escribir.
</para></listitem></varlistentry></variablelist>
<para>Los  comandos  de  seccionado  como <literal>\chapter</literal>  usan  el  comando
<literal>\addcontentsline</literal> para almacenar información.  Este comando crea
líneas  en el  archivo auxiliar  <filename>.toc</filename> que  contiene el  comando
<literal>\contentsline</literal> (véase <link linkend="_005caddcontentsline">\addcontentsline</link>).   A diferencia  de el
comando <literal>\addtocontents</literal>  coloca el material directamente  en ese
archivo.
</para>
<para>El   comando   <literal>\addtocontents</literal>   tiene   una   interacción   con
<literal>\include</literal> (véase <link linkend="_005cinclude-e-_005cincludeonly">\include  e \includeonly</link>). Si los  usas en el
mismo                 nivel,                  como                 con
<literal>\addtocontents{...}{...}\include{...}</literal> entonces las líneas
en la tabla  de contenido pueden aparecer en el  orden incorrecto.  La
solución es mover <literal>\addtocontents</literal> al archivo que se incluye.
</para>

</sect2>
<sect2 label="25.1.4" id="_005ccontentsline">
<title><literal>\contentsline</literal></title>

<indexterm role="cp"><primary>tabla de contenido</primary></indexterm>
<indexterm role="fn"><primary>\contentsline</primary></indexterm>
<indexterm role="fn"><primary>\tableofcontents</primary></indexterm>
<indexterm role="fn"><primary>.toc archivo</primary></indexterm>
<indexterm role="fn"><primary>\listoffigures</primary></indexterm>
<indexterm role="fn"><primary>\listoftables</primary></indexterm>
<indexterm role="fn"><primary>archivo .lof</primary></indexterm>
<indexterm role="fn"><primary>.lot archivo</primary></indexterm>
<indexterm role="fn"><primary>\l@chapter</primary></indexterm>
<indexterm role="fn"><primary>\l@section</primary></indexterm>
<indexterm role="fn"><primary>\l@subsection</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\contentsline{<replaceable>unit</replaceable>}{<replaceable>text</replaceable>}{<replaceable>pagenumber</replaceable>}
</screen>
<para>Utilizado internamente  por &latex; para  componer una entrada  de la
tabla de contenido,  lista de figuras o lista  de tablas (véase <link linkend="Tabla-de-contenido-etc_002e">Tabla
de contenido etc.</link>). Los autores no ingresan directamente los comandos
<literal>\contentsline</literal>.
</para>
<para>Por lo  general, la  adición de  material a  estas listas  la realizan
automáticamente   los   comandos   <literal>\chapter</literal>,   <literal>\section</literal>,
etc.  para la  tabla de  contenido, o  por el  comando <literal>\caption</literal>
dentro de un entorno  <literal>\figure</literal> o <literal>\table</literal> (véase <link linkend="figure">figure</link> y
véase <link linkend="table">table</link>).    De   este   modo,   donde  el   archivo   raíz   es
<filename>thesis.tex</filename> y  contiene la  declaración <literal>\tableofcontents</literal>,
el comando  <literal>\chapter{Capítulo Uno}</literal> produce algo  como esto en
el archivo <filename>thesis.toc</filename>.
</para>
<screen>\contentsline {chapter}{\numberline {1}Capítulo uno}{3}
</screen>
<para>Si el  archivo contiene la declaración  <literal>\listoffigures</literal> entonces
un   entorno  <literal>figure</literal>   que  involucra   <literal>\caption{Test}</literal>
producirá algo como esto en <filename>thesis.lof</filename>.
</para>
<screen>\contentsline      {figure}{\numberline      {1.1}{\ignorespaces
Test}}{6}
</screen>
<para>Para         agregar         material         manualmente,         usa
<literal>\addcontentsline{<replaceable>filetype</replaceable>}{<replaceable>unit</replaceable>}{<replaceable>text</replaceable>}</literal>,
donde   <replaceable>filetype</replaceable>   es   <literal>toc</literal>,  <literal>lof</literal>   o   <literal>lot</literal>
(véase <link linkend="_005caddcontentsline">\addcontentsline</link>).
</para>
<indexterm role="cp"><primary>package, <literal>tocloft</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>tocloft</literal> package</primary></indexterm>
<para>Para   manipular  cómo  se  escribe   el  material
<literal>\contentline</literal>, consulta el paquete <literal>tocloft</literal>.
</para>
<indexterm role="cp"><primary>package, <literal>hyperref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>hyperref</literal> package</primary></indexterm>
<para>Ten  en cuenta  que el  paquete <literal>hyperref</literal>
cambia      la     definición      de     <literal>\contentsline</literal>      (y
<literal>\addcontentsline</literal>)  para  agregar  más  argumentos,  para  hacer
hipervínculos.   Esta es  la fuente  del error  <literal>El argumento  de
\contentsline tiene una }</literal> adicional  cuando se agrega/elimina el uso
del  paquete  <literal>hyperref</literal>  y  ya se  ejecutó  una  compilación.
Soluciona este error eliminando el archivo <filename>.toc</filename> o <filename>.lof</filename> o
<filename>.lot</filename> y ejecutando &latex; de nuevo.
</para>

</sect2>
<sect2 label="25.1.5" id="_005cnofiles">
<title><literal>\nofiles</literal></title>

<indexterm role="fn"><primary>\nofiles</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\nofiles
</screen>
<para>Evita que &latex; escriba archivos auxiliares.  La única salida serán
los archivos <filename>.log</filename> y  <filename>.pdf</filename> (o <filename>.dvi</filename>).  Este comando
debe ir en el preámbulo.
</para>
<para>Debido al comando <literal>\nofiles</literal> este ejemplo no producirá un archivo
<filename>.toc</filename>.
</para>
<screen>\documentclass{book}
\nofiles
\begin{document}
\tableofcontents\newpage
\chapter{...}
  ...
</screen>
<para>&latex; no borrará  ningún archivo auxiliar existente, por  lo que si
insertas el comando  <literal>\nofiles</literal> después de ejecutar  el archivo y
obtener un  <filename>.toc</filename> entonces  la página de  la tabla  de contenido
seguirá mostrando la información antigua.
</para>

</sect2>
<sect2 label="25.1.6" id="_005cnumberline">
<title><literal>\numberline</literal></title>

<indexterm role="fn"><primary>\numberline</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\numberline{<replaceable>number</replaceable>}
</screen>
<para>Escribe su  argumento alineado a la  izquierda en un cuadro.   Esto se
usa  en un  comando <literal>\contentsline</literal>  para escribir  el número  de
sección (véase <link linkend="_005ccontentsline">\contentsline</link>).
</para>
<para>Por ejemplo, esta  línea en un <filename>.toc</filename> hace que  el <literal>1.1</literal> sea
composición tipográfica a la izquierda.
</para>
<screen>\contentsline {subsection}{\numberline {1.1}Motivación}{2}
</screen>
<para>De forma predeterminada, &latex; escribe los números de sección en un
cuadro de longitud <literal>\@tempdima</literal>.  Esa longitud la establecen los
comandos <literal>\l@section</literal>, <literal>\l@subsection</literal>, etc. Poner números
de   sección   dentro    de   una   caja   de    ancho   natural   con
<literal>\renewcommand{\numberline}[1]{#1~}</literal>         antes         de
<literal>\tableofcontents</literal>.
</para>
<para>Este comando es frágil, por lo que es posible que debas precederlo con
<literal>\protect</literal>  (véase <link linkend="_005cprotect">\protect</link>).    Un  ejemplo   es  el   uso  de
<literal>\protect</literal> en este comando,
</para>
<screen><literal>\addcontentsline{toc}{section}{\protect\numberline{}Resumen}</literal>
</screen>
<para>para obtener el <literal>\numberline</literal>  en el comando <literal>\contentsline</literal>
en       el       archivo       <filename>.toc</filename>:       <literal>\contentsline
{section}{\numberline    {}Resumen}{6}</literal>    (&latex;    agrega
automáticamente      el      número      de      página      &#8216;<literal>6</literal>&#8217;;
véase <link linkend="_005caddcontentsline">\addcontentsline</link>).
</para>

</sect2>
</sect1>
<sect1 label="25.2" id="_00cdndices">
<title>Índices</title>

<indexterm role="cp"><primary>índices</primary></indexterm>

<indexterm role="fn"><primary>\makeindex</primary></indexterm>
<indexterm role="fn"><primary>\index</primary></indexterm>
<indexterm role="cp"><primary>archivo <filename>.idx</filename></primary></indexterm>

<para>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.
</para>
<screen>\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&gt;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}
</screen>
<para>Como  muestra,  declara   las  entradas  de  índice   con  el  comando
<literal>\index</literal>    (véase <link linkend="_005cindex">\index</link>).     Cuando    ejecutas    &latex;,
<literal>\index</literal> escribe su información,  como &#8216;<literal>Teorema de Wilson</literal>&#8217; y
el número  de página,  a un  archivo auxiliar  cuyo nombre  termina en
<filename>.idx</filename>.  A continuación, alfabetiza  y hace otras manipulaciones,
como  ejecutar  un  comando externo,  normalmente  <command>makeindex</command>
(véase <link linkend="makeindex">makeindex</link>),  que escribe  un archivo  cuyo nombre  termina en
<filename>.ind</filename>.   Finalmente,  <literal>\printindex</literal> trae  esta  información
manipulada en la salida (véase <link linkend="_005cprintindex">\printindex</link>).
</para>
<para>Por   lo  tanto,   si  el   ejemplo  anterior   está  en   el  archivo
<filename>numth.tex</filename> entonces  ejecutar &#8216;<literal>pdflatex numth</literal>&#8217;  guardará la
entrada  de   índice  y  la   información  del  número  de   página  a
<filename>numth.idx</filename>.   Luego   ejecutar  &#8216;<literal>makeindex   numth</literal>&#8217;  ordena
alfabéticamente       y      guarda       los      resultados       en
<filename>numth.ind</filename>. Finalmente, ejecutar  de nuevo &#8216;<literal>pdflatex numth</literal>&#8217;
mostrará  el  índice  deseado,  en  el lugar  donde  está  el  comando
<literal>\printindex</literal> en el archivo fuente.
</para>
<para>Hay muchas  opciones para la  salida.  Un ejemplo  es que el  signo de
exclamación  en   <literal>\index{congruencia!y  teorema   de  Wilson}</literal>
produce una entrada principal de &#8216;<literal>congruencia</literal>&#8217; con una subentrada
de  &#8216;<literal>y  Teorema  de   Wilson</literal>&#8217;.   Para  obtener  más  información,
véase <link linkend="makeindex">makeindex</link>.
</para>
<para>Los    comandos    <literal>\makeindex</literal>    y    <literal>\printindex</literal>    son
independientes.   Omitir  el  <literal>\makeindex</literal> evitará  que  &latex;
guarde  las  entradas  de  índice  al  archivo  auxiliar.   Omitir  el
<literal>\printindex</literal> hará que &latex; no muestre el índice en la salida
del documento.
</para>
<indexterm role="cp"><primary>package, <literal>showidx</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>showidx</literal> package</primary></indexterm>

<indexterm role="cp"><primary>package, <literal>multind</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>multind</literal> package</primary></indexterm>

<indexterm role="cp"><primary>índice, múltiple</primary></indexterm>
<indexterm role="cp"><primary>múltiples índices</primary></indexterm>
<para>Hay  muchos   paquetes  en   el  área   de  indexación.    El  paquete
<literal>showidx</literal> hace  que cada  entrada de índice  se muestre  en el
margen de la página donde aparece el <literal>\index</literal>.  Esto puede ayudar
en  la preparación  del índice.   El paquete  <literal>multind</literal>, entre
otros,  admite  múltiples índices.   Consulta  también  la entrada  de
preguntas     frecuentes     de     &tex;    sobre     este     tema,
<ulink url="https://www.texfaq.org/FAQ-multind">https://www.texfaq.org/FAQ-multind</ulink>,   y   el   tema   de   CTAN,
<ulink url="https://ctan.org/topic/index-multi">https://ctan.org/topic/index-multi</ulink>.
</para>


<sect2 label="25.2.1" id="Producir-el-_00edndice-manualmente">
<title>Producir el índice manualmente</title>

<indexterm role="cp"><primary>índice, producir manualmente</primary></indexterm>
<indexterm role="fn"><primary>theindex</primary></indexterm>

<para>Los documentos  que son  pequeños y estáticos  pueden tener  un índice
producido  manualmente.  Esto  creará una  página separada  etiquetada
como &#8216;<literal>Index</literal>&#8217;, en formato de dos columnas.
</para>
<indexterm role="fn"><primary>environment, <literal>theindex</literal></primary></indexterm>
<indexterm role="fn"><primary><literal>theindex</literal> environment</primary></indexterm>

<screen>\begin{theindex}
\item acorn squash, 1
\subitem maple estufado, 2
\indexspace
\item bacon, 3
\subitem maple estufado, 4
\end{theindex}
</screen>
<para>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  <command>makeindex</command> son  los
mejores.  Véase <link linkend="_00cdndices">Índices</link>.
</para>
<indexterm role="fn"><primary>\item</primary></indexterm>
<indexterm role="fn"><primary>\subitem</primary></indexterm>
<indexterm role="fn"><primary>\subsubitem</primary></indexterm>
<indexterm role="fn"><primary>\indexspace</primary></indexterm>
<para>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
<literal>\item</literal>,  las subentradas  usan <literal>\subitem</literal>,  y el  nivel más
bajo usa <literal>\subsubitem</literal>.   Las líneas en blanco  entre entradas no
tienen efecto.   El ejemplo  anterior incluye  <literal>\indexspace</literal> para
producir  espacio vertical  en la  salida que  usa algunos  estilos de
índice antes de que comience la primera entrada con una nueva letra.
</para>

</sect2>
<sect2 label="25.2.2" id="_005cindex">
<title><literal>\index</literal></title>

<indexterm role="cp"><primary>Entrada de índice</primary></indexterm>
<indexterm role="fn"><primary>\index</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\index{<replaceable>index-entry-string</replaceable>}
</screen>
<para>Declara  una   entrada  en   el  índice.    Este  comando   es  frágil
(véase <link linkend="_005cprotect">\protect</link>).
</para>
<para>Por ejemplo, como  se describe en <link linkend="_00cdndices">Índices</link>, una  forma de obtener
un índice de lo que sigue  es compilar el documento con <literal>pdflatex
test</literal>, entonces  procesar las entradas del  índice con <literal>makeindex
test</literal> y luego compilar de nuevo con <literal>pdflatex test</literal>.
</para>
<screen>% file test.tex
  ...
W~Ackermann (1896--1962).\index{Ackermann}
  ...
Ackermann function\index{Ackermann!function}
  ...
rate of growth\index{Ackermann!function!growth rate}
</screen>
<indexterm role="cp"><primary>entradas de índice, subentradas</primary></indexterm>
<para>Las  tres entradas  de  índice  obtendrán un  número  de página,  como
&#8216;<literal>Ackermann,  22</literal>&#8217;.    &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
<literal>\index{Ackermann!function!growth   rate!comparison}</literal>  entonces
<command>makeindex</command>   dice   &#8216;<literal>Escaneando   archivo   de   entrada
test.idx....hecho  (4 entradas  aceptadas, 1  rechazada)</literal>&#8217; y  el cuarto
nivel del índice falla silenciosamente).
</para>
<para>Si    ingresas    un    segundo    <literal>\index</literal>    con    el    mismo
<replaceable>index-entry-string</replaceable>, 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 <literal>como  por Ackermann.\index{Ackermann}</literal> más tarde
en el mismo documento como el anterior dará una entrada de índice como
&#8216;<literal>Ackermann, 22, 151</literal>&#8217;.  Además, puedes introducir las entradas del
índice    en   cualquier    orden,   por    lo   que    la   instancia
<literal>\index{Ackermann!function}</literal>    podría     venir    antes    de
<literal>\index{Ackermann}</literal>.
</para>
<indexterm role="cp"><primary>índice, rango de páginas</primary></indexterm>
<para>Obtiene un rango de páginas en la salida, como &#8216;<literal>Hilbert, 23--27</literal>&#8217;,
como aquí.
</para>
<screen>W~Ackermann (1896--1962).\index{Ackermann}
  ...
D~Hilbert (1862--1943)\index{Ackermann!Hilbert|(}
  ...
Desaprobado de su matrimonio.\index{Ackermann!Hilbert|)}
</screen>
<para>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.
</para>
<para>Si  indexas  subentradas  pero  no una  entrada  principal,  como  con
<literal>\index{Jones!program}</literal>    e    <literal>\index{Jones!results}</literal>,
entonces el resultado  es el elemento &#8216;<literal>Jones</literal>&#8217; sin  coma ni número
de página,  seguido de  dos subelementos,  como &#8216;<literal>programa,  50</literal>&#8217; y
&#8216;<literal>resultados, 51</literal>&#8217;.
</para>
<indexterm role="cp"><primary>ve y ve también entradas de índice</primary></indexterm>
<indexterm role="cp"><primary>entradas de índice, &#8216;ve&#8217; y &#8216;ve también&#8217;</primary></indexterm>
<indexterm role="fn"><primary>\seename</primary></indexterm>
<indexterm role="fn"><primary>\alsoname</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>babel</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>babel</literal> package</primary></indexterm>
<indexterm role="cp"><primary>package, <literal>polyglossia</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>polyglossia</literal> package</primary></indexterm>


<para>Genera una entrada de índice que  diga &#8216;<literal>ve</literal>&#8217; usando un carácter de
barra     vertical:    <literal>\index{Ackermann!function|see{P\'eter's
function}}</literal>.   En su  lugar,  puedes obtener  &#8216;<literal>ve también</literal>&#8217;  con
<literal>seealso</literal>.  (El texto &#8216;<literal>ve</literal>&#8217; está definido por <literal>\seename</literal>
y  &#8216;<literal>ve  también</literal>&#8217;  por  <literal>\alsoname</literal>.   Los  puedes  redefinir
utilizando un  paquete de internacionalización como  <literal>babel</literal> o
<literal>polyglossia</literal>,       o       directamente       como       con
<literal>\renewcommand{\alsoname}{Ve también}</literal>).
</para>
<para>La  característica  &#8216;<literal>see</literal>&#8217;  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  <literal>\index{group|textit}</literal>
(ten  en   cuenta  la  barra   invertida  que  falta  en   el  comando
<literal>\textit</literal>) y el sistema aplicará ese comando al número de página,
aquí dando algo como  <literal>\textit{7}</literal>.  Puedes definir tus propios
comandos        de        una         sola        entrada,        como
<literal>\newcommand{\definedpage}[1]{{\color{blue}#1}}</literal>        y
entonces   <literal>\index{Ackermann!function|definedpage}</literal>   dará   un
número de página azul  (véase <link linkend="Color">Color</link>).  Otro ejemplo, menos práctico,
es este,
</para>
<!-- crédito Ian Thompson https://tex.stackexchange.com/a/272572/121234 -->
<screen>\newcommand\indexownpage[1]{#1, \thepage}
  ... Epimenides.\index{self-reference|indexownpage}
</screen>
<para>que crea una entrada citando el número de página de su propia lista de
índice.
</para>
<para>Las dos funciones recién descritas se combinan, como aquí
</para>
<screen>\index{Ackermann!function|(definedpage}
  ...
\index{Ackermann!function|)}
</screen>
<para>que genera  una entrada de  índice como &#8216;<literal>function,  23--27</literal>&#8217; donde
los números del rango de páginas están en azul.
</para>
<para>Considera  una entrada  de índice  como &#8216;<literal>&#x03B1;-ring</literal>&#8217;.
Entrado como  <literal>$\alpha$-ring</literal> hará que se  ordene alfabéticamente
según el  signo de dolar.  En su lugar,  lo puedes ingresar  usando un
signo de arroba,  como <literal>\index{alpha-ring@$\alpha$-ring}</literal>.  Si
especificas una entrada con un signo de arroba que separa dos cadenas,
<literal><replaceable>pos</replaceable>@<replaceable>text</replaceable></literal>,  entonces   <replaceable>pos</replaceable>  da   la  posición
alfabética de  la entrada mientras  <replaceable>text</replaceable> produce el texto  de la
entrada.    Otro   ejemplo   es  que   <literal>\index{Saint   Michael's
College@SMC}</literal>  produce una  entrada  de índice  &#8216;<literal>SMC</literal>&#8217; en  orden
alfabético  en  una  ubicación  diferente a  su  ortografía  lo  daría
naturalmente.
</para>
<para>Para poner un carácter <literal>!</literal>, <literal>@</literal>, <literal>|</literal> o <literal>&quot;</literal> en una
entrada  de  índice, escápala  precediéndola  con  una comilla  doble,
<literal>&quot;</literal>.    (Las   comillas   dobles   se  eliminan   antes   de   la
alfabetización).
</para>
<indexterm role="cp"><primary>package, <literal>index</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>index</literal> package</primary></indexterm>
<para>Varios  paquetes   en  CTAN   tienen  funcionalidad
adicional más allá de eso proporcionada por <literal>makeidx</literal>.  Uno es
<literal>index</literal>, que  permite múltiples índices y  contiene un comando
<literal>\index*{<replaceable>index-entry-string</replaceable>}</literal>     que      imprime     el
<replaceable>index-entry-string</replaceable> además de indexarlo.
</para>
<indexterm role="fn"><primary>\indexentry</primary></indexterm>
<indexterm role="cp"><primary>archivo idx</primary></indexterm>
<para>El comando  <literal>\index</literal> escribe la  información de indexación  en el
archivo  <filename><replaceable>root-name</replaceable>.idx</filename>.   Específicamente, escribe  texto
del                                                            comando
<literal>\indexentry{<replaceable>index-entry-string</replaceable>}{<replaceable>page-num</replaceable>}</literal>,
donde <replaceable>page-num</replaceable> es el valor del contador <literal>\thepage</literal>.  Alguna
ocasión,  cuando  el  comando <literal>\printindex</literal>  se  confunde,  debes
eliminar este archivo para comenzar con una pizarra nueva.
</para>
<para>Si  omites la  llave de  cierre de  un comando  <literal>\index</literal> entonces
obtienes un mensaje como este.
</para>
<screen>¿Argumento fugitivo?  {Ackermann!function
!  ! El párrafo terminó antes de que \@wrindex se completara.
</screen>

</sect2>
<sect2 label="25.2.3" id="makeindex">
<title><command>makeindex</command></title>

<indexterm role="cp"><primary>índice, procesamiento</primary></indexterm>
<indexterm role="fn"><primary>makeindex, programa</primary></indexterm>
<indexterm role="cp"><primary><command>makeindex</command> programa</primary></indexterm>
<indexterm role="cp"><primary>archivo <filename>.ind</filename></primary></indexterm>
<indexterm role="cp"><primary>archivo <filename>.idx</filename></primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>makeindex <replaceable>filename</replaceable>
makeindex -s <replaceable>style-file</replaceable> <replaceable>filename</replaceable>
makeindex <replaceable>options</replaceable> <replaceable>filename0</replaceable> ...
</screen>
<para>Ordenar y  procesar la información  del índice en el  archivo auxiliar
<replaceable>filename</replaceable>.   Este  es  un  programa de  línea  de  comandos.   Se
necesita  uno  o  más  archivos   de  índice  sin  procesar,  archivos
<filename><replaceable>filename</replaceable>.idx</filename>  y produce  el  archivo de  índice real,  el
archivo   <filename><replaceable>filename</replaceable>.ind</filename>  que   ingresa  <literal>\printindex</literal>
(véase <link linkend="_005cprintindex">\printindex</link>).
</para>
<indexterm role="cp"><primary>archivo <filename>.isty</filename></primary></indexterm>
<indexterm role="fn"><primary>índice, archivo de estilo</primary></indexterm>
<indexterm role="fn"><primary>makeindex, archivo de estilo</primary></indexterm>
<para>La  primera forma  del  comando  es suficiente  para  muchos usos,  La
segunda permite formatear  el índice usando un  <firstterm>archivo de estilo
de  índice</firstterm>, un  archivo <filename>.isty</filename>.   La  tercera forma  es la  más
general; ve la documentación completa en CTAN.
</para>
<para>Este es un simple archivo <filename>.isty</filename>.
</para>
<screen>% book.isty
%   $ makeindex -s book.isty -p odd book.idx
% crea el índice como book.ind, comenzando en una página impar.
preamble
&quot;\\pagestyle{empty}
\\small
\\begin{theindex}
\\thispagestyle{empty}&quot;

postamble
&quot;\n
\\end{theindex}&quot;
</screen>
<para>La descripción  aquí cubre  solo algunos de  los posibles  formatos de
índice en <replaceable>style-file</replaceable>. Para  obtener una lista completa, consulta
la documentación en CTAN.
</para>
<para>Un archivo de  estilo consta de una lista de  pares: <replaceable>specifier</replaceable> y
<replaceable>attribute</replaceable>.   Estos pueden  aparecer en  el archivo  en cualquier
orden.   Todos  los <replaceable>attribute</replaceable>s  son  cadenas,  excepto donde  se
indique.   Las  cadenas  son  entre comillas  dobles,  <literal>&quot;</literal>  y  la
longitud máxima de  una cadena tiene 144 caracteres.   La <literal>\n</literal> es
para una nueva  línea y <literal>\t</literal> es para una  tabulación.  Las barras
invertidas se  escapan con  otra barra  invertida, <literal>\\</literal>.   Si una
línea comienza  con un signo  de porcentaje, <literal>%</literal>, entonces  es un
comentario.
</para>
<variablelist><anchor id="makeindex-pre_00e1mbulo"/><varlistentry><term><indexterm role="fn"><primary>preamble</primary></indexterm><literal>preamble</literal>
</term><listitem><para>Preámbulo del  archivo de índice de  salida. Define el contexto  en el
que    se   encuentra    el   índice    formateado.    Predeterminado:
<literal>&quot;\\begin{theindex}\n&quot;</literal>.
</para>
<anchor id="makeindex-postamble"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>postamble</primary></indexterm><literal>postamble</literal>
</term><listitem><para>Postámbulo   del  archivo   de  salida   del  índice   Predeterminado:
<literal>&quot;\n\n\\end{theindex}\n&quot;</literal>.
</para>
<anchor id="makeindex-group-skip"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>group_skip</primary></indexterm><literal>group_skip</literal>
</term><listitem><indexterm role="fn"><primary>\indexspace</primary></indexterm>
<para>Tradicionalmente,  los  elementos del  índice  se  dividen en  grupos,
generalmente  un  grupo  para  entradas que  comienzan  con  la  letra
&#8216;<literal>a</literal>&#8217;, etc. Este especificador da lo que se inserta cuando comienza
un   nuevo   grupo.   Predeterminado:   <literal>&quot;\n\n   \\indexspace\n&quot;</literal>
(<literal>\indexspace</literal> es  un comando que inserta  una longitud elástica,
de manera predeterminada es <literal>10pt plus5pt minus3pt</literal>).
</para>
<anchor id="makeindex-letheadflag"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>lethead_flag</primary></indexterm><literal>lethead_flag</literal>
</term><listitem><para>un entero.  Rige lo que se inserta para un nuevo grupo o letra.  Si es
0   (que   es   el    valor   predeterminado)   entonces   aparte   de
<literal>group_skip</literal> nada  se insertará antes  del grupo. Si  es positivo
entonces   en    una   nueva   letra   el    <literal>lethead_prefix</literal>   y
<literal>lethead_suffix</literal>  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&#160;0.
</para>
<anchor id="makeindex-lethead-prefix"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>lethead_prefix</primary></indexterm><literal>lethead_prefix</literal>
</term><listitem><para>Si un nuevo  grupo comienza con una letra diferente,  entonces este es
el  prefijo  insertado  antes  de   la  nueva  letra  del  encabezado.
Predeterminado: <literal>&quot;&quot;</literal>
</para>
<anchor id="makeindex-lethead-suffix"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>lethead_suffix</primary></indexterm><literal>lethead_suffix</literal>
</term><listitem><para>Si un  grupo comienza  con una  letra diferente,  entonces este  es el
sufijo   insertado   después   del    nuevo   encabezado   de   carta.
Predeterminado: <literal>&quot;&quot;</literal>.
</para>
<anchor id="makeindex-item-0"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_0</primary></indexterm><literal>item_0</literal>
</term><listitem><para>Lo  que se  pone  entre dos  elementos level&#160;0.   Predeterminado:
<literal>&quot;\n \\item &quot;</literal>.
</para>
<anchor id="makeindex-item-1"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_1</primary></indexterm><literal>item_1</literal>
</term><listitem><para>Colocar entre  dos elementos level&#160;1.   Predeterminado: <literal>&quot;\n
\\subitem &quot;</literal>.
</para>
<anchor id="makeindex-item-2"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_2</primary></indexterm><literal>item_2</literal>
</term><listitem><para>Coloca  entre dos  elementos level&#160;2.   Predeterminado: <literal>&quot;\n
\\subsubitem &quot;</literal>.
</para>
<anchor id="makeindex-item-01"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_01</primary></indexterm><literal>item_01</literal>
</term><listitem><para>Lo  que  se  coloca  entre  un elemento  level&#160;0  y  un  elemento
level&#160;1.  Predeterminado: <literal>&quot;\n \\subitem &quot;</literal>.
</para>
<anchor id="makeindex-item-x1"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_x1</primary></indexterm><literal>item_x1</literal>
</term><listitem><para>Que  se   coloca  entre  un   elemento  level&#160;0  y   un  elemento
level&#160;1  en el  caso de  que  el elemento  level&#160;0 no  tenga
ningún  número de  página  (como en  <literal>\index{aaa|see{bbb}}</literal>).
Predeterminado: <literal>&quot;\n \\subitem &quot;</literal>.
</para>
<anchor id="makeindex-item-12"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_12</primary></indexterm><literal>item_12</literal>
</term><listitem><para>Lo  que  se  coloca  entre  un elemento  level&#160;1  y  un  elemento
level&#160;2.  Predeterminado: <literal>&quot;\n \\subsubitem &quot;</literal>.
</para>
<anchor id="makeindex-item-x2"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>item_x2</primary></indexterm><literal>item_x2</literal>
</term><listitem><para>Que se pone entre un elemento level&#160;1 y un elemento level&#160;2,
si   el   level&#160;1   elemento   no  tiene   números   de   página.
Predeterminado: <literal>&quot;\n \\subsubitem &quot;</literal>.
</para>
<anchor id="makeindex-delim-0"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>delim_0</primary></indexterm><literal>delim_0</literal>
</term><listitem><para>Delimitador puesto entre una clave  level&#160;0 y su primer número de
página.  Predeterminado: una  coma seguida  de un  espacio en  blanco,
<literal>&quot;, &quot;</literal>.
</para>
<anchor id="makeindex-delim-1"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>delim_1</primary></indexterm><literal>delim_1</literal>
</term><listitem><para>Delimitador puesto entre una clave  level&#160;1 y su primer número de
página.  Predeterminado: una  coma seguida  de un  espacio en  blanco,
<literal>&quot;, &quot;</literal>.
</para>
<anchor id="makeindex-delim-2"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>delim_2</primary></indexterm><literal>delim_2</literal>
</term><listitem><para>Delimitador  entre  una  clave  level&#160;2 y  su  primer  número  de
página. Predeterminado:   una coma  seguida de  un espacio  en blanco,
<literal>&quot;, &quot;</literal>.
</para>
<anchor id="makeindex-delim-n"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>delim_n</primary></indexterm><literal>delim_n</literal>
</term><listitem><para>Delimitador  entre dos  números  de  página para  la  misma clave  (en
cualquier nivel).  Predeterminado: una coma  seguida de un  espacio en
blanco, <literal>&quot;, &quot;</literal>.
</para>
<anchor id="makeindex-delim-r"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>delim_r</primary></indexterm><literal>delim_r</literal>
</term><listitem><para>Lo que  se coloca entre  los números de página  inicial y final  de un
rango.  Predeterminado: <literal>&quot;--&quot;</literal>.
</para>
<anchor id="makeindex-line-max"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>line_max</primary></indexterm><literal>line_max</literal>
</term><listitem><para>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:
<literal>72</literal>.
</para>
<anchor id="makeindex-indent-space"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>indent_space</primary></indexterm><literal>indent_space</literal>
</term><listitem><para>Lo que se inserta al  comienzo de una línea envuelta.  Predeterminado:
<literal>&quot;\t\t&quot;</literal>.
</para>
<anchor id="makeindex-indent-length"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>indent_length</primary></indexterm><literal>indent_length</literal>
</term><listitem><para>Un número.  La longitud de la  sangría de la línea envuelta.  El valor
predefinido <literal>indent_space</literal> son dos tabulaciones y cada tabulación
tiene ocho  espacios, por lo  que el  el valor predeterminado  aquí es
<literal>16</literal>.
</para>
<anchor id="makeindex-page-precedence"/></listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>page_precedence</primary></indexterm><literal>page_precedence</literal>
</term><listitem><para>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  <command>makeindex</command>  admite   cinco  tipos
diferentes de números: minúsculas romanas  <literal>r</literal> y numérico o árabe
<literal>n</literal> y minúsculas alfabético <literal>a</literal> y mayúsculas <literal>R</literal> romano
y <literal>A</literal> alfabético en mayúsculas.  Predeterminado:  <literal>&quot;rnaRA&quot;</literal>.
</para>
</listitem></varlistentry></variablelist>
<indexterm role="fn"><primary>xindy programa</primary></indexterm>
<para>Hay  una   serie  de  otros   programas  que  hacen  el   trabajo  que
<command>makeindex</command>       hace.      Uno       es      <command>xindy</command>
(<ulink url="https://ctan.org/pkg/xindy">https://ctan.org/pkg/xindy</ulink>),  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.
</para>
<indexterm role="fn"><primary>xindex programa</primary></indexterm>
<para>Un  programa de  indexación  más reciente  compatible  con Unicode  es
<literal>xindex</literal>, escrito en Lua (<ulink url="https://ctan.org/pkg/xindex">https://ctan.org/pkg/xindex</ulink>).
</para>

</sect2>
<sect2 label="25.2.4" id="_005cprintindex">
<title><command>\printindex</command></title>

<indexterm role="cp"><primary>índice, impresión</primary></indexterm>
<indexterm role="fn"><primary>\printindex</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\printindex
</screen>
<para>Coloca el índice en la salida.
</para>
<indexterm role="cp"><primary>package, <literal>makeidx</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>makeidx</literal> package</primary></indexterm>
<para>Para  obtener  un índice,  primero  debes  incluir
<literal>\usepackage{makeidx}\makeindex</literal> en el  preámbulo del documento
y  compila  el documento,  entonces  ejecuta  el comando  del  sistema
<command>makeindex</command>,  y   luego  vuelve   a  compilar   el  documento.
Véase <link linkend="_00cdndices">Índices</link>,  para   más  discusión  y   un  ejemplo  del   uso  de
<literal>\printindex</literal>.
</para>

</sect2>
</sect1>
<sect1 label="25.3" id="Glosarios">
<title>Glosarios</title>

<indexterm role="cp"><primary>glosario</primary></indexterm>
<indexterm role="cp"><primary>glosarios</primary></indexterm>
<indexterm role="cp"><primary>acrónimos, lista de</primary></indexterm>
<indexterm role="fn"><primary>\makeglossary</primary></indexterm>
<indexterm role="fn"><primary>\printglossaries</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\usepackage{glossaries} \makeglossaries
  ...
\newglossaryentry{<replaceable>label</replaceable>}{<replaceable>settings</replaceable>}
  ...
\gls{<replaceable>label</replaceable>}.
  ...
\printglossaries
</screen>
<para>El  paquete <filename>glossaries</filename>  te permite  crear glosarios,  incluidos
múltiples glosarios, así como listas de siglas.
</para>
<para>Para obtener el  resultado de este ejemplo, compila  el documento (por
ejemplo con  <literal>nombre de  archivo pdflatex</literal>), entonces  ejecuta el
comando de  línea de  comandos <literal>makeglossaries filename</literal>  y luego
vuelve a compilar el documento.
</para>
<screen>\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}
</screen>
<para>Eso da dos  cosas.  En el texto principal  genera &#8216;<literal>... definición
de una máquina  de Turing</literal>&#8217;.  Además, en una  unidad seccional separada
encabezada &#8216;<literal>Glossary</literal>&#8217; aparece una lista de descripción.  En letra
negrita dice &#8216;<literal>Máquina de Turing</literal>&#8217; y  el resto del artículo dice en
tipo normal &#8216;<literal>Un modelo de máquina &#8230; Informática</literal>&#8217;.
</para>
<indexterm role="fn"><primary>\makeglossary</primary></indexterm>
<indexterm role="fn"><primary>\printglossaries</primary></indexterm>
<indexterm role="cp"><primary>archivo <filename>.glo</filename></primary></indexterm>
<para>El  comando  <literal>\makeglossary</literal> abre  el  archivo  que contendrá  la
información  de entrada,  <filename><replaceable>root-file</replaceable>.glo</filename>.  Pon  el comando
<literal>\printglossaries</literal> donde deseas que aparezcan los glosarios en tu
documento.
</para>
<para>El paquete <filename>glossaries</filename> es muy poderoso.  Por ejemplo, además los
comandos   <literal>\newglossaryentry</literal>   y  <literal>\gls</literal>,   hay   comandos
similares para una lista de  acrónimos.  Consulta la documentación del
paquete en CTAN.
</para>


<sect2 label="25.3.1" id="_005cnewglossaryentry">
<title><literal>\newglossaryentry</literal></title>

<indexterm role="cp"><primary>glosario, entradas</primary></indexterm>
<indexterm role="fn"><primary>\newglossaryentry</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\newglossaryentry{<replaceable>label</replaceable>}
{
  name={<replaceable>name</replaceable>},
  description={<replaceable>description</replaceable>},
  <replaceable>otras opciones</replaceable>, ...
}
</screen>
<para>o
</para>
<screen>\longnewglossaryentry{<replaceable>label</replaceable>}
{
  name={<replaceable>name</replaceable>},
  <replaceable>other options</replaceable> ...,
}
{<replaceable>description</replaceable>}
</screen>
<para>Declara  una nueva  entrada para  un glosario.   <replaceable>label</replaceable> debe  ser
único  para el  documento.  Los  ajustes asociados  a la  etiqueta son
pares:  <literal><replaceable>key</replaceable>=<replaceable>value</replaceable></literal>.
</para>
<para>Esto pone el símbolo en negrita  de la pizarra para los números reales
&#x211D;, en el glosario.
</para>
<screen>\newglossaryentry{R}
{
  name={\ensuremath{\mathbb{R}}},
  description={los números reales},
}
</screen>
<para>Usa la segunda forma del comando si <replaceable>description</replaceable> abarca más de un
párrafo.
</para>
<para>Para   obtener  una   lista   completa  de   <replaceable>key</replaceable>,  consulta   la
documentación del paquete en CTAN, pero aquí hay algunos.
</para>
<variablelist><varlistentry><term><indexterm role="fn"><primary>name</primary></indexterm><literal>name</literal>
</term><listitem><para>(Obligatorio). La palabra, frase o símbolo que estás definiendo.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>description</primary></indexterm><literal>description</literal>
</term><listitem><para>(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.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>plural</primary></indexterm><literal>plural</literal>
</term><listitem><para>La forma  plural de  <replaceable>name</replaceable>.  Refiérete a  la forma  plural usando
<literal>\glspl</literal> o <literal>\Glspl</literal> (véase <link linkend="_005cgls">\gls</link>).
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>sort</primary></indexterm><literal>sort</literal>
</term><listitem><para>Cómo colocar  esta entrada  en la  lista de  entradas que  contiene el
glosario.
</para>
</listitem></varlistentry><varlistentry><term><indexterm role="fn"><primary>symbol</primary></indexterm><literal>symbol</literal>
</term><listitem><para>Un símbolo, como un símbolo matemático, además del nombre.
</para>
</listitem></varlistentry></variablelist>

</sect2>
<sect2 label="25.3.2" id="_005cgls">
<title><literal>\gls</literal></title>

<indexterm role="cp"><primary>glosario, referencia de entrada</primary></indexterm>
<indexterm role="fn"><primary>\gls</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\gls{<replaceable>label</replaceable>}
\glspl{<replaceable>label</replaceable>}
\Gls{<replaceable>label</replaceable>}
\Glspl{<replaceable>label</replaceable>}
</screen>
<para>Consulta  una entrada  del  glosario.  Las  entradas  se declaran  con
<literal>\newglossaryentry</literal> (véase <link linkend="_005cnewglossaryentry">\newglossaryentry</link>).
</para>
<para>Este
</para>
<screen>\newglossaryentry{N}{%
  name={los números naturales},
  description={Los números $0$, $1$, $2$, $\ldots$\@},
  symbol={\ensuremath{\mathbb{N}}},
  }
  ...
Considera \gls{N}.
</screen>
<para>da la salida &#8216;<literal>Considera los números naturales</literal>&#8217;.
</para>
<para>La segunda  forma de  comando <literal>\glspl{<replaceable>label</replaceable>}</literal>  produce el
plural  de <replaceable>name</replaceable>  (de manera  predeterminada intenta  agregar una
&#8216;<literal>s</literal>&#8217;).  La tercera forma escribe  en mayúscula la primera letra de
<replaceable>name</replaceable>, al igual que la cuarta forma, que también toma el plural.
</para>

</sect2>
</sect1>
</chapter>
<chapter label="26" id="Cartas">
<title>Cartas</title>

<indexterm role="cp"><primary>cartas, escribir</primary></indexterm>
<indexterm role="cp"><primary>escribir cartas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\documentclass{letter}
\address{<replaceable>dirección del remitente</replaceable>} % dirección de retorno
\signature{<replaceable>nombre del remitente</replaceable>}
\begin{document}
\begin{letter}{<replaceable>dirección del destinatario</replaceable>}
\opening{<replaceable>salutation</replaceable>}
   <replaceable>cuerpo de la carta</replaceable>
\closing{<replaceable>texto de cierre</replaceable>}
\end{letter}
    ...
\end{document}
</screen>
<para>Producir una o más cartas.
</para>
<para>Cada carta está  en un entorno <literal>letter</literal>  separado, cuyo argumento
<replaceable>recipient address</replaceable> a menudo  contiene varias líneas separadas por
una  barra invertida  doble,&#160;(<literal>\\</literal>).   Por ejemplo,  podrías
tener:
</para>
<screen> \begin{letter}{Ninon de l'Enclos \\
                l'h\^otel Sagonne}
   ...
 \end{letter}
</screen>
<para>El inicio del  entorno <literal>letter</literal> restablece el número  de página a
1, y la nota al pie al número 1 también.
</para>
<para>El <replaceable>sender  address</replaceable> y <replaceable>sender  name</replaceable> 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
<replaceable>sender address</replaceable>  contiene varias  líneas separadas por  una doble
barra  invertida&#160;(<literal>\\</literal>).   &latex;  pondrá  el  <replaceable>sender
name</replaceable>  bajo  el   cerramiento,  tras  un  espacio   vertical  para  la
tradicional firma manuscrita.
</para>
<para>Cada  cuerpo  del  entorno   <literal>letter</literal>  comienza  con  un  comando
<literal>\opening</literal>  requerido  como   <literal>\opening{Estimada  señora  o
señor:}</literal>.  El texto  <replaceable>letter body</replaceable> &latex; es normal  por lo que
puede  contener  todo,  desde   listas  enumeradas  hasta  matemáticas
mostradas, excepto que los comandos como <literal>\chapter</literal> que no tienen
sentido  en  una   carta  se  desactivan.   Cada   cuerpo  de  entorno
<literal>letter</literal> normalmente termina con  un comando <literal>\closing</literal> como
<literal>\closing{Tuyo,}</literal>.
</para>
<indexterm role="fn"><primary>\\ (para cartas)</primary></indexterm>
<para>Puede haber  material adicional  después del  <literal>\closing</literal>.  Puedes
decir quien está recibiendo una copia  de la carta con un comando como
<literal>\cc{El  Jefe   \\  el  jefe   de  jefes}</literal>.   Hay   un  comando
<literal>\encl</literal> similar  para una  lista de  material adjunto.   Y puedes
agregar una posdata con <literal>\ps</literal>.
</para>
<para>El valor predeterminado de &latex; es sangrar el nombre del remitente
y el cierre encima de  él por una longitud de <literal>\longindentation</literal>.
De manera predeterminada esto es <literal>0.5\textwidth</literal>. Para que queden
alineados           a          la           izquierda,          coloca
<literal>\setlength{\longindentation}{0em}</literal> en tu preámbulo.
</para>
<para>Para     establecer    una     fecha    fija,     usa    algo     como
<literal>\renewcommand{\today}{1958-Oct-12}</literal>.    Si   pones   en   tu
preámbulo entonces se aplicará a todas las cartas.
</para>
<para>Este ejemplo muestra  solo un entorno <literal>letter</literal>.   Las tres lineas
marcadas como opcionales normalmente se omiten.
</para>
<screen>\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}
</screen>
<para>Estos comandos se usan con la clase <literal>letter</literal>.
</para>


<sect1 label="26.1" id="_005caddress">
<title><literal>\address</literal></title>

<indexterm role="fn"><primary>\address</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\address{<replaceable>dirección del remitente</replaceable>}
</screen>
<para>Especifica la dirección del remitente, tal  como aparece en la carta y
en el  sobre.  Separa varias  líneas en <replaceable>dirección  del remitente</replaceable>
con una barra invertida doble&#160;<literal>\\</literal>.
</para>
<para>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 <literal>letter</literal> individual.
</para>
<para>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  <literal>\address</literal>
entonces tienes el formato de una carta personal.
</para>
<para>Aquí tienes un ejemplo:
</para>
<screen>\address{Stephen Maturin \\
         Las uvas de Savoy}
</screen>

</sect1>
<sect1 label="26.2" id="_005ccc">
<title><literal>\cc</literal></title>

<indexterm role="fn"><primary>\cc</primary></indexterm>
<indexterm role="cp"><primary>cc list, en cartas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\cc{<replaceable>name0</replaceable> \\
     ... }
</screen>
<para>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
<literal>\closing</literal>.  Pone  los nombres en diferentes  líneas separándolos
con una barra invertida doble, <literal>\\</literal>, como en:
</para>
<screen>\cc{Presidente \\
    Vicepresidente}
</screen>

</sect1>
<sect1 label="26.3" id="_005cclosing">
<title><literal>\closing</literal></title>

<indexterm role="fn"><primary>\closing</primary></indexterm>
<indexterm role="cp"><primary>cartas, terminando</primary></indexterm>
<indexterm role="cp"><primary>cerrar cartas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\closing{<replaceable>text</replaceable>}
</screen>
<para>Produce  el cierre  de la  carta.   Esto es  opcional, pero  habitual.
Aparece al  final de una carta,  encima de una firma  manuscrita.  Por
ejemplo:
</para>
<screen>\closing{Respetuosamente,}
</screen>

</sect1>
<sect1 label="26.4" id="_005cencl">
<title><literal>\encl</literal></title>

<indexterm role="fn"><primary>\encl</primary></indexterm>
<indexterm role="cp"><primary>Lista de gabinetes</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\encl{<replaceable>primer objeto encerrado</replaceable> \\
        ... }
</screen>
<para>Produce una lista de las cosas  incluidas en la carta. Este comando es
opcional;   cuando  se   usa,  generalmente   se  coloca   después  de
<literal>\closing</literal>.  Separa varias líneas  con una barra invertida doble,
<literal>\\</literal>.
</para>
<screen>\encl{License \\
      Passport}
</screen>

</sect1>
<sect1 label="26.5" id="_005clocation">
<title><literal>\location</literal></title>

<indexterm role="fn"><primary>\location</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\location{<replaceable>text</replaceable>}
</screen>
<para>El  <replaceable>text</replaceable> aparece  centrado en  la parte  inferior de  la página.
Sólo aparece si el estilo de la página es <literal>firstpage</literal>.
</para>

</sect1>
<sect1 label="26.6" id="_005cmakelabels">
<title><literal>\makelabels</literal></title>

<indexterm role="fn"><primary>\makelabels</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\makelabels   % en el preámbulo
</screen>
<para>Opcional, para  un documento que contiene  entornos <literal>letter</literal>.  Si
simplemente pones <literal>\makelabels</literal> 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.
</para>
<para>Personaliza     las     etiquetas    redefiniendo     los     comandos
<literal>\startlabels</literal>, <literal>\mlabel</literal> y  <literal>\returnaddress</literal> (y quizás
<literal>\name</literal>)  en   el  preámbulo.   El   comando  <literal>\startlabels</literal>
establece el ancho, alto, número de columnas, etc., de la página en la
que se imprimen las  etiquetas.  El comando <literal>\mlabel{<replaceable>return
address</replaceable>}{<replaceable>recipient  address</replaceable>}</literal> produce  las dos  etiquetas (o
una,  si eliges  ignorar la  <replaceable>return address</replaceable>)  para cada  entorno
<replaceable>letter</replaceable>. El  primer argumento, <replaceable>return address</replaceable>,  es el valor
devuelto por  la macro  <literal>\returnaddress</literal>.  El  segundo argumento,
<replaceable>recipient address</replaceable>, es el valor pasado en el argumento al entorno
<literal>letter</literal>.    Predeterminado  <literal>\mlabel</literal>   ignora  el   primer
argumento,  el  <replaceable>return  address</replaceable>,  provocando  el  comportamiento
predeterminado descrito en el párrafo anterior.
</para>
<para>Esto ilustra la personalización.  Su salida incluye una página con dos
columnas con dos etiquetas cada una.
</para>
<screen>\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\&quot;odel \\
               145 Linden Lane \\
               Princeton, New Jersey, USA 08540}
  ...
\end{letter}
\end{document}
</screen>
<para>La primera columna contiene la  dirección del remitente dos veces.  La
segunda columna contiene la dirección de cada destinatario.
</para>
<indexterm role="cp"><primary>package, <literal>envlab</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>envlab</literal> package</primary></indexterm>
<para>El paquete <literal>envlab</literal>  facilita el formateo de
las etiquetas, con tamaños estándar ya proporcionados.  Las líneas del
preámbulo       <literal>\usepackage[personalenvelope]{envlab}</literal>       y
<literal>\makelabels</literal> son todo lo que necesitas para imprimir sobres.
</para>

</sect1>
<sect1 label="26.7" id="_005cname">
<title><literal>\name</literal></title>

<indexterm role="fn"><primary>\name</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\name{<replaceable>name</replaceable>}
</screen>
<para>Opcional.  Nombre del remitente, utilizado  para imprimir juntos en el
sobre con la dirección del remitente.
</para>

</sect1>
<sect1 label="26.8" id="_005copening">
<title><literal>\opening</literal></title>

<indexterm role="fn"><primary>\opening</primary></indexterm>
<indexterm role="cp"><primary>cartas, iniciar</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\opening{<replaceable>salutation</replaceable>}
</screen>
<para>Obligatorio.  Requerido.  Sigue el  <literal>\begin{letter}{...}</literal>. El
argumento <replaceable>salutation</replaceable> es obligatorio.  Por ejemplo:
</para>
<screen>\opening{Estimado John:}
</screen>

</sect1>
<sect1 label="26.9" id="_005cps">
<title><literal>\ps</literal></title>
<indexterm role="fn"><primary>\ps</primary></indexterm>
<indexterm role="cp"><primary>posdata, en cartas</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\ps{<replaceable>text</replaceable>}
</screen>
<para>Agrega una  posdata.  Este comando  es opcional y generalmente  se usa
después de <literal>\closing</literal>.
</para>
<screen>\ps{P.D. Después de haber leído esta carta, quémala. O cómetela.}
</screen>

</sect1>
<sect1 label="26.10" id="_005csignature">
<title><literal>\signature</literal></title>

<para>Sinopsis:
</para>
<screen>\signature{<replaceable>primera línea</replaceable> \\
            ... }
</screen>
<indexterm role="fn"><primary>\signature</primary></indexterm>

<para>El  nombre  del  remitente.   Este  comando  es  opcional,  aunque  su
inclusión es habitual.
</para>
<para>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,&#160;<literal>\\</literal>.  Por ejemplo:
</para>
<screen>\signature{J Fred Muggs \\
           Casa Blanca}
</screen>
<para>Valor predeterminado  de &latex; para  el espacio vertical  del texto
<literal>\closing</literal>     hasta     el    texto     <literal>\signature</literal>     es
<literal>6\medskipamount</literal>, que es seis veces <literal>\medskipamount</literal> (donde
<literal>\medskipamount</literal> es igual  a un <literal>\parskip</literal>, que a  su vez se
define de manera predeterminada aquí para 0.7em).
</para>
<para>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  <literal>letter</literal>   y   antes   del
<literal>\closing</literal>.
</para>
<para>Puedes incluir un gráfico en la firma como aquí.
</para>
<screen>\signature{\vspace{-6\medskipamount}\includegraphics{sig.png}\\
             Mi nombre}
</screen>
<para>Para esto  debes poner <literal>\usepackage{graphicx}</literal> en  el preámbulo
(véase <link linkend="Gr_00e1ficos">Gráficos</link>).
</para>

</sect1>
<sect1 label="26.11" id="_005ctelephone">
<title><literal>\telephone</literal></title>

<indexterm role="fn"><primary>\telephone</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\telephone{<replaceable>number</replaceable>}
</screen>
<para>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
<literal>firstpage</literal>  se  selecciona el  estilo  de  página.  Si  es  así,
aparece en la parte inferior derecha de la página.
</para>

</sect1>
</chapter>
<chapter label="27" id="Entrada_002fsalida">
<title>Entrada/salida</title>

<indexterm role="cp"><primary>entrada/salida, a terminal</primary></indexterm>
<indexterm role="cp"><primary>entrada/salida del terminal</primary></indexterm>
<indexterm role="cp"><primary>entrada/salida</primary></indexterm>

<para>&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.
</para>


<sect1 label="27.1" id="_005copenin-y-_005copenout">
<title><literal>\openin</literal> y <literal>\openout</literal></title>

<anchor id="_005copenin"/><anchor id="_005copenout"/><anchor id="_005cclosein"/><anchor id="_005ccloseout"/><indexterm role="fn"><primary>\openin</primary></indexterm>
<indexterm role="fn"><primary>\openout</primary></indexterm>
<indexterm role="fn"><primary>\closein</primary></indexterm>
<indexterm role="fn"><primary>\closeout</primary></indexterm>
<indexterm role="cp"><primary>archivo, abrir</primary></indexterm>
<indexterm role="cp"><primary>archivo, cerrar</primary></indexterm>
<indexterm role="cp"><primary>abre un archivo</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\openin <replaceable>number</replaceable>=<replaceable>filename</replaceable>
</screen>
<para>o:
</para>
<screen>\openout <replaceable>number</replaceable>=<replaceable>filename</replaceable>
</screen>
<para>Abre un archivo  para leer material o para escribirlo.   En la mayoría
de  los motores,  el <replaceable>number</replaceable>  debe estar  entre 0  y 15,  como en
<literal>\openin3</literal>; en  Lua&latex;, <replaceable>number</replaceable>  puede estar entre  0 y
127.
</para>
<para>Aquí &tex; abre el archivo <filename>presidents.tex</filename> para lectura.
</para>
<screen>\newread\presidentsfile
\openin\presidentsfile=presidentes
\typeout{presidentsfile es \el\presidentsfile}
\read\presidentsfile a\presidentline
\typeout{\presidentline}
</screen>
<para>El comando <literal>\newread</literal> asigna números  de flujo de entrada desde 0
a&#160;15     (también      hay     un      <literal>\newwrite</literal>).      El
<literal>\presidentsfile</literal>  es  más memorable,  pero  bajo  el capó  sigue
siendo   un   número;  el   primer   <literal>\typeout</literal>   da  algo   como
&#8216;<literal>presidentsfile  es  1</literal>&#8217;.    Además,  <literal>\newread</literal>  realiza  un
seguimiento de la asignación de modo que si usas demasiados, obtendrás
un error como &#8216;<literal>! No hay espacio para un nuevo \read</literal>&#8217;.  El segundo
<literal>\typeout</literal> da la primera línea del archivo, algo así como &#8216;<literal>1
Washington, George</literal>&#8217;.
</para>
<para>Normalmente,  &tex; no  intentará abrir  el archivo  hasta enviar  la
página  siguiente.  Para  cambiar  esto,  usa  <literal>\immediate\openin
<replaceable>number</replaceable>=<replaceable>filename</replaceable></literal>         o        <literal>\immediate\openout
<replaceable>number</replaceable>=<replaceable>filename</replaceable></literal>.
</para>
<para>Cierra  archivos con  <literal>\closein  <replaceable>number</replaceable></literal> y  <literal>\closeout
<replaceable>number</replaceable></literal>.
</para>
<para>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 <filename>.tex</filename>.  Esto crea <filename>presidents.tex</filename>, escribe una
línea y la cierra.
</para>
<screen>\newwrite\presidentsfile
\openout\presidentsfile=presidentes
\write\presidentsfile{1 Washington, George}
\closeout\presidentsfile
</screen>
<para>Pero los nombres  de archivo con un punto pueden  causar problemas: si
&tex;  encuentra un  <replaceable>filename</replaceable>  de <filename>presidents.dat</filename>  podría
buscar    primero     <filename>presidents.dat.tex</filename>    y    posteriormente
<filename>presidents.dat</filename>, 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>
<para>Para <literal>\openin</literal>, si &tex; no puede encontrar el archivo, entonces
no  da un  error.  Simplemente  considera que  la transmisión  no está
abierta  (prueba esto  con  <literal>\ifeof</literal>; un  recurso  es el  comando
<literal>\InputIfFileExists</literal>,  véase <link linkend="Comandos-class-y-package">Comandos  class  y  package</link>).   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 &#8216;<literal>!   Número incorrecto  (16).  &lt;para leer  de nuevo&gt;  = l.30
\openin16=test.jh</literal>&#8217;.
</para>

</sect1>
<sect1 label="27.2" id="_005cread">
<title><literal>\read</literal></title>

<indexterm role="fn"><primary>\read</primary></indexterm>
<indexterm role="cp"><primary>archivo, leer</primary></indexterm>
<indexterm role="cp"><primary>leer un archivo</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\read <replaceable>number</replaceable> to<replaceable>macro</replaceable>
</screen>
<para>Hace que el comando <replaceable>macro</replaceable> contenga la siguiente línea de entrada
de texto que transmite <replaceable>number</replaceable>, como en <literal>\read5 to\data</literal>.
</para>
<para>Esto abre el archivo <filename>email.tex</filename>  para lectura, pone el contenido
de la  primera línea  en el  comando <literal>\email</literal>  y luego  cierra el
archivo.
</para>
<screen>\newread\recipientfile
\openin\recipientfile=email
\read\recipientfile to\email
\typeout{Email address: \email}
\closein\recipientfile
</screen>
<para>Si  <replaceable>number</replaceable> está  fuera del  rango  de 0  a&#160;15 o  si no  hay
archivo de ese número abierto, o si el archivo ha finalizado, entonces
<literal>\read</literal>  tomará  la  entrada  de  la terminal  (o  saldrá  si  la
interacción  no  está  permitida,  por  ejemplo,  <literal>\nonstopmode</literal>;
véase <link linkend="modos-de-interacci_00f3n">modos  de interacción</link>).   (Sin  embargo, la  forma natural  en
&latex;  de  tomar  entradas  desde  la  terminal  es  <literal>\typein</literal>
(véase <link linkend="_005ctypein">\typein</link>).
</para>
<para>Para  leer un  archivo completo  como fuente  &latex; adicional,  usa
<literal>\input</literal>  (véase <link linkend="_005cinput">\input</link>) o  <literal>\include</literal> (véase <link linkend="_005cinclude-e-_005cincludeonly">\include  e
\includeonly</link>).
</para>
<indexterm role="cp"><primary>package, <literal>datatool</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>datatool</literal> package</primary></indexterm>

<indexterm role="cp"><primary>fusiones de correo</primary></indexterm>
<para>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 <literal>datatool</literal>.
</para>

</sect1>
<sect1 label="27.3" id="_005ctypein">
<title><literal>\typein</literal></title>

<indexterm role="fn"><primary>\typein</primary></indexterm>

<para>Sinopsis, una de:
</para>
<screen>\typein{<replaceable>prompt-msg</replaceable>}
\typein[<replaceable>cmd</replaceable>]{<replaceable>prompt-msg</replaceable>}
</screen>
<para>Imprime <replaceable>prompt-msg</replaceable> 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.
</para>
<para>Por ejemplo, este
</para>
<screen>Mientras  viva,   nunca  olvidaré  \typein{Ingresar  el   nombre  del
                                            estudiante:}
</screen>
<para>junto con esta interacción de la línea de comandos
</para>
<screen>Ingresa el nombre del estudiante:

\@typein=Aphra Behn
</screen>
<para>da la salida &#8216;<literal>... nunca olvides a Aphra Behn</literal>&#8217;.
</para>
<para>La  primera versión  del comando,  <literal>\typein{<replaceable>prompt-msg</replaceable>}</literal>,
provoca  la entrada  que  escribiste  para ser  procesada  como si  se
hubiera  incluido  en el  archivo  de  entrada  en lugar  del  comando
<literal>\typein</literal>
</para>
<para>En   la   segunda  versión   del   comando,   el  argumento   opcional
<literal><replaceable>cmd</replaceable></literal>  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
</para>
<screen>\typein[\student]{Ingresa el nombre del estudiante:}
\typeout{Recomendación para \student .}
</screen>
<para>da esta salida en la línea de comandos,
</para>
<screen>Ingresa el nombre del estudiante:

\student=John Dee
Recomendación para John Dee.
</screen>
<para>donde el usuario ha ingresado &#8216;<literal>John Dee.</literal>&#8217;
</para>

</sect1>
<sect1 label="27.4" id="_005ctypeout">
<title><literal>\typeout</literal></title>

<indexterm role="fn"><primary>\typeout</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\typeout{<replaceable>msg</replaceable>}
</screen>
<para>Imprime <literal>msg</literal> en la terminal y en el archivo <literal>log</literal>.
</para>
<para>Este
</para>
<screen>\newcommand{\student}{John Dee}
\typeout{Recomendación para \student .}
</screen>
<para>genera &#8216;<literal>Recomendación para John Dee</literal>&#8217;.   Como lo que pasa aquí con
<literal>\student</literal>,  comandos que  se  definen  con <literal>\newcommand</literal>  o
<literal>\renewcommand</literal> (entre otros) se  reemplazan por sus definiciones
antes de ser impresos.
</para>
<indexterm role="fn"><primary>\space</primary></indexterm>
<para>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 <literal>msg</literal>.  Utiliza el comando <literal>\space</literal> para obtener
un  solo espacio,  independiente  de los  espacios circundantes.   Usa
<literal>^^J</literal>  para obtener  una  nueva línea.   Obtener  un carácter  de
porcentaje con <literal>\csname @percentchar\endcsname</literal>.
</para>
<para>Este comando puede ser útil para una depuración simple, como aquí:
</para>
<screen>\newlength{\jhlength}
\setlength{\jhlength}{5pt}
\typeout{La longitud es \la\jhlength.}
</screen>
<para>produce en la línea de comandos &#8216;<literal>La longitud es 5.0pt</literal>&#8217;.
</para>

</sect1>
<sect1 label="27.5" id="_005cwrite">
<title><literal>\write</literal></title>

<indexterm role="fn"><primary>\write</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\write <replaceable>number</replaceable>{<replaceable>string</replaceable>}
</screen>
<para>Escribe <replaceable>string</replaceable> en el archivo de registro, en la terminal o en un
archivo  abierto  por  <literal>\openout</literal>.  Por  ejemplo,  <literal>\write6</literal>
escribe en texto corriente el número&#160;6.
</para>
<para>Si aparece lo siguiente  en <filename><replaceable>basefile</replaceable>.tex</filename> entonces se abre
<filename><replaceable>basefile</replaceable>.jh</filename>,  escribe  &#8216;<literal>Hello  World!</literal>&#8217; y  una  nueva
línea y cierra ese archivo.
</para>
<screen>\newwrite\myfile
\immediate\openout\myfile=\jobname.jh  % \jobname is root file basename
...
\immediate\write\myfile{Hello world!}
...
\immediate\closeout\myfile
</screen>
<indexterm role="fn"><primary>\newwrite</primary></indexterm>
<para>El <literal>\newwrite</literal>  asigna un  número de flujo,  dándole un  valor de
nombre   simbólico  para   hacer   la  vida   más   fácil,  para   que
<literal>stream\newwrite\myfile\the\myfile</literal>     produzca    algo     como
&#8216;<literal>stream 3</literal>&#8217;.   Entonces <literal>\openout</literal> asocia el  número de flujo
con   el  nombre   de   archivo  dado.    &tex;  finalmente   ejecutó
<literal>\write3</literal> que pone la cadena en el archivo.
</para>
<indexterm role="cp"><primary>archivo de registro, escribir en</primary></indexterm>
<indexterm role="cp"><primary>terminal, escribir a</primary></indexterm>
<indexterm role="cp"><primary><inlineequation><mathphrase>-1</mathphrase></inlineequation>, escribe el número de flujo</primary></indexterm>
<para>Por  lo   general,  <replaceable>number</replaceable>   está  entre  0   y&#160;15,  porque
normalmente los  autores de &latex;  siguen el ejemplo anterior  y se
asigna el número por el sistema.  Si <replaceable>number</replaceable> está fuera del rango
de 0  a 15  o si  no está  asociado con  un archivo  abierto, &latex;
escribe  <replaceable>string</replaceable>  al archivo  de  registro.   Si <replaceable>number</replaceable>  es
positivo entonces además &latex; escribe <replaceable>string</replaceable> en la terminal.
</para>
<para>Por lo  tanto, <literal>test  \write-1{Hello World!}</literal>  pone &#8216;<literal>Hello
World!</literal>&#8217;  seguido de una nueva línea  en el archivo de registro.  (Esto
es lo que dice el <literal>\wlog</literal>  el comando lo hace; véase <link linkend="_005cwlog">\wlog</link>).  Y
<literal>\write100{Hola  Mundo!}</literal>  pone  lo  mismo  en  el  archivo  de
registro pero  también pone &#8216;<literal>Hello  World!</literal>&#8217; seguido de  una nueva
línea en la salida del terminal.  (Pero  16, 17 y 18 son especial como
<replaceable>number</replaceable>; ve abajo).
</para>
<indexterm role="cp"><primary>Lua&tex;, 256 flujos de salida en</primary></indexterm>
<para>En Lua&tex;, en lugar de 16 flujos de salida, hay 256 (véase <link linkend="Motores-TeX">Motores
&tex;</link>).
</para>
<indexterm role="fn"><primary>\@auxout</primary></indexterm>
<indexterm role="fn"><primary>\@mainaux</primary></indexterm>
<para>Usa <literal>\write\@auxout{<replaceable>string</replaceable>}</literal> para  escribir en el actual
<filename>.aux</filename>, que está asociado con el archivo raíz o con el archivo de
inclusión actual;  y usa  <literal>\write\@mainaux{<replaceable>string</replaceable>}</literal> para
escribir en el <filename>.aux</filename>  principal.  Estos nombres simbólicos están
definidos por &latex;.
</para>
<!-- crédito:                       David                       Carlisle -->
<!-- https://tex.stackexchange.com/a/115933/121234 -->
<para>De manera predeterminada &latex; no escribe <replaceable>string</replaceable> a la derecha
del  arreglo  correcto.  Esto  se  debe  a  que, por  ejemplo,  puedes
necesitar <literal>\write</literal> para guardar el  número de página actual, pero
cuando &tex; encuentra  un <literal>\write</literal> 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 <literal>\write</literal> en uno de tres contextos:
</para>
<screen>\immediate\write\@auxout{<replaceable>string</replaceable>}      %1
\write\@auxout{<replaceable>string</replaceable>}                %2
\protected@write\@auxout{}{<replaceable>string</replaceable>} %3
</screen>
<orderedlist numeration="arabic"><listitem><indexterm role="cp"><primary>inmediato <literal>\write</literal></primary></indexterm>
<indexterm role="fn"><primary>\immediate\write</primary></indexterm>
<para>Con  el   primero,  &latex;   escribe  <replaceable>string</replaceable>  en   el  archivo
inmediatamente.   Cualquier macro  en <replaceable>string</replaceable>  está completamente
expandida (al  igual que en <literal>\edef</literal>),  por lo que para  evitar la
expansión debes usar <literal>\noexpand</literal>,  <literal>toks</literal>, etc., excepto que
debes usar <literal>#</literal> en lugar de <literal>##</literal>).
</para>
</listitem><listitem><indexterm role="cp"><primary><literal>\write</literal> retrasada</primary></indexterm>
<indexterm role="cp"><primary>¿cuál es el elemento?</primary></indexterm>
<indexterm role="fn"><primary>\shipout y expansión</primary></indexterm>
<para>Con el segundo,  <replaceable>string</replaceable> se almacena en la lista  actual de cosas
(como un elemento &tex; &#8220;whatsit&#8221;) y se mantiene hasta que se envía
la página y así mismo las macros se contraen hasta <literal>\shipout</literal>. En
<literal>\shipout</literal>, <replaceable>string</replaceable> está completamente expandido.
</para>
</listitem><listitem><indexterm role="fn"><primary>\protected@write</primary></indexterm>
<para>El tercer,  <literal>\protected@write</literal>, es  como el segundo  excepto que
puedes  usar  <literal>\protect</literal>  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.
</para></listitem></orderedlist>
<para>Como ejemplo simple de  expansión con <literal>\write</literal>, <replaceable>string</replaceable> aquí
contiene una  secuencia de control <literal>\triplex</literal>  que hemos definido
como el texto &#8216;<literal>XYZ</literal>&#8217;:
</para>
<screen>\newwrite\jhfile
\openout\jhfile=test.jh
\newcommand{\triplex}{XYZ}
\write\jhfile{test \triplex test}
</screen>
<para>Esto da como resultado el archivo <filename>test.jh</filename> que contiene el texto
&#8216;<literal>test XYZtest</literal>&#8217; seguido de una nueva línea.
</para>
<indexterm role="cp"><primary><literal>\write</literal> transmisiones 16, 17, 18</primary></indexterm>
<para>Los  casos en  los que  <replaceable>number</replaceable> es  16, 17  o 18  son especiales.
Porque  el comportamiento  de <literal>\write</literal>  cuando <replaceable>number</replaceable>  está
fuera del rango de 0 a 15 descrito anteriormente, en Plain&#160;&tex;
<literal>\write16</literal> y <literal>\write17</literal> 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  <literal>\typeout</literal> (véase <link linkend="_005ctypeout">\typeout</link>).   El
comando  <literal>\write18</literal>  es aún  más  especial;  los sistemas  &tex;
modernos   lo   usan   para   dar   órdenes   al   sistema   operativo
(véase <link linkend="_005cwrite18">\write18</link>).
</para>
<indexterm role="cp"><primary>nueva línea, en <literal>\write</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>^^J</literal>, in <literal>\write</literal></primary></indexterm>
<para>Normalmente, <literal>\write</literal> genera una  sola línea.  Puedes incluir una
nueva línea con <literal>^^J</literal>.  Por lo  tanto, esto produce dos líneas en
el archivo de registro.:
</para>
<screen>\wlog{Las  líneas paralelas  tienen mucho  en común.^^JPero  nunca se
encuentran.}
</screen>
<para>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 <literal>answers</literal>.
</para>


<sect2 label="27.5.1" id="_005cwrite-y-seguridad">
<title><literal>\write</literal> y seguridad</title>

<indexterm role="cp"><primary>seguridad y <literal>\write</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>\write</literal> y seguridad</primary></indexterm>

<para>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.
</para>
<para>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 (véase <link linkend="directorio-de-salida">directorio de
salida</link>), o en un subdirectorio de aquellos. Entonces, este código
</para>
<screen>\newwrite\jhfile
\openout\jhfile=../test.jh
</screen>
<para>da un error como:
</para><screen>No escribir en ../test.jh (openout_any = p).
! No puedes escribir en el archivo `../test.jh'
</screen>
<indexterm role="cp"><primary>directorios principales, no se puede escribir en</primary></indexterm>
<para>Puedes  obtener  un error  de  este  tipo  cuando usas  comandos  como
<literal>\include{../filename}</literal>   porque   &latex;   intentará   abrir
<filename>../filename.aux</filename>.   La  solución  más   sencilla  es  poner  los
archivos incluidos  en el mismo directorio  que el archivo raíz,  o en
subdirectorios.
</para>

</sect2>
<sect2 label="27.5.2" id="_005cmessage">
<title><literal>\message</literal></title>

<indexterm role="fn"><primary>\message</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\message{<replaceable>string</replaceable>}
</screen>
<para>Escribe <replaceable>string</replaceable> en el archivo de registro y en la terminal.
</para>
<para>Por  lo   general,  los  autores  de   &latex;  usan  <literal>\typeout</literal>
(véase <link linkend="_005ctypeout">\typeout</link>). Eso  te permite usar <literal>\protect</literal>  en cualquier
comando    frágil    en   <replaceable>string</replaceable>    (véase <link linkend="_005cprotect">\protect</link>).     Pero
<literal>\typeout</literal>  siempre   inserta  una   nueva  línea  al   final  de
<replaceable>string</replaceable> mientras que <literal>\message</literal> no  lo hace, por lo que este
último puede ser útil.
</para>
<para>Con este cuerpo del documento de ejemplo.
</para>
<screen>antes\message{Uno Dos}\message{Tres}\message{Cuatro^^JI}
\message{declarar una guerra de pulgares.}Después
</screen>
<para>bajo  algunas  circunstancias  (ve  más  abajo)  &latex;  escribe  lo
siguiente para tanto la terminal como el archivo de registro.
</para>
<screen>Uno Dos Tres Cuatro
Declaro una guerra de pulgares.
</screen>
<para>El <literal>^^J</literal>  produce una  nueva línea.  Además,  en el  documento de
salida, entre &#8216;<literal>before</literal>&#8217;  y &#8216;<literal>After</literal>&#8217; será un  solo espacio (del
final de la línea que sigue a &#8216;<literal>I}</literal>&#8217;).
</para>
<para>Si bien <literal>\message</literal> 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  &#8216;<literal>Two</literal>&#8217; se ha
movido, al que se indica arriba.
</para>
<screen>antes de\message{Uno}\message{Dos Tres}\message{Cuatro^^JI}
\message{declara una guerra de pulgares.}Después
</screen>
<para>Esto puede suceder: cuando &latex;  envía los mensajes a la terminal,
ahora el  mensaje con &#8216;<literal>Uno</literal>&#8217;  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 &#8216;<literal>Dos Tres</literal>&#8217;.  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.
</para>

</sect2>
<sect2 label="27.5.3" id="_005cwlog">
<title><literal>\wlog</literal></title>

<indexterm role="fn"><primary>\wlog</primary></indexterm>

<para>Sinopsis:
</para>
<screen>\wlog{<replaceable>string</replaceable>}
</screen>
<para>Escribe <replaceable>string</replaceable> en el archivo de registro.
</para>
<screen>\wlog{¿Escuchaste sobre el matemático que odia los negativos?}
\wlog{No se detendrá ante nada para evitarlo.}
</screen>
<para>Por lo general, <replaceable>string</replaceable> aparece  en una sola línea separada.  Usa
<literal>^^J</literal> para insertar una nueva línea.
</para>
<screen>\wlog{Helvetica y Times Roman entran a un bar.}
\wlog{El barman dice,^^JNo servimos tu tipo.}
</screen>

</sect2>
<sect2 label="27.5.4" id="_005cwrite18">
<title><literal>\write18</literal></title>

<indexterm role="fn"><primary>\write18</primary></indexterm>
<indexterm role="cp"><primary>comandos externos</primary></indexterm>
<indexterm role="cp"><primary>comandos, ejecutar desde &latex;</primary></indexterm>
<indexterm role="cp"><primary>comandos del sistema, ejecutar desde &latex;</primary></indexterm>
<indexterm role="cp"><primary>acceso de shell</primary></indexterm>
<!-- Derivado              de:               Joseph              Wright: -->
<!-- https://tex.stackexchange.com/a/20446/121234 -->

<para>Sinopsis:
</para>
<screen>\write18{<replaceable>shell_command</replaceable>}
</screen>
<para>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.
</para>
<indexterm role="cp"><primary>package, <literal>Asymptote</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>Asymptote</literal> package</primary></indexterm>

<para>Esta secuencia (en Unix)
</para>
<screen>\usepackage{graphicx}  % en el preámbulo
  ...
\newcommand{\fignum}{1}
\immediate\write18{cd pix &amp;&amp; asy figure\fignum}
\includegraphics{pix/figure\fignum.pdf}
</screen>
<para>ejecutará      Asymptote     (el      programa     <literal>asy</literal>)      en
<filename>pix/figure1.asy</filename>, para que  luego el documento se  pueda leer en
el  gráfico  resultante  (véase <link linkend="_005cincludegraphics">\includegraphics</link>).   Como  cualquier
<literal>\write</literal>,  aquí &latex;  expande  macros en  <replaceable>shell_command</replaceable>
para que <literal>\fignum</literal> sea reemplazado por &#8216;<literal>1</literal>&#8217;.
</para>
<para>Otro  ejemplo  es que  puedes  ejecutar  automáticamente Bib&tex;  al
inicio de cada ejecución  de &latex; (véase <link linkend="Usar-BibTeX">Usar BibTeX</link>) incluyendo
<literal>\immediate\write18{bibtex8  \jobname}</literal> como  la primera  línea
del archivo.  Ten  en cuenta que <literal>\jobname</literal> se  expande al nombre
base del archivo  raíz a menos que se pase  la opción <literal>--jobname</literal>
en la  línea de  comandos, en  cuyo caso  este es  el argumento  de la
opción.
</para>
<para>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
<literal>texosquery</literal> a continuación):
</para>
<screen>\immediate\write18{ls *.pdf &gt; tmp.dat}
\input{tmp.dat}
</screen>
<para>El comportamiento estándar de cualquier <literal>\write</literal> es esperar hasta
que una página sea enviada antes  de expandir las macros o escribir en
la secuencia (véase <link linkend="_005cwrite">\write</link>). Pero a veces quieres que se haga ahora.
Para esto, usa <literal>\immediate\write18{<replaceable>shell_command</replaceable>}</literal>.
</para>
<para>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 <literal>latex  --enable-write18 <replaceable>filename</replaceable></literal>
(véase <link linkend="Opciones-de-la-l_00ednea-de-comandos">Opciones   de   la   línea    de   comandos</link>).    (La   opción
<literal>--shell-escape</literal> es un sinónimo, en &tex; Live).
</para>
<indexterm role="cp"><primary>acceso restringido al intérprete</primary></indexterm>
<para>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 <literal>enable-write18</literal>.  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  (véase <link linkend="Opciones-de-la-l_00ednea-de-comandos">Opciones de  la  línea  de
comandos</link>).
</para>
<indexterm role="fn"><primary>/bin/sh, usado por <literal>\write18</literal></primary></indexterm>
<indexterm role="fn"><primary>sh, usado por <literal>\write18</literal></primary></indexterm>
<indexterm role="fn"><primary>cmd.exe, usado por <literal>\write18</literal></primary></indexterm>
<indexterm role="fn"><primary>SHELL, variables de entorno</primary></indexterm>
<para>El  texto  <replaceable>shell_command</replaceable> siempre  se  pasa  a <filename>/bin/sh</filename>  en
sistemas operativos  similares a Unix  y el intérprete de  comandos de
DOS   <filename>cmd.exe</filename>  en   Windows.  Cualquier   intérprete  diferente
establecido por el  usuario, y la variable de  entorno <literal>SHELL</literal> se
ignora.
</para>
<indexterm role="cp"><primary>package, <literal>texosquery</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>texosquery</literal> package</primary></indexterm>

<indexterm role="cp"><primary>información del sistema</primary></indexterm>
<indexterm role="cp"><primary>Información del sistema operativo</primary></indexterm>
<indexterm role="cp"><primary>Información de la configuración regional, del sistema</primary></indexterm>
<indexterm role="cp"><primary>Listados de directorio, del sistema</primary></indexterm>
<para>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  <literal>texosquery</literal>, que proporciona una forma
de interfaz  cómoda y segura para  esto, a diferencia de  los ejemplos
anteriores  que   usan  el  <literal>\write18</literal>   simple  <literal>\write18</literal>:
<ulink url="https://ctan.org/pkg/texosquery">https://ctan.org/pkg/texosquery</ulink>.
</para>
<indexterm role="cp"><primary>package, <literal>shellesc</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>shellesc</literal> package</primary></indexterm>

<indexterm role="fn"><primary>\ShellEscape</primary></indexterm>
<indexterm role="fn"><primary>\DelayedShellEscape</primary></indexterm>
<para>&latex; proporciona un paquete  <literal>shellesc</literal> encima del comando
primitivo <literal>\write18</literal>.  Su propósito principal es  proporcionar un
comando <literal>\ShellEscape</literal>  que funciona de manera  idéntica en todos
los   motores    &tex;;   Lua&tex;   intencionalmente    no   retuvo
<literal>\write18</literal> 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
<literal>shellesc</literal>      también       proporciona      un      comando
<literal>\DelayedShellEscape</literal>, ejecutado a la hora de <literal>\output</literal>, por
la misma razón.
</para>

</sect2>
</sect1>
</chapter>
<chapter label="28" id="Interfaz-de-l_00ednea-de-comandos">
<title>Interfaz de línea de comandos</title>

<anchor id="L_00ednea-de-comandos"/><!-- nombre antiguo -->
<indexterm role="cp"><primary>interfaz de línea de comando</primary></indexterm>
<indexterm role="cp"><primary>interfaz, línea de comandos</primary></indexterm>
<indexterm role="cp"><primary>*CLI*</primary></indexterm>

<para>Sinopsis (desde una línea de comandos de terminal):
</para>
<screen>pdflatex <replaceable>options</replaceable> <replaceable>argument</replaceable>
</screen>
<para>Ejecuta &latex;  en <replaceable>argument</replaceable>.   En lugar  de <command>pdflatex</command>
también   puedes   usar   (para  salida   PDF)   <command>xelatex</command>   o
<literal>lualatex</literal>,    o    (para     salida    DVI)    <literal>latex</literal>    o
<literal>dvilualatex</literal>, entre otros (véase <link linkend="Motores-TeX">Motores &tex;</link>).
</para>
<para>Por ejemplo, esto ejecutará  &latex; en el archivo <filename>thesis.tex</filename>,
creando la salida <filename>thesis.pdf</filename>.
</para>
<screen>pdflatex thesis
</screen>
<indexterm role="fn"><primary>.tex, extensión predeterminada</primary></indexterm>
<para>Ten en  cuenta que <filename>.tex</filename> es  la extensión del nombre  de archivo
predeterminada.
</para>
<para>pdf&tex; es una extensión del  programa &tex; original, al igual que
Xe&tex; y  Lua&tex; (véase <link linkend="Motores-TeX">Motores &tex;</link>).  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   <command>pdflatex</command>   o
<command>xelatex</command> o <command>lualatex</command> entonces obtendrás PDF de forma
predeterminada y tendrás acceso  a todas sus modernas características.
Si  ejecutas <command>latex</command>  o <command>dvilualatex</command>,  obtendrás DVI.
La descripción aquí asume <command>pdflatex</command>.
</para>
<para>Véase <link linkend="Opciones-de-la-l_00ednea-de-comandos">Opciones de la línea de comandos</link>, para una selección de las más
útiles opciones de  la línea de comandos. En  cuanto a <replaceable>argument</replaceable>,
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  <replaceable>argument</replaceable>  comienza  con una  barra  invertida,  el
sistema lo  interpretará como  una línea de  entrada &latex;,  que se
puede utilizar para efectos especiales  (véase <link linkend="Entrada-de-la-l_00ednea-de-comandos">Entrada de la línea de
comandos</link>).
</para>
<para>Si  no  proporcionaste   argumentos  ni  opciones,  <command>pdflatex</command>
solicita entrada desde la terminal.  Puedes escapar de esto ingresando
<userinput>CTRL-D</userinput>.
</para>
<para>Si  &latex;   encuentra  un   error  en   tu  documento,   de  manera
predeterminada    se   detiene    y   te    pregunta   al    respecto.
Véase <link linkend="Recuperaci_00f3n-de-errores">Recuperación de errores</link>, para obtener un resumen de qué hacer.
</para>


<sect1 label="28.1" id="Opciones-de-la-l_00ednea-de-comandos">
<title>Opciones de la línea de comandos</title>

<indexterm role="cp"><primary>opciones, línea de comandos</primary></indexterm>

<para>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 &#8216;<literal>latex --help</literal>&#8217; desde la línea de comandos.
</para>
<para>Con muchas implementaciones puedes especificar opciones de la línea de
comandos prefijándolos con  &#8216;<literal>-</literal>&#8217; o &#8216;<literal>--</literal>&#8217;.  ESTE es  el caso de
ambos &tex; Live (incluyendo  Mac&tex;) y MiK&tex;.  Usaremos ambas
convenciones indistintamente.  Si  una opción toma un  valor, se puede
especificar ya  sea como un  argumento separado (&#8216;<literal>--foo  val</literal>&#8217;), o
como un  argumento con un  signo &#8216;<literal>=</literal>&#8217; (&#8216;<literal>--foo=val</literal>&#8217;),  pero no
puede haber  espacios alrededor de &#8216;<literal>=</literal>&#8217;.  Generalmente usaremos la
sintaxis &#8216;<literal>=</literal>&#8217;.
</para>
<variablelist><indexterm role="fn"><primary>--version command-line option</primary></indexterm>
<varlistentry><term><literal>-version</literal>
</term><listitem><para>Muestra  la versión  actual, como  &#8216;<literal>pdfTeX 3.14159265-2.6-1.40.16
(TeX Live 2015/Debian)</literal>&#8217; junto con  una pequeña cantidad de información
adicional, y sale.
</para>
<indexterm role="fn"><primary>--help command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>-help</literal>
</term><listitem><para>Proporciona un breve mensaje de uso que sea útil como aviso y sale.
</para>
<anchor id="modos-de-interacci_00f3n"/><indexterm role="fn"><primary>--interaction command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>-interaction=<replaceable>mode</replaceable></literal>
</term><listitem><indexterm role="cp"><primary>batchmode</primary></indexterm>
<indexterm role="cp"><primary>scrollmode</primary></indexterm>
<indexterm role="cp"><primary>errorstopmode</primary></indexterm>
<indexterm role="cp"><primary>nonstopmode</primary></indexterm>
<para>&tex; compila  un documento  en uno de  cuatro modos  de interacción:
<literal>batchmode</literal>,        <literal>nonstopmode</literal>,        <literal>scrollmode</literal>,
<literal>errorstopmode</literal>.  En   <firstterm>errorstopmode</firstterm>  (el  predeterminado),
&tex;  se  detiene en  cada  error  y  solicita la  intervención  del
usuario. En <firstterm>modo  por lotes</firstterm> no imprime nada en  la terminal, los
errores se  desplazan como  si el  usuario presionara  <userinput>RETURN</userinput> en
cada  error,  y  los  archivos  que faltan  hacen  que  se  aborte  el
trabajo. En <firstterm>nonstopmode</firstterm>, aparece un mensaje de diagnóstico en la
terminal  pero como  en  el modo  por lotes,  no  hay interacción  del
usuario. En <firstterm>scrollmode</firstterm>, &tex; se  detiene por falta de archivos
o entrada del teclado, pero nada más.
</para>
<para>Por ejemplo, iniciar &latex; con esta línea de comandos
</para>
<screen>pdflatex -interaction=batchmode <replaceable>filename</replaceable>
</screen>
<para>elimina la mayor parte de la salida de la terminal.
</para>
<indexterm role="cp"><primary>nombre de trabajo</primary></indexterm>
<indexterm role="cp"><primary>nombre de archivo para el trabajo actual</primary></indexterm>
<indexterm role="fn"><primary>--jobname command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>-jobname=<replaceable>string</replaceable></literal>
</term><listitem><para>Establece  el valor  de  <firstterm>jobname</firstterm>  de &tex;  en  la cadena.   El
archivo  de  registro y  el  archivo  de  salida entonces  se  llamará
<filename><replaceable>string</replaceable>.log</filename> y  <filename><replaceable>string</replaceable>.pdf</filename>.  véase <link linkend="Nombre-del-trabajo">Nombre del
trabajo</link>.
</para>
<anchor id="directorio-de-salida"/><indexterm role="cp"><primary>Directorio de salida para todos los archivos externos</primary></indexterm>
<indexterm role="fn"><primary>--output-directory command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>-output-directory=<replaceable>directory</replaceable></literal>
</term><listitem><para>Escribe archivos  en el directorio <replaceable>directory</replaceable>.   Ya debe existir.
Esto se  aplica a  todos los  archivos externos  creados por  &tex; o
&latex;,  como   el  archivo   <filename>.log</filename>  para  la   ejecución,  el
<filename>.aux</filename>,  <filename>.toc</filename>, etc.,  archivos creados  por &latex;,  así
como el  principal archivo de  salida <filename>.pdf</filename> o <filename>.dvi</filename>  en sí
mismo.
</para>
<para>Cuando se  especifica, el directorio de  salida <replaceable>directory</replaceable> 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.
</para>
<indexterm role="cp"><primary>escape del intérprete</primary></indexterm>
<indexterm role="cp"><primary><literal>\write18</literal>, habilitar</primary></indexterm>
<indexterm role="fn"><primary>--enable-write18 command-line option</primary></indexterm>
<indexterm role="fn"><primary>--disable-write18 command-line option</primary></indexterm>
<indexterm role="fn"><primary>--shell-escape command-line option</primary></indexterm>
<indexterm role="fn"><primary>--no-shell-escape command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>--enable-write18</literal>
</term><term><literal>--disable-write18</literal>
</term><term><literal>--shell-escape</literal>
</term><term><literal>--no-shell-escape</literal>
</term><listitem><para>Habilita    o    deshabilita    <literal>\write18{<replaceable>shell_command</replaceable>}</literal>
(véase <link linkend="_005cwrite18">\write18</link>).   Las dos  primeras opciones  son compatibles  con
ambos  &tex; Live  y MiK&tex;,  mientras  que las  dos segundas  son
sinónimos compatibles por &tex; Live.
</para>
<para>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
<literal>\write18</literal>  sin  restricciones.   (El valor  predeterminado  para
&tex;  Live, Mac&tex;  y MiK&tex;  es permitir  la ejecución  de un
número  limitado  de  programas  relacionados con  &tex;,  que  ellos
distribuyen).
</para>
<para>Por    ejemplo,    si   invocas    a    &latex;    con   la    opción
<literal>no-shell-escape</literal>, y en tu  documento llamas a <literal>\write18{ls
-l}</literal>, entonces no obtienes un error  pero el archivo de registro dice
&#8216;<literal>runsystem(ls -l)...deshabilitado</literal>&#8217;.
</para>
<indexterm role="fn"><primary>--halt-on-error command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>-halt-on-error</literal>
</term><listitem><para>Detiene el procesamiento en el primer error.
</para>
<indexterm role="fn"><primary>--file-line-error command-line option</primary></indexterm>
<indexterm role="fn"><primary>--no-file-line-error command-line option</primary></indexterm>
</listitem></varlistentry><varlistentry><term><literal>-file-line-error</literal>
</term></varlistentry><varlistentry><term><literal>-no-file-line-error</literal>
</term><listitem><para>Habilita                         o                         deshabilita
<literal><replaceable>filename</replaceable>:<replaceable>lineno</replaceable>:<replaceable>error</replaceable></literal>-style      error     de
mensajes.  Estos solo están disponibles con &tex; Live o Mac&tex;.
</para></listitem></varlistentry></variablelist>

</sect1>
<sect1 label="28.2" id="Entrada-de-la-l_00ednea-de-comandos">
<title>Entrada de la línea de comandos</title>

<indexterm role="cp"><primary>Entrada, en la línea de comando</primary></indexterm>

<para>Como parte de la invocación de la línea de comandos
</para>
<screen><replaceable>latex-engine</replaceable> <replaceable>options</replaceable> <replaceable>argument</replaceable>
</screen>
<para>puedes especificar una entrada &latex; arbitraria comenzando
<replaceable>argument</replaceable>  con una  barra invertida.  (Todos los  motores admiten
esto). Este te permite hacer algunos efectos especiales.
</para>
<indexterm role="cp"><primary>package, <literal>hyperref</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>hyperref</literal> package</primary></indexterm>
<para>Por ejemplo,  este  archivo (que  usa el  paquete
<literal>hyperref</literal>  para hipervínculos)  puede producir  dos tipos  de
salida, una para leer en papel físico y otra para leer en línea.
</para>
<screen>\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
  ...
</screen>
<para>Compilar  este  documento <filename>book.tex</filename>  con  la  línea de  comandos
<literal>pdflatex  book</literal>  dará  el  enlace  &#8216;<literal>CTAN</literal>&#8217;  en  azul.   Pero
compilarlo con
</para>
<screen>pdflatex &quot;\def\paperversion{}\input book.tex&quot;
</screen>
<para>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).
</para>
<para>De  manera  similar, desde  el  único  archivo <filename>main.tex</filename>  puedes
compilar dos versiones diferentes.
</para>
<!-- crédito Paul Gaborit: https://tex.stackexchange.com/a/220101/121234 -->
<screen>pdflatex -jobname=students &quot;\def\student{}\input{main}&quot;
pdflatex -jobname=teachers &quot;\def\teachers{}\input{main}&quot;
</screen>
<para>La  opción <literal>jobname</literal>  está  ahí porque,  de  lo contrario,  ambos
archivos   estarían   llamando   a  <filename>main.pdf</filename>   y   el   segundo
sobrescribiría el primero. (véase <link linkend="Nombre-del-trabajo">Nombre del trabajo</link>).
</para>
<para>En este ejemplo usamos la línea de comando para seleccionar qué partes
de un  documento incluir.  Para  un libro llamado  <filename>mybook.tex</filename> y
estructurado como esto.
</para>
<screen>\documentclass{book}
\begin{document}
   ...
\include{chap1}
\include{chap2}
  ...
\end{document}
</screen>
<para>la línea de comandos
</para>
<screen>pdflatex &quot;\includeonly{chap1}\input{mybook}&quot;
</screen>
<para>dará  salida   que  tiene   el  primer   capítulo  pero   ningún  otro
capítulo. Véase <link linkend="Dividir-la-entrada">Dividir la entrada</link>.
</para>

</sect1>
<sect1 label="28.3" id="Nombre-del-trabajo">
<title>Nombre del trabajo</title>

<indexterm role="fn"><primary><literal>\jobname</literal></primary></indexterm>
<indexterm role="cp"><primary>nombre de trabajo</primary></indexterm>
<indexterm role="cp"><primary>nombre del documento raíz</primary></indexterm>
<indexterm role="cp"><primary>nombre del documento raíz</primary></indexterm>
<indexterm role="cp"><primary>archivo raíz</primary></indexterm>
<indexterm role="cp"><primary>archivo raíz</primary></indexterm>

<para>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 <firstterm>jobname</firstterm>.   El caso más  común es
también el más  simple, donde, por ejemplo,  el comando <literal>pdflatex
thesis</literal>   crea  <literal>thesis.pdf</literal>   y   también  <literal>thesis.log</literal>   y
<literal>thesis.aux</literal>.  Aquí el nombre del trabajo es <literal>thesis</literal>.
</para>
<para>En   general,  &latex;   se   invoca  como   <literal><replaceable>latex-engine</replaceable>
<replaceable>options</replaceable>   <replaceable>argument</replaceable></literal>,   donde  <replaceable>latex-engine</replaceable>   es   el
<command>pdflatex</command>,    <command>lualatex</command>,   etc.    (véase <link linkend="Motores-TeX">Motores
&tex;</link>).  Si <replaceable>argument</replaceable> no comienza con una barra invertida, como
es el caso  anterior con <literal>thesis</literal>, entonces  &tex; considera que
es   el  nombre   del  archivo   para  ingresar   como  el   documento
principal. Este archivo se denomina <firstterm>root file</firstterm> (véase <link linkend="Dividir-la-entrada">Dividir la
entrada</link>, y&#160;<link linkend="_005cinput">\input</link>). El nombre de  ese archivo raíz, sin la
extensión  <filename>.tex</filename>  si la  hay,  es  el  nombre del  trabajo.   Si
<replaceable>argument</replaceable> comienza con  una barra invertida, o si  &tex; está en
modo interactivo,  entonces espera el primer  comando <literal>\input</literal>, y
el nombre del trabajo es el argumento de <literal>\input</literal>.
</para>
<para>Hay  dos posibilidades  más  para  el nombre  del  trabajo.  Se  puede
especificar  directamente  con  la  opción  <literal>-jobname</literal>,  como  en
<literal>pdflatex  -jobname=myname</literal>   (véase <link linkend="Entrada-de-la-l_00ednea-de-comandos">Entrada  de  la   línea  de
comandos</link> para un ejemplo real).
</para>
<indexterm role="fn"><primary>texput, jobname predefinido</primary></indexterm>
<indexterm role="cp"><primary>fallback jobname</primary></indexterm>
<para>La posibilidad  final es <filename>texput</filename>,  que es la  última alternativa
predeterminada  si no  hay  otro nombre  disponible  para &tex;.   Es
decir, si no se especificó  la opción <literal>-jobname</literal> y la compilación
se detiene antes de cualquier  archivo de entrada, entonces el archivo
de registro se llamará <filename>texput.log</filename>.
</para>
<indexterm role="fn"><primary>\documentclass, y <literal>texput</literal> jobname</primary></indexterm>
<indexterm role="fn"><primary>\RequirePackage y <literal>textput</literal> jobname</primary></indexterm>
<para>Un  caso especial  de esto  es  que en  las versiones  de &latex;  de
(aproximadamente) 2020 o  posterior, el nombre del  trabajo también es
<filename>texput</filename> si el primer <literal>\input</literal>  ocurre como resultado de ser
llamado por  <literal>\documentclass</literal> o <literal>\RequirePackage</literal>.   Así que
esto producirá un archivo llamado <filename>texput.pdf</filename>:
</para>
<screen>pdflatex
&quot;\documentclass{minimal}\begin{document}Hello!\end{document}&quot;
</screen>
<para>Sin embargo,  este caso especial solo  se aplica a esos  dos comandos.
Así, con
</para>
<!-- acredita               a                Herbert               Voss: -->
<!-- https://tex.stackexchange.com/a/17236/121234 -->
<screen>pdflatex
&quot;\documentclass{article}\usepackage{lipsum}\input{thesis}&quot;
</screen>
<para>el archivo  de salida es <filename>lipsum.pdf</filename>,  ya que <literal>\usepackage</literal>
llama a <literal>\input</literal>.
</para>
<indexterm role="fn"><primary>\jobname</primary></indexterm>
<para>Dentro del  documento, la macro  <literal>\jobname</literal> se expande  al nombre
del  trabajo.  (Cuando  ejecutas &latex;  en un  archivo cuyo  nombre
contiene  espacios, la  cadena devuelta  por <literal>\jobname</literal>  contiene
comillas  de inicio  y final  coincidentes).  En la  expansión de  esa
macro, todos los caracteres son  de catcode&#160;12 (otro) excepto que
los espacios  son category&#160;10, incluyendo letras  que normalmente
son catcode&#160;11.
</para>
<indexterm role="fn"><primary>\IfBeginWith* macro de <filename>xstring</filename></primary></indexterm>
<indexterm role="cp"><primary>package, <literal>xstring</literal></primary></indexterm>
<indexterm role="cp"><primary><literal>xstring</literal> package</primary></indexterm>

<para>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
<literal>\IfBeginWith</literal>   del  paquete   <filename>xstring</filename>  en   su  variante
estrella, que  es insensible a  catcode. Por ejemplo, en  el siguiente
texto  la nota  a  pie de  página  &#8220;Incluyendo Respublica  Bananensis
Francorum.&#8221; solo  está presente si  el nombre de la  tarea comienza
con <filename>mi-doc</filename>.
</para>
<screen>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.
</screen>
<para>Manipular el valor de <literal>\jobname</literal>  dentro de un documento no camba
el nombre del archivo de salida o el archivo de registro.
</para>

</sect1>
<sect1 label="28.4" id="Recuperaci_00f3n-de-errores">
<title>Recuperación de errores</title>

<para>Si &latex;  encuentra un  error en  tu documento,  entonces te  da un
mensaje de  error y  te muestra un  signo de  interrogación, <literal>?</literal>.
Por ejemplo, ejecutando &latex; en este archivo
</para>
<screen>\newcommand{\NP}{\ensuremath{\textbf{NP}}}
El problema de \PN{} es de un millón de dólares.
</screen>
<para>hace que muestre esto y espere la entrada.
</para>
<screen>! Secuencia de control Indefinida.
l.5 El problema
             \PN{} es uno de un millón de dólares.
?
</screen>
<para>Lo más sencillo es ingresar <userinput>x</userinput> y <userinput>RETURN</userinput> y arreglar el error
de tipografía.  En  su lugar, podrías ingresar  <userinput>?</userinput> y <userinput>RETURN</userinput>
para ver otros opciones.
</para>
<indexterm role="cp"><primary>&#8216;<literal>*</literal>&#8217; prompt</primary></indexterm>
<indexterm role="cp"><primary>prompt, &#8216;<literal>*</literal>&#8217;</primary></indexterm>
<indexterm role="fn"><primary>\stop</primary></indexterm>
<para>Hay otros  dos escenarios de  error.  El  primero es que  te olvidaste
incluir el <literal>\end{document}</literal> o lo  escribiste mal.  En este caso
&latex; te  da un &#8216;<literal>*</literal>&#8217;  indicador.  Puedes  volver a la  línea de
comandos escribiendo  <userinput>\stop</userinput> y <userinput>RETURN</userinput>; este  comando mejora
la salida de &latex; inmediatamente, sea cual sea el estado en el que
se encuentre.
</para>
<para>El último escenario es que escribiste  mal el nombre del archivo.  Por
ejemplo,   en   lugar   de  <literal>pdflatex   test</literal>   puedes   escribir
<literal>pdflatex tste</literal>.
</para>
<screen>! No puedo encontrar el archivo `tste'.
&lt;*&gt; tste

(Presiona   Enter  para   volver   a  intentarlo   o  Control-D   para
salir). Escribe otro nombre de archivo de entrada:
</screen>
<para>Lo más  simple es ingresar  <userinput>CTRL d</userinput> (manteniendo  presionadas las
teclas  control y  flecha abajo  al mismo  tiempo), y  luego vuelve  a
escribir la línea de comandos correcta.
</para>

</sect1>
</chapter>
<appendix label="A" id="Plantillas-de-documentos">
<title>Plantillas de documentos</title>

<indexterm role="cp"><primary>plantillas de documentos</primary></indexterm>
<indexterm role="cp"><primary>plantillas, documento</primary></indexterm>

<para>Aunque son material ilustrativo, quizás estas plantillas de documentos
sean útiles.   Los recursos de  plantillas adicionales se  enumeran en
<ulink url="https://tug.org/interest.html#latextemplates">https://tug.org/interest.html#latextemplates</ulink>.
</para>


<sect1 label="A.1" id="Plantilla-beamer">
<title>Plantilla <literal>beamer</literal></title>

<indexterm role="cp"><primary><literal>beamer</literal> plantilla y clase</primary></indexterm>
<indexterm role="cp"><primary>plantilla, <literal>beamer</literal></primary></indexterm>

<para>La clase  <literal>beamer</literal> crea  diapositivas de  presentación.  Tiene
una vasta  variedad de  características, pero  aquí hay  una plantilla
básica:
</para>
<screen>\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}
</screen>
<para>El paquete Beamer en CTAN: <ulink url="https://ctan.org/pkg/beamer">https://ctan.org/pkg/beamer</ulink>.
</para>

</sect1>
<sect1 label="A.2" id="Plantilla-de-art_00edculo">
<title>Plantilla <literal>article</literal></title>

<indexterm role="cp"><primary>plantilla (simple), <literal>article</literal></primary></indexterm>

<para>Una plantilla simple para un artículo.
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="A.3" id="Plantilla-de-libro">
<title>Plantilla <literal>book</literal></title>

<indexterm role="cp"><primary>plantilla, <literal>book</literal></primary></indexterm>

<para>Esta  es una  plantilla sencilla  para un  libro.  Véase <link linkend="Plantilla-de-libro-Larger">Plantilla  de
libro Larger</link>, para una más elaborada.
</para>
<screen>\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}
</screen>

</sect1>
<sect1 label="A.4" id="Plantilla-de-libro-Larger">
<title>Plantilla de <literal>book</literal> larger</title>

<indexterm role="cp"><primary>plantilla, <literal>book</literal></primary></indexterm>

<para>Esta es una  plantilla algo elaborada para  un libro.  Véase <link linkend="Plantilla-de-libro">Plantilla
de libro</link>, por una más sencilla.
</para>
<para>Esta   plantilla   usa   <literal>\frontmatter</literal>,   <literal>\mainmatter</literal>   y
<literal>\backmatter</literal>  para controlar  la  tipografía de  las tres  áreas
principales  de   un  libro   (véase <link linkend="_005cfrontmatter-_002d-_005cmainmatter-y-_005cbackmatter">\frontmatter  -   \mainmatter  y
\backmatter</link>).  El libro tiene una bibliografía y un índice.
</para>
<para>También  es  notable  que usa  <literal>\include</literal>  e  <literal>\includeonly</literal>
(véase <link linkend="Dividir-la-entrada">Dividir  la  entrada</link>).   Mientras trabajas  en  un  capítulo,
puedes  comentar  todas  las  demás entradas  del  capítulo  desde  el
argumento hasta <literal>\includeonly</literal>.  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 <literal>\input</literal>
en lugar de  <literal>\include</literal>.  No obtienes el  beneficio de referencia
cruzada con <literal>\input</literal>).
</para>
<screen>\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}
</screen>

</sect1>
</appendix>
<chapter label="" id="_00cdndice">
<title>Índice</title>

<!-- Mantén `Command Index' funcionando para ltx-help.el. -->
<anchor id="_00edndice-de-comandos"/>
<index role="cp"></index>

</chapter>
</book>
