diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /language/latin |
Initial commit
Diffstat (limited to 'language/latin')
-rw-r--r-- | language/latin/latin.dtx | 505 | ||||
-rw-r--r-- | language/latin/latin.ins | 97 | ||||
-rw-r--r-- | language/latin/latin.ldf | 180 |
3 files changed, 782 insertions, 0 deletions
diff --git a/language/latin/latin.dtx b/language/latin/latin.dtx new file mode 100644 index 0000000000..83d6a69dc4 --- /dev/null +++ b/language/latin/latin.dtx @@ -0,0 +1,505 @@ +% \iffalse meta-comment +% +% Copyright 1989-2001 Johannes L. Braams and any individual authors +% listed elsewhere in this file. All rights reserved. +% +% For further copyright information see any other copyright notices in +% this file. +% +% This file is part of the Babel system release 3.7. +% -------------------------------------------------- +% +% It may be distributed under the terms of the LaTeX Project Public +% License, as described in lppl.txt in the base LaTeX distribution. +% Either version 1.1 or, at your option, any later version. +% +% \fi +% \CheckSum{399} +% \iffalse +% Tell the \LaTeX\ system who we are and write an entry on the +% transcript. +%<*dtx> +\ProvidesFile{latin.dtx} +%</dtx> +%<code>\ProvidesFile{latin.ldf} +%\fi +%\ProvidesFile{latin.dtx}% + [2007/03/20 v.2.0f Latin support from the babel system] +%\iffalse +%% File `latin.dtx' +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 - 2005 +%% by Johannes Braams, TeXniek +% +%% Please report errors to: J.L. Braams +%% JLBraams@cistron.nl +% +% This file is part of the babel system, it provides the source +% code for the Latin language definition file. +% The original version of this file was written by +% Claudio Beccari, (claudio.beccari@polito.it) and includes contributions +% by Krzysztof Konrad \.Zelechowski, (\texttt{kkz@alfa.mimuw.edu.pl}). +%<*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}} +\providecommand*\pkg[1]{\textsf{#1}} +\begin{document} + \DocInput{latin.dtx} +\end{document} +%</filedriver> +%\fi +% \GetFileInfo{latin.dtx} +% +% \changes{latin-0.99}{1999/12/06}{First version, from italian.dtx (CB)} +% \changes{latin-0.99}{1999/12/06}{Added shortcuts for breve, macron, +% and etymological hyphenation (CB)} +% \changes{latin-1.2}{2000/01/31}{Added suggestions from Krzysztof Konrad \.Zelechowski (CB)} +% \changes{latin-2.0}{2000/02/10}{Completely new etymological hyphenation (CB)} +% \changes{latin-2.0a}{2000/10/15}{Revised by JB} +% \changes{latin-2.0b}{2000/12/13}{Simplified shortcuts for etymological hyphenation; +% modified breve and macro shortcuts; language attribute medieval declared} +% \changes{latin-2.0c}{2001/06/04}{Restored caret and equals sign category codes +% before exiting} +% \changes{latin-2.0d}{2003/04/11}{Modified use of breve and macron shortcuts in order +% to avoid possible conflicts with other packages} +% \changes{latin-2.0e}{2005/10/19}{Added another \nobreak to \cs{lt@allowhyphens}} +% \changes{latin-2.0f}{2007/03/20}{Deleted \cs{addtoextraslatin} and its argument} +% +% \section{The Latin language} +% +% The file \file{\filename}\footnote{The file described in this +% section has version number \fileversion\ and was last revised on +% \filedate. The original author is Claudio Beccari with contributions +% by Krzysztof Konrad \.Zelechowski, (\texttt{kkz@alfa.mimuw.edu.pl})} +% defines all the language-specific macros for the Latin language both +% in modern and medieval spelling. +% +% For this language the |\clubpenalty|, |\widowpenalty| are set to rather high values and +% |\finalhyphendemerits| is set to such a high value that hyphenation is prohibited +% between the last two lines of a paragraph. +% +% For this language two ``styles'' of typesetting are implemented: ``regular'' +% or modern-spelling Latin, and medieval Latin. +% The medieval Latin specific commands can be activated by means of the language +% attribute |medieval|; the medieval spelling differs from the +% modern one by the systematic use of the lower case `u' also where +% in modern spelling the letter `v' is used; when typesetting with capital +% letters, on the opposite, the letter 'V' is used also in place of 'U'. +% Medieval spelling also includes the ligatures |\ae| (\ae), |\oe| (\oe), |\AE| (\AE), +% and |\OE| (\OE) that are not used in modern spelling, nor were used in +% the classical times. +% +% For what concerns \textsf{babel} and typesetting with \LaTeX, the differences +% between the two styles of spelling reveal themselves in the strings used to name +% for example the ``Preface'' that becomes ``Praefatio'' or ``Præfatio'' respectively. +% Hyphenation rules are also different, but the hyphenation pattern file +% \file{lahyph.tex} takes care of both versions of the language. Needless to say that +% such patterns must be loaded in the \LaTeX\ format by by running |initex| +% (or whatever the name if the initializer) on |latex.ltx|. +% +% The name strings for chapters, figures, tables, etcetera, are suggested by +% prof. Raffaella Tabacco, a classicist of the University of Turin, Italy, to whom +% we address our warmest thanks. The names suggested by Krzysztof Konrad \.Zelechowski, +% when different, are used as the names for the medieval variety, since he +% made a word and spelling choice more suited for this variety. +% +% For this language some shortcuts are defined according to table~\ref{t:lashrtct}; all +% of them are supposed to work with both spelling styles, except where the opposite +% is explicitly stated. +% \begin{table}[htb]\centering +% \begin{tabular}{cp{80mm}} +% |^i| & inserts the breve accent as \u{\i}; valid also for the other lowercase vowels, +% but it does not operate on the medieval ligatures \ae\ and \oe.\\ +% |=a| & inserts the macron accent as \=a; valid also for the other lowercase vowels, +% but it does not operate on the medieval ligatures \ae\ and \oe.\\ +% |"| & inserts a compound word mark where hyphenation is legal; +% the next character must not be a medieval +% ligature \ae\ or \oe, nor an accented letter (foreign names).\\ +% \texttt{\string"\string|} & same as above, but operates also when the next character +% is a medieval ligature or an accented letter. +% \end{tabular} +% \caption[]{Shortcuts defined for the Latin language. The active characters +% \texttt{\string^} and \texttt{\string=} +% are disabled by default; see section~\ref{s:shrtcts} +% for more details.}\label{t:lashrtct} +% \end{table} +% \StopEventually{} +% +% The macro |\LdfInit| takes care of preventing that this file is +% loaded more than once, checking the category code of the +% \texttt{@} sign, etc. +% \begin{macrocode} +%<*code> +\LdfInit{latin}{captionslatin} +% \end{macrocode} +% +% When this file is read as an option, i.e. by the |\usepackage| +% command, \texttt{latin} will be an `unknown' language in which +% case we have to make it known. So we check for the existence of +% |\l@latin| to see whether we have to do something here. +% +% \begin{macrocode} +\ifx\l@latin\@undefined + \@nopatterns{Latin} + \adddialect\l@latin0\fi +% \end{macrocode} +% +% +% Now we declare the |medieval| language attribute. +% \begin{macrocode} +\bbl@declare@ttribute{latin}{medieval}{% + \addto\captionslatin{\def\prefacename{Pr{\ae}fatio}}% + \def\november{Nouembris}% + \expandafter\addto\expandafter\extraslatin + \expandafter{\extrasmedievallatin}% + } +% \end{macrocode} +% +% +% The next step consists of defining commands to switch to (and +% from) the Latin language\footnote{Most of these names were +% kindly suggested by Raffaella Tabacco.}. +% +% \begin{macro}{\captionslatin} +% The macro |\captionslatin| defines all strings used +% in the four standard document classes provided with \LaTeX. +% \begin{macrocode} +\@namedef{captionslatin}{% + \def\prefacename{Praefatio}% + \def\refname{Conspectus librorum}% + \def\abstractname{Summarium}% + \def\bibname{Conspectus librorum}% + \def\chaptername{Caput}% + \def\appendixname{Additamentum}% + \def\contentsname{Index}% + \def\listfigurename{Conspectus descriptionum}% + \def\listtablename{Conspectus tabularum}% + \def\indexname{Index rerum notabilium}% + \def\figurename{Descriptio}% + \def\tablename{Tabula}% + \def\partname{Pars}% + \def\enclname{Adduntur}% Or " Additur" ? Or simply Add.? + \def\ccname{Exemplar}% Use the recipient's dative + \def\headtoname{\ignorespaces}% Use the recipient's dative + \def\pagename{Charta}% + \def\seename{cfr.}% + \def\alsoname{cfr.}% R.Tabacco never saw "cfr. atque" or similar forms + \def\proofname{Demonstratio}% + \def\glossaryname{Glossarium}% + } +% \end{macrocode} +% \end{macro} +% In the above definitions there are some points that might change in the future or that +% require a minimum of attention from the typesetter. +% \begin{enumerate} +% \item the \cs{enclname} is translated by a passive verb, that literally means ``(they) +% are being added''; if just one enclosure is joined to the document, the plural passive +% is not suited any more; nevertheless a generic plural passive might be incorrect but suited +% for most circumstances. On the opposite ``Additur'', the corresponding singular passive, +% might be more correct with one enclosure and less suited in general: what about the +% abbreviation ``Add.'' that works in both cases, but certainly is less elegant? +% \item The \cs{headtoname} is empty and gobbles the possible following space; in +% practice the typesetter should use the dative of the recipient's name; since nowadays not +% all such names can be translated into Latin, they might result indeclinable. The +% clever use of an appellative by the typesetter such as ``Domino'' or ``Dominae'' +% might solve the problem, but the header might get too impressive. The typesetter must +% make a decision on his own. +% \item The same holds true for the copy recipient's name in the ``Cc'' field of +% \cs{ccname}. +% \end{enumerate} +% +% \begin{macro}{\datelatin} +% The macro |\datelatin| redefines the command |\today| to produce +% Latin dates; the choice of faked small caps Latin numerals is +% arbitrary and may be changed in the future. For medieval latin +% the spelling of `Novembris' should be \textit{Nouembris}. This is +% taken care of by using a control sequence which can be redefined +% when the attribute `medieval' is selected. +% \begin{macrocode} +\def\datelatin{% + \def\november{Novembris} + \def\today{% + {\check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont + \uppercase\expandafter{\romannumeral\day}}~\ifcase\month\or + Ianuarii\or Februarii\or Martii\or Aprilis\or Maii\or Iunii\or + Iulii\or Augusti\or Septembris\or Octobris\or \november\or + Decembris\fi + \space{\uppercase\expandafter{\romannumeral\year}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\romandate} +% Thomas Martin Widmann (\texttt{viralbus@daimi.au.dk}) developed a macro +% originally named |\latindate| (but to be renamed |\romandate| so as not +% to conflict with the standard |babel| conventions) that should compute +% and translate the current date into a date \textit{ab urbe condita} with +% days numbered according to the kalendae and idus; for the moment this +% is a placeholder for Thomas' macro, waiting for a self standing one that +% keeps local all the intermediate data, counters, etc. If he succeeds, +% here is the place to add his macro. +% \end{macro} +% +% \begin{macro}{\latinhyphenmins} +% The Latin hyphenation patterns can be used with both +% |\lefthyphenmin| and |\righthyphenmin| set to~2. +% \changes{latin-2.0a}{2000/10/15}{Now use \cs{providehyphenmins} to +% provide a default value} +% \begin{macrocode} +\providehyphenmins{\CurrentOption}{\tw@\tw@} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\extraslatin} +% \begin{macro}{\noextraslatin} +% Lower the chance that clubs or widows occur. +% \begin{macrocode} +\addto\extraslatin{% + \babel@savevariable\clubpenalty + \babel@savevariable\widowpenalty + \clubpenalty3000\widowpenalty3000} +% \end{macrocode} +% Never ever break a word between the last two lines of a paragraph +% in latin texts. +% \begin{macrocode} +\addto\extraslatin{% + \babel@savevariable\finalhyphendemerits + \finalhyphendemerits50000000} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% With medieval Latin we need the suitable correspondence between +% upper case V and lower case u, since in that spelling there is +% only one sign, and the u shape is the (uncial) version of the +% capital V. Everything else is identical with Latin. +% \begin{macrocode} +\addto\extrasmedievallatin{% +\babel@savevariable{\lccode`\V}% +\babel@savevariable{\uccode`\u}% +\lccode`\V=`\u \uccode`\u=`\V} +% \end{macrocode} +% +% \begin{macro}{\SetLatinLigatures} +% We need also the lccodes for \ae\ and \oe; since they occupy +% different positions in the OT1 \TeX-fontencoding compared to the +% T1 one, we must save the lc- and the uccodes for both encodings, +% but we specify the new lc- and uccodes separately as it appears +% natural not to change encoding while typesetting the same +% language. The encoding is assumed to be set before starting to +% use the Latin language, so that if Latin is the default language, +% the font encoding must be chosen before requiring the \pkg{babel} +% package with the |latin| option, in any case before any +% |\selectlanguage| or |\foreignlanguage| command. +% +% All this fuss is made in order to allow the use of the medieval +% ligatures \ae\ and \oe\ while typesetting with the medieval +% spelling; I have my doubts that the medieval spelling should be +% used at all in modern books, reports, and the like; the uncial +% `u' shape of the lower case `v' and the above ligatures were +% fancy styles of the copyists who were able to write faster with +% those rounded glyphs; with typesetting there is no question of +% handling a quill penn\dots Since my (CB) opinion may be wrong, I +% managed to set up the instruments and it is up to the typesetter +% to use them or not. +% +% \begin{macrocode} +\addto\extraslatin{% + \babel@savevariable{\lccode`\^^e6}% T1 + \babel@savevariable{\uccode`\^^e6}% T1 + \babel@savevariable{\lccode`\^^c6}% T1 + \babel@savevariable{\lccode`\^^f7}% T1 + \babel@savevariable{\uccode`\^^d7}% T1 + \babel@savevariable{\lccode`\^^d7}% T1 + \babel@savevariable{\lccode`\^^1a}% OT1 + \babel@savevariable{\uccode`\^^1a}% OT1 + \babel@savevariable{\lccode`\^^1d}% OT1 + \babel@savevariable{\lccode`\^^1b}% OT1 + \babel@savevariable{\uccode`\^^1b}% OT1 + \babel@savevariable{\lccode`\^^1e}% OT1 + \SetLatinLigatures} +\providecommand\SetLatinLigatures{% + \def\@tempA{T1}\ifx\@tempA\f@encoding + \catcode`\^^e6=11 \lccode`\^^e6=`\^^e6 \uccode`\^^e6=`\^^c6 % \ae + \catcode`\^^c6=11 \lccode`\^^c6=`\^^e6 % \AE + \catcode`\^^f7=11 \lccode`\^^f7=`\^^f7 \uccode`\^^f7=`\^^d7 % \oe + \catcode`\^^d7=11 \lccode`\^^d7=`\^^f7 % \OE + \else + \catcode`\^^1a=11 \lccode`\^^1a=`\^^1a \uccode`\^^1a=`\^^1d % \ae + \catcode`\^^1d=11 \lccode`\^^1d=`\^^1a % \AE (^^]) + \catcode`\^^1b=11 \lccode`\^^1b=`\^^1b \uccode`\^^1b=`\^^1e % \oe + \catcode`\^^1e=11 \lccode`\^^1e=`\^^1b % \OE (^^^) + \fi + \let\@tempA\@undefined + } +% \end{macrocode} +% With the above definitions we are sure that |\MakeUppercase| works properly and +% |\MakeUppercase{C{\ae}sar}| correctly `yields `C{\AE}SAR''; correspondingly +% |\MakeUppercase{Heluetia}| correctly yields ``HELVETIA''. +% \end{macro} +% +% \section{Latin shortcuts}\label{s:shrtcts} +% For writing dictionaries or didactic texts (in modern spelling only) a couple of +% other active characters are defined: |^| for marking a vowel with the breve sign, +% and |=| for marking a vowel with the macro sign. Please take notice that neither +% the OT1 font encoding, nor the T1 one for most vowels, contain directly the marked +% vowels, therefore hyphenation of words containing these ``accents'' may become +% problematic; for this reason the above active characters not only introduce the +% required accent, but also an unbreakable zero skip that in practice does not +% introduce a discretionary break, but allows breaks in the rest of the word. +% +% It must be remarked that the active characters |^| and |=| may have other meanings +% in other contexts. For example the equals sign is used by the graphic extensions +% for specifying keyword options for handling the graphic elements to be included +% in the document. At the same time, as mentioned in the previous paragraph, diacritical +% marking in Latin is used only for typesetting certain kind of documents, such as +% grammars and dictionaries. It is reasonable that the breve and macron active characters +% are switched on and off at will, and in particular that they are off by default. +% \begin{macrocode} +\initiate@active@char{^} +\initiate@active@char{=} +\addto\extraslatin{\languageshorthands{latin}} +\addto\extraslatin{\bbl@activate{^}} +\addto\extraslatin{\bbl@activate{=}} +\addto\noextraslatin{\bbl@deactivate{^}} +\addto\noextraslatin{\bbl@deactivate{=}} +% \end{macrocode} +% Now we define the short hands only for Latin and only for lower +% case vowels. +% \begin{macrocode} +\declare@shorthand{latin}{^a}{% + \textormath{\u{a}\allowhyphens}{\hat{a}}} +\declare@shorthand{latin}{^e}{% + \textormath{\u{e}\nobreak\hskip\z@skip}{\hat{e}}} +\declare@shorthand{latin}{^i}{% + \textormath{\u{\i}\nobreak\hskip\z@skip}{\hat{\imath}}} +\declare@shorthand{latin}{^o}{% + \textormath{\u{o}\nobreak\hskip\z@skip}{\hat{o}}} +\declare@shorthand{latin}{^u}{% + \textormath{\u{u}\nobreak\hskip\z@skip}{\hat{u}}} +% +\declare@shorthand{latin}{=a}{% + \textormath{\={a}\nobreak\hskip\z@skip}{\bar{a}}} +\declare@shorthand{latin}{=e}{% + \textormath{\={e}\nobreak\hskip\z@skip}{\bar{e}}} +\declare@shorthand{latin}{=i}{% + \textormath{\={\i}\nobreak\hskip\z@skip}{\bar{\imath}}} +\declare@shorthand{latin}{=o}{% + \textormath{\={o}\nobreak\hskip\z@skip}{\bar{o}}} +\declare@shorthand{latin}{=u}{% + \textormath{\={u}\nobreak\hskip\z@skip}{\bar{u}}} +% \end{macrocode} +% +% It must be understood that by using the above prosodic marks, +% line breaking is somewhat impeached; since such prosodic marks +% are used almost exclusively in dictionaries, grammars, and poems +% (only in school textbooks), this shouldn't be of any importance +% for what concerns the quality of typesetting. +% \begin{macro}{\LatinMarksOn} +% \begin{macro}{\LatinMarksOff} +% We define two new commands so as to switch +% on and off the breve and macron shortcuts +% \begin{macrocode} +\addto\extraslatin{\def\LatinMarksOn{\shorthandon{^}\shorthandon{=}}} +\addto\extraslatin{\def\LatinMarksOff{\shorthandoff{^}\shorthandoff{=}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% We must restore the original category codes for both the caret +% and the equals sign +% \begin{macrocode} +\catcode`\= 12\relax +\catcode`\^ 7\relax +% \end{macrocode} +% so as to avoid conflicts with other packages or other \babel\ options. +% +% In order to deal in a clean way with prefixes and compound words to be divided +% etymologically, the active character |"| is given a special +% definition so as to behave as a discretionary break with hyphenation +% allowed after it. +% Most of the code for dealing with the active |"| is already contained in the +% core of |babel|, but we are going to use it as a single character shorthand +% for Latin. +% \begin{macrocode} +\initiate@active@char{"}% +\addto\extraslatin{\bbl@activate{"}% +} +% \end{macrocode} +% +% A temporary macro is defined so as to take different actions in math +% mode and text mode: specifically in the former case the macro inserts a +% double quote as it should in math mode, otherwise another delayed macro +% comes into action. +% \begin{macrocode} +\declare@shorthand{latin}{"}{\ifmmode + \def\lt@@next{''}% +\else + \def\lt@@next{\futurelet\lt@temp\lt@cwm}% +\fi +\lt@@next +}% +% \end{macrocode} +% In text mode the \cs{lt@next} control sequence is such that upon its execution +% a temporary variable \cs{lt@temp} is made equivalent to the next token in +% the input list without actually removing it. Such temporary token is then tested +% by the macro \cs{lt@cwm} and if it is found to be a letter token, then it +% introduces a compound word separator control sequence \cs{lt@allowhyphens} +% whose expansion introduces a discretionary hyphen and an unbreakable space; in case +% the token is not a letter, the token is tested again to find if it is the character +% \texttt{\string|}, in which case it is gobbled and a discretionary break is introduced. +% \begin{macrocode} +\def\lt@allowhyphens{\nobreak\discretionary{-}{}{}\nobreak\hskip\z@skip} +\newcommand*{\lt@cwm}{\let\lt@n@xt\relax +\ifcat\noexpand\lt@temp a% + \let\lt@n@xt\lt@allowhyphens +\else + \if\noexpand\lt@temp\string|% + \def\lt@n@xt{\lt@allowhyphens\@gobble}% + \fi +\fi\lt@n@xt}% +% \end{macrocode} +% +% Attention: the category code comparison does not work if the temporary +% control sequence \cs{lt@temp} has been let equal to an implicit character, +% such as |\ae|; therefore this etymological hyphenation facility does not +% work with medieval Latin spelling when |"| immediately precedes a ligature. +% in order to overcome this drawback the shorthand \verb!"|! may be used in such +% cases; it behaves exactly as |"|, but it does not test the implicit character +% control sequence. An input such as \verb!super"|{\ae}quitas!\footnote{This word +% does not exist in ``regular'' Latin, and it is used just as an example.} +% gets hyphenated as \texttt{su-per-{\ae}qui-tas} instead of +% \texttt{su-pe-r\ae-qui-tas}. +% +% 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. +% \begin{macrocode} +\ldf@finish{latin} +%</code> +% \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/language/latin/latin.ins b/language/latin/latin.ins new file mode 100644 index 0000000000..d6d16b4bce --- /dev/null +++ b/language/latin/latin.ins @@ -0,0 +1,97 @@ +%% +%% 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-2000 Johannes L. Braams and any individual authors +%% listed elsewhere in this file. All rights reserved. +%% +%% This file is part of the Babel system, release 3.7. +%% --------------------------------------------------- +%% +%% It may be distributed under the terms of the LaTeX Project Public +%% License, as described in lppl.txt in the base LaTeX distribution. +%% Either version 1.1 or, at your option, any later version. +%% +%% --------------- start of docstrip commands ------------------ +%% +\def\filedate{1999/04/11} +\def\batchfile{latin.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-2000 Johannes L. Braams and any individual authors +listed elsewhere in this file. All rights reserved. + +This file is part of the Babel system release 3.7. +-------------------------------------------------- + +It may be distributed under the terms of the LaTeX Project Public +License, as described in lppl.txt in the base LaTeX distribution. +Either version 1.1 or, at your option, any later version. +\endpreamble + +\declarepreamble\fdpreamble +This is a generated file. + +Copyright 2000 Johannes L. Braams and any individual authors +listed elsewhere in this file. All rights reserved. + +This file is part of the Babel system, release 3.7. +--------------------------------------------------- + +It may be distributed under the terms of the LaTeX Project Public +License, as described in lppl.txt in the base LaTeX distribution. +Either version 1.1 or, at your option, any later version. + +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{latin.ldf}{\from{latin.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/language/latin/latin.ldf b/language/latin/latin.ldf new file mode 100644 index 0000000000..9980616d95 --- /dev/null +++ b/language/latin/latin.ldf @@ -0,0 +1,180 @@ +%% +%% This is file `latin.ldf', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% latin.dtx (with options: `code') +%% +%% This is a generated file. +%% +%% Copyright 1989-2000 Johannes L. Braams and any individual authors +%% listed elsewhere in this file. All rights reserved. +%% +%% This file is part of the Babel system release 3.7. +%% -------------------------------------------------- +%% +%% It may be distributed under the terms of the LaTeX Project Public +%% License, as described in lppl.txt in the base LaTeX distribution. +%% Either version 1.1 or, at your option, any later version. +\ProvidesFile{latin.ldf} + [2007/03/20 v.2.0f Latin support from the babel system] +%% File `latin.dtx' +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 - 2005 +%% by Johannes Braams, TeXniek +%% Please report errors to: J.L. Braams +%% JLBraams@cistron.nl +\LdfInit{latin}{captionslatin} +\ifx\l@latin\@undefined + \@nopatterns{Latin} + \adddialect\l@latin0\fi +\bbl@declare@ttribute{latin}{medieval}{% + \addto\captionslatin{\def\prefacename{Pr{\ae}fatio}}% + \def\november{Nouembris}% + \expandafter\addto\expandafter\extraslatin + \expandafter{\extrasmedievallatin}% + } +\@namedef{captionslatin}{% + \def\prefacename{Praefatio}% + \def\refname{Conspectus librorum}% + \def\abstractname{Summarium}% + \def\bibname{Conspectus librorum}% + \def\chaptername{Caput}% + \def\appendixname{Additamentum}% + \def\contentsname{Index}% + \def\listfigurename{Conspectus descriptionum}% + \def\listtablename{Conspectus tabularum}% + \def\indexname{Index rerum notabilium}% + \def\figurename{Descriptio}% + \def\tablename{Tabula}% + \def\partname{Pars}% + \def\enclname{Adduntur}% Or " Additur" ? Or simply Add.? + \def\ccname{Exemplar}% Use the recipient's dative + \def\headtoname{\ignorespaces}% Use the recipient's dative + \def\pagename{Charta}% + \def\seename{cfr.}% + \def\alsoname{cfr.}% R.Tabacco never saw "cfr. atque" or similar forms + \def\proofname{Demonstratio}% + \def\glossaryname{Glossarium}% + } +\def\datelatin{% + \def\november{Novembris} + \def\today{% + {\check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont + \uppercase\expandafter{\romannumeral\day}}~\ifcase\month\or + Ianuarii\or Februarii\or Martii\or Aprilis\or Maii\or Iunii\or + Iulii\or Augusti\or Septembris\or Octobris\or \november\or + Decembris\fi + \space{\uppercase\expandafter{\romannumeral\year}}}} +\providehyphenmins{\CurrentOption}{\tw@\tw@} +\addto\extraslatin{% + \babel@savevariable\clubpenalty + \babel@savevariable\widowpenalty + \clubpenalty3000\widowpenalty3000} +\addto\extraslatin{% + \babel@savevariable\finalhyphendemerits + \finalhyphendemerits50000000} +\addto\extrasmedievallatin{% +\babel@savevariable{\lccode`\V}% +\babel@savevariable{\uccode`\u}% +\lccode`\V=`\u \uccode`\u=`\V} +\addto\extraslatin{% + \babel@savevariable{\lccode`\^^e6}% T1 + \babel@savevariable{\uccode`\^^e6}% T1 + \babel@savevariable{\lccode`\^^c6}% T1 + \babel@savevariable{\lccode`\^^f7}% T1 + \babel@savevariable{\uccode`\^^d7}% T1 + \babel@savevariable{\lccode`\^^d7}% T1 + \babel@savevariable{\lccode`\^^1a}% OT1 + \babel@savevariable{\uccode`\^^1a}% OT1 + \babel@savevariable{\lccode`\^^1d}% OT1 + \babel@savevariable{\lccode`\^^1b}% OT1 + \babel@savevariable{\uccode`\^^1b}% OT1 + \babel@savevariable{\lccode`\^^1e}% OT1 + \SetLatinLigatures} +\providecommand\SetLatinLigatures{% + \def\@tempA{T1}\ifx\@tempA\f@encoding + \catcode`\^^e6=11 \lccode`\^^e6=`\^^e6 \uccode`\^^e6=`\^^c6 % \ae + \catcode`\^^c6=11 \lccode`\^^c6=`\^^e6 % \AE + \catcode`\^^f7=11 \lccode`\^^f7=`\^^f7 \uccode`\^^f7=`\^^d7 % \oe + \catcode`\^^d7=11 \lccode`\^^d7=`\^^f7 % \OE + \else + \catcode`\^^1a=11 \lccode`\^^1a=`\^^1a \uccode`\^^1a=`\^^1d % \ae + \catcode`\^^1d=11 \lccode`\^^1d=`\^^1a % \AE (^^]) + \catcode`\^^1b=11 \lccode`\^^1b=`\^^1b \uccode`\^^1b=`\^^1e % \oe + \catcode`\^^1e=11 \lccode`\^^1e=`\^^1b % \OE (^^^) + \fi + \let\@tempA\@undefined + } +\initiate@active@char{^} +\initiate@active@char{=} +\addto\extraslatin{\languageshorthands{latin}} +\addto\extraslatin{\bbl@activate{^}} +\addto\extraslatin{\bbl@activate{=}} +\addto\noextraslatin{\bbl@deactivate{^}} +\addto\noextraslatin{\bbl@deactivate{=}} +\declare@shorthand{latin}{^a}{% + \textormath{\u{a}\allowhyphens}{\hat{a}}} +\declare@shorthand{latin}{^e}{% + \textormath{\u{e}\nobreak\hskip\z@skip}{\hat{e}}} +\declare@shorthand{latin}{^i}{% + \textormath{\u{\i}\nobreak\hskip\z@skip}{\hat{\imath}}} +\declare@shorthand{latin}{^o}{% + \textormath{\u{o}\nobreak\hskip\z@skip}{\hat{o}}} +\declare@shorthand{latin}{^u}{% + \textormath{\u{u}\nobreak\hskip\z@skip}{\hat{u}}} +\declare@shorthand{latin}{=a}{% + \textormath{\={a}\nobreak\hskip\z@skip}{\bar{a}}} +\declare@shorthand{latin}{=e}{% + \textormath{\={e}\nobreak\hskip\z@skip}{\bar{e}}} +\declare@shorthand{latin}{=i}{% + \textormath{\={\i}\nobreak\hskip\z@skip}{\bar{\imath}}} +\declare@shorthand{latin}{=o}{% + \textormath{\={o}\nobreak\hskip\z@skip}{\bar{o}}} +\declare@shorthand{latin}{=u}{% + \textormath{\={u}\nobreak\hskip\z@skip}{\bar{u}}} +\addto\extraslatin{\def\LatinMarksOn{\shorthandon{^}\shorthandon{=}}} +\addto\extraslatin{\def\LatinMarksOff{\shorthandoff{^}\shorthandoff{=}}} +\catcode`\= 12\relax +\catcode`\^ 7\relax +\initiate@active@char{"}% +\addto\extraslatin{\bbl@activate{"}% +} +\declare@shorthand{latin}{"}{\ifmmode + \def\lt@@next{''}% +\else + \def\lt@@next{\futurelet\lt@temp\lt@cwm}% +\fi +\lt@@next +}% +\def\lt@allowhyphens{\nobreak\discretionary{-}{}{}\nobreak\hskip\z@skip} +\newcommand*{\lt@cwm}{\let\lt@n@xt\relax +\ifcat\noexpand\lt@temp a% + \let\lt@n@xt\lt@allowhyphens +\else + \if\noexpand\lt@temp\string|% + \def\lt@n@xt{\lt@allowhyphens\@gobble}% + \fi +\fi\lt@n@xt}% +\ldf@finish{latin} +%% +%% \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 +%% +%% End of file `latin.ldf'. |