From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- .../contrib/babel-contrib/catalan/catalan.dtx | 712 +++++++++++++++++++++ .../contrib/babel-contrib/catalan/catalan.ins | 148 +++++ .../contrib/babel-contrib/catalan/catalan.pdf | Bin 0 -> 209300 bytes 3 files changed, 860 insertions(+) create mode 100644 macros/latex/contrib/babel-contrib/catalan/catalan.dtx create mode 100644 macros/latex/contrib/babel-contrib/catalan/catalan.ins create mode 100644 macros/latex/contrib/babel-contrib/catalan/catalan.pdf (limited to 'macros/latex/contrib/babel-contrib/catalan') diff --git a/macros/latex/contrib/babel-contrib/catalan/catalan.dtx b/macros/latex/contrib/babel-contrib/catalan/catalan.dtx new file mode 100644 index 0000000000..b8185af4df --- /dev/null +++ b/macros/latex/contrib/babel-contrib/catalan/catalan.dtx @@ -0,0 +1,712 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 Johannes L. Braams and any individual authors +% listed elsewhere in this file. All rights reserved. +% +% This file is part of the Babel system. +% -------------------------------------- +% +% It may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work is Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% The list of derived (unpacked) files belonging to the distribution +% and covered by LPPL is defined by the unpacking scripts (with +% extension .ins) which are part of the distribution. +% \fi +% \CheckSum{517} +% +% \iffalse +% Tell the \LaTeX\ system who we are and write an entry on the +% transcript. +%<*dtx> +\ProvidesFile{catalan.dtx} +% +%\ProvidesLanguage{catalan} +%\fi +%\ProvidesFile{catalan.dtx} + [2005/03/29 v2.2p Catalan support from the babel system] +%\iffalse +%% File `catalan.dtx' +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 - 2005 +%% by Johannes Braams, TeXniek +% +%% Catalan Language Definition File +%% Copyright (C) 1991 - 2005 +%% by Goncal Badenes +%% Johannes Braams, TeXniek +% +%% Please report errors to: J.L. Braams babel at braams.cistron.nl +%% +% This file is part of the babel system, it provides the source +% code for the Catalan language definition file. +% This file was developped out of spanish.sty and suggestions by +% Goncal Badenes and Joerg Knappen +% . +% +% The file spanish.sty was written by Julio Sanchez, +% (jsanchez@gmv.es) The code for the catalan language has been +% removed and now is in this file. +%<*filedriver> +\documentclass{ltxdoc} +\newcommand*\TeXhax{\TeX hax} +\newcommand*\babel{\textsf{babel}} +\newcommand*\langvar{$\langle \it lang \rangle$} +\newcommand*\note[1]{} +\newcommand*\Lopt[1]{\textsf{#1}} +\newcommand*\file[1]{\texttt{#1}} +\begin{document} + \DocInput{catalan.dtx} +\end{document} +% +%\fi +% +% \GetFileInfo{catalan.dtx} +% +% \changes{catalan-2.0b}{1993/09/23}{Incorporated the changes from +% \file{spanish.sty}} +% \changes{catalan-2.1}{1994/02/27}{Update for \LaTeXe} +% \changes{catalan-2.1d}{1994/06/26}{Removed the use of \cs{filedate} +% and moved identification after the loading of \file{babel.def}} +% \changes{catalan-2.2b}{1995/07/04}{Made the activation of the grave +% and acute accents optional} +% \changes{catalan-2.2c}{1995/07/08}{Removed the use of the tilde for +% catalan} +% \changes{catalan-2.2f}{1996/07/13}{Replaced \cs{undefined} with +% \cs{@undefined} and \cs{empty} with \cs{@empty} for consistency +% with \LaTeX} +% \changes{catalan-2.2g}{1996/10/10}{Moved the definition of +% \cs{atcatcode} right to the beginning.} +% \changes{catalan-2.2k}{1999/05/05}{A wrong \cs{changes} entry made +% typesetting impossible} +% +% \section{The Catalan 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 macro's for the +% Catalan language. +% +% For this language only the double quote character (|"|) is made +% active by default. In table~\ref{tab:catalan-quote-def} an +% overview is given of the new macros defined and the new meanings +% of |"|. Additionally to that, the user can explicitly activate +% the acute accent or apostrophe (|'|) and/or the grave accent +% (|`|) characters by using the \Lopt{activeacute} and +% \Lopt{activegrave} options. In that case, the definitions shown +% in table~\ref{tab:catalan-quote-opt} also become +% available\footnote{Please note that if the acute accent character +% is active, it is necessary to take special care of coding +% apostrophes in a way which cannot be confounded with +% accents. Therefore, it is necessary to type \texttt{l'\{\}estri} +% instead of \texttt{l'estri}.}. +% +% \begin{table}[htb] +% \centering +% \begin{tabular}{lp{8cm}} +% |\l.l| & geminated-l digraph (similar to +% l$\cdot$l). |\L.L| produces the uppercase version.\\ +% |\lgem| & geminated-l digraph (similar to +% l$\cdot$l). |\Lgem| produces the uppercase version.\\ +% |\up| & Macro to help typing raised ordinals, like {1\raise +% 1ex\hbox{\small er}}. Takes one argument.\\ +% |\-| & like the old |\-|, but allowing hyphenation +% in the rest of the word. \\ +% |"i| & i with diaeresis, allowing hyphenation +% in the rest of the word. Valid for the following vowels: +% i, u (both lowercase and uppercase).\\ +% |"c| & c-cedilla (\c{c}). Valid for both uppercase and +% lowercase c.\\ +% |"l| & geminated-l digraph (similar to +% l$\cdot$l). Valid for both uppercase and lowercase l.\\ +% |"<| & French left double quotes (similar to $<<$).\\ +% |">| & French right double quotes (similar to $>>$).\\ +% |"-| & explicit hyphen sign, allowing hyphenation +% in the rest of the word.\\ +% \verb="|= & disable ligature at this position. +% \end{tabular} +% \caption{Extra definitions made by file \file{catalan.ldf} +% (activated by default)} +% \label{tab:catalan-quote-def} +% \end{table} +% +% \begin{table}[htb] +% \centering +% \begin{tabular}{lp{8cm}} +% |'e| & acute accented a, allowing hyphenation +% in the rest of the word. Valid for the following +% vowels: e, i, o, u (both lowercase and uppercase).\\ +% |`a| & grave accented a, allowing hyphenation +% in the rest of the word. Valid for the following +% vowels: a, e, o (both lowercase and uppercase). +% \end{tabular} +% \caption{Extra definitions made by file \file{catalan.ldf} +% (activated only when using the options \Lopt{activeacute} and +% \Lopt{activegrave})} +% \label{tab:catalan-quote-opt} +% \end{table} +% These active accents characters behave according to their original +% definitions if not followed by one of the characters indicated in +% that table. +% +% \StopEventually{} +% +% \changes{catalan-2.0}{1993/07/11}{Removed code to load +% \file{latexhax.com}} +% +% The macro |\LdfInit| takes care of preventing that this file is +% loaded more than once, checking the category code of the +% \texttt{@} sign, etc. +% \changes{catalan-2.2g}{1996/11/02}{Now use \cs{LdfInit} to perform +% initial checks} +% \begin{macrocode} +%<*code> +\LdfInit{catalan}\captionscatalan +% \end{macrocode} +% +% When this file is read as an option, i.e. by the |\usepackage| +% command, \texttt{catalan} could be an `unknown' language in which +% case we have to make it known. So we check for the existence of +% |\l@catalan| to see whether we have to do something here. +% +% \changes{catalan-2.1d}{1994/06/26}{Now use \cs{@nopatterns} to +% produce the warning} +% \begin{macrocode} +\ifx\l@catalan\@undefined + \@nopatterns{Catalan} + \adddialect\l@catalan0 +\fi +% \end{macrocode} +% +% The next step consists of defining commands to switch to (and +% from) the Catalan language. +% +% \begin{macro}{\catalanhyphenmins} +% This macro is used to store the correct values of the hyphenation +% parameters |\lefthyphenmin| and |\righthyphenmin|. +% \changes{catalan-2.2n}{2001/02/19}{Set the hyphenation parameters +% both to two as required by \texttt{cahyph.tex}} +% \begin{macrocode} +\providehyphenmins{catalan}{\tw@\tw@} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\captionscatalan} +% The macro |\captionscatalan| defines all strings used +% in the four standard documentclasses provided with \LaTeX. +% \changes{catalan-1.1}{1993/07/11}{\cs{headpagename} should be +% \cs{pagename}} +% \changes{catalan-2.0}{1993/07/11}{Added some names} +% \changes{catalan-2.1d}{1994/11/09}{Added a few missing translations} +% \changes{catalan-2.2b}{1995/07/03}{Added \cs{proofname} for +% AMS-\LaTeX} +% \changes{catalan-2.2d}{1995/07/10}{added translation of Proof} +% \changes{catalan-2.2d}{1995/11/15}{Translations revised} +% \changes{catalan-2.2m}{2000/09/19}{Added \cs{glossaryname}} +% \changes{catalan-2.2p}{2003/11/17}{Inserted translation for +% Glossary} +% \begin{macrocode} +\addto\captionscatalan{% + \def\prefacename{Pr\`oleg}% + \def\refname{Refer\`encies}% + \def\abstractname{Resum}% + \def\bibname{Bibliografia}% + \def\chaptername{Cap\'{\i}tol}% + \def\appendixname{Ap\`endix}% + \def\contentsname{\'Index}% + \def\listfigurename{\'Index de figures}% + \def\listtablename{\'Index de taules}% + \def\indexname{\'Index alfab\`etic}% + \def\figurename{Figura}% + \def\tablename{Taula}% + \def\partname{Part}% + \def\enclname{Adjunt}% + \def\ccname{C\`opies a}% + \def\headtoname{A}% + \def\pagename{P\`agina}% + \def\seename{Vegeu}% + \def\alsoname{Vegeu tamb\'e}% + \def\proofname{Demostraci\'o}% + \def\glossaryname{Glossari}% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\datecatalan} +% The macro |\datecatalan| redefines the command |\today| to +% produce Catalan dates. Months are written in +% lowercase\footnote{This seems to be the common practice. See for +% example: E.~Coromina, \emph{El 9 Nou: Manual de redacci\'o i +% estil}, Ed.~Eumo, Vic, 1993}. +% \changes{catalan-2.2b}{1995/06/18}{Month names in lowercase} +% \changes{catalan-2.2i}{1997/10/01}{Use \cs{edef} to define \cs{today} +% to save memory} +% \changes{catalan-2.2i}{1998/03/28}{use \cs{def} instead of \cs{edef}} +% \begin{macrocode} +\def\datecatalan{% + \def\today{\number\day~\ifcase\month\or + de gener\or de febrer\or de mar\c{c}\or d'abril\or de maig\or + de juny\or de juliol\or d'agost\or de setembre\or d'octubre\or + de novembre\or de desembre\fi + \space de~\number\year}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\extrascatalan} +% \changes{catalan-2.0}{1993/07/11}{Macro completely rewritten} +% \changes{catalan-2.2a}{1995/03/11}{Handling of active characters +% completely rewritten} +% +% \begin{macro}{\noextrascatalan} +% \changes{catalan-2.0}{1993/07/11}{Macro completely rewritten} +% +% The macro |\extrascatalan| will perform all the extra definitions +% needed for the Catalan language. The macro |\noextrascatalan| is +% used to cancel the actions of |\extrascatalan|. +% +% \changes{catalan-2.2e}{1995/11/10}{Now give the apostrophe a +% lowercase code} +% To improve hyphenation we give the grave character (\texttt{'}) a +% non-zero lower case code; when we do that \TeX\ will find more +% breakpoints in words that contain this character in its r\^ole as +% apostrophe. +% \begin{macrocode} +\addto\extrascatalan{% + \lccode`'=`'} +\addto\noextrascatalan{% + \lccode`'=0} +% \end{macrocode} +% +% For Catalan, some characters are made active or are redefined. In +% particular, the \texttt{"} character receives a new meaning; this +% can also happen for the \texttt{'} character and the \texttt{`} +% character when the options \Lopt{activegrave} and/or +% \Lopt{activeacute} are specified. +% +% \changes{catalan-2.2b}{1995/07/07}{Make activating the accent +% characters optional} +% \changes{catalan-2.2e}{1995/08/17}{Need to split up the +% \cs{@ifpackagewith} statements} +% \begin{macrocode} +\addto\extrascatalan{\languageshorthands{catalan}} +\initiate@active@char{"} +\addto\extrascatalan{\bbl@activate{"}} +% \end{macrocode} +% Because the grave character is being used in constructs such as +% |\catcode``=\active| it needs to have it's original category code%'' +% when the auxiliary file is being read. Note that this file is +% read twice, once at the beginning of the document; then there is +% no problem; but the second time it is read at the end of the +% document to check whether any labels changes. It's this second +% time round that the actived grave character leads to error +% messages. +% \changes{catalan-2.2l}{1999/11/29}{Make sure that the grave accent +% has catcode 12 \emph{before} it is made \cs{active}} +% \begin{macrocode} +\@ifpackagewith{babel}{activegrave}{% + \AtBeginDocument{% + \if@filesw\immediate\write\@auxout{\catcode096=12}\fi} + \initiate@active@char{`}% + }{} +\@ifpackagewith{babel}{activegrave}{% + \addto\extrascatalan{\bbl@activate{`}}% + }{} +\@ifpackagewith{babel}{activeacute}{% + \initiate@active@char{'}% + }{} +\@ifpackagewith{babel}{activeacute}{% + \addto\extrascatalan{\bbl@activate{'}}% + }{} +% \end{macrocode} +% Now make sure that the characters that have been turned into +% shorthanfd characters expand to `normal' characters outside the +% catalan environment. +% \changes{catalan-2.2l}{1999/12/16}{Don't forget do deactivate the +% shorthands} +% \begin{macrocode} +\addto\noextrascatalan{\bbl@deactivate{"}} +\@ifpackagewith{babel}{activegrave}{% + \addto\noextrascatalan{\bbl@deactivate{`}}}{} +\@ifpackagewith{babel}{activeacute}{% + \addto\noextrascatalan{\bbl@deactivate{'}}}{} +% \end{macrocode} +% +% \changes{catalan-2.2a}{1995/03/11}{All the code for handling active +% characters is now moved to \file{babel.def}} +% +% Apart from the active characters some other macros get a new +% definition. Therefore we store the current ones to be able +% to restore them later. +% When their current meanings are saved, we can safely redefine +% them. +% +% We provide new definitions for the accent macros when one or +% both of the options \Lopt{activegrave} or \Lopt{activeacute} +% were specified. +% +% \changes{catalan-2.2h}{1997/01/08}{Added some comment signs to +% prevent unwanted spaces in the output} +% \begin{macrocode} +\addto\extrascatalan{% + \babel@save\"% + \def\"{\protect\@umlaut}}% +\@ifpackagewith{babel}{activegrave}{% + \babel@save\`% + \addto\extrascatalan{\def\`{\protect\@grave}} + }{} +\@ifpackagewith{babel}{activeacute}{% + \babel@save\'% + \addto\extrascatalan{\def\'{\protect\@acute}} + }{} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% All the code above is necessary because we need a few extra +% active characters. These characters are then used as indicated in +% tables~\ref{tab:catalan-quote-def} +% and~\ref{tab:catalan-quote-opt}. +% +% \begin{macro}{\dieresis} +% \begin{macro}{\textacute} +% \changes{catalan-2.1d}{1994/06/26}{Renamed from \cs{acute} as that +% is a \cs{mathaccent}} +% \begin{macro}{\textgrave} +% +% The original definition of |\"| is stored as |\dieresis|, because +% the definition of |\"| might not be the default plain \TeX\ +% one. If the user uses \textsc{PostScript} fonts with the Adobe +% font encoding the \texttt{"} 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\" +\@ifpackagewith{babel}{activegrave}{\let\textgrave\`}{} +\@ifpackagewith{babel}{activeacute}{\let\textacute\'}{} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@umlaut} +% \begin{macro}{\@acute} +% \begin{macro}{\@grave} +% We check the encoding and if not using T1, we make the accents +% expand but enabling hyphenation beyond the accent. If this is the +% case, not all break positions will be found in words that contain +% accents, but this is a limitation in \TeX. An unsolved problem +% here is that the encoding can change at any time. The definitions +% below are made in such a way that a change between two 256-char +% encodings are supported, but changes between a 128-char and a +% 256-char encoding are not properly supported. We check if T1 is +% in use. If not, we will give a warning and proceed redefining the +% accent macros so that \TeX{} at least finds the breaks that are +% not too close to the accent. The warning will only be printed to +% the log file. +% +% \begin{macrocode} +\ifx\DeclareFontShape\@undefined + \wlog{Warning: You are using an old LaTeX} + \wlog{Some word breaks will not be found.} + \def\@umlaut#1{\allowhyphens\dieresis{#1}\allowhyphens} + \@ifpackagewith{babel}{activeacute}{% + \def\@acute#1{\allowhyphens\textacute{#1}\allowhyphens}}{} + \@ifpackagewith{babel}{activegrave}{% + \def\@grave#1{\allowhyphens\textgrave{#1}\allowhyphens}}{} +\else + \ifx\f@encoding\bbl@t@one + \let\@umlaut\dieresis + \@ifpackagewith{babel}{activeacute}{% + \let\@acute\textacute}{} + \@ifpackagewith{babel}{activegrave}{% + \let\@grave\textgrave}{} + \else + \wlog{Warning: You are using encoding \f@encoding\space + instead of T1.} + \wlog{Some word breaks will not be found.} + \def\@umlaut#1{\allowhyphens\dieresis{#1}\allowhyphens} + \@ifpackagewith{babel}{activeacute}{% + \def\@acute#1{\allowhyphens\textacute{#1}\allowhyphens}}{} + \@ifpackagewith{babel}{activegrave}{% + \def\@grave#1{\allowhyphens\textgrave{#1}\allowhyphens}}{} + \fi +\fi +% \end{macrocode} +% 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 \file{french.sty} would adopt this +% scheme too. In that case, \mbox{\texttt{'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.} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \changes{catalan-2.2a}{1995/03/14}{All the code to deal with active +% characters is now in \file{babel.def}} +% +% Now we can define our shorthands: the diaeresis and ``ela +% geminada'' support, +% \begin{macrocode} +\declare@shorthand{catalan}{"i}{\textormath{\@umlaut\i}{\ddot\imath}} +\declare@shorthand{catalan}{"l}{\lgem{}} +\declare@shorthand{catalan}{"u}{\textormath{\@umlaut u}{\ddot u}} +\declare@shorthand{catalan}{"I}{\textormath{\@umlaut I}{\ddot I}} +\declare@shorthand{catalan}{"L}{\Lgem{}} +\declare@shorthand{catalan}{"U}{\textormath{\@umlaut U}{\ddot U}} +% \end{macrocode} +% cedille, +% \changes{catalan-2.2c}{1995/07/08}{cedile now produced by double +% quote shorthand} +% \begin{macrocode} +\declare@shorthand{catalan}{"c}{\textormath{\c c}{^{\prime} c}} +\declare@shorthand{catalan}{"C}{\textormath{\c C}{^{\prime} C}} +% \end{macrocode} +% `french' quote characters, +% \changes{catalan-2.2c}{1995/07/08}{Added shorthands for guillemets} +% \changes{catalan-2.2i}{1997/04/03}{Removed empty groups after +% guillemot characters} +% \begin{macrocode} +\declare@shorthand{catalan}{"<}{% + \textormath{\guillemotleft}{\mbox{\guillemotleft}}} +\declare@shorthand{catalan}{">}{% + \textormath{\guillemotright}{\mbox{\guillemotright}}} +% \end{macrocode} +% grave accents, +% \changes{catalan-2.2e}{1996/03/05}{Added `{}` as an axtra shorthand} +% \begin{macrocode} +\@ifpackagewith{babel}{activegrave}{% + \declare@shorthand{catalan}{`a}{\textormath{\@grave a}{\grave a}} + \declare@shorthand{catalan}{`e}{\textormath{\@grave e}{\grave e}} + \declare@shorthand{catalan}{`o}{\textormath{\@grave o}{\grave o}} + \declare@shorthand{catalan}{`A}{\textormath{\@grave A}{\grave A}} + \declare@shorthand{catalan}{`E}{\textormath{\@grave E}{\grave E}} + \declare@shorthand{catalan}{`O}{\textormath{\@grave O}{\grave O}} + \declare@shorthand{catalan}{``}{\textquotedblleft}%'' + }{} +% \end{macrocode} +% acute accents, +% \changes{catalan-2.2b}{1995/07/03}{Changed mathmode definition of +% acute shorthands to expand to a single prime followed by the next +% character in the input} +% \changes{catalan-2.2e}{1995/09/05}{Added vertical bar as argument to +% active acute} +% \begin{macrocode} +\@ifpackagewith{babel}{activeacute}{% + \declare@shorthand{catalan}{'a}{\textormath{\@acute a}{^{\prime} a}} + \declare@shorthand{catalan}{'e}{\textormath{\@acute e}{^{\prime} e}} + \declare@shorthand{catalan}{'i}{\textormath{\@acute\i{}}{^{\prime} i}} + \declare@shorthand{catalan}{'o}{\textormath{\@acute o}{^{\prime} o}} + \declare@shorthand{catalan}{'u}{\textormath{\@acute u}{^{\prime} u}} + \declare@shorthand{catalan}{'A}{\textormath{\@acute A}{^{\prime} A}} + \declare@shorthand{catalan}{'E}{\textormath{\@acute E}{^{\prime} E}} + \declare@shorthand{catalan}{'I}{\textormath{\@acute I}{^{\prime} I}} + \declare@shorthand{catalan}{'O}{\textormath{\@acute O}{^{\prime} O}} + \declare@shorthand{catalan}{'U}{\textormath{\@acute U}{^{\prime} U}} + \declare@shorthand{catalan}{'|}{% + \textormath{\csname normal@char\string'\endcsname}{^{\prime}}} +% \end{macrocode} +% the acute accent, +% \changes{catalan-2.2c}{1995/07/08}{Added '{}' as an axtra shorthand, +% removed 'n as a shorthand} +% \begin{macrocode} + \declare@shorthand{catalan}{''}{% + \textormath{\textquotedblright}{\sp\bgroup\prim@s'}} + }{} +% \end{macrocode} +% and finally, some support definitions +% \begin{macrocode} +\declare@shorthand{catalan}{"-}{\nobreak-\bbl@allowhyphens} +\declare@shorthand{catalan}{"|}{% + \textormath{\nobreak\discretionary{-}{}{\kern.03em}% + \allowhyphens}{}} +% \end{macrocode} +% +% \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 Catalan 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 Catalan makes +% this desirable and so it is kept here. +% +% \begin{macrocode} +\addto\extrascatalan{% + \babel@save{\-}% + \def\-{\bbl@allowhyphens\discretionary{-}{}{}\bbl@allowhyphens}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\lgem} +% \begin{macro}{\Lgem} +% \changes{catalan-2.2b}{1995/06/18}{Added support for typing the +% catalan ``ela geminada'' with the macros \cs{lgem} and \cs{Lgem}} +% \changes{catalan-2.2f}{1996/09/20}{Added a check for math mode as +% the use of \cs{lgem} and \cs{Lgem} in math mode is not sensible.} +% +% Here we define a macro for typing the catalan ``ela geminada'' +% (geminated l). The macros |\lgem| and |\Lgem| have been chosen +% for its lowercase and uppercase representation, +% respectively\footnote{The macro names \cs{ll} and \cs{LL} were +% not taken because of the fact that \cs{ll} is already used in +% mathematical mode.}. +% +% The code used in the actual macro used is a combination of the +% one proposed by Feruglio and Fuster\footnote{G.~Valiente and +% R.~Fuster, Typesetting Catalan Texts with \TeX, \emph{TUGboat} +% \textbf{14}(3), 1993.} and the proposal\footnote{G. Valiente, +% Modern Catalan Typographical Conventions, \emph{TUGboat} +% \textbf{16}(3), 1995.} from Valiente presented at the \TeX\ Users +% Group Annual Meeting in 1995. This last proposal has not been +% fully implemented due to its limitation to CM fonts. +% \begin{macrocode} +\newdimen\leftllkern \newdimen\rightllkern \newdimen\raiselldim +\def\lgem{% + \ifmmode + \csname normal@char\string"\endcsname l% + \else + \leftllkern=0pt\rightllkern=0pt\raiselldim=0pt% + \setbox0\hbox{l}\setbox1\hbox{l\/}\setbox2\hbox{.}% + \advance\raiselldim by \the\fontdimen5\the\font + \advance\raiselldim by -\ht2% + \leftllkern=-.25\wd0% + \advance\leftllkern by \wd1% + \advance\leftllkern by -\wd0% + \rightllkern=-.25\wd0% + \advance\rightllkern by -\wd1% + \advance\rightllkern by \wd0% + \allowhyphens\discretionary{l-}{l}% + {\hbox{l}\kern\leftllkern\raise\raiselldim\hbox{.}% + \kern\rightllkern\hbox{l}}\allowhyphens + \fi + } +\def\Lgem{% + \ifmmode + \csname normal@char\string"\endcsname L% + \else + \leftllkern=0pt\rightllkern=0pt\raiselldim=0pt% + \setbox0\hbox{L}\setbox1\hbox{L\/}\setbox2\hbox{.}% + \advance\raiselldim by .5\ht0% + \advance\raiselldim by -.5\ht2% + \leftllkern=-.125\wd0% + \advance\leftllkern by \wd1% + \advance\leftllkern by -\wd0% + \rightllkern=-\wd0% + \divide\rightllkern by 6% + \advance\rightllkern by -\wd1% + \advance\rightllkern by \wd0% + \allowhyphens\discretionary{L-}{L}% + {\hbox{L}\kern\leftllkern\raise\raiselldim\hbox{.}% + \kern\rightllkern\hbox{L}}\allowhyphens + \fi + } +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\l.l} +% \begin{macro}{\L.L} +% \changes{catalan-2.2e}{1996/06/26}{Added redefinition of \cs{l} and +% \cs{L}} +% It seems to be the most natural way of entering the ``ela +% geminda'' to use the sequences |\l.l| and |\L.L|. These are not +% really macro's by themselves but the macros |\l| and |\L| with +% delimited arguments. Therefor we define two macros that check if +% the next character is a period. If not the ``polish l'' will be +% typeset, otherwise a ``ela geminada'' will be typeset and the +% next two tokens will be `eaten'. +% \changes{catalan-2.2o}{2003/09/19}{Postpone the redefinition of +% \cs{l} and \cs{L} until begin document to prevent overwriting by +% fontenc} +% \begin{macrocode} +\AtBeginDocument{% + \let\lslash\l + \let\Lslash\L + \DeclareRobustCommand\l{\@ifnextchar.\bbl@l\lslash} + \DeclareRobustCommand\L{\@ifnextchar.\bbl@L\Lslash}} +\def\bbl@l#1#2{\lgem} +\def\bbl@L#1#2{\Lgem} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\up} +% +% A macro for typesetting things like 1\raise1ex\hbox{\small er} as +% proposed by Raymon Seroul\footnote{This macro has been borrowed +% from francais.dtx}. +% \changes{catalan-2.2b}{1995/06/18}{Added definition of macro +% \cs{up}, which can be used to type ordinals} +% \changes{catalan-2.2e}{1996/02/29}{Now use \cs{textsuperscript} and +% make \cs{up} robust} +% \begin{macrocode} +\DeclareRobustCommand*{\up}[1]{\textsuperscript{#1}} +% \end{macrocode} +% \end{macro} +% +% The macro |\ldf@finish| takes care of looking for a +% configuration file, setting the main language to be switched on +% at |\begin{document}| and resetting the category code of +% \texttt{@} to its original value. +% \changes{catalan-2.2g}{1996/11/02}{Now use \cs{ldf@finish} to wrap +% up} +% \begin{macrocode} +\ldf@finish{catalan} +% +% \end{macrocode} +% +% \Finale +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% +\endinput diff --git a/macros/latex/contrib/babel-contrib/catalan/catalan.ins b/macros/latex/contrib/babel-contrib/catalan/catalan.ins new file mode 100644 index 0000000000..982e9b8bba --- /dev/null +++ b/macros/latex/contrib/babel-contrib/catalan/catalan.ins @@ -0,0 +1,148 @@ +%% +%% This file will generate fast loadable files and documentation +%% driver files from the doc files in this package when run through +%% LaTeX or TeX. +%% +%% Copyright 1989-2005 Johannes L. Braams and any individual authors +%% listed elsewhere in this file. All rights reserved. +%% +%% This file is part of the Babel system. +%% -------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2003/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainer of this work is Johannes Braams. +%% +%% The list of all files belonging to the LaTeX base distribution is +%% given in the file `manifest.bbl. See also `legal.bbl' for additional +%% information. +%% +%% The list of derived (unpacked) files belonging to the distribution +%% and covered by LPPL is defined by the unpacking scripts (with +%% extension .ins) which are part of the distribution. +%% +%% --------------- start of docstrip commands ------------------ +%% +\def\filedate{1999/04/11} +\def\batchfile{catalan.ins} +\input docstrip.tex + +{\ifx\generate\undefined +\Msg{**********************************************} +\Msg{*} +\Msg{* This installation requires docstrip} +\Msg{* version 2.3c or later.} +\Msg{*} +\Msg{* An older version of docstrip has been input} +\Msg{*} +\Msg{**********************************************} +\errhelp{Move or rename old docstrip.tex.} +\errmessage{Old docstrip in input path} +\batchmode +\csname @@end\endcsname +\fi} + +\declarepreamble\mainpreamble +This is a generated file. + +Copyright 1989-2005 Johannes L. Braams and any individual authors +listed elsewhere in this file. All rights reserved. + +This file was generated from file(s) of the Babel system. +--------------------------------------------------------- + +It may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +of this license or (at your option) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX +version 2003/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainer of this work is Johannes Braams. + +This file may only be distributed together with a copy of the Babel +system. You may however distribute the Babel system without +such generated files. + +The list of all files belonging to the Babel distribution is +given in the file `manifest.bbl'. See also `legal.bbl for additional +information. + +The list of derived (unpacked) files belonging to the distribution +and covered by LPPL is defined by the unpacking scripts (with +extension .ins) which are part of the distribution. +\endpreamble + +\declarepreamble\fdpreamble +This is a generated file. + +Copyright 1989-2005 Johannes L. Braams and any individual authors +listed elsewhere in this file. All rights reserved. + +This file was generated from file(s) of the Babel system. +--------------------------------------------------------- + +It may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +of this license or (at your option) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX +version 2003/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainer of this work is Johannes Braams. + +This file may only be distributed together with a copy of the Babel +system. You may however distribute the Babel system without +such generated files. + +The list of all files belonging to the Babel distribution is +given in the file `manifest.bbl'. See also `legal.bbl for additional +information. + +In particular, permission is granted to customize the declarations in +this file to serve the needs of your installation. + +However, NO PERMISSION is granted to distribute a modified version +of this file under its original name. + +\endpreamble + +\keepsilent + +\usedir{tex/generic/babel} + +\usepreamble\mainpreamble +\generate{\file{catalan.ldf}{\from{catalan.dtx}{code}} + } +\usepreamble\fdpreamble + +\ifToplevel{ +\Msg{***********************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* \space\space All *.def, *.fd, *.ldf, *.sty} +\Msg{*} +\Msg{* To produce the documentation run the files ending with} +\Msg{* '.dtx' and `.fdd' through LaTeX.} +\Msg{*} +\Msg{* Happy TeXing} +\Msg{***********************************************************} +} + +\endinput diff --git a/macros/latex/contrib/babel-contrib/catalan/catalan.pdf b/macros/latex/contrib/babel-contrib/catalan/catalan.pdf new file mode 100644 index 0000000000..5daa7e8a84 Binary files /dev/null and b/macros/latex/contrib/babel-contrib/catalan/catalan.pdf differ -- cgit v1.2.3