Typo
[latex2e.git] / latex2e-20150101 / required / babel / galician.dtx
blob3e7e5c4d999c7671dc689bd51706ab534c6298f2
1 % \iffalse meta-comment
3 % Copyright 1989-2008 Johannes L. Braams and any individual authors
4 % listed elsewhere in this file.  All rights reserved.
5
6 % This file is part of the Babel system.
7 % --------------------------------------
8
9 % It may be distributed and/or modified under the
10 % conditions of the LaTeX Project Public License, either version 1.3
11 % of this license or (at your option) any later version.
12 % The latest version of this license is in
13 %   http://www.latex-project.org/lppl.txt
14 % and version 1.3 or later is part of all distributions of LaTeX
15 % version 2003/12/01 or later.
16
17 % This work has the LPPL maintenance status "maintained".
18
19 % The Current Maintainer of this work is Johannes Braams.
20
21 % The list of all files belonging to the Babel system is
22 % given in the file `manifest.bbl. See also `legal.bbl' for additional
23 % information.
24
25 % The list of derived (unpacked) files belonging to the distribution
26 % and covered by LPPL is defined by the unpacking scripts (with
27 % extension .ins) which are part of the distribution.
28 % \fi
29 % \CheckSum{2264}
30 % \ProvidesFile{galician.dtx}
31 %       [2008/07/06 v4.3c Galician support from the babel system] 
32 %\iffalse
33 %% File `galician.dtx'
34 %% Babel package for LaTeX version 2e
35 %% Copyright (C) 1989 - 2008
36 %%           by Johannes Braams, TeXniek
38 %% Galcian Language Definition File
39 %% Copyright (C) 1989 - 2006
40 %%           by Manuel Carriba mcarriba at eunetcom.net
41 %%           Johannes Braams, TeXniek
42 %% Copyright (C) 2007 - 2008
43 %%           by Javier A. M\'ugica
44 %%           Johannes Braams, TeXniek
46 %% Please report errors to: Javier A. Mugica (preferably)
47 %%                          jmugica at digi21.net
48 %%                          J.L. Braams
49 %%                          babel at braams.xs4all.nl
51 %    This file is part of the babel system, it provides the source
52 %    code for the Galician language definition file.
53 %    The original version of the file spanish.dtx was written by Javier Bezos.
55 %<*filedriver>
56 \documentclass[galician,a4paper]{ltxdoc}
57 \usepackage[activeacute]{babel}
58 %Small suport for the input encoding
59 \catcode`\á=\active  \defá{\'a}
60 \catcode`\é=\active  \defé{\'e}
61 \catcode`\í=\active  \defí{\'\i}
62 \catcode`\ó=\active  \defó{\'o}
63 \catcode`\ú=\active  \defú{\'u}
64 \catcode`\ñ=\active  \defñ{\~n}
65 %end
67 %\usepackage{ps}
69 \newcommand*\TeXhax{\TeX hax}
70 \newcommand*\babel{\textsf{babel}}
71 \newcommand*\langvar{$\langle \it lang \rangle$}
72 \newcommand*\note[1]{}
73 \newcommand*\Lopt[1]{\textsf{#1}}
74 \newcommand*\file[1]{\texttt{#1}}
76 \setlength{\arrayrulewidth}{2\arrayrulewidth}
77 \newcommand\toprule{\cline{1-2}\\[-2ex]}
78 \newcommand\botrule{\\[.6ex]\cline{1-2}}
79 \newcommand\hmk{$\string|$}
81 \newcommand\New[1]{%
82   \leavevmode\marginpar{\raggedleft\sffamily Novo en #1}}
84 \newcommand\nm[1]{\unskip\,$^{#1}$}
85 \newcommand\nt[1]{\quad$^{#1}$\,\ignorespaces}
87 \makeatletter
88   \renewcommand\@biblabel{}
89 \makeatother
91 \newcommand\DOT[1]{\msc{DOT},~#1}
92 \newcommand\DTL[1]{\msc{DTL},~#1}
93 \newcommand\MEA[1]{\msc{MEA},~#1}
95 \raggedright
96 \addtolength{\oddsidemargin}{-2pc}
97 \addtolength{\textwidth}{2pc}
98 \setlength{\parindent}{1em}
100 \OnlyDescription
101 \begin{document}
102    \DocInput{galician.dtx}
103 \end{document}
104 %</filedriver>
105 %\fi
107 % \begingroup
109 % \catcode`\{=11
110 % \catcode`\[=1
112 % \gdef\ignoringuser[^^A
113 %   \bgroup
114 %   \let\end{userdtx\fi
115 %   \let\end{userdrv\fi
116 %   \aftergroup\endgroup
117 %   \catcode`\{=11
118 %   \catcode`f=14 ^^A kills \if... and \fi
119 %   \catcode`l=14 ^^A kills \else
120 %   \catcode`o=14 ^^A kills \or
121 %   \catcode`p=14 ^^A kills \repeat
122 %   \iffalse}
123 %   
124 % \endgroup
126 % ^^A\def\langdeffile{}
127 % \newenvironment{userdtx}
128 %   {\ifx\langdeffile\undefined
129 %    \else\expandafter\ignoringuser
130 %    \fi}{}
132 % \newenvironment{userdrv}
133 %   {\ifx\langdeffile\undefined
134 %    \expandafter\ignoringuser
135 %    \else\fi}{}
137 % \begin{userdtx}
138 %^^A ======= Beginning of text as typeset by galician.dtx =========
140 % \title{Estilo \textsf{galician} para o sistema \babel\\[10pt]
141 %       \large Versión 4.3, de 29 de xaneiro do 2007}
143 % \author{Javier Múgica\footnote{O autor orixinal foi Javier Bezos.
144 %   Foi traduciro por min do castelán en xaneiro do 2007, e desde 
145 %   entón e mantido e actualizado por min.}}
147 % \date{} ^^A@#
149 % \maketitle
151 % {\small\tableofcontents}
153 %% \section{\textsf{galician} coma lingua principal}
155 % En \babel{} considérase que a última lingua citada en |\usepackage| e |\documentclass|,
156 % por esta orde, é a lingua principal. Se a lingua principal é |galician|, actívase o grupo
157 % |\layoutgalician| que adapta varios elementos ós usos tipogr'aficos galegos do seguinte modo:
159 % \begin{itemize}
161 % \item[$\diamond$] |enumerate| e |itemize|\vadjust{\nobreak}\\[1ex]
163 % O primeiro usa a seguinte secuencia:\vadjust{\nobreak}\\
164 % \quad 1.\\
165 % \qquad \emph{a})\\
166 % \quad\qquad 1)\\
167 % \qquad\qquad \emph{a$'$})\\
168 % O segundo a seguinte:\\
169 % \quad\leavevmode\hbox to 1.2ex
170 %     {\hss\vrule height .95ex width .8ex depth -.15ex\hss}\\
171 % \qquad\textbullet\\
172 % \quad\qquad $\circ$\\
173 % \qquad\qquad $\diamond$
175 % Dúas órdenes permiten outros estilos en |itemize|: con |\galiciandashitems| cámbiase a raias en tódo-los niveis
176 % e con |\galiciansignitems|, a \textbullet{} $\circ$
177 % $\diamond$ $\triangleright$.
179 % \item[$\diamond$] |\alph| e |\Alph|\\[1ex]
181 % Inclúen o e'ne, pero non k, j, w nin y.
183 % \item[$\diamond$] |\fnsymbol|\\[1ex]
185 % Empréganse un, dous, tres... asteriscos (*, **, ***, etc.),
186 % en lugar da sucesi'on angloamericana de cruces, barras,
187 % etc.\footnote{\DOT{162}.}
189 % \item[$\diamond$] |\guillemotleft| e |\guillemotright|\\[1ex]
191 % As comiñas latinas para |OT1| son menos angulosas e xenéranse cunhas puntas de frecha |lasy|.
193 % \item[$\diamond$] |\roman|\\[1ex]
195 % Os números romanos en minúscula son propios das obras inglesas e non se empregan no continente.
196 % Por iso se redefine |\roman| para que produza versalitas.
198 % \begin{quote}\small
199 % \textbf{Nota.} MakeIndex non pode entender a forma na que
200 % |\roman| escribe o n'umero de p'axina, polo que
201 % elimina as liñas afectadas. Por iso o aquivo |.idx|
202 % ten que ser convertido antes de ser procesado con MakeIndex.
203 % Con este paquete proporciónase a utilidade |glromidx.tex| que se
204 % encarga diso. Simplemente componse ese arquivo con \LaTeX{}
205 % e a continuaci'on respóndese ás preguntas que se formulan.
206 % Este proceso non é necesario se non se introduciu ningunha
207 % entrada de 'indice en p'axinas numeradas con |\roman| (o que ser'a
208 % o máis normal). Se un s'imbolo propio de \emph{MakeIndex} xenerara
209 % problemas, debe encerrarse entre chaves: \verb={"|}=.
210 % \end{quote}
212 % \item[$\diamond$] |\section|, |\subsection|, etc.\\[1ex]
214 % Os n'umeros nos t'itulos est'an seguidos dun punto tanto no texto coma
215 % no 'indice. Adem'ais, o primeiro parágrafo tra-lo título non elimina a sangr'ia
216 % (de novo, un costume angloamericano).
218 % \end{itemize}
220 % Estes cambios funcionan coas clases est'andar ~---con otras
221 % tal vez algún deles non teña efecto--- e persisten durante
222 % todo o documento (non se poden desactivar). Ningún deles é
223 % necesario para compoñer o documento, aínda que naturalmente
224 % o resultado ser'a distinto.
226 % \begin{itemize}
228 % \item[$\diamond$] |\selectgalician*|\vadjust{\nobreak}\\[1ex]
230 % Se non se desexan estes cambios, chega con usar no
231 % pre'ambulo |\selectgalician*| (con asterisco) ou <<borralos>> con:
232 %\begin{verbatim}
233 % \let\layoutgalician\relax
234 %\end{verbatim}
236 % \end{itemize}
238 % \section{Descripci'on}
240 % \subsection{Traduccións}
242 % Certas ordes defínense para proporcionar traduccións
243 % ó galego dalgúns términos, tal e como se describe no cadro 1.
245 % \begin{table}
246 % \center\small
247 % \caption{Traduccións}
248 % \vspace{1.5ex}
249 % \begin{tabular}{l@{\hspace{3em}}l}
250 % \toprule
251 % |\refname|        & Referencias\\
252 % |\abstractname|   & Resumo\\
253 % |\bibname|        & Bibliograf'ia\\
254 % |\chaptername|    & Cap'itulo\\
255 % |\appendixname|   & Ap'endice\\
256 % |\contentsname|   & 'Indice xeral\nm{a}\\
257 % |\listfigurename| & 'Indice de figuras\\
258 % |\listtablename|  & 'Indice de cadros\\
259 % |\indexname|      & 'Indice alfab'etico\\
260 % |\figurename|     & Figura\\
261 % |\tablename|      & Cadro\\
262 % |\partname|       & Parte\\
263 % |\enclname|       & Adxunto\\
264 % |\ccname|         & Copia a\\
265 % |\headtoname|     & A\\
266 % |\pagename|       & P'axina\\
267 % |\seename|        & v'exase\\
268 % |\alsoname|       & v'exase tam'en\\
269 % |\proofname|      & Demostraci'on
270 % \botrule
271 % \end{tabular}
273 % \vspace{1.5ex}
275 % \begin{minipage}{6cm}\footnotesize
276 % \nt{a} Pero s'olo <<'Indice>> en \textsf{article}.
277 % \end{minipage}
278 % \end{table}
280 %  Non existe para o índice unha terminolox'ia unificada. Tal vez
281 %  \emph{'Indice xeral} é o que m'ais se usa, as'i que a
282 %  iso me ateño salvo en |article|, onde se compón coma secci'on
283 %  e polo tanto resulta algo ostentoso.\footnote{\'O contrario que en
284 %  ingl'es, en galego o 'indice por antonomasia é o xeral.}
286 %  Para o 'indice alfab'etico tense proposto \emph{'Indice de materias}
287 %  ou \emph{'Indice anal'itico}, aínda que estes 'indices non soamente
288 %  adoitan incluír materias, mais tamén nomes; \emph{'Indice alfab'etico}
289 %  é m'ais preciso.\footnote{\'E a usada en \DOT{300} as'i coma na meirande
290 %  parte dos libros que consultei ó azar nunha biblioteca. (J.B.)}
292 %  En canto ós de cadros e figuras, tam'en é posible dicir
293 %  \emph{lista}, pero paréceme preferible \emph{'indice}, que
294 %  implica a correspondencia coas p'axinas.
296 %  \emph{Table} debe traducirse por \emph{cadro}, xa que \emph{táboa}
297 %  é un \emph{falso amigo};\,\footnote{V'exanse as definicións
298 %  do \msc{DGII} e \DTL{67 ss.}} esa é a pr'actica tradicional.
299 %  (Por exemplo, <<cadro de estados medievais>> frente a <<táboa de logaritmos>>.)
301 %  As traducción escríbense con min'usculas, salvo a inicial. Evítase
302 %  o anglicismo de comenzar con mai'usculas os substantivos.\footnote{\DOT{197}.}
304 %  A orde |\today| dá a data actual. Con |\galiciandatedo| e |\galiciandatede|
305 %  óptase por \textit{do} (predeterminado) ou \textit{de}.
307 % \subsection{Abreviacións}
309 %  (O que en \babel{} denomínase `shorthands'.) A lista completa
310 %  pódese atopar no cadro~2. Nos seguintes apartados daranse máis
311 %  detalles sobre algunhas delas.
313 % \begin{table}[!t]
314 % \center\small
315 % \caption{Abreviacións}
316 % \vspace{1.5ex}
317 % \begin{tabular}{l@{\hspace{3em}}l}
318 % \toprule
319 % |'a 'e 'i 'o 'u| & 'a 'e 'i 'o 'u\\
320 % |'A 'E 'I 'O 'U| & 'A 'E 'I 'O 'U\\
321 % |'n 'N|          & 'n 'N\nm{a}\\
322 % |"u "U|          & "u "U\\
323 % |"i "I|          & "i "I\\
324 % |"a "A "o "O|    & Ordinais: 1"a, 1"A, 1"o, 1"O\\
325 % |"rr "RR|        & rr, pero -r cando se divide\\
326 % |"-|             & Coma |\-|, pero permite m'ais divisións\\
327 % |"=|             & Coma |-|, pero permite máis divisións\nm{b}\\
328 % |"~|             & Gui'on estil'istico\nm{c}\\
329 % |~- ~-- ~---|    & Coma |-|, |--| e |---|, pero sen divisi'on\\
330 % |""|             & Permite máis divisións antes e despois\nm{d}\\
331 % |"/|             & Unha barra algo m'ais baixa\\
332 % \verb+"|+        & Divide un logotipo\nm{e}\\
333 % |<< >>|          & << >>\\
334 % |"< ">|          & |\begin{quoting}| |\end{quoting}|\nm{f}\\
335 % |?` !`|          & ?` !`\nm{g}\\
336 % |"? "!|          & "? "! aliñados coa liña base\nm{h}
337 % \botrule
338 % \end{tabular}
340 % \vspace{1.5ex}
342 % \begin{minipage}{11cm}
343 % \footnotesize
344 % \nt{a} A forma |~n| debe considerarse en extinci'on.
345 % \nt{b} |"=| ven a ser o mesmo que |""-""|.
346 % \nt{c} Esta abreviaci'on ten un uso distinto noutras
347 % linguas. \nt{d} Coma en <<entrada/saída>>.
348 % \nt{e} Carece de uso en galego. \nt{f} V'exase sec.~2.7. 
349 % \nt{g} Non proporcionadas por este paquete, mais por cada tipo;
350 % figuran aqu'i coma simple recordatorio. \nt{h} 'Utiles en
351 % r'otulos en mai'usculas.
352 % \end{minipage}
353 % \end{table}
355 % Para poder usar ap'ostrofos coma abreviacións de acentos
356 % é necesaria a opci'on |activeacute| en |\usepackage|.
357 % Pode cambiarse este comportamento coa orde |\gl@acuteactive|
358 % no arquivo de configuraci'on |galician.cfg|; nese caso os 
359 % ap'ostrofos actívanse sempre.
361 % Os caracteres usados coma abreviacións compórtanse coma
362 % outras ordes de \TeX{} e polo tanto faise caso omiso
363 % dos espacios que poidan seguir: \verb*|' a| é o mesmo que |'a|.
364 % Eso tam'en implica que tras eses caracteres non pode vir unha
365 % chave de peche e que deber'a escribirse |{... '{}}| en lugar 
366 % de |{... '}|; en modo matem'atico non hai problema e |$x^{a'}$|
367 % ($x^{a'}$) é v'alido.
369 % \begin{itemize}
371 % \item[$\diamond$]
372 % |\deactivatetilden|\\[1ex]
374 % Esta orde desactiva as abreviacións |~n| e |~N| debido ós problemas
375 % que presentan. Pode usarse no arquivo de configuraci'on (v'exase
376 % m'ais abaixo).
378 % % \item[$\diamond$]
379 % |\galiciandeactivate{<caracteres>}|\\[1ex]
381 % Permite desactivar as abreviacións correspondentes ós caracteres dados.
382 % Para evitar entrar en conflicto con outras linguas, ó sair de |galician|
383 % reactívanse,\footnote{O punto para os decimais non é estrictamente
384 % unha abreviaci'on e non se reactiva.} polo que se se desexa que 
385 % persista cómpre engadi-la orde a |\shorthandsgalician| con |\addto|.
386 % A orde |\renewcommand\shorthandsgalician{}| é unha variante optimizada de
387 %\begin{verbatim}
388 % \addto\shorthandsgalician{\galiciandeactivate{.'"~<>}}
389 %\end{verbatim}
390 % e é o recomendado se se desea prescindir do mecanismo de abreviacións.
391 % \end{itemize}
393 % \subsection{Coma decimal}
395 % En \textsf{galician} tómase partido, coma en castelán, por separar
396 % a parte enteira e a parte decimal mediante unha coma. O punto é
397 % tradicional en inglés, non en galego, e ademáis chegouse a unha
398 % normalización internacional pola que os milleiros sepáranse por
399 % un espacio fino e os decimais con coma.
401 % Dado que \TeX\ usa a coma coma separador en intervalos ou expresións
402 % similares, o que engade un espacio fino, \textsf{galician} converte 
403 % todo punto en modo matem'atico nunha coma sempre que estea seguido
404 % dunha cifra, pero non notras circunstancias:
405 % \begin{quote}\small\begin{tabbing}
406 % |$1\,234.567\,890$|     \quad \=  $1\,234.567\,890$\\
407 % |$f(1,2)=12.34.$|        \> $f(1,2)=12.34.$\\
408 % |$1{.}000$|              \> $1{.}000$, mais\\
409 % |1.000|                  \> 1.000, pois non é modo matem'atico.
410 % \end{tabbing}\end{quote}
412 % As ordes |\decimalcomma| e |\decimalpoint| establecen se se usa
413 % unha coma, que é o valor predeterminado, ou un punto, mentras que
414 % |\galiciandecimal{<math>}| permite darlle unha definici'on
415 % arbitraria.\footnote{Internamente o mecanismo é o dunha abreviaci'on,
416 % e pódese desactivar coma as outras.}
418 % \subsection{Divisi'on de palabras}
420 % \textsf{Galician} comproba a codificaci'on no momento no que se
421 % emprega un acento: se a codificaci'on é |OT1| tómanse medidas para 
422 % facilitar a divisi'on, que pese a todo nunca ser'a perfecta, mentres 
423 % que con |T1| accédese directamente ó car'acter correspondente.
425 % Para matizar a divisi'on de palabras hai catro posibilidades, dúas
426 % delas co m'etodo de abreviacións:
427 % \begin{itemize}
428 % \item a orde |\-| é un gui'on opcional que non permite m'ais 
429 % divisións (coma en \TeX),
431 % \item |"-| é similar pero permite m'ais divisións,
433 % \item un |-| é un gui'on que non permite m'ais divisións nin
434 % antes nin despois (coma en \TeX), e
436 % \item |"=| é o equivalente que s'i as permite,\footnote{Non
437 % é unha boa idea usar esta orde, pero en medidas moi curtas
438 % puede resultar necesario.}
440 % \end{itemize}
441 % Por exemplo (coas posibles divisións marcadas con \hmk):
442 % \begin{quote}\small\begin{tabbing}
443 % |Zaragoza-Barcelona|\qquad \= Zaragoza-\hmk Barcelona\\
444 % |Zaragoza"=Barcelona| \>
445 %    Za\hmk ra\hmk go\hmk za-\hmk Bar\hmk ce\hmk lo\hmk na\\
446 % |semi\-aperto| \> semi\hmk aperto\\
447 % |semi"-aperto| \> se\hmk mi\hmk aper\hmk to.\footnotemark
448 % \end{tabbing}\footnotetext{Xusto antes e despóis de
449 % {\ttfamily\string"\string-} e {\ttfamily\string"\string=}
450 % aplícanse os correspondentes valores de
451 % {\ttfamily\string\...hyphenmin}, o que implica que a
452 % divis'on semia\hmk perto non é posible.
453 % Este é un comportamento correcto.}
454 % \end{quote}
456 % Adem'ais hai abreviacións que evitan divisións: |~-|, que resulta
457 % 'util para expresar unha serie de n'umeros sen que o gui'on os
458 % divida (12~-14, |12~-14|), e |~---|, que é a forma que debe usarse
459 % para abrir incisos con raias, xa que do contrario pode haber unha
460 % divisi'on entre a raia de abrir e a palabra que lle sigue:
461 % \begin{quote}\small\begin{tabbing}
462 % |Os concertos ~---ou academias--- que organiz'ou...|
463 % \end{tabbing}\end{quote}
464 % Mentras que este gui'on evita toda posible divisi'on nos elementos
465 % que une, a raia (---) e a semirraia (--) permítenas nas palabras
466 % que a precedan ou sigan.
468 % A abreviaci'on |"~| úsase cando se quere que o gui'on tam'en apareza
469 % ó comienzo da seguinte liña. Por exemplo:
470 % \begin{quote}\small\begin{tabbing}
471 % |infra"~vermello|  \quad \= in\hmk fra-ver\hmk mello, pero infra-\hmk-vermello.
472 % \end{tabbing}\end{quote}
474 % Outra abreviaci'on é |"rr| que sirve para o 'unico cambio de escritura do
475 % castelán en caso de haber divisi'on.\footnote{En galego non atopei un 
476 % pronunciamento ó respecto. A \msc{RAE} indica que ó a'nadir un prefixo 
477 % que reamta en vocal a unha palabra que comenza con \emph{r}, esta 'ultima debe 
478 % dobrarse a menos que se unan por un gui'on. Por exemplo:
479 % |extra"{}rradio| divídese en ex\hmk trarra\hmk dio, mais extra-\hmk radio.}
481 % \subsection{Ordinais}
483 % As abreviaturas sempre levan punto, salvo algunhas nas que se
484 % substitúe por unha barra (e salvo as siglas e s'imbolos, naturalmente),
485 % que precede ás letras voladitas.\footnote{\DTL{196}. V'exase tam'en \DOT{222 e 227}.}
486 % Por ello, \textsf{galician} proporciona a orde |\sptext| que facilita a
487 % creaci'on destas abreviaturas. Por exemplo: |adm\sptext{'on}|, que dá
488 % adm\sptext{'on}. Hai catro abreviacións asociadas a ordinais:
489 % |"a|, |"A|, |"o| e |"O| que equivalen a |\sptext{a}|, etc.\footnote{Moitos
490 % tipos engaden un pequeno subliñado que debe evitarse, e polo tanto non se debe
491 % escribi-los ordinais con \textsf{inputenc}.}
493 % Para axustar o tamano o mellor posible, úsase o de 'indices en curso.
494 % Esto funciona ben salvo para tama'nos moi grandes ou moi pequenos, onde
495 % os resultados son meramente aceptables. 
497 % En Plain \TeX{} execútase a orde |\sptextfont| para a letra voladita,
498 % de xeito que |{\bf\let\sptextfont\bf 1"o}| dá o resultado correcto
499 % (|\mit| se é para cursiva). Para usar un tipo novo con |\sptext| hai
500 % que definir tam'en as variantes matem'aticas con |\newfam|.
502 % \subsection{Funcións matem'aticas}
504 % En castelán, tradicionalmente formáronse as abreviacións
505 % do que en \TeX\ coñecense coma operadores a partir do nome castelán,
506 % o que implica a presencia do acento en l'im, m'ax, m'in, 'inf e m'od.
507 % Parece que isto e tamén o máis adecuado para o galego.
509 % Con |galician| pódense seguir varios criterios por medio das seguintes
510 % ordes:
511 % \begin{itemize}
512 % \item[$\diamond$] |\accentedoperators| |\unaccentedoperators|\\[1ex]
513 % Activa ou desactiva os acentos.
514 % Por omisi'on acent'uanse, coma por exemplo: $\lim_{x\to 0}(1/x)$
515 % (|$\lim_{x\to 0}(1/x)$|).
517 % \item[$\diamond$] |\spacedoperators| |\unspacedoperators|\\[1ex]
518 % Activa ou desactiva o espacio entre "<arc"> e la funci'on. Por omisi'on
519 % non se espacia.
520 % \end{itemize}
522 % O i sen punto tam'en é accesible directamente en modo matem'atico
523 % coa orde |\dotlessi|, de forma que se pode escribir |\acute{\dotlessi}|.
524 % Por exemplo, 
525 % |$V_{\mathbf{cr\acute{\dotlessi}t}}$| dá $V_{\mathbf{cr\acute{\dotlessi}t}}$.
527 % Tam'en engádense |\sen|, |\cosec|, |\arcsen|, |\tx|, |\arctx|, e |senh|,
528 % que dan as funcións respectivas. Ademáis |\sin|,\New{galician~4.3}
529 % |sinh| e |arcsin| producen os mesmos resultados que |\sen|, |\senh|
530 % e |\arcsen| respectivamente. Outras funcións trigonom'etricas
531 % atópanse almacenadas no par'ametro |\galicianoperators|,
532 % que inicialmente inclúe cotx e txh. Deste xeito pódense cambiar por
533 % outras e engadir máis, coma por exemplo:
534 %\begin{verbatim}
535 % \renewcommand{\galicianoperators}{cotan arc\,ctx tanh}
536 %\end{verbatim}
537 % (separadas con espacio). Cando se selecciona |galician| créanse
538 % ordes con eses nomes e que dan esas funcións (sempre con |\nolimits|).
539 % Adem'ais das letras sen acentuar acéptanse as ordes |\,| e |\acute|, que
540 % se pasan por alto para forma-lo nome. Por exemplo, |arc\,ctg| escribirase
541 % no documento coma |\arcctg|, |M\acute{a}x| coma |\Max| e |cr\acute{i}t|
542 % coma |\crit| (hai que usar |i| e non |\dotlessi|). A orde |\,| responde
543 % a |\|(|un|)|spacedoperators|, e |\acute| a |\|(|un|)|accentedoperators|.
545 % |\renewcommand{\galicianoperators}| haberá de estar no pre'ambulo do documento,
546 % despois de |\sepackage[galician]{babel}| e antes de |\selectgalician| ou de 
547 % |\begin{document}|.
549 % \subsection{Entrecomiñados}
551 % O entorno |quoting| entrecomiña un texto, engadindo comiñas de seguir ó
552 % comienzo de cada parágrafo ou no seu interior.\footnote{Pódese atopar unha
553 % detallada exposici'on das comiñas en \DTL{44 ss.} De alí tomouse alg'un exemplo.}
554 % Tam'en pódense empregrar as abreviacións |"<| e |">| que se limitan a chamar
555 % a |quoting|, que por ser entorno considera os seus cambios internos coma locais.
556 % (É dicir, |"< ... ">| implica |{"< ... ">}|.) As abreviacións |<<| e |>>|
557 % contin'uan dando sen m'ais os caracteres de comiñas de abrir e pechar.
559 % Por exemplo:
560 %\begin{verbatim}
561 % "<Chámanse "<comiñas de seguir"> as que son de peche, pero colócanse
562 % ó comenzo de cada parágrafo cando se transcribe un texto
563 % entrecomiñado con m'ais dun par'agrafo.
565 % No seu interior, coma de costume, úsanse as inglesas.">
566 %\end{verbatim}
567 % que ten por resultad:
568 % \begin{quotation}\small
569 % "<Chámanse "<comillas de seguir"> as que son de peche, pero colócanse
570 % ó comenzo de cada par'agrafo cando se transcribe un texto
571 % entrecomiñado con m'ais dun par'agrafo.
573 % No seu interior, coma de costume, úsanse as inglesas.">
574 % \end{quotation}
576 % Este entorno pódese redefinir. Por exemplo:
577 %\begin{verbatim}
578 % \renewenvironment{quoting}{\itshape}{}
579 %\end{verbatim}
580 % pero non implica un novo par'agrafo, xa que est'a pensado
581 % para ser usado tam'en no texto.
583 % En caso de incluír uns entornos |quoting| dentro doutros, modifícanse
584 % as comiñas dos niveis interiores, que tam'en engadense ás de seguir:
585 %\begin{verbatim}
586 % "<O di'alogo desenvolveuse desta forma:
588 % "<---Eu no fun ---grit'ou Antonio.
590 % ---Mais colaboraches ---asegur'ou Rafael">.
592 % Mais al'i ningúen se aclarou.">
593 %\end{verbatim}
595 % \begin{quotation}\small
596 % "<O di'alogo desenvolveuse desta forma:
598 % "<---Eu no fun ---grit'ou Antonio.
600 % ---Mais colaboraches ---asegur'ou Rafael">.
602 % Mais al'i ningúen se aclarou.">
603 % \end{quotation}
605 % \begin{itemize}
606 % \item[$\diamond$]
607 % |\lquoti| |\rquoti| |\lquotii| |\rquotii| |\lquotiii| 
608 % |\rquotiii|\\[1ex]
610 % Controlan as comiñas en |quoting|, segundo o nivel no que nos
611 % atopemos. |\lquoti| son as comiñas de abrir m'ais exteriores,
612 % |\lquotii| as de segundo nivel, etc., e o mesmo para as de pechar
613 % con |\rquoti|... Para as de seguir sempre se usan as de pechar.
614 % Os valores predefinidos est'an no cadro 3.
615 % \begin{table}
616 % \center\small
617 % \caption{Entrecomiñados}
618 % \vspace{1.5ex}
619 % \begin{tabular}{l@{\hspace{5em}}l}
620 % \toprule
621 % |\lquoti|   &|<<|\\
622 % |\rquoti|   &|>>|\\
623 % |\lquotii|  &|``|\\
624 % |\rquotii|  &|''|\\
625 % |\lquotiii| &|`|\\
626 % |\rquotiii| &|'|
627 % \botrule
628 % \end{tabular}
629 % \end{table}
631 % \newenvironment{dialog}
632 %   {\def\lquoti{}\begin{quoting}---\ignorespaces}
633 %   {\def\rquoti{}\end{quoting}}
635 % As comiñas de seguir tam'en empréganse en di'alogos, incluso
636 % se non as hai de abrir e pechar. Coa axuda do seguinte entorno,
637 %\begin{verbatim}
638 % \newenvironment{dialog}
639 %   {\def\lquoti{}\begin{quoting}---\ignorespaces}
640 %   {\def\rquoti{}\end{quoting}}
641 %\end{verbatim}
642 % podemos obter
643 % \begin{quotation}\small
644 % \begin{dialog}%
645 % O di'alogo desenvolveuse deste xeito:
647 % "<---Eu non fun ---grit'ou Antonio.
649 % ---Mais colaboraches ---asegur'ou Rafael">.
651 % Mais al'i ninguén se aclarou.
652 % \end{dialog}
653 % \end{quotation}
655 % \item[$\diamond$]
656 % |\activatequoting \deactivatequoting|\\[1ex]
658 % As incompatibilidades potenciais destas abreviacións son enormes.
659 % Por exemplo, en \textsf{ifthen} cancélanse as comparacións entre
660 % n'umeros;\,\footnote{E en |\string\ifnum|, etc. usado polos
661 % desenroladores nos paquetes.} tam'en resultan inoperantes |@>>>|
662 % e |@<<<| de \textsf{amstex}.\footnote{Aínda que neste caso cabe
663 % empregar os sin'onimos |@)))| e |@(((|.} Por iso, dase a posibilidade
664 % de cancelalas e reactivalas con estas ordes, aínda que se se
665 % est'a a usar con \textsf{xmltex} xa se desactivan por completo de
666 % modo autom'atico. O entorno |quoting| sempre permanece disponible.
667 % \footnote{Algúns tipos posúen as ligaduras |<{}<| e |>{}>| de
668 % forma interna para xenerar os caracteres de comiñas, polo que
669 % neles tamb'en podemos usalos siempre.}
671 % \end{itemize}
673 % \subsection{Espaciado}
675 % O espaciado en galego afástase relativamente pouco do ingl'es;
676 % Non obstante, o espacio tra-los signos de puntuaci'on debe 
677 % de ser o mesmo que o que hai entre palabras. Ou dito en
678 % t'erminos de \TeX, |\frenchspacing| est'a activo.
680 % Tam'en noutros dous sitios hai diferencias. O primero son os
681 % puntos suspensivos, para os que se redefine |\dots| e |\cdots|,\New{galician 4.3}
682 % que os dan menos espaciados, e para |\dots| no texto engádese a
683 % continuación un espacio igual que o que seguiría a un punto.
684 % Por exemplo:
685 % \begin{quote}\small\begin{tabbing}
686 % |\dots non sei se canta\dots ou chora.|\quad \dots non sei se canta\dots ou chora.\\
687 % |$f(x_1,\dots,x_n,y_1,\ldots,y_m)$|\quad $f(x_1,\dots,x_n,y_1,\ldots,y_m)$\\
688 % |$1+2+\cdots+n$|\quad $1+2+\cdots+n$
689 % \end{tabbing}\end{quote}
690 % Tam'en poder'ianse escribir os tres puntos sen m'ais... , e na
691 % pr'actica non hai diferencia. |galician| realiza as modificacións
692 % a moi baixo nivel, para que sexan compatibles cos cambios que tamén
693 % introduce |amsmath| nestes comandos.
695 % O segundo sitio é un espacio fino antes do signo |\%| (que m'ais
696 % exactamente é |\,|, logo pódese <<recuperar>> co seu oposto |\!|,
697 % se |\%| no segue a unha cifra).
699 % \subsection{Pequenas e medianas versais}
701 % |\lsc| pódese empregar para letras en versalitas. Tamén existe
702 % |\msc|,\New{galician 4.3} que selecciona un tipo lixeiramente maior.
703 % Por exemplo:
704 % \begin{quote}\small\begin{tabbing}
705 % |\lsc{DOG}, \lsc{RenFe}| \quad \= No \lsc{DOG} publicouse que \lsc{ReNFe} deber'a...\\
706 % |\msc{DOG}, \msc{ReNFe}| \quad \= No \msc{DOG} publicouse que \msc{ReNFe} deber'a...
707 % \end{tabbing}\end{quote}
708 % Tam'en pode ser 'util para alguns usos dos n'umeros romanos:
709 % \begin{quote}\small\begin{tabbing}
710 % |s'eculo \msc{XVII}| \quad \= s'eculo \msc{XVII}\\
711 % |cap'itulo \msc{II}| \quad \= cap'itulo \msc{II}.
712 % \end{tabbing}\end{quote}
714 % Para evitar que con un tipo que carece de versalitas acabe
715 % aparecendo (por substituci'on) un texto de min'usculas inténtase
716 % usar nestes casos as versais \emph{reais} dun tama'no menor.
717 % Queda simplemente aceptable, pero é mellor que nada. (\LaTeX{}
718 % tende a substituír versalitas por versalitas, pero hai
719 % excepcións, como coas negritas.)
721 % \subsection{Miscel'anea}
723 % \begin{itemize}
724 % \item[$\bullet$] Pódese escribir |\'i| para |\'{\i}|.
726 % \item[$\bullet$] Hai unha abreviaci'on adicional como utilidade
727 % tipogr'afica m'ais que especificamente galega. En certos
728 % tipos, coma Times, o extremo inferior da barra est'a na liña
729 % de base e expresións coma <<am/pm>> resultan pouco est'eticas.
730 % |"/| produce unha barra que, de ser necesario, báixase lexeiramente.
731 % Computer Modern ten unha barra ben dese'nada e non é posible
732 % ilustrar aqu'i este punto, pero en todo caso escribir'iase |am"/pm|.^^A
733 % \footnote{En \MEA{141} recórrese a unha soluci'on que é a 'unica
734 % sinxela en programas de maquetaci'on: usar un corpo menor. Pero
735 % con \TeX{} é moito m'ais doado automatiza-las tareas.}
737 % \end{itemize}
739 % \section{Selecci'on da lingua}
741 % Por omisi'on, \babel{} deixa <<dormidas>> as linguas ata que se
742 % chega a |\begin{document}| co fin de evitar conflictos polas
743 % abreviacións; a cambio, prívase da posibilidade de usar as linguas
744 % no pre'ambulo en ordes coma |\savebox|, |\title|, |\newtheorem|, etc.
746 % A orde |\selectgalician| permite activar |galician| coas súas
747 % extensións e abreviacións antes de |\begin{document}|.\footnote{^^A
748 % Algúns detalles, que apenas afectan a \texttt{galician}, seguen sen
749 % activarse ata o comenzo do documento.}
750 % Deste xeito, poder'iamos dicir
751 %\begin{verbatim}
752 % \documentclass{book}
753 % \usepackage[T1]{fontenc}
754 % \usepackage[galician]{babel}
755 % \usepackage[latin1]{inputenc}
756 % \usepackage[centerlast]{caption2}
757 % ... % M'ais paquetes
759 % \selectgalician
761 % \title{T'itulo}
762 % \author{Autor}
763 % \newcommand{\pste}{para"-psicoloxicamente}
764 % \newsavebox{\mybox}
765 % \savebox{\mybox}{m'ais cosas}
766 % ...   % M'ais definicións
768 % \begin{document}
769 %\end{verbatim}
771 % \section{Adaptaci'on}
772 % \subsection{Configuraci'on}
774 % Nas súas 'ultimas versions, \babel{} proporciona a posibilidade
775 % de cargar autom'aticamente un arquivo co mesmo nome que o
776 % principal, pero con extensi'on |.cfg|. \textsf{Galician}
777 % proporciona unhas poucas ordes para seren usadas neste arquivo:
778 % \begin{itemize}
779 % \item[$\diamond$] |\gl@activeacute|\\[1ex]
780 % Activa as abreviacións con ap'ostrofos, sen que sexa
781 % necesario incluír |activeacute| coma opci'on en |\usepackage|.
783 % \item[$\diamond$] |\gl@enumerate{<leveli>}|%
784 %      |{<levelii>}{<leveliii>}{<leveliv>}|\\[1ex] 
785 % Cambia os valores preestablecidos por |galician| para
786 % |enumerate|. \textit{leveln} consiste nunha letra, que
787 % indica qu'e formato ter'a o n'umero, seguida de cualquera
788 % texto. A letra ten que ser: |1| (ar'abigo), |a|
789 % (min'uscula \emph{cursiva}\,\footnote{A letra é cursiva
790 % mais non os signos que a poidan seguir. M'ais ben debera
791 % dicirse destacada, xa que se usa |\string\emph|. V'exase
792 % \DTL{11}.}), |A| (versal), |i| (romano \emph{versalita},
793 % con |\msc|), |I| (romano versal) ou finalmente |o| (ordinal\,
794 % \footnote{O normal é non engadir ning'un signo tras ordinal.}).
796 % Esta orde non est'a pensada para facer cambios elaborados, se
797 % non solamente para meros reaxustes. Os valores preestablecidos 
798 % equivalen a
799 %\begin{verbatim}
800 % \gl@enumerate{1.}{a)}{1)}{a$'$)}
801 %\end{verbatim}
803 % \item[$\diamond$] |\gl@itemize{<leveli>}|%
804 %      |{<levelii>}{<leveliii>}{<leveliv>}|\\[1ex] 
805 % O mesmo para |itemize|, s'olo que os argumentos úsanse
806 % de forma literal. Os valores orixinais de \LaTeX{} son
807 % similares a
808 %\begin{verbatim}
809 % \gl@itemize{\textbullet}{\normalfont\bfseries\textendash}
810 %    {\textasteriskcentered}{\textperiodcentered}
811 %\end{verbatim}
813 % \item[$\diamond$] |\gl@operators|\\[1ex]
814 % Todo o relativo a operadores cancélase con
815 %\begin{verbatim}
816 % \let\gl@operators\relax
817 %\end{verbatim}
818 % É boa idea incluílo se no se van usar, xa que aforra memoria.
820 % \end{itemize}
822 % Outros axustes 'utiles neste contexto son |\galicianoperators|,
823 % |\selectgalician| e |\deactivatequoting|.
826 % Recordemos que tódo-los cambios operados dende este arquivo
827 % restan compatibilidade ó documento, polo que se se distribúe
828 % conven adxuntarlo co entorno |filecontents|.
830 % \subsection{Outros cambios}
832 % \begin{itemize}
834 % \item A orde |\addto| permite
835 % cambiar algunha das convencións internas. Esto resulta
836 % interesante coas traduccións, xa que as formas proporcionadas
837 % poden non ser as desexadas. Para iso é necesario que
838 % |galician| non estea seleccionado. Por exemplo, para cambiar
839 % \emph{'Indice de figuras} por \emph{Lista de figuras}:
840 %\begin{verbatim}
841 % \addto\captionsgalician{%
842 %   \def\listfigurename{Lista de figuras}}
843 %\end{verbatim}
845 % \item Para voltar elimina-la sangr'ia tra-la secci'on:
846 %\begin{verbatim}
847 % \def\@afterindentfalse{\let\if@afterindent\iffalse}
848 % \@afterindentfalse
849 %\end{verbatim}
851 % \item Para que |\roman| proporcione n'umeros romanos en
852 % min'uscula, segundo a forma inglesa:
853 %\begin{verbatim}
854 % \def\@roman#1{\romannumeral #1};
855 %\end{verbatim}
856 % e para que emprege |\lsc| en troques de |\msc|: 
857 %\begin{verbatim}
858 % \def\gl@roman##1{\protect\gl@lsc{\romannumeral##1}}
859 %\end{verbatim}
861 % \item
862 % Os extras atópanse organizados en varios grupos: 
863 % |\textgalician|, |\mathgalician|, |\shorthandsgalician|
864 % e |\layoutgalician|. Poden cancelarse con:
865 %\begin{verbatim}
866 %  \renewcommand\textgalician{}
867 %\end{verbatim}
869 % \end{itemize}
871 % \section{Formatos distintos a \LaTeXe}
873 % O estilo |galician| funciona con outros formatos, aínda que con un
874 % subconxunto das funcións disponibles en \LaTeXe{}. Con Plain hai 
875 % que facer
876 %\begin{verbatim}
877 % \input galician.sty
878 %\end{verbatim}
879 % e con \LaTeX2.09, incluir |galician| entre as opcións de estilo.
881 % Inclúense: traduccións, case todas as abreviacións, coma decimal,
882 % utilidades para a divisi'on de palabras, ordinais nunha versi'on
883 % simplificada (e non moi elegante), funcións matem'aticas,
884 % entrecomiñados en \LaTeX2.09, espaciado e |\'i|.
885 % A selecci'on da lingua é inmediata ó cargar o arquivo.
887 % En cambio non est'an disponibles: entrecomiñados en Plain, 
888 % |\lsc|, |\msc| nin as adaptacións proporcionadas por |\layoutgalician|.
890 % A partir desta versi'on, o arquivo de configuraci'on lese sempre,
891 % polo que aqueles que xa estean escritos espec'ificamante para \LaTeXe{}
892 % poden presentar problemas se se usan con outros formatos. Se as
893 % versións que se usan non son moi antigas, pódese comprobar o formato
894 % coa variable |\fmtname|, que vale |LaTeX2e| ou |plain|. Por exemplo,
895 %\begin{verbatim}
896 % \def\temp{LaTeX2e}
897 % \ifx\temp\fmtname
898 %   ...
899 % \fi
900 %\end{verbatim}
902 % \section{Bibliograf'ias}
904 % O arquivo |glbst.tex| que se xenera con \textsf{galician}
905 % serve para que a utilidade \textsf{custom-bib} traballe en
906 % conxunci'on con \babel. Define unha serie de ordes, que poden
907 % consultarse no propio arquivo, que se utilizan para as
908 % traduccións se se selecciona |babel| coma lingua ó xenerar un
909 % estilo bibliogr'afico. 
911 % \section{Incompatibilidades con versións anteriores}
913 % ^^A\begin{itemize}
915 % O t'ermino correspondente a |\tablename| estaba traducido
916 % incorrectamente coma <<Táboa>>. Coma queira que <<táboa>> é a
917 % palabra con que pode aparecer no propio texto, ou ben pode
918 % haber un artigo feminino ante |\tablename|, pode reponerse o
919 % valor antigo con:
920 %\begin{verbatim}
921 % \addto\captionsgalician{%   
922 %   \def\tablename{Táboa}%
923 %   \def\listtablename{\'Indice de táboas}}
924 %\end{verbatim}
926 % ^^A\end{itemize}
928 % \section*{Referencias}
929 % \addcontentsline{toc}{section}{Referencias}
931 % \begingroup
932 % \small
933 % \leftskip1.5cm \parindent-1.5cm
935 % \makebox[1.5cm][l]{\msc{DGII}}\textit{Diccionario de galego},
936 % Ir Indo. Vigo, 2004.
938 % \makebox[1.5cm][l]{\msc{DOT}}Jos'e Mart'inez de Sousa,
939 %   \textit{Diccionario de ortograf'ia t'ecnica}, 
940 %   Germ'an S'anchez Ruip'erez/Pir'amide. Madrid, 1987.
941 %   (Biblioteca del libro.)
943 % \makebox[1.5cm][l]{\msc{DTL}}Jos'e Mart'inez de Sousa,
944 %   \textit{Diccionario de tipograf'ia y del libro}, 
945 %   Paraninfo. Madrid, 3"a ed., 1992.
947 % \makebox[1.5cm][l]{\msc{MEA}}Jos'e Mart'inez de Sousa,
948 %   \textit{Manual de edici'on y autoedici'on}, 
949 %   Pir'amide. Madrid 1994.
951 % \makebox[1.5cm][l]{\msc{OELG}}Xos'e Feix'o Cid,
952 %   \textit{Ortografía e estilo da lingua galega}, 
953 %   Pir'amide. Vigo, 2002.
955 % \leftskip0pt \parindent0pt \vspace{6pt}
957 % {\itshape
958 % Como normalmente o primeiro contacto con \TeX{} é por unha tesis,
959 % cito libros que est'an relacionados co tema ós que tiven acceso.
960 % Est'an por orde de preferencia; en  particular, os dous 'ultimos
961 % parécenme pouco recomendables. (J. B.)}
963 % \parindent-1.5pc \leftskip1.5pc  \vspace{3pt}
965 %   Umberto Eco,
966 %   \textit{C'omo se hace una tesis}, Gedisa.
967 %   Barcelona 1982.
969 %   Antonia Rigo Arnavat e Gabriel Genesc\`a Due'nas,
970 %   \textit{C'omo presentar una tesis y trabajos de investigaci'on},
971 %   Eumo-Octaedro. Barcelona, 2002.
973 %   Prudenci Comes,
974 %   \textit{Gu'ia para la redacci'on y presentaci'on de trabajos
975 %   cient'ificos, informes t'ecnicos y tesinas}, 
976 %   Oikos-Tau. Barcelona, 1971.
978 %   Javier Lasso de la Vega,
979 %   \textit{C'omo se hace una tesis doctoral}, 
980 %   Fundacion Universitaria Espa~nola. Madrid, 1977.
982 %   Jos'e Romera Castillo e outros,
983 %   \textit{Manual de estilo}, 
984 %   Universidad Nacional de Educaci'on a Distancia. Madrid, 1996.
986 %   Restituto Sierra Bravo,
987 %   \textit{Tesis doctorales y trabajos de investigaci'on cient'ifica}, 
988 %   Paraninfo. Madrid, 1986.
990 % \parindent0pc \leftskip0pc \vspace{6pt}
992 % {\itshape
993 % Para outras cuestións tipogr'aficas, as referencias
994 % usadas son, entre outras:}
996 % \parindent-1.5pc \leftskip1.5pc \vspace{3pt}
998 %   Javier Bezos,
999 %   \textit{Tipograf'ia espa'nola con \TeX}, documento electr'onico
1000 %   disponible en 
1001 %   \textsf{http://perso.wanadoo.es/jbezos/tipografia.html}. 
1003 %   Ra'ul Cabanes Mart'inez,
1004 %   <<El sistema internacional de unidades: ese desconocido>>,
1005 %   \textit{Mundo Electr'onico}, n"o 142, p'axs.~119~-125. 1984.
1007 %   \textit{The Chicago Manual of Style}, University of Chicago
1008 %   Press, 14"a~ed., esp.~p'axs.~333~-335. Chicago, 1993.
1010 %   Jos'e Fern'andez Castillo,
1011 %   \textit{Normas para correctores y compositores tip'ografos},
1012 %   Espasa-Calpe. Madrid, 1959.
1014 %   IRANOR [AENOR], Normas \msc{UNE} n'umeros 5010 (<<Signos 
1015 %   matem'aticos>>), 5028 (<<S'imbolos 
1016 %   geom'etricos>>) e 5029 (<<Impresi'on de los
1017 %   s'imbolos de magnitudes y unidades y de los n'umeros>>). 
1018 %   [Obsoletas.]
1020 %   Real Academia Espa'nola,
1021 %   \textit{Esbozo de una nueva gram'atica de la
1022 %   lengua espa'nola}, Espasa-Calpe. Madrid, 1973.
1023 %   
1024 %   V.\ Mart'inez Sicluna,
1025 %   \textit{Teor'ia y pr'actica de la tipograf'ia},
1026 %   Gustavo Gili. Barcelona, 1945.
1028 %   Jos'e Mart'inez de Sousa,
1029 %   \textit{Diccionario de ortograf'ia de la lengua espa'nola},
1030 %   Paraninfo. Madrid, 1996.
1032 %   Juan Mart'inez Val, \textit{Tipograf'ia pr'actica},
1033 %   Laberinto. Madrid, 2002.
1035 %   Juan Jos'e Morato, \textit{Gu'ia pr'actica del compositor 
1036 %   tipogr'afico}, Hernando, 2"a ed. Madrid, 1908 (1"a ed., 1900,
1037 %   3"a ed., 1933).
1039 %   Marion Neubauer,
1040 %   <<Feinheiten bei wissenschaftlichen Publikationen>>,
1041 %   \textit{Die \TeX nisches Kom\"odie},  parte I, vol. 8, n"o 4,
1042 %   p'axs. 23-40. 1996; parte II, vol. 9, n"o 1, p'axs.~25~-44. 1997.
1044 %   Jos'e Polo,
1045 %   \textit{Ortograf'ia y ciencia del lenguaje},  Paraninfo. Madrid, 1974.
1047 %   Pedro Valle,
1048 %   \textit{C'omo corregir sin ofender}, Lumen. Buenos Aires, 1998.
1050 %   Hugh C. Wolfe, <<S'imbolos, unidades y nomenclatura>>, 
1051 %   \textit{Enciclopedia de F'isica}, t.~2, p'axs.~1423~-1451.
1052 %    dir. Rita G. Lerner e George L. Trigg, Alianza. Madrid, 1987,
1054 % \endgroup
1056 % \end{userdtx}
1058 % \begin{userdrv}
1059 %^^A  ======= Beginning of text as typeset by user.drv =========
1061 % \GetFileInfo{galician.dtx}
1063 % \section{This file}
1065 % This file defines all the language-specific macros for the
1066 % Galician language. The file galician.dtx was translated in
1067 % January 2007 by Javier A. M\'ugica from spanish.dtx. It was 
1068 % given the version number 4.3, based on the version for spanish.dtx
1069 % at those times, that was 4.2b. The original author from
1070 % v4.0 to 4.2b was Javier Bezos. Previous versions were written
1071 % by Julio S\'anchez.
1073 % I decided to make \emph{tabula rasa} of all |\changes|
1074 % logs. Only changes from spanish 4.2b to galician 4.3 and thereafter
1075 % are documented. The change history for the original spanish.dtx
1076 % can be found in that file.
1078 % \section{The Galcian language}
1080 % Custumization is made following mainly the books on the subject
1081 % by Jos\'e Mart\'\i nez de Sousa and Xos\'e Feix\'o Cid.
1082 % By typesetting |galician.dtx| directly you will get the full
1083 % documentation (regrettably is in Galician only, but it is
1084 % pretty long). References in this part refers to that document.
1085 % There are several aditional features documented in the Galician
1086 % version only.
1088 % This style provides:
1089 % \begin{itemize}
1090 % \item Translations following the International \LaTeX{} 
1091 % conventions, as well as |\today|.
1093 % \item Shorthands listed in Table~\ref{tab:galician-quote-def}.
1094 % Examples in subsection~3.4 are illustrative. Note that
1095 % |"~| has a special meaning in \textsf{galician}
1096 % different to other languages, and is used mainly in linguistic
1097 % contexts.
1099 % \begin{table}[htb]
1100 % \centering
1101 % \begin{tabular}{lp{8cm}}
1102 % |'a|      & acute accented a. Also for: e, i, o, u (both
1103 %             lowercase and uppercase).\\
1104 % |'n|      & \~n (also uppercase).\\
1105 % |~n|      & \~n (also uppercase). Deprecated.\\
1106 % |"u|      & \"u (also uppercase).\\
1107 % |"i|      & \"i (also uppercase).\\
1108 % |"a|      & Ordinal numbers (also  |"A|, |"o|, |"O|).\\
1109 % |"rr|     & rr, but -r when hyphenated\\
1110 % |"-|      & Like |\-|, but allowing hyphenation in the rest 
1111 %             the word.\\
1112 % |"=|      & Like |-|, but allowing hyphenation in the rest 
1113 %             the word.\\
1114 % |"~|      & The hyphen is repeated at the very beginning of 
1115 %             the next line if the word is hyphenated at this
1116 %             point.\\
1117 % |""|      & Like |"-| but producing no hyphen sign.\\
1118 % |~-|      & Like |-| but with no break after the hyphen. Also for:
1119 %             en-dashes (|~--|) and em-dashes (|~---|). \\
1120 % |"/|      & A slash slightly lowered, if necessary.\\
1121 % \verb+"|+ & disable ligatures at this point.\\
1122 % |<<|      & Left guillemets.\\
1123 % |>>|      & Right guillemets.\\
1124 % |"<|      & |\begin{quoting}|. (See text.)\\
1125 % |">|      & |\end{quoting}|. (See text.)
1126 % \end{tabular}
1127 % \caption{Extra definitions made by file \file{galician.ldf}}
1128 % \label{tab:galician-quote-def}
1129 % \end{table}
1131 % \item |\deactivatetilden| deactivates the |~n| and |~N| shorthands.
1133 % \item \emph{In math mode} a dot followed by a digit is replaced
1134 % by a decimal comma.
1136 % \item Galicians ordinals and abbeviations with |\sptext|
1137 % as, for instance, |1\sptext{o}|. The
1138 % preceptive dot is included.
1140 % \item Accented functions: l\'\i m, m\'ax, m\'\i n, m\'od. You may
1141 % globally omit the accents with |\unaccentedoperators|. Spaced
1142 % functions: arc\,cos, etc. You may globally kill that space with
1143 % |\unspacedoperators|. |\dotlessi| is provided for use in math mode.
1145 % \item A |quoting| environment and a related pair of shorthands |<<|
1146 % and |>>|. The command
1147 % |\deactivatequoting| deactivates these shorthand in case 
1148 % you want to use |<| and |>| in some AMS commands and numerical
1149 % comparisons.
1151 % \item The command |\selectgalician| selects the |galician| language
1152 % \emph{and} its shorthands. (Intended for the preamble.)
1154 % \item |\frenchspacing| is used.
1156 % \item |\dots| is redefined. It is now equal to typing tree points
1157 % in a row (it preserves the space following).
1159 % \item There is a small space before |\%|.
1161 % \item |\msc| provides lowercase small caps. (See subsection~3.10.)
1162 % \end{itemize}
1164 % Just in case |galician| is the main language, the group 
1165 % |\layoutgalician| is activated, which modifies the standard
1166 % classes through the whole document (it cannot be deactivated)
1167 % in the following way:
1168 % \begin{itemize}
1169 % \item Both |enumerate| and |itemize| are adapted to Galician rules.
1171 % \item Both |\alph| and |\Alph| include \textit{\~n} after \textit{n}.
1173 % \item Symbol footmarks are one, two, three, etc., asteriscs.
1175 % \item |OT1| guillemets are generated with two |lasy| symbols instead
1176 % of small |\ll| and |\gg|.
1178 % \item |\roman| is redefined to write small caps roman numerals, since
1179 % lowercase roman numerals are not allowed. However, \textit{MakeIndex}
1180 % rejects entries containing pages in that format. The |.idx| file must
1181 % be preprocessed if the document has this kind of entries with
1182 % the provided |romanidx.tex| tool---just \TeX{} it and follow the
1183 % instructions.
1185 % \item There is a dot after section numbers in titles and toc.
1186 % \end{itemize}
1187 % This group is ignored if you write |\selectgalician*| in the
1188 % preamble.
1190 % Some additional commands are provided to be used in the
1191 % |galician.cfg| file:
1192 % \begin{itemize}
1193 % \item With |\gl@activeacute| acute accents are always active,
1194 % overriding the default \textsf{babel} behaviour.
1196 % \item |\gl@enumerate| sets the labels to be used by |enumerate|. The
1197 % same applies to |\gl@itemize| and |itemize|.
1199 % \item |\gl@operators| stores the operator commands.
1200 % All of them are canceled with
1201 %\begin{verbatim}
1202 % \let\gl@operators\relax
1203 %\end{verbatim}
1204 % \end{itemize}
1205 % The commands |\deactivatequoting|, |\deactivatetilden| and
1206 % |\selectgalician| may be used in this file, too.
1208 % A subset of these commands is provided for
1209 % use in Plain \TeX{} (with |\input galician.sty|).
1211 % \end{userdrv}
1213 %\StopEventually{}
1215 %^^A ========== End of manual ===============
1217 % \begin{userdtx}
1218 % \section{The Code}
1219 % \end{userdtx}
1221 % \begin{userdrv}
1222 % \subsection{The Code}
1223 % \end{userdrv}
1225 % \changes{galician~4.3}{07/01/22}{Reversed "<, "> and <<, >>.}
1226 % \changes{galician~4.3}{07/01/22}{Removed the Spanish et sign.}
1227 % \changes{galician~4.3}{07/01/26}{Removed the shorthand for \c{c}. It
1228 % existed in medieval galician-portuguese, but that does not seem a
1229 % reason to be included here.}
1231 %    This file provides definition for both \LaTeXe{} and non
1232 %    \LaTeXe{} formats.
1234 %    Identify the |ldf| file.
1235 %    
1236 %    \begin{macrocode}
1237 %<*code>
1238 \ProvidesLanguage{galician.ldf}
1239        [2008/07/06 v4.3c Galician support from the babel system]
1240 %    \end{macrocode}
1242 %    The macro |\LdfInit| takes care of preventing that this file is
1243 %    loaded more than once, checking the category code of the
1244 %    \texttt{@} sign, etc.
1245 %    When this file is read as an option, i.e. by the |\usepackage|
1246 %    command, \texttt{galician} will be an `unknown' language in which
1247 %    case we have to make it known.  So we check for the existence of
1248 %    |\l@galician| to see whether we have to do something here.
1250 %    \begin{macrocode}
1251 \LdfInit{galician}\captionsgalician
1252 \ifx\undefined\l@galician
1253   \@nopatterns{Galician}
1254   \adddialect\l@galician0
1256 %    \end{macrocode}
1258 %    We define some tools which will be used in that style file:
1259 %    (1) we make sure that |~| is active, (2) |\gl@delayed| delays
1260 %    the expansion of the code in conditionals (in fact, quite similar
1261 %    to |\bbl@afterfi|).
1263 %    \begin{macrocode}
1264 \edef\gl@savedcatcodes{%
1265   \catcode`\noexpand\~=\the\catcode`\~
1266   \catcode`\noexpand\"=\the\catcode`\"}
1267 \catcode`\~=\active
1268 \catcode`\"=12
1269 \long\def\gl@delayed#1\then#2\else#3\fi{%
1270   #1%
1271     \expandafter\@firstoftwo
1272   \else
1273     \expandafter\@secondoftwo
1274   \fi
1275   {#2}{#3}}
1276 %    \end{macrocode}
1278 %    Two tests are introduced. The first one tells us if the format is
1279 %    \LaTeXe{}, and the second one if the format is Plain or any other.
1280 %    If both are false, the format is \LaTeX2.09{}.
1282 %    \begin{macrocode}
1283 \gl@delayed
1284 \expandafter\ifx\csname documentclass\endcsname\relax\then
1285   \let\ifes@LaTeXe\iffalse
1286 \else
1287   \let\ifes@LaTeXe\iftrue
1289 \gl@delayed
1290 \expandafter\ifx\csname newenvironment\endcsname\relax\then
1291   \let\ifes@plain\iftrue
1292 \else
1293   \let\ifes@plain\iffalse
1295 %    \end{macrocode}
1297 % Translations for captions.
1299 %    \begin{macrocode}
1300 \addto\captionsgalician{%
1301   \def\prefacename{Prefacio}%
1302   \def\refname{Referencias}%
1303   \def\abstractname{Resumo}%
1304   \def\bibname{Bibliograf\'{\i}a}%
1305   \def\chaptername{Cap\'{\i}tulo}%
1306   \def\appendixname{Ap\'endice}%
1307   \def\listfigurename{\'Indice de figuras}%
1308   \def\listtablename{\'Indice de cadros}%
1309   \def\indexname{\'Indice alfab\'etico}%
1310   \def\figurename{Figura}%
1311   \def\tablename{Cadro}%
1312   \def\partname{Parte}%
1313   \def\enclname{Adxunto}%
1314   \def\ccname{Copia a}%
1315   \def\headtoname{A}%
1316   \def\pagename{P\'axina}%
1317   \def\seename{v\'exase}%
1318   \def\alsoname{v\'exase tam\'en}%
1319   \def\proofname{Demostraci\'on}%
1320   \def\glossaryname{Glosario}}
1321   
1322 \expandafter\ifx\csname chapter\endcsname\relax
1323   \addto\captionsgalician{\def\contentsname{\'Indice}}
1324 \else
1325   \addto\captionsgalician{\def\contentsname{\'Indice xeral}}
1327 %    \end{macrocode}
1329 %    And the date.
1330 % \changes{galician~4.3}{07/01/21}{Set the default to \textit{do}}
1331 %    \begin{macrocode}
1332 \def\dategalician{%
1333  \def\today{\the\day~de \ifcase\month\or xaneiro\or febreiro\or
1334       marzo\or abril\or maio\or xu\~no\or xullo\or agosto\or
1335       setembro\or outubro\or novembro\or decembro\fi 
1336       \ \ifnum\year>1999\gl@yearl\else de\fi~\the\year}}
1337 \def\galiciandatedo{\def\gl@yearl{do}}
1338 \def\galiciandatede{\def\gl@yearl{de}}
1339 \galiciandatedo
1340 %    \end{macrocode}
1342 %    The basic macros to select the language, in the preamble or the
1343 %    config file. Use of |\selectlanguage| should be avoided at this
1344 %    early stage because the active chars are not yet
1345 %    active. |\selectgalician| makes them active.
1347 %    \begin{macrocode}
1348 \def\selectgalician{%
1349   \def\selectgalician{%
1350     \def\selectgalician{%
1351       \PackageWarning{galician}{Extra \string\selectgalician ignored}}%
1352     \gl@select}}
1354 \@onlypreamble\selectgalician
1356 \def\gl@select{%
1357   \let\gl@select\@undefined
1358   \selectlanguage{galician}%
1359   \catcode`\"\active\catcode`\~=\active}
1360 %    \end{macrocode}
1362 %    Instead of joining all the extras directly in |\extrasgalician|,
1363 %    we subdivide them in three further groups.
1364 %    \begin{macrocode}
1365 \def\extrasgalician{%
1366   \textgalician
1367   \mathgalician
1368   \ifx\shorthandsgalician\@empty
1369     \galiciandeactivate{."'~<>}%
1370     \languageshorthands{none}%
1371   \else
1372     \shorthandsgalician
1373   \fi}
1374 \def\noextrasgalician{%
1375   \ifx\textgalician\@empty\else
1376     \notextgalician
1377   \fi
1378   \ifx\mathgalician\@empty\else
1379     \nomathgalician
1380   \fi
1381   \ifx\shorthandsgalician\@empty\else
1382     \noshorthandsgalician
1383   \fi
1384   \gl@reviveshorthands}
1385 %    \end{macrocode}
1387 %    And the first of these sub-groups is defined.
1389 %    \begin{macrocode}
1390 \addto\textgalician{%
1391   \babel@save\sptext
1392   \def\sptext{\protect\gl@sptext}}    
1393 %    \end{macrocode}
1395 %    The definition of |\sptext| is more elaborated than that of
1396 %    |\textsuperscript|. With uppercase superscript text
1397 %    the scriptscriptsize is used. The mandatory dot is already
1398 %    included. There are two versions, depending on the
1399 %    format.
1401 %    \begin{macrocode}
1402 \ifes@LaTeXe   %<<<<<<
1403   \newcommand\gl@sptext[1]{%
1404     {.\setbox\z@\hbox{8}\dimen@\ht\z@
1405      \csname S@\f@size\endcsname
1406      \edef\@tempa{\def\noexpand\@tempc{#1}%
1407        \lowercase{\def\noexpand\@tempb{#1}}}\@tempa
1408      \ifx\@tempb\@tempc
1409        \fontsize\sf@size\z@
1410        \selectfont
1411        \advance\dimen@-1.15ex
1412      \else
1413        \fontsize\ssf@size\z@
1414        \selectfont
1415        \advance\dimen@-1.5ex
1416      \fi
1417      \math@fontsfalse\raise\dimen@\hbox{#1}}}
1418 \else          %<<<<<<
1419   \let\sptextfont\rm
1420   \newcommand\gl@sptext[1]{%
1421     {.\setbox\z@\hbox{8}\dimen@\ht\z@
1422      \edef\@tempa{\def\noexpand\@tempc{#1}%
1423        \lowercase{\def\noexpand\@tempb{#1}}}\@tempa
1424      \ifx\@tempb\@tempc
1425        \advance\dimen@-0.75ex
1426        \raise\dimen@\hbox{$\scriptstyle\sptextfont#1$}%
1427      \else
1428        \advance\dimen@-0.8ex
1429        \raise\dimen@\hbox{$\scriptscriptstyle\sptextfont#1$}%
1430      \fi}}
1431 \fi            %<<<<<<
1432 %    \end{macrocode}
1434 %    Now, lowercase small caps. First, we test if there are actual
1435 %    small caps for the current font. If not, faked small caps are
1436 %    used. |\msc| tries a slightly larger font.
1437 %    Javier B. wrote: ``The \cs{selectfont} in \cs{gl@lsc} could
1438 %    seem redundant, but it's not''. I cannot see how it can't be
1439 %    redundant (it is the last thing executed by |\scshape|), but
1440 %    I keep it.
1442 %    \changes{galician~4.3}{07/00/26}{Added \cs{msc}}
1443 %    \begin{macrocode}
1444 \ifes@LaTeXe   %<<<<<<
1445   \addto\textgalician{%
1446     \babel@save\lsc
1447     \def\lsc{\protect\gl@lsc}
1448     \babel@save\msc
1449     \def\msc{\protect\gl@msc}}
1450         
1451         \def\gl@@msc{\expandafter\@tempdima\f@size pt \divide\@tempdima by 200 \multiply\@tempdima by 219 
1452                 \edef\f@size{\strip@pt\@tempdima}\selectfont}
1453         \def\gl@msc{\let\gl@do@msc\gl@@msc\lsc}
1454         \let\gl@do@msc\relax
1456   \def\gl@lsc#1{%
1457     \leavevmode
1458     \hbox{\gl@do@msc\scshape\selectfont
1459        \expandafter\ifx\csname\f@encoding/\f@family/\f@series
1460            /n/\f@size\expandafter\endcsname
1461          \csname\curr@fontshape/\f@size\endcsname
1462          \csname S@\f@size\endcsname
1463          \fontsize\sf@size\z@\selectfont
1464            \PackageInfo{galician}{Replacing undefined sc font\MessageBreak
1465                                  shape by faked small caps}%
1466          \MakeUppercase{#1}%
1467        \else
1468          \MakeLowercase{#1}%
1469        \fi}\let\gl@do@msc\relax}
1470 \fi            %<<<<<<
1471 %    \end{macrocode}
1473 %    The |quoting| environment. This part is not available
1474 %    in Plain, hence the test. Overriding the default |\everypar| is
1475 %    a bit tricky.
1477 %    \begin{macrocode}
1478 \newif\ifgl@listquot
1480 \ifes@plain\else %<<<<<<
1481   \csname newtoks\endcsname\gl@quottoks
1482   \csname newcount\endcsname\gl@quotdepth
1484         \ifx\quoting\c@undefined\def\next{\let\next\relax\newenvironment}
1485         \else\def\next{\PackageInfo{galician}{Redefining quoting}\let\next\relax\renewenvironment}
1486         \fi
1487   \next{quoting}
1488    {\leavevmode
1489     \advance\gl@quotdepth1
1490     \csname lquot\romannumeral\gl@quotdepth\endcsname%
1491     \ifnum\gl@quotdepth=\@ne
1492       \gl@listquotfalse
1493       \let\gl@quotpar\everypar
1494       \let\everypar\gl@quottoks
1495       \everypar\expandafter{\the\gl@quotpar}%
1496       \gl@quotpar{\the\everypar
1497         \ifgl@listquot\global\gl@listquotfalse\else\gl@quotcont\fi}%
1498     \fi
1499     \toks@\expandafter{\gl@quotcont}%
1500     \edef\gl@quotcont{\the\toks@
1501        \expandafter\noexpand
1502        \csname rquot\romannumeral\gl@quotdepth\endcsname}}
1503    {\csname rquot\romannumeral\gl@quotdepth\endcsname}
1505   \def\lquoti{\guillemotleft{}}
1506   \def\rquoti{\guillemotright{}}
1507   \def\lquotii{``}
1508   \def\rquotii{''}
1509   \def\lquotiii{`}
1510   \def\rquotiii{'}
1512   \let\gl@quotcont\@empty
1513 %    \end{macrocode}
1515 %    If there is a margin par inside quoting, we don't add the
1516 %    quotes. |\gl@listqout| stores the quotes to be used before
1517 %    item labels; otherwise they could appear after the labels.
1519 %    \begin{macrocode}  
1520   \addto\@marginparreset{\let\gl@quotcont\@empty}
1522   \def\gl@listquot{%
1523     \csname rquot\romannumeral\gl@quotdepth\endcsname
1524     \global\gl@listquottrue}
1525 \fi            %<<<<<<
1526 %    \end{macrocode}
1528 %    Now, the |\frenchspacing|, followed by |\...dots| and |\%|
1529 %                Instead of redefining |\ldots| and |\cdots|, we redefine |\ldotp|
1530 %    and |\cdotp|, so that this is compatible with amsmath.
1531 %    In LaTeX we also redefine |\textellipsis|, and for plain or
1532 %    other we redefine |\dots|.
1534 % \changes{galician~4.3}{07/01/27}{\cs{...} is removed and instead
1535 % \cs{dots} and \cs{dots} are changed, by redefining \cs{ldotc},
1536 % \cs{dotc} and \cs{textellipsis} or \cs{dots}}
1537 %    \begin{macrocode}
1538 \addto\textgalician{\bbl@frenchspacing}
1539 \addto\notextgalician{\bbl@nonfrenchspacing}
1541 \mathchardef\gl@cdot="0201
1542 \ifes@LaTeXe            %<<<<<<
1543 \addto\textgalician{%
1544   \babel@save\textellipsis
1545   \babel@save\ldotp
1546   \babel@save\cdotp%
1547         \def\textellipsis{\hbox{...}\spacefactor\sfcode`.{} }%
1548         \mathchardef\ldotp="013A%
1549         \mathchardef\cdotp="0201%
1551 \else            %<<<<<<
1552 \addto\textgalician{%
1553   \babel@save\dots
1554   \babel@save\ldotp
1555   \babel@save\cdotp
1556   \mathchardef\ldotp="013A%
1557         \mathchardef\cdotp="0201%
1558         \def\dots{\ifmmode\ldots\else...\spacefactor\sfcode`.{} \fi}%
1560 \fi            %<<<<<<
1562 \ifes@LaTeXe   %<<<<<<  
1563   \addto\textgalician{%
1564     \let\percentsign\%%
1565     \babel@save\%%
1566     \def\%{\unskip\,\percentsign{}}}
1567 \else
1568   \addto\textgalician{%
1569     \let\percentsign\%%
1570     \babel@save\%%
1571     \def\%{\unskip\ifmmode\,\else$\m@th\,$\fi\percentsign{}}}
1573 %    \end{macrocode}
1574 %    
1575 %    We follow with the math group. It's not easy to add an accent
1576 %    in an operator. The difficulty is that we must avoid using
1577 %    text (that is, |\mbox|) because we have no control on font
1578 %    and size, and at time we should access |\i|, which is a text
1579 %    command forbidden in math mode. |\dotlessi| must be
1580 %    converted to uppercase if necessary in \LaTeXe. There are
1581 %    two versions, depending on the format.
1583 %    \begin{macrocode}
1584 \addto\mathgalician{%
1585   \babel@save\dotlessi
1586   \def\dotlessi{\protect\gl@dotlessi}}
1588 \let\nomathgalician\relax %% Unused, but called
1590 \ifes@LaTeXe   %<<<<<< 
1591   \def\gl@texti{\i}
1592   \addto\@uclclist{\dotlessi\gl@texti}
1593 \fi            %<<<<<<
1595 \ifes@LaTeXe   %<<<<<<
1596   \def\gl@dotlessi{%
1597     \ifmmode
1598       {\ifnum\mathgroup=\m@ne
1599          \imath
1600        \else
1601          \count@\escapechar \escapechar=\m@ne
1602          \expandafter\expandafter\expandafter
1603            \split@name\expandafter\string\the\textfont\mathgroup\@nil
1604          \escapechar=\count@
1605          \@ifundefined{\f@encoding\string\i}%
1606            {\edef\f@encoding{\string?}}{}%
1607          \expandafter\count@\the\csname\f@encoding\string\i\endcsname
1608          \advance\count@"7000
1609          \mathchar\count@
1610        \fi}%
1611     \else
1612       \i
1613     \fi}
1614 \else          %<<<<<<
1615   \def\gl@dotlessi{%
1616     \ifmmode
1617       \mathchar"7010
1618     \else
1619       \i
1620     \fi}
1621 \fi            %<<<<<<
1622 %    \end{macrocode}
1624 %   The switches for accents and spaces in math.
1626 % \changes{galician~4.3}{07/01/21}{Set the default to \cs{unspacedoperators}}
1627 %    \begin{macrocode}
1628 \def\accentedoperators{%
1629   \def\gl@op@ac##1{\acute{##1}}%
1630   \def\gl@op@i{\acute{\dotlessi}}}
1631 \def\unaccentedoperators{%
1632   \def\gl@op@ac##1{##1}%
1633   \def\gl@op@i{i}}
1634 \accentedoperators
1636 \def\spacedoperators{\let\gl@op@sp\,}
1637 \def\unspacedoperators{\let\gl@op@sp\@empty}
1638 \unspacedoperators
1639 %    \end{macrocode}
1641 %    The operators are stored in |\gl@operators|, which in turn is
1642 %    included in the math group. Since |\operator@font| is
1643 %    defined in \LaTeXe{} only, we need to define them in the plain variant.
1644 %    
1645 % \changes{galician~4.3}{07/01/21}{\cs{sin}, \cs{arcsin} and \cs{sinh}
1646 % are set to produce the same as \cs{sen}, \cs{arcsen} and \cs{senh}}
1647 % \changes{galician~4.3}{07/01/27}{cosec and senh moved from
1648 % \cs{galicianoperators} to the main group}
1650 %    \begin{macrocode}
1651 \addto\mathgalician{%
1652   \gl@operators}
1654 \ifes@LaTeXe\else %<<<<<<
1655   \let\operator@font\rm
1656   \def\@empty{}
1657 \fi            %<<<<<<
1659 \def\gl@operators{%
1660   \babel@save\lim        \def\lim{\mathop{\operator@font l\protect\gl@op@i m}}%
1661   \babel@save\limsup  \def\limsup{\mathop{\operator@font l\gl@op@i m\,sup}}%
1662   \babel@save\liminf  \def\liminf{\mathop{\operator@font l\gl@op@i m\,inf}}%
1663   \babel@save\max     \def\max{\mathop{\operator@font m\gl@op@ac ax}}%
1664   \babel@save\inf     \def\inf{\mathop{\operator@font \protect\gl@op@i nf}}%
1665   \babel@save\min     \def\min{\mathop{\operator@font m\protect\gl@op@i n}}%
1666   \babel@save\bmod
1667   \def\bmod{%
1668     \nonscript\mskip-\medmuskip\mkern5mu%
1669     \mathbin{\operator@font m\gl@op@ac od}\penalty900\mkern5mu%
1670     \nonscript\mskip-\medmuskip}%
1671   \babel@save\pmod
1672   \def\pmod##1{%
1673     \allowbreak\mkern18mu({\operator@font m\gl@op@ac od}\,\,##1)}%
1674   \def\gl@a##1 {%
1675     \gl@delayed
1676     \if^##1^\then  %  is it empty? do nothing and continue
1677       \gl@a
1678     \else
1679       \gl@delayed
1680       \if&##1\then % is it &? do nothing and finish
1681       \else
1682         \begingroup
1683           \let\,\@empty % \, is ignored when def'ing the macro name
1684           \let\acute\@firstofone % same
1685           \edef\gl@b{\expandafter\noexpand\csname##1\endcsname}%
1686           \def\,{\noexpand\gl@op@sp}%
1687           \def\acute####1{%
1688             \if i####1%
1689               \noexpand\gl@op@i
1690             \else
1691               \noexpand\gl@op@ac####1%
1692             \fi}%
1693           \edef\gl@a{\endgroup
1694             \noexpand\babel@save\expandafter\noexpand\gl@b
1695             \def\expandafter\noexpand\gl@b{%
1696                     \mathop{\noexpand\operator@font##1}\nolimits}}%
1697           \gl@a % It restores itself
1698         \gl@a
1699       \fi
1700     \fi}%
1701   \let\gl@b\galicianoperators
1702   \addto\gl@b{ }%
1703   \expandafter\gl@a\gl@b sen tx cosec arc\,sen arc\,cos arc\,tx senh & %\, will be set to \gl@op@sp
1704   %
1705   \babel@save\sin    \let\sin\sen
1706         \babel@save\arcsin \let\arcsin\arcsen
1707         \babel@save\sinh   \let\sinh\senh
1710 \def\galicianoperators{cotx txh}
1711 %    \end{macrocode}
1713 %    Now comes the text shorthands. They are grouped in
1714 %    |\shorthandsgalician| and this style performs some
1715 %    operations before the babel shortands are called.
1716 %    The goals are to allow espression like |$a^{x'}$|
1717 %    and to deactivate the shorthands making them of
1718 %    category `other'. After providing a |\'i| shorthand,
1719 %    the new macros are defined.
1720 %    
1721 %    \begin{macrocode}
1722 \DeclareTextCompositeCommand{\'}{OT1}{i}{\@tabacckludge'{\i}}
1724 \def\gl@set@shorthand#1{%
1725   \expandafter\edef\csname gl@savecat\string#1\endcsname
1726      {\the\catcode`#1}%
1727   \initiate@active@char{#1}%
1728   \catcode`#1=\csname gl@savecat\string#1\endcsname\relax
1729   \expandafter\let\csname gl@math\string#1\expandafter\endcsname
1730     \csname normal@char\string#1\endcsname}
1732 \def\gl@use@shorthand{%
1733   \gl@delayed
1734   \ifx\thepage\relax\then
1735     \string
1736   \else{%
1737     \gl@delayed
1738     \ifx\protect\@unexpandable@protect\then
1739       \noexpand
1740     \else
1741       \gl@use@sh
1742     \fi}%
1743   \fi}
1745 \def\gl@text@sh#1{\csname active@char\string#1\endcsname}
1746 \def\gl@math@sh#1{\csname gl@math\string#1\endcsname}
1748 \def\gl@use@sh{%
1749   \gl@delayed
1750   \if@safe@actives\then
1751     \string
1752   \else{%
1753     \gl@delayed
1754     \ifmmode\then
1755       \gl@math@sh
1756     \else
1757       \gl@text@sh
1758     \fi}%
1759   \fi}
1761 \gdef\gl@activate#1{%
1762   \begingroup
1763     \lccode`\~=`#1
1764     \lowercase{%
1765   \endgroup
1766   \def~{\gl@use@shorthand~}}}
1768 \def\galiciandeactivate#1{%
1769   \@tfor\@tempa:=#1\do{\expandafter\gl@spdeactivate\@tempa}}
1771 \def\gl@spdeactivate#1{%
1772   \if.#1%
1773     \mathcode`\.=\gl@period@code
1774   \else
1775     \begingroup
1776       \lccode`\~=`#1
1777       \lowercase{%
1778     \endgroup
1779     \expandafter\let\expandafter~%
1780       \csname normal@char\string#1\endcsname}%
1781     \catcode`#1\csname gl@savecat\string#1\endcsname\relax
1782   \fi}
1784 \def\gl@reviveshorthands{%
1785   \gl@restore{"}\gl@restore{~}%
1786   \gl@restore{<}\gl@restore{>}%
1787   \gl@quoting}
1789 \def\gl@restore#1{%
1790   \catcode`#1=\active
1791   \begingroup
1792     \lccode`\~=`#1
1793     \lowercase{%
1794   \endgroup
1795   \bbl@deactivate{~}}}
1796 %    \end{macrocode}
1798 %    But \textsf{galician} allows two category codes for |'|,
1799 %    so both should be taken into account in \cs{bbl@pr@m@s}.
1800 %    
1801 %    \begin{macrocode}
1802 \begingroup
1803 \catcode`\'=12
1804 \lccode`~=`' \lccode`'=`'
1805 \lowercase{%
1806 \gdef\bbl@pr@m@s{%
1807   \gl@delayed
1808   \ifx~\@let@token\then
1809     \pr@@@s
1810   \else
1811     {\gl@delayed
1812      \ifx'\@let@token\then
1813        \pr@@@s
1814      \else
1815        {\gl@delayed
1816         \ifx^\@let@token\then
1817           \pr@@@t
1818         \else
1819           \egroup
1820         \fi}%
1821      \fi}%
1822   \fi}}
1823 \endgroup
1824 %    \end{macrocode}
1826 %    \begin{macrocode}
1827 \expandafter\ifx\csname @tabacckludge\endcsname\relax
1828   \let\gl@tak\a
1829 \else
1830   \let\gl@tak\@tabacckludge
1833 \ifes@LaTeXe   %<<<<<<
1834   \def\@tabacckludge#1{\expandafter\gl@tak\string#1}
1835   \let\a\@tabacckludge
1836 \else\ifes@plain %<<<<<<
1837   \def\@tabacckludge#1{\csname\string#1\endcsname}
1838 \else          %<<<<<<
1839   \def\@tabacckludge#1{\csname a\string#1\endcsname}
1840 \fi\fi         %<<<<<<    
1842 \expandafter\ifx\csname add@accent\endcsname\relax
1843   \def\add@accent#1#2{\accent#1 #2}
1845 %    \end{macrocode}
1847 %    Instead of redefining |\'|, we redefine the internal macro for the OT1 encoding.
1848 %    \begin{macrocode}
1849 \ifes@LaTeXe   %<<<<<<
1850   \def\gl@accent#1#2#3{%
1851     \expandafter\@text@composite
1852     \csname OT1\string#1\endcsname#3\@empty\@text@composite
1853     {\bbl@allowhyphens\add@accent{#2}{#3}\bbl@allowhyphens
1854      \setbox\@tempboxa\hbox{#3%
1855        \global\mathchardef\accent@spacefactor\spacefactor}%
1856      \spacefactor\accent@spacefactor}}
1857 \else          %<<<<<<
1858   \def\gl@accent#1#2#3{%
1859     \bbl@allowhyphens\add@accent{#2}{#3}\bbl@allowhyphens
1860     \spacefactor\sfcode`#3 }
1861 \fi            %<<<<<<
1862 %    \end{macrocode}
1864 %    The shorthands are activated in the aux file. Now, we begin
1865 %    the shorthands group.
1867 %    \begin{macrocode}
1868 \addto\shorthandsgalician{\languageshorthands{galician}}
1869 \let\noshorthandsgalician\relax
1870 %    \end{macrocode}
1872 %    First, decimal comma.
1874 %    \begin{macrocode}
1875 \def\galiciandecimal#1{\def\gl@decimal{{#1}}}
1876 \def\decimalcomma{\galiciandecimal{,}}
1877 \def\decimalpoint{\galiciandecimal{.}}
1878 \decimalcomma
1880 \gl@set@shorthand{.}
1882 \@namedef{gl@math\string.}{%
1883   \@ifnextchar\egroup
1884     {\mathchar\gl@period@code\relax}%
1885     {\gl@text@sh.}}
1887 \declare@shorthand{system}{.}{\mathchar\gl@period@code\relax}
1888 %    \end{macrocode}
1890 %    \begin{macrocode}
1891 \addto\shorthandsgalician{%
1892   \mathchardef\gl@period@code\the\mathcode`\.%
1893   \babel@savevariable{\mathcode`\.}%
1894   \mathcode`\.="8000 %
1895   \gl@activate{.}}
1897 \AtBeginDocument{%
1898   \catcode`\.=12
1899   \if@filesw
1900     \immediate\write\@mainaux{%
1901     \string\catcode`\string\.=12}%
1902   \fi}
1904 \declare@shorthand{galician}{.1}{\gl@decimal1}
1905 \declare@shorthand{galician}{.2}{\gl@decimal2}
1906 \declare@shorthand{galician}{.3}{\gl@decimal3}
1907 \declare@shorthand{galician}{.4}{\gl@decimal4}
1908 \declare@shorthand{galician}{.5}{\gl@decimal5}
1909 \declare@shorthand{galician}{.6}{\gl@decimal6}
1910 \declare@shorthand{galician}{.7}{\gl@decimal7}
1911 \declare@shorthand{galician}{.8}{\gl@decimal8}
1912 \declare@shorthand{galician}{.9}{\gl@decimal9}
1913 \declare@shorthand{galician}{.0}{\gl@decimal0}
1914 %    \end{macrocode}
1916 %     Now accents and tools
1918 %    \begin{macrocode}
1919 \gl@set@shorthand{"}
1920 \def\gl@umlaut#1{%
1921   \bbl@allowhyphens\add@accent{127}#1\bbl@allowhyphens
1922   \spacefactor\sfcode`#1 }
1923 %    \end{macrocode}
1925 %    We override the default |"| of babel, intended for german.
1927 %    \begin{macrocode}
1928 \ifes@LaTeXe   %<<<<<<
1929   \addto\shorthandsgalician{%
1930     \gl@activate{"}%
1931     \gl@activate{~}%
1932     \babel@save\bbl@umlauta
1933     \let\bbl@umlauta\gl@umlaut
1934     \expandafter\babel@save\csname OT1\string\~\endcsname
1935     \expandafter\def\csname OT1\string\~\endcsname{\gl@accent\~{126}}%
1936     \expandafter\babel@save\csname OT1\string\'\endcsname
1937     \expandafter\def\csname OT1\string\'\endcsname{\gl@accent\'{19}}}
1938 \else          %<<<<<<
1939   \addto\shorthandsgalician{%
1940     \gl@activate{"}%
1941     \gl@activate{~}%
1942     \babel@save\bbl@umlauta
1943     \let\bbl@umlauta\gl@umlaut
1944     \babel@save\~%
1945     \def\~{\gl@accent\~{126}}%
1946     \babel@save\'%
1947     \def\'#1{\if#1i\gl@accent\'{19}\i\else\gl@accent\'{19}{#1}\fi}}
1948 \fi            %<<<<<<
1949 %    \end{macrocode}
1950 % \changes{galician~4.3}{07/01/22}{Removed the shorthands "er and "ER,
1951 % they don't exist in galician.}
1952 %    \begin{macrocode}
1953 \declare@shorthand{galician}{"a}{\protect\gl@sptext{a}}
1954 \declare@shorthand{galician}{"A}{\protect\gl@sptext{A}}
1955 \declare@shorthand{galician}{"o}{\protect\gl@sptext{o}}
1956 \declare@shorthand{galician}{"O}{\protect\gl@sptext{O}}
1958 \declare@shorthand{galician}{"u}{\"u}
1959 \declare@shorthand{galician}{"U}{\"U}
1960 \declare@shorthand{galician}{"i}{\"i}
1961 \declare@shorthand{galician}{"I}{\"I}
1963 \declare@shorthand{galician}{"<}{\begin{quoting}}
1964 \declare@shorthand{galician}{">}{\end{quoting}}
1965 \declare@shorthand{galician}{"-}{\bbl@allowhyphens\-\bbl@allowhyphens}
1966 \declare@shorthand{galician}{"=}%
1967   {\bbl@allowhyphens\char\hyphenchar\font\hskip\z@skip}
1968 \declare@shorthand{galician}{"~}
1969   {\bbl@allowhyphens\discretionary{\char\hyphenchar\font}%
1970        {\char\hyphenchar\font}{\char\hyphenchar\font}\bbl@allowhyphens}
1971 \declare@shorthand{galician}{"r}
1972   {\bbl@allowhyphens\discretionary{\char\hyphenchar\font}%
1973        {}{r}\bbl@allowhyphens}
1974 \declare@shorthand{galician}{"R}
1975   {\bbl@allowhyphens\discretionary{\char\hyphenchar\font}%
1976        {}{R}\bbl@allowhyphens}
1977 \declare@shorthand{galician}{""}{\hskip\z@skip}
1978 \declare@shorthand{galician}{"/}
1979   {\setbox\z@\hbox{/}%
1980    \dimen@\ht\z@
1981    \advance\dimen@-1ex
1982    \advance\dimen@\dp\z@
1983    \dimen@.31\dimen@
1984    \advance\dimen@-\dp\z@
1985    \ifdim\dimen@>0pt
1986      \kern.01em\lower\dimen@\box\z@\kern.03em
1987    \else
1988      \box\z@
1989    \fi}
1990 \declare@shorthand{galician}{"?}
1991   {\setbox\z@\hbox{?`}%
1992    \leavevmode\raise\dp\z@\box\z@}
1993 \declare@shorthand{galician}{"!}
1994   {\setbox\z@\hbox{!`}%
1995    \leavevmode\raise\dp\z@\box\z@}
1997 \gl@set@shorthand{~}
1998 \declare@shorthand{galician}{~n}{\~n}
1999 \declare@shorthand{galician}{~N}{\~N}
2000 \declare@shorthand{galician}{~-}{%
2001   \leavevmode
2002   \bgroup
2003   \let\@sptoken\gl@dashes  % This assignation changes the
2004   \@ifnextchar-%             \@ifnextchar behaviour
2005     {\gl@dashes}%
2006     {\hbox{\char\hyphenchar\font}\egroup}}
2007 \def\gl@dashes-{%
2008   \@ifnextchar-%
2009     {\bbl@allowhyphens\hbox{---}\bbl@allowhyphens\egroup\@gobble}%
2010     {\bbl@allowhyphens\hbox{--}\bbl@allowhyphens\egroup}}
2012 \def\deactivatetilden{%
2013   \expandafter\let\csname galician@sh@\string~@n@\endcsname\relax
2014   \expandafter\let\csname galician@sh@\string~@N@\endcsname\relax}
2015 %    \end{macrocode}
2017 %    The shorthands for |quoting|.
2019 %    \begin{macrocode}
2020 \expandafter\ifx\csname XML@catcodes\endcsname\relax
2021   \addto\gl@select{%
2022     \catcode`\<\active\catcode`\>=\active
2023     \gl@quoting}
2025   \gl@set@shorthand{<}
2026   \gl@set@shorthand{>}
2028   \declare@shorthand{system}{<}{\csname normal@char\string<\endcsname}
2029   \declare@shorthand{system}{>}{\csname normal@char\string>\endcsname}
2031   \addto\shorthandsgalician{%
2032     \gl@activate{<}%
2033     \gl@activate{>}}
2034 %    \end{macrocode}
2036 %    \begin{macrocode}
2037   \ifes@LaTeXe   %<<<<<<
2038     \AtBeginDocument{%
2039       \gl@quoting
2040       \if@filesw
2041         \immediate\write\@mainaux{\string\gl@quoting}%
2042       \fi}%
2043   \fi            %<<<<<<
2045   \def\activatequoting{%
2046     \catcode`>=\active \catcode`<=\active
2047     \let\gl@quoting\activatequoting}
2048   \def\deactivatequoting{%
2049     \catcode`>=12 \catcode`<=12
2050     \let\gl@quoting\deactivatequoting}
2052   \declare@shorthand{galician}{<<}{\guillemotleft{}}
2053   \declare@shorthand{galician}{>>}{\guillemotright{}}
2056 \let\gl@quoting\relax
2057 \let\deactivatequoting\relax
2058 \let\activatequoting\relax
2059 %    \end{macrocode}
2061 %    The acute accents are stored in a macro. If |activeacute| was set
2062 %    as an option it's executed. If not is not deleted for a possible
2063 %    later use in the |cfg| file. In non \LaTeXe{} formats is always
2064 %    executed.
2065 %    
2066 %    \begin{macrocode}
2067 \def\gl@activeacute{%
2068   \gl@set@shorthand{'}%
2069   \addto\shorthandsgalician{\gl@activate{'}}%
2070   \addto\gl@reviveshorthands{\gl@restore{'}}%
2071   \addto\gl@select{\catcode`'=\active}%
2072   \declare@shorthand{galician}{'a}{\@tabacckludge'a}%
2073   \declare@shorthand{galician}{'A}{\@tabacckludge'A}%
2074   \declare@shorthand{galician}{'e}{\@tabacckludge'e}%
2075   \declare@shorthand{galician}{'E}{\@tabacckludge'E}%
2076   \declare@shorthand{galician}{'i}{\@tabacckludge'i}%
2077   \declare@shorthand{galician}{'I}{\@tabacckludge'I}%
2078   \declare@shorthand{galician}{'o}{\@tabacckludge'o}%
2079   \declare@shorthand{galician}{'O}{\@tabacckludge'O}%
2080   \declare@shorthand{galician}{'u}{\@tabacckludge'u}%
2081   \declare@shorthand{galician}{'U}{\@tabacckludge'U}%
2082   \declare@shorthand{galician}{'n}{\~n}%
2083   \declare@shorthand{galician}{'N}{\~N}%
2084   \declare@shorthand{galician}{''}{\textquotedblright}%
2085   \let\gl@activeacute\relax}
2087 \ifes@LaTeXe   %<<<<<<
2088   \@ifpackagewith{babel}{activeacute}{\gl@activeacute}{}
2089 \else          %<<<<<<
2090   \gl@activeacute
2091 \fi            %<<<<<<%
2092 %    \end{macrocode}
2094 %    And the customization. By default these macros only
2095 %    store the values and do nothing.
2097 %    \begin{macrocode}
2098 \def\gl@enumerate#1#2#3#4{%
2099   \def\gl@enum{{#1}{#2}{#3}{#4}}}
2101 \def\gl@itemize#1#2#3#4{%
2102   \def\gl@item{{#1}{#2}{#3}{#4}}}
2103 %    \end{macrocode}
2104 %    
2105 %    The part formerly in the |.lld| file comes here. It performs
2106 %    layout adaptation of \LaTeX{} to ``orthodox'' Galician rules.
2107 %    \begin{macrocode}
2108 \ifes@LaTeXe   %<<<<<<
2110 \gl@enumerate{1.}{a)}{1)}{a$'$}
2111 \def\galiciandashitems{\gl@itemize{---}{---}{---}{---}}
2112 \def\galiciansymbitems{%
2113   \gl@itemize
2114     {\leavevmode\hbox to 1.2ex
2115       {\hss\vrule height .9ex width .7ex depth -.2ex\hss}}%
2116     {\textbullet}%
2117     {$\m@th\circ$}%
2118     {$\m@th\diamond$}}
2119 \def\galiciansignitems{%
2120   \gl@itemize
2121     {\textbullet}%
2122     {$\m@th\circ$}%
2123     {$\m@th\diamond$}%
2124     {$\m@th\triangleright$}}
2125 \galiciansymbitems
2127 \def\gl@enumdef#1#2#3\@@{%
2128   \if#21%
2129     \@namedef{theenum#1}{\arabic{enum#1}}%
2130   \else\if#2a%
2131     \@namedef{theenum#1}{\emph{\alph{enum#1}}}%
2132   \else\if#2A%
2133     \@namedef{theenum#1}{\Alph{enum#1}}%
2134   \else\if#2i%
2135     \@namedef{theenum#1}{\roman{enum#1}}%
2136   \else\if#2I%
2137     \@namedef{theenum#1}{\Roman{enum#1}}%
2138   \else\if#2o%
2139     \@namedef{theenum#1}{\arabic{enum#1}\protect\gl@sptext{o}}%
2140   \fi\fi\fi\fi\fi\fi
2141   \toks@\expandafter{\csname theenum#1\endcsname}
2142   \expandafter\edef\csname labelenum#1\endcsname
2143      {\noexpand\gl@listquot\the\toks@#3}}
2145 \addto\layoutgalician{%
2146   \def\gl@enumerate##1##2##3##4{%
2147     \gl@enumdef{i}##1\@empty\@empty\@@
2148     \gl@enumdef{ii}##2\@empty\@empty\@@
2149     \gl@enumdef{iii}##3\@empty\@empty\@@
2150     \gl@enumdef{iv}##4\@empty\@empty\@@}%
2151   \def\gl@itemize##1##2##3##4{%
2152     \def\labelitemi{\gl@listquot##1}%
2153     \def\labelitemii{\gl@listquot##2}%
2154     \def\labelitemiii{\gl@listquot##3}%
2155     \def\labelitemiv{\gl@listquot##4}}%
2156   \def\p@enumii{\theenumi}%
2157   \def\p@enumiii{\theenumi\theenumii}%
2158   \def\p@enumiv{\p@enumiii\theenumiii}%
2159   \expandafter\gl@enumerate\gl@enum
2160   \expandafter\gl@itemize\gl@item
2161   \DeclareTextCommand{\guillemotleft}{OT1}{%
2162     \ifmmode\ll
2163     \else
2164       \save@sf@q{\penalty\@M
2165         \leavevmode\hbox{\usefont{U}{lasy}{m}{n}%
2166           \char40 \kern-0.19em\char40 }}%
2167     \fi}%
2168   \DeclareTextCommand{\guillemotright}{OT1}{%
2169     \ifmmode\gg
2170     \else
2171       \save@sf@q{\penalty\@M
2172           \leavevmode\hbox{\usefont{U}{lasy}{m}{n}%
2173             \char41 \kern-0.19em\char41 }}%
2174     \fi}%
2175   \def\@fnsymbol##1%
2176     {\ifcase##1\or*\or**\or***\or****\or
2177      *****\or******\else\@ctrerr\fi}%
2178   \def\@alph##1%
2179     {\ifcase##1\or a\or b\or c\or d\or e\or f\or g\or h\or i\or
2180      l\or m\or n\or \~n\or o\or p\or q\or r\or s\or t\or u\or v\or
2181      x\or z\else\@ctrerr\fi}%
2182   \def\@Alph##1%
2183     {\ifcase##1\or A\or B\or C\or D\or E\or F\or G\or H\or I\or
2184      L\or M\or N\or \~N\or O\or P\or Q\or R\or S\or T\or U\or V\or
2185      X\or Z\else\@ctrerr\fi}%
2186   \let\@afterindentfalse\@afterindenttrue
2187   \@afterindenttrue
2188   \def\@seccntformat##1{\csname the##1\endcsname.\quad}%
2189   \def\numberline##1{\hb@xt@\@tempdima{##1\if&##1&\else.\fi\hfil}}%
2190   \def\@roman##1{\protect\gl@roman{\number##1}}%
2191   \def\gl@roman##1{\protect\gl@msc{\romannumeral##1}}%
2192   \def\glromanindex##1##2{##1{\protect\gl@msc{##2}}}}
2193 %    \end{macrocode}
2194 %    
2195 %    We need to execute the following code when babel has been
2196 %    run, in order to see if |galician| is the main language.
2197 %    
2198 %    \begin{macrocode}
2199 \AtEndOfPackage{%
2200   \let\gl@activeacute\@undefined
2201   \def\bbl@tempa{galician}%
2202   \ifx\bbl@main@language\bbl@tempa
2203     \AtBeginDocument{\layoutgalician}%
2204     \addto\gl@select{%
2205       \@ifstar{\let\layoutgalician\relax}%
2206               {\layoutgalician\let\layoutgalician\relax}}%
2207   \fi
2208   \selectgalician}
2210 \fi            %<<<<<<
2211 %    \end{macrocode}
2212 %    
2213 %    After restoring the catcode of |~| and setting the minimal
2214 %    values for hyphenation, the |.ldf| is finished.
2215 %    
2216 %    \begin{macrocode}
2217 \gl@savedcatcodes
2219 \providehyphenmins{\CurrentOption}{\tw@\tw@}
2221 \ifes@LaTeXe   %<<<<<<
2222   \ldf@finish{galician}
2223 \else          %<<<<<<
2224   \gl@select
2225   \ldf@finish{galician}
2226   \csname activatequoting\endcsname
2227 \fi            %<<<<<<
2229 %</code>
2230 %    \end{macrocode}
2231 %    That's all in the main file. Now the file with
2232 %    \textsf{custom-bib} macros.
2234 %    \begin{macrocode}
2235 %<*bblbst>
2236 \def\bbland{e}
2237 \def\bbleditors{directores}     \def\bbleds{dirs.\@}
2238 \def\bbleditor{director}        \def\bbled{dir.\@}
2239 \def\bbledby{dirixido por}
2240 \def\bbledition{edici\'on}      \def\bbledn{ed.\@}
2241 \def\bbletal{e outros}
2242 \def\bblvolume{volumen}       \def\bblvol{vol.\@}
2243 \def\bblof{de}
2244 \def\bblnumber{n\'umero}        \def\bblno{n\sptext{o}}
2245 \def\bblin{en} 
2246 \def\bblpages{p\'axinas}        \def\bblpp{p\'axs.\@}
2247 \def\bblpage{p\'axina}           \def\bblp{p\'ax.\@}
2248 \def\bblchapter{cap\'itulo}     \def\bblchap{cap.\@}
2249 \def\bbltechreport{informe t\'ecnico}
2250 \def\bbltechrep{inf.\@ t\'ec.\@}
2251 \def\bblmthesis{proxecto de fin de carreira}
2252 \def\bblphdthesis{tesis doutoral}
2253 \def\bblfirst {primeira}        \def\bblfirsto {1\sptext{a}}
2254 \def\bblsecond{segunda}         \def\bblsecondo{2\sptext{a}}
2255 \def\bblthird {terceira}        \def\bblthirdo {3\sptext{a}}
2256 \def\bblfourth{cuarta}          \def\bblfourtho{4\sptext{a}}
2257 \def\bblfifth {quinta}          \def\bblfiftho {5\sptext{a}}
2258 \def\bblth{\sptext{a}}
2259 \let\bblst\bblth   \let\bblnd\bblth   \let\bblrd\bblth
2260 \def\bbljan{xaneiro}  \def\bblfeb{febreiro}  \def\bblmar{marzo}
2261 \def\bblapr{abril}  \def\bblmay{maio}     \def\bbljun{xu\~no}
2262 \def\bbljul{xullo}  \def\bblaug{agosto}   \def\bblsep{setembro}
2263 \def\bbloct{outubro}\def\bblnov{novembro}\def\bbldec{decembro}
2264 %</bblbst>
2265 %    \end{macrocode}
2267 %    The |galician| option writes a macro in the page field of
2268 %    \textit{MakeIndex} in entries with medium caps number, and they
2269 %    are rejected. This program is a preprocessor which moves this
2270 %    macro to the entry field.
2272 %    \begin{macrocode}
2273 %<*indexgl>
2274 \makeatletter
2276 \newcount\gl@converted
2277 \newcount\gl@processed
2279 \def\gl@encap{`\|}
2280 \def\gl@openrange{`\(}
2281 \def\gl@closerange{`\)}
2283 \def\gl@split@file#1.#2\@@{#1}
2284 \def\gl@split@ext#1.#2\@@{#2}
2286 \typein[\answer]{^^JArchivo que convertir^^J%
2287    (extension por omision .idx):}
2288    
2289 \@expandtwoargs\in@{.}{\answer}
2290 \ifin@
2291   \edef\gl@input@file{\expandafter\gl@split@file\answer\@@}
2292   \edef\gl@input@ext{\expandafter\gl@split@ext\answer\@@}
2293 \else
2294   \edef\gl@input@file{\answer}
2295   \def\gl@input@ext{idx}
2298 \typein[\answer]{^^JArquivo de destino^^J%
2299    (arquivo por omision: \gl@input@file.eix,^^J%
2300     extension por omision .eix):}
2301 \ifx\answer\@empty
2302   \edef\gl@output{\gl@input@file.eix}
2303 \else
2304   \@expandtwoargs\in@{.}{\answer}
2305   \ifin@
2306      \edef\gl@output{\answer}
2307   \else
2308      \edef\gl@output{\answer.eix}
2309   \fi
2312 \typein[\answer]{%
2313  ^^J?Usouse algun esquema especial de controles^^J%
2314  de MakeIndex para encap, open_range ou close_range?^^J%
2315  [s/n] (n por omision)}
2317 \if s\answer
2318   \typein[\answer]{^^JCaracter para 'encap'^^J%
2319     (\string| por omision)}
2320   \ifx\answer\@empty\else
2321     \edef\gl@encap{%
2322       `\expandafter\noexpand\csname\expandafter\string\answer\endcsname}
2323   \fi
2324   \typein[\answer]{^^JCaracter para 'open_range'^^J%
2325     (\string( por omision)}
2326   \ifx\answer\@empty\else
2327     \edef\gl@openrange{%
2328       `\expandafter\noexpand\csname\expandafter\string\answer\endcsname}
2329   \fi
2330   \typein[\answer]{^^JCaracter para 'close_range'^^J%
2331     (\string) por omision)}
2332   \ifx\answer\@empty\else
2333     \edef\gl@closerange{%
2334       `\expandafter\noexpand\csname\expandafter\string\answer\endcsname}
2335   \fi
2337    
2338 \newwrite\gl@indexfile
2339 \immediate\openout\gl@indexfile=\gl@output
2341 \newif\ifgl@encapsulated
2343 \def\gl@roman#1{\romannumeral#1 }
2344 \edef\gl@slash{\expandafter\@gobble\string\\}
2346 \def\indexentry{%
2347   \begingroup
2348   \@sanitize
2349   \gl@indexentry}
2350   
2351 \begingroup
2353 \catcode`\|=12 \lccode`\|=\gl@encap\relax
2354 \catcode`\(=12 \lccode`\(=\gl@openrange\relax
2355 \catcode`\)=12 \lccode`\)=\gl@closerange\relax
2357 \lowercase{
2358 \gdef\gl@indexentry#1{%
2359   \endgroup
2360   \advance\gl@processed\@ne
2361   \gl@encapsulatedfalse
2362   \gl@bar@idx#1|\@@
2363   \gl@idxentry}%
2366 \lowercase{
2367 \gdef\gl@idxentry#1{%
2368   \in@{\gl@roman}{#1}%
2369   \ifin@
2370     \advance\gl@converted\@ne
2371     \immediate\write\gl@indexfile{%
2372       \string\indexentry{\gl@b|\ifgl@encapsulated\gl@p\fi glromanindex%
2373         {\ifx\gl@a\@empty\else\gl@slash\gl@a\fi}}{#1}}%
2374   \else
2375     \immediate\write\gl@indexfile{%
2376       \string\indexentry{\gl@b\ifgl@encapsulated|\gl@p\gl@a\fi}{#1}}%
2377   \fi}
2380 \lowercase{
2381 \gdef\gl@bar@idx#1|#2\@@{%
2382   \def\gl@b{#1}\def\gl@a{#2}%
2383   \ifx\gl@a\@empty\else\gl@encapsulatedtrue\gl@bar@eat#2\fi}
2386 \lowercase{
2387 \gdef\gl@bar@eat#1#2|{\def\gl@p{#1}\def\gl@a{#2}%
2388   \edef\gl@t{(}\ifx\gl@t\gl@p
2389   \else\edef\gl@t{)}\ifx\gl@t\gl@p
2390   \else
2391     \edef\gl@a{\gl@p\gl@a}\let\gl@p\@empty%
2392   \fi\fi}
2395 \endgroup
2397 \input \gl@input@file.\gl@input@ext
2399 \immediate\closeout\gl@indexfile
2401 \typeout{*****************}
2402 \typeout{procesouse: \gl@input@file.\gl@input@ext }
2403 \typeout{Li'nas lidas: \the\gl@processed}
2404 \typeout{Li'nas convertidas: \the\gl@converted}
2405 \typeout{Resultado en: \gl@output}
2406 \ifnum\gl@converted>\z@
2407   \typeout{Xenere o 'indice a partir deste arquivo}
2408 \else
2409   \typeout{Non se realizou ning'un tipo de conversi'on}
2410   \typeout{P'odese xenerar o arquivo directamente^^J%
2411            de \gl@input@file.\gl@input@ext}
2413 \typeout{*****************}
2414 \@@end
2415 %</indexgl>
2416 %    \end{macrocode}
2418 % \Finale
2421 %% \CharacterTable
2422 %%  {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
2423 %%   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
2424 %%   Digits        \0\1\2\3\4\5\6\7\8\9
2425 %%   Exclamation   \!     Double quote  \"     Hash (number) \#
2426 %%   Dollar        \$     Percent       \%     Ampersand     \&
2427 %%   Acute accent  \'     Left paren    \(     Right paren   \)
2428 %%   Asterisk      \*     Plus          \+     Comma         \,
2429 %%   Minus         \-     Point         \.     Solidus       \/
2430 %%   Colon         \:     Semicolon     \;     Less than     \<
2431 %%   Equals        \=     Greater than  \>     Question mark \?
2432 %%   Commercial at \@     Left bracket  \[     Backslash     \\
2433 %%   Right bracket \]     Circumflex    \^     Underscore    \_
2434 %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
2435 %%   Right brace   \}     Tilde         \~}
2437 \endinput