diff options
author | Karl Berry <karl@freefriends.org> | 2013-05-06 22:23:41 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-05-06 22:23:41 +0000 |
commit | f9e1674f2ae1b2156a52296271b3aa0443197afa (patch) | |
tree | 14c1810665784460e5b5a38a9568b53746bdc807 /Master/texmf-dist/source | |
parent | 61624f3e38b0871d93475dce6d8878908eebed98 (diff) |
babel-$ll (for 3.9a)
git-svn-id: svn://tug.org/texlive/trunk@30295 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r-- | Master/texmf-dist/source/generic/babel-spanish/spanish.dtx | 2746 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/babel-spanish/spanish.ins | 150 |
2 files changed, 2896 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/generic/babel-spanish/spanish.dtx b/Master/texmf-dist/source/generic/babel-spanish/spanish.dtx new file mode 100644 index 00000000000..244d7ab2adb --- /dev/null +++ b/Master/texmf-dist/source/generic/babel-spanish/spanish.dtx @@ -0,0 +1,2746 @@ +% \iffalse meta-comment +% +% 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. +% -------------------------------------- +% +% It may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work is Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% The list of derived (unpacked) files belonging to the distribution +% and covered by LPPL is defined by the unpacking scripts (with +% extension .ins) which are part of the distribution. +% \fi +% \ProvidesFile{spanish.dtx} +% [2010/05/23 v5.0j Spanish support from the babel system] +%\iffalse +%% File `spanish.dtx' +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 - 2008 +%% by Johannes Braams, TeXniek +% +%% Spanish Language Definition File +%% Copyright (C) 1997 - 2010 +%% Javier Bezos (www.tex-tipografia.com) +%% and +%% CervanTeX (www.cervantex.es) +% +%% Please report errors to: Javier Bezos (preferably) +%% www.tex-tipografia.com +%% J.L. Braams +%% www.latex-project.org +% +% This file is part of the babel system, it provides the source +% 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{babel} +\usepackage{hyperref} + +\let\meta\emph + +\usepackage{pslatex,mathptmx,color} +\usepackage[cp1252]{inputenc} +\usepackage[T1]{fontenc} +\newcommand\act[1]{% + \\% + \makebox[1.5pc][l]{\textcolor{green}{$\surd$}}% + \textsf{#1}\ignorespaces} +\newcommand\deact[1]{% + \\% + \makebox[1.5pc][l]{\textcolor{red}{$\times$}}% + \texttt{#1}\ignorespaces} +\newcommand\txt{\makebox[1.5pc][l]{\textcolor{blue}{$\Rightarrow$}}\ignorespaces} +\newcommand\con{\makebox[1.5pc][l]{\textcolor{magenta}{$\star$}}\ignorespaces} +\newcommand\alw{% + \\% + \makebox[1.5pc][l]{\textcolor{green}{$\surd$}}% + Se define siempre, sin depender de un grupo.} +\newcommand\opp{\qquad Opción de paquete} + +\newcommand*\babel{\textsf{babel}} +\newcommand*\file[1]{\texttt{#1}} + +\setlength{\arrayrulewidth}{2\arrayrulewidth} +\newcommand\toprule[1]{\cline{1-#1}\\[-2ex]} +\newcommand\botrule[1]{\\[.6ex]\cline{1-#1}} +\newcommand\hmk{$\string|$} + +\newenvironment{decl}[1][]% + {\par\small\addvspace{4.5ex plus 1ex}% + \vskip-\parskip + \ifx\relax#1\relax + \def\@decl@date{}% + \else + \def\@decl@date{\NEWfeature{#1}}% + \fi + \noindent + \begin{tabular}{|l|}\hline\ignorespaces}% + {\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak + \vspace{2.3ex}\vskip-\parskip} + +\newcommand\New[1]{% + \leavevmode\marginpar{\raggedleft\sffamily Nuevo en #1}} + +\newcommand\nm[1]{\unskip\,$^{#1}$} +\newcommand\nt[1]{\quad$^{#1}$\,\ignorespaces} + +\makeatletter + \renewcommand\@biblabel{} +\makeatother + +\newcommand\DOT[1]{\lsc{DOT},~#1} +\newcommand\DTL[1]{\lsc{DTL},~#1} +\newcommand\MEA[1]{\lsc{MEA},~#1} + +\raggedright +\setlength{\parindent}{0em} +\setlength{\parskip}{3pt} + +\addtolength{\oddsidemargin}{-4pc} +\addtolength{\textwidth}{7pc} + +\OnlyDescription +\begin{document} + \DocInput{spanish.dtx} +\end{document} +%</filedriver> +%\fi +% +% \begingroup +% \ifx\langdeffile\undefined +% +%^^A ======= Beginning of text as typeset by spanish.dtx ========= +% +% +% \title{Estilo \textsf{spanish}\\ +% para el sistema \babel.\footnote{Este +% archivo está actualmente en la versión +% 5.0j con fecha 23 de mayo del 2010. ^^A@# +% Esta copia del manual se compuso el~\today.}} +% +% \author{Javier Bezos\footnote{Por favor, envíen comentarios y +% sugerencias en http://www.tex-tipografia.com/spanish.html. Han +% colaborado de una u otra forma muchas personas, a las cuales +% agradezco sus comentarios y sugerencias; en particular, han sido muy +% activos Juan Luis Varona y José Luis Rivera. Para más información +% sobre los criterios seguidos, véase la referencia: Javier Bezos, +% \textit{Tipografía española con \TeX.} Para información sobre +% actualizaciones: http://www.cervantex.es/}} +% +% \date{23 de mayo del 2010} ^^A@# +% +% \maketitle +% +% {\small\tableofcontents} +% +% \section*{Símbolos empleados} +% +% \begin{itemize} +% \item[\textcolor{blue}{$\Rightarrow$}] Macros para +% 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 +% activa la orden. +% \item[\textcolor{red}{$\times$}] Opciones de +% paquete que anulan la orden. En redonda van las destinadas +% específicamente a anular ese punto, y en cursiva las que además +% anulan otros aspectos del estilo. +% \end{itemize} +% +% \section{Uso de \textsf{spanish} para babel} +% +% 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 +% apartado \ref{paises} (<<Opciones por países>>):\footnote{En próximas +% versiones se añadirán más países.} +%\begin{verbatim} +%\usepackage[spanish,mexico]{babel} +%\end{verbatim} +% +% El estilo \textsf{spanish} se puede cargar junto con otras lenguas (véase el +% manual de babel). Si \textsf{spanish} es la última de las lenguas cargadas, +% entonces se considera la lengua principal y se hacen una serie de +% ajustes tipográficos adicionales. En particular, se modifican +% órdenes y entornos como: +%\begin{center} +%\begin{tabular}{lll} +% |enumerate| & |\roman| & |\section|\\ +% |itemize| & |\fnsymbol| & |\subsection|\\ +% |\%| & |\alph| & |\subsubsection|\\ +% & |\Alph| & \\ +%\end{tabular} +%\end{center} +% +% El estilo está pensado para que sea muy configurable. Para ello, se +% proporcionan una serie de opciones de paquete, que en caso de +% emplearse deben ir \textit{después} de \textsf{spanish}. Por +% ejemplo: +% \begin{verbatim} +% \usepackage[french,spanish,es-noindentfirst]{babel} \end{verbatim} +% carga los estilos para el francés y el español, esta última como +% lengua principal; además, evita que \textsf{spanish} sangre el +% primer párrafo tras un título. Otras opciones se pueden ajustar por +% medio de macros, en particular aquellas que se puede desear cambiar +% en medio del documento (por ejemplo, el formato de la fecha). +% +% Los cambios están organizados en una serie de grupos: +% \textsf{captions, date, text, math} y \textsf{shorthands}. +% Los tres ultimos corresponden a lo que en babel sería normalmente +% \textsf{extras}. +% +% \section{\textsf{spanish} como lengua principal} +% +% Si la lengua principal es \textsf{spanish}, se introducen una serie de +% cambios en el momento de cargar la lengua para adaptar varios +% elementos a los usos tipográficos españoles. Estos cambios +% funcionan con las clases estándar "+--con otras tal vez alguno de +% ellos no tenga efecto--- y persisten durante todo el documento. +% Ninguno de ellos es necesario para componer el documento, aunque +% naturalmente el resultado será distinto. +% +% \subsection{Listas} +% +% \begin{decl} \txt |\begin{enumerate} ... \end{enumerate}|% +% \deact{es-nolists, es-noenumerate, \textit{es-nolayout, es-minimal, +% es-sloppy}} \end{decl} +% +% Usa la siguiente secuencia:\\ +% \quad 1.\\ +% \qquad \emph{a})\\ +% \quad\qquad 1)\\ +% \qquad\qquad \emph{a$'$}) +% +% \begin{decl} \txt |\begin{itemize} ... \end{itemize}|% +% \deact{es-nolists, es-noitemize, \textit{es-nolayout, es-minimal, +% es-sloppy}} \end{decl} +% +% Usa la siguiente secuencia:\\ +% \quad\leavevmode\hbox to 1.2ex +% {\hss\vrule height .95ex width .8ex depth -.15ex\hss}\\ +% \qquad\textbullet\\ +% \quad\qquad $\circ$\\ +% \qquad\qquad $\diamond$ +% +% \begin{decl} +% \con |\spanishdashitems \spanishsignitems| +% \end{decl} +% +% Dos órdenes para cambiar a otros estilos en +% |itemize|: rayas en todos los niveles y \textbullet{} $\circ$ +% $\diamond$ $\triangleright$, respectivamente. +% +% \begin{decl} +% \con |es-nolists|\opp +% \end{decl} +% +% Desactiva los cambios en las listas (aunque |\es@enumerate| y +% |\es@itemize| siguen disponibles). +% +% \subsection{Contadores} +% +% \begin{decl} +% \txt |\alph \Alph|\deact{\textit{es-nolayout, es-sloppy}} +% \end{decl} +% +% Incluyen la eñe. +% +% \begin{decl} +% \txt |\fnsymbol|\deact{\textit{es-nolayout, es-sloppy}} +% \end{decl} +% +% Se emplean uno, dos, tres... asteriscos (*, **, ***, etc.), +% en lugar de la sucesión angloamericana de cruces, barras, +% etc.\footnote{\DOT{162}.} +% +% \begin{decl} +% \txt |\roman|\deact{es-ucroman, es-lcroman, \textit{es-nolayout, es-minimal, es-sloppy}} +% \end{decl} +% +% Como en castellano no se usan números romanos en minúscula, +% |\roman| se redefine para que los dé en +% versalitas.\footnote{\DTL{197}.} La opción de paquete +% |es-minimal| los desactiva con |es-ucroman|, y |es-sloppy| +% con |es-lcroman|. + +% \begin{decl} +% \con |es-ucroman|\opp +% \end{decl} +% +% Opción de paquete adicional, que pasa todos los romanos a versales, +% en caso de que no se quiera la versalita o por incompatibilidad con +% algún paquete que use de forma indebida |\roman|.\footnote{En +% el momento de escribir esto, como mínimo son: \textsf{dramatist, +% epiolmec, flashcards, lipsum, ntheorem, ntheorem-hyper, +% texmate.} Otros paquetes como \textsf{hyperref, easy} y \textsf{exam} +% ya han sido corregidos.} +% +% \begin{decl} +% \con |es-lcroman|\opp +% \end{decl} +% +% Como último recurso, de haber problemas con el valor predeterminado +% o con |es-ucroman|, con esta opción de paquete puede dejarse la +% definición de \LaTeX, aunque en español los romanos en minúscula +% sean una falta ortográfica. +% +% \begin{decl} +% \con |es-preindex|\opp +% \end{decl} +% +% \textit{MakeIndex} no puede entender la forma en que |\roman| +% escribe el número de página, por lo que elimina las líneas +% afectadas. Por ello el archivo |.idx| ha de ser convertido antes de +% procesarlo con \textit{MakeIndex}. Con este paquete se proporciona +% la utilidad |romanidx.sty| que se encarga de ello. Simplemente se +% compone ese archivo con \LaTeX{} y a continuación se responde a las +% preguntas que se formulan; el archivo resultante, es decir, el que +% hay que procesar con \textit{MakeIndex,} tiene la extensión +% \texttt{eix}. Este proceso no es necesario si no se introdujo +% ninguna entrada de índice en páginas numeradas con |\roman| (lo +% cual será lo más normal). Si un símbolo propio de +% \emph{MakeIndex} generara problemas, debe encerrarse entre llaves: +% \verb={"|}=. +% +% Con la opción de paquete |es-preindex| se llama desde el +% documento |romanidx.sty|, de forma que no es necesaria su ejecución +% aparte. Tampoco pide ningún dato, sino que ha de darse en el +% documento principal con la siguiente orden. +% +% \begin{decl} +% \con |\spanishindexchars|\marg{encap}\marg{open\_range}\marg{close\_range} +% \end{decl} +% +% De usarse |es-preindex| con un estilo de índice que no tiene los +% valores predeterminados de estos tres caracteres especiales, hay que +% darlos con esta orden (es decir, por omisión es +% \verb+\spanishindexchars{|}{(}{)}+). +% +% \begin{decl} +% \con |\spanishscroman \spanishlcroman \spanishucroman| +% \end{decl} +% +% Finalmente, tres macros permiten cambios temporales en el +% documento de |\roman| a versalitas, minúsculas y mayúsculas, +% respectivamente. +% +% \subsection{Otros} +% +% \begin{decl} +% \txt |\guillemotleft \guillemotright|\deact{\textit{es-nolayout, es-sloppy}} +% \end{decl} +% +% Las comillas latinas para |OT1| son menos angulosas y se generan +% con unas puntas de flecha de |lasy|. En T1 no hay cambios. +% +% \begin{decl} +% \txt |\section|, |\subsection|, etc., +% |\tableofcontents|\deact{es-nosectiondot, es-noindentfirst, \textit{es-nolayout, +% es-mininal, es-sloppy}} +% \end{decl} +% +% Los números en los títulos están seguidos de un punto +% tanto en el texto como en el índice. Además, +% el primer párrafo tras el título no elimina la sangría. +% +% \begin{decl} +% \con |es-nolayout|\opp +% \end{decl} +% +% Si no se desea ninguno de estos cambios, basta con usar esta opción +% de paquete. +% +% \section{Traducciones} +% +% \subsection{Nombres} +% +% \begin{decl} +% \txt |\refname|, |\tablename|, |\contentsname|, etc.\\ +% \con |\spanishrefname|, |\spanishtablename|, |\spanishcontentsname|, etc. +% \act{captions} +% \end{decl} +% +% Establecen las traducciones al castellano de algunos términos, +% tal y como se describe en el cuadro 1. Para cambiar el texto +% de ellas, conviene redefinir la forma que empieza con +% |\spanish...|, ya que, al contrario que las órdenes +% |\refname|, |\abstractname|, etc., se pueden redefinir cuando +% se desee y entran en acción al momento y de forma permanente, sin +% necesidad de |\addto|. +% +% \begin{table} +% \center\small +% \newcommand\name[2]{% +% \texttt{\textbackslash#1name}&% +% \texttt{\textbackslash spanish#1name}&} +% \caption{Traducciones} +% \vspace{1.5ex} +% \begin{tabular}{l@{\hspace{3em}}l@{\hspace{3em}}l} +% \toprule3 +% \name{ref} & Referencias\\ +% \name{abstract} & Resumen\\ +% \name{bib} & Bibliografía\\ +% \name{chapter} & Capítulo\\ +% \name{appendix} & Apéndice\\ +% \name{contents} & índice general\nm{a}\\ +% \name{listfigure} & índice de figuras\\ +% \name{listtable} & índice de cuadros\\ +% \name{index} & índice alfabético\\ +% \name{figure} & Figura\\ +% \name{table} & Cuadro\\ +% \name{part} & Parte\\ +% \name{encl} & Adjunto\\ +% \name{cc} & Copia a\\ +% \name{headto} & A\\ +% \name{page} & página\\ +% \name{see} & véase\\ +% \name{also} & véase también\\ +% \name{proof} & Demostración +% \botrule3 +% \end{tabular} +% +% \vspace{1.5ex} +% +% \begin{minipage}{10cm}\footnotesize +% \nt{a} Pero sólo <<índice>> en \textsf{article}. +% \end{minipage} +% \end{table} +% +% \begin{decl} +% \con |es-uppernames|\opp +% \end{decl} +% +% Aunque sea un anglicismo,\footnote{\DOT{197}.} con esta opción de +% paquete los sustantivos tienen mayúscula inicial. +% +% \begin{decl} +% \con |es-tabla|\opp +% \end{decl} +% +% En caso de que todos los cuadros sean tablas, esta opción permite +% cambiar \textit{cuadro} por \textit{tabla} (en cierto modo, +% \textit{cuadro} es a \textit{tabla} lo que \texttt{table} es a +% \texttt{tabular}). +% +% \subsection{Fechas} +% +% \begin{decl} +% \txt |\today \Today| +% \act{date} +% \end{decl} +% +% Fecha actual, en la forma \textit{1 de enero de +% 2004.} Con |\Today| el mes va en mayúscula. +% +% \begin{decl} +% \con |\spanishdatedel \spanishdatede| +% \end{decl} +% +% Con la primera se cambia el formato para que a partir del 2000 se +% emplee \textit{del} y no \textit{de} (recomendado). La segunda +% hace justo lo contrario (predeterminado). +% +% \begin{decl} +% \con |\spanishreverseddate| +% \end{decl} +% +% Cambia el formato de |\today| a la forma +% \textit{enero 1 del 2004.} Con |\Today| el mes va en +% mayúscula. +% +% \section{Abreviaciones (\textit{shorthands})} +% +% La lista completa se puede encontrar en el cuadro 2. En los +% siguientes apartados se darán más detalles sobre algunas de +% ellas. +% +% \begin{table}[!t] +% \center\small +% \caption{Abreviaciones} +% \vspace{1.5ex} +% \begin{tabular}{l@{\hspace{3em}}l@{\hspace{3em}}l} +% \toprule2 +% |á é í ó ú| & á é í ó ú\\ +% |á é í ó ú| & á é í ó ú\\ +% |ñ ñ| & ñ ñ\nm{a}\\ +% |"u "U| & "u "U\\ +% |"i "I| & "i "I\\ +% |"a "A "o "O| & Ordinales: 1"a, 1"A, 1"o, 1"O\\ +% |"er "ER| & Ordinales: 1"er, 1"ER\\ +% |"c "C| & "c "C\\ +% |"rr "RR| & rr, pero -r cuando se divide\\ +% |"y| & El antiguo signo para <<y>>\\ +% |"-| & Como |\-|, pero permite más divisiones\\ +% |"=| & Como |-|, pero permite mas divisiones\nm{b}\\ +% |"~| & Guión estilístico\nm{c}\\ +% |"+ "+- "+--| & Como |-|, |--| y |---|, pero sin división\\ +% |~- ~-- ~---| & Lo mismo que el anterior.\\ +% |""| & Permite mas divisiones antes y después\nm{d}\\ +% |"/| & Una barra algo más baja\\ +% \verb+"|+ & Divide un logotipo\nm{e}\\ +% |"< ">| & "< ">\\ +% |"` "'| & |\begin{quoting}| |\end{quoting}|\nm{f}\\ +% |<< >>| & Lo mismo que el anterior.\\ +% |?` !`| & ?` !`\nm{g}\\ +%|"? "!| & "? "! alineados con la linea base\nm{h} +% \botrule2 +% \end{tabular} +% +% \vspace{1.5ex} +% +% \begin{minipage}{11cm} +% \footnotesize +% \nt{a} La forma |~n| no está activada por omisión a partir de +% la versión 5. +% \nt{b} |"=| viene a ser lo mismo que |""-""|. +% \nt{c} Esta abreviación tiene un uso distinto +% en otras lenguas de babel. +% \nt{d} Como en <<entrada/salida>>. +% \nt{e} Carece de uso en castellano. +% \nt{f} Véase sec.~2.7. +% \nt{g} No proporcionadas por este paquete, sino por cada tipo; +% figuran aquí como simple recordatorio. +% \nt{h} útiles en rótulos en mayúsculas. +% \end{minipage} +% \end{table} +% +% Los caracteres usados como abreviaciones se comportan +% como otras órdenes de \TeX{} y por tanto se hace caso +% omiso de los espacios que le puedan seguir: \verb*|' a| es lo mismo +% que |á|. Eso también implica que tras esos caracteres no +% puede ir una llave de cierre y que deberá escribirse +% |{... '{}}| en lugar de |{... '}|; en modo matemático no hay +% ningún problema y |$x^{a'}$| ($x^{a'}$) es válido. +% +% \begin{decl} +% \con |activeacute|\opp +% \end{decl} +% +% Para poder usar apóstrofos como abreviaciones de acentos es +% necesaria esta opción en |\usepackage|. Puede cambiarse este +% comportamiento con |\es@acuteactive| en el archivo de +% configuración |spanish.cfg|; en ese caso los apóstrofos se activan +% siempre. +% +% \begin{decl} +% \con |es-tilden|\opp +% \end{decl} +% +% Esta orden activa las abreviaciones |~n| y |~N| por compatibilidad +% con versiones anteriores de \textsf{spanish} (y siempre que no se +% empleado también |es-notilde|). En la versión 5 no están +% activadas de forma predeterminada. +% +% \begin{decl} +% \con |\spanishdeactivate|\marg{caracteres} +% \end{decl} +% +% Permite desactivar las abreviaciones correspondientes a los +% caracteres dados. Para evitar entrar en conflicto con otras lenguas, +% al salir de \textsf{spanish} se reactivan,\footnote{El punto para +% los decimales no es estrictamente una abreviación y no se +% reactiva.} por lo que si se desea que +% persistan hay que añadir la orden a |\shorthandsspanish| con +%|\addto|. La orden |\renewcommand\shorthandsspanish{}| es una +% variante optimizada de +%\begin{verbatim} +% \addto\shorthandsspanish{\spanishdeactivate{.'"~<>}} +%\end{verbatim} +% +% \begin{decl} +% \con |es-noshorthands|\opp +% \end{decl} +% +% No activa ninguna abreviación. +% +% \subsection{Coma decimal} +% +% \begin{decl} +% \txt |.|\textit{número}\act{shorthands}\deact{es-nodecimaldot, +% \textit{es-noshorthands, es-minimal, es-sloppy}} +% \end{decl} +% +% En \textsf{spanish}, el punto en matemáticas sirve como marca decimal +% genérica que puede representarse como coma o punto; funciona +% por tanto como marcado lógico del signo para decimales. Por +% omisión, se siguen las normas internacionales ISO y la legislación +% de diversos países (como de España y México) de emplear la coma. +% Ya que \TeX\ usa la coma como separador en intervalos o expresiones +% similares, lo que añade un espacio fino, \textsf{spanish} +% interpreta todo punto en modo matemático de esta forma siempre +% que esté seguido de una cifra, pero no en otras circunstancias: +% \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ático. +% \end{tabbing}\end{quote} +% +% +% \begin{decl} +% \con |\decimalcomma \decimalpoint \spanishdecimal|\marg{math} +% \end{decl} +% +% Las dos primeras establecen si se usa una coma (predeterminado) +% o un punto, mientras que |\spanishdecimal|\marg{math} +% permite darle una definición arbitraria. +% +% \begin{decl} +% \con |es-nodecimaldot|\opp +% \end{decl} +% +% 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 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} +% \deact{\textit{es-noshorthands, es-sloppy}} +% \end{decl} +% +% Para matizar la división de palabras hay cuatro posibilidades, dos +% de ellas con el método de abreviaciones: +% \begin{itemize} +% \item |\-| es un guión opcional que no permite +% más divisiones, +% +% \item |"-| es similar pero permite más divisiones, +% +% \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 +% es una buena idea usar esta orden, pero en +% medidas muy cortas puede resultar necesario.} +% +% \end{itemize} +% 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{Justo antes y después de +% {\ttfamily\string"\string-} y {\ttfamily\string"\string=} se +% aplican los correspondientes +% valores de {\ttfamily\string\...hyphenmin} lo que implica que la +% divisón semia\hmk bierto no es posible. +% éste es un comportamiento correcto.} +% \end{quote} +% +% 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} +% +% \begin{decl} +%\txt |"+ "+- "+--|\act{shorthands}\deact{\emph{no-shorthands, +% es-sloppy}} +% \end{decl} +%\vskip-1.5pc\vskip0pt +% \begin{decl} +% \txt |~- ~-- ~---|\act{shorthands}\deact{es-notilde, \emph{no-shorthands, +% es-minimal, es-sloppy}} +% \end{decl} + +% Evitan divisiones: |~-|, que resulta útil para expresar una serie +% de números sin que el guión los divida (12~-14, |12~-14|), y +% |~---|, que es la forma que debe usarse para abrir incisos con +% rayas, ya que de lo contrario puede haber una división entre la +% raya de abrir y la palabra que le sigue: +% \begin{quote}\small\begin{tabbing} +%|Los conciertos ~---o % academias--- que organizó...| +% \end{tabbing}\end{quote} +% +% También pueden emplearse para esta misma función las abreviaciones +% |"+|, |"+-| y |"+---|. Mientras que este guión evita toda posible +% división en los elementos que une, la raya (---) y la semirraya +% (--) las permiten en las palabras que le precedan o le sigan. +% +% Otra abreviación es |"rr| que sirve para el +% único cambio de escritura del castellano en caso de haber división. +% La \lsc{RAE} indica que al añadir un prefijo que termina en vocal a +% una palabra que comienza con \emph{r}, ésta última debe +% doblarse a menos que se unan por un guión. Por ejemplo: +% \begin{quote}\small\begin{tabbing} +% |extra"rradio| \quad \= ex\hmk trarra\hmk dio, pero extra-\hmk +% radio. +% \end{tabbing}\end{quote} +% No hay acuerdo sobre si esta regla y otras similares han de +% aplicarse o no, aunque la opinión mayoritaria actual está en +% contra. +% +% \subsection{Otros} +% +% \begin{decl} +% \txt |"/|\act{shorthands}\deact{\textit{es-noshorthands, es-sloppy}} +% \end{decl} +% +% Es una utilidad tipográfica más que específicamente española. +% En ciertos tipos, como Times, el extremo inferior de la barra está +% 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 se escribiría +% |am"/pm|. +% +% \begin{decl} +% \txt |"y|\act{shorthand}\deact{\textit{es-noshorthands, es-sloppy}} +% \end{decl} +% +% El signo \textit{et tironiano}, que en español se empleó muy a +% menudo, se puede <<imitar>> con |"y|, siempre que se haya cargado el +% paquete |graphics|; de no ser así, se usa la letra $\tau$, aunque +% la variante normal de \TeX{} no es demasiado apropiada. +% +% \section{Funciones de texto y matemáticas} +% +% \subsection{Abreviaturas} +% +% \begin{decl} +% \txt |\sptext|\marg{texto}\act{text}\deact{\textit{es-sloppy}} +% \end{decl} +% +% Pone un punto y le sigue el argumento en voladitas. Para +% abreviaturas como |adm\sptext{ón}| que da adm\sptext{ón}. Hay seis +% abreviaciones asociadas a ordinales: |"a|, |"A|, |"o|, |"O|, |"er| y +% |"ER| que equivalen a |\sptext{a}|, etc. Muchos tipos +% añaden un pequeño subrayado que debe evitarse, y por tanto no se +% deben escribir los ordinales con \textsf{inputenc}. +% +% Para ajustar el tamaño lo mejor posible, se usa el de +% índices en curso. Esto funciona bien salvo para tamaños muy +% grandes o muy pequeños, donde los resultados son meramente +% aceptables. +% +% 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 +% matemáticas con |\newfam|. +% +% \subsection{Espaciado} +% +% 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}} +% \end{decl} +% +% Puntos suspensivos menos espaciados que |\dots|. El espacio +% que sigue se conserva: +% \begin{quote}\small\begin{tabbing} +% |\... y solo estaba\... ella.|\quad\=\... y solo estaba\... ella. +% \end{tabbing}\end{quote} +% También podrían escribirse los tres puntos sin más |...|, y en +% la práctica no hay diferencia, a menos que se cambie el +% valor del espacio 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). +% +% \begin{decl} +% \txt |\%|\act{text}\deact{\textit{es-minimal, es-sloppy}} +% \end{decl} +% +% 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. +% +% \subsection{Fuentes} +% +% \begin{decl} +% \txt |\lsc|\marg{texto}\act{text}\deact{\textit{es-sloppy}} +% \end{decl} +% +% Pasa \textit{texto} a versalitas: +% \begin{quote}\small\begin{tabbing} +% |\lsc{RAE}| \quad \= \lsc{RAE}\\ +% |\lsc{ReNFe}| \quad \= \lsc{ReNFe}.\\ +% |siglo \lsc{XVII}| \quad \= siglo \lsc{XVII}\\ +% |capítulo \lsc{II}| \quad \= capítulo \lsc{II}. +% \end{tabbing}\end{quote} +% +% Para evitar que con un tipo que carece de versalitas acabe +% apareciendo (por substitución) un texto de minúsculas se intenta +% usar en estos casos las versales \emph{reales} de un tamaño menor +% (\LaTeX\ tiende a sustituir versalitas por versalitas, pero hay +% excepciones, como con las negritas). +% +% \begin{decl} +% \txt |\í|\alw +% \end{decl} +% +% Lo mismo que |í|. +% +% \subsection{Entrecomillados} +% +% \begin{decl} +% \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.} +% +% \begin{decl} +% \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}} +% \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 +% |"<| y |">| continúan dando sin más 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 cada párrafo cuando se transcribe +% un texto entrecomillado con más de un párrafo. +% +% 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 cada párrafo cuando se transcribe +% un texto entrecomillado con más de un párrafo. +% +% En su interior, como de costumbre, se usan inglesas.>> +% \end{quotation} +% +% También se añaden comillas de seguir en listas, excepto con la +% opción \texttt{es-nolists} o cualquier otra que las desactive. +% +% Este entorno se puede redefinir, como por ejemplo: +%\begin{verbatim} +% \renewenvironment{quoting}{\itshape}{} +%\end{verbatim} +% pero en principio no implica un nuevo párrafo, ya que +% está pensado para ser usado también en el texto. +% +% \begin{decl} +% \con |\lquoti| |\rquoti| |\lquotii| |\rquotii| |\lquotiii| +% |\rquotiii| +% \end{decl} +% +% Controlan las comillas en |quoting|, según el +% nivel en que nos encontremos. |\lquoti| son las comillas de abrir +% más 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 predefinidos están en el cuadro 3. +% \begin{table} +% \center\small +% \caption{Entrecomillados} +% \vspace{1.5ex} +% \begin{tabular}{l@{\hspace{5em}}l} +% \toprule2 +% |\lquoti| &|"<|\\ +% |\rquoti| &|">|\\ +% |\lquotii| &|``|\\ +% |\rquotii| &|''|\\ +% |\lquotiii| &|`|\\ +% |\rquotiii| &|'| +% \botrule2 +% \end{tabular} +% \end{table} +% +% \begin{decl} +% \con |\activatequoting \deactivatequoting| +% \end{decl} +% +% Las incompatibilidades potenciales de estas abreviaciones son +% enormes. Por ejemplo, en \textsf{ifthen} se cancelan las +% comparaciones entre números;\,\footnote{Y en \texttt{\textbackslash +% ifnum}, +% \texttt{\textbackslash ifdim}, etc., usado por los desarrolladores en +% los paquetes.} también +% resultan inoperantes |@>>>| y |@<<<| de +% \textsf{amstex}.\footnote{Aunque en +% este caso cabe usar los sinónimos |@)))| y |@(((|.} +% Por ello, se da la posibilidad de cancelarlas y reactivarlas con +% estas órdenes, aunque si se está usando +% \textsf{xmltex} ya se +% desactivan por completo de forma automática. El entorno +% |quoting| siempre permanece disponible.\footnote{Algunos tipos +% disponen de esta ligadura de forma interna para +% generar los caracteres de comillas, por lo que en ellos también +% podemos usarlos siempre, aunque los ajustes proporcionados por +% \textsf{spanish} se pueden perder; por otra parte, tampoco se +% usan demasiado a menudo.} +% +% \subsection{Funciones matemáticas} +% +% \begin{decl} +% \txt |\lim \limsup \liminf \bmod \pmod \sen \tg| +% etc.\act{math}\deact{\textit{es-minimal, es-sloppy}} +% \end{decl} +% +% Tradicionalmente, las abreviaciones de lo que en \TeX\ se conocen +% como operadores se han formado a partir del nombre castellano, lo +% que implica la presencia del acento en lím (en sus tres formas +% |\lim|, |\limsup| y |\liminf|), máx, mín, ínf y mód (en sus dos +% formas |\bmod| y |\pmod|). +% +% Con \textsf{spanish} pueden seguirse varias convenciones con ayuda +% de las siguientes órdenes: +% \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| +% \end{decl} +% Activa o desactiva el espacio entre "<arc"> y la función. +% Lo habitual ha sido con espacio; así pues, por omisión +% se espacia. +% +% También se añaden |\sen|, |\arcsen|, |\tg| y |\arctg|, +% que dan las funciones respectivas. +% \begin{decl} +% \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 +% separado es porque su forma no está normalizada en el ámbito +% hispanohablante. De esta forma se puede cambiar por otras con, por +% ejemplo: +%\begin{verbatim} +% \renewcommand{\spanishoperators}{ctg arc\,ctg sh ch th} +%\end{verbatim} +% (separadas con espacio). Cuando se selecciona \textsf{spanish} se crean +% órdenes con esos nombres +% y que dan esas funciones (siempre con |\nolimits|). Además de +% las letras sin acentuar se aceptan las órdenes |\,| y |\acute|, que +% se pasan por alto para formar el nombre. Por ejemplo, |arc\,ctg| +% se escribe en el documento con +% |\arcctg|, |M\acute{a}x| como |\Max| y |cr\acute{i}t| como |\crit| +% (hay que usar |i| y no |\dotlessi|). +% La orden |\,| responde a |\|(|un|)|spacedoperators|, y |\acute| +% a |\|(|un|)|accentedoperators|. +% +% Conviene que |\spanishoperators| esté en el preámbulo del +% documento en sí, antes de |\selectspanish| o de +% |\begin{document}|. +% +% \begin{decl} +% \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 |\dotlessi|, de forma que se puede escribir +% |\acute{\dotlessi}|. Por ejemplo, +% |$V_{\mathbf{cr\acute{\dotlessi}t}}$| da +% $V_{\mathbf{cr\acute{\dotlessi}t}}$. +% +% +% \section{Opciones generales} +% +% Están pensadas principalmente para documentos basados en una clase +% o un estilo editorial muy preciso que no debe tocarse. Para conocer +% los cambios exactos, véanse las diferentes entradas que describen +% las funciones de \textsf{spanish}. +% +% \begin{decl} +% \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 +% \end{decl} +% +% Anula, además, todas las ligaduras sin excepción, la eñe en listas y los +% grupos \textsf{text} y \textsf{math}. +% +% \section{Selección} +% +% \begin{decl} +% |\selectspanish| +% \end{decl} +% +% Por omisión, \babel{} deja <<dormidas>> las lenguas hasta que se +% llega a |\begin{document}| con el fin de evitar conflictos por +% las abreviaciones; a cambio, +% se priva de la posibilidad de usar las lenguas en el preámbulo +% en órdenes como |\savebox|, |\title|, |\newtheorem|, etc. +% +% La orden |\selectspanish| permite activar \textsf{spanish} con sus +% extensiones y abreviaciones antes de +% |\begin{document}|.\footnote{Algunos detalles, que +% apenas afectan a \textsf{spanish}, siguen sin activarse hasta el +% comienzo del documento.} +% De esta forma, podríamos decir +%\begin{verbatim} +% \documentclass{book} +% \usepackage[T1]{fontenc} +% \usepackage[cp1252]{inputenc} +% \usepackage[spanish,activeacute,es-notilde]{babel} +% ... % Mas paquetes +% +% \selectspanish +% +% \title{Título} +% \author{Autor} +% \newcommand{\pste}{para"-psicológicamente} +% ... % Mas definiciones +% +% \begin{document} +%\end{verbatim} +% +% \section{Adaptación} +% +% \subsection{Opciones por países} +% \label{paises} +% +% % \begin{decl} \con |mexico| \quad |mexico-com| +% \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 +% 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-|.) +% +% Probablemente, esta opción también sea apropiada en algunos +% países de América Central y del Sur. +% +% \subsection{Configuración} +% +% En sus últimas versiones, \babel{} ofrece la posibilidad +% de cargar automáticamente un archivo con el mismo nombre que +% el principal, pero con extensión |.cfg|. \textsf{Spanish} +% proporciona unas pocas órdenes para ser usadas en este archivo: +% +% \begin{decl} +% \con |\es@activeacute| +% \end{decl} +% Activa las abreviaciones con apóstrofos, sin que sea +% necesario incluir |activeacute| como opción en |\usepackage|. +% +% \begin{decl} \con |\es@enumerate{<leveli>}|% +% |{<levelii>}{<leveliii>}{<leveliv>}|\alw +% \end{decl} +% Cambia los valores preestablecidos por \textsf{spanish} para +% |enumerate|. \textit{leveln} consiste en una letra, que +% indica qué formato tendrá el número, seguida +% de cualquier texto. La letra tiene que ser: |1| (arábigo), +% |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), +% |i| (romano \emph{versalita}), |I| (romano versal) o +% finalmente |o| (ordinal\,\footnote{Lo normal es no añadir ningún +% signo tras ordinal.}). +% +% Esta orden no está pensada para hacer cambios elaborados, sino +% sólo meros reajustes. Los valores preestablecidos +% equivalen a +%\begin{verbatim} +% \es@enumerate{1.}{a)}{1)}{a$'$)} +%\end{verbatim} +% +% \begin{decl} \con |\es@itemize{<leveli>}|% +% |{<levelii>}{<leveliii>}{<leveliv>}|\alw +% \end{decl} +% Lo mismo para |itemize|, sólo que los argumentos se +% usan de forma literal. Los valores originales de \LaTeX{} son +% similares a +%\begin{verbatim} +% \es@itemize{\textbullet}{\normalfont\bfseries\textendash} +% {\textasteriskcentered}{\textperiodcentered} +%\end{verbatim} +% +% \begin{decl}\con |\es@operators|\act{math} +% \end{decl} +% Todo lo relativo a operadores se cancela con +%\begin{verbatim} +% \let\es@operators\relax +%\end{verbatim} +% Es buena idea incluirlo si no se van a usar, ya que ahorra memoria. +% +% Otros ajustes útiles en este contexto son |\spanishoperators|, +% |\selectspanish| y |\deactivatequoting|. +% +% +% Recordemos que todos los cambios +% operados desde este archivo restan compatibilidad al +% documento, por lo que si se distribuye conviene adjuntarlo +% con el entorno |filecontents|. +% +% \subsection{Pasar opciones desde un paquete o clase} +% +% \begin{decl} \con |\spanishoptions| +% \end{decl} +% +% 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. +% +% \subsection{Otros cambios} +% +% Las adaptaciones se encuentran organizadas en varios grupos, a los +% que corresponden sendas macros: +% |\textspanish|, |\mathspanish|, +% |\shorthandsspanish|, |\datespanish| y |\captionsspanish|. Pueden +% cancelarse con: +%\begin{verbatim} +% \renewcommand\textspanish{} +%\end{verbatim} +% +% \section{Plain \TeX} +% +% Con Plain hay que hacer: +%\begin{verbatim} +% \input spanish.sty +%\end{verbatim} +% +% 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 +% cargar el archivo. +% +% En cambio no están disponibles: entrecomillados, +% |\lsc| ni las adaptaciones de lengua principal. +% +% \section{Compatibilidad con versiones anteriores} +% +% En versiones de \textsf{babel} bastante antiguas, las abreviaciones +% con |'| se activaban por omisión, mientras que ahora es necesario +% |activeacute|. +% +% En la versión 4, la abreviación |~n| se consideró para extinguir. +% En la versión 5 sigue estando, pero \textit{no} se activa por +% omisión, sino que hay que emplear |es-tilden|. +% +% 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. +% La opción de paquete |es-delayed| restaura el comportamiento +% anterior, por si hubiera alguna incompatibilidad. +% +% La compatibilidad con la versión 2.09 de \LaTeX{} se ha suprimido. +% +% \section*{Referencias} +% \addcontentsline{toc}{section}{Referencias} +% +% \begingroup +% \small +% \leftskip1.5cm \parindent-1.5cm +% +% \makebox[1.5cm][l]{\lsc{DRAE}}\textit{Diccionario de la Academia +% Española}, Madrid, Espasa-Calpe, 21"a ed., 1992. +% +% \makebox[1.5cm][l]{\lsc{DOT}}José Martínez de Sousa, +% \textit{Diccionario de ortografía técnica}, +% Madrid, Germán Sánchez Ruipérez/Pirámide, 1987. +% (Biblioteca del libro.) +% +% \makebox[1.5cm][l]{\lsc{DTL}}José Martínez de Sousa, +% \textit{Diccionario de tipografía y del libro}, +% Madrid, Paraninfo, 3"a ed., 1992. +% +% \makebox[1.5cm][l]{\lsc{MEA}}José Martínez de Sousa, +% \textit{Manual de edición y autoedición}, +% Madrid, Pirámide, 1994. +% +% \leftskip0pt \parindent0pt \vspace{6pt} +% +% {\itshape +% Para otras cuestiones tipográficas, las referencias +% usadas son, entre otras:} +% +% \parindent-1.5pc \leftskip1.5pc \vspace{3pt} +% +% Asociación de Academias de la Lengua Española, +% \textit{Diccionario panhispánico de dudas}, Madrid, Santillana, 2005. +% +% Javier Bezos, +% \textit{Tipografía española con \TeX}, documento electrónico +% disponible en +% \textsf{http://perso.wanadoo.es/jbezos/tipografia.html}. +% +% Javier Bezos, +% \textit{Tipografía y notaciones científicas}, Gijón, +% Trea, 2008. +% +% Bureau International des Poids et mesures, +% \textit{Le Sist\`{e}me international dúnités}, +% 8"a ed., París, {\footnotesize BIPM}, 2006, +% \textsf{http://www.bipm.org/""fr/""si/""si\_brochure/}, 2006-11-10. +% +% Jorge de Buen, +% \textit{Manual de diseño editorial,} México, Santillana, 2000. +% +% +% \textit{The Chicago Manual of Style}, Chicago, University of +% Chicago Press, 14"a~ed., 1993, esp.~págs.~333~-335. +% +% José Fernández Castillo, +% \textit{Normas para correctores y compositores tipógrafos}, +% Madrid, Espasa-Calpe, 1959. +% +% IRANOR [AENOR], Normas \lsc{UNE} números 5010 (<<Signos +% matemáticos>>), 5028 (<<Símbolos +% geométricos>>) y 5029 (<<Impresión de los +% símbolos de magnitudes y unidades y de los números>>). +% [Obsoletas.] +% +% Llerena, Mario, +% \textit{Un manual de estilo,} Miami, Unilit, 1999. +% +% Real Academia Española, +% \textit{Esbozo de una nueva gramática de la +% lengua española}, Madrid, Espasa-Calpe, 1973. +% +% V.\ Martínez Sicluna, +% \textit{Teoría y práctica de la tipografía}, +% Barcelona, Gustavo Gili, 1945. +% +% José Martínez de Sousa, +% \textit{Diccionario de ortografía de la lengua española}, +% Madrid, Paraninfo, 1996. +% +% Juan Martínez Val, \textit{Tipografía práctica}, Madrid, +% Laberinto, 2002. +% +% Juan José Morato, \textit{Guía práctica del compositor +% tipográfico}, Madrid, Hernando, 2"a ed., 1908 (1"a ed., 1900, +% 3"a ed., 1933). +% +% Marion Neubauer, +% <<Feinheiten bei wissenschaftlichen Publikationen>>, +% \textit{Die \TeX nisches Kom\"odie}, parte I, vol. 8, n"o 4, 1996, +% págs. 23-40; parte II, vol. 9, n"o 1, 1997, págs.~25~-44. +% +% Notimex, \textit{Manual de operación y estilo editorial}, México, +% Notimex, 1999. +% +% José Polo, +% \textit{Ortografía y ciencia del lenguaje}, Madrid, Paraninfo, +% 1974. +% +% Siglo 21, \textit{Libro de estilo}, México, Alda, +% $\mathrm{^s}\!$/$\mathrm{_f}$ +% (impr. 1995). +% +% Pedro Valle, +% \textit{Cómo corregir sin ofender}, Buenos Aires, Lumen, 1998. +% +% Hugh C. Wolfe, <<Símbolos, unidades y nomenclatura>>, +% \textit{Enciclopedia de Física}, dir. Rita G. Lerner y George L. +% Trigg, Madrid, Alianza, 1987, t.~2, págs.~1423~-1451. +% +%\endgroup +% +% \else +% +%^^A ======= Beginning of text as typeset by user.drv ========= +% +% \GetFileInfo{spanish.dtx} +% +% \section{The Spanish language} +% +% The file \file{\filename}\footnote{The file described in this +% section has version number \fileversion\ and was last revised on +% \filedate. The maintainer from v4.0 on is Javier Bezos +% (http://www.tex-tipografia.com). Previous +% versions were made by Julio S\'anchez. The English documentation +% has been improved by José Luis Rivera; thanks to him it is now a lot +% clearer.} defines all the language-specific macros for the Spanish +% language. +% +% Spanish support is implemented following mainly the guidelines given +% by Jos\'e Mart\'\i nez de Sousa. You may get the the full +% documentation (more comprehensive, but regrettably only in Spanish) +% by typesetting |spanish.dtx| directly. There are examples and some +% additional features documented in the Spanish version only. +% Cross-references in this section point to that document. +% +% \paragraph{Features} This style provides: +% +% \begin{itemize} +% \item Translations following the International \LaTeX{} +% conventions, as well as |\today|. +% +% \item Shorthands listed in Table~\ref{tab:spanish-quote-def}. +% Examples in subsection~3.4 are illustrative. Notice that |"~| has a +% special meaning in \textsf{spanish} different to other languages, +% and is used mainly in linguistic contexts. +% +% \begin{table}[htb] +% \centering +% \begin{tabular}{lp{8cm}} +% |'a| & Acute accented a. Works for e, i, o, u, too (both +% lowercase and uppercase).\\ +% |'n| & \~n (uppercase too).\\ +% |"i| & \"i (uppercase too).\\ +% |"u| & \"u (uppercase too).\\ +% |"a| |"o| & Ordinal numbers (uppercase |"A|, |"O| too).\\ +% |"er "ER| & Ordinal 1.\textsuperscript{er} 1.\textsuperscript{\textsc{er}}\\ +% |"c| & \c{c} (uppercase too).\\ +% |"rr| & rr, but -r when hyphenated.\\ +% |"y| & An old ligature for ``et'' (like the English \&).\\ +% |"-| & Like |\-|, but allowing hyphenation in the rest +% the word.\\ +% |"=| & Like |-|, but allowing hyphenation in the rest +% the word.\\ +% |"~| & The hyphen is repeated at the very beginning of +% the next line if the word is hyphenated at this +% point.\\ +% |""| & Like |"-| but producing no hyphen sign.\\ +% |~-| & Like |"-| but with no break after the hyphen. Works for +% en-dashes (|~--|) and em-dashes (|~---|). |"+|, |"+-| +% and |"+--| are synonymous.\\ +% |"/| & A slash slightly lowered, if necessary.\\ +% \verb+"|+ & Disable ligatures at this point.\\ +% |"<| & Left guillemets.\\ +% |">| & Right guillemets.\\ +% |<<| |>>| & |\begin{quoting}| and |\end{quoting}|. (See below.) +% |"`| and |"'| are synonymous.\\ +% |"? "!| & Opening question and exlamation marks (?`!`) +% aligned on the baseline, useful for all-caps headings, etc. +% \end{tabular} +% \caption{Extra definitions made by file \file{spanish.ldf}} +% \label{tab:spanish-quote-def} +% \end{table} +% +% \item |\frenchspacing|. +% +% \item \emph{In math mode}, a dot followed by a digit is replaced +% by a decimal comma. +% +% \item Spanish ordinals and abbreviations with the |\sptext|\marg{text} +% command as, for instance, |1\sptext{er}|. The preceptive dot is included. +% +% \item Accented (l\'\i m, m\'ax, m\'\i n, m\'od) and spaced +% (arc\,cos, etc.) functions. +% +% \item |\dotlessi| is provided for use in math mode. +% +% \item A |quoting| environment and a related pair of shorthands |<<| +% and |>>|. Useful for traditional spanish multi-paragraph quoting. +% +% \item There is a small space before the percent |\%| sign. +% +% \item |\lsc| provides lowercase small caps. (See subsection~3.10.) +% +% \item Ellipsis is best typed as |...| or, within a sentence, as |\...| +% +% \end{itemize} +% +% If \textsf{spanish} is the main language, the command +% |\layoutspanish| is added to the main group, modifying the standard +% classes throughout the whole document in the following way: +% +% \begin{itemize} +% +% \item Paragraphs are set with |\indentfirst|. +% +% \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, etc., asterisks. +% +% \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 discouraged (see below). +% +% \item There is a dot after section numbers in titles, headings, and toc. +% +% \end{itemize} +% +% A subset of these features is implemented for Plain \TeX{} +% (accesible with the command |\input spanish.sty|). Most +% significantly, |\lsc|, the |quoting| environment, and features +% provided by |\layoutspanish| are missing. +% +% \paragraph{Customization} +% +% Beginning with version 5.0, customization is made following two paths: +% via |options| or via |commands|; these options and commands override +% the layout for Spanish documents at different levels: options are meant for +% use at the preamble only, while commands may be used in the configuration +% file or at document level. +% +% Global options control the overall appearance of the document, and may +% be set on the |{babel}| call, right after calling |spanish|, or +% shortly before the call to |{babel}|, to ensure their proper loading +% at runtime. Thus, the following calls are roughly equivalent: +% +% \begin{verbatim} +% \usepackage[...,spanish,es-nosectiondot,es-nodecimaldot,...]{babel} +% +% \def\spanishoptions{es-nosectiondot,es-nodecimaldot} +% \usepackage[...,spanish,...]{babel} +% \end{verbatim} +% +% \begin{table} +% \centering +% \begin{tabular}{cccc}\hline +% Basic Options & |es-minimal| & |es-sloppy| & |es-noshorthands| \\\hline +% |es-noindentfirst| & X & X & \\ +% |es-nosectiondot| & X & X & \\ +% |es-nolists| & X & X & \\ +% |es-noquoting| & X & X & X \\ +% |es-notilde| & X & X & X \\ +% |es-nodecimaldot| & X & X & X \\ +% |es-nolayout| & & X & \\ +% |es-ucroman| & X & & \\ +% |es-lcroman| & X & X & \\\hline +% \end{tabular} +% \caption{Spanish Customization Options} +% \label{tab:SpanishCustomizationOptions} +% \end{table} +% +% Some global options are built upon lower level options, and may be +% used as shorthand for more global customizations. +% Table~\ref{tab:SpanishCustomizationOptions} gives an overview of the +% global options constructed this way. Most of these options are +% self-explanatory: they disable the changes made to the basic \LaTeX\ +% layout by |spanish|. |es-lcroman| however, and a few others, need a +% bit of explanation, and they may be described as follows: +% +% \begin{itemize} +% +% \item Traditional Spanish typography discourages the use of +% lowercase Roman numerals; instead, a smallcaps variant is +% implemented. However, since |Makeindex| seems to choke on the code +% implementing lowercase Roman numerals (via the |\lsc| macro), two +% workarounds are implemented: the |es-ucroman| option converts all +% Roman numerals to uppercase, and the |es-lcroman| option turns all +% Roman numerals to lowercase; the former should be preferred over the +% latter. Three macros control local changes to Roman numbers: +% |\spanishscroman|, |\spanishucroman|, and |\spanishlcroman|. +% +% \item The |es-preindex| option calls the |romanidx.sty| package +% automatically to fix index entries in smallcaps roman form. An +% additional macro, +% |\spanishindexchars|\marg{encap}\marg{openrange}\marg{closerange} +% determines the characters delimiting index entries. Defaults are +% \verb=\spanishindexchars{|}{(}{)}=. +% +% \item The |es-tilden| option restores the old tilde |~| shorthand +% for \~n. This shorthand is however \emph{strongly} deprecated. +% +% \item The |es-nolayout| option disables layout changes in the +% document when |spanish| is the main language. These changes affect +% enumerated and itemized lists, enumerations (alphabetic order +% excludes \~n), and symbolic footnotes. +% +% \item The |es-noshorthands| disables the shorthand mechanism +% completely: neither |"| nor |'| nor |<| nor |>| nor |~| nor |.| work +% at all. +% +% \item The |es-noquoting| option disables the macros |<<| and |>>| +% calling the |quoting| environment; the alternative macros |"`| and +% |"'| are still available. +% +% \item The |es-uppernames| option makes uppercase versions of +% captions for chapter, tablename, etc. +% +% \item The |es-tabla| option changes ``cuadro'' for ``tabla'' in +% captions. +% +% \end{itemize} +% +% Finally, the Spanish 5 series begins the implementation of national +% variations of Spanish typography, beginning with Mexico. Thus the +% global options |mexico| and |mexico-com| are adapted to practices +% spread in Mexico, and perhaps Central America, the Caribbean, and +% some countries in South America.\footnote{The main difference is +% that |mexico| disables the |decimaldot| mechanism, while +% |mexico-com| keeps it enabled; both change the |quoting| +% environment, disabling the use of guillemets.} +% +% Many of the global options are implemented via macros, which may be +% included in the configuration file |spanish.cfg|, in the preamble, +% after the call to |babel|, and in the body of the document. These +% macros are the following. +% +% \begin{itemize} +% +% \item The macros |\spanishdashitems| and |\spanishsignitems| change +% the values of itemized lists to a series of dashes or an alternative +% series of symbols, respectively. +% +% \item The command |\deactivatequoting| deactivates the |<<| and |>>| +% shorthands if you want to use |<| and |>| in numerical comparisons +% and some AMS\TeX\ commands. +% +% \item You may kill the space in spaced operators with +% |\unspacedoperators|. +% +% \item You may kill the accents on accented operators with +% |\unaccentedoperators|. +% +% \item The command |\decimalpoint| resets the decimal separator to +% its default (dot) value, while |\spanishdecimal|\marg{symbol} allows +% for an arbitrary definition. +% +% \item |\spanishplainpercent| prevents the addition of a thinspace before +% the percent sign in texts. This might be useful for parenthesized percent +% signs in tables, etc. +% +% \item The macros |\spanishdatedel| and |\spanishdatede| control the +% if the article is given in years (|del| or |de|). +% +% \item The macro |\spanishreverseddate| sets the date of the format +% ``Month Day del Year''. +% +% \item The macro |\Today| gives months in uppercase. +% +% \item The macros |\spanish|\textit{caption} change the value of the \emph{caption} +% automatically (no need to add an |\addto|). +% +% \item The command |\spanishdeactivate|\marg{characters} disables the +% shorthand characters listed in the argument. Elegible characters +% are the set |.'"~<>|. These shorthand characters may be globally +% deactivated for Spanish adding this command to |\shorthandsspanish|. +% +% \item Extras are divided in groups controlled by the commands +% |\textspanish|, |\mathspanish|, |\shorthandsspanish| y +% |\layoutspanish|; their values may be cancelled typing +% |\renewcommand|\marg{command}|{}|, or changed at will (check the +% Spanish documentation or the code for details). +% +% \item The command |\spanishoperators|\marg{operators} defines +% command names for operators in Spanish. There is no standard name +% for some of them, so they may be created or changed at will. For +% instance, the command +% |\renewcommand{\spanishoperators}{arc\,ctg m\acute{i}n}| +% creates commands for these functions. The command +% |\,| adds thinspaces at the appropriate places for spaced operators +% (like |\arcctg| in this case), and the command |\acute|\marg{letter} +% adds an accent to the letter included in the definition (thus, +% |m\acute{i}n| defines the accented function |\min| (m\'\i{}n); +% please notice that |\dotlessi| is not necessary). +% +% \item The commands +% |\lquoti|\marg{string} |\rquoti|\marg{string} +% |\lquotii|\marg{string} |\rquotii|\marg{string} +% |\lquotiii|\marg{string} |\rquotiii|\marg{string} +% set the quoting signs in the |quoting| environment, +% nested from outside in. They may be |\renew|ed at will. +% Default values are shown in table~\ref{tab:spanish-quote-ref}. +% \begin{table} +% \center\small +% \vspace{1.5ex} +% \begin{tabular}{l@{\hspace{5em}}l} +% |\lquoti| &|"<|\\ +% |\rquoti| &|">|\\ +% |\lquotii| &|``|\\ +% |\rquotii| &|''|\\ +% |\lquotiii| &|`|\\ +% |\rquotiii| &|'| +% \end{tabular} +% \caption{Default quoting signs set for the \texttt{quoting} environment.} +% \label{tab:spanish-quote-ref} +% \end{table} +% +% \item The command |\selectspanish*| is obsolete: if |spanish| is the +% main language, all its features are available right after loading +% |babel|. The |es-delayed| option is provided to restore the +% previous behavior and macros for backwards compatibility. +% +% \end{itemize} +% +% \fi +% \endgroup +% +% \StopEventually{} +% +%^^A ========== End of manual =============== +% +% \ifx\langdeffile\undefined +% +% \section{The Code} +% +% \else +% +% \subsection{The Code} +% +% \fi +% +% \changes{spanish~5.0a}{2007/02/21}{Reimplemented in full, which some +% parts rewritten from scratch. Added the es- mechanism and the mexico +% option. Many bug fixes.} +% \changes{spanish~5.0d}{2008/05/25}{Fixed two bugs: misplaced +% 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.0j}{2010/05/08}{Changed order of tests in +% shorthands, to fix a bug with ifthen} +% +% This file is for both \LaTeXe{} and Plain formats. +% +% \begin{macrocode} +%<*code> +\ProvidesLanguage{spanish.ldf} + [2010/05/23 v5.0j 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`\~=\active +\catcode`\"=12 +\catcode`\:=12 + +\ifx\undefined\l@spanish + \@nopatterns{Spanish} + \adddialect\l@spanish0 +\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} + {\let\ifes@latex\iftrue} +% \end{macrocode} +% +% Package options for spanish. To avoid error messages dummy +% options are created on the fly when neccessary. +% +% \begin{macrocode} +\ifes@latex + +\@ifundefined{spanishoptions}{} +{\PassOptionsToPackage{\spanishoptions}{babel}} + +\def\es@genoption#1#2#3{% + \DeclareOption{#1}{}% + \@ifpackagewith{babel}{#1}% + {\def\es@a{#1}% + \expandafter\let\expandafter\es@b\csname opt@babel.sty\endcsname + \addto\es@b{,#2}% + \expandafter\let\csname opt@babel.sty\endcsname\es@b + \AtEndOfPackage{#3}}% + {}} + +\es@genoption{es-minimal} + {es-ucroman,es-noindentfirst,es-nosectiondot,es-noenumerate,% + es-noitemize,es-noquoting,es-notilde,es-nodecimaldot} + {\spanishplainpercent + \let\es@operators\relax} +\es@genoption{es-nolists} + {es-noenumerate,es-noitemize}{} +\es@genoption{es-sloppy} + {es-nolayout,es-noshorthands}{} +\es@genoption{es-noshorthands} + {es-noquoting,es-nodecimaldot,es-notilde}{} +\es@genoption{mexico} + {mexico-com,es-nodecimaldot}{} +\es@genoption{mexico-com} + {es-tabla,es-noquoting} + {\def\lquoti{``}\def\rquoti{''}% + \def\lquotii{`}\def\rquotii{'}% + \def\lquotiii{\guillemotleft{}}% + \def\rquotiii{\guillemotright{}}} + +\def\es@ifoption#1#2#3{% + \DeclareOption{es-#1}{}% + \@ifpackagewith{babel}{es-#1}{#2}{#3}}% + +\def\es@optlayout#1#2{\es@ifoption{#1}{}{\addto\layoutspanish{#2}}} + +\else + +\def\es@ifoption#1#2#3{\@namedef{spanish#1}{#2}} + +\fi + +\let\es@uclc\@secondoftwo +\es@ifoption{uppernames}{\let\es@uclc\@firstoftwo}{} + +\def\es@tablename{Ccuadro} +\es@ifoption{tabla}{\def\es@tablename{Ttabla}}{} +\es@ifoption{cuadro}{\def\es@tablename{Ccuadro}}{} +% \end{macrocode} +% +% Captions follow a two step schema, so that, say, |\refname| is +% defined as |\spanishrefname| which in turn contains the string +% to be printed. The final definition of |\captionsspanish| +% is built below. +% +% \begin{macrocode} +\def\captionsspanish{% + \es@a{preface}{Prefacio}% + \es@a{ref}{Referencias}% + \es@a{abstract}{Resumen}% + \es@a{bib}{Bibliograf\'{\i}a}% + \es@a{chapter}{Cap\'{\i}tulo}% + \es@a{appendix}{Ap\'{e}ndice}% + \es@a{listfigure}{\'{I}ndice de \es@uclc Ffiguras}% + \es@a{listtable}{\'{I}ndice de \expandafter\es@uclc\es@tablename s}% + \es@a{index}{\'{I}ndice \es@uclc Aalfab\'{e}tico}% + \es@a{figure}{Figura}% + \es@a{table}{\expandafter\@firstoftwo\es@tablename}% + \es@a{part}{Parte}% + \es@a{encl}{Adjunto}% + \es@a{cc}{Copia a}% + \es@a{headto}{A}% + \es@a{page}{p\'{a}gina}% + \es@a{see}{v\'{e}ase}% + \es@a{also}{v\'{e}ase tambi\'{e}n}% + \es@a{proof}{Demostraci\'{o}n}% + \es@a{glossary}{Glosario}% + \@ifundefined{chapter} + {\es@a{contents}{\'Indice}}% + {\es@a{contents}{\'Indice \es@uclc Ggeneral}}} + +\def\es@a#1{\@namedef{spanish#1name}} +\captionsspanish +\def\es@a#1#2{% + \def\expandafter\noexpand\csname#1name\endcsname + {\expandafter\noexpand\csname spanish#1name\endcsname}} +\edef\captionsspanish{\captionsspanish} +% \end{macrocode} +% +% Now two macros for dates (upper and lowercase). +% +% \begin{macrocode} +\def\es@month#1{% + \expandafter#1\ifcase\month\or Eenero\or Ffebrero\or + Mmarzo\or Aabril\or Mmayo\or Jjunio\or Jjulio\or Aagosto\or + Sseptiembre\or Ooctubre\or Nnoviembre\or Ddiciembre\fi} + +\def\es@today#1{% + \ifcase\es@datefmt + \the\day~de \es@month#1% + \else + \es@month#1~\the\day + \fi + \ de\ifnum\year>1999\es@yearl\fi~\the\year} + +\def\datespanish{% + \def\today{\es@today\@secondoftwo}% + \def\Today{\es@today\@firstoftwo}} +\newcount\es@datefmt +\def\spanishreverseddate{\es@datefmt\@ne} +\def\spanishdatedel{\def\es@yearl{l}} +\def\spanishdatede{\let\es@yearl\@empty} +\spanishdatede +% \end{macrocode} +% +% The basic macros to select the language in the preamble or the +% config file. Use of |\selectlanguage| should be avoided at this +% early stage because the active chars are not yet +% active. |\selectspanish| makes them active. +% +% \begin{macrocode} +\def\selectspanish{% + \def\selectspanish{% + \def\selectspanish{% + \PackageWarning{spanish}{Extra \string\selectspanish ignored}}% + \es@select}} +\@onlypreamble\selectspanish +\def\es@select{% + \let\es@select\@undefined + \selectlanguage{spanish}} + +\let\es@shlist\@empty +% \end{macrocode} +% +% Instead of joining all the extras directly in |\extrasspanish|, +% we subdivide them in three further groups. +% +% \begin{macrocode} +\def\extrasspanish{% + \textspanish + \mathspanish + \ifx\shorthandsspanish\@empty + \expandafter\spanishdeactivate\expandafter{\es@shlist}% + \languageshorthands{none}% + \else + \shorthandsspanish + \fi} +\def\noextrasspanish{% + \ifx\textspanish\@empty\else + \notextspanish + \fi + \ifx\mathspanish\@empty\else + \nomathspanish + \fi + \ifx\shorthandsspanish\@empty\else + \noshorthandsspanish + \fi + \csname es@restorelist\endcsname} + +\addto\textspanish{\es@sDRC\sptext{\es@sptext}} + +\def\es@orddot{.} +% \end{macrocode} +% +% The definition of |\sptext| is more elaborated than that of +% |\textsuperscript|. With uppercase superscript text +% the scriptscriptsize is used. The mandatory dot is already +% included. There are two versions, depending on the +% format. +% +% \begin{macrocode} +\ifes@latex + \def\es@sptext#1{% + {\es@orddot + \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.15ex + \else + \fontsize\ssf@size\z@ + \selectfont + \advance\dimen@-1.5ex + \fi + \math@fontsfalse\raise\dimen@\hbox{#1}}} +\else + \let\sptextfont\rm + \def\es@sptext#1{% + {\es@orddot + \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.75ex + \raise\dimen@\hbox{$\scriptstyle\sptextfont#1$}% + \else + \advance\dimen@-0.8ex + \raise\dimen@\hbox{$\scriptscriptstyle\sptextfont#1$}% + \fi}} +\fi +% \end{macrocode} +% +% 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@sDRC\lsc{\es@lsc}} + \def\es@lsc{\es@xlsc\MakeUppercase\MakeLowercase} + \def\es@xlsc#1#2#3{% + \leavevmode + \hbox{% + \scshape\selectfont + \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 + \PackageWarning{spanish}{Replacing `\curr@fontshape' by + \MessageBreak faked small caps}% + #1{#3}% + \else + #2{#3}% + \fi}} +\fi +% \end{macrocode} +% +% The |quoting| environment (not available in Plain). Overriding +% the default |\everypar| is a bit tricky. +% +% \begin{macrocode} +\newif\ifes@listquot + +\ifes@latex + \csname newtoks\endcsname\es@quottoks + \csname newcount\endcsname\es@quotdepth + \newenvironment{quoting} + {\leavevmode + \advance\es@quotdepth\@ne + \csname lquot\romannumeral\es@quotdepth\endcsname% + \ifnum\es@quotdepth=\@ne + \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 +% \end{macrocode} +% +% 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. +% +% \begin{macrocode} + \addto\@marginparreset{\let\es@quotcont\@empty} + \DeclareRobustCommand\es@listquot{% + \csname rquot\romannumeral\es@quotdepth\endcsname + \global\es@listquottrue} +\fi +% \end{macrocode} +% +% |\frenchspacing|, |\...| and |\%|. +% +% \begin{macrocode} +\addto\textspanish{\bbl@frenchspacing} +\addto\notextspanish{\bbl@nonfrenchspacing} +\addto\textspanish{% + \let\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@sDRC\%{\es@sppercent\percentsign{}}} +% \end{macrocode} +% +% 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@sDRC\dotlessi{\es@dotlessi}} +\let\nomathspanish\relax + +\ifes@latex + \def\es@texti{\i} + \addto\@uclclist{\dotlessi\es@texti} +\fi + +\ifes@latex + \def\es@dotlessi{% + \ifmmode + {\ifnum\mathgroup=\m@ne + \imath + \else + \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@"7000 + \mathchar\count@ + \fi}% + \else + \i + \fi} +\else + \def\es@dotlessi{\textormath{\i}{\mathchar"7010}} +\fi + +\def\accentedoperators{% + \def\es@op@ac##1{\acute{\if i##1\dotlessi\else##1\fi}}} +\def\unaccentedoperators{% + \def\es@op@ac##1{##1}} +\accentedoperators +\def\spacedoperators{\let\es@op@sp\,} +\def\unspacedoperators{\let\es@op@sp\@empty} +\spacedoperators +\addto\mathspanish{\es@operators} + +\ifes@latex\else + \let\operator@font\rm +\fi +% \end{macrocode} +% +% Operators are stored in |\es@operators|, which is +% included in the math group. Since |\operator@font| is +% defined in \LaTeXe{} only, we define it in the plain variant. +% +% \begin{macrocode} +\def\es@operators{% + \es@sdef\bmod{\nonscript\mskip-\medmuskip\mkern5mu + \mathbin{\operator@font m\es@op@ac od}\penalty900\mkern5mu + \nonscript\mskip-\medmuskip}% + \@ifundefined{@amsmath@err}% + {\es@sdef\pmod##11{\allowbreak\mkern18mu + ({\operator@font m\es@op@ac od}\,\,##11)}}% + {\es@sdef\mod##1{\allowbreak\if@display\mkern18mu + \else\mkern12mu\fi{\operator@font m\es@op@ac od}\,\,##1}% + \es@sdef\pmod##1{\pod{{\operator@font m\es@op@ac od}% + \mkern6mu##1}}}% + \def\es@a##1 {% + \if^##1^% empty? continue + \bbl@afterelse + \es@a + \else + \bbl@afterfi + {\if&##1% &? finish + \else + \bbl@afterfi + \begingroup + \let\,\@empty % ignore when def'ing name + \let\acute\@firstofone % id + \edef\es@b{\expandafter\noexpand\csname##1\endcsname}% + \def\,{\noexpand\es@op@sp}% + \def\acute{\noexpand\es@op@ac}% + \edef\es@a{\endgroup + \noexpand\es@sdef\expandafter\noexpand\es@b{% + \mathop{\noexpand\operator@font##1}\es@c}}% + \es@a % restores itself + \es@a + \fi}% + \fi}% + \let\es@b\spanishoperators + \addto\es@b{ }% + \let\es@c\@empty + \expandafter\es@a\es@b l\acute{i}m l\acute{i}m\,sup + l\acute{i}m\,inf m\acute{a}x \acute{i}nf m\acute{i}n & % + \def\es@c{\nolimits}% + \expandafter\es@a\es@b sen tg arc\,sen arc\,cos arc\,tg & } +\def\spanishoperators{cotg cosec senh tgh } +% \end{macrocode} +% +% Now comes the text shorthands. They are grouped in +% |\shorthandsspanish| and this style performs some +% operations before the babel shortands are called. +% The aims are to allow espression like |$a^{x'}$| +% and to deactivate shorthands by making them of +% category `other.' After providing a |\'i| shorthand, +% the new macros are defined. +% +% \begin{macrocode} +\DeclareTextCompositeCommand{\'}{OT1}{i}{\@tabacckludge'{\i}} + +\def\es@set@shorthand#1{% + \expandafter\edef\csname es@savecat\string#1\endcsname + {\the\catcode`#1}% + \initiate@active@char{#1}% + \catcode`#1=\csname es@savecat\string#1\endcsname\relax + \if.#1\else + \addto\es@restorelist{\es@restore{#1}}% + \addto\es@select{\shorthandon{#1}}% + \addto\shorthandsspanish{\es@activate{#1}}% + \addto\es@shlist{#1}% + \fi} + +\def\es@use@shorthand{% + \if@safe@actives + \bbl@afterelse + \string + \else + \bbl@afterfi + {\ifx\thepage\relax + \bbl@afterelse + \string + \else + \bbl@afterfi + \es@use@sh + \fi}% + \fi} + +\def\es@use@sh#1{% + \ifx\protect\@unexpandable@protect + \bbl@afterelse + \noexpand#1% + \else% + \bbl@afterfi + \textormath + {\csname active@char\string#1\endcsname}% + {\csname normal@char\string#1\endcsname}% + \fi} + +\gdef\es@activate#1{% + \begingroup + \lccode`\~=`#1 + \lowercase{% + \endgroup + \def~{\es@use@shorthand~}}} + +\def\spanishdeactivate#1{% + \@tfor\@tempa:=#1\do{\expandafter\es@spdeactivate\@tempa}} + +\def\es@spdeactivate#1{% + \if.#1% + \mathcode`\.=\es@period@code + \else + \begingroup + \lccode`\~=`#1 + \lowercase{% + \endgroup + \expandafter\let\expandafter~% + \csname normal@char\string#1\endcsname}% + \catcode`#1=\csname es@savecat\string#1\endcsname\relax + \fi} +% \end{macrocode} +% +% |\es@restore| is used in the list |\es@restorelist|, which in +% turn restores all shorthands as defined by \babel. The latter +% macros also has |\es@quoting|. +% +% \begin{macrocode} +\def\es@restore#1{% + \shorthandon{#1}% + \begingroup + \lccode`\~=`#1 + \lowercase{% + \endgroup + \bbl@deactivate{~}}} +% \end{macrocode} +% +% To selectively define the shorthands we have a couple of +% macros, which defines a certain combination if the first +% character has been activated as a shorthand. The second +% one is intended for a few shorthands with an alternative +% form. +% +% \begin{macrocode} +\def\es@declare#1{% + \@ifundefined{es@savecat\expandafter\string\@firstoftwo#1}% + {\@gobble}% + {\declare@shorthand{spanish}{#1}}} +\def\es@declarealt#1#2#3{% + \es@declare{#1}{#3}% + \es@declare{#2}{#3}} + +\ifes@latex\else + \def\@tabacckludge#1{\csname\string#1\endcsname} +\fi + +\@ifundefined{add@accent}{\def\add@accent#1#2{\accent#1 #2}}{} +% \end{macrocode} +% +% Instead of redefining |\'|, we redefine the internal +% macro for the OT1 encoding. +% +% \begin{macrocode} +\ifes@latex + \def\es@accent#1#2#3{% + \expandafter\@text@composite + \csname OT1\string#1\endcsname#3\@empty\@text@composite + {\bbl@allowhyphens\add@accent{#2}{#3}\bbl@allowhyphens + \setbox\@tempboxa\hbox{#3% + \global\mathchardef\accent@spacefactor\spacefactor}% + \spacefactor\accent@spacefactor}} +\else + \def\es@accent#1#2#3{% + \bbl@allowhyphens\add@accent{#2}{#3}\bbl@allowhyphens + \spacefactor\sfcode`#3 } +\fi + +\addto\shorthandsspanish{\languageshorthands{spanish}}% +\es@ifoption{noshorthands}{}{\es@set@shorthand{"}} +% \end{macrocode} +% +% We override the default |"| of babel, intended for german. +% +% \begin{macrocode} +\def\es@umlaut#1{% + \bbl@allowhyphens\add@accent{127}#1\bbl@allowhyphens + \spacefactor\sfcode`#1 } + +\addto\shorthandsspanish{% + \babel@save\bbl@umlauta + \let\bbl@umlauta\es@umlaut} +\let\noshorthandsspanish\relax + +\ifes@latex +\addto\shorthandsspanish{% + \expandafter\es@sdef\csname OT1\string\~\endcsname{\es@accent\~{126}}% + \expandafter\es@sdef\csname OT1\string\'\endcsname{\es@accent\'{19}}} +\else +\addto\shorthandsspanish{% + \es@sdef\~{\es@accent\~{126}}% + \es@sdef\'#1{\if#1i\es@accent\'{19}\i\else\es@accent\'{19}{#1}\fi}} +\fi + +\def\es@sptext@r#1#2{\es@sptext{#1#2}} +\es@declare{"a}{\sptext{a}} +\es@declare{"A}{\sptext{A}} +\es@declare{"o}{\sptext{o}} +\es@declare{"O}{\sptext{O}} +\es@declare{"e}{\protect\es@sptext@r{e}} +\es@declare{"E}{\protect\es@sptext@r{E}} +\es@declare{"u}{\"u} +\es@declare{"U}{\"U} +\es@declare{"i}{\"{\i}} +\es@declare{"I}{\"I} +\es@declare{"c}{\c{c}} +\es@declare{"C}{\c{C}} +\es@declare{"<}{\guillemotleft{}} +\es@declare{">}{\guillemotright{}} +\def\es@chf{\char\hyphenchar\font} +\es@declare{"-}{\bbl@allowhyphens\-\bbl@allowhyphens} +\es@declare{"=}{\bbl@allowhyphens\es@chf\hskip\z@skip} +\es@declare{"~} + {\bbl@allowhyphens + \discretionary{\es@chf}{\es@chf}{\es@chf}% + \bbl@allowhyphens} +\es@declare{"r} + {\bbl@allowhyphens + \discretionary{\es@chf}{}{r}% + \bbl@allowhyphens} +\es@declare{"R} + {\bbl@allowhyphens + \discretionary{\es@chf}{}{R}% + \bbl@allowhyphens} +\es@declare{"y} + {\@ifundefined{scalebox}% + {\ensuremath{\tau}}% + {\raisebox{1ex}{\scalebox{-1}{\resizebox{.45em}{1ex}{2}}}}} +\es@declare{""}{\hskip\z@skip} +\es@declare{"/} + {\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} +\es@declare{"?} + {\setbox\z@\hbox{?`}% + \leavevmode\raise\dp\z@\box\z@} +\es@declare{"!} + {\setbox\z@\hbox{!`}% + \leavevmode\raise\dp\z@\box\z@} + +\def\spanishdecimal#1{\def\es@decimal{{#1}}} +\def\decimalcomma{\spanishdecimal{,}} +\def\decimalpoint{\spanishdecimal{.}} +\decimalcomma +\es@ifoption{nodecimaldot}{} + {\AtBeginDocument{\bgroup\@fileswfalse}% + \es@set@shorthand{.}% + \AtBeginDocument{\egroup}% + \@namedef{normal@char\string.}{% + \@ifnextchar\egroup + {\mathchar\es@period@code\relax}% + {\csname active@char\string.\endcsname}}% + \declare@shorthand{system}{.}{\mathchar\es@period@code\relax}% + \addto\shorthandsspanish{% + \mathchardef\es@period@code\the\mathcode`\.% + \babel@savevariable{\mathcode`\.}% + \mathcode`\.="8000 % + \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 + \expandafter\let\csname spanish@sh@\string~@N@\endcsname\relax} +\es@ifoption{tilden} + {\es@declare{~n}{\~n}% + \es@declare{~N}{\~N}} + {\let\deactivatetilden\relax} +\es@declarealt{~-}{"+}{% + \leavevmode + \bgroup + \let\@sptoken\es@dashes % Changes \@ifnextchar behaviour + \@ifnextchar-% + {\es@dashes}% + {\hbox{\es@chf}\egroup}} +\def\es@dashes-{% + \@ifnextchar-% + {\bbl@allowhyphens\hbox{---}\bbl@allowhyphens\egroup\@gobble}% + {\bbl@allowhyphens\hbox{--}\bbl@allowhyphens\egroup}} + +\es@ifoption{noquoting}% + {\let\es@quoting\relax + \let\activatequoting\relax + \let\deactivatequoting\relax} + {\@ifundefined{XML@catcodes}% + {\es@set@shorthand{<}% + \es@set@shorthand{>}% + \declare@shorthand{system}{<}{\csname normal@char\string<\endcsname}% + \declare@shorthand{system}{>}{\csname normal@char\string>\endcsname}% + \addto\es@restorelist{\es@quoting}% + \addto\es@select{\es@quoting}% + \ifes@latex + \AtBeginDocument{% + \es@quoting + \if@filesw + \immediate\write\@mainaux{\string\@nameuse{es@quoting}}% + \fi}% + \fi + \def\activatequoting{% + \shorthandon{<>}% + \let\es@quoting\activatequoting}% + \def\deactivatequoting{% + \shorthandoff{<>}% + \let\es@quoting\deactivatequoting}}{}} + +\es@declarealt{<<}{"`}{\begin{quoting}} +\es@declarealt{>>}{"'}{\end{quoting}} +% \end{macrocode} +% +% Acute accent shorthands are stored in a macro. If |activeacute| +% was set as an option it's executed. If not is not deleted for a +% possible later use in the |cfg| file. In non \LaTeXe{} formats +% it's always executed. +% +% \changes{spanish~5.0e}{2008/07/06}{Two acutes in a row should be +% turned into a double right quote} +% \changes{spanish~5.0g}{2008/07/20}{Fixed bad kerning before two +% acutes} +% +% \begin{macrocode} +\begingroup +\catcode`\'=12 +\gdef\es@activeacute{% + \es@set@shorthand{'}% + \def\es@a##1{\es@declare{'##1}{\@tabacckludge'##1}}% + \es@a a\es@a e\es@a i\es@a o\es@a u% + \es@a A\es@a E\es@a I\es@a O\es@a U% + \es@declare{'n}{\~n}% + \es@declare{'N}{\~N}% + \es@declare{''}{''}% +% \end{macrocode} +% +% But \textsf{spanish} allows two category codes for |'|, +% so both should be taken into account in \cs{bbl@pr@m@s}. +% +% \begin{macrocode} + \let\es@pr@m@s\bbl@pr@m@s + \def\bbl@pr@m@s{% + \ifx'\@let@token + \bbl@afterelse + \pr@@@s + \else + \bbl@afterfi + \es@pr@m@s + \fi}% + \let\es@activeacute\relax} +\endgroup + +\ifes@latex + \@ifpackagewith{babel}{activeacute}{\es@activeacute}{} +\else + \es@activeacute +\fi +% \end{macrocode} +% +% And the customization. By default these macros only +% store the values and do nothing. +% +% \begin{macrocode} +\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}}} + +\ifes@latex +\es@enumerate{1.}{a)}{1)}{a$'$} +\def\spanishdashitems{\es@itemize{---}{---}{---}{---}} +\def\spanishsymbitems{% + \es@itemize + {\leavevmode\hbox to 1.2ex + {\hss\vrule height .9ex width .7ex depth -.2ex\hss}}% + {\textbullet}% + {$\m@th\circ$}% + {$\m@th\diamond$}} +\def\spanishsignitems{% + \es@itemize{\textbullet}% + {$\m@th\circ$}% + {$\m@th\diamond$}% + {$\m@th\triangleright$}} +\spanishsymbitems +\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}} +\def\es@guillemot#1#2{% + \ifmmode#1% + \else + \save@sf@q{\penalty\@M + \leavevmode\hbox{\usefont{U}{lasy}{m}{n}% + \char#2 \kern-0.19em\char#2 }}% + \fi} +\def\layoutspanish{% + \let\layoutspanish\@empty + \DeclareTextCommand{\guillemotleft}{OT1}{\es@guillemot\ll{40}}% + \DeclareTextCommand{\guillemotright}{OT1}{\es@guillemot\gg{41}}% + \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}} + +\es@optlayout{noenumerate}{% + \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\p@enumii{\theenumi}% + \def\p@enumiii{\p@enumii\theenumii}% + \def\p@enumiv{\p@enumiii\theenumiii}% + \expandafter\es@enumerate\es@enum} +\es@optlayout{noitemize}{% + \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@itemize\es@item} +\let\esromanindex\@secondoftwo +\es@ifoption{ucroman} + {\def\es@romandef{% + \def\esromanindex##1##2{##1{\uppercase{##2}}}% + \def\@roman{\@Roman}}} + {\def\es@romandef{% + \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}}} +\es@optlayout{lcroman}{\es@romandef} +\newcommand\spanishlcroman{\def\@roman##1{\romannumeral##1}} +\newcommand\spanishucroman{\def\@roman{\@Roman}} +\newcommand\spanishscroman{\def\@roman##1{\es@roman{\romannumeral##1}}} +\es@optlayout{noindentfirst}{% + \let\@afterindentfalse\@afterindenttrue + \@afterindenttrue} +\es@optlayout{nosectiondot}{% + \def\@seccntformat#1{\csname the#1\endcsname.\quad}% + \def\numberline#1{\hb@xt@\@tempdima{#1\if&\else.\fi\hfil}}} +\es@ifoption{nolayout}{\let\layoutspanish\relax}{} +\es@ifoption{sloppy}{\let\textspanish\relax\let\mathspanish\relax}{} +\es@ifoption{delayed}{}{\def\es@layoutspanish{\layoutspanish}} +\es@ifoption{preindex}{\AtEndOfPackage{\RequirePackage{romanidx}}}{} +% \end{macrocode} +% +% We need to execute the following code when babel has been +% run, in order to see if |spanish| is the main language. +% +% \begin{macrocode} +\AtEndOfPackage{% +\let\es@activeacute\@undefined +\def\bbl@tempa{spanish}% +\ifx\bbl@main@language\bbl@tempa + \@nameuse{es@layoutspanish}% + \addto\es@select{% + \@ifstar{\PackageError{spanish}% + {Old syntax--use es-nolayout}% + {If you don't want changes in layout\MessageBreak + use the es-nolayout package option}}% + {}}% + \AtBeginDocument{\layoutspanish}% +\fi +\selectspanish} +\fi +% \end{macrocode} +% +% After restoring the catcode of |~| and setting the minimal +% values for hyphenation, the |.ldf| is finished. +% +% \begin{macrocode} +\es@savedcatcodes +\providehyphenmins{\CurrentOption}{\tw@\tw@} +\ifes@latex\else + \es@select +\fi +\ldf@finish{spanish} +\csname activatequoting\endcsname +%</code> +% \end{macrocode} +% That's all in the main file. +% +% The |spanish| option writes a macro in the page field of +% \textit{MakeIndex} in entries with small caps number, and they +% are rejected. This program is a preprocessor which moves this +% macro to the entry field. It can be called from the main +% document as a package or with the package option |es-preindex|. +% +% \begin{macrocode} +%<*indexes> +\makeatletter + +\@ifundefined{es@idxfile} + {\def\spanishindexchars#1#2#3{% + \edef\es@encap{`\expandafter\noexpand\csname\string#1\endcsname}% + \edef\es@openrange{`\expandafter\noexpand\csname\string#2\endcsname}% + \edef\es@closerange{`\expandafter\noexpand\csname\string#3\endcsname}}% + \spanishindexchars{|}{(}{)}% + \ifx\documentclass\@twoclasseserror + \edef\es@idxfile{\jobname}% + \AtEndDocument{% + \addto\@defaultsubs{% + \immediate\closeout\@indexfile + \input{romanidx.sty}}}% + \expandafter\endinput + \fi}{} + +\newcount\es@converted +\newcount\es@processed + +\def\es@split@file#1.#2\@@{#1} +\def\es@split@ext#1.#2\@@{#2} + +\@ifundefined{es@idxfile} + {\typein[\answer]{^^JArchivo que convertir^^J% + (extension por omision .idx):}} + {\let\answer\es@idxfile} + +\@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 + +\@ifundefined{es@idxfile} + {\typein[\answer]{^^JArchivo de destino^^J% + (archivo por omision: \es@input@file.eix,^^J% + extension por omision .eix):}} + {\let\answer\es@idxfile} +\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 + +\@ifundefined{es@idxfile} + {\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)}} + {\def\answer{n}} + +\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@scroman#1{#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@scroman}{#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 convertido nada. Se puede generar} + \typeout{el .ind directamente de \es@input@file.\es@input@ext} +\fi +\typeout{*****************} + +\@ifundefined{es@sdef}{\@@end}{} + +\endinput +%</indexes> +% \end{macrocode} +% +% \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 \~} +%% +\endinput + + + + + diff --git a/Master/texmf-dist/source/generic/babel-spanish/spanish.ins b/Master/texmf-dist/source/generic/babel-spanish/spanish.ins new file mode 100644 index 00000000000..d643bded1b1 --- /dev/null +++ b/Master/texmf-dist/source/generic/babel-spanish/spanish.ins @@ -0,0 +1,150 @@ +%% +%% This file will generate fast loadable files and documentation +%% driver files from the doc files in this package when run through +%% LaTeX or TeX. +%% +%% 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. +%% -------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2003/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainer of this work is Johannes Braams. +%% +%% The list of all files belonging to the LaTeX base distribution is +%% given in the file `manifest.bbl. See also `legal.bbl' for additional +%% information. +%% +%% The list of derived (unpacked) files belonging to the distribution +%% and covered by LPPL is defined by the unpacking scripts (with +%% extension .ins) which are part of the distribution. +%% +%% --------------- start of docstrip commands ------------------ +%% +\def\batchfile{spanish.ins} +\def\filedate{2007/02/21} +\input docstrip.tex + +{\ifx\generate\undefined + \Msg{**********************************************} + \Msg{*} + \Msg{* This installation requires docstrip} + \Msg{* version 2.3c or later.} + \Msg{*} + \Msg{* An older version of docstrip has been input} + \Msg{*} + \Msg{**********************************************} + \errhelp{Move or rename old docstrip.tex.} + \errmessage{Old docstrip in input path} + \batchmode + \csname @@end\endcsname +\fi} + +\declarepreamble\mainpreamble +This is a generated file. + +Copyright 1989-2011 Johannes L. Braams and any individual authors +listed elsewhere in this file. All rights reserved. + +This file was generated from file(s) of the Babel system. +--------------------------------------------------------- + +It may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +of this license or (at your option) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX +version 2003/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainer of this work is Johannes Braams. + +This file may only be distributed together with a copy of the Babel +system. You may however distribute the Babel system without +such generated files. + +The list of all files belonging to the Babel distribution is +given in the file `manifest.bbl'. See also `legal.bbl for additional +information. + +The list of derived (unpacked) files belonging to the distribution +and covered by LPPL is defined by the unpacking scripts (with +extension .ins) which are part of the distribution. +\endpreamble + +\declarepreamble\fdpreamble +This is a generated file. + +Copyright 1989-2011 Johannes L. Braams and any individual authors +listed elsewhere in this file. All rights reserved. + +This file was generated from file(s) of the Babel system. +--------------------------------------------------------- + +It may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +of this license or (at your option) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX +version 2003/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainer of this work is Johannes Braams. + +This file may only be distributed together with a copy of the Babel +system. You may however distribute the Babel system without +such generated files. + +The list of all files belonging to the Babel distribution is +given in the file `manifest.bbl'. See also `legal.bbl for additional +information. + +In particular, permission is granted to customize the declarations in +this file to serve the needs of your installation. + +However, NO PERMISSION is granted to distribute a modified version +of this file under its original name. + +\endpreamble + +\keepsilent + +\usedir{tex/generic/babel} + +\keepsilent + +\usepreamble\mainpreamble +\generate{\file{spanish.ldf}{\from{spanish.dtx}{code}}% + \file{romanidx.sty}{\from{spanish.dtx}{indexes}}} +\usepreamble\fdpreamble + +\ifToplevel{ +\Msg{***********************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* \space\space All *.def, *.fd, *.ldf, *.sty} +\Msg{*} +\Msg{* To produce the documentation run the files ending with} +\Msg{* '.dtx' and `.fdd' through LaTeX.} +\Msg{*} +\Msg{* Happy TeXing} +\Msg{***********************************************************} +} + +\endinput |