% \iffalse
%
% Typeset this file to get the documentation.
% Typeset spanishb.ins to generate the package files.
%
% This file is copyrighted 1997 1998 by Javier Bezos.
% The babel system is copyrighted 1989-1997 by Johannes L. Braams
% and others.
% 
% This file is distributed without any warranty
% and specificallly disclaims any implied warranty of
% MERCHANTABILITY or FITNESS FOR ANY PARTICULAR PURPOSE.
% While the author firmly belives this to be a high quality
% tool, the user must assume all risks of using the file.
%
% Permission is granted to copy this file to another file with a clearly
% different name and to customize the declarations in that copy to serve
% the needs of your installation. However, NO PERMISSION is granted to
% produce or to distribute a modified version of this file under its
% original name. You are NOT ALLOWED to change this file.
%
% For further copyright information contact with the author.
% 
% Babel package for LaTeX version 2e
% Copyright (C) 1989 - 1996
%           by Johannes Braams, TeXniek
%
% \fi
%

\def\fileversion{1.1}
\def\filedate{1 de octubre de 1998}
\def\docdate{1 de octubre de 1998}

% 
% \title{Estilo \textsf{spanishb}\\
%     para el sistema \babel.\footnote{Este
%     archivo est\'a actualmente en la versi\'on
%     \fileversion{} con fecha \filedate.
%     Esta copia del manual se compuso el~\today.}}
%
% \author{Javier Bezos\footnote{Por favor, env\'{\i}en
%   comentarios y sugerencias a \texttt{jbezos@mx3.redestb.es}
%   o a mi direcci\'on postal:  Apartado 116.035, E-28080 Madrid,
%   Spain. Agradezco a Francisco Rodr'iguez los errores que ha
%   detectado, David R. Leal Valmana sus comentarios
%   y sugerencias, Rafael Rodriguez por las muchas erratas del
%   manual que me ha comunicado, y Juan Luis Varona que
%   amablemente me cedi'o un hueco en su servidor para las
%   primeras versiones.}}
%
% \date{\docdate}
%
% \maketitle
% 
% {\small\tableofcontents}
%
% \section{Introducci'on}
%
% Este archivo adapta el estilo |spanish.ld| proporcionado por
% el paquete \sf{polyglot},\footnote{Copyright 1997 Javier Bezos.
% Un intento para crear un \emph{genuino}
% sistema multilingue para LaTeX, con adaptaci'on de convenciones
% tipogr'aficas y de clases.}
% para su uso con \babel.\footnote{Copyright 1989-1997 Johannes L.
% Braams and others.} Dado el car'acter m'as limitado
% de \babel, se han tenido que suprimir algunas caracter'isticas. Pese
% a ello, proporciona una buena adaptaci'on ---si bien no completa---
% a las normas ortotipogr'aficas espa'nolas. Por otra parte, algunas
% caracter'isticas que no estaban previstas sino hasta la pr'oxima
% versi'on de \sf{polyglot} ya han sido incorporadas aqu'i.
%
% Para la estructura b'asica del documento he mirado varios archivos |.ldf|
% al azar. Para el c'odigo propio para espa~nol he partido de cero. Finalmente,
% por compatibilidad he consultado las convenciones de |spanish.dtx| de
% Julio S'anchez,\footnote{Copyright 1996 Julio S'anchez.}
% as'i como algunas de sus definiciones internas.
%
% \section{Instalaci'on}
% 
% Para usar \sf{spanishb} hay que seguir estos pasos:
% \begin{enumerate}
% \item \TeX{}ear |spanishb.ins|. Eso genera los archivos
% |spanishb.ldf|, |spanishb.llf|, |spanish.tex| y |spanishb.sty|
% que se pueden agrupar con los otros archivos de \babel.
% \item Abrir el archivo |babel.sty| y a'nadir la l'inea
%\begin{verbatim}
% \DeclareOption{spanishb}{\input spanishb.ldf}
%\end{verbatim}
% Un buen sitio para hacerlo es justo despu'es de
%\begin{verbatim}
% \DeclareOption{spanish}{\input spanish.ldf}
%\end{verbatim}
% \end{enumerate}
% Eso es todo. Luego se usa exactamente igual que \sf{spanish},
% s'olo que en |\usepackage| o |\documentclass| escribimos
% |spanishb|. (Internamente la lengua es |spanish|;
% la |b| es tan s'olo para diferenciar los archivos.)
%\begin{verbatim}
% \documentclass[spanishb]{article}
% \usepackage{babel}
% ...
% \begin{document}
% ...
%\end{verbatim}
% etc.
%
% En cuanto a los patrones para la divisi'on de palabras,
% \sf{spanishb} tambi'en accede a |spanish|, as'i que aqu'i tampoco
% es necesario hacer cambios.
%
% Tambi'en se puede sustituir la l'inea
% ya existente por |\DeclareOption{spanish}{\input spanishb.ldf}|
% en cuyo caso se llama con |spanish| y as'i
% otros paquetes con alg'un tipo de castellanizaci'on 
% pueden reconocer correctamente la opci'on global. En este caso, si el 
% documento se distribuye es importante dejar claro que el archivo 
% correcto es \sf{spanishb}.
%
% \section{Descripci'on}
%
% \subsection{Traducciones}
% 
% Como es habitual con \babel, ciertas 'ordenes se definen para proporcionar 
% traducciones al castellano de algunos t'erminos tal y como se describe
% en el cuadro 1. A ellas hay que a'nadir |\today|, con la fecha 
% actual.
% 
% \begin{table}
% \center\small
% \caption{Traducciones}
% \vspace{1.5ex}
% \begin{tabular}{l@{\hspace{3em}}l}
% \toprule
% |\refname|        & Referencias\\
% |\abstractname|   & Resumen\\
% |\bibname|        & Bibliograf'ia\\
% |\chaptername|    & Cap'itulo\\
% |\appendixname|   & Ap'endice\\
% |\contentsname|   & 'Indice general\nm{a}\\
% |\listfigurename| & 'Indice de figuras\\
% |\listtablename|  & 'Indice de cuadros\\
% |\indexname|      & 'Indice alfab'etico\\
% |\figurename|     & Figura\\
% |\tablename|      & Cuadro\\
% |\partname|       & Parte\\
% |\enclname|       & Adjunto\\
% |\ccname|         & Copia a\\
% |\headtoname|     & A\\
% |\pagename|       & P'agina\\
% |\seename|        & v'ease\\
% |\alsoname|       & v'ease tambi'en\\
% |\proofname|      & Demostraci'on
% \botrule
% \end{tabular}
%
% \vspace{1.5ex}
%
% \begin{minipage}{6cm}\footnotesize
% \nt{a} Pero s'olo <<'Indice>> en \sf{article}.
% \end{minipage}
% \end{table}
% 
% Algunas de las traducciones merecen un cierto comentario, en especial las
% relativas a 'indices. Por desgracia, no existe un referencia m'inimamente 
% oficial que facilite una terminolog'ia unificada. Por ejemplo, \emph{'indice 
% de materias} se usa por algunos para el sumario de cap'itulos, mientras 
% que otros lo aplican al 'indice alfab'etico final; por ello la he 
% descartado. El \lsc{DRAE} dice que \emph{tabla} es el <<'indice de
% materias en los libros>> aunque en la pr'actica 
% no ha tenido uso alguno ni tampoco aclara m'as.
% Tampoco ha tenido mucho uso \emph{tabla de 
% contenido} y la f'ormula m'as escueta de \emph{contenido} me parece 
% mejor. Tal vez \emph{'indice general} es la que m'as se 
% usa, as'i que a ella me atengo salvo en |article|, donde se compone como
% secci'on y por tanto resulta algo ostentoso.\footnote{Al contrario
% que en ingl'es, en castellano el 'indice por antonomasia es
% el general.} Otras posibilidades 
% ser'ian \emph{'indice tem'atico} o \emph{'indice sumario}.
% 
% Para el 'indice alfab'etico hay quien ha
% empleado \emph{'indice de materias} aunque 
% parece que \emph{'indice anal'itico} tiene m'as seguidores. Pero estrictamente 
% hablando ninguna de las dos es apropiada, ya que estos 'indices no 
% solamente suelen incluir materias, sino tambi'en nombres. Con un paquete 
% para diferenciar varios tipos de 'indices podemos indicar si es 
% de materias (anal'itico) o de nombres (onom'astico). Creo que \emph{'indice 
% alfab'etico} es ajustado y preciso y me parece lo
% mejor.\footnote{Es la usada en \DOT{300} as'i como en la mayor'ia 
% de los libros que consult'e al azar en una biblioteca. En realidad, no he 
% conseguido comprender la relaci'on entre los t'erminos \emph{de materias}
% y \emph{anal'itico}, pero as'i se establece en \DTL{140} y \DOT{149}.}
% 
% En cuanto a los de cuadros y figuras, tambi'en es posible decir 
% \emph{lista}, pero me parece preferible \emph{'indice} que implica
% la correspondencia con las p'aginas.
% 
% Para traducir \emph{table} es mejor \emph{cuadro}, ya que \emph{tabla} es un
% \emph{falso amigo}. Transcribo las definiciones del 
% \lsc{DRAE}.\footnote{V'ease tambi'en \DTL{67 ss.}}
% \begin{description}\small
% \item[\normalfont\textit{Cuadro:}] 
% Conjunto de nombres cifras u otros datos presentados gr'aficamente
% de forma que se advierta la relaci'on existente entre ellos.
% \item[\normalfont\textit{Tabla:}]
% Cuadro o cat'alogo de n'umeros de especie determinada,
% dispuestos en forma adecuada para facilitar los c'alculos.
% \end{description}
% Esto est'a conforme con la pr'actica tradicional. (Por ejemplo, <<cuadro de 
% estados medievales>> frente a <<tabla de logaritmos>>.)
%
% Las traducciones se escriben de min'usculas, salvo la inicial. Se evita
% el anglicismo, incorrecto en castellano,
% de comenzar en may'usculas los sustantivos.\footnote{\DOT{197}.}
% 
% \subsection{Abreviaciones}
% 
% (Lo que en \babel{} se denomina `shorthands'.) Para este archivo sigo
% la misma filosof'ia que Julio S'anchez en 
% \sf{spanish}, s'olo que se han a~nadido algunas m'as.
% La lista completa se puede encontrar en el cuadro 2. En los siguientes
% apartados se dar'an m'as detalles sobre algunas de ellas.
%
% \begin{table}[!t]
% \center\small
% \caption{Abreviaciones}
% \vspace{1.5ex}
% \begin{tabular}{l@{\hspace{3em}}l}
% \toprule
% |'a 'e 'i 'o 'u| & 'a 'e 'i 'o 'u\\
% |'A 'E 'I 'O 'U| & 'A 'E 'I 'O 'U\\
% |'n 'N|          & 'n 'N\\
% |~n ~N|          & 'n 'N\nm{a}\\
% |"u "U|          & "u "U\\
% |"a "A "o "O|    & Ordinales, como en 1"a, 1"A, 1"o y 1"O\\
% |"c "C|          & "c "C\nm{b}\\
% |"rr "RR|        &  rr, pero -r cuando se divide\\
% |"-|             & Como |\-|, pero permite m'as divisiones\\
% |"=|             & Como |-|, pero permite mas divisiones\nm{c}\\
% |"~|             & Gui'on estil'istico\nm{d}\\
% |""|             & Permite mas divisiones antes y despu'es\nm{e}\\
% |"/|             & Una barra algo m'as baja\\
% \verb+"|+        & Divide un logotipo\nm{f}\\
% |"< ">|          & "< ">\\
% |<< >>|          & |\begin{quoting}| |\end{quoting}|\nm{g}\\
% |?` !`|          & ?` !`\nm{h}
% \botrule
% \end{tabular}
%
% \vspace{1.5ex}
%
% \begin{minipage}{11cm}
% \footnotesize
% \nt{a} Muchos teclados consideran |~| como una <<tecla muerta>>
% e inmediatamente
% la combinan como e'ne si despu'es tecleamos |n|, por lo que resulta
% algo inc'omodo (|~| $+$ espacio $+$ |n|); en cambio |'n| se acepta
% directamente. \nt{b} La cedilla no se usa hoy, pero se us'o anta'no.
% \nt{c} En esencia, |"=| viene a ser lo mismo que |""-""|.
% \nt{d} N'otese que esta misma abreviaci'on tiene un uso distinto
% en otras lenguas. \nt{e} Como en <<entrada/salida>>.
% \nt{f} Carece de uso en castellano. \nt{g} V'ease sec.~3.7. 
% \nt{h} No proporcionadas por este paquete, sino por cada tipo.
% Figuran aqu'i como simple recordatorio.
% \end{minipage}
% \end{table}
% 
% Para poder usar ap'ostrofos como abreviaciones de acentos
% es necesaria la opci'on |activeacute| en |\usepackage|,
% pero puede cambiarse este comportamiento escribiendo 
% la orden |\es@acuteactive| en el archivo de configuraci'on
% |spanishb.cfg|, en cuyo caso los ap'ostrofos se activan
% autom'aticamente y siempre tenemos acceso a estas abreviaciones.
% 
% Desgraciadamente, la forma en que \babel{} manipula estas 
% abreviaciones hace que la compensaci'on del espacio entre letras quede 
% cancelada con |T1|, al contrario de lo que ocurre en sistemas basados 
% en el procedimiento de \textsf{german} (como \textsf{polyglot} o 
% alguna antigua versi'on de |spanish|). Comp'arese el espacio entre V'A 
% y VA y se ver'a que es dintinto; con |T1| deber'ia ser el mismo.
%
% \subsection{Coma decimal}
%
% Tanto el ingl'es como el castellano y otras lenguas tienen sus formas
% tradicionales de representar la coma decimal. En ingl'es, por ejemplo,
% es algo como $12{\cdot}34$, mientras que en castellano es $12$'$34$.
% Adem'as, los millares se pueden separar por coma en ingl'es y punto 
% en castellano.\footnote{Excepto en a'nos, donde siempre se escriben 
% las cifras juntas: \emph{1978, 1998}.}
% Tanto una como otra presentan variantes, pero estas son las m'as 
% genuinas. Sin embargo, y excepcionalmente, tales formas deben ser
% descartadas totalmente, pues se ha llegado a una normalizaci'on 
% a nivel internacional en la que los millares se separan por un 
% espacio fino, y los decimales con el signo de puntuaci'on, coma o 
% punto, que mejor se adapte a la tradici'on de cada pa'is, que en 
% ingles es un punto, y en castellano, una coma. Esta norma debe 
% seguirse en todo escrito t'ecnico, y en mi opini'on, tambi'en
% en cualquier otro contexto.
%
% Por ello, \sf{spanishb}, y ante el uso que \TeX\ hace normalmente de 
% la coma como separador en intervalos o expresiones similares, 
% convierte todo punto en modo matem'atico a una coma siempre que 
% est'e seguido de una cifra, pero no en otras circunstancias. Por 
% ejemplo:
% \begin{quote}\small\begin{tabbing}
% |$1\,234.567\,890$|     \quad \=  $1\,234.567\,890$\\
% |$f(1,2)=12.34.$|        \> $f(1,2)=12.34.$\\
% |$1{.}000$|              \> $1{.}000$, pero\\
% |1.000|                  \> 1.000, pues no es modo matem'atico.
% \end{tabbing}\end{quote}
%
% N'otese las diferencias de espaciado tras la coma cuando se escribe
% directamente y cuando es por un <<punto>> decimal.
% Las 'ordenes |\decimalcomma| y |\decimalpoint| 
% establecen si se usa una coma, que es el valor por omisi'on,
% o un punto.
%
% \subsection{Divisi'on de palabras}
%
% Todav'ia siguen siendo de uso frecuente los tipos con codificaci'on 
% |OT1|, que a veces se pueden entremezclar con los de otras 
% codificaciones, principalmente |T1|.  El sistema de \sf{spanishb} 
% consiste en comprobar la codificaci'on en el momento en que se usa un 
% acento, sea este generado por la orden directa (|\'|), con 
% |\a| (|\a'|) en |tabbing|, con una abreviaci'on (|'|) o incluso con 
% algunas 'ordenes internas de uso por el paquete \sf{inputenc}.
% Si la codificaci'on es |OT1| se toman las medidas oportunas para facilitar
% la divisi'on, que pese a todo nunca ser'a perfecta. En cambio, con |T1| se
% accede directamente al car'acter correspondiente del archivo.
%
% Para matizar la divisi'on de palabras hay cuatro posibilidades, dos de ellas
% con el m'etodo de abreviaciones. Un |-| es un gui'on que no permite m'as
% divisiones tanto antes como despu'es; equivalente a ella es |"=| que tambi'en es
% un gui'on pero permite m'as divisiones.\footnote{No es una buena idea usar
% esta orden, pero en medidas muy cortas puede resultar necesario.}
% La orden |\-| es un gui'on opcional
% que, de nuevo, no permite m'as 
% divisiones;\,\footnote{\texttt{\string\-} no se ha redefido aqu'i 
% porque es una orden primitiva y como tal conviene dejarla intacta.}
% el equivalente que las permite 
% es |"-|. Por ejemplo (con las posibles divisiones marcadas con 
% \hmk):
% \begin{quote}\small\begin{tabbing}
% |Zaragoza-Barcelona|\qquad \= Zaragoza-\hmk Barcelona\\
% |Zaragoza"=Barcelona| \>
%    Za\hmk ra\hmk go\hmk za-\hmk Bar\hmk ce\hmk lo\hmk na\\
% |semi\-abierto| \> semi\hmk abierto\\
% |semi"-abierto| \> se\hmk mi\hmk abier\hmk to.\footnotemark
% \end{tabbing}\footnotetext{N'otese
% que justo antes y despu'es de
% {\ttfamily\string"\string-} y {\ttfamily\string"\string=} se
% aplican los correspondientes
% valores de {\ttfamily\string\...hyphenmin} lo que implica que la divis'on
% semia\hmk bierto no es posible.
% Este es, ciertamente, el comportamiento que buscamos.}
% \end{quote}
%
% La abreviaci'on |"~| se usa para guiones estil'isticos, cuyo 
% funcionamiento es similar al gui'on portugu'es en una divisi'on:
% el gui'on no s'olo aparece al final de la l'inea sino tambi'en al 
% comienzo de la siguiente. Se usa sobre todo en contextos lingu'isticos
% cuando se quiere dejar claro que un 
% gui'on realmente estar'ia ah'i incluso de no haber sido dividida la 
% palabra. Por ejemplo:
% \begin{quote}\small\begin{tabbing}
% |infra"~rojo|  \quad \= in\hmk fra-ro\hmk jo, pero infra-\hmk-rojo.
% \end{tabbing}\end{quote}
%
% Otra abreviaci'on es |"rr| que sirve para el 
% 'unico cambio de escritura del castellano en caso de haber divisi'on.  
% La \lsc{RAE} indica que al a'nadir un prefijo que termina en vocal a 
% una palabra que comienza con \emph{r}, 'esta 'ultima debe 
% doblarse a menos que se unan por un gui'on.\footnote{Lo cual
% es inconsistente con el hecho de que con un 
% prefijo como \emph{sub-} esto no se hace.  Pi'ensese en 
% \emph{subreino}, o \emph{subrayar}.} Por ejemplo:
% \begin{quote}\small\begin{tabbing}
% |extra"rradio|  \quad \= ex\hmk trarra\hmk dio, pero extra-\hmk 
%    radio.
% \end{tabbing}\end{quote}
% Hay bastante discusi'on al 
% respecto, y en cierto modo todo depende de si las palabras as'i
% formadas se
% consideran nuevas en el pleno sentido del t'ermino, o simplemente se 
% trata de dos elementos unidos en las escritura.\footnote{Algunos 
% prefijos no se unen: \emph{ex} es uno de ellos. Otros se pronuncian
% como si se escribieran por separado, como \emph{semieje}. Yo, 
% personalmente, soy partidario del segundo punto de vista, aunque
% la opini'on mayoritaria parece preferir el primero.}
% En el primer caso carece de sentido usar |"rr| ya que es una palabra
% completa y fija y su divisi'on ser'ia <<extra-\hmk rradio>>;
% pero en el segundo la palabra no se ha llegado a unir
% en la escritura, y por tanto usar |"rr| tiene l'ogica.
%
% \subsection{Ordinales}
%
% Algunos dise~nadores tipogr'aficos extranjeros, que obviamente no 
% tienen mucha idea de tipograf'ia espa~nola, a~nadieron en algunos tipos 
% un peque~no subrayado a las letras voladitas.  Esta idea err'onea no 
% hay por que seguirla;\,\footnote{Eso quiere decir que con esos tipos
% hay que evitar usar directamente los caracteres correspondientes tal
% y como se acceden desde \sf{inputenc}. V'ease \MEA{141}.}
% m'as bien al contrario, ha inducido a algunos a 
% pensar que "<primero"> se escribe 
% 1\raise1ex\hbox{\underbar{\scriptsize o}} ya que se distingue lo 
% suficiente de 1$^\circ$ que significa "<un grado">.
%
% Pues bien, esto es una falta de ortograf'ia ya que las abreviaturas siempre
% llevan punto, salvo algunas en que se sustituye por una barra
% (y salvo las siglas y s'imbolos, naturalmente);
% adem'as, ese punto precede a las letras voladitas.\footnote{Puede
% comprobarse en \DTL{196}. V'ease tambi'en \DOT{222 y 227}.}
% Por ello, spanishb proporciona la orden |\sptext| que facilita la 
% creaci'on de estas abreviaturas.  Por ejemplo: |1\sptext{er}| que
% da 1\sptext{er}  Hay 
% cuatro abreviaciones asociadas a ordinales: |"a|, |"A|, |"o|
% y |"O|, que equivalen a |\sptext{a}|, etc.
%
% Para ajustar el tama~no lo mejor posible, se usa el tama~no de 'indices 
% en curso. Esto funciona bien salvo para tama~nos muy grandes o muy
% peque~nos, donde los resultados son meramente aceptables.  
% \LaTeX\ proporciona un |\textsuperscript|, pero |\sptext| a'nade  unos
% ajustes adicionales cuando se tienen may'usculas.
% 
% \subsection{Funciones matem'aticas}
%
% Tradicionalmente, se ha acostumbrado a formar las abreviaciones
% de lo que en \TeX\ se conocen como operadores a partir
% del nombre castellano, lo que implica la presencia del
% acento en l'im, m'ax y m'in. A veces se ha argumentado que
% desde un punto de vista de normalizaci'on, estas abreviaciones
% deben considerarse 'unicas a nivel internacional y derivadas
% del lat'in; pero eso abre la cuesti'on de si tambi'en debe 
% escribirse sin en lugar de sen, o curl en lugar de rot.
%
% Con |spanishb| pueden seguirse varias convenciones con ayuda
% de las siguientes 'ordenes:
% \begin{itemize}
% \item[$\diamond$] |\accentedoperators| |\unaccentedoperators|\\[1ex]
% Activa o desactiva los acentos en |\lim|, |\max| y |\min|.
% Por omisi'on se acent'uan. Por ejemplo: $y^{\lim_{x\to 0}(1/x)}$
% (|$y^{\lim_{x\to 0}(1/x)}$|).
% 
% \item[$\diamond$] |\spacedoperators| |\unspacedoperators|\\[1ex]
% Activa o desactiva el espacio entre "<arc"> y la funci'on.
% Lo habitual ha sido con espacio; as'i pues, por omisi'on
% se espacia.
% \end{itemize}
% 
% \New La i sin punto tambien es accesible directamente en modo matem'atico
% con la orden |\dotlessi|, de forma que se puede escribir 
% |\acute{\dotlessi}|. Por ejemplo, |$V_{\mathbf{cr\acute{\dotlessi}t}}$|
% da $V_{\mathbf{cr\acute{\dotlessi}t}}$.
%
% Se pueden cambiar los valores por omisi'on en un sistema concreto
% con el archivo |.cfg|. (V'ease m'as abajo.) 
% 
% Tambi'en se a'naden |\rot|, |\sen|, |\senh|, |\arcsen|, |\tg|,
% |\tgh| y |\arctg|, que dan las funciones respectivas.
%
% \subsection{Entrecomillados}
% 
% El nuevo entorno |quoting| entrecomilla un cierto 
% texto, a'nadiendo comillas de seguir al comienzo de 
% cada p'arrafo en su interior.\footnote{Se puede encontrar
% una detallada exposici'on de las comillas en \DTL{44 ss.} De ah'i
% se ha tomado alg'un ejemplo.}
% Tambi'en se pueden emplear las 
% abreviaciones |<<| y |>>| que se limitan a llamar a |quoting|, que por 
% ser entorno considera sus cambios internos como locales. (Es 
% decir, |<< ... >>| implica |{<< ... >>}|.) 
% Las abreviaciones |"<| y |">| contin'uan dando sin m'as los caracteres 
% de comillas de abrir y cerrar, respectivamente.
% 
% Por ejemplo:
%\begin{verbatim}
% <<Se llaman <<comillas de seguir>> a las que son de cierre,
% pero se colocan al comienzo de un p'arrafo.
% 
% Este tipo de comillas se emplea cuando se transcribe un texto 
% entrecomillado con m'as de un p'arrafo.
% 
% En su interior, como de costumbre, se usan inglesas.>>
%\end{verbatim}
% cuyo resultado es:
% \begin{quotation}\small
% <<Se llaman <<comillas de seguir>> a las que son de cierre,
% pero se colocan al comienzo de un p'arrafo.
% 
% Este tipo de comillas se emplea cuando se transcribe un texto 
% entrecomillado con m'as de un p'arrafo.
% 
% En su interior, como de costumbre, se usan inglesas.>>
% \end{quotation}
% 
% Naturalmente, este entorno se puede redefinir, como por ejemplo.
%\begin{verbatim}
% \renewenvironment{quoting}{\itshape}{}
%\end{verbatim}
% pero n'otese que en principio no implica un nuevo 
% p'arrafo, que ha de comenzarse manualmente; obviamente, este entorno 
% esta pensado para ser usado tambi'en en el interior de un 
% p'arrafo.\footnote{En escritos period'isticos, las comillas de seguir se 
% suelen evitar porque podr'ian sobrecargar el aspecto del texto.
% De forma m'as general, tambi'en puede usarse |quote| para el mismo
% prop'osito. \DOT{88}}
%
% En caso de anidar entornos |quoting|, se modifican las comillas
% de los niveles interiores, que tambi'en se a'naden a las de seguir:
%\begin{verbatim}
% <<El di'alogo se desarroll'o de esta forma:
% 
% <<---Yo no he sido ---grit'o Antonio.
% 
% ---Pero has colaborado ---asegur'o Rafael.
% 
% ---Mentira
% 
% ---Cuenta entonces lo sucedido ---pidi'o Juan>>.
% 
% Pero all'i no se aclar'o nadie.>>
%\end{verbatim}
% 
% \begin{quotation}\small
% <<El di'alogo se desarroll'o de esta forma:
% 
% <<---Yo no he sido ---grit'o Antonio.
% 
% ---Pero has colaborado ---asegur'o Rafael.
% 
% ---Mentira
% 
% ---Cuenta entonces lo sucedido ---pidi'o Juan>>.
% 
% Pero all'i no se aclar'o nadie.>>
% \end{quotation}
%
% \begin{itemize}
% \item[$\diamond$]
% |\lquoti| |\rquoti| |\lquotii| |\rquotii| |\lquotiii| 
% |\rquotiii|\\[1ex]
% 
% Controlan las comillas que han de usarse en |quoting|, seg'un el
% nivel en que nos encontremos. |\lquoti| son las comillas de abrir m'as
% exteriores, |\lquotii| las de segundo nivel, etc., y lo mismo para las
% de cerrar con |\rquoti|... Para las de seguir siempre se usan las de
% cerrar. Los valores por omisi'on est'an en el cuadro 3.
% \begin{table}
% \center\small
% \caption{Entrecomillados}
% \vspace{1.5ex}
% \begin{tabular}{l@{\hspace{5em}}l}
% \toprule
% |\lquoti|   &|"<|\\
% |\rquoti|   &|">|\\
% |\lquotii|  &|``|\\
% |\rquotii|  &|''|\\
% |\lquotiii| &|`|\\
% |\rquotiii| &|'|
% \botrule
% \end{tabular}
% \end{table}
% 
% \newenvironment{dialog}
%   {\def\lquoti{}\begin{quoting}---\ignorespaces}
%   {\def\rquoti{}\end{quoting}}
% 
% Las comillas de seguir tambi'en se emplean en di'alogos, incluso
% si no las hay de abrir y cerrar. Con la ayuda del siguiente
% entorno,
%\begin{verbatim}
% \newenvironment{dialog}
%   {\def\lquoti{}\begin{quoting}---\ignorespaces}
%   {\def\rquoti{}\end{quoting}}
%\end{verbatim}
% podemos obtener
% \begin{quotation}\small
% \begin{dialog}%
% El di'alogo se desarroll'o de esta forma:
% 
% <<---Yo no he sido ---grit'o Antonio.
% 
% ---Pero has colaborado ---asegur'o Rafael.
% 
% ---Mentira
% 
% ---Cuenta entonces lo sucedido ---pidi'o Juan>>.
%
% Pero all'i no se aclar'o nadie.
% \end{dialog}
% \end{quotation}
%
% \item[$\diamond$]
% |\activatequoting \deactivatequoting|\\[1ex]
% 
% Las incompatibilidades potenciales de estas abreviaciones son enormes.
% Por ejemplo, en \sf{ifthen} se cancelan las comparaciones entre
% n'umeros;\,\footnote{Y en {\ttfamily\string\ifnum}, etc. usado por
% los desarrolladores en los paquetes.} tambi'en resultan
% inoperantes |@>>>| y |@<<<| de \sf{amstex}.\footnote{Aunque en
% este caso cabe usar los sin'onimos |@)))| y |@(((|}
% Por ello, se da posibilidad de cancelarlas y reactivarlas con
% estas 'ordenes. El entorno |quoting| siempre permanece disponible.
%
% Algunos tipos disponen de esta ligadura de forma interna para
% generar los caracteres de comillas, por lo que en ellos tambi'en
% podemos usarlos siempre, aunque los ajustes proporcionados por
% \sf{spanishb} se pueden perder; pero, por otra parte, tampoco se
% usan demasiado a menudo.
%
% \end{itemize}
% 
% \subsection{Selecci'on}
% 
% Por omisi'on, \babel{} deja <<dormidas>> las lenguas hasta que se
% llega a |\begin{document}| con el fin de que ciertos paquetes no produzcan
% errores por las abreviaciones, y garantizar que ante cualquier conflicto de 
% definiciones tengan prioridad las de \babel.\footnote{Esto es cierto
% para la versi'on 3.6, aunque no necesariamente en las anteriores.} A cambio,
% se priva de la posibilidad de usar las lenguas en el pre'ambulo 
% en 'ordenes como |\savebox|, |\title|, |\newtheorem|,
% etc. lo que obliga a modificar la estructura normal de un documento de \LaTeX.
% 
% La orden |\selectspanish| permite activar |spanish| con sus
% extensiones y abreviaciones  antes de
% |\begin{document}|.\footnote{Sin embargo, algunos detalles
% siguen sin activarse hasta el comienzo del documento que apenas afectan
% a \texttt{spanish}.}
% De esta forma, podr'iamos decir
%\begin{verbatim}
% \documentclass{book}
% \usepackage[T1]{fontenc}
% \usepackage[spanishb]{babel}
% \usepackage[latin1]{inputenc}
% \usepackage[centerlast]{caption2}
% ... % Mas paquetes
% 
% \selectspanish
% 
% \title{T'itulo}
% \author{Autor}
% \newcommand{\pste}{para"-psicol'ogicamente}
% \newsavebox{\mybox}
% \savebox{\mybox}{m'as cosas}
% ...   % Mas definiciones
%
% \begin{document}
%\end{verbatim}
% 
% Tambi'en se puede incluir |\selectspanish| en el archivo de configuraci'on,
% en cuyo caso se selecciona |spanish| tras cargar todas las lenguas y antes de salir
% definitivamente de \babel. Esto puede imponer ciertas restricciones en el orden
% en que se llaman los paquetes.
%
% \subsection{Espaciado}
% 
% El espaciado espa'nol difiere relativamente poco del ingl'es, aunque
% a diferencia de este 'ultimo el blanco que hay tras los signos de puntuaci'on
% es uniforme. O dicho en t'erminos de \TeX, |\frenchspacing| est'a activo.
% 
% Tambi'en en otros dos sitios hay diferencias. El primero son los
% puntos suspensivos, para los que se define una nueva orden |\...|
% que los da menos espaciados.
% He optado por incluirlo como nueva orden, en lugar de redefinir
% |\dots|, porque con la nueva forma no es necesario estar pendientes
% del espacio que le siga; por otra parte, me ha parecido conveniente
% preservar |\dots| por si hiciera falta en alg'un momento. Por ejemplo:
% \begin{quote}\small\begin{tabbing}
% |\... y solo estaba\... ella.|\quad\=\... y solo estaba\... ella.
% \end{tabbing}\end{quote}
% Tambi'en podr'ia escribirse los tres puntos sin m'as |...|, y en
% la pr'actica no hay diferencia, a menos que se cambie el
% valor del blanco tras punto; en ese caso, la forma con barra
% da los valores apropiados \emph{dentro} de una sentencia, y
% los tres puntos \emph{al final} de ella. Esta orden no 
% interfiere con el valor original de |\.| (un punto suprascrito).
%
% El segundo sitio es un espacio fino antes del signo |\%|.
%
% \subsection{Miscel'anea}
% 
% \begin{itemize}
%
% \item[$\bullet$] La orden |\lsc| se puede usar para siglas
% en versalitas.\footnote{En realidad
% esto es una costumbre inglesa y francesa m'as que espa~nola,
% pero por qu'e no adoptar lo que de bueno tienen otros.}
% Por ejemplo:
% \begin{quote}\small\begin{tabbing}
% |\lsc{RAE}| \quad \= \lsc{RAE}\\
% |\lsc{ReNFe}| \quad \= \lsc{ReNFe}.
% \end{tabbing}\end{quote}
% 
% \New Para evitar que con un tipo que carece de versalitas acabe
% apareciendo (por substituci'on) un texto de min'usculas se
% intenta usar en estos casos las versales \emph{reales}
% de un tama'no menor. Queda simplemente aceptable, pero es mejor que
% nada. (\LaTeX\ tiende a sustituir versalitas por versalitas,
% pero hay excepciones, como con las negritas.\footnote{Es una
% excepci'on natural, pues tradicionalmente no se han usado. Sin
% embargo, en el nuevo conjunto de tipos s'i las hay.})
%
% \item[$\bullet$] Se puede escribir |\'i| para |\'{\i}|.
%
% \item[$\bullet$] Hay una abreviaci'on adicional como utilidad
% tipogr'afica m'as que espec'ificamente espa'nola. En ciertos
% tipos, como Times, el extremo inferior de la barra est'a en la
% l'inea de base y expresiones como <<am/pm>> resultan poco
% est'eticas. |"/| produce una barra que, de ser necesario,
% se baja ligeramente. Computer Modern tiene una barra bien
% dise'nada y no es posible ilustrar aqu'i este punto
% pero en todo caso se escribir'ia |am"/pm|.\footnote{En \MEA{141}
% se recurre a una soluci'on que es la 'unica sencilla en
% programas de maquetaci'on: usar un cuerpo menor. Pero con \TeX{}
% es mucho m'as f'acil automatizar las tareas.}
%
% \end{itemize}
%
% \section{\sf{spanishb} como lengua principal}
% 
% \babel{} considera la 'ultima lengua citada en |\usepackage| y 
% |\documentclass|, por este orden, como la lengua principal.  Si la 
% lengua principal es |spanish|, se carga el archivo |spanishb.llf|
% que adapta varios elementos
% a los usos tipogr'aficos espa~noles. En particular:
% \begin{itemize}
% \item Cambian |enumerate| e |itemize|.
% El primero usa la siguiente secuencia:\,\footnote{No hay raz'on 
% concreta para ella. Es tan s'olo una f'ormula de compromiso.}\\
% \quad 1.\\
% \qquad \emph{a})\\
% \quad\qquad 1)\\
% \qquad\qquad \emph{a$'$})\\
% En el segundo hay --- en todos los niveles.
%
% \item La e~ne est'a presente en |\alph| y |\Alph|.
%
% \item Para las notas cuya llamada se hace con s'imbolos se
% emplean uno, dos, tres... asteriscos. Aparte de que es m'as sencillo
% de ver, en casi ninguna lengua se sigue la costumbre angloamericana
% de usar una sucesi'on de cruces, barras, etc.\footnote{\DOT{162}.}
%
% \item Las comillas latinas para |OT1| son menos angulosas y se generan
% con unas puntas de flecha que hay en |lasy|.
%
% \item Como en castellano no se usan n'umeros romanos
% en min'uscula, |\roman| se redefine para que los d'e en
% versalitas.\footnote{\DTL{197}.}
%
% \begin{quote}\small
% \textbf{Nota.} Por desgracia, |\roman| escribe el n'umero de
% p'agina de una forma que MakeIndex no puede entender, por lo
% que las l'ineas afectadas en principio se eliminan. Por ello
% el archivo |.idx| ha de ser convertido antes de pasarlo por MakeIndex.
% Con este paquete se proporciona la utilidad |romanidx.tex| que se
% encarga de ello. Simplemente se compone ese archivo con \LaTeX{}
% y a continuaci'on se responde a las preguntas que se formulan.
% Este proceso no es necesario si no se introdujo ninguna
% entrada de 'indice en p'aginas numeradas con |\roman| (lo cual ser'a
% lo m'as normal).
% \end{quote}
%
% \item Los n'umeros en los t'itulos est'an seguidos por un punto 
% tanto en el texto como en el 'indice. Adem'as,
% el primer p'arrafo tras el t'itulo no elimina la sangr'ia.
% 
% \end{itemize}
%
% Si no se desean estos cambios, basta mover el archivo 
% |spanish.llf| adonde \TeX\ no pueda encontrarlo; todos ellos
% son <<transparentes>> en el sentido de que no son necesarios para
% componer el documento, aunque naturalmente el resultado ser'a distinto.
% Estos cambios funcionan con las clases est'andar; con otras
% tal vez alguno de ellos no tenga efecto.
%
% \section{Configuraci'on}
%
% En sus 'ultimas versiones, \babel{} proporciona la posibilidad
% de cargar autom'aticamente un archivo con el mismo nombre que
% el principal, pero con extensi'on |.cfg|. |spanishb|
% proporciona unas pocas 'ordenes para ser usadas en este archivo:
% \begin{itemize}
% \item[$\diamond$] |\es@activeacute|\\[1ex]
% Activa siempre las abreviaciones con ap'ostrofos, sin que sea
% necesario incluir |activeacute| como opci'on en |\usepackage|.
%
% \item[$\diamond$] |\es@enumerate{<leveli>}|%
%      |{<levelii>}{<leveliii>}{<leveliv>}|\\[1ex] 
% Cambia los valores preestablecidos por |spanishb| para
% |enumerate|. \textit{leveln} consiste en una letra, que
% indica qu'e formato tendr'a el n'umero, seguida
% de cualquier texto. La letra tiene que ser: |1| (ar'abigo),
% |a| (min'uscula \emph{cursiva}\,\footnote{La letra es cursiva
% pero no los signos que le puedan seguir. V'ease \DTL{11}.}), |A| (versal),
% |i| (romano \emph{versalita}), |I| (romano versal) o
% finalmente |o| (ordinal\,\footnote{Lo normal es no a'nadir ning'un 
% signo tras ordinal.}).
%
% Esta orden no est'a pensada para hacer cambios elaborados, sino
% simplemente meros reajustes. Los valores preestablecidos 
% equivalen a
%\begin{verbatim}
% \es@enumerate{1.}{a)}{1)}{a$'$)}
%\end{verbatim}
%
% \item[$\diamond$] |\es@itemize{<leveli>}|%
%      |{<levelii>}{<leveliii>}{<leveliv>}|\\[1ex] 
% Lo mismo para |itemize|, s'olo que los argumentos se
% usan de forma literal. Los valores preestablecidos 
% equivalen a
%\begin{verbatim}
% \es@itemize{---}{---}{---}{---}
%\end{verbatim}
%
% \item[$\diamond$] |\es@operators|\\[1ex]
% Todo lo relativo a operadores se cancela con
%\begin{verbatim}
% \let\es@operators\relax
%\end{verbatim}
% 
% \item[$\diamond$] |\selectspanish|\\[1ex]
% Si esta orden aparece aqu'i, entonces |spanish| se selecciona
% una vez que se han cargado todas las lenguas.
% 
% \item[$\diamond$] |\deactivatequoting|\\[1ex]
% Por omisi'on, las abreviaciones |<<| y |>>| se activan con
% \sf{spanishb}, pero se puede cambiar este comportamiento
% incluyendo esta orden.
%
% \end{itemize}
%
% Sin embargo, conviene recordar que todos los cambios
% operados desde este archivo restan compatibilidad al
% documento, por lo que si se distribuye conviene adjuntarlo
% con el entorno |filecontents|.
%
% \section{English Summary}
% 
% This style provides:
% \begin{itemize}
% \item Translations following the International \LaTeX{} 
% conventions (see ``Cuadro~1'')
% as well as |\today|.
% 
% \item Shortcuts listed in ``cuadro~2.'' Examples in subsection~3.4
% are illustrative, where \hmk{} means a possible hyphenation point.
% Note that |"~| has a special meaning in \textsf{spanishb}
% different to other languages, and is used mainly in linguistic contexts.
% 
% \item \emph{In math mode} a dot followed by a digit is replaced
% by a decimal comma.
% 
% \item Spanish ordinals and abbeviations with |\sptext|
% as, for instance, |1\sptext{er}| giving 1\sptext{er} Note the
% preceptive dot is included.
% 
% \item Accented functions: l'im, m'ax, m'in. You may globally omit
% the accents with the |\unaccentedoperators|. Spaced functions: arc\,cos.
% You may globally kill that space with |\unspacedoperators|.
% 
% \item A |quoting| environment and a related pair of shorthands |<<|
% and |>>|. See subsection~3.7 for examples. The command
% |\deactivatequoting| deactivates these shorthand in case 
% you want to use |<| and |>| in some AMS commands and numerical comparisons.
% 
% \item The command |\selectspanish| selects the |spanish| language
% \emph{and} its shorthands. (Intended for the preamble.)
% 
% \item |\frenchspacing| is used.
% 
% \item Ellipsis are best typed |...| or, within a sentence, |\...|
% 
% \item There is a small space before |\%|.
% 
% \item |\lsc| provides lowercase small caps. (See subsection~3.10.)
% \end{itemize}
% 
% Just in case |spanish| is the main language, the file |spanishb.llf|
% is loaded, which modifies the standard classes in the following way
% (see section~4):
% \begin{itemize}
% \item Both |enumerate| and |itemize| are adapted to Spanish rules.
% 
% \item Both |\alph| and |\Alph| include \textit{'n} after \textit{n}.
% 
% \item Symbol footmarks are one, two, three\dots{} asterics.
% 
% \item |OT1| guillemets are generated with two |lasy| symbols instead
% of small |\ll| and |\gg|.
% 
% \item |\roman| is redefined to write small caps roman numerals, since
% lowercase roman numerals are not allowed. However, \textit{MakeIndex}
% rejects entries containing pages in that format. The |.idx| file must
% be preprocessed if the document has this kind of entries with
% the provided |romanidx.tex| tool---just \TeX{} it and follow the
% instructions.
% 
% \item There is a dot after section numbers in titles and toc.
% \end{itemize}
% This file will be ignored if \LaTeX{} doesn't find it.
% 
% Some additional commands are provided to be used in the |spanishb.cfg|
% file:
% \begin{itemize}
% \item With |\es@activeacute| acute accents are always active,
% overriding the package option.
% 
% \item |\es@enumerate| sets the labels to be used by |enumerate|. The
% same applies to |\es@itemize| and |itemize|.
% 
% \item |\es@operators| stores the operator commands (subsection~3.6).
% All of them are canceled with
%\begin{verbatim}
% \let\es@operators\relax
%\end{verbatim}
% \end{itemize}
% The commands |\deactivatequoting| and |\selectspanish| may be used
% in this file, too.
% 
% The file |spanishb.tex| provides a subset of these commands for
% use with Plain TeX.
% 
% \section{Formatos distintos a \LaTeXe}
% 
% \New Entre los archivos generados por \textsf{spanishb} est'a 
% |spanishb.tex| que proporciona un subconjunto de las utilidades
% b'asicas para su uso con otros formatos, principalmente Plain y 
% \LaTeX2.09. Con el primero hay que hacer
%\begin{verbatim}
% \input spanishb
%\end{verbatim}
% y con el segundo incluir |spanishb| entre las opciones de estilo.
% 
% Se incluyen: las traducciones, casi todas las abreviaciones, coma 
% decimal, utilidades para divisi'on de palabras, ordinales en una
% versi'on simplificada (y no muy elegante), funciones matem'aticas,
% entrecomillados en \LaTeX2.09, |\'i| y espaciado.
% La selecci'on de la lengua es inmediata al cargar el archivo.
% 
% En cambio no est'an disponibles: los entrecomillados en Plain, 
% |\lsc|, las adaptaciones proporcionadas por |spanishb.llf| ni
% el archivo de configuraci'on.
% 
%  
% 
% \section{Otros paquetes}
% 
% En esta secci'on comento algunos paquetes que pueden ser de utilidad 
% para un documento en castellano.
% 
% \begin{description}
% \item[\sf{Koma-Script}] Un conjunto de clases pensado
% para tipograf'ia europea. Por desgracia, parte del manual est'a s'olo en 
% alem'an, pero en lo fundamental se usan de forma id'entica a las clases 
% est'andar. Con 'el vienen algunos estilos para los folios (alternativo a
% \sf{fancyhdr}) o para reajustar el tama'no de la mancha 
% (es decir, la parte impresa de la p'agina) mediante un m'etodo 
% ideado por el argentino Ra'ul M. Rosaviro.\footnote{\emph{De la unidad 
% art'istica del libro}, Buenos Aires, Imprenta Semca, 1947. Por desgracia 
% no est'a mencionado en el paquete.}
% 
% \item[Iniciales] Hay varios paquetes para letras iniciales, pero ninguno
% sigue las pautas castellanas. Sin embargo, es f'acil adaptarlos como
% se puede ver en el siguiente c'odigo para uno de ellos (\sf{dropping}).
%\begin{verbatim}
% \newcommand{esdrop}[2]{%
%   \def\tempa{#2}%
%   \dropping{2}{#1\hskip4pt}\ignorespaces
%   \ifx\tempa\empty\else
%     {\scshape\hskip-4pt#2}%
%   \fi}
%\end{verbatim}
% que se usar'ia, por ejemplo:
%\begin{verbatim}
% \esdrop{E}{jemplo} del uso de...
% \esdrop{A}{} decir verdad...
%\end{verbatim}
% Es decir, el primer argumento es la inicial y el segundo es el
% resto de la primera palabra.
%   
% \item[\sf{Theorem}] Para cambiar el formato de teoremas.
% 
% \item[\sf{Caption2}] Lo mismo para ep'igrafes. La opci'on de
% paquete |centerlast| es especialmente interesante, pues crea
% los ep'igrafes en tri'angulo espa~nol.
% 
% \end{description}
%
% \begin{thebibliography}{\hskip3pc}
% \addcontentsline{toc}{section}{Referencias}
% \small
%
% \bibitem[\lsc{DRAE}]{drae} \textit{Diccionario de la Academia Espa'nola}, 
%   Madrid, Espasa-Calpe, 21"a ed., 1992.
%
% \bibitem[\lsc{DOT}]{dot} Jos'e Mart'inez de Sousa,
%   \textit{Diccionario de ortograf'ia t'ecnica}, 
%   Madrid, Germ'an S'anchez Ruip'erez/Pir'amide, 1987.
%   (Biblioteca del libro.)
%
% \bibitem[\lsc{DTL}]{dtl} Jos'e Mart'inez de Sousa,
%   \textit{Diccionario de tipograf'ia y del libro}, 
%   Madrid, Paraninfo, 3"a ed., 1992.
%
% \bibitem[\lsc{MEA}]{mea} Jos'e Mart'inez de Sousa,
%   \textit{Manual de edici'on y autoedici'on}, 
%   Madrid, Pir'amide, 1994.
%
% \end{thebibliography}
%
% 
% \begingroup
% \small \parindent0pt \parskip1.5ex
% {\itshape
% Como normalmente el primer contacto con \TeX{} es por una tesis (tal
% es mi caso, aunque no fuera precisamente la m'ia) cito libros que
% est'an relacionados con el tema a los que he tenido acceso.
% Est'an por orden de preferencia; en  particular, los dos 'ultimos me
% parecen poco recomendables.}
% 
% \parindent-1.5pc \leftskip1.5pc
%
%   Umberto Eco,
%   \textit{C'omo se hace una tesis}, 
%   Barcelona, Gedisa, 1982.
%
%   Prudenci Comes,
%   \textit{Gu'ia para la redacci'on y presentaci'on de trabajos
%   cient'ificos, informes t'ecnicos y tesinas}, 
%   Barcelona, Oikos-Tau, 1971.
%
%   Javier Lasso de la Vega,
%   \textit{C'omo se hace una tesis doctoral}, 
%   Madrid, Fundacion Universitaria Espa~nola, 1977.
%
%   Jos'e Romera Castillo y otros,
%   \textit{Manual de estilo}, 
%   Madrid, Universidad Nacional de Educaci'on a Distancia, 1996.
%
%   Restituto Sierra Bravo,
%   \textit{Tesis doctorales y trabajos de investigaci'on cient'ifica}, 
%   Madrid, Paraninfo, 1986.
%
% \parindent0pc \leftskip0pc
%
% {\itshape
% Para cuestiones meramente \TeX nicas, las referencias usadas son:}
%
% \parindent-1.5pc \leftskip1.5pc
%
%   Donald E. Knuth, 
%   \textit{The \TeX book}, 
%   Reading, Addison Wesley, rev. ed., 1994.
%
%   Michel Gossens, Frank Mittelbach, Alexander Samarin,
%   \textit{The \LaTeX{} Companion}, 
%   Reading, Addison Wesley, rev. ed., 1994.
%
%   Marion Neubauer,
%   <<Feinheiten bei wissenschaftlichen Publikationen>>,
%   \textit{Die \TeX nisches Kom\"odie},  Teil I, vol. 8, n"o 4, 1996,
%   pp. 23-40; Teil II, vol. 9, n"o 1, 1997, pp. 25-44.
%
%   Johannes Braams,
%   \textit{Babel, a multilingual package for use with \LaTeX's 
%   standard document classes}, documento electr'onico.
%
%
% \endgroup
%
% \StopEventually{}
%<*driver>
\IfFileExists{spanishb.ldf}{}%
  {\message{See 'readme' before typesetting this file^^J%
            Vease 'leame' antes de componer este archivo}%
   \stop}
\documentclass[spanishb]{ltxdoc}
\usepackage[activeacute]{babel}
\newcommand\babel{\textsf{Babel}}

\arrayrulewidth=2\arrayrulewidth
\def\toprule{\cline{1-2}\\[-2ex]}
\def\botrule{\\[.6ex]\cline{1-2}}
\def\sf#1{\textsf{#1}}
\edef\hmk{$\string|$}

\def\New{\leavevmode\marginpar{\raggedleft\sffamily Nuevo en 1.1}}

\def\nm#1{\unskip\,$^{#1}$}
\def\nt#1{\quad$^{#1}$\,\ignorespaces}

\makeatletter
  \def\@biblabel{}
\makeatother

\def\DOT#1{\lsc{DOT},~#1}
\def\DTL#1{\lsc{DTL},~#1}
\def\MEA#1{\lsc{MEA},~#1}

\raggedright
\parindent1em

\OnlyDescription
\begin{document}
 \DocInput{spanishb.dtx}
\end{document}
%</driver>
%
%<*style>
\expandafter\ifx\csname documentclass\endcsname\relax
  \input spanishb.tex\relax
\else
  \input  spanishb.ldf\relax
\fi
%</style>
%
%<*latex>

\ProvidesFile{spanishb.ldf}
 [1998/10/01 v1.1 A new Spanish support for the babel system]

%</latex>
%<*latex|lplain>
\ifx\undefined\captionsspanish
\else
  \selectlanguage{spanish}
  \expandafter\endinput
\fi

\chardef\atcatcode=\catcode`\@
\catcode`\@=11\relax
\ifx\undefined\babel@core@loaded\input babel.def\relax\fi
\ifx\undefined\originalTeX \let\originalTeX\empty  \else\originalTeX\fi
\ifx\undefined\l@spanish
  \@nopatterns{Spanish (alternate)}
  \adddialect\l@spanish0
\fi
  
% \section{Captions}
%
% \changes{spanishb~1.1}{98/03/17}{Corrected \indexname to the promised text}

\addto\captionsspanish{%
  \def\prefacename{Prefacio}%
  \def\refname{Referencias}%
  \def\abstractname{Resumen}%
  \def\bibname{Bibliograf\'{\i}a}%
  \def\chaptername{Cap\'{\i}tulo}%
  \def\appendixname{Ap\'endice}%
  \def\listfigurename{\'Indice de figuras}%
  \def\listtablename{\'Indice de cuadros}%
  \def\indexname{\'Indice alfab\'etico}%
  \def\figurename{Figura}%
  \def\tablename{Cuadro}%
  \def\partname{Parte}%
  \def\enclname{Adjunto}%
  \def\ccname{Copia a}%
  \def\headtoname{A}%
  \def\pagename{P\'agina}%
  \def\seename{v\'ease}%
  \def\alsoname{v\'ease tambi\'en}%
  \def\proofname{Demostraci\'on}}
  
\expandafter\ifx\csname chapter\endcsname\relax
  \addto\captionsspanish{\def\contentsname{\'Indice}}
\else
  \addto\captionsspanish{\def\contentsname{\'Indice general}}
\fi

% \section{Date}
% 
% Y la fecha, con los meses en min'sucula.

\def\datespanish{%
 \def\today{\the\day~de \ifcase\month\or enero\or febrero\or
      marzo\or abril\or mayo\or junio\or julio\or agosto\or septiembre\or
      octubre\or noviembre\or diciembre\fi\ de~\the\year}}

% \section{Script text}
% 
% La definicion que se da aqui es m'as elaborada que la de
% |\textsuperscript| de \LaTeX. No se usa el modo matem'atico
% y el tama'no depende de si el texto voladito es en mayusculas,
% en cuyo caso se emplea |\scriptscriptsize|, o no.
% Tambi'en se a'nade el punto preceptivo.
% 
\addto\extrasspanish{%
  \babel@save\sptext
  \def\sptext{\protect\es@sptext}}

%</latex|lplain>
%<*latex>
\newcommand\es@sptext[1]{%
  {.\setbox\z@\hbox{8}\dimen@\ht\z@
   \csname S@\f@size\endcsname
   \edef\@tempa{\def\noexpand\@tempc{#1}%
     \lowercase{\def\noexpand\@tempb{#1}}}\@tempa
   \ifx\@tempb\@tempc
     \fontsize\sf@size\z@\selectfont\advance\dimen@-1.1ex
   \else
     \fontsize\ssf@size\z@\selectfont\advance\dimen@-1.5ex
   \fi
   \math@fontsfalse\raise\dimen@\hbox{#1}}}

%</latex>
%<*lplain>
\newcommand\es@sptext[1]{%
  {.\setbox\z@\hbox{8}\dimen@\ht\z@
   \edef\@tempa{\def\noexpand\@tempc{#1}%
     \lowercase{\def\noexpand\@tempb{#1}}}\@tempa
   \ifx\@tempb\@tempc
     \advance\dimen@-0.7ex\raise\dimen@\hbox{$\scriptstyle\rm#1$}%     
   \else
     \advance\dimen@-0.8ex\raise\dimen@\hbox{$\scriptscriptstyle\rm#1$}%
   \fi}}
%</lplain>
% \section{Lower small caps}
%<*latex>

\addto\extrasspanish{%
  \babel@save\lsc
  \def\lsc{\protect\es@lsc}}

% \changes{spanishb~1.1}{98/05/11}{\es@lsc rewritten to incorporate the procedure originally
%                 only available in \roman}

\def\es@lsc#1{%
  \hbox{\scshape\selectfont % Parece redundante, pero no lo es
     \expandafter\ifx\csname\f@encoding/\f@family/\f@series
         /n/\f@size\expandafter\endcsname
       \csname\curr@fontshape/\f@size\endcsname
       \csname S@\f@size\endcsname
       \fontsize\sf@size\z@\selectfont
	   \PackageInfo{spanishb}{Using faked small caps}%
       \MakeUppercase{#1}%
     \else
       \MakeLowercase{#1}%
     \fi}}

% Selection
% ~~~~~~~~~
  
\def\selectspanish{%
  \def\selectspanish{%
    \def\selectspanish{%
      \PackageWarning{spanishb}{\string\selectspanish ignored}}%
    \es@select
    \let\es@select\@undefined}}
    
\@onlypreamble\selectspanish

\def\es@select{%
  \selectlanguage{spanish}%
  \catcode`\"\active\catcode`\~=\active
  \catcode`\<\active\catcode`\>=\active
  \es@quoting}

%</latex>
% quoting Environment
% ~~~~~~~~~~~~~~~~~~~
%<*latex|lplain>
\newif\ifes@listquot
%</latex|lplain>
%<*lplain>
\expandafter\ifx\csname newenvironment\endcsname\relax\else
	\csname newtoks\endcsname\es@quottoks
	\csname newcount\endcsname\es@quotdepth
%</lplain>
%<*latex>
\newtoks\es@quottoks
\newcount\es@quotdepth
%</latex>
%<*latex|lplain>
\newenvironment{quoting}
  {\leavevmode
   \advance\es@quotdepth1
   \csname lquot\romannumeral\es@quotdepth\endcsname%
   \ifnum\es@quotdepth=1
     \es@listquotfalse
     \let\es@quotpar\everypar
     \let\everypar\es@quottoks
     \everypar\expandafter{\the\es@quotpar}%
     \es@quotpar{\the\everypar
       \ifes@listquot\global\es@listquotfalse\else\es@quotcont\fi}%
   \fi
   \toks@\expandafter{\es@quotcont}%
   \edef\es@quotcont{\the\toks@
       \expandafter\noexpand
       \csname rquot\romannumeral\es@quotdepth\endcsname}}
  {\csname rquot\romannumeral\es@quotdepth\endcsname}
  
\def\lquoti{\guillemotleft{}}
\def\rquoti{\guillemotright{}}
\def\lquotii{``}
\def\rquotii{''}
\def\lquotiii{`}
\def\rquotiii{'}
  
\let\es@quotcont\@empty

\def\es@listquot{%
  \csname rquot\romannumeral\es@quotdepth\endcsname
  \global\es@listquottrue}
%</latex|lplain>
%<+lplain>\fi

% Spacing
% ~~~~~~~
%<*latex|lplain>
\addto\extrasspanish{\bbl@frenchspacing}
\addto\noextrasspanish{\bbl@nonfrenchspacing}

\addto\extrasspanish{%
  \let\es@save@dot\.%
  \babel@save\.%
  \def\.{\@ifnextchar.{\es@dots}{\es@save@dot}}}

\def\es@dots..{\hbox{...}\spacefactor\@M}

\addto\extrasspanish{%
  \let\percentsign\%%
  \babel@save\%%
  \def\%{\unskip\,\percentsign{}}}

% Accents
% ~~~~~~~

\DeclareTextCompositeCommand{\'}{OT1}{i}{\@tabacckludge'{\i}}
%</latex|lplain>
% \changes{spanishb~1.1}{98/05/15}{Rewritten part}
%<*latex>
\expandafter\ifx\csname @tabacckludge\endcsname\relax
  \let\@tabacckludge\a
\fi
%</latex>
%<*lplain>
\expandafter\ifx\csname newcommand\endcsname\relax
  \def\@tabacckludge#1{\csname\string#1\endcsname}
\else
  \def\@tabacckludge#1{\csname a\string#1\endcsname}
\fi
%</lplain>
%<*latex|lplain>
\let\es@tak\@tabacckludge
\def\@tabacckludge{\expandafter\es@tak\string}%
\let\a\@tabacckludge

\expandafter\ifx\csname add@accent\endcsname\relax
  \def\add@accent#1#2{\accent#1 #2}
\fi

% Es curioso. Hasta ahora nadie se ha dado cuenta que
% |\accent| siempre repone el valor de |\spacefactor|
% a 1000, cuando el que deseamos es el de la letra
% que se acent'ua.
% Interestingly, up to now none seems to have realized
% that |\accent| resets the |\spacefactor| to 1000.
% As pointed me out Frank Mittelbach, the current
% solution does work if #3 is a macro or empty.
% However, in this context #3 is always a letter.
% It seems that that will be fixed in a next LaTeX
% release.
%</latex|lplain>
%<*latex>
\def\es@accent#1#2#3{%
  \expandafter\@text@composite
  \csname OT1\string#1\endcsname#3\@empty\@text@composite
  {\allowhyphens\add@accent{#2}{#3}\allowhyphens
   \spacefactor\sfcode`#3 }}
%</latex>
%<*lplain>
\def\es@accent#1#2#3{%
  \allowhyphens\add@accent{#2}{#3}\allowhyphens
  \spacefactor\sfcode`#3 }
%</lplain>
% Shorthands
% ~~~~~~~~~~
% We must be careful with catcodes. Sadly, shorthands are
% handled by babel in a quite caotic way.
%<*latex|lplain>

\addto\extrasspanish{\languageshorthands{spanish}}

% First, decimal comma
% ~~~~~~~~~~~~~~~~~~~~~
\catcode`"=12

\def\decimalcomma{\def\es@decimal{{,}}}
\def\decimalpoint{\def\es@decimal{{.}}}
\decimalcomma

\initiate@active@char{.}

\declare@shorthand{system}{.}{\mathchar\es@period@code\relax}

\addto\extrasspanish{%
  \edef\es@period@code{\the\mathcode`\.}%
  \mathcode`\.="8000 %
  \bbl@activate{.}}
  
\addto\noextrasspanish{%
  \mathcode`\.=\es@period@code\relax}
   
\AtBeginDocument{\catcode`\.=12}

\declare@shorthand{spanish}{.1}{\es@decimal1}
\declare@shorthand{spanish}{.2}{\es@decimal2}
\declare@shorthand{spanish}{.3}{\es@decimal3}
\declare@shorthand{spanish}{.4}{\es@decimal4}
\declare@shorthand{spanish}{.5}{\es@decimal5}
\declare@shorthand{spanish}{.6}{\es@decimal6}
\declare@shorthand{spanish}{.7}{\es@decimal7}
\declare@shorthand{spanish}{.8}{\es@decimal8}
\declare@shorthand{spanish}{.9}{\es@decimal9}
\declare@shorthand{spanish}{.0}{\es@decimal0}

\catcode`\.=12

% Now accents and tools
% ~~~~~~~~~~~~~~~~~~~~~

\initiate@active@char{"}
\initiate@active@char{~}

\declare@shorthand{system}{~}{\nobreakspace}

% \changes{98/10/01}{Added the \es@umlaut macro because
%   previously "u killed hyphenation in the word}

\def\es@umlaut#1{%
  \allowhyphens\add@accent{127}{#1}\allowhyphens
  \spacefactor\sfcode`#1 }

% We override the default " of babel, intended for german.
\addto\extrasspanish{%
  \bbl@activate{"}%
  \bbl@activate{~}%
  \babel@save\bbl@umlauta \let\bbl@umlauta\es@umlaut
%</latex|lplain>
%<*latex>
  \expandafter\babel@save\csname OT1\string\~\endcsname
  \expandafter\def\csname OT1\string\~\endcsname{\es@accent\~{126}}%
  \expandafter\babel@save\csname OT1\string\'\endcsname
  \expandafter\def\csname OT1\string\'\endcsname{\es@accent\'{19}}}
%</latex>
%<*lplain>
  \babel@save\~%
  \def\~{\es@accent\~{126}}%
  \babel@save\'%
  \def\'#1{\if#1i\es@accent\'{19}\i\else\es@accent\'{19}{#1}\fi}}
%</lplain>
%<*latex|lplain>
\declare@shorthand{spanish}{"a}{\sptext{a}}
\declare@shorthand{spanish}{"A}{\sptext{A}}
\declare@shorthand{spanish}{"o}{\sptext{o}}
\declare@shorthand{spanish}{"O}{\sptext{O}}

\declare@shorthand{spanish}{"u}{\"u}
\declare@shorthand{spanish}{"U}{\"U}

\declare@shorthand{spanish}{"c}{\c{c}}
\declare@shorthand{spanish}{"C}{\c{C}}

\declare@shorthand{spanish}{"<}{\guillemotleft{}}
\declare@shorthand{spanish}{">}{\guillemotright{}}
\declare@shorthand{spanish}{"-}{\allowhyphens\-\allowhyphens}
\declare@shorthand{spanish}{"=}{\allowhyphens -\hskip\z@skip}
\declare@shorthand{spanish}{"~}
  {\allowhyphens\discretionary{-}{-}{-}\allowhyphens}
\declare@shorthand{spanish}{"r}
  {\allowhyphens\discretionary{-}{}{r}\allowhyphens}
\declare@shorthand{spanish}{"R}
  {\allowhyphens\discretionary{-}{}{R}\allowhyphens}
\declare@shorthand{spanish}{""}{\hskip\z@skip}
\declare@shorthand{spanish}{"/}
  {\setbox\z@\hbox{/}%
   \dimen@\ht\z@
   \advance\dimen@-1ex \advance\dimen@\dp\z@
   \dimen@.31\dimen@   \advance\dimen@-\dp\z@
   \ifdim\dimen@>0pt
     \kern.01em\lower\dimen@\box\z@\kern.03em
   \else
     \box\z@
   \fi}

\declare@shorthand{spanish}{~n}{\~n}
\declare@shorthand{spanish}{~N}{\~N}

%</latex|lplain>

% << and >> as quoting
% ~~~~~~~~~~~~~~~~~~~~

%<+lplain>\expandafter\ifx\csname es@quottoks\endcsname\relax\else
%<*latex|lplain>
\initiate@active@char{<}
\initiate@active@char{>}

\declare@shorthand{system}{<}{\csname normal@char\string<\endcsname}
\declare@shorthand{system}{>}{\csname normal@char\string>\endcsname}

\addto\extrasspanish{%
  \bbl@activate{<}%
  \bbl@activate{>}}
%</latex|lplain>
%<+latex>\AtBeginDocument{\es@quoting}
%<*latex|lplain>

\def\activatequoting{%
  \catcode`>=\active \catcode`<=\active
  \let\es@quoting\activatequoting}
\def\deactivatequoting{%
  \catcode`>=12 \catcode`<=12
  \let\es@quoting\deactivatequoting}

\let\es@quoting\relax

\declare@shorthand{spanish}{<<}
  {\textormath{\begin{quoting}}{\ll}}
\declare@shorthand{spanish}{>>}
  {\textormath{\end{quoting}}{\gg}}

% To be on the safe side:

\catcode`>=12 \catcode`<=12
%</latex|lplain>
%<+lplain>\fi
%<*latex|lplain>
\begingroup
\catcode`\'=\active
\gdef\es@activeacute{%
 \gdef\es@acute##1{\textormath{\@tabacckludge'##1}{\sp\prime ##1}}%
 \expandafter\initiate@active@char\string'%
 \addto\extrasspanish{\bbl@activate{'}}%
 \declare@shorthand{spanish}{'a}{\es@acute a}%
 \declare@shorthand{spanish}{'A}{\es@acute A}%
 \declare@shorthand{spanish}{'e}{\es@acute e}%
 \declare@shorthand{spanish}{'E}{\es@acute E}%
 \declare@shorthand{spanish}{'i}{\es@acute i}%
 \declare@shorthand{spanish}{'I}{\es@acute I}%
 \declare@shorthand{spanish}{'o}{\es@acute o}%
 \declare@shorthand{spanish}{'O}{\es@acute O}%
 \declare@shorthand{spanish}{'u}{\es@acute u}%
 \declare@shorthand{spanish}{'U}{\es@acute U}%
 \declare@shorthand{spanish}{'n}%
   {\textormath{\~n}{\sp\prime n}}%
 \declare@shorthand{spanish}{'N}%
   {\textormath{\~N}{\sp\prime N}}%
 \declare@shorthand{spanish}{''}%
   {\textormath{\textquotedblright}{\sp\bgroup\prim@s'}}%
 \addto\es@select{\catcode`'=\active}}
\endgroup
%</latex|lplain>
%<*latex>
\@ifpackagewith{babel}{activeacute}
  {\es@activeacute\let\es@activeacute\relax}{}
%</latex>
%<+lplain>\es@activeacute
% Math
% ~~~~~

% No es facil a~nadir un acento en un operador.
% La dificultad estriba en que se debe evitar usar
% texto (o sea, \mbox, ya que puede dar un tipo
% incorrecto o un cuerpo inadecuado en 'indices)
% y al mismo tiempo acceder a una orden espec'ifica
% de texto, como es \i. Otra soluci'on podr'ia haber
% sido definir una nueva orden matem'atica
% dependiente de la codificaci'on.
% \changes{spanishb~1.1}{98/04/01}{dotless math i handling
%     rewritten}
% \chages{98/05/13}{Again rewriten in full. Now
%     that character is accesible as |\dotlessi|}
%<*latex|lplain>
\addto\extrasspanish{%
  \babel@save\dotlessi
  \def\dotlessi{\protect\es@dotlessi}}
%</latex|lplain>
%<*latex>
\addto\@uclclist{\dotlessi\i}

\def\es@dotlessi{%
  \ifmmode
    \begingroup
      \ifnum\mathgroup=\m@ne\mathgroup\symoperators\fi
      \count@\escapechar \escapechar=\m@ne
      \expandafter\expandafter\expandafter
         \split@name\expandafter\string\the\textfont\mathgroup\@nil
      \escapechar=\count@
      \@ifundefined{\f@encoding\string\i}%
        {\edef\f@encoding{\string?}}{}%
      \expandafter\count@\the\csname\f@encoding\string\i\endcsname
      \advance\count@28672 % ="7000
      \mathchar\count@
    \endgroup
  \else
    \i
  \fi}
%</latex>
%<*lplain>
\def\es@dotlessi{%
  \ifmmode
    \mathchar28688 % = "7010
  \else
    \i
  \fi}
%</lplain>
%<*latex|lplain>
\def\accentedoperators{%
  \def\es@op@i{\acute{\dotlessi}}\def\es@op@a{\acute{a}}}
\def\unaccentedoperators{%
  \def\es@op@i{i}\def\es@op@a{a}}
\accentedoperators

\def\spacedoperators{\let\es@op@sp\,}
\def\unspacedoperators{\let\es@op@sp\@empty}
\spacedoperators

\addto\extrasspanish{\es@operators}%
%</latex|lplain>
%<*lplain>
\def\es@operators{%
  \babel@save\lim
    \def\lim{\mathop{\rm l\protect\es@op@i m}}%
  \babel@save\max    \def\max{\mathop{\rm m\es@op@a x}}%
  \babel@save\min
    \def\min{\mathop{\rm m\protect\es@op@i n}}%
  \babel@save\rot    \def\rot{\mathop{\rm rot}}%
  \babel@save\sen    \def\sen{\mathop{\rm sen}}%
  \babel@save\senh   \def\senh{\mathop{\rm senh}}%
  \babel@save\arcsen \def\arcsen{\mathop{\rm arc\es@op@sp sen}}%
  \babel@save\tg     \def\tg{\mathop{\rm tg}}%
  \babel@save\tgh    \def\tgh{\mathop{\rm tgh}}%
  \babel@save\arctg  \def\arctg{\mathop{\rm arc\es@op@sp tg}}%
  \babel@save\arccos \def\arccos{\mathop{\rm arc\es@op@sp cos}}%
  \babel@save\cotg   \def\cotg{\mathop{\rm cotg}}}
%</lplain>
%<*latex>
\def\es@operators{%
  \babel@save\lim
    \def\lim{\mathop{\operator@font l\protect\es@op@i m}}%
  \babel@save\max    \def\max{\mathop{\operator@font m\es@op@a x}}%
  \babel@save\min
    \def\min{\mathop{\operator@font m\protect\es@op@i n}}%
  \babel@save\rot    \def\rot{\mathop{\operator@font rot}}%
  \babel@save\sen    \def\sen{\mathop{\operator@font sen}}%
  \babel@save\senh   \def\senh{\mathop{\operator@font senh}}%
  \babel@save\arcsen \def\arcsen{\mathop{\operator@font arc\es@op@sp sen}}%
  \babel@save\tg     \def\tg{\mathop{\operator@font tg}}%
  \babel@save\tgh    \def\tgh{\mathop{\operator@font tgh}}%
  \babel@save\arctg  \def\arctg{\mathop{\operator@font arc\es@op@sp tg}}%
  \babel@save\arccos \def\arccos{\mathop{\operator@font arc\es@op@sp cos}}%
  \babel@save\cotg   \def\cotg{\mathop{\operator@font cotg}}}

% Customization
% ~~~~~~~~~~~~~

\def\es@enumerate#1#2#3#4{%
  \def\es@enum{{#1}{#2}{#3}{#4}}}

\def\es@itemize#1#2#3#4{%
  \def\es@item{{#1}{#2}{#3}{#4}}}
  
\es@enumerate{1.}{a)}{1)}{a$'$}

\es@itemize{---}{---}{---}{---}

\loadlocalcfg{spanishb}
%</latex>
%<*latex|lplain>
\let\es@activeacute\@undefined


% Final
% ~~~~~

\def\spanishhyphenmins{\tw@\tw@}
\main@language{spanish}
%</latex|lplain>
%<*latex>
\AtEndOfPackage{%
  \def\bbl@tempa{spanish}%
  \ifx\bbl@main@language\bbl@tempa
    \InputIfFileExists{spanishb.llf}{}{}%
  \fi 
  \selectspanish}
%</latex>
%<*latex|lplain>
\catcode`\@=\atcatcode \let\atcatcode\relax
%</latex|lplain>
%<*lplain>
\selectlanguage{spanish}
\csname activatequoting\endcsname
%</lplain>
%
%<*llf>
\ProvidesFile{spanishb.llf}[1998/10/01 v1.1]

% enumerate and itemize
% ~~~~~~~~~~~~~~~~~~~~~

\def\es@enumdef#1#2#3\@@{%
  \if#21%
    \@namedef{theenum#1}{\arabic{enum#1}}%
  \else\if#2a%
    \@namedef{theenum#1}{\emph{\alph{enum#1}}}%
  \else\if#2A%
    \@namedef{theenum#1}{\Alph{enum#1}}%
  \else\if#2i%
    \@namedef{theenum#1}{\roman{enum#1}}%
  \else\if#2I%
    \@namedef{theenum#1}{\Roman{enum#1}}%
  \else\if#2o%
    \@namedef{theenum#1}{\arabic{enum#1}\sptext{o}}%
  \fi\fi\fi\fi\fi\fi
  \toks@\expandafter{\csname theenum#1\endcsname}
  \expandafter\edef\csname labelenum#1\endcsname
     {\noexpand\es@listquot\the\toks@#3\enspace}}

\def\p@enumii{\theenumi}
\def\p@enumiii{\theenumi\theenumii}
\def\p@enumiv{\p@enumiii\theenumiii}

\def\es@enumerate#1#2#3#4{%
  \es@enumdef{i}#1\@empty\@empty\@@
  \es@enumdef{ii}#2\@empty\@empty\@@
  \es@enumdef{iii}#3\@empty\@empty\@@
  \es@enumdef{iv}#4\@empty\@empty\@@}

\def\es@itemize#1#2#3#4{%
  \def\labelitemi{\es@listquot#1}%
  \def\labelitemii{\es@listquot#2}%
  \def\labelitemiii{\es@listquot#3}%
  \def\labelitemiv{\es@listquot#4}}
  
\expandafter\es@enumerate\es@enum
\expandafter\es@itemize\es@item

% Redefined guillemets
% ~~~~~~~~~~~~~~~~~~~~

\DeclareTextCommand{\guillemotleft}{OT1}{%
  \ifmmode\ll
  \else
    \save@sf@q{\penalty\@M
      \leavevmode\hbox{\usefont{U}{lasy}{m}{n}%
        \char40 \kern-0.19em\char40 }}%
  \fi}
  
\DeclareTextCommand{\guillemotright}{OT1}{%
  \ifmmode\gg
  \else
    \save@sf@q{\penalty\@M
        \leavevmode\hbox{\usefont{U}{lasy}{m}{n}%
          \char41 \kern-0.19em\char41 }}%
  \fi}
  
% \fnsymbol and \alph
% ~~~~~~~~~~~~~~~~~~
\def\@fnsymbol#1%
  {\ifcase#1\or*\or**\or***\or****\or
   *****\or******\else\@ctrerr\fi}

\def\@alph#1%
  {\ifcase#1\or a\or b\or c\or d\or e\or f\or g\or h\or i\or j\or
   k\or l\or m\or n\or \~n \or o\or p\or q\or r\or s\or t\or u\or v\or
   w\or x\or y\or z\else\@ctrerr\fi}

\def\@Alph#1%
  {\ifcase#1\or A\or B\or C\or D\or E\or F\or G\or H\or I\or J\or
   K\or L\or M\or N\or \~N \or O\or P\or Q\or R\or S\or T\or U\or V\or
   W\or X\or Y\or Z\else\@ctrerr\fi}

% And more
% ~~~~~~~~
% \changes{spanishb~1.1}{98/04/11}{|@afterindentfalse| is now made
%     \@afterindenttrue istead of |\relax| in order to
%      prevent errors if preceded by |\global|}

\let\@afterindentfalse\@afterindenttrue \@afterindenttrue

\def\@seccntformat#1{\csname the#1\endcsname.\quad}
\def\numberline#1{\hb@xt@\@tempdima{#1.\hfil}}

% \changes{spanishb~1.1}{98/05/13}{Since the code originally
%    here has been moved to |lsc| we define |roman| in
%   terms of |\lsc|}
% \changes{spanishb~1.1}{98/05/14}{Add esromanindex, to be used
%    by the romanidx.tex index preprocessor}

\def\@roman#1{\protect\es@roman{\number#1}}
\def\es@roman#1{\lsc{\romannumeral#1}}%
\def\esromanindex#1#2{#1{\lsc{#2}}}

%</llf>
%<*indexes>
\makeatletter

\newcount\es@converted
\newcount\es@processed

\def\es@encap{`\|}
\def\es@openrange{`\(}
\def\es@closerange{`\)}

\def\es@split@file#1.#2\@@{#1}
\def\es@split@ext#1.#2\@@{#2}

\typein[\answer]{^^JArchivo que convertir^^J%
   (extension por omision .idx):}
   
\@expandtwoargs\in@{.}{\answer}
\ifin@
  \edef\es@input@file{\expandafter\es@split@file\answer\@@}
  \edef\es@input@ext{\expandafter\es@split@ext\answer\@@}
\else
  \edef\es@input@file{\answer}
  \def\es@input@ext{idx}
\fi

\typein[\answer]{^^JArchivo de destino^^J%
   (archivo por omision: \es@input@file.eix,^^J%
    extension por omision .eix):}
\ifx\answer\@empty
  \edef\es@output{\es@input@file.eix}
\else
  \@expandtwoargs\in@{.}{\answer}
  \ifin@
     \edef\es@output{\answer}
  \else
     \edef\es@output{\answer.eix}
  \fi
\fi

\typein[\answer]{%
 ^^J?Se ha usado algun esquema especial de controles^^J%
 de MakeIndex para encap, open_range o close_range?^^J%
 [s/n] (n por omision)}
 
\if s\answer
  \typein[\answer]{^^JCaracter para 'encap'^^J%
    (\string| por omision)}
  \ifx\answer\@empty\else
    \edef\es@encap{%
	  `\expandafter\noexpand\csname\expandafter\string\answer\endcsname}
  \fi
  \typein[\answer]{^^JCaracter para 'open_range'^^J%
    (\string( por omision)}
  \ifx\answer\@empty\else
    \edef\es@openrange{%
	  `\expandafter\noexpand\csname\expandafter\string\answer\endcsname}
  \fi
  \typein[\answer]{^^JCaracter para 'close_range'^^J%
    (\string) por omision)}
  \ifx\answer\@empty\else
    \edef\es@closerange{%
	  `\expandafter\noexpand\csname\expandafter\string\answer\endcsname}
  \fi
\fi
   
\newwrite\es@indexfile
\immediate\openout\es@indexfile=\es@output

\newif\ifes@encapsulated

\def\es@roman#1{\romannumeral#1 }
\edef\es@slash{\expandafter\@gobble\string\\}

\def\indexentry{%
  \begingroup
  \@sanitize
  \es@indexentry}
  
\begingroup

\catcode`\|=12 \lccode`\|=\es@encap\relax
\catcode`\(=12 \lccode`\(=\es@openrange\relax
\catcode`\)=12 \lccode`\)=\es@closerange\relax

\lowercase{
\gdef\es@indexentry#1{%
  \endgroup
  \advance\es@processed\@ne
  \es@encapsulatedfalse
  \es@bar@idx#1|\@@
  \es@idxentry}%
}

\lowercase{
\gdef\es@idxentry#1{%
  \in@{\es@roman}{#1}%
  \ifin@
    \advance\es@converted\@ne
    \immediate\write\es@indexfile
	  {\string\indexentry{\es@b|\ifes@encapsulated\es@p\fi esromanindex%
	    {\ifx\es@a\@empty\else\es@slash\es@a\fi}}{#1}}%
  \else
    \immediate\write\es@indexfile
	  {\string\indexentry{\es@b\ifes@encapsulated|\es@p\es@a\fi}{#1}}%
  \fi}
}

\lowercase{
\gdef\es@bar@idx#1|#2\@@{%
  \def\es@b{#1}\def\es@a{#2}%
  \ifx\es@a\@empty\else\es@encapsulatedtrue\es@bar@eat#2\fi}
}

\lowercase{
\gdef\es@bar@eat#1#2|{\def\es@p{#1}\def\es@a{#2}%
  \edef\es@t{(}\ifx\es@t\es@p
  \else\edef\es@t{)}\ifx\es@t\es@p
  \else
    \edef\es@a{\es@p\es@a}\let\es@p\@empty%
  \fi\fi}
}

\endgroup

\input \es@input@file.\es@input@ext

\immediate\closeout\es@indexfile

\typeout{*****************}
\typeout{Se ha procesado: \es@input@file.\es@input@ext }
\typeout{Lineas leidas: \the\es@processed}
\typeout{Lineas convertidas: \the\es@converted}
\typeout{Resultado en: \es@output}
\ifnum\es@converted>\z@
  \typeout{Genere el indice a partir de ese archivo}
\else
  \typeout{No se ha realizado ningun tipo de conversion}
  \typeout{Se puede generar el archivo directamente^^J%
           de \es@input@file.\es@input@ext}
\fi
\typeout{*****************}
\@@end
%</indexes>
%
% \Finale
%
%%
%% \CharacterTable
%%  {Upper-case    \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
%%   Lower-case    \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
%%   Digits        \0\1\2\3\4\5\6\7\8\9
%%   Exclamation   \!     Double quote  \"     Hash (number) \#
%%   Dollar        \$     Percent       \%     Ampersand     \&
%%   Acute accent  \'     Left paren    \(     Right paren   \)
%%   Asterisk      \*     Plus          \+     Comma         \,
%%   Minus         \-     Point         \.     Solidus       \/
%%   Colon         \:     Semicolon     \;     Less than     \<
%%   Equals        \=     Greater than  \>     Question mark \?
%%   Commercial at \@     Left bracket  \[     Backslash     \\
%%   Right bracket \]     Circumflex    \^     Underscore    \_
%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%%   Right brace   \}     Tilde         \~}
%%



