% \iffalse meta-comment % % Copyright (C) 1989-1994 by Johannes Braams % All rights reserved. % For additional copyright information see further down in this file. % % This file is part of the Babel system, release 3.4 patchlevel 1 % --------------------------------------------------------------- % % This file is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. % % % IMPORTANT NOTICE: % % For error reports in case of UNCHANGED versions see readme file. % % Please do not request updates from me directly. Distribution is % done through Mail-Servers and TeX organizations. % % You are not allowed to change this file. % % You are allowed to distribute this file under the condition that % it is distributed together with all files mentioned in manifest.txt. % % If you receive only some of these files from someone, complain! % % You are NOT ALLOWED to distribute this file alone. You are NOT % ALLOWED to take money for the distribution or use of either this % file or a changed version, except for a nominal charge for copying % etc. % \fi % \CheckSum{573} %%% \iffalse =========================================================== %%% @LaTeX-style-file{ %%% author_1 = "Manuel Carriba", %%% author_2 = "Johannes L. Braams", %%% version = "1.1c %%% date = "26 June 1994", %%% time = "01:16:07 MET", %%% filename = "galician.doc", %%% address = "PTT Research %%% St. Paulusstraat 4 %%% 2264 XZ Leidschendam %%% The Netherlands", %%% telephone = "(70) 3325051", %%% FAX = "(70) 3326477", %%% checksum = "28930 712 3452 27531", %%% email_1 = "M.Carriba@dcs.shef.ac.uk (Internet)", %%% email_2 = "J.L.Braams@research.ptt.nl (Internet)", %%% codetable = "ISO/ASCII", %%% keywords = "babel, galician", %%% supported = "yes", %%% abstract = "", %%% docstring = "This file contains the galician language %%% specific definitions for the babel system. %%% %%% The checksum field above contains a CRC-16 %%% checksum as the first value, followed by the %%% equivalent of the standard UNIX wc (word %%% count) utility output of lines, words, and %%% characters. This is produced by Robert %%% Solovay's checksum utility.", %%% } %%% %%% ==================================================================== %%% \fi % \def\filename{galician.dtx} % \def\fileversion{v1.1c} % \def\filedate{1994/06/26} % % \iffalse % Babel DOCUMENT-STYLE option for LaTeX version 2e % Copyright (C) 1989 -- 1994 % by Manuel Carriba % Johannes Braams, PTT Research Neher Laboratories % % Please report errors to: J.L. Braams % J.L.Braams@research.ptt.nl % % This file is part of the babel system, it provides the source code for % the Galician language-specific file. % % The 'galician' style was originally adopted from the 'spanish' % style. % % All the macrocodes have been translated from the spanish language % into the galician language, using the spanish-galician dictionary: % % X.L. Franco Grande % Diccionario Galego-Castelan e Vocabulario Castelan-Galego % Editorial Galaixa, Vigo 1968 % % The hyphenation patterns for the galician language should be the % same as the spanish language. I've inspected some galician essays % and nothing strange seems to point out that both languages might % use different hyphenation patterns. This still has to been % proved. I will check it anyway, and hope to report more as soon % as possible. % % A small note to the months in the galician language: % % 'outono' will be used sometimes instead of 'outubro', but this word % will be used more to assign the season. % % 'nadal' will be used sometimes instead of 'decembro', but this word % will be used more for the event on Christmas. % % Manuel Carriba (M.Carriba@dcs.shef.ac.uk) % % The file spanish.sty was written by Julio Sanchez, (jsanchez@gmv.es) %<*filedriver> \documentclass{ltxdoc} \newcommand\TeXhax{\TeX hax} \newcommand\babel{{\sf babel}} \newcommand\ttbs{\char'134} \newcommand\langvar{$\langle \it lang \rangle$} \newcommand\note[1]{} \newcommand\bsl{\protect\bslash} \newcommand\Lopt[1]{{\sf #1}} \newcommand\file[1]{{\tt #1}} \begin{document} \DocInput{galician.dtx} \end{document} % %\fi % \changes{galician-1.1}{1994/02/27}{Update for LaTeX2e} % \changes{galician-1.1c}{1994/06/26}{Removed the use of \cs{filedate} % and moved identification after the loading of babel.def} % % \section{The Galician language} % % The file \file{\filename}\footnote{The file described in this % section has version number \fileversion\ and was last revised on % \filedate.} defines all the language-specific macros for the % Galician language. % % For this language the characters |'| |~| and |"| are made active. In % table~\ref{tab:galician-quote} an overview is given of their purpose. % \begin{table}[htb] % \centering % \begin{tabular}{lp{8cm}} % \verb="|= & disable ligature at this position.\\ % |"-| & an explicit hyphen sign, allowing hyphenation % in the rest of the word.\\ % |\-| & like the old |\-|, but allowing hyphenation % in the rest of the word. \\ % |'a| & an accent that allows hyphenation. Valid for all % vowels uppercase and lowercase.\\ % |'n| & a n with a tilde. This is included to % improve compatibility with FTC. Works for uppercase too.\\ % |"u| & a u with dieresis allowing hyphenation.\\ % |"a| & feminine ordinal as in % 1{\raise1ex\hbox{\underbar{\scriptsize a}}}.\\ % |"o| & masculine ordinal as in % 1{\raise1ex\hbox{\underbar{\scriptsize o}}}.\\ % |~n| & a n with tilde. Works for uppercase too. % \end{tabular} % \caption{The extra definitions made by {\tt galician.sty}} % \label{tab:galician-quote} % \end{table} % These active accents character behave according to their original % definitions if not followed by one of the characters indicated in % that table. % % \StopEventually{} % % As this file needs to be read only once, we check whether it was % read before. If it was, the command |\captionsgalician| is already % defined, so we can stop processing. If this command is undefined % we proceed with the various definitions and first show the % current version of this file. % % \begin{macrocode} \ifx\undefined\captionsgalician \else \selectlanguage{galician} \expandafter\endinput \fi % \end{macrocode} % % Tell the \LaTeX\ system who we are and write an entry on the % transcript. % \begin{macrocode} \ProvidesFile{galician.sty}[1994/06/26 v1.1c Galician support from the babel system] % \end{macrocode} % % \begin{macro}{\atcatcode} % This file, \file{galician.sty}, may have been read while \TeX\ is % in the middle of processing a document, so we have to make sure % the category code of {\tt @} is `letter' while this file is being % read. We save the category code of the @-sign in |\atcatcode| % and make it `letter'. Later the category code can be restored to % whatever it was before. % \begin{macrocode} \chardef\atcatcode=\catcode`\@ \catcode`\@=11\relax % \end{macrocode} % \end{macro} % % Now we determine whether the the common macros from the file % \file{babel.def} need to be read. We can be in one of two % situations: either another language option has been read earlier % on, in which case that other option has already read % \file{babel.def}, or {\tt galician} is the first language option % to be processed. In that case we need to read \file{babel.def} % right here before we continue. % % \begin{macrocode} \ifx\undefined\babel@core@loaded\input babel.def\relax\fi % \end{macrocode} % % Another check that has to be made, is if another language % specific file has been read already. In that case its definitions % have been activated. This might interfere with definitions this % file tries to make. Therefore we make sure that we cancel any % special definitions. This can be done by checking the existence % of the macro |\originalTeX|. If it exists we simply execute it. % \begin{macrocode} \ifx\undefined\originalTeX \let\originalTeX\empty \fi \originalTeX % \end{macrocode} % % When this file is read as an option, i.e. by the |\usepackage| % command, {\tt galician} could be an `unknown' language in which % case we have to make it known. So we check for the existence of % |\l@galician| to see whether we have to do something here. % % \changes{galician-1.1c}{1994/06/26}{Now use \cs{@nopatterns} to % produce the warning} % \begin{macrocode} \ifx\undefined\l@galician \@nopatterns{Galician} \adddialect\l@galician0\fi % \end{macrocode} % % The next step consists of defining commands to switch to (and % from) the Galician language. % % \begin{macro}{\captionsgalician} % The macro |\captionsgalician| defines all strings used % in the four standard documentclasses provided with \LaTeX. % \begin{macrocode} \addto\captionsgalician{% \def\prefacename{Preface}% <- This needs translation!! \def\refname{Referencias}% \def\abstractname{Resume}% \def\bibname{Bibliograf\'{\i}a}% \def\chaptername{Cap\'{\i}tulo}% \def\appendixname{Ap\'endice}% \def\contentsname{\'Indice Xeral}% \def\listfigurename{\'Indice de Figuras}% \def\listtablename{\'Indice de T\'aboas}% \def\indexname{\'Indice de Materias}% \def\figurename{Figura}% \def\tablename{T\'aboa}% \def\partname{Parte}% \def\enclname{Adxunto}% \def\ccname{Copia a}% \def\headtoname{A}% Is this OK?? \def\pagename{P\'axina}% \def\seename{See}% <- This needs translation!! \def\alsoname{See also}% <- This needs translation!! } % \end{macrocode} % \end{macro} % % \begin{macro}{\dategalician} % The macro |\dategalician| redefines the command |\today| to % produce Galician dates. % \begin{macrocode} \def\dategalician{% \def\today{\number\day~de\space\ifcase\month\or xaneiro\or febreiro\or marzal\or abril\or maio\or xu\~no\or xullo\or agosto\or setembro\or outubro\or novembro\or decembro\fi \space de~\number\year}} % \end{macrocode} % \end{macro} % % \begin{macro}{\extrasgalician} % \begin{macro}{\noextrasgalician} % % The macro |\extrasgalician| will perform all the extra % definitions needed for the Galician language. The macro % |\noextrasgalician| is used to cancel the actions of % |\extrasgalician|. % % \begin{macrocode} \addto\extrasgalician{% \babel@add@special\"% \babel@add@special\'% \babel@add@special\~} % \end{macrocode} % % When |\noextrasgalician| is executed they are no longer % `special'. % % \begin{macrocode} \addto\noextrasgalician{% \babel@remove@special\"% \babel@remove@special\'% \babel@remove@special\~} % \end{macrocode} % % Before the category codes of these characters can be changed % their current category codes need to be stored in order to % restore them later. % % \changes{galician-1.0.2}{13 september 93}{The definition of the % active tilde was not being restored on exit.} % \begin{macrocode} \addto\extrasgalician{% \babel@savevariable{\catcode`\"}\babel@save\active@dq \babel@savevariable{\catcode`\'}\babel@save\active@ac \babel@savevariable{\catcode`\~}\babel@save\active@til \babel@save~} % \end{macrocode} % % Now that the category codes are stored we can assign new category % codes to these three characters. % \begin{macrocode} \addto\extrasgalician{\catcode`\"\active\catcode`\'\active% \catcode`\~\active} % \end{macrocode} % And we can define them\footnote{The way that the active{\tt "} is % handled should be like it is for German and Dutch.}. % % \changes{galician-1.0.2}{23 september 93}{The accents had to be made % active during their own definition} % \begin{macrocode} \begingroup \catcode`\"\active \catcode`\~\active \catcode`\'\active \def\x{\endgroup \addto\extrasgalician{% \def'{\protect\active@ac}\let\active@ac\galician@active@ac \def~{\protect\active@til}\let\active@til\galician@active@til \def"{\protect\active@dq}\let\active@dq\galician@active@dq}} \x % \end{macrocode} % % Apart from the active characters some other macros get a new % definition. Therefore we store the current one to be able to % restore them later. % % \begin{macrocode} \addto\extrasgalician{\babel@save\"\babel@save\'% \babel@save\~\babel@save\a} % \end{macrocode} % % Now that their current meanings are saved, we can safely redefine % them. % % \begin{macrocode} \addto\extrasgalician{\let\a\galician@a} % \end{macrocode} % % When the command |\"| appears in a moving argument (such as, for % example, {\tt\ttbs section\{El Cig\ttbs"\{u\}ela\}}) an error % message might occur. The reason is that when the argument is % written to the {\tt .aux} file macros are expanded. The original % definition of |\"| is: %\begin{verbatim} % \def\"#1{{\accent"7F #1}} %\end{verbatim} % When the \file{.aux} file is processed and the \file{.toc} file % is written while the {\tt "} character is active, the expansion % of {\tt "} will replace it, resulting in a piece of code like: %\begin{verbatim} % ... re\accent \protect\active@dq ele ... %\end{verbatim} % When \TeX\ reads this it will protest about a missing number. % % To circumvent this, |\"| is redefined, using one of the support % macros for the definition of the active {\tt "}. The same goes % for the other accents. % \begin{macrocode} \addto\extrasgalician{\def\"{\protect\@umlaut}% \def\'{\protect\@acute}% \def\~{\protect\@tilde}} % \end{macrocode} % \end{macro} % \end{macro} % % % \begin{macro}{\galician@a} % The active {\tt '} interferes with the alternate accent macro % |\a| used mostly inside a |\tabbing| environment. % This is a redefinition of |\a| that solves the problem. % \begin{macrocode} \def\galician@a#1{{\if\string#1'\aftergroup\@acute \else \expandafter\aftergroup\csname a#1\endcsname\fi}} % \end{macrocode} % \end{macro} % % All the code above is necessary because we need a few extra % active characters. These characters are then used as indicated in % table~\ref{tab:galician-quote}. % % This option includes some support for working with % extended, 8-bit fonts, if available. This assumes that the user % has some macros predefined. For instance, if the user has a % |\@ac@a| macro defined, the sequence |\'a| or |'a| will both % expand to whatever |\@ac@a| is defined to expand, presumably {\tt % \'a}. % The names of these macros are the same as those in Ferguson's % ML-\TeX{} compatibility package on purpose. Using this method, % and provided that adequate hyphenation patterns exist, it is % possible to get better hyphenation for Galician than before. If % the user has a terminal able to produce these codes directly, it % is possible to do so. If the need arises to send the document to % someone who does not have such support, it is possible to % mechanically translate the document so that the receiver can make % use of it. % % To be able to define the function of the new accents, we first % define a couple of `support' macros. % % \begin{macro}{\dq} % \begin{macro}{\til} % We save the original double quote character in |\dq| to keep it % available. We keep in |\til| the original tilde character. We % rely on |\rq| to contain the right quote. % \changes{galician-1.0.2}{23 september 93}{The active tilde was not % expanding to a correct unbreakable space when not followed by n.} % \begin{macrocode} \begingroup \catcode`\"12 \edef\x{\endgroup \def\noexpand\dq{"} \def\noexpand\til{~}} \x % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\dieresis} % \begin{macro}{\textacute} % \changes{v1.1c}{1994/06/26}{Renamed from \cs{acute} as that % is a \cs{mathaccent}} % \begin{macro}{\texttilde} % \changes{v1.1c}{1994/06/26}{Renamed from \cs{tilde} as that % is a \cs{mathaccent}} % The original definition of |\"| is stored as |\dieresis|, because % the definition of |\"| might not be the default plain \TeX\ % one. If the user uses {\sc PostScript} fonts with the Adobe font % encoding the {\tt "} character is not in the same position as in % Knuth's font encoding. In this case |\"| will not be defined as % |\accent"7F #1|, but as |\accent'310 #1|. Something similar % happens when using fonts that follow the Cork encoding. For this % reason we save the definition of |\"| and use that in the % definition of other macros. We do likewise for |\'| and |\~|. % \begin{macrocode} \let\dieresis\" \let\textacute\' \let\texttilde\~ % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\@umlaut} % \begin{macro}{\@acute} % \begin{macro}{\@tilde} % If the user setup has extended fonts, the Ferguson macros are % required to be defined. We check for their existance and, if % defined, expand to whatever they are defined to. For instance, % |\'a| would check for the existance of a |\@ac@a| macro. It is % assumed to expand to the code of the accented letter. If it is % not defined, we assume that no extended codes are available and % expand to the original definition but enabling hyphenation beyond % the accent. This is as best as we can do. It is better if you % have extended fonts or ML-\TeX{} because the hyphenation % algorithm can work on the whole word. The following macros are % directly derived from ML-\TeX{}.\footnote{A problem is perceived % here with these macros when used in a multilingual environment % where extended hyphenation patterns are available for some but % not all languages. Assume that no extended patterns exist at some % site for French and that {\tt french.sty} would adopt this scheme % too. In that case, \mbox{\tt 'e} in French would produce the % combined accented letter, but hyphenation around it would be % suppressed. Both language options would need an independent % method to know whether they have extended patterns available. The % precise impact of this problem and the possible solutions are % under study.} % % \begin{macrocode} \def\@umlaut#1{\expandafter\ifx\csname @um@\ifx #1\i \dotlessi% \else #1\fi\endcsname\relax% \allowhyphens\dieresis{#1}\allowhyphens \else\csname @um@#1\endcsname\fi} \def\@acute#1{\expandafter\ifx\csname @ac@\ifx #1\i \dotlessi% \else #1\fi\endcsname\relax% \allowhyphens\textacute{#1}\allowhyphens% \else\csname @ac@#1\endcsname\fi} \def\@tilde#1{\expandafter\ifx\csname @til@\ifx #1\i \dotlessi% \else #1\fi\endcsname\relax% \allowhyphens\texttilde{#1}\allowhyphens% \else\csname @til@#1\endcsname\fi} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\galician@active@dq} % Now we are ready for the definition of the new command % |\galician@active@dq|. It reads the next token and performs some % appropriate action. If no special action is defined, it will % produce an umlaut accent on top of argument 1. It is implemented % using a number of macros. The first macro just looks at the next % token and invokes another macro. % % \begin{macrocode} \def\galician@active@dq{\futurelet\next\first@galician@active@dq} % \end{macrocode} % % \begin{macro}{\first@galician@active@dq} % This macro makes {\tt "} behave appropriately in a number of cases. % % \begin{macrocode} \def\first@galician@active@dq{% \begingroup \ifx \next\bgroup \aftergroup\dq \else\ifx \next\egroup \aftergroup\dq \else\expandafter\ifx \space\next \aftergroup\dq \else\aftergroup\second@galician@active@dq \fi\fi\fi \endgroup} % \end{macrocode} % \end{macro} % % \begin{macro}{\second@galician@active@dq} % This macro does the rest\footnote{The code for the ordinals was % taken from the answer provided by Raymond Chen ({\tt % raymond@math.berkeley.edu}) to a question by Joseph Gil ({\tt % yogi@cs.ubc.ca}) in {\tt comp.text.tex}.}. % % \begin{macrocode} \def\second@galician@active@dq#1{% \ifx #1-\allowhyphens-\allowhyphens \else\ifx #1|\discretionary{-}{}{\kern.03em}% \else\ifx #1u\@umlaut{u}% \else\ifx #1U\@umlaut{U}% \else\ifx #1o{\raise1ex\hbox{\underbar{\scriptsize o}}}% \else\ifx #1a{\raise1ex\hbox{\underbar{\scriptsize a}}}% \else \dq #1\fi\fi\fi\fi\fi\fi} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\galician@active@ac} % We do likewise for the acute accent. There is a problem in this % case. The |\mathcode| of {\tt '} is |"8000| that makes it sort of % active, but not quite. The following method, using part of the % definition in plain\TeX{} seems to work. First we check if we are % in math mode {\em before\/} consuming the parameter. % % \begin{macrocode} \def\galician@active@ac{{% \ifmmode\aftergroup\galician@math@ac \else\aftergroup\first@galician@active@ac\fi}} % \end{macrocode} % % \begin{macro}{\galician@math@ac} % A |\mathcode| of |"8000| means that the character should be % treated inside math mode as if it were active. This trick is % used in plain\TeX{} to make things like $a'''$ work. The % following code can be found in plain\TeX: % \begin{verbatim} % \gdef'{^\bgroup\prim@s} % \end{verbatim} % However, the coding of |\prim@s| is done under the assumption % that {\tt '} is not active. The following macro is a rewrite of % the code above, that makes the assumption true. The expansion of % |\prim@s| will provide the apparently missing |\egroup| that will % revert the effect of the |\catcode| change. % % \begin{macrocode} \def\galician@math@ac{^\bgroup\catcode`\'=12\prim@s} % \end{macrocode} % \end{macro} % % \begin{macro}{\first@galician@active@ac} % This macro just looks at the next token and invokes another % macro. % % \begin{macrocode} \def\first@galician@active@ac{\futurelet\next\second@galician@active@ac} % \end{macrocode} % \end{macro} % % \begin{macro}{\second@galician@active@ac} % This macro makes {\tt '} behave appropriately in a number of % cases. % % \begin{macrocode} \def\second@galician@active@ac{% \begingroup \ifx \next\bgroup \aftergroup\rq \else\ifx \next\egroup \aftergroup\rq \else\expandafter\ifx \space\next \aftergroup\rq \else\aftergroup\third@galician@active@ac \fi\fi\fi \endgroup} % \end{macrocode} % \end{macro} % % \begin{macro}{\third@galician@active@ac} % This macro does the rest. % % \begin{macrocode} \def\third@galician@active@ac#1{% \ifx #1a\@acute{a}% \else\ifx #1e\@acute{e}% \else\ifx #1i\@acute{\dotlessi}% \else\ifx #1o\@acute{o}% \else\ifx #1u\@acute{u}% \else\ifx #1A\@acute{A}% \else\ifx #1E\@acute{E}% \else\ifx #1I\@acute{I}% \else\ifx #1O\@acute{O}% \else\ifx #1U\@acute{U}% \else\ifx #1n\@tilde{n}% FTC compatibility \else\ifx #1N\@tilde{N}% FTC compatibility \else\if\string#1'\rq\rq% Funny, this one gets the ligature right \else\rq #1\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\galician@active@til} % This one is simple. If the user really requires an unbreakable % space before an {\tt n}, it can be got typing |~{}n|, for % instance. % % \begin{macrocode} \def\galician@active@til{\futurelet\next\first@galician@active@til} % \end{macrocode} % % \begin{macro}{\first@galician@active@til} % This macro does the rest. It is very common for |~| to be % followed by a control sequence, |\ref| for instance. The coding % below\footnote{Inspired on some code by Pablo A. Straub.} behaves % well in such cases. % \changes{galician-1.0.2}{23 september 93}{The active tilde was not % expanding to a correct unbreakable space when not followed by n.} % \begin{macrocode} \def\first@galician@active@til{% \begingroup \ifx \next\bgroup \aftergroup\til \else\ifx \next\egroup \aftergroup\til \else\expandafter\ifx \space\next \aftergroup\til \else\ifx n\next \@tilde{n}\aftergroup\@gobble \else\ifx N\next \@tilde{N}\aftergroup\@gobble \else\aftergroup\til \fi\fi\fi\fi\fi \endgroup} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\dotlessi} % To properly support all the configurations required, we need to % have some macro that gives us the position that the dotless `i' % occupies in our fonts, that is, the equivalent of |\i| that % cannot be used inside a |\csname| as would be desirable. % % The following solution was suggested by Raymond Chen. After this % code sequence, |\dotlessi| can be used to construct a control % sequence name. % % \begin{macrocode} \def\thechar#1{{\uccode`!=#1\relax\uppercase{\gdef\next{!}}}} \thechar\i\global\let\dotlessi\next % \end{macrocode} % \end{macro} % % \begin{macro}{\dotlessi} % To properly support all the configurations required, we need to % have some macro that gives us the position that the dotless `i' % occupies in our fonts, that is, the equivalent of |\i| that % cannot be used inside a |\csname| as would be desirable. % % The following solution was suggested by Raymond Chen. After this % code sequence, |\dotlessi| can be used to construct a control % sequence name. % % \begin{macrocode} \def\thechar#1{{\uccode`!=#1\relax\uppercase{\gdef\next{!}}}} \thechar\i\global\let\dotlessi\next % \end{macrocode} % \end{macro} % % \begin{macro}{\-} % % All that is left now is the redefinition of |\-|. The new version % of |\-| should indicate an extra hyphenation position, while % allowing other hyphenation positions to be generated % automatically. The standard behaviour of \TeX\ in this respect is % unfortunate for Galician but not as much as for Dutch or German, % where long compound words are quite normal and all one needs is a % means to indicate an extra hyphenation position on top of the % ones that \TeX\ can generate from the hyphenation % patterns. However, the average length of words in Galician makes % this desirable and so it is kept here. % % \begin{macrocode} \def\-{\allowhyphens\discretionary{-}{}{}\allowhyphens} % \end{macrocode} % \end{macro} % % Our last action is to activate the commands we have just defined, % by calling the macro |\selectlanguage|. Next the \babel{} macro % |\selectlanguage| is used to activate the definitions for % Galician. % % \begin{macrocode} \selectlanguage{galician} % \end{macrocode} % % Finally, the category code of {\tt @} is reset to its original % value. The macrospace used by |\atcatcode| is freed. % % \begin{macrocode} \catcode`\@|\atcatcode \let\atcatcode\relax % \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