summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-06-24 22:40:16 +0000
committerKarl Berry <karl@freefriends.org>2014-06-24 22:40:16 +0000
commit22323d7c130b0ac0d9f2cc5609b38908e4928ae1 (patch)
tree53e1d4fa3a7bdf901afc58c5f70518a66e598cf2 /Master
parent30899a0b2f9c153b100471780c2e536fd9653835 (diff)
babel-latin (3jun14)
git-svn-id: svn://tug.org/texlive/trunk@34389 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/generic/babel-latin/latin.pdfbin168200 -> 149013 bytes
-rw-r--r--Master/texmf-dist/source/generic/babel-latin/latin.dtx522
-rw-r--r--Master/texmf-dist/source/generic/babel-latin/latin.ins93
-rw-r--r--Master/texmf-dist/tex/generic/babel-latin/latin.ldf127
4 files changed, 403 insertions, 339 deletions
diff --git a/Master/texmf-dist/doc/generic/babel-latin/latin.pdf b/Master/texmf-dist/doc/generic/babel-latin/latin.pdf
index 4cbe735fe39..d4c26b36e32 100644
--- a/Master/texmf-dist/doc/generic/babel-latin/latin.pdf
+++ b/Master/texmf-dist/doc/generic/babel-latin/latin.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/generic/babel-latin/latin.dtx b/Master/texmf-dist/source/generic/babel-latin/latin.dtx
index 138c6771271..9486fb74fb7 100644
--- a/Master/texmf-dist/source/generic/babel-latin/latin.dtx
+++ b/Master/texmf-dist/source/generic/babel-latin/latin.dtx
@@ -1,42 +1,14 @@
-% \iffalse meta-comment
-%
-% Copyright 1989-2008 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{454}
+% \CheckSum{511}
% \iffalse
% Tell the \LaTeX\ system who we are and write an entry on the
% transcript.
%<*dtx>
-\ProvidesFile{latin.dtx}
+\ProvidesFile{latincla.dtx}
%</dtx>
%<code>\ProvidesFile{latin.ldf}
%\fi
%\ProvidesFile{latin.dtx}%
- [2008/07/06 v2.0l Latin support from the babel system]
+ [2014/06/01 v.3.0 Latin support from the babel system]
%\iffalse
%% File `latin.dtx'
%% Babel package for LaTeX version 2e
@@ -51,7 +23,7 @@
% 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
+% Claudio Beccari, (claudio.beccari at gmail.com) and includes contributions
% by Krzysztof Konrad \.Zelechowski, (\texttt{kkz@alfa.mimuw.edu.pl}).
%<*filedriver>
\documentclass{ltxdoc}
@@ -70,120 +42,198 @@
% \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,
+% \changes{latin-0.99}{1999/12/06}{Added shorthands 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;
+% \changes{latin-2.0b}{2000/12/13}{Simplified shorthands for
+% etymological hyphenation; modified breve and macro shorthands;
% language attribute medieval declared}
% \changes{latin-2.0c}{2001/06/04}{Restored caret and equals sign
% category codes before exiting}
% \changes{latin-2.0d}{2001/06/04}{Restored caret and equals sign
% category codes before exiting}
% \changes{latin-2.0e}{2003/04/11}{Introduced the language attribute
-% `withprosodicmarks'; modified use of breve and macron shortcuts
+% `withprosodicmarks'; modified use of breve and macron shorthands
% in order to avoid possible conflicts with other packages}
-% \changes{latin-2.0i}{2008/02/17}{Corrected the \cs{@clubpenalty}
-% problem}
-% \changes{latin-2.0j}{2008/03/17}{Added a missing comment char and a
-% missing closing brace}
-% \changes{latin-2.0l}{2008/07/06}{Added two missing \cs{end} macro's}
+% \changes{latin-2.0i}{2008/02/17}{Corrected the \cs{@clubpenalty} problem}
+% \changes{latin-2.0j}{2010/01/03}{Corrected sectioning}
+% \changes{latin-2.0k}{2014/02/18}{subsections turned into subsections*}
+%^^A --------------------------------
+% \changes{latin-3.0}{2014/06/01}{Added modifier for classical spelling and hyphenation}
+% \changes{latin-3.0}{2014/06/01}{Restored the subsection numbering}
%
% \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.
-%
-% Furthermore a third typesetting style |withprosodicmarks| is
-% defined in order to use special shortcuts for inserting breves
+% \filedate. The original author is Claudio Beccari.}; defines all the
+% language-specific macros for the Latin language including the classical
+% spelling and hyphenation.
+%
+% Without modifiers or attributes, this file describes the modern usage
+% of Latin; with this we mean the kind of Latin that is used as an official
+% language in the State of Vatican City, and in the teaching of Latin in
+% modern schools. This file description language accepts three modifiers,
+% in order to be adapted to other situations:
+%\begin{enumerate}\csname c@enumi\endcsname=-1
+%\item Modern spelling and hypheenation; this is the default setting;
+%\item Modern spelling with prosodic marks: this is to be used mainly
+% in modern grammars and dictionaries;
+%\item Medieval spelling and hyphenation: in this spelling the lower and
+% upper case alphabets become the following:\\
+%\makebox[\linewidth]{\tabcolsep=2pt
+%\begin{tabular}{*{26}c}
+% a&\ae&b&c&d&e&f&g&h&i&k&l&m&n&o&\oe&p&q&r&s&t&u&x&y&z \\
+% A&\AE&B&C&D&E&F&G&H&I&K&L&M&N&O&\OE&P&Q&R&S&T&V&X&Y&Z
+%\end{tabular}}
+% It must be noted that this file description language does not make
+% any spelling correction in order tu use only `u' in lower case and only
+% `V' in upper case: if the input text is wrongly typed in, it remains as
+% such; this means it's the typesetter's responsibility to correctly input
+% the source text to be typeset; in spite of this, when the transformation
+% from lower to upper case is performed (such as, for example, while
+% typesetting headers with some classes) the correct capitalization is
+% performed and `u' is capitalized to `V'; the reverse takes place when
+% transforming to lowercase.
+%\item Classical Latin and classical hyphenation; the spelling is similar
+% to the medieval one, except for the ligatures \ae, \AE, \oe\ and \OE\
+% that are missing; again it is the typesetter's responsibility to input the
+% text to be typeset in a correct way; while the hyphenation patterns for
+% modern and medieval Latin form a non contrasting set of patterns, this
+% is impossible with classical Latin and a different pattern set has been
+% prepared as explained below.
+% \item Ecclesiastic Latin is a spelling variety of modern Latin; at the
+% moment of writing this documentation, it is taken care by an external
+% module |ecclesiastic.sty|, but it is under study the extension of this
+% language description file in order to include also the ecclesiastic
+% variety. This special spelling of modern Latin is used in liturgical
+% and devotional books of the Roman Catholic clergy where ligatures \ae\
+% and \oe\ are widely used and where acute accents are used in order to
+% mark the tonic vowel of those words where the penultimate syllable is not
+% tonic; this allows clergy with different backgrounds and mother
+% languages to recite the prayers with the same rhythmic scheme.
+%\end{enumerate}
+%
+% |babel| is not directly concerned with hyphenation; nevertheless in
+% this case it is necessary to switch the hyphenation rules to those
+% of another language, |classiclatin|, that must be available
+% while creating the format files so that this language description
+% file can chose between the modern and medieval hyphenation rules or
+% the classical ones.
+%
+% In summary modern and medieval Latin hyphenation rules are similar
+% to those of current Italian, except that the patterns must include
+% also some consonant groups that do not exist in Italian; furthermore
+% with medieval spelling there are many more vocalic groups than in
+% Italian, because of the widespread use of the letter `u' that often
+% actually plays the r\^ole of a consonant.
+%
+% The rules for classical Latin are taken form Raffaello Farina and Nino
+% Marinone's guide \emph{Metodologia} published by Societ\`a Editrice
+% Internazionale, Torino, 1979.
+% In spite of the publication date of this guide the
+% hyphenation rules did not change in the meanwhile, since the Classical
+% Latin Language is sort of frozen during the past, say, twenty
+% centuries. Yes, it is true that the original writings in Classical
+% Latin were not hyphenated, and the hyphenation rules were established
+% at the beginning of the Renaissance, when mechanical typography
+% required suitable justification. Therefore such rules are sort of a
+% compromise between the procedures used by the various proto-typographers
+% and the scholars' of these disciplines. Nevertheless the rules given
+% by Farina and Marinone are generally shared among modern
+% scholars and are sort of official at both universities of Torino
+% and Vercelli; in the latter University they are adopted by the working group that
+% founded the DigilibLT laboratory; I acknowledge their
+% contribution in letting me become aware of the problem, and therefore
+% to create this update by adding the classical Latin support for the |babel|
+% package, with its special hyphenation rules.
+%
+% In order to implement the above described four styles of typesetting
+% three modifiers/attributes have to be defined: |medieval|, |withprosodicmarks|
+% and |classic|. They can be used in any order so that many combinations
+% are possible, although, generally speaking, just the four described ones
+% have a real meaning.
+%
+% Among these modifiers only |withprosodicmarks| can be turned on and off;
+% the others are sort of global; for example, once |classic| is specified,
+% there is no easy way to revert to modern spelling and hypehenation; the
+% same holds true for the other modifiers, except |withprosodicmarks|.
+%
+% The typesetting style |withprosodicmarks| is
+% defined in order to use special shorthands for inserting breves
% and macrons when typesetting grammars, dictionaries, teaching
% texts, and the like, where prosodic marks are important for the
-% complete information on the words or the verses. The shortcuts,
+% complete information on the words or the verses. The shorthands,
% listed in table~\ref{t:lashrtct} and described in
-% section~\ref{s:shrtcts}, may interfere with other packages;
-% therefore by default this third style is off and no interference
-% is introduced. If this third style is used and interference is
+% subsection~\ref{s:shrtcts}, may interfere with other packages;
+% therefore by default this style is turned off and no interference
+% is introduced. If this style is used and interference is
% experienced, there are special commands for turning on and off
-% the specific short hand commands of this style.
+% its specific shorthand commands.
%
-% 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
+% For what concerns |babel| and typesetting with \LaTeX, the
+% differences between the three spelling styles reveal themselves
+% in the strings used to name, for example, the ``Preface'' that
% becomes ``Praefatio'' or ``Pr\ae 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 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
+% file \file{hyph-la.tex} takes care of the modern and medieval versions
+% of the language, while \file{hyph-llac.tex} takes care of the classical
+% hyphenation. The user should not attempt to modify these files, because
+% they are not dealt with by |babel|; they are used only during the
+% creation of format files. If some errors or modifications are required
+% or suggested, it is necessary to ask their maintainer.
+%
+% The name strings for chapters, figures, tables, et cetera, have been
+% suggested by prof. Raffaella Tabacco, a latinist of the
+% University of Vercelli, 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
+% For this language some shorthands 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
+% all 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.\\
+% medieval ligatures \ae\ and \oe\ because they are long wowels.\\
% |=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.\\
+% medieval ligatures \ae\ and \oe\ because they are naturally long.\\
% |"| & 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).\\
+% the next character must not be either a non-letter token
+% or an accented letter (for foreign names).\\
% \texttt{\string"\string|}
-% & same as above, but operates also when the next character
-% is a medieval ligature or an accented letter.
+% & same as above, but operates also when the next token
+% is not a letter or it is an accented character.
% \end{tabular}
-% \caption[]{Shortcuts defined for the Latin language. The
+% \caption[]{Shorthands defined for the Latin language. The
% characters \texttt{\string^} and \texttt{\string=} are
% active only when the language attribute
% \texttt{withprosodicmarks} has been declared,
% otherwise they are disabled; see
-% section~\ref{s:shrtcts} for more details.}%
+% subsection~\ref{s:shrtcts} at page~\pageref{s:shrtcts}
+% for more details.}%
% \label{t:lashrtct}
% \end{table}
% \StopEventually{}
%
+% \section{The code}
+%
% 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}
+%\iffalse
%<*code>
+%\fi
+% \begin{macrocode}
\LdfInit{latin}{captionslatin}
% \end{macrocode}
%
@@ -203,23 +253,48 @@
% \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 third typesetting style |withprosodicmarks| is defined here
+% The typesetting style |withprosodicmarks| is defined here:
% \begin{macrocode}
\bbl@declare@ttribute{latin}{withprosodicmarks}{%
\expandafter\addto\expandafter\extraslatin
\expandafter{\extraswithprosodicmarks}%
}
% \end{macrocode}
+%
+% The `classic' typesetting style is described here: notice that the general
+% typesetting rules are identical with those of modern Latin, the default
+% one, but the hyphenation rules are different; therefore we just change
+% the meaning of counter |\l@latin| so that it points to the language
+% counter of classical Latin. In order to avoid a fatal error we test if
+% language |classiclatin| has its patterns already loaded, otherwise we issue
+% a warning and keep going with the default modern hyphenation
+% \begin{macrocode}
+\bbl@declare@ttribute{latin}{classic}{%
+ \expandafter\addto\expandafter\extraslatin
+ \expandafter{\extrasclassic}%
+ }
+\ifx\l@classiclatin\undefined
+ \let\l@classiclatin\l@latin
+ \PackageWarningNoLine{babel}{%
+ Attention: hyphenation patterns for language\MessageBreak
+ classiclatin have not been loaded\MessageBreak
+ I go on using the modern Latin hyphenation patterns.\MessageBreak
+ Please, load the suitable patterns or upgrade your TeX distribution}
+\fi
+\addto\extrasclassic{\let\l@latin\l@classiclatin}
+% \end{macrocode}
% It must be remembered that the |medieval| and the |withprosodicmarks|
-% styles may be used together.
+% styles may be used together. They are also compatible with
+% the |classic| attribute, but it would be unusual to typeset classical
+% Latin with some medieval features and/or with the prosodic marks that were
+% unknown twenty centuries ago.
%
-% The next step consists of defining commands to switch to (and
+% The next step consists in defining commands to switch to (and
% from) the Latin language\footnote{Most of these names were
% kindly suggested by Raffaella Tabacco.}.
%
@@ -269,7 +344,7 @@
% 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
+% indeclinable. The clever use of a dative 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.
@@ -280,15 +355,20 @@
% \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
+% arbitrary and may be changed in the future. For medieval and classic 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.
+% when the attribute `medieval' and/or `classic' is selected.
% \changes{latin-2.0f}{2005/03/30}{Added a comment character to
-% prevent unwanted space}
+% prevent unwanted space}
+% \changes{latin-2.0k}{2011/02/06}{Inserted the various `November' Latin
+% spellings to the proper `extras' macros}
% \begin{macrocode}
+\addto\extraslatin{\def\november{Novembris}}
+\addto\extrasmedievallatin{\def\november{Nouembris}}
+\addto\extrasclassiclatin{\def\november{Nouembris}}
+%
\def\datelatin{%
- \def\november{Novembris}%
\def\today{%
{\check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont
\uppercase\expandafter{\romannumeral\day}}~\ifcase\month\or
@@ -299,18 +379,6 @@
% \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.
@@ -323,7 +391,11 @@
%
% \begin{macro}{\extraslatin}
% \begin{macro}{\noextraslatin}
-% Lower the chance that clubs or widows occur.
+% For Latin the |\clubpenalty|, |\widowpenalty| are set to
+% rather high values and |\finalhyphendemerits| is set to such a
+% high value that hyphenation is almost prohibited between the last two
+% lines of a paragraph.
+%
% \begin{macrocode}
\addto\extraslatin{%
\babel@savevariable\clubpenalty
@@ -331,8 +403,8 @@
\babel@savevariable\widowpenalty
\clubpenalty3000\@clubpenalty3000\widowpenalty3000}
% \end{macrocode}
-% Never ever break a word between the last two lines of a paragraph
-% in latin texts.
+% Hopefully never ever break a word between the last two lines of
+% a paragraph in latin texts.
% \begin{macrocode}
\addto\extraslatin{%
\babel@savevariable\finalhyphendemerits
@@ -341,15 +413,19 @@
% \end{macro}
% \end{macro}
%
-% With medieval Latin we need the suitable correspondence between
+% With medieval and classic 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}
+\babel@savevariable{\lccode`\V}%
+\babel@savevariable{\uccode`\u}%
+\lccode`\V=`\u \uccode`\u=`\V}
+\addto\extrasclassiclatin{%
+\babel@savevariable{\lccode`\V}%
+\babel@savevariable{\uccode`\u}%
+\lccode`\V=`\u \uccode`\u=`\V}
% \end{macrocode}
%
% \begin{macro}{\SetLatinLigatures}
@@ -371,9 +447,11 @@
% `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.
+% handling a quill penn\dots Moreover in medieval times it was very
+% frequent to close such ligatures to the corresponding sound,
+% therefore instead of writing \ae\ or \oe\ they would often simply
+% write `e'. 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\extrasmedievallatin{%
@@ -390,6 +468,7 @@
\babel@savevariable{\uccode`\^^1b}% OT1 \OE
\babel@savevariable{\lccode`\^^1e}% OT1 \OE
\SetLatinLigatures}
+
\providecommand\SetLatinLigatures{%
\def\@tempA{T1}\ifx\@tempA\f@encoding
\catcode`\^^e6=11 \lccode`\^^e6=`\^^e6 \uccode`\^^e6=`\^^c6 % \ae
@@ -398,25 +477,26 @@
\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`\^^1d=11 \lccode`\^^1d=`\^^1a % \AE
\catcode`\^^1b=11 \lccode`\^^1b=`\^^1b \uccode`\^^1b=`\^^1e % \oe
- \catcode`\^^1e=11 \lccode`\^^1e=`\^^1b % \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}|
+% 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) we defined a third language attribute, or a third
-% typesetting style, a couple of other active characters are
+% \changes{latin-2.0j}{20104/02/18}{Renamed this section to subsection}
+% \subsection{Latin shorthands}\label{s:shrtcts}
+% For writing dictionaries or school texts (in modern spelling
+% only) we defined a language attribute or
+% typesetting style, such that 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
+% marking a vowel with the macron 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
@@ -426,15 +506,15 @@
% 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
+% have other meanings in other contexts. For example, besides math,
+% 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
+% typesetting certain kinds of document, 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 if the attribute |withprosodicmarks|
+% characters are turned on and off at will; by default
+% they are off if the attribute |withprosodicmarks|
% has not been set.
%
% \begin{macro}{\ProsodicMarksOn}
@@ -442,10 +522,10 @@
% We begin by adding to the normal typesetting style the
% definitions of the new commands |\ProsodicMarksOn| and
% |\ProsodicMarksOff| that should produce error messages when the
-% third style is not declared:
+% this style is not declared:
% \begin{macrocode}
\addto\extraslatin{\def\ProsodicMarksOn{%
- \GenericError{(latin)\@spaces\@spaces\@spaces\@spaces}%
+\GenericError{(latin)\@spaces\@spaces\@spaces\@spaces}%
{Latin language error: \string\ProsodicMarksOn\space
is defined by setting the\MessageBreak
language attribute to `withprosodicmarks'\MessageBreak
@@ -456,18 +536,13 @@
\addto\extraslatin{\let\ProsodicMarksOff\relax}
% \end{macrocode}
%
-% Then we temporarily set the caret and the equals sign to active
-% characters so that they can receive their definitions. But first
-% we store their current category codes to restore them later on.
-% \changes{latin-2.0k}{2008/03/21}{Save current category codes of
-% equals sign and caret in order to restore them later}
+% Next we temporarily set the caret and the equals sign to active
+% characters so that they can receive their definitions:
% \begin{macrocode}
-\@tempcnta=\catcode`\=
-\@tempcntb=\catcode`\^
\catcode`\= \active
\catcode`\^ \active
% \end{macrocode}
-% Now we can add the necessary declarations to the macros that are
+% and we add the necessary declarations to the macros that are
% being activated when the Latin language and its typesetting
% styles are declared:
% \begin{macrocode}
@@ -478,20 +553,18 @@
\addto\noextraswithprosodicmarks{\bbl@deactivate{=}}%
\addto\extraswithprosodicmarks{\ProsodicMarks}
% \end{macrocode}
-% \end{macro}
-% \end{macro}
%
% \begin{macro}{\ProsodicMarks}
-% Next we define the defining macro for the active characters
-% \changes{latin-2.0k}{2008/03/21}{Use \cs{active} instead of 13}
+% Next we define the macros for the active characters
% \begin{macrocode}
\def\ProsodicMarks{%
- \def\ProsodicMarksOn{\catcode`\^ \active\catcode`\= \active}%
- \def\ProsodicMarksOff{\catcode`\^ 7\catcode`\= 12\relax}%
+\def\ProsodicMarksOn{\catcode`\^ 13\catcode`\= 13\relax}%
+\def\ProsodicMarksOff{\catcode`\^ 7\catcode`\= 12\relax}%
+}
% \end{macrocode}
% Notice that with the above redefinitions of the commands
% |\ProsodicMarksOn| and |\ProsodicMarksOff|, the operation of the
-% newly defined shortcuts may be switched on and off at will, so
+% newly defined shorthands may be switched on and off at will, so
% that even if a picture has to be inserted in the document by
% means of the commands and keyword options of the |graphicx|
% package, it suffices to switch them off before invoking the
@@ -503,35 +576,34 @@
% \changes{latin-2.0g}{2005/11/17}{changed \cs{allowhyphens} to
% \cs{bbl@allowhyphens}}
% \begin{macrocode}
- \initiate@active@char{^}%
- \initiate@active@char{=}%
- \declare@shorthand{latin}{^a}{%
+\initiate@active@char{^}%
+\initiate@active@char{=}%
+\declare@shorthand{latin}{^a}{%
\textormath{\u{a}\bbl@allowhyphens}{\hat{a}}}%
- \declare@shorthand{latin}{^e}{%
+\declare@shorthand{latin}{^e}{%
\textormath{\u{e}\bbl@allowhyphens}{\hat{e}}}%
- \declare@shorthand{latin}{^i}{%
+\declare@shorthand{latin}{^i}{%
\textormath{\u{\i}\bbl@allowhyphens}{\hat{\imath}}}%
- \declare@shorthand{latin}{^o}{%
+\declare@shorthand{latin}{^o}{%
\textormath{\u{o}\bbl@allowhyphens}{\hat{o}}}%
- \declare@shorthand{latin}{^u}{%
+\declare@shorthand{latin}{^u}{%
\textormath{\u{u}\bbl@allowhyphens}{\hat{u}}}%
%
- \declare@shorthand{latin}{=a}{%
+\declare@shorthand{latin}{=a}{%
\textormath{\={a}\bbl@allowhyphens}{\bar{a}}}%
- \declare@shorthand{latin}{=e}{%
+\declare@shorthand{latin}{=e}{%
\textormath{\={e}\bbl@allowhyphens}{\bar{e}}}%
- \declare@shorthand{latin}{=i}{%
+\declare@shorthand{latin}{=i}{%
\textormath{\={\i}\bbl@allowhyphens}{\bar{\imath}}}%
- \declare@shorthand{latin}{=o}{%
+\declare@shorthand{latin}{=o}{%
\textormath{\={o}\bbl@allowhyphens}{\bar{o}}}%
- \declare@shorthand{latin}{=u}{%
+\declare@shorthand{latin}{=u}{%
\textormath{\={u}\bbl@allowhyphens}{\bar{u}}}%
-}
% \end{macrocode}
% Notice that the short hand definitions are given only for lower
% case letters; it would not be difficult to extend the set of
% definitions to upper case letters, but it appears of very little
-% use in view of the kind of documents where prosodic marks are
+% use in view of the kinds of document where prosodic marks are
% supposed to be used. Nevertheless in those rare cases when it's
% required to set some uppercase letters with their prosodic
% marks, it is always possible to use the standard \LaTeX\ commands
@@ -539,31 +611,29 @@
% typesetting~\=A.
%
% Finally we restore the caret and equals sign initial default
-% category codes.
-% \changes{latin-2.0k}{2008/03/21}{Restore category codes rather then
-% return them to their \TeX\ default values. \emph{And} do that
-% outside of the command definition}
+% category codes
% \begin{macrocode}
-\catcode`\= \@tempcnta
-\catcode`\^ \@tempcntb
+\catcode`\= 12\relax
+\catcode`\^ 7\relax
% \end{macrocode}
% so as to avoid conflicts with other packages or other \babel\
% options.
% \end{macro}
+% \end{macro}
+% \end{macro}
%
% \begin{macro}{\LatinMarksOn}
% \begin{macro}{\LatinMarksOff}
% \changes{latin-2.0g}{2005/11/17}{Added two commands}
% \changes{latin-2.0h}{2007/10/19}{Added missing backslash}
-% We define two new commands so as to switch on and off the breve
-% and macron shortcuts.
+% The following commands remain defined for backwards compatibility,
+% but hey are obsolete and should not be used.
% \changes{latin-2.0h}{2007/10/20}{Removed the setting of
% \cs{LatinMarksOff} from \cs{extraslatin}}
-% \changes{latin-2.0k}{2008/03/21}{Set the \cs{LatinMarks...} commands
-% equal to the \cs{ProsodicMarks..} commands for compatibility}
% \begin{macrocode}
-\addto\extraswithprosodicmarks{\let\LatinMarksOn\ProsodicMarksOn}
-\addto\extraswithprosodicmarks{\let\LatinMarksOff\ProsodicMarksOff}
+\addto\extraslatin{\def\LatinMarksOn{\shorthandon{^}\shorthandon{=}}}
+\addto\extraslatin{\def\LatinMarksOff{\shorthandoff{^}\shorthandoff{=}}}
+%\addto\extraslatin{\LatinMarksOff}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -574,11 +644,37 @@
% (only in school textbooks), this shouldn't be of any importance
% for what concerns the quality of typesetting.
%
-% \section{Etymological hyphenation}
+% \changes{latin-2.0j}{2014/02/18}{Renamed this section to subsection}
+% \subsection{Etymological hyphenation}
% 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.
+% with hyphenation allowed after it. You may see this sign as a
+% substitute for a ``compound word mark''.
+%
+% This is particularly useful with classical Latin because this
+% language requires etymological hyphenation; patterns were created
+% with etymological hyphenation in mind, but even if for certain
+% prefixes or suffixes it works pretty well, it does not for certain
+% other ones. For example the word `redire' should be hyphenated as
+% `red-i-re'; but there are plenty of other words starting with the
+% string `red' that does not play the r\^ole of a prefix; therefore
+% it should be necessary to extract all the Latin words where `red'
+% is a prefix, and enter the suitable patterns to hyphenate correctly
+% only those words; in the simple case of the verb `redire' it would
+% be necessary to enter all the words that belong to the conjugation
+% of this verb and the declination of the present, future and past
+% participles in masculine, feminine and neutral forms; the same problem
+% takes place with prefix `trans' where sometimes is a real prefix,
+% such as in `transire' (hyphenation trans-i-re), and sometimes is
+% modified with the absorption of an initial `s' of the suffix, such
+% as in `transubstantialis' (classical hyphenation: tran-subs-tan-tia-lis).
+
+% Obviously this task would render the pattern file enormous, and mostly
+% useless. The active character |"| solves the problem for isolated instances,
+% while the hyphenations exception lists of the only forms actually used
+% in a specific document, would do the rest.
+%
% 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.
@@ -602,7 +698,7 @@
\lt@@next
}%
% \end{macrocode}
-% In text mode the \cs{lt@next} control sequence is such that upon
+% 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
@@ -610,35 +706,48 @@
% 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.
+% letter, it is tested against the definitions of |\ae| and |\oe|,
+% and if the test is true than such definitions are treated as
+% letters (as they actually are), otherwise 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.
% \changes{latin-2.0g}{2005/11/17}{Added a \cs{nobreak}}
+% \changes{latin-3.0}{2014/06/01}{\cs{lt@allowhyphens} rewritten so as
+% to use the babel core command \cs{bbl@allowhyphens}}
+% \changes{latin-3.0}{2014/06/01}{Introduced the tests for the ligatures
+% \cs{ae} and \cs{oe}}
% \begin{macrocode}
-\def\lt@allowhyphens{\nobreak\discretionary{-}{}{}\nobreak\hskip\z@skip}
+\def\lt@allowhyphens{\bbl@allowhyphens\discretionary{-}{}{}\bbl@allowhyphens}
\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}%
+ \ifx\lt@temp\ae
+ \let\lt@n@xt\lt@allowhyphens
+ \else
+ \ifx\lt@temp\oe
+ \let\lt@n@xt\lt@allowhyphens
+ \else
+ \if\noexpand\lt@temp\string|%
+ \def\lt@n@xt{\lt@allowhyphens\@gobble}%
+ \fi
+ \fi
\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}.
+% Attention: the ligature commands |\ae| and |\oe| are detected correctly
+% if they are not included within a group. In facts an input such as
+% |super"{\ae}quitas|\footnote{This word does not exist in
+% ``regular'' Latin, and it is used just as an example.} gets wrongly
+% hyphenated as \texttt{su-pe-r\ae-qui-tas} while |super"\ae{}quitas|,
+% that uses an empty group to terminate the |\ae| control sequence, gets
+% correctly hyphenated as \texttt{su-per-\ae-qui-tas}. If one prefers to
+% close the |\ae| or |\oe| ligature commands within a group, then it is
+% necessary to use the alternate etymological hyphenation command \verb+"|+
+% as in \verb!super"|{\ae}quitas! in order to get \texttt{su-per-{\ae}-qui-tas}.
+% .
%
% The macro |\ldf@finish| takes care of looking for a
% configuration file, setting the main language to be switched on
@@ -646,8 +755,10 @@
% \texttt{@} to its original value.
% \begin{macrocode}
\ldf@finish{latin}
-%</code>
% \end{macrocode}
+%\iffalse
+%</code>
+%\fi
%
% \Finale
%%
@@ -668,3 +779,4 @@
%% Right brace \} Tilde \~}
%%
\endinput
+
diff --git a/Master/texmf-dist/source/generic/babel-latin/latin.ins b/Master/texmf-dist/source/generic/babel-latin/latin.ins
index 763ed018ff2..1d6d6bc2ef6 100644
--- a/Master/texmf-dist/source/generic/babel-latin/latin.ins
+++ b/Master/texmf-dist/source/generic/babel-latin/latin.ins
@@ -3,35 +3,19 @@
%% driver files from the doc files in this package when run through
%% LaTeX or TeX.
%%
-%% Copyright 1989-2008 Johannes L. Braams and any individual authors
+%% 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.
-%% --------------------------------------
+%% This file is part of the Babel system, release 3.7.
+%% ---------------------------------------------------
%%
-%% 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.
+%% 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\filedate{2014/05/27}
\def\batchfile{latin.ins}
\input docstrip.tex
@@ -51,69 +35,32 @@
\fi}
\declarepreamble\mainpreamble
+
This is a generated file.
-Copyright 1989-2008 Johannes L. Braams and any individual authors
+Copyright 1989-2000 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 is part of the Babel system release 3.7.
+--------------------------------------------------
-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.
-
-Copyright 1999-2007 Claudio Beccari All rights reserved.
+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 1989-2008 Johannes L. Braams and any individual authors
+Copyright 2000 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.
+This file is part of the Babel system, release 3.7.
+---------------------------------------------------
-The list of all files belonging to the Babel distribution is
-given in the file `manifest.bbl'. See also `legal.bbl for additional
-information.
+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.
diff --git a/Master/texmf-dist/tex/generic/babel-latin/latin.ldf b/Master/texmf-dist/tex/generic/babel-latin/latin.ldf
index 0ba24cc5c66..c99275b4587 100644
--- a/Master/texmf-dist/tex/generic/babel-latin/latin.ldf
+++ b/Master/texmf-dist/tex/generic/babel-latin/latin.ldf
@@ -5,41 +5,20 @@
%% The original source files were:
%%
%% latin.dtx (with options: `code')
+%%
%% This is a generated file.
%%
-%% Copyright 1989-2008 Johannes L. Braams and any individual authors
+%% Copyright 1989-2000 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.
+%% This file is part of the Babel system release 3.7.
+%% --------------------------------------------------
%%
-%% 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.
-%%
-%% Copyright 1999-2007 Claudio Beccari All rights reserved.
+%% 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}
- [2008/07/06 v2.0l Latin support from the babel system]
+ [2014/06/01 v.3.0 Latin support from the babel system]
%% File `latin.dtx'
%% Babel package for LaTeX version 2e
%% Copyright (C) 1989 - 2008
@@ -54,7 +33,6 @@
\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}%
}
@@ -62,6 +40,19 @@
\expandafter\addto\expandafter\extraslatin
\expandafter{\extraswithprosodicmarks}%
}
+\bbl@declare@ttribute{latin}{classic}{%
+ \expandafter\addto\expandafter\extraslatin
+ \expandafter{\extrasclassic}%
+ }
+\ifx\l@classiclatin\undefined
+ \let\l@classiclatin\l@latin
+ \PackageWarningNoLine{babel}{%
+ Attention: hyphenation patterns for language\MessageBreak
+ classiclatin have not been loaded\MessageBreak
+ I go on using the modern Latin hyphenation patterns.\MessageBreak
+ Please, load the suitable patterns or upgrade your TeX distribution}
+\fi
+\addto\extrasclassic{\let\l@latin\l@classiclatin}
\@namedef{captionslatin}{%
\def\prefacename{Praefatio}%
\def\refname{Conspectus librorum}%
@@ -85,8 +76,10 @@
\def\proofname{Demonstratio}%
\def\glossaryname{Glossarium}%
}
+\addto\extraslatin{\def\november{Novembris}}
+\addto\extrasmedievallatin{\def\november{Nouembris}}
+\addto\extrasclassiclatin{\def\november{Nouembris}}
\def\datelatin{%
- \def\november{Novembris}%
\def\today{%
{\check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont
\uppercase\expandafter{\romannumeral\day}}~\ifcase\month\or
@@ -104,9 +97,13 @@
\babel@savevariable\finalhyphendemerits
\finalhyphendemerits50000000}
\addto\extrasmedievallatin{%
- \babel@savevariable{\lccode`\V}%
- \babel@savevariable{\uccode`\u}%
- \lccode`\V=`\u \uccode`\u=`\V}
+\babel@savevariable{\lccode`\V}%
+\babel@savevariable{\uccode`\u}%
+\lccode`\V=`\u \uccode`\u=`\V}
+\addto\extrasclassiclatin{%
+\babel@savevariable{\lccode`\V}%
+\babel@savevariable{\uccode`\u}%
+\lccode`\V=`\u \uccode`\u=`\V}
\addto\extrasmedievallatin{%
\babel@savevariable{\lccode`\^^e6}% T1 \ae
\babel@savevariable{\uccode`\^^e6}% T1 \ae
@@ -121,6 +118,7 @@
\babel@savevariable{\uccode`\^^1b}% OT1 \OE
\babel@savevariable{\lccode`\^^1e}% OT1 \OE
\SetLatinLigatures}
+
\providecommand\SetLatinLigatures{%
\def\@tempA{T1}\ifx\@tempA\f@encoding
\catcode`\^^e6=11 \lccode`\^^e6=`\^^e6 \uccode`\^^e6=`\^^c6 % \ae
@@ -129,14 +127,14 @@
\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`\^^1d=11 \lccode`\^^1d=`\^^1a % \AE
\catcode`\^^1b=11 \lccode`\^^1b=`\^^1b \uccode`\^^1b=`\^^1e % \oe
- \catcode`\^^1e=11 \lccode`\^^1e=`\^^1b % \OE (^^^)
+ \catcode`\^^1e=11 \lccode`\^^1e=`\^^1b % \OE
\fi
\let\@tempA\@undefined
}
\addto\extraslatin{\def\ProsodicMarksOn{%
- \GenericError{(latin)\@spaces\@spaces\@spaces\@spaces}%
+\GenericError{(latin)\@spaces\@spaces\@spaces\@spaces}%
{Latin language error: \string\ProsodicMarksOn\space
is defined by setting the\MessageBreak
language attribute to `withprosodicmarks'\MessageBreak
@@ -145,8 +143,6 @@
{See the Latin language description in the babel
documentation for explanation}{\@ehd}}}
\addto\extraslatin{\let\ProsodicMarksOff\relax}
-\@tempcnta=\catcode`\=
-\@tempcntb=\catcode`\^
\catcode`\= \active
\catcode`\^ \active
\addto\extraslatin{\languageshorthands{latin}}%
@@ -156,35 +152,36 @@
\addto\noextraswithprosodicmarks{\bbl@deactivate{=}}%
\addto\extraswithprosodicmarks{\ProsodicMarks}
\def\ProsodicMarks{%
- \def\ProsodicMarksOn{\catcode`\^ \active\catcode`\= \active}%
- \def\ProsodicMarksOff{\catcode`\^ 7\catcode`\= 12\relax}%
- \initiate@active@char{^}%
- \initiate@active@char{=}%
- \declare@shorthand{latin}{^a}{%
+\def\ProsodicMarksOn{\catcode`\^ 13\catcode`\= 13\relax}%
+\def\ProsodicMarksOff{\catcode`\^ 7\catcode`\= 12\relax}%
+}
+\initiate@active@char{^}%
+\initiate@active@char{=}%
+\declare@shorthand{latin}{^a}{%
\textormath{\u{a}\bbl@allowhyphens}{\hat{a}}}%
- \declare@shorthand{latin}{^e}{%
+\declare@shorthand{latin}{^e}{%
\textormath{\u{e}\bbl@allowhyphens}{\hat{e}}}%
- \declare@shorthand{latin}{^i}{%
+\declare@shorthand{latin}{^i}{%
\textormath{\u{\i}\bbl@allowhyphens}{\hat{\imath}}}%
- \declare@shorthand{latin}{^o}{%
+\declare@shorthand{latin}{^o}{%
\textormath{\u{o}\bbl@allowhyphens}{\hat{o}}}%
- \declare@shorthand{latin}{^u}{%
+\declare@shorthand{latin}{^u}{%
\textormath{\u{u}\bbl@allowhyphens}{\hat{u}}}%
- \declare@shorthand{latin}{=a}{%
+\declare@shorthand{latin}{=a}{%
\textormath{\={a}\bbl@allowhyphens}{\bar{a}}}%
- \declare@shorthand{latin}{=e}{%
+\declare@shorthand{latin}{=e}{%
\textormath{\={e}\bbl@allowhyphens}{\bar{e}}}%
- \declare@shorthand{latin}{=i}{%
+\declare@shorthand{latin}{=i}{%
\textormath{\={\i}\bbl@allowhyphens}{\bar{\imath}}}%
- \declare@shorthand{latin}{=o}{%
+\declare@shorthand{latin}{=o}{%
\textormath{\={o}\bbl@allowhyphens}{\bar{o}}}%
- \declare@shorthand{latin}{=u}{%
+\declare@shorthand{latin}{=u}{%
\textormath{\={u}\bbl@allowhyphens}{\bar{u}}}%
-}
-\catcode`\= \@tempcnta
-\catcode`\^ \@tempcntb
-\addto\extraswithprosodicmarks{\let\LatinMarksOn\ProsodicMarksOn}
-\addto\extraswithprosodicmarks{\let\LatinMarksOff\ProsodicMarksOff}
+\catcode`\= 12\relax
+\catcode`\^ 7\relax
+\addto\extraslatin{\def\LatinMarksOn{\shorthandon{^}\shorthandon{=}}}
+\addto\extraslatin{\def\LatinMarksOff{\shorthandoff{^}\shorthandoff{=}}}
+
\initiate@active@char{"}%
\addto\extraslatin{\bbl@activate{"}%
}
@@ -196,13 +193,21 @@
\fi
\lt@@next
}%
-\def\lt@allowhyphens{\nobreak\discretionary{-}{}{}\nobreak\hskip\z@skip}
+\def\lt@allowhyphens{\bbl@allowhyphens\discretionary{-}{}{}\bbl@allowhyphens}
\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}%
+ \ifx\lt@temp\ae
+ \let\lt@n@xt\lt@allowhyphens
+ \else
+ \ifx\lt@temp\oe
+ \let\lt@n@xt\lt@allowhyphens
+ \else
+ \if\noexpand\lt@temp\string|%
+ \def\lt@n@xt{\lt@allowhyphens\@gobble}%
+ \fi
+ \fi
\fi
\fi
\lt@n@xt}%