summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx')
-rw-r--r--Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx344
1 files changed, 211 insertions, 133 deletions
diff --git a/Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx b/Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx
index 26156bde6d6..97d3a08457a 100644
--- a/Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx
+++ b/Master/texmf-dist/source/latex/ecclesiastic/ecclesiastic.dtx
@@ -1,28 +1,11 @@
% \iffalse meta-comment
%
-% Copyright 2008 Claudio Beccari
-%
-% This file is part of the ecclesiastic bundle
-% -------------------------------------------
-%
-% 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 file has the LPPL maintenance status "author-maintained".
-%
-% The list of derived (unpacked) files belonging to the distribution
-% and covered by LPPL is: ecclesiastic.sty, ecclesiastic.pdf.
%<*internal>
\begingroup
\input docstrip.tex
\preamble
-Copyright 2012 Claudio Beccari and Donald Goodman. All rights reserved.
+Copyright 2012-2015 Claudio Beccari and Donald Goodman. All rights reserved.
This system is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -35,12 +18,17 @@ This file is subject to the LPPL licence, version 1.3 or any subsequent
version. Copy of the LaTeX Project Public Licence is downloadable from
any CTAN archive.
+It may be distributed and/or modified under the
+conditions of the above mentiond LaTeX Project Public License
+
+This file has the LPPL maintenance status "author-maintained".
\endpreamble
\postamble
-This work consists of this file ecclesiastic.dtx, a README file, and
-the derived files ecclesiastic.sty and ecclesiastic.pdf.
+This work consists of this file ecclesiastic.dtx, a README file,
+a manifest.txt file and the derived files ecclesiastic.sty and
+ecclesiastic.pdf.
\endpostamble
@@ -49,7 +37,7 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\askforoverwritefalse
-\generateFile{ecclesiastic.sty}{t}{\from{ecclesiastic.dtx}{package}}
+\generate{\file{ecclesiastic.sty}{\from{ecclesiastic.dtx}{package}}}
\def\tmpa{plain}
\ifx\tmpa\fmtname\endgroup\expandafter\bye\fi
@@ -61,13 +49,16 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
%<package>\NeedsTeXFormat{LaTeX2e}[1996/12/01]%
%<package>\ProvidesPackage{ecclesiastic}%
%<*package>
- [2012/07/29 v.0.2 Ecclesiastic composition of Latin]
+ [2015/08/20 v.0.3 Ecclesiastic composition of Latin]
%</package>
%<*driver>
\documentclass{ltxdoc}
-\usepackage[latin,english]{babel}
+\usepackage[T1]{fontenc}
+\usepackage[latin.ecclesiastic,english]{babel}
\usepackage[latin1]{inputenc}
-\usepackage{ecclesiastic}
+\usepackage{xspace}
+\newcommand*\pack[1]{\textsf{#1}}
+\newcommand\babel{\pack{babel}\xspace}
\begin{document}
\DocInput{ecclesiastic.dtx}
\end{document}
@@ -79,7 +70,7 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
%
%
% \title{Package \texttt{ecclesiastic.sty}\thanks{This document corresponds
-% to \textsf{ecclesiastic.sty}~\fileversion, dated~\filedate.\newline
+% to \pack{ecclesiastic.sty}~\fileversion, dated~\filedate.\newline
% Claudio Beccari (\texttt{claudio dot beccari at gmail dot com}) did the
% programming.
% Donald Goodman (\texttt{dgoodmaniii at gmail dot com}) asked for this
@@ -91,11 +82,15 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
%
% \begin{abstract}
% This package extends the typesetting facilities of the \textsl{latin} option
-% to the \textsf{babel} package for typesetting Latin according to the
+% to the \pack{babel} package for typesetting Latin according to the
% tradition of ecclesiastic documents; these documents are mainly the
% devotional books used by the Roman Catholic clergy, but not limited to them,
% that are being published not only by the Vatican Typography, but also by many
-% Printing Companies around the world.
+% Printing Companies around the world. This package works only with pdf\/\LaTeX;
+% if an attempt is made to use it while typesetting with Xe\string|Lua\,\LaTeX, its
+% input is aborted and nothing is done. Most additions and modifications that
+% can be achieved with this package under pdf\/\LaTeX\ typesetting, are obtained
+% thanks to clever use of the OpenType fonts when using Xe\string|Lua \,\LaTeX.
%
% \end{abstract}
%
@@ -103,7 +98,7 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% This small extension package extends the features of \texttt{latin.ldf}
% by adding a certain level of "frenchization" to the way of typesetting
% Ecclesiastical Latin; in particular all punctuation marks, except comma
-% and full stop are preceded by a small space. The guillemets are also
+% and full stop are preceded by a small space. The guillemots are also
% accompanied by small spaces to the right of the opening marks and to the
% left of the closing ones, with the provision of removing spurious previous
% spaces. Footnotes are not indented and their reference number is not an
@@ -120,10 +115,10 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% In practice Beccari found serious programming problems with this solution and
% adopted an alternative one; specifically the adopted solution was to type in
% |"ae| and |"oe| respectively, and \ae\ and \oe\ would be inserted in the
-% source text without the need of leaving blancks after the control sequences or
+% source text without the need of leaving blanks after the control sequences or
% the need of inserting extra braces; therefore one types in |c"aelum| and this
-% is equivalent to \verb*|c\ae lum| or |c{\ae}lum| or |c\ae{}lum|; the saving in the
-% input stream is evident and misstypings are likely less frequent.
+% is equivalent to \verb*|c\ae lum| or |c{\ae}lum| or |c\ae{}lum|; the saving in
+% the% input stream is evident and typos are likely less frequent.
%
% The active apostrophe for the acute accent behaves properly also with y
% and |'ae| and |'oe| produce the accented diphthongs.
@@ -132,17 +127,44 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% hyphenation and kerning. When using the T1 encoding this interference
% takes place only with the accented diphthongs \ae\ and \oe; no visible
% problems for the lack of kerning, but no hyphenation takes place after
-% the accented diphthong until the end of the word, even if the grammar
-% allowed it.
+% the accented diphthongs until the end of the word, even if the grammar
+% allowed it; you can correct by hand this behavior if you add an \textsc{ascii}
+% straight double quote \emph{after} the accented diphthong: $(a)$ if
+% the grammar allows a line break at that point, and $(b)$ if justification
+% of the right margin requires it.
%
%\section{Usage}
-% Besides loading this package with the usual
+% Previous versions of this package were loaded after package \babel with
+% the |latin| language option; you can still do this way because for backwards
+% compatibility this procedure is maintained, but we discourage it for the
+% reasons that are explained hereafter.
+
+% With this new version the preferred procedure is to specify the
+% |ecclesiastic| modifier to the |latin| language option. This very file
+% contains le line:
%\begin{verbatim}
-% \usepackage{ecclesiastic}
+%\usepackage[latin.ecclesiastic,english]{babel}
%\end{verbatim}
-% after loading \textsf{babel} with the option \textsl{latin} (possibly among
-% other ones) all you have to do is to input your source code the usual way,
-% except that for guillemets and accents you are supposed to use the |"| and
+% Of course this new way of loading the package assures it to be loaded
+% at the proper moment, but it requires a \babel of at least version 3.9k;
+% the old procedure is still usable with previous versions of the \babel
+% package.
+%
+% \textbf{Important notice}: This package works only while using the |pdfLaTeX|
+% typesetting program and \babel; if you try to use it with |XeLaTeX| or
+% |LuaLaTeX| its loading procedure issues an error message and the it aborts.
+% if for any reason you have to use |XeLaTeX| or |LuaLaTeX| you can safely
+% run them without loading thins package, but simply specifying the
+% ``key=value'' option |variant=ecclesiastic| in a similar way as you specify
+% the |ecclesiastic| modifier when using \babel. With |XeLaTeX| you have
+% the full functionality of the ecclesiastic Latin variant, while, at the
+% moment, with |LuaLaTeX| the functionality misses the particular spacing
+% around some punctuation marks and around guillemots. This functionality
+% is under study, but it is hopefully available with the next package version.
+%
+% After in one way or another you have assured the presence of the special macros that implement the ecclesiastic Latin style,
+% all you have to do (with \babel) is to input your source code the usual way,
+% except that for guillemots and accents you are supposed to use the |"| and
% the |'| active characters. The input code
%\begin{verbatim}
%Ita enim fit, ut regn'are is "< in m'entibus h'ominum "> dic'atur non
@@ -157,20 +179,55 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
%V'eritas, et verit'atem ab eo mort'ales haur'ire atque obedi'enter acc'ipere
%nec'esse est; "< in volunt'atibus "> item "< h'ominum ">, quia \dots
%\end{quote}
-% Notice that the source text has spaces around the guillemets, but the
+% Notice that the source text has spaces around the guillemots, but the
% typeset code has the right small and constant space, irrespective of
% justification. Notice the use of the `acute' accent (actually the
% apostrophe) for accented vowels and diphthongs. Notice the space in the
-% typeset text before the semicolon.
+% typeset text before the semicolon; this space is gobbled and substituted
+% with the proper space.
%
% \section{Documented code}
% Some checks in order to use this package together with the one it
-% should extend.
+% should extend. Firse we load the |iftex| package in order to have the right switch to test if we are typesetting with the |pdftex| engine; inf not, an error message is issued and loading aborted.
% \iffalse
%<*package>
% \fi
% \begin{macrocode}
-\def\CheckLatin{\expandafter\ifx\csname captionslatin\endcsname\relax
+\RequirePackage{iftex}
+\unless\ifPDFTeX
+\PackageError{ecclesiastic}{\MessageBreak
+***********************************************\MessageBreak
+* This package works only with pdfLaTeX \MessageBreak
+* Please do not load it when typesetting with \MessageBreak
+* XeLaTeX or LuaLaTeX. \MessageBreak
+***********************************************\MessageBreak
+}{%
+**********************************************************\MessageBreak
+* Carefully read the documentation of package \MessageBreak
+* ecclesiastic, and understand why most functionalities \MessageBreak
+* of this package are obtained with completely different \MessageBreak
+* means, thanks the use of OpenType fonts. \MessageBreak
+* \MessageBreak
+* Input of this package is aborted. \MessageBreak
+**********************************************************\MessageBreak
+}
+\expandafter\endinput
+\fi
+% \end{macrocode}
+%
+% Then we test if \babel has already been loaded; if not an error message
+% is issued and loading aborted. Loading is aborted also if babel has been
+% loaded but the |latin| option has not been specified.
+% Notice that with version 3.5 of the Latin description file, it is recommended
+% to use the |ecclesiastic| modifier to the |latin| option; or it is possible
+% to specify the |ecclesiastic| attribute after loading \babel with the
+% |latin| option, or even after specifying this language option to the
+% |\documentclass| statement, where the modifiers can't be used.
+% By so doing you are sure that the next tests will never produce unexpected
+% results. Nevertheless we recommend to use the first method, that is to
+% specify the |ecclesiastic| modifier to the |latin| option.
+% \begin{macrocode}
+\def\CheckLatin{\unless\ifcsname captionslatin\endcsname
\PackageWarning{ecclesiastic}{\MessageBreak
latin must be specified as a global option\MessageBreak
or it must be passed as an option to babel\MessageBreak
@@ -178,84 +235,108 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
Nothing done}\expandafter\endinput\fi}
\@ifpackageloaded{babel}{\CheckLatin}{%
- \PackageWarning{ecclesiastic}{\MessageBreak
+ \PackageError{ecclesiastic}{\MessageBreak
+ ************************************************\MessageBreak
Package babel must be loaded before this package\MessageBreak
- \MessageBreak
- Nothing will be done}\endinput}
+ ************************************************%
+ }{Package loading is aborted}\endinput}
% \end{macrocode}
-%
-% The following code was borrowed from \textsf{frenchle.sty} by Bernard Gaule,
-% but there
-% are several modifications; in particular the Cyrillic guillemets are
-% effectively chosen as possible candidates before resorting to the horrible
-% patch made up with the `much smaller' and `much larger' scriptsize signs.
-% The Latin Modern fonts are preferred if they are available.
-% When the T1 encoding is in force the guillemets are taken from the
-% current font.
-% The first macro specifies a common interface for chosing where to get
-% guillemets from.
+% In practice you can chose among one of these methods to use this package.
+%\begin{enumerate}
+%\item First and recommended choice:
+%\begin{verbatim}
+%\documentclass[...]{...}
+%...
+%\usepackage[...,latin.ecclesiastic,...]{babel}
+%\end{verbatim}
+%\item~Second choice:
+%\begin{verbatim}
+%\documentclass[...]{...}
+%...
+%\usepackage[...,latin,...]{babel}
+%...
+%\usepackage{ecclesiastic}
+%\end{verbatim}
+%\item Third choice:
+%\begin{verbatim}
+%\documentclass[...,latin,...]{...]
+%...
+%\usepackage[...]{babel}
+%\languageattribute{latin}{ecclesiastic}
+%\end{verbatim}
+%\item Fourth choice:
+%\begin{verbatim}
+%\documentclass[...]{...}
+%...
+%\usepackage[...,latin,...]{babe}
+%\languageattribute{latin}{ecclesiastic}
+%\end{verbatim}
+%\end{enumerate}
+%
+% The following code was borrowed from \pack{frenchle.sty} by Bernard Gaule,
+% but there are several modifications; in particular we avoid the horrible
+% patch made up with the shorter and wider script size math signs.
+% The Latin Modern fonts are preferred if they are available. When the T1
+% encoding is in force the guillemots are taken from the current font; if
+% you want to typeset ecclesiastic Latin, you'd better use the T1 font
+% encoding; if you don't, you may get proper accented glyphs, but no hyphenation
+% after any accented glyph until the end of the word. No attempt is made to
+% create fake guillemots or to pick them from fonts that do not match the
+% current text font. In any case we provide the command |\FrenchGuillemetsFrom|
+% ( and its alias |\FrenchGuillemotsFrom|) that allows the user to chose what
+% font s/he likes best.
+%
+% The first macro specifies a common interface for choosing where to get
+% guillemots from.
% \begin{macrocode}
\let\og\empty\let\fg\empty%
+
\def\FrenchGuillemetsFrom#1#2#3#4{%
\DeclareFontEncoding{#1}{}{}%
\DeclareFontSubstitution{#1}{#2}{m}{n}%
- \DeclareTextCommand{\guillemotleft}{OT1}{%
+ \DeclareTextCommand{\guillemotleft}{T1}{%
{\fontencoding{#1}\fontfamily{#2}\selectfont\char#3}}%
- \DeclareTextCommand{\guillemotright}{OT1}{%
+ \DeclareTextCommand{\guillemotright}{T1}{%
{\fontencoding{#1}\fontfamily{#2}\selectfont\char#4}}}
+
+ \let\FrenchGuillemotsFrom\FrenchGuillemetsFrom
+
% \end{macrocode}
-% Then come the macros for selecting various type of guillemets: the first macro
-%|\CyrillicGuillemets| selects them from the Cyrillic fonts; the second macro
-% |\PolishGuillemets| selects them from the Latin Modern fonts, who were
-% assembled by the Polish TUG, from which the name; the |\LasyGuillemets|
-% represent the poor man solution, which represents the last resort:
-% \begin{macrocode}
- \def\CyrillicGuillemets{\FrenchGuillemetsFrom{OT2}{wncyr}{60}{62}}
- \def\PolishGuillemets{\FrenchGuillemetsFrom{T1}{lmr}{19}{20}}
- \def\LasyGuillemets{%
- \DeclareTextCommand{\guillemotleft}{OT1}{\hbox{%
- \fontencoding{U}\fontfamily{lasy}\selectfont(\kern-0.20em(}}%
- \DeclareTextCommand{\guillemotright}{OT1}{\hbox{%
- \fontencoding{U}\fontfamily{lasy}\selectfont)\kern-0.20em)}}}
-% \end{macrocode}
-% Now the previous macros are executed depending on what is available on the
-% particular computer the code is executed on. Thinking to end up with a PDF
-% file, we prefer the T1 encodec latin Modern fonts; if these are not
-% installed we resort to the Cyrillic one, since the OT2 encoded Cyrillic
-% fonts from the University o Wisconsin are generally installed by default
-% also in pfb format; should htese be missing, then the poor man solution
-% of the \LaTeX\ simbols is chosen. At the same time, since the latter are
-% the last resort, they are chosen as the default solution, although its
-% difficult to find an installation where either the Latin Modern or the
-% Wisconsin University fonts are not installed.
+% Then come the macros for selecting various type of guillemots: the
+%|\ToneGuillemets| macro selects them from the T1 encoded fonts;
+% according to the user input encoding, in particular the |utf8| one, when
+% this package is loaded the macros |\guillemotleft| and |\guillemotright|
+% should be defined; if either one is not, then the default guillemots are
+% taken from the T1 encoded Latin Modern fonts:
% \begin{macrocode}
- \IfFileExists{t1lmr.fd}{\PolishGuillemets}{%
- \IfFileExists{ot2wncyr.fd}{\CyrillicGuillemets}{\LasyGuillemets}}
- \DeclareTextSymbolDefault{\guillemotleft}{OT1}
- \DeclareTextSymbolDefault{\guillemotright}{OT1}
+\AtBeginDocument{%
+\unless\ifcsname guillemotleft\endcsname
+ \def\ToneGuillemets{\FrenchGuillemetsFrom{T1}{lmr}{19}{20}}\fi}
% \end{macrocode}
-% Having defined the symbols, we now think to the spacing; we chose a smaller
-% space than in French typography, but, essencially this glue is without
+% Having defined the symbols, we now provide to the spacing; we chose a smaller
+% space than in French typography, but, essentially this glue is without
% stretch and shrink components, so that this space remains constant and
% does not stretch or shrink for helping in line justification.
% \begin{macrocode}
\def\guill@spacing{\penalty\@M\hskip.3\fontdimen2\font
\@plus\z@\@minus\z@}
% \end{macrocode}
+% Notice that |\fontdimen2\font| gets the normal inter word space of the
+% current font; therefore the defined spacing of the guillemots is about
+% 1\,pt, with a 10\,pt sized font.
%
% Now we are in the position to define the opening and the closing
-% guillemet commands.
+% guillemot commands.
%
-% The spacings on the interior of the guillements and the spacings before the
-% "high" pucntuation marks are smaller than with the \texttt{frenchle.sty}
-% settings
-% for the French typography. This has been made following Robert Bringhurst
-% reccomendations of tight spacings, in particular before the punctuation
-% marks and within the French quotes.
+% The spacings on the interior of the guillemots and the spacings before the
+% ``high'' punctuation marks are smaller than with the \texttt{frenchle.sty}
+% settings for the French typography. This has been made according to Robert
+% Bringhurst's recommendation to maintain tight spacing, in particular before
+% the punctuation marks and within the French quotes.
%
% Since Beccari is not used to such spacings, forbidden in Italian typography,
% he finds the traditional French spacings very large, too large for his taste.
-% Bringhurst reccomendations come in very handy to justify the chosen spacings.
+% Bringhurst recommendations come in very handy to justify the chosen spacings.
% May be who is used to wider spacings finds them too tight. We think we found
% a compromise.
% \begin{macrocode}
@@ -266,9 +347,9 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\penalty\@M\guill@spacing\guillemotright{}}
% \end{macrocode}
%
-% We add the definition of |\og| (ouvrir guillemets) and |\fg| (fermer
-% guillements) to the |\extraslatin| list, as well as we add their
-% `emptiness' to the |\noextrnolatin| one.
+% We add the definition of |\og| (\emph{ouvrir guillemets}) and |\fg|
+% (\emph{fermer guillemets}) to the |\extraslatin| list, as well as we
+% add their `emptiness' to the |\noextraslatin| one.
% \begin{macrocode}
\addto\extraslatin{%
\renewcommand{\og}{\begin@guill}\renewcommand{\fg}{\end@guill}%
@@ -276,14 +357,14 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\addto\noextraslatin{\let\og\empty\let\fg\empty}
% \end{macrocode}
%
-% Therefore open guillemets may be input with the |\og| macro and the
+% Therefore open guillemots may be input with the |\og| macro and the
% closed ones with the |\fg| macro. This might be inconvenient, so that
% the |"<| and |">| shortcuts should be preferred; these shortcuts assure
% that the spaces after these shortcuts are really spaces and are not
% used to terminate the macro name. B.~Gaulle uses the |\xspace| macro from
% the xspace package, but if this package is not loaded or is not available, the
% |\xspace| macro behaves as |\relax| and does not produce what is intended to
-% do. See below the extended defintion of the |"| shortcut active character.
+% do. See below the extended definition of the |"| shortcut active character.
%
% Here we make the apostrophe an active char and define the shortcuts for
% Latin that introduce the acute accent over the specified vowels, lower
@@ -307,25 +388,21 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\declare@shorthand{latin}{'Y}{\'Y}
% \end{macrocode}
%
-% Here we redeclare the definition of the |"| shortcut active character;
-% it is borrowed from \textsf{italian.ldf}, but a new |\LT@cwm| macro is
+% Here we redefine the |"| shortcut active character;
+% it is borrowed from \pack{italian.ldf}, but a new |\LT@cwm| macro is
% added to the existing |\lt@@cwm| one so as to cope also with |"ae| and |"oe|,
-% besides the guillemet commands.
+% besides the guillemot commands.
%
% The following declaration is probably a repetition of what is already in
-% \textsf{latin.ldf}
+% \pack{latin.ldf}
% \begin{macrocode}
\declare@shorthand{latin}{"}{%
-\ifmmode
- \def\lt@next{''}%
-\else
- \def\lt@next{\futurelet\lt@temp\lt@cwm}%
-\fi
-\lt@next
+\textormath{\def\lt@next{\futurelet\lt@temp\lt@cwm}}%
+ {\def\lt@next{''}}\lt@next
}%
% \end{macrocode}
%
-% This also should already be in \textsf{latin.ldf}; it is the command that
+% This also should already be in \pack{latin.ldf}; it is the command that
% inserts a discretionary break, but does not inhibit hyphenation in the
% rest of the word.
% \begin{macrocode}
@@ -333,12 +410,12 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% \end{macrocode}
%
% This, for what concerns Latin, is new as an interface with the definitions
-% of the guillemets
+% of the guillemots
% \begin{macrocode}
\def\lt@@ocap#1{\begin@guill}\def\lt@@ccap#1{\end@guill}%
% \end{macrocode}
%
-% This is completely new; il deals with |\ae| and |\oe|; since |\ae| is much
+% This is completely new; it deals with |\ae| and |\oe|; since |\ae| is much
% more frequent than |\oe|, we start with testing for an `a' followed by
% an `e', otherwise we test about the presence of an `o':
% \begin{macrocode}
@@ -353,7 +430,7 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% If a sequence |ae| was detected, then |\ae| is inserted in the input stream
% in place of that sequence, otherwise the two tokens are inserted in the input
% stream preceded by the discretionary break implied by the presence of the
-% |"| sign that thriggered the whole process.
+% |"| sign that triggered the whole process.
%
% \begin{macrocode}
\def\maybeae#1#2{%
@@ -387,22 +464,23 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\fi}
% \end{macrocode}
%
-% This is the real execution of the |"| shortcut; remember that |\lt@csw|
-% is an alias for |\lt@next|, the action associated with |"| when outside
+% This is the real execution of the |"| shortcut; remember that |\lt@cwm|
+% is activated by |\lt@next|, the action associated with |"| when outside
% the math mode; furthermore |\lt@temp| contains the token following
% the |"| sign. Notice that the category code of the |\lt@temp| is compared
% to that of a generic letter; the choice of `e' is absolutely irrelevant,
-% because it is a generic letter; any other letter would have done the same.
-% So, first the temporary token is compared to a letter; if it's a letter the
+% because it is a generic letter; any other letter would do the same.
+% So, first the temporary token category code is compared to that of a letter;
+% if it's a letter then
% |\LT@cwm| is executed; the latter on turn looks for an `a' or an `o' and
% possibly inserts a diphthong or a discretionary break; otherwise the
% temporary token is compared to \verb+|+, so that the shortcut \verb+"|+
% is possibly executed by inserting a discretionary break and by gobbling
% the bar; otherwise it checks for a `less than' sign and
-% possibly inserts double open guillemets; otherwise it checks for a
-% `greater than' sign and possibly inserts double closed guillemets;
+% possibly inserts double open guillemots; otherwise it checks for a
+% `greater than' sign and possibly inserts double closed guillemots;
% otherwise it checks for the slash and possibly it inserts a breakable
-% slash |\slash|; otherwise it checks for another double straight quotes
+% slash |\slash|; otherwise it checks for another double straight quote
% sign and possibly it inserts double open high quotes (this is useful
% for those keyboards that do not have the `back tick' sign |`|).
% \begin{macrocode}
@@ -434,7 +512,7 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% \end{macrocode}
%
% This done let's take care of the punctuation. First we create the aliases
-% of the puntuation marks with their original category codes
+% of the punctuation marks with their original category codes
% \begin{macrocode}
\edef\puntoevirgola{\string;}\edef\cc@pv{\the\catcode`;}%
\edef\duepunti{\string:}\edef\cc@dp{\the\catcode`:}%
@@ -442,7 +520,7 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\edef\puntointerrogativo{\string?}\edef\cc@pi{\the\catcode`?}%
% \end{macrocode}
%
-% Then we make those puctuation marks active and add their activeness to
+% Then we make those punctuation marks active and add their activeness to
% |\extraslatin|, and also their ``deactiveness'' to the |\noextraslatin| list.
% In this way we are sure that there is no interference with other languages.
% \begin{macrocode}
@@ -466,12 +544,12 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
% and we chose a smaller compromise value, but again we fix the stretch
% and shrink components to zero.
% \begin{macrocode}
-\def\punct@spacing{\penalty\@M\hskip.4\fontdimen2\font
+\def\punct@spacing{\penalty\@M\hskip.3\fontdimen2\font
\@plus\z@\@minus\z@}
% \end{macrocode}
%
-% When then we give a definition to these actie characters; in each definition
-% we start by eliminating aby previous spacing inserted by the typist, then
+% Then we give a definition to these active characters; in each definition
+% we start by eliminating any previous spacing inserted by the typist, then
% we insert our space and finally the punctuation mark.
% \begin{macrocode}
\declare@shorthand{latin}{;}{\ifdim\lastskip>\z@\unskip\fi
@@ -484,9 +562,9 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
\punct@spacing\puntointerrogativo}
% \end{macrocode}
%
-% For footnotes we require that the footnote mark be tiped flush to the
-% left margin and that it is typed normalsize; this rquires the
-% redefinition % of the |\@makefntext| macro that must call a different
+% For footnotes we require that the footnote mark be typed flush to the
+% left margin and that it is typed in normal size; this requires the
+% redefinition of the |\@makefntext| macro that must call a different
% version of |\@makefnmark|.
% \begin{macrocode}
%
@@ -509,9 +587,9 @@ the derived files ecclesiastic.sty and ecclesiastic.pdf.
%
% In order to leave the category codes clean we re-establish the default codes
% reassigning the active cars their initial meaning; we do this by executing
-% \noextraslatin. If Latin is the default language, or when Latin is
-% selected, the \extraslatin macro is automatically executed and active
-% catcodes reassigned to the active characters.
+% |\noextraslatin|. If Latin is the default language, or when Latin is
+% selected, the |\extraslatin| macro is automatically executed and the original
+% category codes reassigned to the active characters.
%
% \begin{macrocode}
\noextraslatin