summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/generic/babel/spanish.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/generic/babel/spanish.dtx')
-rw-r--r--Master/texmf-dist/source/generic/babel/spanish.dtx270
1 files changed, 140 insertions, 130 deletions
diff --git a/Master/texmf-dist/source/generic/babel/spanish.dtx b/Master/texmf-dist/source/generic/babel/spanish.dtx
index dce24b98abf..a1661503d1e 100644
--- a/Master/texmf-dist/source/generic/babel/spanish.dtx
+++ b/Master/texmf-dist/source/generic/babel/spanish.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 1989-2009 Johannes L. Braams and any individual authors
+% Copyright 1989-2011 Johannes L. Braams and any individual authors
% listed elsewhere in this file. All rights reserved.
%
% This file is part of the Babel system.
@@ -27,15 +27,15 @@
% extension .ins) which are part of the distribution.
% \fi
% \ProvidesFile{spanish.dtx}
-% [2009/01/02 v5.0h Spanish support from the babel system]
+% [2011/10/06 v5.0k Spanish support from the babel system]
%\iffalse
%% File `spanish.dtx'
%% Babel package for LaTeX version 2e
-%% Copyright (C) 1989 - 2008
+%% Copyright (C) 1989 - 2011
%% by Johannes Braams, TeXniek
%
%% Spanish Language Definition File
-%% Copyright (C) 1997 - 2009
+%% Copyright (C) 1997 - 2011
%% Javier Bezos (www.tex-tipografia.com)
%% and
%% CervanTeX (www.cervantex.es)
@@ -49,19 +49,19 @@
% code for the Spanish language definition file.
% The original version of this file was written by Javier Bezos.
% The latest release is available on CTAN:/language/spanish/
+% \fi
%
+% \iffalse
%<*filedriver>
\let\ooverb\verb
\documentclass[spanish,a4paper]{ltxdoc}
\let\verb\ooverb
-\usepackage[activeacute]{babel}
+\usepackage{babel}
\usepackage{hyperref}
\let\meta\emph
-\usepackage{pslatex}
-\usepackage{mathptmx}
-\usepackage{color}
+\usepackage{pslatex,mathptmx,color}
\usepackage[cp1252]{inputenc}
\usepackage[T1]{fontenc}
\newcommand\act[1]{%
@@ -80,8 +80,6 @@
Se define siempre, sin depender de un grupo.}
\newcommand\opp{\qquad Opción de paquete}
-%\makeindex
-
\newcommand*\babel{\textsf{babel}}
\newcommand*\file[1]{\texttt{#1}}
@@ -98,7 +96,7 @@
\else
\def\@decl@date{\NEWfeature{#1}}%
\fi
- \noindent%\hspace{-\leftmargini}%
+ \noindent
\begin{tabular}{|l|}\hline\ignorespaces}%
{\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak
\vspace{2.3ex}\vskip-\parskip}
@@ -140,7 +138,7 @@
% \title{Estilo \textsf{spanish}\\
% para el sistema \babel.\footnote{Este
% archivo está actualmente en la versión
-% 5.0h con fecha 2 de enero del 2009. ^^A@#
+% 5.0k con fecha 6 de octubre del 2011. ^^A@#
% Esta copia del manual se compuso el~\today.}}
%
% \author{Javier Bezos\footnote{Por favor, envíen comentarios y
@@ -152,7 +150,7 @@
% \textit{Tipografía española con \TeX.} Para información sobre
% actualizaciones: http://www.cervantex.es/}}
%
-% \date{2 de enero del 2009} ^^A@#
+% \date{6 de octubre del 2011} ^^A@#
%
% \maketitle
%
@@ -162,7 +160,7 @@
%
% \begin{itemize}
% \item[\textcolor{blue}{$\Rightarrow$}] Macros para
-% ser usadas en el texto.
+% ser usadas en el texto (generan texto o lo estructuran).
% \item[\textcolor{magenta}{$\star$}] Macros de
% configuración y preferencias.
% \item[\textcolor{green}{$\surd$}] Grupo que
@@ -175,13 +173,11 @@
%
% \section{Uso de \textsf{spanish} para babel}
%
-% El estilo de \textsf{spanish} para babel tiene con finalidad adaptar una
-% serie de elementos de los documentos de \LaTeX\ al castellano,
-% tanto en las traducciones como en la tipografía. Para
-% usarlo, basta con emplear la opción \textsf{spanish} al cargar babel:
-%\begin{verbatim}
-%\usepackage[spanish]{babel}
-%\end{verbatim}
+% El estilo \textsf{spanish} para babel adapta una serie de elementos
+% de los documentos de \LaTeX\ al castellano, tanto en las
+% traducciones como en la tipografía. Para usarlo, basta con dar
+% la opción \textsf{spanish} al cargar babel: \begin{verbatim}
+% \usepackage[spanish]{babel} \end{verbatim}
%
% Esto es todo lo que hace falta para conseguir que el documento tenga
% un aspecto español. En caso de estar en México, véase, además, el
@@ -198,7 +194,7 @@
% órdenes y entornos como:
%\begin{center}
%\begin{tabular}{lll}
-% |enumerate| & |\roman| & |\section| \\
+% |enumerate| & |\roman| & |\section|\\
% |itemize| & |\fnsymbol| & |\subsection|\\
% |\%| & |\alph| & |\subsubsection|\\
% & |\Alph| & \\
@@ -551,7 +547,7 @@
%
% Para poder usar apóstrofos como abreviaciones de acentos es
% necesaria esta opción en |\usepackage|. Puede cambiarse este
-% comportamiento con la orden |\es@acuteactive| en el archivo de
+% comportamiento con |\es@acuteactive| en el archivo de
% configuración |spanish.cfg|; en ese caso los apóstrofos se activan
% siempre.
%
@@ -584,7 +580,7 @@
% \con |es-noshorthands|\opp
% \end{decl}
%
-% No activa ninguna abreviación.
+% No activa ninguna abreviación.
%
% \subsection{Coma decimal}
%
@@ -622,15 +618,14 @@
% \con |es-nodecimaldot|\opp
% \end{decl}
%
-% Cancela por completo el mecanismo del punto decimal.
+% Cancela el mecanismo del punto decimal.
%
% \subsection{División de palabras}
%
-% \textsf{Spanish} comprueba la
-% codificación en el momento en que se usa un acento: si la
-% codificación es |OT1| se toman medidas para facilitar
-% la división, que pese a todo nunca será perfecta, mientras que con
-% |T1| se accede directamente al carácter correspondiente.
+% \textsf{Spanish} comprueba la codificación en el momento en que se
+% usa un acento: si es |OT1|, se toman medidas para facilitar la
+% división, que pese a todo nunca será perfecta, y si es |T1|,
+% se accede directamente al carácter correspondiente.
%
% \begin{decl}
% \txt |"- "= "~|\act{shorthands}
@@ -640,12 +635,12 @@
% Para matizar la división de palabras hay cuatro posibilidades, dos
% de ellas con el método de abreviaciones:
% \begin{itemize}
-% \item la orden |\-| es un guión opcional que no permite
+% \item |\-| es un guión opcional que no permite
% más divisiones,
%
% \item |"-| es similar pero permite más divisiones,
%
-% \item un |-| es un guión que no permite más divisiones ni
+% \item |-| es un guión que no permite más divisiones ni
% antes ni después, y
%
% \item |"=| es el equivalente que sí las permite,\footnote{No
@@ -668,8 +663,8 @@
% éste es un comportamiento correcto.}
% \end{quote}
%
-% La abreviación |"~| se usa cuando se quiere que el guión
-% también aparezca al comienzo de la siguiente línea. Por ejemplo:
+% Con la abreviación |"~|, el guión
+% también aparece al comienzo de la siguiente línea. Por ejemplo:
% \begin{quote}\small\begin{tabbing}
% |infra"~rojo| \quad \= in\hmk fra-ro\hmk jo, pero infra-\hmk-rojo.
% \end{tabbing}\end{quote}
@@ -722,10 +717,8 @@
% en la línea de base y expresiones como <<am/pm>> resultan poco
% estéticas. |"/| produce una barra que, de ser necesario, se baja
% ligeramente. Computer Modern tiene una barra bien diseñada y no es
-% posible ilustrar aquí este punto pero en todo caso se escribiría
-% |am"/pm|.\footnote{En \MEA{141} se recurre a una solución que es la
-% única sencilla en programas de maquetación: usar un cuerpo menor.
-% Pero con \TeX{} es mucho más fácil automatizar las tareas.}
+% posible ilustrar aquí este punto, pero se escribiría
+% |am"/pm|.
%
% \begin{decl}
% \txt |"y|\act{shorthand}\deact{\textit{es-noshorthands, es-sloppy}}
@@ -756,7 +749,7 @@
% grandes o muy pequeños, donde los resultados son meramente
% aceptables.
%
-% En Plain \TeX{} se ejecuta la orden |\sptextfont| para la
+% En Plain \TeX{} se ejecuta |\sptextfont| para la
% letra voladita, de forma que |{\bf\let\sptextfont\bf 1"o}| da el
% resultado correcto (|\mit| si es para cursiva). Para usar un tipo
% nuevo con |\sptext| hay que definir también las variantes
@@ -764,9 +757,9 @@
%
% \subsection{Espaciado}
%
-% Salvo excepciones, el espaciado español difiere relativamente poco
-% del inglés; una de ellas es que en \textsf{spanish} |\frenchspacing|
-% está activo.
+% El espaciado español difiere relativamente poco del inglés, con
+% alguna excepción; una de ellas es que en \textsf{spanish}
+% |\frenchspacing| está activo.
%
% \begin{decl}
% \txt |\...|\act{text}\deact{\textit{es-sloppy}}
@@ -788,22 +781,21 @@
% \txt |\%|\act{text}\deact{\textit{es-minimal, es-sloppy}}
% \end{decl}
%
-% Se añade un espacio fino antes del signo (que
-% más exactamente es |\,|, con lo cual se puede "<recuperar"> con
-% su opuesto |\!| si |\%| no sigue a una cifra; también se puede
-% emplear |\percentsign|).
+% Se añade un espacio fino antes del signo (en concreto |\,|), con
+% lo cual se puede "<recuperar"> con su opuesto |\!| si |\%| no sigue
+% a una cifra; también se puede emplear |\percentsign|).
%
% \begin{decl}
% \con |\spanishplainpercent|
% \end{decl}
%
-% Orden para que |\%| no añada el espacio fino. Puede ser útil
-% en cuadros, si |\%| aparece siempre entre paréntesis.
+% Orden para que |\%| no añada el espacio fino. Puede ser útil
+% en cuadros, si |\%| aparece siempre entre paréntesis.
%
% \subsection{Fuentes}
%
% \begin{decl}
-% \txt |\lsc|\marg{texto}\act{text}\deact{\textit{es-sloppy}}
+% \txt |\lsc|\marg{texto}\act{text}\deact{\textit{es-sloppy}}
% \end{decl}
%
% Pasa \textit{texto} a versalitas:
@@ -821,36 +813,35 @@
% excepciones, como con las negritas).
%
% \begin{decl}
-% \txt |\í|\alw
+% \txt |\í|\alw
% \end{decl}
%
-% Lo mismo que |í|.
+% Lo mismo que |í|.
%
% \subsection{Entrecomillados}
%
% \begin{decl}
-% \txt |\begin{quoting} ... \end{quoting}|\alw
+% \txt |\begin{quoting} ... \end{quoting}|\alw
% \end{decl}
%
-% El entorno |quoting| entrecomilla un
-% texto, añadiendo comillas de seguir al comienzo de
-% cada párrafo en su interior.\footnote{Se puede encontrar
-% una detallada exposición de las comillas en \DTL{44 ss.} De ahí
-% se ha tomado algún ejemplo.}
+% El entorno |quoting| entrecomilla un texto, añadiendo comillas de
+% seguir al comienzo de cada párrafo en su interior.\footnote{Se puede
+% encontrar una detallada exposición de las comillas en \DTL{44 ss.}
+% De ahí se ha tomado algún ejemplo.}
%
% \begin{decl}
-% \txt |<< >>|\act{shorthands}\deact{es-noquoting, \textit{es-noshorthands, es-minimal,
+% \txt |<< >>|\act{shorthands}\deact{es-noquoting, \textit{es-noshorthands, es-minimal,
% es-sloppy}}
% \end{decl}
%\vskip-1.5pc\vskip0pt
% \begin{decl}
-% \txt |"` "'|\act{shorthands}\deact{\textit{es-noshorthands, es-sloppy}}
+% \txt |"` "'|\act{shorthands}\deact{\textit{es-noshorthands, es-sloppy}}
% \end{decl}
%
% También se pueden emplear las abreviaciones |<<| y |>>| (o
% alternativamente |"`| y |"'|) que se limitan a llamar a |quoting|,
% que por ser entorno considera sus cambios internos como locales.
-% (Es decir, |<< ... >>| implica |{<< ... >>}|.) Las abreviaciones
+% (Es decir, |<< ... >>| implica |{<< ... >>}|.) Las abreviaciones
% |"<| y |">| continúan dando sin más los caracteres de comillas de
% abrir y cerrar, respectivamente.
%
@@ -882,7 +873,7 @@
% está pensado para ser usado también en el texto.
%
% \begin{decl}
-% \con |\lquoti| |\rquoti| |\lquotii| |\rquotii| |\lquotiii|
+% \con |\lquoti| |\rquoti| |\lquotii| |\rquotii| |\lquotiii|
% |\rquotiii|
% \end{decl}
%
@@ -908,7 +899,7 @@
% \end{table}
%
% \begin{decl}
-% \con |\activatequoting \deactivatequoting|
+% \con |\activatequoting \deactivatequoting|
% \end{decl}
%
% Las incompatibilidades potenciales de estas abreviaciones son
@@ -946,14 +937,14 @@
%
% Con \textsf{spanish} pueden seguirse varias convenciones con ayuda
% de las siguientes órdenes:
-% \begin{decl} \con |\accentedoperators| |\unaccentedoperators|
+% \begin{decl} \con |\accentedoperators| |\unaccentedoperators|
% \end{decl}
% Activa o desactiva los acentos.
% Por omisión se acentúan, como por ejemplo: $\lim_{x\to 0}(1/x)$
% (|$\lim_{x\to 0}(1/x)$|).
%
% \begin{decl}
-% \con |\spacedoperators| |\unspacedoperators|
+% \con |\spacedoperators| |\unspacedoperators|
% \end{decl}
% Activa o desactiva el espacio entre "<arc"> y la función.
% Lo habitual ha sido con espacio; así pues, por omisión
@@ -962,14 +953,14 @@
% También se añaden |\sen|, |\arcsen|, |\tg| y |\arctg|,
% que dan las funciones respectivas.
% \begin{decl}
-% \con |\spanishoperators|
+% \con |\spanishoperators|
% \end{decl}
%
% Otras funciones trigonométricas se encuentran almacenadas en el
% parámetro |\spanishoperators|, que inicialmente incluye cotg,
-% cosec, senh y tgh. La razón por la que estas funciones se han
+% cosec, senh y tgh. La razón por la que estas funciones se han
% separado es porque su forma no está normalizada en el ámbito
-% hispanohablante. De esta forma se puede cambiar por otras con, por
+% hispanohablante. De esta forma se puede cambiar por otras con, por
% ejemplo:
%\begin{verbatim}
% \renewcommand{\spanishoperators}{ctg arc\,ctg sh ch th}
@@ -990,12 +981,12 @@
% |\begin{document}|.
%
% \begin{decl}
-% \txt |\dotlessi|\act{math}\deact{\textit{es-sloppy}}
+% \txt |\dotlessi|\act{math}\deact{\textit{es-sloppy}}
% \end{decl}
%
% La \textit{i} sin punto también es accesible directamente en modo
-% matemático con la orden |\dotlessi|, de forma que se puede escribir
-% |\acute{\dotlessi}|. Por ejemplo,
+% matemático con |\dotlessi|, de forma que se puede escribir
+% |\acute{\dotlessi}|. Por ejemplo,
% |$V_{\mathbf{cr\acute{\dotlessi}t}}$| da
% $V_{\mathbf{cr\acute{\dotlessi}t}}$.
%
@@ -1008,14 +999,14 @@
% las funciones de \textsf{spanish}.
%
% \begin{decl}
-% \con |es-minimal|\opp
+% \con |es-minimal|\opp
% \end{decl}
%
% Anula la mayoría de los cambios pero deja unas cuantas utilidades
% que pueden resultar utiles en el momento de escribir el texto.
%
% \begin{decl}
-% \con |es-sloppy|\opp
+% \con |es-sloppy|\opp
% \end{decl}
%
% Anula, además, todas las ligaduras sin excepción, la eñe en listas y los
@@ -1034,7 +1025,7 @@
% en órdenes como |\savebox|, |\title|, |\newtheorem|, etc.
%
% La orden |\selectspanish| permite activar \textsf{spanish} con sus
-% extensiones y abreviaciones antes de
+% extensiones y abreviaciones antes de
% |\begin{document}|.\footnote{Algunos detalles, que
% apenas afectan a \textsf{spanish}, siguen sin activarse hasta el
% comienzo del documento.}
@@ -1065,16 +1056,16 @@
% \end{decl}
%
% La primera cambia \textit{cuadro} a \textit{tabla} y desactiva tanto
-% |<||<>||>| como el punto decimal. También cambia
-% |"`| y |"'| a ``\,`\,"<\,">\,'\,''. Es decir, aparte de
+% |<||<>||>| como el punto decimal. También cambia
+% |"`| y |"'| a ``\,`\,"<\,">\,'\,''. Es decir, aparte de
% redefinir las comillas, equivale a:
% a:
%\begin{verbatim}
%\usepackage[spanish,es-nodecimaldot,es-tabla,es-noquoting]{spanish}
%\end{verbatim}
% La segunda es similar
-% pero sí activa el punto decimal. (Obsérvese que no van precedidas
-% de |es-|.)
+% pero sí activa el punto decimal. (Obsérvese que no van precedidas
+% de |es-|.)
%
% Probablemente, esta opción también sea apropiada en algunos
% países de América Central y del Sur.
@@ -1092,7 +1083,7 @@
% Activa las abreviaciones con apóstrofos, sin que sea
% necesario incluir |activeacute| como opción en |\usepackage|.
%
-% \begin{decl} \con |\es@enumerate{<leveli>}|%
+% \begin{decl} \con |\es@enumerate{<leveli>}|%
% |{<levelii>}{<leveliii>}{<leveliv>}|\alw
% \end{decl}
% Cambia los valores preestablecidos por \textsf{spanish} para
@@ -1102,7 +1093,7 @@
% |a| (minúscula \emph{cursiva}\,\footnote{La letra es cursiva
% pero no los signos que le puedan seguir. Más bien debería
% decirse destacada, ya que se usa |\string\emph|.
-% Véase \DTL{11}.}), |A| (versal),
+% Véase \DTL{11}.}), |A| (versal),
% |i| (romano \emph{versalita}), |I| (romano versal) o
% finalmente |o| (ordinal\,\footnote{Lo normal es no añadir ningún
% signo tras ordinal.}).
@@ -1114,7 +1105,7 @@
% \es@enumerate{1.}{a)}{1)}{a$'$)}
%\end{verbatim}
%
-% \begin{decl} \con |\es@itemize{<leveli>}|%
+% \begin{decl} \con |\es@itemize{<leveli>}|%
% |{<levelii>}{<leveliii>}{<leveliv>}|\alw
% \end{decl}
% Lo mismo para |itemize|, sólo que los argumentos se
@@ -1144,10 +1135,10 @@
%
% \subsection{Pasar opciones desde un paquete o clase}
%
-% \begin{decl} \con |\spanishoptions|
+% \begin{decl} \con |\spanishoptions|
% \end{decl}
%
-% Como |\PassOptionsToPackage| añade opciones al comienzo y
+% Como |\PassOptionsToPackage| añade opciones al comienzo y
% las opciones específicas de \textsf{spanish} han de ir al final, definiendo
% esta macro se puede controlar el comportamiento de \textsf{spanish} antes
% de su carga.
@@ -1157,7 +1148,7 @@
% Las adaptaciones se encuentran organizadas en varios grupos, a los
% que corresponden sendas macros:
% |\textspanish|, |\mathspanish|,
-% |\shorthandsspanish|, |\datespanish| y |\captionsspanish|. Pueden
+% |\shorthandsspanish|, |\datespanish| y |\captionsspanish|. Pueden
% cancelarse con:
%\begin{verbatim}
% \renewcommand\textspanish{}
@@ -1173,7 +1164,7 @@
% Se incluyen: traducciones, casi todas las abreviaciones, coma
% decimal, utilidades para división de palabras, ordinales en una
% versión simplificada (y no muy elegante), funciones matemáticas,
-% |\í| y espaciado. La selección de la lengua es inmediata al
+% |\í| y espaciado. La selección de la lengua es inmediata al
% cargar el archivo.
%
% En cambio no están disponibles: entrecomillados,
@@ -1191,8 +1182,8 @@
%
% En la versión 5 el grupo \textsf{layout} no se retrasa a
% |\begin{document}|, como en la 4, sino que se ejecuta
-% inmediatamente. Esto permite cambios en el preámbulo con otros
-% paquetes. Con ello, además, |\selectspanish*| carece de utilidad.
+% inmediatamente. Esto permite cambios en el preámbulo con otros
+% paquetes. Con ello, además, |\selectspanish*| carece de utilidad.
% La opción de paquete |es-delayed| restaura el comportamiento
% anterior, por si hubiera alguna incompatibilidad.
%
@@ -1628,7 +1619,7 @@
% \fi
% \endgroup
%
-%\StopEventually{}
+% \StopEventually{}
%
%^^A ========== End of manual ===============
%
@@ -1649,21 +1640,29 @@
% subscripts with lim and the like; problem with \cs{roman} and hyperref.}
% \changes{spanish~5.0h}{2009/01/02}{Removed unnecessary \cs{string}s
% with two acutes. Added es-noenumerate, es-noitemize.}
+% \changes{spanish~5.0i}{2009/05/11}{romanidx not working. Some \cs{es@roman}
+% replaced with \cs{es@scroman}.}
+% \changes{spanish~5.0j}{2010/01/06}{Overdot \cs{.} was not robust.}
+% \changes{spanish~5.0j}{2010/04/04}{Colon in saved catcodes, because
+% babel doesn't restore it after french}
+% \changes{spanish~5.0k}{2011/08/08}{When saving ., check if
+% \cs{mathcode} is 8000}
%
-% This file provides definition for both \LaTeXe{} and non
-% \LaTeXe{} formats.
+% This file is for both \LaTeXe{} and Plain formats.
%
% \begin{macrocode}
%<*code>
\ProvidesLanguage{spanish.ldf}
- [2009/01/02 v5.0h Spanish support from the babel system]
+ [2011/10/06 v5.0k Spanish support from the babel system]
\LdfInit{spanish}\captionsspanish
\edef\es@savedcatcodes{%
\catcode`\noexpand\~=\the\catcode`\~
- \catcode`\noexpand\"=\the\catcode`\"}
+ \catcode`\noexpand\"=\the\catcode`\"
+ \catcode`\noexpand\:=\the\catcode`\:}
\catcode`\~=\active
\catcode`\"=12
+\catcode`\:=12
\ifx\undefined\l@spanish
\@nopatterns{Spanish}
@@ -1671,6 +1670,7 @@
\fi
\def\es@sdef#1{\babel@save#1\def#1}
+\def\es@sDRC#1{\babel@save#1\DeclareRobustCommand*#1}
\@ifundefined{documentclass}
{\let\ifes@latex\iffalse}
@@ -1821,7 +1821,7 @@
% \end{macrocode}
%
% Instead of joining all the extras directly in |\extrasspanish|,
-% we subdivide them in three further groups.
+% we subdivide them in three further groups.
%
% \begin{macrocode}
\def\extrasspanish{%
@@ -1845,7 +1845,7 @@
\fi
\csname es@restorelist\endcsname}
-\addto\textspanish{\es@sdef\sptext{\protect\es@sptext}}
+\addto\textspanish{\es@sDRC\sptext{\es@sptext}}
\def\es@orddot{.}
% \end{macrocode}
@@ -1891,15 +1891,14 @@
\fi
% \end{macrocode}
%
-% Now, lowercase small caps. First, we test if there are actual
-% small caps for the current font. If not, faked small caps are
-% used. The \cs{selectfont} in \cs{es@lsc} could seem redundant,
-% but it's not. An intermediate macro allows using an optimized
-% variant for Roman numerals.
+% Lowercase small caps. We check if the current font has small
+% caps. If not, we fakes them. \cs{selectfont} in \cs{es@lsc}
+% seems redundant, but it's not. An intermediate macro allows
+% using an optimized variant for Roman numerals.
%
% \begin{macrocode}
\ifes@latex
- \addto\textspanish{\es@sdef\lsc{\protect\es@lsc}}
+ \addto\textspanish{\es@sDRC\lsc{\es@lsc}}
\def\es@lsc{\es@xlsc\MakeUppercase\MakeLowercase}
\def\es@xlsc#1#2#3{%
\leavevmode
@@ -1919,9 +1918,8 @@
\fi
% \end{macrocode}
%
-% The |quoting| environment. This part is not available
-% in Plain. Overriding the default |\everypar| is
-% a bit tricky.
+% The |quoting| environment (not available in Plain). Overriding
+% the default |\everypar| is a bit tricky.
%
% \begin{macrocode}
\newif\ifes@listquot
@@ -1955,7 +1953,7 @@
\let\es@quotcont\@empty
% \end{macrocode}
%
-% If there is a margin par inside quoting, we don't add the
+% If there is a marginpar inside quoting, we don't add the
% quotes. |\es@listqout| stores the quotes to be used before
% item labels; otherwise they could appear after the labels.
%
@@ -1967,32 +1965,31 @@
\fi
% \end{macrocode}
%
-% Now, the |\frenchspacing|, followed by |\...| and |\%|.
+% |\frenchspacing|, |\...| and |\%|.
%
% \begin{macrocode}
\addto\textspanish{\bbl@frenchspacing}
\addto\notextspanish{\bbl@nonfrenchspacing}
\addto\textspanish{%
\let\es@save@dot\.%
- \es@sdef\.{\@ifnextchar.{\es@dots}{\es@save@dot}}}
+ \es@sDRC\.{\@ifnextchar.{\es@dots}{\es@save@dot}}}
\def\es@dots..{\leavevmode\hbox{...}\spacefactor\@M}
\def\es@sppercent{\unskip\textormath{$\m@th\,$}{\,}}
\def\spanishplainpercent{\let\es@sppercent\@empty}
\addto\textspanish{%
\let\percentsign\%%
- \es@sdef\%{\es@sppercent\percentsign{}}}
+ \es@sDRC\%{\es@sppercent\percentsign{}}}
% \end{macrocode}
%
-% We follow with the math group. It's not easy to add an accent to
-% an operator. The difficulty is that we must avoid using text
-% (that is, |\mbox|) because we have no control on font and size,
-% and at time we should access |\i|, which is a text command
-% forbidden in math mode. |\dotlessi| must be converted to
-% uppercase if necessary in \LaTeXe. There are two versions,
-% depending on the format.
+% Now, the math group. It's not easy to add an accent to an
+% operator, because we must avoid using text (that is, |\mbox|)
+% where we have no control on font and size, and at the same time
+% we need |\i|, which is forbidden in math mode. |\dotlessi| must
+% be converted to uppercase if necessary in \LaTeXe. There are two
+% versions, depending on the format.
%
% \begin{macrocode}
-\addto\mathspanish{\es@sdef\dotlessi{\protect\es@dotlessi}}
+\addto\mathspanish{\es@sDRC\dotlessi{\es@dotlessi}}
\let\nomathspanish\relax
\ifes@latex
@@ -2038,9 +2035,9 @@
\fi
% \end{macrocode}
%
-% The operators are stored in |\es@operators|, which in turn is
+% Operators are stored in |\es@operators|, which is
% included in the math group. Since |\operator@font| is
-% defined in \LaTeXe{} only, we defined in the plain variant.
+% defined in \LaTeXe{} only, we define it in the plain variant.
%
% \begin{macrocode}
\def\es@operators{%
@@ -2110,14 +2107,14 @@
\fi}
\def\es@use@shorthand{%
- \ifx\thepage\relax
+ \if@safe@actives
\bbl@afterelse
\string
\else
\bbl@afterfi
- {\ifx\protect\@unexpandable@protect
+ {\ifx\thepage\relax
\bbl@afterelse
- \noexpand
+ \string
\else
\bbl@afterfi
\es@use@sh
@@ -2125,9 +2122,9 @@
\fi}
\def\es@use@sh#1{%
- \if@safe@actives
+ \ifx\protect\@unexpandable@protect
\bbl@afterelse
- \string#1%
+ \noexpand#1%
\else%
\bbl@afterfi
\textormath
@@ -2147,7 +2144,8 @@
\def\es@spdeactivate#1{%
\if.#1%
- \mathcode`\.=\es@period@code
+ \mathcode`\.=\es@period@math\relax
+ \begingroup\lccode`\~=`\.\lowercase{\endgroup\let~\es@period@code}%
\else
\begingroup
\lccode`\~=`#1
@@ -2299,21 +2297,32 @@
\decimalcomma
\es@ifoption{nodecimaldot}{}
{\AtBeginDocument{\bgroup\@fileswfalse}%
- \es@set@shorthand{.}%
+ \begingroup\lccode`\~=`\.\lowercase{\endgroup
+ \let\es@period@code~%
+ \es@set@shorthand{.}%
+ \let~\es@period@code}%
\AtBeginDocument{\egroup}%
\@namedef{normal@char\string.}{%
\@ifnextchar\egroup
- {\mathchar\es@period@code\relax}%
+ {\es@period@code}%
{\csname active@char\string.\endcsname}}%
- \declare@shorthand{system}{.}{\mathchar\es@period@code\relax}%
+ \declare@shorthand{system}{.}{\es@period@code}%
\addto\shorthandsspanish{%
- \mathchardef\es@period@code\the\mathcode`\.%
\babel@savevariable{\mathcode`\.}%
- \mathcode`\.="8000 %
+ \edef\es@period@math{\the\mathcode`\.}%
+ \babel@save\es@period@code
+ \ifnum\es@period@math="8000
+ \begingroup\lccode`\~=`\.\lowercase{\endgroup\let\es@period@code~}%
+ \else
+ \mathchardef\es@period@code\es@period@math\relax
+ \mathcode`\.="8000 %
+ \fi
+ \begingroup\lccode`\~=`\.\lowercase{\endgroup\babel@save~}%
\es@activate{.}}%
\def\es@a#1{\es@declare{.#1}{\es@decimal#1}}%
\es@a1\es@a2\es@a3\es@a4\es@a5\es@a6\es@a7\es@a8\es@a9\es@a0}
+
\es@ifoption{notilde}{}{\es@set@shorthand{~}}
\def\deactivatetilden{%
\expandafter\let\csname spanish@sh@\string~@n@\endcsname\relax
@@ -2495,7 +2504,7 @@
\def\esromanindex##1##2{##1{\uppercase{##2}}}%
\def\@roman{\@Roman}}}
{\def\es@romandef{%
- \def\esromanindex##1##2{##1{\protect\es@roman{##2}}}%
+ \def\esromanindex##1##2{##1{\es@scroman{##2}}}%
\def\@roman##1{\es@roman{\number##1}}%
\def\es@roman##1{\es@scroman{\romannumeral##1}}%
\DeclareRobustCommand\es@scroman{\es@xlsc\uppercase\@firstofone}}}
@@ -2645,7 +2654,7 @@
\newif\ifes@encapsulated
-\def\es@roman#1{#1}
+\def\es@scroman#1{#1}
\edef\es@slash{\expandafter\@gobble\string\\}
\def\indexentry{%
@@ -2670,7 +2679,7 @@
\lowercase{
\gdef\es@idxentry#1{%
- \in@{\es@roman}{#1}%
+ \in@{\es@scroman}{#1}%
\ifin@
\advance\es@converted\@ne
\immediate\write\es@indexfile{%
@@ -2746,3 +2755,4 @@
+