diff options
author | Karl Berry <karl@freefriends.org> | 2022-08-28 19:53:21 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-08-28 19:53:21 +0000 |
commit | aafcfaa73eef83820b5eaaf6c1da363c530331da (patch) | |
tree | 44a53894e1fab3837f483b033588fcf70db680f4 /Master/texmf-dist/source | |
parent | 2ebf3159c9c1bc2d15a019c44c7e6eb4d1b4923e (diff) |
teubner (28aug22)
git-svn-id: svn://tug.org/texlive/trunk@64217 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r-- | Master/texmf-dist/source/latex/teubner/teubner.dtx | 2283 |
1 files changed, 1234 insertions, 1049 deletions
diff --git a/Master/texmf-dist/source/latex/teubner/teubner.dtx b/Master/texmf-dist/source/latex/teubner/teubner.dtx index 6383a88a937..04a2072d5d4 100644 --- a/Master/texmf-dist/source/latex/teubner/teubner.dtx +++ b/Master/texmf-dist/source/latex/teubner/teubner.dtx @@ -4,7 +4,7 @@ \input docstrip.tex \keepsilent \preamble -Copyright 2001--2021 Claudio Beccari All rights reserved. +Copyright 2001--2022 Claudio Beccari 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 @@ -43,7 +43,7 @@ See the end of the file. %<package>\ProvidesPackage{teubner}[% %<tbtx>\ProvidesPackage{teubnertx}[% %<*driver,package,tbtx> -2021/02/08 v.5.4 +2022/08/27 v.5.7 %<package>Extensions for Greek philology] %<tbtx>Access to the LGR encoded Greek fonts that match the TX fonts] %</driver,package,tbtx> @@ -84,7 +84,7 @@ See the end of the file. %</driver> % \fi % -% \CheckSum{4133} +% \CheckSum{4189} % \begin{multicols}{2}\tableofcontents\end{multicols} % % @@ -92,7 +92,7 @@ See the end of the file. % This extension package complements the greek option of the \babel\ % package so as to enable the use of the Lipsian\footnote{What here % are called Lipsian fonts are a family of fonts that in Greece are -% called ``Lipsiakos''; they are similar to the ones that were being +% called “Lipsiakos”; they are similar to the ones that were being % used in the Teubner Printing Company of Lipsia from mid XIX century % on.} fonts and to use several macros for inserting special annotations % in the written text, as well as to typeset verses with special @@ -124,12 +124,12 @@ See the end of the file. % option of the \babel\ package. % % I must warmly thank Paolo Ciacchi of the University of Trieste who -% invited me in this ``adventure'', since I know nothing about +% invited me in this “adventure”, since I know nothing about % philology; he assisted me with all his competence, so that I % could learn so many new things and I could appreciate the world of % philologists. % -% Paolo Ciacchi's ``invitation'' arrived when I was almost finished +% Paolo Ciacchi's “invitation” arrived when I was almost finished % with the design of the Lipsian font family; I was working on this new % typeface after a kind request by Dimitri Filippou, with whom I % already collaborated for other questions related to Greek @@ -168,10 +168,10 @@ See the end of the file. % there might be some problem switching from classical to modern spelling % in Greek itself, but since in modern spelling the multiplicity of Greek % diacritical marks is not forbidden, it's the author choice to select -% classical or modern words, Lipsian or Didot fonts, polytonic or monotonic -% accentuation. The worst it can happen is that \babel\ uses just one -% hyphenation pattern set, so that in one of the three Greek versions some -% words might turn out with the wrong hyphens points. +% classical or modern words, Lipsian or Didot fonts, polytonic or +% monotonic accentuation. The worst it can happen is that \babel\ uses +% just one hyphenation pattern set, so that in one of the three Greek +% versions some words might turn out with the wrong hyphens points. % % The CB Greek fonts, which have been available for some years now on % \acro{ctan} in the directory \texttt{/fonts/greek/cb} have @@ -183,18 +183,18 @@ See the end of the file. % necessary configuration to use the Type~1 font in one size, 10\,pt, but, % thanks to scaling, these can be used at any size; this version of % \textsf{teubner} is compatible with this reduced set. If optical sizes -% are desired for a more professional typesetting, the \acro{ctan} archives -% contain also the \textsf{cbgreek-full} package, which includes also all -% the Type~1 fonts at the various standard (EC) sizes, plus other +% are desired for a more professional typesetting, the \acro{ctan} +% archives contain also the \textsf{cbgreek-full} package, which includes +% also all the Type~1 fonts at the various standard (EC) sizes, plus other % facilities that allow to use the CB fonts also in conjunction with the -% Latin Modern ones. Complete installations of the \TeX\ system include the -% full CB fonts installation. +% Latin Modern ones. Complete installations of the \TeX\ system include +% the full CB fonts installation. % % The CB Greek fonts allow to input Greek text with a Latin keyboard and % by employing the prefix notation; with a Greek keyboard and file % \texttt{iso-8859-7.def} it is possible to directly input Greek text with -% the monotonic spelling; if polytonic spelling is required I fear that the -% above file is of little help and that a Latin keyboard does the job +% the monotonic spelling; if polytonic spelling is required I fear that +% the above file is of little help and that a Latin keyboard does the job % without an excessive burden. The recent modifications to the \babel\ % package and of the Greek language description file allow to enter also % polytonic Greek text, keyboard permitting, with no effort; it is @@ -207,24 +207,25 @@ See the end of the file. % a single sweep of the finger. Some platforms have the possibility of % switching keyboard but they don't show the new keyboard layout on the % screen, but the user can generally build a personal table that describes -% the correspondence between the keyboard and the physical keyboard layout. -% Windows operating system Win8 and later has available a virtual keyboard -% similar to the Mac's. +% the correspondence between the keyboard and the physical keyboard +% layout. Windows operating system Win8 and later has available a virtual +% keyboard similar to the Mac's. % % Nevertheless there is a little point to observe; Lipsian fonts are very -% nice but show some kerning errors with more evidence than the traditional -% Didot Greek fonts. With the prefix notation in force, kerning programs -% may result disabled and some diphthongs and some consonant-vowel -% combinations appear poorly matched when the second letter caries any -% diacritical mark. In order to avoid this ``feature'', the accented vowels -% may be input by means of macros, that directly translate to the accented -% glyph, rather than invoking the ligature programs that are implied by the -% prefix notation; reading a Greek text on the screen while editing the -% input \texttt{.tex} file when a Latin keyboard and such macros are used -% may be very strange, but authors get used to it, and agree that the -% effort is worth the result. The direct input of Greek glyphs, evidently -% is the real solution, even if it may be difficult to enter Greek glyphs -% without a suitable virtual keyboard or a suitable keyboard map. +% nice but show some kerning errors with more evidence than the +% traditional Didot Greek fonts. With the prefix notation in force, +% kerning programs may result disabled and some diphthongs and some +% consonant-vowel combinations appear poorly matched when the second +% letter caries any diacritical mark. In order to avoid this “feature”, +% the accented vowels may be input by means of macros, that directly +% translate to the accented glyph, rather than invoking the ligature +% programs that are implied by the prefix notation; reading a Greek text +% on the screen while editing the input \texttt{.tex} file when a Latin +% keyboard and such macros are used may be very strange, but authors get +% used to it, and agree that the effort is worth the result. The direct +% input of Greek glyphs, evidently is the real solution, even if it may be +% difficult to enter Greek glyphs without a suitable virtual keyboard or +% a suitable keyboard map. % % \section{Environments} % I apologise if I chose Italian names for verse environments; I wanted @@ -240,9 +241,10 @@ See the end of the file. % The environment \texttt{versi} (|versus|) is used to typeset verses % in line, without an implicit end of line at the end of each verse; a % vertical bar with a number on top of it marks the verse limit while -% allowing a numeric reference to a specific verse; the opening environment -% statement requires a string, a short text, in order to indent the verse -% lines the amount of this string width; the syntax is the following +% allowing a numeric reference to a specific verse; the opening +% environment statement requires a string, a short text, in order to +% indent the verse lines the amount of this string width; the syntax is +% the following % \begin{sintassi} % \cs{begin}\Marg{versi}\marg{string} % \meta{verse}\cs{verso}\oarg{starting number}\marg{verse} @@ -259,8 +261,8 @@ See the end of the file. % The environment \texttt{Versi} (|Versus|) is similar to the % standard \LaTeX\ environment \texttt{verse}, except verse lines are % numbered on multiples of~5; the opening statement requires the -% \meta{starting number} as an optional argument; if this optional argument -% is not specified, the starting number is assumed to be~1. +% \meta{starting number} as an optional argument; if this optional +% argument is not specified, the starting number is assumed to be~1. % \begin{sintassi} % \cs{begin}\Marg{Versi}\oarg{starting number} % \meta{verse}\cs{\bslash*}\oarg{vertical space} @@ -274,11 +276,11 @@ See the end of the file. % \DescribeMacro{\NoSubVerso} % The environment \texttt{VERSI} (|VERSUS|) allows for two % verse-enumerations; the main enumeration is identical to the one -% performed by the previous environment \texttt{Versi}, while the secondary -% enumeration is typeset with smaller digits and normally numbers -% consecutive verses, except that it can be turned on and off; the verses -% that have the secondary enumeration are indented by moving them to the -% right. +% performed by the previous environment \texttt{Versi}, while the +% secondary enumeration is typeset with smaller digits and normally +% numbers consecutive verses, except that it can be turned on and off; the +% verses that have the secondary enumeration are indented by moving them +% to the right. % \begin{sintassi} % \cs{begin}\Marg{VERSI}\oarg{starting principal number} % \meta{verse}\cs{\bslash*}\oarg{vertical space} @@ -304,9 +306,9 @@ See the end of the file. % within the above environments; if such a change is performed, it is % valid only for one verse, or for the remaining fraction of the verse % after the language or font change. This means, among the other things, -% that if the default ``alphabet'' is the one that shows the metric -% symbols, the above environments may be used to display ``metric -% verses'', that is the pattern of long, short or ancipital symbols, +% that if the default “alphabet” is the one that shows the metric +% symbols, the above environments may be used to display “metric +% verses”, that is the pattern of long, short or ancipital symbols, % together with any other metric symbol so as to display the metrics % without disturbing the written text; when doing this metric % typesetting, it may happen that some verse patterns exhibit some @@ -329,7 +331,7 @@ See the end of the file. % \DescribeMacro{\verseskip}\DescribeMacro{\Hfill} % Within the \meta{metric pattern} it is possible to flush right the % symbols by prefixing the whole string with a |\Hfill| command; the -% \meta{length} may be specified as an integer multiple of a ``long'' +% \meta{length} may be specified as an integer multiple of a “long” % symbol by means of %\begin{sintassi} % \cs{verseskip}\marg{number} @@ -341,7 +343,7 @@ See the end of the file. % This package defines a lot of commands for inserting special signs % in the middle of regular text, for marking zeugmas and synizeses, % for putting unusual accents on any symbol, for inserting special -% ``parentheses'' that are used by philologists for marking blocks of +% “parentheses” that are used by philologists for marking blocks of % letters or blocks of text. I suggest that the user reads the % documentation file \texttt{teubner-doc.pdf} for a complete list % of commands and symbols. @@ -390,7 +392,7 @@ See the end of the file. % in spite of using LGR encoded output fonts. The actual support is % partially useful also with XeLaTeX and LuaLaTeX. % -% This package is far from perfect, but it allows to do a loto of things +% This package is far from perfect, but it allows to do a lot of things % that is difficult to find elsewhere. I did my best, but I had to cope % with the limitations of the Type~1 256 glyph fonts; with XeLaTeX or % LuaLaTeX it might be possible to have more functionalities, but, as @@ -413,9 +415,9 @@ See the end of the file. % \subsection{Preliminaries} % In order to use the PostScript pfb fonts (CM, CM-Super, and CB) it is % necessary to know if we are dealing with \LaTeX\ or pdf\LaTeX; this was -% necessary because apparently the pfb math scalable fonts derived from the -% \textsf{META\-FONT}% counterparts and do not have exactly the same -% effective dimensions; this is why the ``zeugma'' and the ``synizesis'' +% necessary because apparently the pfb math scalable fonts derived from +% the \textsf{META\-FONT}% counterparts and do not have exactly the same +% effective dimensions; this is why the “zeugma” and the “synizesis” % signs have to be corrected when the pfb fonts are used; with these, in % facts, the black leader that joins the curved extremities appeared a % little too fat and did not join exactly the left mark. @@ -450,18 +452,20 @@ Type X <return> to exit.}% \fi % \end{macrocode} -% If this test is passed, this means that not only the greek option to the \babel\ -% package is set, but also that all the \babel\ machinery is available. +% If this test is passed, this means that not only the greek option to the +% \babel\ package is set, but also that all the \babel\ machinery is +% available. % -% Since \texttt{teubner.sty} accepts some options it is necessary to provide -% their definitions; in particular the |\or| control sequence conflicts -% with the |\or| primitive command used within the syntax of |\ifcase|\footnote{With -% version 2002/07/18 v.1.0d this has been eliminated; the option remains for -% compatibility with older versions, but the only legal command is now -% \texttt{\string\oR}.}; |\oR| is a little exception since all the other -% accent-vowel macros contain only lowercase letters; |og| is another exception, -% and the accent macros have to be used; |\og| collided with the French command -% for inserting the opening guillemets (see below). The point is that accent vowel +% Since \texttt{teubner.sty} accepts some options it is necessary to +% provide their definitions; in particular the |\or| control sequence +% conflicts with the |\or| primitive command used within the syntax of +% |\ifcase|\footnote{With version 2002/07/18 v.1.0d this has been +% eliminated; the option remains for compatibility with older versions, +% but the only legal command is now \texttt{\string\oR}.}; |\oR| is a +% little exception since all the other accent-vowel macros contain only +% lowercase letters; |og| is another exception, and the accent macros have +% to be used; |\og| collided with the French command for inserting the +% opening guillemets (see below). The point is that accent vowel % sequences that directly access the accented glyph are made up as such: % \begin{sintassi} % \bslash \meta{base character}\meta{first diacritic}\meta{second diacritic}\meta{third diacritic} @@ -470,82 +474,90 @@ Type X <return> to exit.}% % \meta{second diacritic} \textrm{is \texttt{c} or \texttt{a} or \texttt{g} for circumflex or acute or grave} % \meta{third diacritic} \textrm{is \texttt{i} for iota subscript or adscript} % \end{sintassi} -% Evidently none of the diacritical marks is compulsory, but at least one must -% be present; if more than one is present it must be given in that sequence. Since -% |\oR| means omicron with rough breath, it is not very important that it is -% declared with the standard sequence |<o| or with |\oR| or with |\<o|, because -% it never falls after another letter, so that it never breaks any ligature or -% kerning command. The command is there just for completeness. More or less the -% same is true with the |\og| sequence; it fails to work correctly when the main -% language is French and the |french| option to the |babel| package is in force; -% matter of facts, |\og| conflicts with the homonymous command defined by that -% option to mean ``ouvrir guillemets''; therefore it's necessary to use +% Evidently none of the diacritical marks is compulsory, but at least one +% must be present; if more than one is present it must be given in that +% sequence. Since |\oR| means omicron with rough breath, it is not very +% important that it is declared with the standard sequence |<o| or with +% |\oR| or with |\<o|, because it never falls after another letter, so +% that it never breaks any ligature or kerning command. The command is +% there just for completeness. More or less the same is true with the +% |\og| sequence; it fails to work correctly when the main language is +% French and the |french| option to the |babel| package is in force; +% matter of facts, |\og| conflicts with the homonymous command defined by +% that option to mean “ouvrir guillemets”; therefore it's necessary to use % either the plain sequence |`o| or the extended accent macro |\`o|. % -% At the same time since all accent combinations are defined as ``text commands'', -% in \LaTeX\ jargon, when their commands are followed by a vowel (or `r') they -% define a ``text symbol'' i.e.\ they fetch directly the glyph of the accented -% character; therefore |<o|, |\oR| and |\r{o}| are all equivalent (at the -% beginning of a word where omicron with rough breath is the only place where you -% might find it). See more on this point in the following sections. -% -% These glyph name macros are not defined by default, because the |GlyphNames| -% boolean variable is false by default; you can specify the option -% \emph{GlyphNames} for activating these macro names. +% At the same time since all accent combinations are defined as “text +% commands”, in \LaTeX\ jargon, when their commands are followed by a +% vowel (or `r') they define a “text symbol” i.e.\ they fetch directly the +% glyph of the accented character; therefore |<o|, |\oR| and |\r{o}| are +% all equivalent (at the beginning of a word where omicron with rough +% breath is the only place where you might find it). See more on this +% point in the following sections. +% +% These glyph name macros are not defined by default, because the +% |GlyphNames| boolean variable is false by default; you can specify the +% option \emph{GlyphNames} for activating these macro names. % In any case the same result is more comfortably obtained by using the % extended accent macros whose behaviour is specified by the new % \babel\-greek settings. % -% Another unusual option is set up for being used with non standard \TeX\ system -% fonts; we have noticed that the Lipsian fonts appear a little too light when -% used together with the Times or the Palatino fonts; probably this is true also -% with other PostScript fonts. In this case the user might specify the option -% |boldLipsian| and the Lipsian fonts used in medium series will be substituted -% with those of the semi\-bold one. -% -% At the same time, from July 2005 and for a few years, the full collection -% of the complete size set of the CB fonts has not been available any more -% \emph{as the default \TeX\ system set up}; only the 10pt size were available -% unless the \texttt{cbgreek-full} font package was loaded; for this reason -% a new option was needed in order to instruct \texttt{teubner.sty} to use -% the specific file \texttt{type1ec.sty} dated at least 2002/09/07, so as to -% scale up or down all the EC and CB fonts from an original 10\,pt size. -% In order that the \texttt{10pt} plays its role correctly, it was convenient, -% if not compulsory, to require first the \texttt{babel} package, then the -% \texttt{teubner} one with the option \texttt{10pt}, then all other packages -% required for a specific document, in particular the \texttt{fontenc} -% one if the \texttt{T1} encoding is requested. All this is maintained for -% backward compatibility, and should not be necessary any more; now the -% complete set of the CB fonts gets installed with every full installation -% of the \TeX\ system, but with partial or basic installations, such option -% might turn out to be useful even now. -% -% This kludge is necessary for all fonts that have description files that use the -% |\EC@family| command for describing the available shapes and sizes; in practice -% this happens only with the EC fonts, even when the \texttt{cm-super} scalable -% implementation is used. For using the Latin Modern fonts (LM) new specific font -% description files for the CB fonts are part of the \babel\ package, so this -% problem does not exist; when using other fonts, such as the TX, PX, ZE,~\dots, -% other kludges are necessary, because their font family names are different from -% those normally used with \TeX: |cmr| for serifed fonts, |cmss| for sans serif -% ones, and |cmtt| for monospaced ones.\footnote{Even the Latin Modern fonts have -% different family names, but, due to their importance, specific font description -% files have been added to the \babel\ package. The LM fonts are more comfortable -% than the EC ones, when scalable fonts are to be used, because they are -% continuously scalable and download into the produced files less font files than -% the EC o cm-super ones. Unless specifically requested, the LM fonts should -% always be preferred to the EC and cm-super ones. When using the LM fonts, its -% better to use the full collection of the CB fonts, even if the CB font -% description files are compatible with the single 10\,pt size.} -% -% Notice that when using, for example, the TX fonts and no kludge is available, -% the CB fonts are loaded only as the ``error font'', since the TX fonts have -% different family names than the CB ones; in many cases this might pass -% un-noticed, but if real Greek text in different shapes and series has to be -% typeset, the unaware typesetter might get crazy trying to force shape and series -% changes in the Greek text; it would not be impossible, but it would be very, -% very boring. In any case see in the next sections the implemented kludges in -% order to run successful compilations also with non standard \TeX\ system fonts. +% Another unusual option is set up for being used with non standard \TeX\ +% system fonts; we have noticed that the Lipsian fonts appear a little too +% light when used together with the Times or the Palatino fonts; probably +% this is true also with other PostScript fonts. In this case the user +% might specify the option |boldLipsian| and the Lipsian fonts used in +% medium series will be substituted with those of the semi\-bold one. But +% see below how it is possible to override the global setting of this +% option, when you need the regular extended bold series. +% +% At the same time, from July 2005 and for a few years, the full +% collection of the complete size set of the CB fonts has not been +% available any more \emph{as the default \TeX\ system set up}; only the +% 10pt size were available unless the \texttt{cbgreek-full} font package +% was loaded; for this reason a new option was needed in order to instruct +% \texttt{teubner.sty} to use the specific file \texttt{type1ec.sty} dated +% at least 2002/09/07, so as to scale up or down all the EC and CB fonts +% from an original 10\,pt size. In order that the \texttt{10pt} plays its +% role correctly, it was convenient, if not compulsory, to require first +% the \texttt{babel} package, then the \texttt{teubner} one with the +% option \texttt{10pt}, then all other packages required for a specific +% document, in particular the \texttt{fontenc} one if the \texttt{T1} +% encoding is requested. All this is maintained for backward +% compatibility, and should not be necessary any more; now the complete +% set of the CB fonts gets installed with every full installation of the +% \TeX\ system, but with partial or basic installations, such option might +% turn out to be useful even now. +% +% This kludge is necessary for all fonts that have description files that +% use the |\EC@family| command for describing the available shapes and +% sizes; in practice this happens only with the EC fonts, even when the +% \texttt{cm-super} scalable implementation is used. For using the Latin +% Modern fonts (LM) new specific font description files for the CB fonts +% are part of the \babel\ package, so this problem does not exist; when +% using other fonts, such as the TX, PX, ZE,~\dots, other kludges are +% necessary, because their font family names are different from those +% normally used with \TeX: |cmr| for serifed fonts, |cmss| for sans serif +% ones, and |cmtt| for monospaced ones.\footnote{Even the Latin Modern +% fonts have different family names, but, due to their importance, +% specific font description files have been added to the \babel\ package. +% The LM fonts are more comfortable than the EC ones, when scalable fonts +% are to be used, because they are continuously scalable and download into +% the produced files less font files than the EC o cm-super ones. Unless +% specifically requested, the LM fonts should always be preferred to the +% EC and cm-super ones. When using the LM fonts, its better to use the +% full collection of the CB fonts, even if the CB font description files +% are compatible with the single 10\,pt size.} +% +% Notice that when using, for example, the TX fonts and no kludge is +% available, the CB fonts are loaded only as the “error font”, since the +% TX fonts have different family names than the CB ones; in many cases +% this might pass un-noticed, but if real Greek text in different shapes +% and series has to be typeset, the unaware typesetter might get crazy +% trying to force shape and series changes in the Greek text; it would not +% be impossible, but it would be very, very boring. In any case see in the +% next sections the implemented kludges in order to run successful +% compilations also with non standard \TeX\ system fonts. % \begin{macrocode} \newif\ifor\orfalse % Compatibility with older versions \DeclareOption{or}{\relax} @@ -559,28 +571,29 @@ Type X <return> to exit.}% \ProcessOptions* % \end{macrocode} % -% In the next sections we frequently use the acronym for the Greek font encoding; -% we hope it will eventually become \texttt{GR} or, following the actual 256 glyph -% font encodings, \texttt{T7} or \texttt{X7}\footnote{Apparently \texttt{T7} has been -% reserved to define an encoding where the first 128 glyphs are the standard -% \texttt{OT1} encoded Latin fonts, and the second group, again of 128 glyphs, -% contains the Greek characters; therefore, since polytonic spelling requires more -% than 128 glyphs, the extended encoding \texttt{X7} will probably become the one -% applicable to the whole set of the CB fonts. Time passing by, the \texttt{X7} -% encoding name apparently has been used for some nordic language.}. -% Meanwhile the acronym is \texttt{LGR}, so we'd better define a symbolic name, so -% that we can change the definitive name in just one place. +% In the next sections we frequently use the acronym for the Greek font +% encoding; we hope it will eventually become \texttt{GR} or, following +% the actual 256 glyph font encodings, \texttt{T7} or +% \texttt{X7}\footnote{Apparently \texttt{T7} has been reserved to define +% an encoding where the first 128 glyphs are the standard \texttt{OT1} +% encoded Latin fonts, and the second group, again of 128 glyphs, +% contains the Greek characters; therefore, since polytonic spelling +% requires more than 128 glyphs, the extended encoding \texttt{X7} will +% probably become the one applicable to the whole set of the CB fonts. +% Time passing by, the \texttt{X7} encoding name apparently has been used +% for some nordic language.}. Meanwhile the acronym is \texttt{LGR}, so +% we'd better define a symbolic name, so that we can change the definitive +% name in just one place. % \begin{macrocode} -\def\GRencoding@name{LGR} +\def\GRenc@name{LGR} % \end{macrocode} % -% Now the default Olga Greek fonts, used for rendering the ``Greek italic shape'' -% are an alternative with the Lipsian ones. +% Now the default Olga Greek fonts, used for rendering the “Greek italic +% shape” are an alternative with the Lipsian ones. % -% If the \texttt{10pt} option was -% specified it is necessary to load also the package texttt{type1ec.sty}. -% In any case we load also packages |graphicx| and |ifthen| that shall be useful -% for some commands. +% If the \texttt{10pt} option was specified it is necessary to load also +% the package texttt{type1ec.sty}. In any case we load also packages +% |graphicx| and |ifthen| that shall be useful for some commands. % \begin{macrocode} \ifonesizetypeone \RequirePackage[10pt]{type1ec}[2002/09/07] @@ -604,8 +617,8 @@ Type X <return> to exit.}% \fi \DeclareFontShape{U}{mtr}{m}{it}{<->ssub*mtr/m/n}{}% \DeclareFontShape{U}{mtr}{b}{it}{<->ssub*mtr/m/n}{}% -\DeclareFontShape{U}{mtr}{b}{n}{<->ssub*mtr/m/n}{}% -\newcommand*\metricsfont{\fontencoding{U}\fontfamily{mtr}\upshape} +\DeclareFontShape{U}{mtr}{bx}{n}{<->ssub*mtr/m/n}{}% +\newcommand*\metricsfont{\fontencoding{U}\fontfamily{mtr}\normalshape} % \end{macrocode} % \end{macro} Next we require the package for extensible math fonts; % it might be strange to use extensible math fonts in Greek philology, @@ -618,7 +631,7 @@ Type X <return> to exit.}% % Some macros are necessary to switch languages; such macros must be % independent (at least for now) from the particular \babel\ version, % whether it be version 3.6, 3.7, 3.8, or~3.9; in the former the concept -% of ``language attribute'' is unknown, while the latter recognises +% of “language attribute” is unknown, while the latter recognises % varieties of the same language by the attribute setting. % With \babel\ version 3.9g things have further changed; the attribute % to a language may be appended to the language name with an interposed @@ -630,9 +643,8 @@ Type X <return> to exit.}% % During the language switching operations |\GreekName| % distinguishes the variant or the main language whose attribute % gets set and, evidently, becomes effective when the main language -% |greek| -% is in force. Notice that if the |greek.ldf| has a date previous to -% 2014/09/18, the attribute |ancient| may not be defined; in this case +% |greek| is in force. Notice that if the |greek.ldf| has a date previous +% to 2014/09/18, the attribute |ancient| may not be defined; in this case % the |polutoniko| attribute is set, else the |ancient| attribute is % selected. The difference is that the attribute |polutoniko| selects % the polytonic spelling and the modern Greek hyphenation, while @@ -641,7 +653,7 @@ Type X <return> to exit.}% % gets used for philological purposes only for ancient Greek. % Nevertheless, if some work on modern polytonic Greek philological % document is being typeset, the |ancient| attribute may work -% satisfactorily, but with some possible ``ancient'' line breaks. +% satisfactorily, but with some possible “ancient” line breaks. % \begin{macrocode} \ifx\languageattribute\undefined \def\GreekName{polutonikogreek}% @@ -663,47 +675,50 @@ Type X <return> to exit.}% % % \subsection{Compatibility with Latin fonts}\label{ssec:LatinFontComp} +% %\begin{macro}{\previouslanguage} %\begin{macro}{\previousencoding} -% The ``default'' language is defined as the -% ``previous'' language; similarly the ``default'' encoding is defined -% as the ``previous'' encoding; these are the language and the encoding -% in force when the document starts; this is why such macros are defined -% at the beginning of the document. At the same time we assure that if -% the CM (or EC) or the LM fonts are the default ones, nothing special -% is done, while if the default fonts are, say, the TX ones, they are -% correctly restored, but the CM families are used for the CB ones. +% The “default” language is defined as the “previous” language; similarly +% the “default” encoding is defined as the “previous” encoding; these are +% the language and the encoding in force when the document starts; this is +% why such macros are defined at the beginning of the document. At the +% same time we assure that if the CM (or EC) or the LM fonts are the +% default ones, nothing special is done, while if the default fonts are, +% say, the TX ones, they are correctly restored, but the CM families are +% used for the CB ones. %\end{macro} %\end{macro} % %\begin{macro}{\substitutefontfamily} %\begin{macro}{\ifLipsian} -% The font macro |\substitutefontfamily| is already present in the \babel\ kernel, but -% with version 3.9g it is deprecated, although maintained for backwards compatibility; -% it copes only with the standard families, series and shapes, therefore it does not -% consider the Lipsian shape and its series. I had to redefine it together with a -% new conditional macro in order to do the same job as the original one but taking -% into consideration also the Lipsian shape; the purpose of this macro is to write -% in the working directory a number of font description files that refer to the LGR -% Greek encoding, but have the names of the Latin font families; such font -% description files, simply substitute these non existent encoding-family series and -% shapes with the existing series and shapes of any other LGR encoded Greek font, in -% particular the CB ones. -% Things might change in the future, so as to use the package by G\"unter Milde -% \texttt{substitutefont} package (already present in the \acro{ctan} archive) or -% other solutions by the core of \babel. Meanwhile we cope with what is available -% right now. +% The font macro |\substitutefontfamily| is already present in the \babel\ +% kernel, but with version 3.9g it is deprecated, although maintained for +% backwards compatibility; it copes only with the standard families, +% series and shapes, therefore it does not consider the Lipsian shape and +% its series. I had to redefine it together with a new conditional macro +% in order to do the same job as the original one but taking into +% consideration also the Lipsian shape; the purpose of this macro is to +% write in the working directory a number of font description files that +% refer to the LGR Greek encoding, but have the names of the Latin font +% families; such font description files, simply substitute these non +% existent encoding-family series and shapes with the existing series and +% shapes of any other LGR encoded Greek font, in particular the CB ones. +% Things might change in the future, so as to use the package by G\"unter +% Milde \texttt{substitutefont} package (already present in the +% \acro{ctan} archive) or other solutions by the core of \babel. Meanwhile +% we cope with what is available right now. % % By issuing a command such as: % \begin{sintassi}\ttfamily % \texttt{\string\ifFamily}\{pxr\}\{cmr\} % \end{sintassi} -% an association is made with all the series and shapes of the Palatino serifed -% fonts to the corresponding CB serifed series and shapes; therefore when a language -% shift changes the default encoding from, say, \texttt{T1} to \texttt{LGR} the -% font family \texttt{LGR+pxr} is mapped to the font family \texttt{LGR+cmr} and -% everything is supposed to work fine; when another language change resets the -% encoding to \texttt{T1}, the original Latin script is used again. The redefined +% an association is made with all the series and shapes of the Palatino +% serifed fonts to the corresponding CB serifed series and shapes; +% therefore when a language shift changes the default encoding from, say, +% \texttt{T1} to \texttt{LGR} the font family \texttt{LGR+pxr} is mapped +% to the font family \texttt{LGR+cmr} and everything is supposed to work +% fine; when another language change resets the encoding to \texttt{T1}, +% the original Latin script is used again. The redefined % |\substitutefontfamily| macro is as such: % \begin{macrocode} \newif\ifLipsian @@ -747,25 +762,27 @@ Type X <return> to exit.}% }% \global\Lipsianfalse\fi \closeout15}% - }} + }% +} % \end{macrocode} -% Notice that together with the Lipsian fonts the upright italics (Olga) and upright -% serifed lowercase alphabets are defined. In a while there are the definition for -% selecting these shapes. Of course you are not obliged to use them, but in case you -% wanted\dots +% Notice that together with the Lipsian fonts the upright italics (Olga) +% and upright serifed lowercase alphabets are defined. In a while there +% are the definition for selecting these shapes. Of course you are not +% obliged to use them, but in case you wanted\dots % % These results are obtained by means of the following macros. %\begin{macro}{\ifCMLM} %\begin{macro}{\ifFamily} -% The |\ifCMLM| processes the necessary test in order to set the auxiliary macro -% |\n@xt| to be an alias to |\iftrue| or |iffalse| depending on the fact that the -% CM (or EC) fonts or the LM fonts are the default Latin ones, in this case it sets -% the |\n@xt| macro equivalent to |\iftrue|, otherwise it sets it to |\iffalse|. In -% order to succeed, it requires to analyse the first two letters of the default -% family name; if these letters form one of the sequences |cm| or |lm|, the CM or -% LM fonts have been loaded, otherwise some other fonts are in force. We need -% therefore a macro with delimited arguments in order to extract the first two +% The |\ifCMLM| processes the necessary test in order to set the auxiliary +% macro |\n@xt| to be an alias to |\iftrue| or |iffalse| depending on the +% fact that the CM (or EC) fonts or the LM fonts are the default Latin +% ones, in this case it sets the |\n@xt| macro equivalent to |\iftrue|, +% otherwise it sets it to |\iffalse|. In order to succeed, it requires to +% analyse the first two letters of the default family name; if these +% letters form one of the sequences |cm| or |lm|, the CM or LM fonts have +% been loaded, otherwise some other fonts are in force. We need therefore +% a macro with delimited arguments in order to extract the first two % letters of the family name. % % \begin{macrocode} @@ -774,74 +791,104 @@ Type X <return> to exit.}% {\let\n@xt\iftrue}{\def\f@milyprefix{cmr}\let\n@xt\iffalse}\n@xt} % \end{macrocode} -% The other macro |\ifFamily| uses the previous macro and according to the test -% result, possibly runs the |\substitutefontfamily| macro that, if -% necessary, creates the description file that map the specified family font -% description file to the second specified font family, both connected to the LGR -% encoding. Therefore, after these font definition files exist, \LaTeX\ can fetch -% the Greek fonts by way of substitution. Let's explain again: if you specify +% The other macro |\ifFamily| uses the previous macro and according to the +% test result, possibly runs the |\substitutefontfamily| macro that, if +% necessary, creates the description file that map the specified family +% font description file to the second specified font family, both +% connected to the LGR encoding. Therefore, after these font definition +% files exist, \LaTeX\ can fetch the Greek fonts by way of substitution. +% Let's explain again: if you specify % \begin{verbatim} % \Lipsiantrue\ifFamily{pxr}{lmr} % \end{verbatim} -% you state that you want to run the macro on the serifed Palatino font family, by -% associating the |pxr| family to the |lmr| one\footnote{If you have the full CB -% Greek font collection it's more convenient to map the missing fonts to the Latin -% Modern Greek ones, while if you need to use the \emph{10pt} option, you'd better -% map the missing family to the ordinary Computer Modern ones; the actual fonts are -% the same, but the latter font definition files cope with the \emph{10pt} option, -% while the former don't.}; by specifying |\Lipsiantrue| you state that you want to -% create entries also for the Lipsian series and shape; the macro provides to reset -% |\Lipsianfalse| in order to avoid that other calls of that macro on non serifed -% or monospaced fonts try to create entries that in any case do not exist: the -% Lipsian font comes only as a serifed font! In this way, if you are using -% Palatino fonts through the \textsf{pxfonts} package, the |teubner| macros provide -% to create the necessary font description files so that while you are typesetting -% in medium normal Latin Palatino and you switch to Greek, the built in macros -% change the encoding to LGR; the LGR Palatino serifed medium normal Greek font -% does not exist, but that family, series and shape are mapped by the font -% description file to the corresponding LGR encoded Latin Modern CB fonts in medium -% series and normal shape, and typesetting goes on with the right Greek fonts. +% you state that you want to run the macro on the serifed Palatino font +% family, by associating the |pxr| family to the |lmr| one\footnote{If you +% have the full CB Greek font collection it's more convenient to map the +% missing fonts to the Latin Modern Greek ones, while if you need to use +% the \emph{10pt} option, you'd better map the missing family to the +% ordinary Computer Modern ones; the actual fonts are the same, but the +% latter font definition files cope with the \emph{10pt} option, while the +% former don't.}; by specifying |\Lipsiantrue| you state that you want to +% create entries also for the Lipsian series and shape; the macro provides +% to reset |\Lipsianfalse| in order to avoid that other calls of that +% macro on non serifed or monospaced fonts try to create entries that in +% any case do not exist: the Lipsian font comes only as a serifed font! In +% this way, if you are using Palatino fonts through the \textsf{pxfonts} +% package, the |teubner| macros provide to create the necessary font +% description files so that while you are typesetting in medium normal +% Latin Palatino and you switch to Greek, the built in macros change the +% encoding to LGR; the LGR Palatino serifed medium normal Greek font does +% not exist, but that family, series and shape are mapped by the font +% description file to the corresponding LGR encoded Latin Modern CB fonts +% in medium series and normal shape, and typesetting goes on with the +% right Greek fonts. % \begin{macrocode} \newcommand*\ifFamily[2]{% \expandafter\ifCMLM#1!\else\substitutefontfamily{LGR}{#1}{#2}\fi} % \end{macrocode} -% You don't actually need to use that macro for the Times or the Palatino eXtended -% fonts loaded by means of the corresponding packages \textsf{txfonts} or -% \textsf{pxfonts}, because a hook is set up so that ``at begin document'' the -% loading of those packages is tested, and if the test is true, the necessary font -% description files are possibly created. If you load the Times or the Palatino or -% any other non standard font by means of other packages, it's up to you to issue -% the |\substitutefontfamily| macro right after calling that font package and by -% using the correct family names; similarly you might substitute the new Latin font -% family names to other Greek font family names, if you have other fonts available. -% At the same time at begin document we memorise the name and encoding of the Latin -% font used for the default language, so that when returning to Latin font -% typesetting after Greek font typesetting, the proper language typesetting rules -% and encoding are restored. -% \begin{macrocode} +% You don't actually need to use that macro for the Times or the Palatino +% eXtended fonts loaded by means of the corresponding packages +% \textsf{txfonts} or \textsf{pxfonts}, because a hook is set up so that +% “at begin document” the loading of those packages is tested, and if the +% test is true, the necessary font description files are possibly created. +% If you load the Times or the Palatino or any other non standard font by +% means of other packages, it's up to you to issue the +% |\substitutefontfamily| macro right after calling that font package and +% by using the correct family names; similarly you might substitute the +% new Latin font family names to other Greek font family names, if you +% have other fonts available. At the same time at begin document we +% memorise the name and encoding of the Latin font used for the default +% language, so that when returning to Latin font typesetting after Greek +% font typesetting, the proper language typesetting rules and encoding +% are restored. +% +% Please notice the tricks for replacing the Lipsian shape for the +% families used in mathematics and/or to produce the extra symbols +% provided by the \TeX\ Companion font with the |TS1| encoding; there +% are no similar Lipsian glyphs, so that it is necessary to replace +% those shapes with the normal italic one. It is unusual to require +% those missing Lipsian glyphs in a philological text, but some +% symbols used in philological mark up require them, therefore such +% kludges become necessary. Here we prod=vide such kludges for the +% Palatino and Times extended fonts; but final users might need to use +% them with other fonts; the following code, then, becomes a model to +% use when other fonts are preferred. +% \begin{macrocode} \AtBeginDocument{% +\input{ot1cmr.fd} +\DeclareFontShape{OT1}{cmr}{m}{li}{<->ssub* cmr/m/it}{} \@ifpackageloaded{pxfonts}{\typeout{Palatino fonts loaded}% -\Lipsiantrue\ifFamily{pxr}{cmr}\Lipsianfalse -\ifFamily{pxss}{cmss}\ifFamily{pxtt}{cmtt}}{\relax}} - -\AtBeginDocument{% +\Lipsiantrue\ifFamily{pxr}{cmr} +\input{ot1pxr.fd}\input{t1pxr.fd}\input{ts1pxr.fd}% +\DeclareFontShape{OT1}{pxr}{b}{li}{<->ssub* pxr/b/it}{}% +\DeclareFontShape{T1}{pxr}{b}{li}{<->ssub* pxr/b/it}{}% +\DeclareFontShape{TS1}{pxr}{m}{li}{<->ssub* pxr/m/it}{}% +\Lipsianfalse +\ifFamily{pxss}{cmss}\ifFamily{pxtt}{cmtt}}{\relax} +% \@ifpackageloaded{txfonts}{\typeout{Times fonts loaded}% -\RequirePackage{teubnertx}}{}} +\RequirePackage{teubnertx}% +\input{ot1txr.fd}\input{t1txr.fd}\input{ts1txr.fd}% +\DeclareFontShape{OT1}{txr}{b}{li}{<->ssub* txr/b/it}{}% +\DeclareFontShape{T1}{txr}{b}{li}{<->ssub* txr/b/it}{}% +\DeclareFontShape{TS1}{txr}{m}{li}{<->ssub* txr/m/it}{}% +}{}} \AtBeginDocument{% \edef\previouslanguage{\languagename}% \edef\previousencoding{\f@encoding}} % \end{macrocode} % -% Nevertheless all this requires a minimum of attention in specifying the options -% for the \babel\ package and in the order extensions packages are input. The -% |teubner.sty| package should be read \emph{after} any other package that sets or -% resets the Latin font encoding; for example if the T1 encoding is selected as the -% default one, in place of the OT1 encoding, then this choice must be made before -% this package is read in. Similarly when the \babel\ options are specified, -% remember that the last language name becomes the default language at begin -% document; never specify |greek| as the last +% Nevertheless all this requires a minimum of attention in specifying +% the options for the \babel\ package and in the order extensions +% packages are input. The |teubner.sty| package should be read +% \emph{after} any other package that sets or resets the Latin font +% encoding; for example if the T1 encoding is selected as the default +% one, in place of the OT1 encoding, then this choice must be made +% before this package is read in. Similarly when the \babel\ options +% are specified, remember that the last language name becomes the +% default language at begin document; never specify |greek| as the last % language option! %\end{macro} %\end{macro} @@ -851,29 +898,32 @@ Type X <return> to exit.}% %\begin{macro}{\Lipsiakostext} %\begin{macro}{\lishape} %\begin{macro}{\textli} -% |\lishape| is the normal declaration, modelled on the other similar macros in the -% \LaTeX\ kernel, made up to chose the Lipsian shape. Nevertheless since it is a -% light character, if it must blend well with the other PostScript fonts, not only -% the CM and LM, but also the other ones available for typesetting with the \TeX\ -% system, it is necessary to chose the |b| (bold) series in place of the |m| -% (medium) one, while maintaining the |bx| (bold extended) series when the other -% fonts are set with the blacker and larger series. This is why the |\lishape| -% declaration is a little more complicate than normal, since it has to test the -% value of the current series. The text command |\textli| matches the similar -% commands for Latin fonts. But the |\lishape| declaration is used also within the -% more complicated macros for declaring or setting the Lipsian font. +% |\lishape| is the normal declaration, modelled on the other similar +% macros in the \LaTeX\ kernel, made up to chose the Lipsian shape. +% Nevertheless since it is a light character, if it must blend well with +% the other PostScript fonts, not only the CM and LM, but also the other +% ones available for typesetting with the \TeX\ system, it is necessary +% to chose the |b| (bold) series in place of the |m| (medium) one, while +% maintaining the |bx| (bold extended) series when the other fonts are set +% with the blacker and larger series. This is why the |\lishape| +% declaration is a little more complicate than normal, since it has to +% test the value of the current series. The text command |\textli| +% matches the similar commands for Latin fonts. But the |\lishape| +% declaration is used also within the more complicated macros for +% declaring or setting the Lipsian font. % % |\Lipsiakostext| is a \emph{declaration} stating that from now on -% typesetting will be done with the Lipsian fonts; notice that the encoding and the -% language name in force before this declaration are memorised, then the current -% Greek version is selected; the |\let\~\accperispomeni| is required because -% switching on and off may reset the active tilde and connected macros definitions. -% |\~| in Greek must set the circumflex accent, so we make sure that this really +% typesetting will be done with the Lipsian fonts; notice that the +% encoding and the language name in force before this declaration are +% memorised, then the current Greek version is selected; the +% |\let\~\accperispomeni| is required because switching on and off may +% reset the active tilde and connected macros definitions. |\~| in Greek +% must set the circumflex accent, so we make sure that this really % occurs. % \begin{macrocode} \DeclareRobustCommand{\lishape}{% \not@math@alphabet\lishape\relax -\ifthenelse{\equal{\f@encoding}{\GRencoding@name}}{% +\ifthenelse{\equal{\f@encoding}{\GRenc@name}}{% \ifboldLipsian \ifthenelse{\equal{\f@series}{m}}% {\fontseries{b}\fontshape{li}\rmfamily}% @@ -891,35 +941,38 @@ Type X <return> to exit.}% %\end{macro} %\end{macro} %\begin{macro}{\textLipsias} -% |\textLipsias| is a command that typesets its argument with the |\Lipsiakostext| -% declaration in force. The \LaTeX\ command declaration used here makes sure that -% possible italic corrections are taken into account; the actual font switching is -% made through the same |\Lipsiakostext| declaration, but the inner working -% maintain local this declaration; for this reason we suggest to use this text -% command rather than the font declaration. +% |\textLipsias| is a command that typesets its argument with the +% |\Lipsiakostext| declaration in force. The \LaTeX\ command declaration +% used here makes sure that possible italic corrections are taken into +% account; the actual font switching is made through the same +% |\Lipsiakostext| declaration, but the inner working maintain local this +% declaration; for this reason we suggest to use this text command rather +% than the font declaration. % \begin{macrocode} \DeclareTextFontCommand{\textLipsias}{\Lipsiakostext} % \end{macrocode} %\end{macro} -%\begin{macro}{\NoLipsiakostext} |\NoLipsiakostext| is the opposite declaration -% that undoes everything that was done with |\Lipsiakostext|. Probably it is -% superfluous, but it has been asked for. If |\Lipsiakostext| is delimited within a -% scope by means of an explicit group or an environment, it stops its effectiveness -% with the end of its scope. +%\begin{macro}{\NoLipsiakostext} +% |\NoLipsiakostext| is the opposite declaration that undoes everything +% that was done with |\Lipsiakostext|. Probably it is superfluous, but +% it has been asked for. If |\Lipsiakostext| is delimited within +% a scope by means of an explicit group or an environment, it stops its +% effectiveness with the end of its scope. % -% It is worth noting that, in order to delimit within a scope the action of this and -% of the other declarations, it is possible to use them as environments with the -% same name without the backslash. for example one might input in the source file -% something as: +% It is worth noting that, in order to delimit within a scope the action +% of this and of the other declarations, it is possible to use them as +% environments with the same name without the backslash. for example one +% might input in the source file something as: %\begin{quote}\obeylines % |\begin{Lipsiakostext}| % \meta{Greek text to be typeset with the Lipsian font} % |\end{Lipsiakostext}| %\end{quote} -% Remember also that these Greek text declarations may be issued while typesetting -% with Latin fonts; they provide also the language switch, so that they do not -% require the typesetter to first switch to Greek and then to choose a certain Greek +% Remember also that these Greek text declarations may be issued while +% typesetting with Latin fonts; they provide also the language switch, +% so that they do not require the typesetter to first switch to Greek +% and then to choose a certain Greek % font. % \begin{macrocode} \DeclareRobustCommand\NoLipsiakostext{% @@ -931,10 +984,11 @@ Type X <return> to exit.}% % \end{macrocode} %\end{macro} %\begin{macro}{\textDidot} -% |\textDidot| is a similar macro where the common upright Greek characters are -% selected; it goes by itself that if |\textli| is specified within the -% |\textDidot| argument, the typesetting is or becomes identical with what -% one can obtain with the |\textLipsias| command. +% |\textDidot| is a similar macro where the common upright Greek +% characters are selected; it goes by itself that if |\textli| is +% specified within the |\textDidot| argument, the typesetting is or +% becomes identical with what one can obtain with the |\textLipsias| +% command. % \begin{macrocode} \DeclareRobustCommand\textDidot[1]{{% \expandafter\select@language\expandafter{\GreekName}% @@ -944,16 +998,58 @@ Type X <return> to exit.}% % \end{macrocode} %\end{macro} % +%\begin{environment}{GRD} +%\begin{environment}{GRL} +% In the past years some users, among which Einrich Flech, whom I thank +% very much for his substantial feedback, defined the environments |GRL| +% and |GRD| in order to avoid repeating again and again the above +% described declarations and commands. Some new definitions are given +% to simplify the optional selection of the font series. Nevertheless it +% is necessary to delay such definitions to the begin document stage, so +% as to possibly redefine the older personal definitions. The redefinition +% does not consist only in the use of some \LaTeX\,3 commands, but allows +% to set the font series by means of the opening statement optional +% argument. They also redefine the basic command |\bfseries| when the +% classes |memoir| o |scrbook| are directly or indirectly used, because +% such almighty classes redefine such command for their internal purposes; +% such redefinitions render this command inactive within other user +% defined environments; of course we cannot foresee all possible classes +% the users might use for themselves, therefore it is possible that such +% corrections might be necessary also with other classes or packages. +% The workaround is very simple, but the final users should find by +% themselves how to insert it into their own codes in an effective way. +% \begin{macrocode} +\AtBeginDocument{% + \ProvideDocumentEnvironment{GRD}{m}{}{} + \ProvideDocumentEnvironment{GRL}{m}{}{} + +\RenewDocumentEnvironment{GRL}{o}{\begin{otherlanguage*}{greek}% +\@ifclassloaded{memoir}{\def\bfseries{\fontseries{bx}\selectfont}}{\relax} +\@ifclassloaded{scrbook}{\def\bfseries{\fontseries{bx}\selectfont}}{\relax} +\IfValueTF{#1}{\fontseries{#1}}{}% + \fontshape{li}\selectfont}{\end{otherlanguage*}} + +\RenewDocumentEnvironment{GRD}{o}{\begin{otherlanguage*}{greek}% +\@ifclassloaded{memoir}{\def\bfseries{\fontseries{bx}\selectfont}}{\relax} +\@ifclassloaded{scrbook}{\def\bfseries{\fontseries{bx}\selectfont}}{\relax} +\IfValueTF{#1}{\fontseries{#1}}{}% + \fontshape{up}\selectfont}{\end{otherlanguage*}} +} +% \end{macrocode} +%\end{environment} +%\end{environment} +% %\begin{macro}{\textlatin} -% |\textlatin| is a redefinition of the standard \babel\ macro that is adapted to -% the present situation, where it may be called behind the scenes in certain -% situations that are beyond the control of the typesetter. Therefore -% every precaution is taken in order to be sure that the composition of the command -% argument is really done with the default encoding and font families, but -% maintaining the current series and shape; of course, if the shape is that related -% to the Lipsian font, then the italic shape is temporarily restored (local -% definition). Moreover, with the (default) Latin fonts the tilde is restored to a -% non breaking space by simply making it an active character. +% |\textlatin| is a redefinition of the standard \babel\ macro that is +% adapted to the present situation, where it may be called behind the +% scenes in certain situations that are beyond the control of the +% typesetter. Therefore every precaution is taken in order to be sure that +% the composition of the command argument is really done with the default +% encoding and font families, but maintaining the current series and +% shape; of course, if the shape is that related to the Lipsian font, then +% the italic shape is temporarily restored (local definition). Moreover, +% with the (default) Latin fonts the tilde is restored to a non breaking +% space by simply making it an active character. % \begin{macrocode} \DeclareRobustCommand\textlatin[1]{\edef\externalencoding{\f@encoding}{% \def\itdefault{it}\def\@tempA{li}\ifx\@tempA\f@shape\def\f@shape{it}\fi @@ -975,12 +1071,12 @@ Type X <return> to exit.}% % encoding is therefore LGR. % \begin{macrocode} \DeclareRobustCommand\uishape{% -\ifthenelse{\equal{\f@encoding}{\GRencoding@name}}% +\ifthenelse{\equal{\f@encoding}{\GRenc@name}}% {\fontshape{ui}\selectfont}{\relax}} \DeclareTextFontCommand{\textui}{\uishape} \DeclareRobustCommand\rsshape{% -\ifthenelse{\equal{\f@encoding}{\GRencoding@name}}% +\ifthenelse{\equal{\f@encoding}{\GRenc@name}}% {\fontshape{rs}\selectfont}{\relax}} \DeclareTextFontCommand{\textrs}{\rsshape} @@ -994,26 +1090,26 @@ Type X <return> to exit.}% % Now we start the specific additions introduced with this package. % % \begin{macro}{\strip@pt} -% The \LaTeX\ kernel has the macro |\strip@pt| that strips off the pt part from the -% expanded value of a dimension register and makes available the measure in pt -% of the contained length (the register contains the length measure in scaled -% points; the expansion performed by \TeX\ with the command |\the| converts the -% scaled points to printer points and shows the result with a string of decimal -% digits with, possibly, a decimal fraction); its argument is supposed -% to be a dimension register name, not its expanded contents. The |\strip@pt| -% command eliminates the decimal point and the fractional part if the latter is -% nought. -% -% With the help of such service macro we are going to define a certain number of -% ``lift accent'' macros or ``put cedilla'' macros that work with both upright and -% slanted fonts, although they contain different parameters for Latin compared to -% Greek alphabets. +% The \LaTeX\ kernel has the macro |\strip@pt| that strips off the pt part +% from the expanded value of a dimension register and makes available the +% measure in pt of the contained length (the register contains the length +% measure in scaled points; the expansion performed by \TeX\ with the +% command |\the| converts the scaled points to printer points and shows +% the result with a string of decimal digits with, possibly, a decimal +% fraction); its argument is supposed to be a dimension register name, not +% its expanded contents. The |\strip@pt| command eliminates the decimal +% point and the fractional part if the latter is nought. +% +% With the help of such service macro we are going to define a certain +% number of “lift accent” macros or “put cedilla” macros that work with +% both upright and slanted fonts, although they contain different +% parameters for Latin compared to Greek alphabets. % \end{macro} % % \begin{macro}{\lift@accent} -% The first ``lift accent'' macro just puts an accent over -% a letter, without inserting any space between them; the first argument is the -% accent code (decimal, hexadecimal or octal; I prefer decimal), while the second +% The first “lift accent” macro just puts an accent over a letter, without +% inserting any space between them; the first argument is the accent code +% (decimal, hexadecimal or octal; I prefer decimal), while the second % argument is the letter --~any letter, even if it is not a vowel! % \begin{macrocode} \newcommand*\lift@accent[2]{\leavevmode @@ -1031,8 +1127,8 @@ Type X <return> to exit.}% % \end{macro} % % \begin{macro}{\Lift@accent} -% The second ``lift accent'' macro behaves as the first one except it interposes a -% small vertical distance between the accent and the letter: +% The second “lift accent” macro behaves as the first one except it +% interposes a small vertical distance between the accent and the letter: % \begin{macrocode} \newcommand*\Lift@accent[2]{\leavevmode {\edef\slant@{\strip@pt\fontdimen1\font}% @@ -1050,9 +1146,9 @@ Type X <return> to exit.}% % \end{macro} % % \begin{macro}{\LIFT@accent} -% The third ``lift accent'' macro behaves as the first one, except it interposes a -% specified vertical space between the letter and the accent; this space is -% specified as the second argument: +% The third “lift accent” macro behaves as the first one, except it +% interposes a specified vertical space between the letter and the accent; +% this space is specified as the second argument: % \begin{macrocode} \newcommand*\LIFT@accent[3]{\leavevmode {\edef\slant@{\strip@pt\fontdimen1\font}% @@ -1071,71 +1167,74 @@ Type X <return> to exit.}% % \end{macrocode} % \end{macro} % -% All these macros will be used in subsequent ``put accent'' macros, that will -% stack also several accents one above the other; the necessity arises for example -% when the macron or breve diacritical marks have to be put over accented letters; -% according to typographical practice the accents must go over the macron or the -% breve. -% In a similar way philologists often must use other diacritical marks in addition -% to the traditional Greek ones, therefore these macros will be used, for example, -% for setting the Scandinavian ring (from a Latin font) over a Greek letter (from a -% Greek font). +% All these macros will be used in subsequent “put accent” macros, that +% will stack also several accents one above the other; the necessity +% arises for example when the macron or breve diacritical marks have to be +% put over accented letters; according to typographical practice the +% accents must go over the macron or the breve. +% In a similar way philologists often must use other diacritical marks in +% addition to the traditional Greek ones, therefore these macros will be +% used, for example, for setting the Scandinavian ring (from a Latin font) +% over a Greek letter (from a Greek font). % % \begin{macro}{\cap@} -% The first such unusual diacritical mark is a small cap, a small upside down breve -% sign, that is in position~1 of the Greek font table. +% The first such unusual diacritical mark is a small cap, a small upside +% down breve sign, that is in position~1 of the Greek font table. % \begin{macrocode} \DeclareRobustCommand{\cap@}[1]{\leavevmode {\edef\slant@{\strip@pt\fontdimen1\font}% -\setbox\tw@\hbox{\fontencoding{\GRencoding@name}\selectfont +\setbox\tw@\hbox{\fontencoding{\GRenc@name}\selectfont \char1}\dimen@-.5\wd\tw@ \setbox\z@\hbox{#1}% \advance\dimen@ .5\wd\z@ \@tempdima\ht\z@\advance\@tempdima.55ex\relax \advance\dimen@\slant@\@tempdima -\ifx\cf@encoding\GRencoding@name\else +\ifx\cf@encoding\GRenc@name\else \ifx#1k\advance\dimen@-.3\wd\tw@\fi\fi \raise\@tempdima\hbox to\z@{\kern\dimen@\box\tw@\relax\hss}\box\z@}} % \end{macrocode} -% The |\ifx\cf@encoding\GRencoding@name| conditional construct shows that this -% macro behaves differently with different font encodings; the following |\ifx#1k| -% checks the argument against the Greek letter kappa, which shows very clearly -% that these macros operate on any letter, not only on vowels. +% The |\ifx\cf@encoding\GRenc@name| conditional construct shows that +% this macro behaves differently with different font encodings; the +% following |\ifx#1k| checks the argument against the Greek letter kappa, +% which shows very clearly that these macros operate on any letter, not +% only on vowels. % \end{macro} % % \begin{macro}{\cap} -% By means of the above |\cap@| macro we can define three equivalent commands to be -% used either when the Greek encoding is in force, or when one of the Latin -% encodings is in force; but we must pay attention, because there exist already -% the command |\cap| to be used in mathematics; therefore we better exclude this -% possibility through a clever use of the |\textormath| macro. Therefore we -% first save the math command into an alia |\mcap|; then we define three -% textual commands for the various encodings |\tcap|; finnally we use +% By means of the above |\cap@| macro we can define three equivalent +% commands to be used either when the Greek encoding is in force, or when +% one of the Latin encodings is in force; but we must pay attention, +% because there exist already the command |\cap| to be used in +% mathematics; therefore we better exclude this possibility through a +% clever use of the |\textormath| macro. Therefore we first save the math +% command into an alia |\mcap|; then we define three textual commands for +% the various encodings |\tcap|; finnally we use % |\textormath|: % \begin{macrocode} \let\mcap\cap -\DeclareTextCommand{\tcap}{\GRencoding@name}{\cap@} +\DeclareTextCommand{\tcap}{\GRenc@name}{\cap@} \DeclareTextCommand{\tcap}{OT1}{\cap@} \DeclareTextCommand{\tcap}{T1}{\cap@} \DeclareRobustCommand*\cap{\textormath{\tcap}{\mcap}} % \end{macrocode} -% Probably one definition would be sufficient, but on one side the presence of three -% encoding dependent macros are the remains of initial works, while on the other -% side they prevent to use these macros with encodings for which the macro might not -% work well, because it was not tested with them. +% Probably one definition would be sufficient, but on one side the +% presence of three encoding dependent macros are the remains of initial +% works, while on the other side they prevent to use these macros with +% encodings for which the macro might not work well, because it was not +% tested with them. % \end{macro} % % \begin{macro}{\cap@cedilla} -% Similarly a small cap can be put under another letter as it was a cedilla; for -% this task another macro is defined, which makes use of the same glyph in -% position~1 in the Greek font table: +% Similarly a small cap can be put under another letter as it was a +% cedilla; for this task another macro is defined, which makes use of the +% same glyph in position~1 in the Greek font table: % \begin{macrocode} \newcommand*\cap@cedilla[1]{\leavevmode -{\setbox4\hbox{\fontencoding{\GRencoding@name}\selectfont\char1}% +{\setbox4\hbox{\fontencoding{\GRenc@name}\selectfont\char1}% \dimen@-.5\wd4 \setbox\z@\hbox{#1}% -\ifx\cf@encoding\GRencoding@name +\ifx\cf@encoding\GRenc@name \ifx#1i\advance\dimen@ .65\wd\z@\else\advance\dimen@ .5\wd\z@\fi \else \ifx#1i\advance\dimen@ .55\wd\z@\else\advance\dimen@ .5\wd\z@\fi @@ -1146,18 +1245,18 @@ Type X <return> to exit.}% % \end{macro} % % \begin{macro}{\ring@cedilla} -% Another cedilla like diacritical mark is the Scandinavian ring put under a letter; -% the ring is taken from the metrics font, so its slot position does not depend -% on the various Latin encodings; the correct positioning requires careful -% examination of the letter under which it is to be placed, distinguishing the Greek -% from the Latin encodings: +% Another cedilla like diacritical mark is the Scandinavian ring put +% under a letter; the ring is taken from the metrics font, so its slot +% position does not depend on the various Latin encodings; the correct +% positioning requires careful examination of the letter under which it +% is to be placed, distinguishing the Greek from the Latin encodings: % \begin{macrocode} \newcommand*\ring@cedilla[1]{\leavevmode {\setbox4\hbox{\metricsfont\char26}% \edef\slant@{\strip@pt\fontdimen1\font}% \dimen@-.5\wd4\ifdim\slant@\p@>\z@\advance\dimen@-.04ex\fi \setbox\z@\hbox{#1}% -\ifx\cf@encoding\GRencoding@name +\ifx\cf@encoding\GRenc@name \advance\dimen@ .45\wd\z@ \ifx#1h\advance\dimen@-.13\wd\z@\fi \ifx#1a\advance\dimen@-.07\wd\z@\fi @@ -1177,14 +1276,15 @@ Type X <return> to exit.}% % \end{macro} % % \begin{macro}{\dot@cedilla} -% Even the standard \LaTeX\ macro |dot| must be redefined with a cedilla like macro, -% so as to make use of a special dot from the metric symbols font: +% Even the standard \LaTeX\ macro |dot| must be redefined with a cedilla +% like macro, so as to make use of a special dot from the metric symbols +% font: % \begin{macrocode} \newcommand*\dot@cedilla[1]{\leavevmode {\setbox4\hbox{\metricsfont\char27}% \dimen@-.5\wd4 \setbox\tw@\hbox{i}\setbox\z@\hbox{#1}% -\ifx\cf@encoding\GRencoding@name +\ifx\cf@encoding\GRenc@name \advance\dimen@ .5\wd\z@ \ifx#1h\advance\dimen@-.13\wd\z@\fi \else @@ -1198,15 +1298,15 @@ Type X <return> to exit.}% %\end{macro} % % \begin{macro}{\tie@cedilla} -% \LaTeX\ has the macro |\t| for placing a ``tie'' over two letters; philologists -% require also a tie under two letters; this is why another cedilla like macro is -% needed: +% \LaTeX\ has the macro |\t| for placing a “tie” over two letters; +% philologists require also a tie under two letters; this is why another +% cedilla like macro is needed: % \begin{macrocode} \newcommand*\tie@cedilla[1]{\leavevmode -{\setbox4\hbox{\fontencoding{\GRencoding@name}\selectfont\char20}% +{\setbox4\hbox{\fontencoding{\GRenc@name}\selectfont\char20}% \dimen@-.5\wd4 \setbox\tw@\hbox{i}\setbox\z@\hbox{#1}% -\ifx\cf@encoding\GRencoding@name +\ifx\cf@encoding\GRenc@name \advance\dimen@.5\wd\z@ \ifx#1h\advance\dimen@-.1\wd\z@\fi \ifx#1u\advance\dimen@.15\wd\z@\fi @@ -1221,81 +1321,87 @@ Type X <return> to exit.}% % \end{macro} % % \subsection{Extended accent definitions} -% We will use those service macros in the definition of several accent like macros -% that keep all the intricacies away from the user. -% -% In particular the \LaTeX\ kernel macros are used in order to declare accents, -% composite glyphs, composite commands, and the like; these are used as the default -% definitions; afterwards other definitions will be given that work when these -% composite macros don't work. -% -% In other words, while |\~| and |u| in Greek form the composite glyph ``upsilon -% with circumflex'' that exists in the Greek font table, the same macro |\~| and the -% letter |k| produce the superposition of a circumflex on top of a ``kappa'' glyph, -% since this glyph does not exist in the Greek font table. +% We will use those service macros in the definition of several accent +% like macros that keep all the intricacies away from the user. +% +% In particular the \LaTeX\ kernel macros are used in order to declare +% accents, composite glyphs, composite commands, and the like; these are +% used as the default definitions; afterwards other definitions will be +% given that work when these composite macros don't work. +% +% In other words, while |\~| and |u| in Greek form the composite glyph +% “upsilon with circumflex” that exists in the Greek font table, the same +% macro |\~| and the letter |k| produce the superposition of a circumflex +% on top of a “kappa” glyph, since this glyph does not exist in the Greek +% font table. %^^A %^^A NON SEMBRA CHE FUNZIONI CON TUTTI I COMANDI; CHIEDERE A GÜNTER %^^A -% Notice that all these declarations are restricted to the Greek font encoding -% so they are usable only when such encoding is in force. See the +% Notice that all these declarations are restricted to the Greek font +% encoding so they are usable only when such encoding is in force. See the % |teubner-doc.pdf| file for more details concerning the usefulness of the -% extended accent macros vs.~the ligature mechanism. In any case, with version -% 3.9g of \babel\ and the modifications introduced by G\"unter Milde, the -% actual \babel\-greek maintainer, during the year 2013, such extended accent -% macros are LICR encoded and may always be used when typesetting in Greek; -% see file \texttt{greek-fontenc.def} and \texttt{lgrenc.def} for further -% details, remembering that such files are always loaded when typesetting -% Greek texts, irrespective of the input encoding; if the encoding is -% \texttt{utf8} direct Greek glyph input is possible (if your keyboard -% allows you to do such input). +% extended accent macros vs.~the ligature mechanism. In any case, with +% version 3.9g of \babel\ and the modifications introduced by G\"unter +% Milde, the actual \babel\-greek maintainer, during the year 2013, such +% extended accent macros are LICR encoded and may always be used when +% typesetting in Greek; see file \texttt{greek-fontenc.def} and +% \texttt{lgrenc.def} for further details, remembering that such files are +% always loaded when typesetting Greek texts, irrespective of the input +% encoding; if the encoding is \texttt{utf8} direct Greek glyph input is +% possible (if your keyboard allows you to do such input). % %\section{Avoiding conflicts} -% Some LICR definitions are necessary to use \pack{teubner}, but some of them -% are really important; therefore G\"unter Milde developed package -% \pack{textslpha} that comes with the other special files for the Greek LICR -% encoding, that avoids any conflict; we load it at the |\begin{document}| -% execution so that it will be loaded only if necessary: +% Some LICR definitions are necessary to use \pack{teubner}, but some of +% them are really important; therefore G\"unter Milde developed package +% \pack{textslpha} that comes with the other special files for the Greek +% LICR encoding, that avoids any conflict; we load it at the +% |\begin{document}| execution so that it will be loaded only if +% necessary: % \begin{macrocode} \AtEndPreamble{\RequirePackage{textalpha}} % \end{macrocode} % % \subsection{Special accent macros} -% Now we come back to the ``accent like'' and ``cedilla like'' general macros we -% defined above, and that will be extensively used in the following definitions. -% Note that for what the circumflex is concerned, when |teubner| is in effect it -% is not defined as an active character and does not work as a non breaking space. -% The command |\~| is just an accent macro; how do you put a non breaking space in -% a Greek context? By simply using the \LaTeX\ kernel macro |\nobreakspace|; when -% typesetting with non-Greek fonts the |~| is certainly handy -% to insert a non breaking space (a tie), but for polytonic Greek spelling in the -% past 15 years or so the Greek language definition file has always used the |~| -% sign a letter, not as an active character. If you look in the \babel\ package -% documentation related to the Greek language, you find that for what concerns the -% |~| with polytonic spelling a number of ``dirty tricks'' have been used, but -% nothing has been done to replace the ``tie'' function of this character when -% typesetting in languages that use the Latin script; the only action related to -% this point has been to redefine the kernel macros for typesetting figure and -% table% captions so as to substitute the |~| character with its explicit -% definition |\nobreakspace|. It is necessary to do the same when this package is -% used, although a shorter alias command |\nbs| is provided in order to simplify -% the input keying. +% Now we come back to the “accent like” and “cedilla like” general macros +% we defined above, and that will be extensively used in the following +% definitions. +% Note that for what the circumflex is concerned, when |teubner| is in +% effect it is not defined as an active character and does not work as a +% non breaking space. The command |\~| is just an accent macro; how do +% you put a non breaking space in a Greek context? By simply using the +% \LaTeX\ kernel macro |\nobreakspace|; when typesetting with non-Greek +% fonts the |~| is certainly handy to insert a non breaking space +% (a tie), but for polytonic Greek spelling in the past 15 years or so +% the Greek language definition file has always used the |~| sign a +% letter, not as an active character. If you look in the \babel\ package +% documentation related to the Greek language, you find that for what +% concerns the |~| with polytonic spelling a number of “dirty tricks” +% have been used, but nothing has been done to replace the “tie” function +% of this character when typesetting in languages that use the Latin +% script; the only action related to this point has been to redefine the +% kernel macros for typesetting figure and table% captions so as to +% substitute the |~| character with its explicit definition +% |\nobreakspace|. It is necessary to do the same when this package is +% used, although a shorter alias command |\nbs| is provided in order to +% simplify the input keying. % \begin{macrocode} \let\nbs\nobreakspace % \end{macrocode} % -% Before defining the Greek accents with the extended macros input with the -% LICR accent macros, we have to define the accent superpositioning macros that -% with \pack{teubner} allow to stack from one to more accent over the base letter, -% taking into account the slant of the font from which the base letter is taken. -% Notice that these macros allow to set an accent on any base latter, even if that -% might be meaningless. At the same time we redefine the standard macros so as to -% let them do the same work when the LGR encoding is not in force. This duality is -% necessary, not only for backward compatibility, but also for avoiding that the +% Before defining the Greek accents with the extended macros input with +% the LICR accent macros, we have to define the accent superpositioning +% macros that with \pack{teubner} allow to stack from one to more accent +% over the base letter, taking into account the slant of the font from +% which the base letter is taken. Notice that these macros allow to set +% an accent on any base latter, even if that might be meaningless. At the +% same time we redefine the standard macros so as to let them do the same +% work when the LGR encoding is not in force. This duality is necessary, +% not only for backward compatibility, but also for avoiding that the % normal redefined macros highjack the LICR facility. % % We first define aliases for the standard \LaTeX\ accents, so that when -% entering Greek typesetting mode we can save the \LaTeX\ macros, and restore -% them upon exiting: +% entering Greek typesetting mode we can save the \LaTeX\ macros, and +% restore them upon exiting: % \begin{macrocode} \let\accacuto\' \let\accgrave\` @@ -1305,27 +1411,28 @@ Type X <return> to exit.}% \let\accmacron\= % \end{macrocode} % -% Then we define alternate macros for these accents, as ``lifting'' accent macros, -% so that they can put their respective accent over any letter. -% For the diaeresis we need to put an invisible character (|v| in the LGR encoded -% CB fonts, that with LICR becomes |\textcompwordmark|) in order to avoid any -% ligature with an implied end of word (boundarychar) that turns the diaeresis -% into an apostrophe. -% \begin{macrocode} -\DeclareTextCommand{\G}{\GRencoding@name}[1]{\lift@accent{96}{#1}} -\DeclareTextCommand{\A}{\GRencoding@name}[1]{\lift@accent{39}{#1}} -\DeclareTextCommand{\C}{\GRencoding@name}[1]{\lift@accent{126}{#1}} -\DeclareTextCommand{\D}{\GRencoding@name}[1]{\lift@accent{34\textcompwordmark}{#1}} -\DeclareTextCommand{\B}{\GRencoding@name}[1]{\lift@accent{30}{#1}} -\DeclareTextCommand{\M}{\GRencoding@name}[1]{\lift@accent{31}{#1}} -% -% \end{macrocode} -% But we have to provide also the means for disabling the |~| shorthand that is -% reset every time the Greek language is selected again in a multi language document -% where language shifts take place quite often; we must also counteract the -% resetting of the |\~| definition performed by the |greek.ld| file in every -% language shift; we add the accent definition to the |\extrasgreek| macro, -% and we reset them at |\noextrasgreek| execution. +% Then we define alternate macros for these accents, as “lifting” accent +% macros, so that they can put their respective accent over any letter. +% For the diaeresis we need to put an invisible character (|v| in the LGR +% encoded CB fonts, that with LICR becomes |\textcompwordmark|) in order +% to avoid any ligature with an implied end of word (boundarychar) that +% turns the diaeresis into an apostrophe. +% \begin{macrocode} +\DeclareTextCommand{\G}{\GRenc@name}[1]{\lift@accent{96}{#1}} +\DeclareTextCommand{\A}{\GRenc@name}[1]{\lift@accent{39}{#1}} +\DeclareTextCommand{\C}{\GRenc@name}[1]{\lift@accent{126}{#1}} +\DeclareTextCommand{\D}{\GRenc@name}[1]{\lift@accent{34\textcompwordmark}{#1}} +\DeclareTextCommand{\B}{\GRenc@name}[1]{\lift@accent{30}{#1}} +\DeclareTextCommand{\M}{\GRenc@name}[1]{\lift@accent{31}{#1}} +% +% \end{macrocode} +% But we have to provide also the means for disabling the |~| shorthand +% that is reset every time the Greek language is selected again in a multi +% language document where language shifts take place quite often; we must +% also counteract the resetting of the |\~| definition performed by the +% |greek.ld| file in every language shift; we add the accent definition +% to the |\extrasgreek| macro, and we reset them at |\noextrasgreek| +% execution. % \begin{macrocode} \addto\extrasgreek{\shorthandoff{~}\let\~\accperispomeni \let\"\accdialytika\let\'\acctonos\let\`\accvaria} @@ -1334,138 +1441,140 @@ Type X <return> to exit.}% % \end{macrocode} % -% Besides the normal |\B| command for setting a breve command, another ``large -% breve'' is required by philologists, who need to mark a diphthong, or in general -% two letters; the macro |\U| does the job, but it is the typesetter's -% responsibility to input the macro argument as made of two letters (possibly with -% their own accents): +% Besides the normal |\B| command for setting a breve command, another +% “large breve” is required by philologists, who need to mark a diphthong, +% or in general two letters; the macro |\U| does the job, but it is the +% typesetter's responsibility to input the macro argument as made of two +% letters (possibly with their own accents): % \begin{macrocode} -\DeclareTextCommand{\U}{\GRencoding@name}[1]{\lift@accent{151}{#1}} +% brevis +\DeclareTextCommand{\U}{\GRenc@name}[1]{\lift@accent{151}{#1}} % rough -\DeclareTextCommand{\r}{\GRencoding@name}[1]{\lift@accent{60}{#1}} +\DeclareTextCommand{\r}{\GRenc@name}[1]{\lift@accent{60}{#1}} % smooth -\DeclareTextCommand{\s}{\GRencoding@name}[1]{\lift@accent{62}{#1}} -% acute+diaeresis -\DeclareTextCommand{\Ad}{\GRencoding@name}[1]{\lift@accent{35}{#1}} -% grave+diaeresis -\DeclareTextCommand{\Gd}{\GRencoding@name}[1]{\lift@accent{36}{#1}} -% circumflex+diaeresis -\DeclareTextCommand{\Cd}{\GRencoding@name}[1]{\lift@accent{32}{#1}} +\DeclareTextCommand{\s}{\GRenc@name}[1]{\lift@accent{62}{#1}} +% acute+dir +\DeclareTextCommand{\Ad}{\GRenc@name}[1]{\lift@accent{35}{#1}} +% grave+dier +\DeclareTextCommand{\Gd}{\GRenc@name}[1]{\lift@accent{36}{#1}} +% circ+dier +\DeclareTextCommand{\Cd}{\GRenc@name}[1]{\lift@accent{32}{#1}} % acute+rough -\DeclareTextCommand{\Ar}{\GRencoding@name}[1]{\lift@accent{86}{#1}} +\DeclareTextCommand{\Ar}{\GRenc@name}[1]{\lift@accent{86}{#1}} % grave+rough -\DeclareTextCommand{\Gr}{\GRencoding@name}[1]{\lift@accent{67}{#1}} +\DeclareTextCommand{\Gr}{\GRenc@name}[1]{\lift@accent{67}{#1}} % circumflex+rough -\DeclareTextCommand{\Cr}{\GRencoding@name}[1]{\lift@accent{64}{#1}} +\DeclareTextCommand{\Cr}{\GRenc@name}[1]{\lift@accent{64}{#1}} % acute+smooth -\DeclareTextCommand{\As}{\GRencoding@name}[1]{\lift@accent{94}{#1}} +\DeclareTextCommand{\As}{\GRenc@name}[1]{\lift@accent{94}{#1}} % grave+smooth -\DeclareTextCommand{\Gs}{\GRencoding@name}[1]{\lift@accent{95}{#1}} +\DeclareTextCommand{\Gs}{\GRenc@name}[1]{\lift@accent{95}{#1}} % circumflex+smooth -\DeclareTextCommand{\Cs}{\GRencoding@name}[1]{\lift@accent{92}{#1}} -% \end{macrocode} -% Most of the above accent commands are used again in order to tie a text symbol -% meaning to certain combinations, that is when they receive as argument a vowel -% whose accented glyph is present in the font; in this way in order to type -% ``alpha with rough breath, acute accent and iota subscript'' you can type -% \verb"<'a|", or \verb"\Ar{a}|" or |\arai| or \verb+\<'a|+, if you use the new standard -% accent macros; the advantage of using the first notation is its short string; the -% advantage of the second is that it does not break kerning commands with a -% preceding letter; the advantage of the third is that it does not break any -% kerning either before or after; the fourth solution produces the same result as -% the third, but it's easier to make up and you don't have to memorise any specific -% naming rule for accented glyphs. With the Lipsian font this trick is particularly -% useful for any sequence of alpha and upsilon each one with its own accents and/or -% diaeresis. -% -% In Greek the regular cedilla is meaningless, so that |\c| may be redefined -% as a semivowel command; at the same time the typesetter might be more -% comfortable if he could always use the same, although longer, macro for -% marking a vowel as a semivowel one; therefore |\c| plays the same role -% in Greek as |\semiv|. +\DeclareTextCommand{\Cs}{\GRenc@name}[1]{\lift@accent{92}{#1}} +% \end{macrocode} +% Most of the above accent commands are used again in order to tie a text +% symbol meaning to certain combinations, that is when they receive as +% argument a vowel whose accented glyph is present in the font; in this +% way in order to type “alpha with rough breath, acute accent and iota +% subscript” you can type \verb"<'a|", or \verb"\Ar{a}|" or |\arai| or +% \verb+\<'a|+, if you use the new standard accent macros; the advantage +% of using the first notation is its short string; the advantage of the +% second is that it does not break kerning commands with a preceding +% letter; the advantage of the third is that it does not break any +% kerning either before or after; the fourth solution produces the same +% result as the third, but it's easier to make up and you don't have to +% memorise any specific naming rule for accented glyphs. With the Lipsian +% font this trick is particularly useful for any sequence of alpha and +% upsilon each one with its own accents and/or diaeresis. +% +% In Greek the regular cedilla is meaningless, so that |\c| may be +% redefined as a semivowel command; at the same time the typesetter might +% be more comfortable if he could always use the same, although longer, +% macro for marking a vowel as a semivowel one; therefore |\c| plays the +% same role in Greek as |\semiv|. % \begin{macrocode} % cap cedilla -\DeclareTextCommand{\c}{\GRencoding@name}[1]{\cap@cedilla{#1}} -\DeclareTextCommand{\semiv}{\GRencoding@name}[1]{\cap@cedilla{#1}} +\DeclareTextCommand{\c}{\GRenc@name}[1]{\cap@cedilla{#1}} +\DeclareTextCommand{\semiv}{\GRenc@name}[1]{\cap@cedilla{#1}} \DeclareTextCommand{\semiv}{OT1}[1]{\cap@cedilla{#1}} \DeclareTextCommand{\semiv}{T1}[1]{\cap@cedilla{#1}} % ring cedilla -\DeclareTextCommand{\ring}{\GRencoding@name}[1]{\ring@cedilla{#1}} +\DeclareTextCommand{\ring}{\GRenc@name}[1]{\ring@cedilla{#1}} \DeclareTextCommand{\ring}{OT1}[1]{\ring@cedilla{#1}} \DeclareTextCommand{\ring}{T1}[1]{\ring@cedilla{#1}} % dot cedilla -\DeclareTextCommand{\Dot}{\GRencoding@name}[1]{\dot@cedilla{#1}} +\DeclareTextCommand{\Dot}{\GRenc@name}[1]{\dot@cedilla{#1}} \DeclareTextCommand{\Dot}{OT1}[1]{\dot@cedilla{#1}} \DeclareTextCommand{\Dot}{T1}[1]{\dot@cedilla{#1}} % tie cedilla -\DeclareTextCommand{\ut}{\GRencoding@name}[1]{\tie@cedilla{#1}} +\DeclareTextCommand{\ut}{\GRenc@name}[1]{\tie@cedilla{#1}} \DeclareTextCommand{\ut}{OT1}[1]{\tie@cedilla{#1}} \DeclareTextCommand{\ut}{T1}[1]{\tie@cedilla{#1}} % % Acute breve -\DeclareTextCommand{\Ab}{\GRencoding@name}[1]% +\DeclareTextCommand{\Ab}{\GRenc@name}[1]% {\LIFT@accent{39}{-.15ex}{\lift@accent{30}{#1}}} % Grave breve -\DeclareTextCommand{\Gb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Gb}{\GRenc@name}[1]% {\LIFT@accent{96}{-.15ex}{\lift@accent{30}{#1}}} % Acute rough breve -\DeclareTextCommand{\Arb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Arb}{\GRenc@name}[1]% {\LIFT@accent{86}{-.15ex}{\lift@accent{30}{#1}}} % Grave rough breve -\DeclareTextCommand{\Grb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Grb}{\GRenc@name}[1]% {\LIFT@accent{67}{-.15ex}{\lift@accent{30}{#1}}} % Acute smooth breve -\DeclareTextCommand{\Asb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Asb}{\GRenc@name}[1]% {\LIFT@accent{94}{-.15ex}{\lift@accent{30}{#1}}} % Grave smooth breve -\DeclareTextCommand{\Gsb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Gsb}{\GRenc@name}[1]% {\LIFT@accent{95}{-.15ex}{\lift@accent{30}{#1}}} % % Acute macron -\DeclareTextCommand{\Am}{\GRencoding@name}[1]% +\DeclareTextCommand{\Am}{\GRenc@name}[1]% {\Lift@accent{39}{\lift@accent{31}{#1}}} % Grave macron -\DeclareTextCommand{\Gm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Gm}{\GRenc@name}[1]% {\Lift@accent{96}{\lift@accent{31}{#1}}} % Circumflex macron -\DeclareTextCommand{\Cm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Cm}{\GRenc@name}[1]% {\Lift@accent{126}{\lift@accent{31}{#1}}} % Acute rough macron -\DeclareTextCommand{\Arm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Arm}{\GRenc@name}[1]% {\Lift@accent{86}{\lift@accent{31}{#1}}} % Grave rough macron -\DeclareTextCommand{\Grm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Grm}{\GRenc@name}[1]% {\Lift@accent{67}{\lift@accent{31}{#1}}} % Circumflex rough macron -\DeclareTextCommand{\Crm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Crm}{\GRenc@name}[1]% {\Lift@accent{64}{\lift@accent{31}{#1}}} % Acute smooth macron -\DeclareTextCommand{\Asm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Asm}{\GRenc@name}[1]% {\Lift@accent{94}{\lift@accent{31}{#1}}} % Grave smooth macron -\DeclareTextCommand{\Gsm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Gsm}{\GRenc@name}[1]% {\Lift@accent{95}{\lift@accent{31}{#1}}} % Circumflex smooth macron -\DeclareTextCommand{\Csm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Csm}{\GRenc@name}[1]% {\Lift@accent{92}{\lift@accent{31}{#1}}} % smooth macron -\DeclareTextCommand{\Sm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Sm}{\GRenc@name}[1]% {\Lift@accent{62}{\lift@accent{31}{#1}}} % rough macron -\DeclareTextCommand{\Rm}{\GRencoding@name}[1]% +\DeclareTextCommand{\Rm}{\GRenc@name}[1]% {\Lift@accent{60}{\lift@accent{31}{#1}}} % smooth breve -\DeclareTextCommand{\Sb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Sb}{\GRenc@name}[1]% {\LIFT@accent{62}{-0.15ex}{\lift@accent{30}{#1}}} % rough breve -\DeclareTextCommand{\Rb}{\GRencoding@name}[1]% +\DeclareTextCommand{\Rb}{\GRenc@name}[1]% {\LIFT@accent{60}{-0.15ex}{\lift@accent{30}{#1}}} % breve and dieresis -\DeclareTextCommand{\bd}{\GRencoding@name}[1]% +\DeclareTextCommand{\bd}{\GRenc@name}[1]% {\LIFT@accent{30}{-.1ex}{\lift@accent{34v}{#1}}} % % iota subscript -\DeclareTextCommand{\iS}{\GRencoding@name}[1] +\DeclareTextCommand{\iS}{\GRenc@name}[1] {\ooalign{#1\crcr\hidewidth\char124\hidewidth}} % \end{macrocode} @@ -1473,7 +1582,7 @@ Type X <return> to exit.}% % \begin{macro}{\d} % The |\d| macro must be made available also with the Greek encoding % \begin{macrocode} -\DeclareTextCommand{\d}{\GRencoding@name}[1]% +\DeclareTextCommand{\d}{\GRenc@name}[1]% {\leavevmode\bgroup\o@lign{\relax#1\crcr \hidewidth\sh@ft{10}.\hidewidth}\egroup} @@ -1490,7 +1599,7 @@ Type X <return> to exit.}% {\setbox4\hbox{\raise-.33ex\hbox{\metricsfont\char14}}% \dimen@-.5\wd4 \setbox\tw@\hbox{i}\setbox\z@\hbox{#1}% -\ifx\cf@encoding\GRencoding@name +\ifx\cf@encoding\GRenc@name \advance\dimen@ .5\wd\z@ \setbox\tw@\hbox{h}\ifdim\wd\z@=\wd\tw@\advance\dimen@-.13\wd\z@\fi \else @@ -1509,7 +1618,7 @@ Type X <return> to exit.}% {\setbox4\hbox{\raise-1.7ex\hbox{\GEcq}}% \dimen@-.5\wd4 \setbox\tw@\hbox{i}\setbox\z@\hbox{#1}% -\ifx\cf@encoding\GRencoding@name +\ifx\cf@encoding\GRenc@name \advance\dimen@ .5\wd\z@ \setbox\tw@\hbox{h}\ifdim\wd\z@=\wd\tw@\advance\dimen@-.13\wd\z@\fi \else @@ -1522,34 +1631,35 @@ Type X <return> to exit.}% % \end{macrocode} % \end{macro} %\begin {macro}{\tenaspir} -% Similarly |\tenaspir| marks a ``tenuis aspiratio'' +% Similarly |\tenaspir| marks a “tenuis aspiratio” % \begin{macrocode} \DeclareRobustCommand{\tenaspir}[1]{#1\/% - {\fontencoding{\GRencoding@name}\selectfont<v}} + {\fontencoding{\GRenc@name}\selectfont<v}} % \end{macrocode} % \end{macro} %\begin{macro}{\palat} % |\palat| marks a palatal pronunciation of some consonants. % \begin{macrocode} \DeclareRobustCommand{\palat}[1]{#1{% - \expandafter\fontencoding\expandafter{\GRencoding@name}\selectfont + \expandafter\fontencoding\expandafter{\GRenc@name}\selectfont \anwtonos}} % \end{macrocode} %\end{macro} % % With the help of the previous macros some new commands get defined so as -% to use a simple more or less mnemonic macro instead of having the typesetter type -% in nested macros; these macros are valid only in the Greek and Latin encodings. +% to use a simple more or less mnemonic macro instead of having the +% typesetter type in nested macros; these macros are valid only in the +% Greek and Latin encodings. % \begin{macrocode} % dot and breve -\DeclareTextCommand{\Ud}{\GRencoding@name}[1]{\d{\u{#1}}} +\DeclareTextCommand{\Ud}{\GRenc@name}[1]{\d{\u{#1}}} % dot and macron -\DeclareTextCommand{\md}{\GRencoding@name}[1]{\d{\={#1}}} +\DeclareTextCommand{\md}{\GRenc@name}[1]{\d{\={#1}}} % open and breve -\DeclareTextCommand{\UO}{\GRencoding@name}[1]{\Open{\u{#1}}} +\DeclareTextCommand{\UO}{\GRenc@name}[1]{\Open{\u{#1}}} % open and macron -\DeclareTextCommand{\mO}{\GRencoding@name}[1]{\Open{\={#1}}} +\DeclareTextCommand{\mO}{\GRenc@name}[1]{\Open{\={#1}}} % \DeclareTextCommand{\Ud}{T1}[1]{\d{\u{#1}}} @@ -1573,7 +1683,9 @@ Type X <return> to exit.}% % \begin{macro}{\textemdash} % \begin{macro}{emdash} % \begin{macro}{\textendash} -% All these macros are defined by the new \texttt{lgrenc.def} file, so it is not necessary to redefine them.% \end{macro} +% All these macros are defined by the new \texttt{lgrenc.def} file, so +% it is not necessary to redefine them. +% \end{macro} % \end{macro} % \end{macro} % \end{macro} @@ -1630,22 +1742,22 @@ Type X <return> to exit.}% %\begin{macro}{\textsterling} %\begin{macro}{\textunderscore} %\begin{macro}{\textvisiblespace} -% More important, although unlikely to be found in a philological text, is the -% question of standard \LaTeX\ commands that are defined with reference to some -% encoding; if Greek text is being typeset, the Greek encoding is being used and -% such symbols would not be available any more; \LaTeX would issue warning messages -% complaining for their absence. Therefore we redefined them also for the Greek -% encoding. -% \begin{macrocode} -\DeclareTextCommand{\textdollar}{\GRencoding@name}% +% More important, although unlikely to be found in a philological text, +% is the question of standard \LaTeX\ commands that are defined with +% reference to some encoding; if Greek text is being typeset, the Greek +% encoding is being used and such symbols would not be available any +% more; \LaTeX would issue warning messages complaining for their +% absence. Therefore we redefined them also for the Greek encoding. +% \begin{macrocode} +\DeclareTextCommand{\textdollar}{\GRenc@name}% {{\fontencoding{T1}\selectfont\char36}} -\DeclareTextCommand{\textsection}{\GRencoding@name}% +\DeclareTextCommand{\textsection}{\GRenc@name}% {{\fontencoding{T1}\selectfont\char159}} -\DeclareTextCommand{\textsterling}{\GRencoding@name}% +\DeclareTextCommand{\textsterling}{\GRenc@name}% {{\fontencoding{T1}\selectfont\char191}} -\DeclareTextCommand{\textunderscore}{\GRencoding@name}% +\DeclareTextCommand{\textunderscore}{\GRenc@name}% {{\fontencoding{T1}\selectfont\char95}} -\DeclareTextCommand{\textvisiblespace}{\GRencoding@name}% +\DeclareTextCommand{\textvisiblespace}{\GRenc@name}% {{\fontencoding{T1}\selectfont\char32}} % \end{macrocode} @@ -1657,238 +1769,242 @@ Type X <return> to exit.}% % % % \subsection{Accent macros and glyph names} -% Now come dozens of macros that allow to access Greek accented vowels (plus rho -% with rough and smooth breaths) with macros instead of ligatures; such macros -% allow the kerning information to be used by \TeX, while the ligature mechanism -% would sometimes impeach the use of such kerning information. Notice that the -% same glyphs are often accessed with a ``text symbol'' or a ``text composite -% symbol''; as explained above the opportunity of using either one derives from -% the necessity of maintaining the kerning mechanism embedded in the font; if the -% CB fonts had a postfixed accent notation, instead of a prefixed one, none of -% these macros would be necessary (probably\dots!), but there would be other -% inconveniences. -% -% Notice that the following code is subject to the boolean variable |GlyphNames| -% which is set to \emph{false} by default, just for compatibility with the past; -% I suggest to use the \emph{GlyphNames} option when when you really want to use -% such macros; remember though that all these glyphs are more easily specified by -% means of the extended accent macros that are also less restricted in their -% names; for a letter marked with a smooth breath and an acute accent you can -% indifferently type before the letter one of the following |\>\'|, |\>'|, |\'\>|, -% |\'>| at your choice. Moreover you can always postfix the mark for the iota -% subscribed at the right of the letter, without any need o memorising complicated -% names. -% -% Notice the macros |\oR| and |\oG| that have the second letter capitalised in -% order to avoid conflicts with otherwise homonymous macros defined in the \LaTeX\ -% kernel or in other packages; by maintaining the false value to the boolean -% variable |GlyphNames| you are sure to avoid conflicts. +% +% Now come dozens of macros that allow to access Greek accented vowels +% (plus rho with rough and smooth breaths) with macros instead of +% ligatures; such macros allow the kerning information to be used by +% \TeX, while the ligature mechanism would sometimes impeach the use of +% such kerning information. Notice that the same glyphs are often +% accessed with a “text symbol” or a “text composite symbol”; as +% explained above the opportunity of using either one derives from +% the necessity of maintaining the kerning mechanism embedded in the +% font; if the CB fonts had a postfixed accent notation, instead of +% a prefixed one, none of these macros would be necessary +% (probably\dots!), but there would be other inconveniences. +% +% Notice that the following code is subject to the boolean variable +% |GlyphNames| which is set to \emph{false} by default, just for +% compatibility with the past; I suggest to use the \emph{GlyphNames} +% option when when you really want to use such macros; remember though +% that all these glyphs are more easily specified by means of the +% extended accent macros that are also less restricted in their names; +% for a letter marked with a smooth breath and an acute accent you can +% indifferently type before the letter one of the following +% |\>\'|, |\>'|, |\'\>|, |\'>| at your choice. Moreover you can always +% postfix the mark for the iota subscribed at the right of the letter, +% without any need o memorising complicated names. +% +% Notice the macros |\oR| and |\oG| that have the second letter +% capitalised in order to avoid conflicts with otherwise homonymous +% macros defined in the \LaTeX\ kernel or in other packages; by +% maintaining the false value to the boolean variable |GlyphNames| you +% are sure to avoid conflicts. % \begin{macrocode} \ifGlyphNames -\DeclareTextSymbol{\ag}{\GRencoding@name}{128} -\DeclareTextSymbol{\ar}{\GRencoding@name}{129} -\DeclareTextComposite{\r}{\GRencoding@name}{a}{129} -\DeclareTextSymbol{\as}{\GRencoding@name}{130} -\DeclareTextComposite{\s}{\GRencoding@name}{a}{130} -\DeclareTextSymbol{\aa}{\GRencoding@name}{136} -\DeclareTextSymbol{\ac}{\GRencoding@name}{144} -\DeclareTextSymbol{\ai}{\GRencoding@name}{248} -\DeclareTextSymbol{\aai}{\GRencoding@name}{140} -\DeclareTextSymbol{\aci}{\GRencoding@name}{148} -\DeclareTextSymbol{\agi}{\GRencoding@name}{132} -\DeclareTextSymbol{\ara}{\GRencoding@name}{137} -\DeclareTextComposite{\Ar}{\GRencoding@name}{a}{137} -\DeclareTextSymbol{\arc}{\GRencoding@name}{145} -\DeclareTextComposite{\Cr}{\GRencoding@name}{a}{145} -\DeclareTextSymbol{\arg}{\GRencoding@name}{131} -\DeclareTextComposite{\Gr}{\GRencoding@name}{a}{131} -\DeclareTextSymbol{\ari}{\GRencoding@name}{133} -\DeclareTextSymbol{\asa}{\GRencoding@name}{138} -\DeclareTextComposite{\As}{\GRencoding@name}{a}{138} -\DeclareTextSymbol{\asc}{\GRencoding@name}{146} -\DeclareTextComposite{\Cs}{\GRencoding@name}{a}{146} -\DeclareTextSymbol{\asg}{\GRencoding@name}{139} -\DeclareTextComposite{\Gs}{\GRencoding@name}{a}{139} -\DeclareTextSymbol{\asi}{\GRencoding@name}{134} -\DeclareTextSymbol{\argi}{\GRencoding@name}{135} -\DeclareTextSymbol{\arai}{\GRencoding@name}{141} -\DeclareTextSymbol{\arci}{\GRencoding@name}{149} -\DeclareTextSymbol{\asai}{\GRencoding@name}{142} -\DeclareTextSymbol{\asgi}{\GRencoding@name}{143} -\DeclareTextSymbol{\asci}{\GRencoding@name}{150} -\DeclareTextSymbol{\hg}{\GRencoding@name}{152} -\DeclareTextSymbol{\hr}{\GRencoding@name}{153} -\DeclareTextComposite{\r}{\GRencoding@name}{h}{153} -\DeclareTextSymbol{\hs}{\GRencoding@name}{154} -\DeclareTextComposite{\s}{\GRencoding@name}{h}{154} -\DeclareTextSymbol{\hrg}{\GRencoding@name}{163} -\DeclareTextComposite{\Gr}{\GRencoding@name}{h}{163} -\DeclareTextSymbol{\hgi}{\GRencoding@name}{156} -\DeclareTextSymbol{\hri}{\GRencoding@name}{157} -\DeclareTextSymbol{\hsi}{\GRencoding@name}{158} -\DeclareTextSymbol{\hrgi}{\GRencoding@name}{167} -\DeclareTextSymbol{\ha}{\GRencoding@name}{160} -\DeclareTextSymbol{\hra}{\GRencoding@name}{161} -\DeclareTextComposite{\Ar}{\GRencoding@name}{h}{161} -\DeclareTextSymbol{\hsa}{\GRencoding@name}{162} -\DeclareTextComposite{\As}{\GRencoding@name}{h}{162} -\DeclareTextSymbol{\hsg}{\GRencoding@name}{171} -\DeclareTextComposite{\Gs}{\GRencoding@name}{h}{171} -\DeclareTextSymbol{\hai}{\GRencoding@name}{164} -\DeclareTextSymbol{\hrai}{\GRencoding@name}{165} -\DeclareTextSymbol{\hsai}{\GRencoding@name}{166} -\DeclareTextSymbol{\hsgi}{\GRencoding@name}{175} -\DeclareTextSymbol{\hc}{\GRencoding@name}{168} -\DeclareTextSymbol{\hrc}{\GRencoding@name}{169} -\DeclareTextComposite{\Cr}{\GRencoding@name}{h}{169} -\DeclareTextSymbol{\hsc}{\GRencoding@name}{170} -\DeclareTextComposite{\Cs}{\GRencoding@name}{h}{170} -\DeclareTextSymbol{\hci}{\GRencoding@name}{172} -\DeclareTextSymbol{\hrci}{\GRencoding@name}{173} -\DeclareTextSymbol{\hsci}{\GRencoding@name}{174} -\DeclareTextSymbol{\hi}{\GRencoding@name}{249} -\DeclareTextSymbol{\wg}{\GRencoding@name}{176} -\DeclareTextSymbol{\wr}{\GRencoding@name}{177} -\DeclareTextComposite{\r}{\GRencoding@name}{w}{177} -\DeclareTextSymbol{\ws}{\GRencoding@name}{178} -\DeclareTextComposite{\s}{\GRencoding@name}{w}{178} -\DeclareTextSymbol{\wrg}{\GRencoding@name}{179} -\DeclareTextComposite{\Gr}{\GRencoding@name}{w}{179} -\DeclareTextSymbol{\wgi}{\GRencoding@name}{180} -\DeclareTextSymbol{\wri}{\GRencoding@name}{181} -\DeclareTextSymbol{\wsi}{\GRencoding@name}{182} -\DeclareTextSymbol{\wrgi}{\GRencoding@name}{183} -\DeclareTextSymbol{\wa}{\GRencoding@name}{184} -\DeclareTextSymbol{\wra}{\GRencoding@name}{185} -\DeclareTextComposite{\Ar}{\GRencoding@name}{w}{185} -\DeclareTextSymbol{\wsa}{\GRencoding@name}{186} -\DeclareTextComposite{\As}{\GRencoding@name}{w}{186} -\DeclareTextSymbol{\wsg}{\GRencoding@name}{187} -\DeclareTextComposite{\Gs}{\GRencoding@name}{w}{187} -\DeclareTextSymbol{\wai}{\GRencoding@name}{188} -\DeclareTextSymbol{\wrai}{\GRencoding@name}{189} -\DeclareTextSymbol{\wsai}{\GRencoding@name}{190} -\DeclareTextSymbol{\wsgi}{\GRencoding@name}{191} -\DeclareTextSymbol{\wc}{\GRencoding@name}{192} -\DeclareTextSymbol{\wrc}{\GRencoding@name}{193} -\DeclareTextComposite{\Cr}{\GRencoding@name}{w}{193} -\DeclareTextSymbol{\wsc}{\GRencoding@name}{194} -\DeclareTextComposite{\Cs}{\GRencoding@name}{w}{194} -\DeclareTextSymbol{\wci}{\GRencoding@name}{196} -\DeclareTextSymbol{\wrci}{\GRencoding@name}{197} -\DeclareTextSymbol{\wsci}{\GRencoding@name}{198} -\DeclareTextSymbol{\wi}{\GRencoding@name}{250} -\DeclareTextSymbol{\ig}{\GRencoding@name}{200} -\DeclareTextSymbol{\ir}{\GRencoding@name}{201} -\DeclareTextComposite{\r}{\GRencoding@name}{i}{201} -\DeclareTextSymbol{\is}{\GRencoding@name}{202} -\DeclareTextComposite{\s}{\GRencoding@name}{i}{202} -\DeclareTextSymbol{\irg}{\GRencoding@name}{203} -\DeclareTextComposite{\Gr}{\GRencoding@name}{i}{203} -\DeclareTextSymbol{\ia}{\GRencoding@name}{208} -\DeclareTextSymbol{\ira}{\GRencoding@name}{209} -\DeclareTextComposite{\Ar}{\GRencoding@name}{i}{209} -\DeclareTextSymbol{\isa}{\GRencoding@name}{210} -\DeclareTextComposite{\As}{\GRencoding@name}{i}{210} -\DeclareTextSymbol{\isg}{\GRencoding@name}{211} -\DeclareTextComposite{\Gs}{\GRencoding@name}{i}{211} -\DeclareTextSymbol{\ic}{\GRencoding@name}{216} -\DeclareTextSymbol{\irc}{\GRencoding@name}{217} -\DeclareTextComposite{\Cr}{\GRencoding@name}{i}{217} -\DeclareTextSymbol{\isc}{\GRencoding@name}{218} -\DeclareTextComposite{\Cs}{\GRencoding@name}{i}{218} -\DeclareTextSymbol{\id}{\GRencoding@name}{240} -\DeclareTextSymbol{\idg}{\GRencoding@name}{241} -\DeclareTextComposite{\Gd}{\GRencoding@name}{i}{241} -\DeclareTextSymbol{\ida}{\GRencoding@name}{242} -\DeclareTextComposite{\Ad}{\GRencoding@name}{i}{242} -\DeclareTextSymbol{\idc}{\GRencoding@name}{243} -\DeclareTextComposite{\Cd}{\GRencoding@name}{i}{243} -\DeclareTextSymbol{\ug}{\GRencoding@name}{204} -\DeclareTextSymbol{\ur}{\GRencoding@name}{205} -\DeclareTextComposite{\r}{\GRencoding@name}{u}{205} -\DeclareTextSymbol{\us}{\GRencoding@name}{206} -\DeclareTextComposite{\s}{\GRencoding@name}{u}{206} -\DeclareTextSymbol{\urg}{\GRencoding@name}{207} -\DeclareTextComposite{\Gr}{\GRencoding@name}{u}{207} -\DeclareTextSymbol{\ua}{\GRencoding@name}{212} -\DeclareTextSymbol{\ura}{\GRencoding@name}{213} -\DeclareTextComposite{\Ar}{\GRencoding@name}{u}{213} -\DeclareTextSymbol{\usa}{\GRencoding@name}{214} -\DeclareTextComposite{\As}{\GRencoding@name}{u}{214} -\DeclareTextSymbol{\usg}{\GRencoding@name}{215} -\DeclareTextComposite{\Gs}{\GRencoding@name}{u}{215} -\DeclareTextSymbol{\uc}{\GRencoding@name}{220} -\DeclareTextSymbol{\urc}{\GRencoding@name}{221} -\DeclareTextComposite{\Cr}{\GRencoding@name}{u}{221} -\DeclareTextSymbol{\usc}{\GRencoding@name}{222} -\DeclareTextComposite{\Cs}{\GRencoding@name}{u}{222} -\DeclareTextSymbol{\ud}{\GRencoding@name}{244} -\DeclareTextSymbol{\udg}{\GRencoding@name}{245} -\DeclareTextComposite{\Gd}{\GRencoding@name}{u}{245} -\DeclareTextSymbol{\uda}{\GRencoding@name}{246} -\DeclareTextComposite{\Ad}{\GRencoding@name}{u}{246} -\DeclareTextSymbol{\udc}{\GRencoding@name}{247} -\DeclareTextComposite{\Cd}{\GRencoding@name}{u}{247} -\DeclareTextSymbol{\eg}{\GRencoding@name}{224} -\DeclareTextSymbol{\er}{\GRencoding@name}{225} -\DeclareTextComposite{\r}{\GRencoding@name}{e}{225} -\DeclareTextSymbol{\es}{\GRencoding@name}{226} -\DeclareTextComposite{\s}{\GRencoding@name}{e}{226} -\DeclareTextSymbol{\erg}{\GRencoding@name}{227} -\DeclareTextComposite{\Gr}{\GRencoding@name}{e}{227} -\DeclareTextSymbol{\ea}{\GRencoding@name}{232} -\DeclareTextSymbol{\era}{\GRencoding@name}{233} -\DeclareTextComposite{\Ar}{\GRencoding@name}{e}{233} -\DeclareTextSymbol{\esa}{\GRencoding@name}{234} -\DeclareTextComposite{\As}{\GRencoding@name}{e}{234} -\DeclareTextSymbol{\esg}{\GRencoding@name}{235} -\DeclareTextComposite{\Gs}{\GRencoding@name}{e}{235} -\DeclareTextSymbol{\oR}{\GRencoding@name}{229} -\DeclareTextComposite{\r}{\GRencoding@name}{o}{229} -\DeclareTextSymbol{\oG}{\GRencoding@name}{228} -\DeclareTextSymbol{\os}{\GRencoding@name}{230} -\DeclareTextComposite{\s}{\GRencoding@name}{o}{230} -\DeclareTextSymbol{\org}{\GRencoding@name}{231} -\DeclareTextComposite{\Gr}{\GRencoding@name}{o}{231} -\DeclareTextSymbol{\oa}{\GRencoding@name}{236} -\DeclareTextSymbol{\ora}{\GRencoding@name}{237} -\DeclareTextComposite{\Ar}{\GRencoding@name}{o}{237} -\DeclareTextSymbol{\osa}{\GRencoding@name}{238} -\DeclareTextComposite{\As}{\GRencoding@name}{o}{238} -\DeclareTextSymbol{\osg}{\GRencoding@name}{239} -\DeclareTextComposite{\Gs}{\GRencoding@name}{o}{239} -\DeclareTextSymbol{\rr}{\GRencoding@name}{251} -\DeclareTextComposite{\r}{\GRencoding@name}{r}{251} -\DeclareTextSymbol{\rs}{\GRencoding@name}{252} -\DeclareTextComposite{\s}{\GRencoding@name}{r}{252} -\DeclareTextSymbol{\Id}{\GRencoding@name}{219} -\DeclareTextSymbol{\Ud}{\GRencoding@name}{223} -\DeclareTextComposite{\"}{\GRencoding@name}{U}{223} +\DeclareTextSymbol{\ag}{\GRenc@name}{128} +\DeclareTextSymbol{\ar}{\GRenc@name}{129} +\DeclareTextComposite{\r}{\GRenc@name}{a}{129} +\DeclareTextSymbol{\as}{\GRenc@name}{130} +\DeclareTextComposite{\s}{\GRenc@name}{a}{130} +\DeclareTextSymbol{\aa}{\GRenc@name}{136} +\DeclareTextSymbol{\ac}{\GRenc@name}{144} +\DeclareTextSymbol{\ai}{\GRenc@name}{248} +\DeclareTextSymbol{\aai}{\GRenc@name}{140} +\DeclareTextSymbol{\aci}{\GRenc@name}{148} +\DeclareTextSymbol{\agi}{\GRenc@name}{132} +\DeclareTextSymbol{\ara}{\GRenc@name}{137} +\DeclareTextComposite{\Ar}{\GRenc@name}{a}{137} +\DeclareTextSymbol{\arc}{\GRenc@name}{145} +\DeclareTextComposite{\Cr}{\GRenc@name}{a}{145} +\DeclareTextSymbol{\arg}{\GRenc@name}{131} +\DeclareTextComposite{\Gr}{\GRenc@name}{a}{131} +\DeclareTextSymbol{\ari}{\GRenc@name}{133} +\DeclareTextSymbol{\asa}{\GRenc@name}{138} +\DeclareTextComposite{\As}{\GRenc@name}{a}{138} +\DeclareTextSymbol{\asc}{\GRenc@name}{146} +\DeclareTextComposite{\Cs}{\GRenc@name}{a}{146} +\DeclareTextSymbol{\asg}{\GRenc@name}{139} +\DeclareTextComposite{\Gs}{\GRenc@name}{a}{139} +\DeclareTextSymbol{\asi}{\GRenc@name}{134} +\DeclareTextSymbol{\argi}{\GRenc@name}{135} +\DeclareTextSymbol{\arai}{\GRenc@name}{141} +\DeclareTextSymbol{\arci}{\GRenc@name}{149} +\DeclareTextSymbol{\asai}{\GRenc@name}{142} +\DeclareTextSymbol{\asgi}{\GRenc@name}{143} +\DeclareTextSymbol{\asci}{\GRenc@name}{150} +\DeclareTextSymbol{\hg}{\GRenc@name}{152} +\DeclareTextSymbol{\hr}{\GRenc@name}{153} +\DeclareTextComposite{\r}{\GRenc@name}{h}{153} +\DeclareTextSymbol{\hs}{\GRenc@name}{154} +\DeclareTextComposite{\s}{\GRenc@name}{h}{154} +\DeclareTextSymbol{\hrg}{\GRenc@name}{163} +\DeclareTextComposite{\Gr}{\GRenc@name}{h}{163} +\DeclareTextSymbol{\hgi}{\GRenc@name}{156} +\DeclareTextSymbol{\hri}{\GRenc@name}{157} +\DeclareTextSymbol{\hsi}{\GRenc@name}{158} +\DeclareTextSymbol{\hrgi}{\GRenc@name}{167} +\DeclareTextSymbol{\ha}{\GRenc@name}{160} +\DeclareTextSymbol{\hra}{\GRenc@name}{161} +\DeclareTextComposite{\Ar}{\GRenc@name}{h}{161} +\DeclareTextSymbol{\hsa}{\GRenc@name}{162} +\DeclareTextComposite{\As}{\GRenc@name}{h}{162} +\DeclareTextSymbol{\hsg}{\GRenc@name}{171} +\DeclareTextComposite{\Gs}{\GRenc@name}{h}{171} +\DeclareTextSymbol{\hai}{\GRenc@name}{164} +\DeclareTextSymbol{\hrai}{\GRenc@name}{165} +\DeclareTextSymbol{\hsai}{\GRenc@name}{166} +\DeclareTextSymbol{\hsgi}{\GRenc@name}{175} +\DeclareTextSymbol{\hc}{\GRenc@name}{168} +\DeclareTextSymbol{\hrc}{\GRenc@name}{169} +\DeclareTextComposite{\Cr}{\GRenc@name}{h}{169} +\DeclareTextSymbol{\hsc}{\GRenc@name}{170} +\DeclareTextComposite{\Cs}{\GRenc@name}{h}{170} +\DeclareTextSymbol{\hci}{\GRenc@name}{172} +\DeclareTextSymbol{\hrci}{\GRenc@name}{173} +\DeclareTextSymbol{\hsci}{\GRenc@name}{174} +\DeclareTextSymbol{\hi}{\GRenc@name}{249} +\DeclareTextSymbol{\wg}{\GRenc@name}{176} +\DeclareTextSymbol{\wr}{\GRenc@name}{177} +\DeclareTextComposite{\r}{\GRenc@name}{w}{177} +\DeclareTextSymbol{\ws}{\GRenc@name}{178} +\DeclareTextComposite{\s}{\GRenc@name}{w}{178} +\DeclareTextSymbol{\wrg}{\GRenc@name}{179} +\DeclareTextComposite{\Gr}{\GRenc@name}{w}{179} +\DeclareTextSymbol{\wgi}{\GRenc@name}{180} +\DeclareTextSymbol{\wri}{\GRenc@name}{181} +\DeclareTextSymbol{\wsi}{\GRenc@name}{182} +\DeclareTextSymbol{\wrgi}{\GRenc@name}{183} +\DeclareTextSymbol{\wa}{\GRenc@name}{184} +\DeclareTextSymbol{\wra}{\GRenc@name}{185} +\DeclareTextComposite{\Ar}{\GRenc@name}{w}{185} +\DeclareTextSymbol{\wsa}{\GRenc@name}{186} +\DeclareTextComposite{\As}{\GRenc@name}{w}{186} +\DeclareTextSymbol{\wsg}{\GRenc@name}{187} +\DeclareTextComposite{\Gs}{\GRenc@name}{w}{187} +\DeclareTextSymbol{\wai}{\GRenc@name}{188} +\DeclareTextSymbol{\wrai}{\GRenc@name}{189} +\DeclareTextSymbol{\wsai}{\GRenc@name}{190} +\DeclareTextSymbol{\wsgi}{\GRenc@name}{191} +\DeclareTextSymbol{\wc}{\GRenc@name}{192} +\DeclareTextSymbol{\wrc}{\GRenc@name}{193} +\DeclareTextComposite{\Cr}{\GRenc@name}{w}{193} +\DeclareTextSymbol{\wsc}{\GRenc@name}{194} +\DeclareTextComposite{\Cs}{\GRenc@name}{w}{194} +\DeclareTextSymbol{\wci}{\GRenc@name}{196} +\DeclareTextSymbol{\wrci}{\GRenc@name}{197} +\DeclareTextSymbol{\wsci}{\GRenc@name}{198} +\DeclareTextSymbol{\wi}{\GRenc@name}{250} +\DeclareTextSymbol{\ig}{\GRenc@name}{200} +\DeclareTextSymbol{\ir}{\GRenc@name}{201} +\DeclareTextComposite{\r}{\GRenc@name}{i}{201} +\DeclareTextSymbol{\is}{\GRenc@name}{202} +\DeclareTextComposite{\s}{\GRenc@name}{i}{202} +\DeclareTextSymbol{\irg}{\GRenc@name}{203} +\DeclareTextComposite{\Gr}{\GRenc@name}{i}{203} +\DeclareTextSymbol{\ia}{\GRenc@name}{208} +\DeclareTextSymbol{\ira}{\GRenc@name}{209} +\DeclareTextComposite{\Ar}{\GRenc@name}{i}{209} +\DeclareTextSymbol{\isa}{\GRenc@name}{210} +\DeclareTextComposite{\As}{\GRenc@name}{i}{210} +\DeclareTextSymbol{\isg}{\GRenc@name}{211} +\DeclareTextComposite{\Gs}{\GRenc@name}{i}{211} +\DeclareTextSymbol{\ic}{\GRenc@name}{216} +\DeclareTextSymbol{\irc}{\GRenc@name}{217} +\DeclareTextComposite{\Cr}{\GRenc@name}{i}{217} +\DeclareTextSymbol{\isc}{\GRenc@name}{218} +\DeclareTextComposite{\Cs}{\GRenc@name}{i}{218} +\DeclareTextSymbol{\id}{\GRenc@name}{240} +\DeclareTextSymbol{\idg}{\GRenc@name}{241} +\DeclareTextComposite{\Gd}{\GRenc@name}{i}{241} +\DeclareTextSymbol{\ida}{\GRenc@name}{242} +\DeclareTextComposite{\Ad}{\GRenc@name}{i}{242} +\DeclareTextSymbol{\idc}{\GRenc@name}{243} +\DeclareTextComposite{\Cd}{\GRenc@name}{i}{243} +\DeclareTextSymbol{\ug}{\GRenc@name}{204} +\DeclareTextSymbol{\ur}{\GRenc@name}{205} +\DeclareTextComposite{\r}{\GRenc@name}{u}{205} +\DeclareTextSymbol{\us}{\GRenc@name}{206} +\DeclareTextComposite{\s}{\GRenc@name}{u}{206} +\DeclareTextSymbol{\urg}{\GRenc@name}{207} +\DeclareTextComposite{\Gr}{\GRenc@name}{u}{207} +\DeclareTextSymbol{\ua}{\GRenc@name}{212} +\DeclareTextSymbol{\ura}{\GRenc@name}{213} +\DeclareTextComposite{\Ar}{\GRenc@name}{u}{213} +\DeclareTextSymbol{\usa}{\GRenc@name}{214} +\DeclareTextComposite{\As}{\GRenc@name}{u}{214} +\DeclareTextSymbol{\usg}{\GRenc@name}{215} +\DeclareTextComposite{\Gs}{\GRenc@name}{u}{215} +\DeclareTextSymbol{\uc}{\GRenc@name}{220} +\DeclareTextSymbol{\urc}{\GRenc@name}{221} +\DeclareTextComposite{\Cr}{\GRenc@name}{u}{221} +\DeclareTextSymbol{\usc}{\GRenc@name}{222} +\DeclareTextComposite{\Cs}{\GRenc@name}{u}{222} +\DeclareTextSymbol{\ud}{\GRenc@name}{244} +\DeclareTextSymbol{\udg}{\GRenc@name}{245} +\DeclareTextComposite{\Gd}{\GRenc@name}{u}{245} +\DeclareTextSymbol{\uda}{\GRenc@name}{246} +\DeclareTextComposite{\Ad}{\GRenc@name}{u}{246} +\DeclareTextSymbol{\udc}{\GRenc@name}{247} +\DeclareTextComposite{\Cd}{\GRenc@name}{u}{247} +\DeclareTextSymbol{\eg}{\GRenc@name}{224} +\DeclareTextSymbol{\er}{\GRenc@name}{225} +\DeclareTextComposite{\r}{\GRenc@name}{e}{225} +\DeclareTextSymbol{\es}{\GRenc@name}{226} +\DeclareTextComposite{\s}{\GRenc@name}{e}{226} +\DeclareTextSymbol{\erg}{\GRenc@name}{227} +\DeclareTextComposite{\Gr}{\GRenc@name}{e}{227} +\DeclareTextSymbol{\ea}{\GRenc@name}{232} +\DeclareTextSymbol{\era}{\GRenc@name}{233} +\DeclareTextComposite{\Ar}{\GRenc@name}{e}{233} +\DeclareTextSymbol{\esa}{\GRenc@name}{234} +\DeclareTextComposite{\As}{\GRenc@name}{e}{234} +\DeclareTextSymbol{\esg}{\GRenc@name}{235} +\DeclareTextComposite{\Gs}{\GRenc@name}{e}{235} +\DeclareTextSymbol{\oR}{\GRenc@name}{229} +\DeclareTextComposite{\r}{\GRenc@name}{o}{229} +\DeclareTextSymbol{\oG}{\GRenc@name}{228} +\DeclareTextSymbol{\os}{\GRenc@name}{230} +\DeclareTextComposite{\s}{\GRenc@name}{o}{230} +\DeclareTextSymbol{\org}{\GRenc@name}{231} +\DeclareTextComposite{\Gr}{\GRenc@name}{o}{231} +\DeclareTextSymbol{\oa}{\GRenc@name}{236} +\DeclareTextSymbol{\ora}{\GRenc@name}{237} +\DeclareTextComposite{\Ar}{\GRenc@name}{o}{237} +\DeclareTextSymbol{\osa}{\GRenc@name}{238} +\DeclareTextComposite{\As}{\GRenc@name}{o}{238} +\DeclareTextSymbol{\osg}{\GRenc@name}{239} +\DeclareTextComposite{\Gs}{\GRenc@name}{o}{239} +\DeclareTextSymbol{\rr}{\GRenc@name}{251} +\DeclareTextComposite{\r}{\GRenc@name}{r}{251} +\DeclareTextSymbol{\rs}{\GRenc@name}{252} +\DeclareTextComposite{\s}{\GRenc@name}{r}{252} +\DeclareTextSymbol{\Id}{\GRenc@name}{219} +\DeclareTextSymbol{\Ud}{\GRenc@name}{223} +\DeclareTextComposite{\"}{\GRenc@name}{U}{223} \fi -% % \end{macrocode} % % \subsection{Text philological symbols and macros} -% Next come some short macros for inserting special symbols that philologists -% use quite often in Greek. +% +% Next come some short macros for inserting special symbols that +% philologists use quite often in Greek. %\begin{macro}{\h} -% Macro |\h| is used to insert a Latin ``h'' while typesetting in Greek. +% Macro |\h| is used to insert a Latin “h” while typesetting in Greek. %\begin{macro}{\q} -% Macro |\q| is used to insert a Latin ``q'' while typesetting in Greek. +% Macro |\q| is used to insert a Latin “q” while typesetting in Greek. %\begin{macro}{\yod} %\begin{macro}{\iod} -% Macros |\yod| and |\iod| are used to insert a -% Latin ``j'' while typesetting in Greek; the control sequence |\jod| was avoided -% in order to reduce the possibility of typing |\jot| which is a \TeX\ internal +% Macros |\yod| and |\iod| are used to insert a Latin “j” while +% typesetting in Greek; the control sequence |\jod| was avoided in order +% to reduce the possibility of typing |\jot| which is a \TeX\ internal % dimension. % \begin{macrocode} -\DeclareTextCommand{\h}{\GRencoding@name}% +\DeclareTextCommand{\h}{\GRenc@name}% {{\fontencoding{OT1}\selectfont h}} -\DeclareTextCommand{\q}{\GRencoding@name}% +\DeclareTextCommand{\q}{\GRenc@name}% {{\fontencoding{OT1}\selectfont q}} -\DeclareTextCommand{\yod}{\GRencoding@name}% +\DeclareTextCommand{\yod}{\GRenc@name}% {{\fontencoding{OT1}\selectfont j}}% \let\iod\yod @@ -1903,11 +2019,12 @@ Type X <return> to exit.}% %\begin {macro}{\digamma} %\begin {macro}{\Digamma} % At the same time it was believed that for inserting lower and upper -% case ``digamma'' it was preferable to use short macros and to avoid +% case “digamma” it was preferable to use short macros and to avoid % the dilemma between the |\ddigamma| and the |\digamma| macros, the % former being the one defined in the |greek| option to \babel, the % latter being a standard mathematical symbol; initially I believed -% that philologists do not use mathematical symbols so we made |\digamma|% an alias for |\f|; afterwards I found out that mathematicians, +% that philologists do not use mathematical symbols so we made |\digamma| +% an alias for |\f|; afterwards I found out that mathematicians, % physicists, engineers,~\dots\ use the \textsf{teubner.sty} package % and that the |\digamma| is a symbol already defined in package % \textsf{amssymb.sty}; therefore I made a conditional creation of @@ -1945,19 +2062,20 @@ Type X <return> to exit.}% %\begin{macro}{\lpar} %\begin{macro}{\rpar} %\begin{macro}{\frapar} -% Here we start a set of miscellaneous macros. We begin with some parentheses -% that should turn out in upright shape, even if the default font is the Lipsian -% one which is oblique; its parentheses are oblique as in all oblique fonts, -% therefore we need to quietly change fonts behind the scenes. The same is true -% with the question mark that, philologically speaking, represents an uncertain -% element, not the termination of a real question; it should therefore always -% come out between parentheses and in upright shape from a Latin font. While the +% Here we start a set of miscellaneous macros. We begin with some +% parentheses that should turn out in upright shape, even if the default +% font is the Lipsian one which is oblique; its parentheses are oblique +% as in all oblique fonts, therefore we need to quietly change fonts +% behind the scenes. The same is true with the question mark that, +% philologically speaking, represents an uncertain element, not the +% termination of a real question; it should therefore always come out +% between parentheses and in upright shape from a Latin font. While the % parenthesized question mark comes from the OT1 Latin upright font, the % parentheses obtained with |\lpar| and |\rpar| are taken from the metric % symbols font, as well as the parentheses used in the parenthesized text % processed with macro |\frapar|. % \begin{macrocode} -\DeclareRobustCommand\qmark{\hskip.16ex{\fontencoding{OT1}\upshape(?)}} +\DeclareRobustCommand\qmark{\hskip.16ex{\fontencoding{OT1}\normalshape(?)}} \DeclareRobustCommand\lpar{{\metricsfont(}} \DeclareRobustCommand\rpar{{\metricsfont)}} \DeclareRobustCommand\frapar[1]{\lpar#1\rpar} @@ -1969,9 +2087,9 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\ap} -% The apex/superscript macro |\ap| does not differ much from the plain standard -% \LaTeX\ macro |\textsuperscript|, the only difference being the italic -% correction that precedes |\textsuperscript|. +% The apex/superscript macro |\ap| does not differ much from the plain +% standard \LaTeX\ macro |\textsuperscript|, the only difference being +% the italic correction that precedes |\textsuperscript|. % \begin{macrocode} \DeclareRobustCommand{\ap}[1]{\/\textsuperscript{#1}} @@ -1982,10 +2100,10 @@ Type X <return> to exit.}% %\begin{macro}{\DOTS} %\begin{macro}{\Dashes} %\begin{macro}{\DASHES} -% Four macros are defined so as to insert a certain number of dots or dashes as -% specified in the optional command argument; |\Dots| and |\Dashes| fit the dots or -% the dashes pretty close together, while |\DOTS| and |\DASHES| fit them more -% loosely apart. +% Four macros are defined so as to insert a certain number of dots or +% dashes as specified in the optional command argument; |\Dots| and +% |\Dashes| fit the dots or the dashes pretty close together, while +% |\DOTS| and |\DASHES| fit them more loosely apart. % \begin{macrocode} \newcommand\Dots[1][1]{{\count255=#1\@whilenum\count255>\z@ \do{\kern.4ex\d{v}\kern.4ex\advance\count255\m@ne}}} @@ -2006,11 +2124,12 @@ Type X <return> to exit.}% %\begin{macro}{\;} %\begin{macro}{\?} %\begin{macro}{\MutPers} -% Greek text or poetry sometimes requires some stacked dots; here we prepared macros -% for two (|\:|), three (|\;|), and four (|\?|) stacked dots. Two stacked dots in a -% row indicate that the speaker of a drama or comedy has changed (\textit{mutatio -% personae}). For |\:| and |\;| it is necessary to preserve the mathematical -% meaning, while |\?| apparently does not have any previous use in standard \LaTeX. +% Greek text or poetry sometimes requires some stacked dots; here we +% prepared macros for two (|\:|), three (|\;|), and four (|\?|) stacked +% dots. Two stacked dots in a row indicate that the speaker of a drama +% or comedy has changed (\textit{mutatio personae}). For |\:| and |\;| +% it is necessary to preserve the mathematical meaning, while |\?| +% apparently does not have any previous use in standard \LaTeX. % The real macros are |\tw@dots|, |\thre@dots|, % and |\f@urdots|. % \begin{macrocode} @@ -2036,9 +2155,9 @@ Type X <return> to exit.}% % \MakeShortVerb{\|} %\begin{macro}{\dBar} %\begin{macro}{\tBar} -% Similarly Greek text and poetry require certain \emph{cesurae} indicated with -% vertical bars; we provided commands for one (\verb"\|"), two (|\dBar|), and -% three (|\tBar|) vertical bars. +% Similarly Greek text and poetry require certain \emph{cesurae} +% indicated with vertical bars; we provided commands for one (\verb"\|"), +% two (|\dBar|), and three (|\tBar|) vertical bars. % \begin{macrocode} \DeclareRobustCommand{\|}{\relax\ensuremath{\mskip2mu\vert}} \DeclareRobustCommand{\dBar}{\ensuremath{\vert\vert}} @@ -2054,11 +2173,12 @@ Type X <return> to exit.}% %\begin{macro}{\posthindspace} %\begin{macro}{\,} %\begin{macro}{\!} -% The following are mostly service macros for adjusting the spacing within macro -% definitions. Nevertheless they are available also to the typesetter, because -% sometimes certain glyph combinations require a little adjustment. Of course the -% typesetter will not use them at the very beginning, but only during proof -% revision, so as to introduce them only where really necessary. +% The following are mostly service macros for adjusting the spacing +% within macro definitions. Nevertheless they are available also to the +% typesetter, because sometimes certain glyph combinations require a +% little adjustment. Of course the typesetter will not use them at the +% very beginning, but only during draft revision, so as to introduce +% them only where really necessary. % \begin{macrocode} \def\negthinspace{\nobreak\hskip-0.07em} \def\posthinspace{\nobreak\hskip0.07em} @@ -2089,24 +2209,40 @@ Type X <return> to exit.}% %\begin{macro}{\ldel} % Philologists require a certain number of special parentheses in order to % enclose parts of text that are doubtful or that have been added although -% they are missing from the original manuscripts; even letter strings that have -% been modified under the assumption that the copyist made some error. +% they are missing from the original manuscripts; even letter strings that +% have been modified under the assumption that the copyist made some +% error. % Such enclosing marks include angle brackets, square brackets, upper part % of square brackets, lower part of square brackets. Such symbols may even -% appear doubled. Most of these glyphs have been designed anew, because they -% are missing or are inadequate if they are taken from the usual CM fonts (either -% text or math fonts). Brackets for example have been designed as to be higher -% and deeper than the font total height, so as not to interfere with Greek -% accents and to accomodate for at least one level of nesting (for example square -% brackets enclosing lower part of square brackets. The single glyphs may be used -% directly by the typesetter, but we think that the commands requiring some text are -% far more useful. |\Ladd| and its double version |\LLadd| enclose text that should -% be added for sure. -% |\ladd| and its double version |\lladd| enclose text that probably should be -% added. |\lesp| and its synonymous |\ldel| enclose text that should be deleted. -% |\mqi| surrounds some text with the lower part of open and closed square brackets. -% |\mqs| surrounds some text with the upper part of open and closed square brackets. +% appear doubled. Most of these glyphs have been designed anew, because +% they are missing or are inadequate if they are taken from the usual CM +% fonts (either text or math fonts). Brackets for example have been +% designed as to be higher and deeper than the font total height, so as +% not to interfere with Greek accents and to accomodate for at least one +% level of nesting (for example square brackets enclosing lower part of +% square brackets. The single glyphs may be used directly by the +% typesetter, but we think that the commands requiring some text are +% far more useful. |\Ladd| and its double version |\LLadd| enclose text +% that should be added for sure. |\ladd| and its double version |\lladd| +% enclose text that probably should be added. |\lesp| and its synonymous +% |\ldel| enclose text that should be deleted. |\mqi| surrounds some text +% with the lower part of open and closed square brackets. |\mqs| surrounds +% some text with the upper part of open and closed square brackets. % See \texttt{teubenr-doc.pdf} for samples of such commands. +% Command |\LLadd| has been modified since |teubner| previous version +% because it contained a spurios space; in addition it has been +% rewritten with the |\NewDocumentCommand| in \LaTeX\,3 language, so as +% to accept two optional kerning values so as to get the double square +% brackets closer to the enclosed text; it syntax is now +%\begin{sintassi} +%\cs{LLadd}\oarg{left kerning}\marg{text}\oarg{right kerning} +%\end{sintassi} +% Both kerning values are positive in order to get the square brackets +% closer to the text; this facility is especially useful with slanted +% text. In any case such kernings should be set only while reviewing the +% document draft. We suggest to use units of measure depending on the +% font body (|ex| or |em|) so that if the body is changed the corrections +% keep working properly. % \begin{macrocode} \DeclareRobustCommand{\lbrk}{{\metricsfont\posthindspace[\negthinspace}} \DeclareRobustCommand{\rbrk}{{\metricsfont]}} @@ -2118,9 +2254,12 @@ Type X <return> to exit.}% {#1\/}\rmqi}\let\mezzeq\mqi \DeclareRobustCommand\mqs[1]{\lmqs{#1\/}\rmqs} \DeclareRobustCommand{\Ladd}[1]{{\metricsfont<}{\!\!#1\/}% - {\metricsfont>}}% litterae certe addendae -\DeclareRobustCommand{\LLadd}[1]{{\metricsfont<\kern-.3ex<} - {\!\!#1\/}{\metricsfont>\kern-.3ex>}}% litterae certe addendae + {\metricsfont>}}% litterae certe addendae +\providecommand\LLadd{} +\RenewDocumentCommand{\LLadd}{O{0pt}m O{0pt}}{% + {\metricsfont<\kern-0.3ex<}{\kern-#1\relax#2\kern-#3}% + {\metricsfont>\kern-0.3ex>}% +}% litterae certe addendae \DeclareRobustCommand{\ladd}[1]{{\metricsfont\kern.15ex[\negthinspace}% {#1\/}{\metricsfont]\kern-.15ex}}% litterae addendae \DeclareRobustCommand{\lladd}[1]{{\metricsfont\kern.15ex[\kern-.3ex[% @@ -2151,21 +2290,23 @@ Type X <return> to exit.}% %\begin{macro}{\itclosedquotes} %\begin{macro}{\itoq} %\begin{macro}{\itcq} -% The following macros allow to set Italian\slash English high quotes even while -% typing in Greek; such quotes are standard in Italian and in English typesetting -% and their commands preserve the font family shape and series of the surrounding -% font. In French typography, as well in the typographic traditions of other -% countries, different quotes are used. In that case the typesetter must resort to a -% change of language, for example returning to German, inputting the German quotes, -% then turning back to Greek. He might as well define his own macros, or he might -% clone the following definitions and change them according to his country -% typographic traditions. If he decides to modify these definitions he should either -% rename this file or he should put his redefinitions in a private package to be -% input \emph{after} \texttt{teubner.sty}. -% \begin{macrocode} -\DeclareTextCommand{\itopenquotes}{\GRencoding@name}% +% The following macros allow to set Italian\slash English high quotes +% even while typing in Greek; such quotes are standard in Italian and +% in English typesetting and their commands preserve the font family +% shape and series of the surrounding font. In French typography, as +% well in the typographic traditions of othe countries, different quotes +% are used. In that case the typesetter must resort to a change of +% language, for example returning to German, inputting the German quotes, +% then turning back to Greek. He might as well define his own macros, or +% he might clone the following definitions and change them according to +% his country typographic traditions. If he decides to modify these +% definitions he should either rename this file or he should put his +% redefinitions in a private package to be input \emph{after} +% \texttt{teubner.sty}. +% \begin{macrocode} +\DeclareTextCommand{\itopenquotes}{\GRenc@name}% {{\fontencoding{OT1}\selectfont\char92}}% -\DeclareTextCommand{\itclosedquotes}{\GRencoding@name}% +\DeclareTextCommand{\itclosedquotes}{\GRenc@name}% {{\fontencoding{OT1}\selectfont\char34}}% \let\itoq\itopenquotes \let\itcq\itclosedquotes @@ -2185,16 +2326,17 @@ Type X <return> to exit.}% %\begin{macro}{\ENodq} %\begin{macro}{\ENcdq} %\begin{macro}{\ENdqtext} -% On the opposite the following German and English quotes are redesigned and -% included in the metric symbols font. Since this font is in one shape and one -% series, these quotes do not change as the outside font does, but remain fixed; the -% most useful commands are |\GEdqtext| for enclosing some text within German double -% quotes, |\GEqtext| for enclosing some text within German single quotes, and -% |\ENdqtext| for enclosing some text in English double quotes. Apparently -% while setting Greek poetry in stacked, possibly enumerated, verses, German double -% or single quotes are often used, since they cannot be misunderstood with Greek -% diacritical marks. Modern Greek double quotes apparently are not appreciated by -% philologists, at least outside Greece. +% On the opposite the following German and English quotes are redesigned +% and included in the metric symbols font. Since this font is in one +% shape and one series, these quotes do not change as the outside font +% does, but remain fixed; the most useful commands are |\GEdqtext| for +% enclosing some text within German double quotes, |\GEqtext| for +% enclosing some text within German single quotes, and |\ENdqtext| for +% enclosing some text in English double quotes. Apparently while setting +% Greek poetry in stacked, possibly enumerated, verses, German double +% or single quotes are often used, since they cannot be misunderstood +% with Greek diacritical marks. Modern Greek double quotes apparently +% are not appreciated by philologists, at least outside Greece. % \begin{macrocode} \newcommand\GEodq{\bgroup\futurelet\@tempA\GE@dq} \def\GE@dq{{\metricsfont\char18}\ifx\@tempA m\posthinspace\fi\egroup} @@ -2220,6 +2362,7 @@ Type X <return> to exit.}% %\end{macro} % % \subsection{Other philological symbols and macros} +% % \begin{macro}{\LitNil} % \begin{macro}{\litnil} % The next synonymous macros indicate the \emph{littera nihil}. @@ -2233,25 +2376,26 @@ Type X <return> to exit.}% %\begin{macro}{\sva} %\begin{macro}{\shva} %\begin{macro}{\shwa} -% The CB fonts include also the letter ``shwa'', the glyph that -% appears as a roman ``e'' rotated 180$^\circ$ around its center. Philologists -% need it even when writing Greek. In order to make it available also when the -% Latin encodings are in force, suitable definitions have been given so that the -% suitable CB font was changed behind the scenes without any intervention by the -% typesetter. With this version of |teubner.sty| a new definition is made up that -% uses the |\rotatebox| facility of the |graphicx| package; In a future revision of -% the CB fonts the |\schwa| slot shall be freed so that Greek glyphs only populate -% it, without extraneous presences. The |\schwa| glyph is made available also with -% the Latin encodings. -% \begin{macrocode} -%\DeclareTextSymbol{\sva}{\GRencoding@name}{26} -\DeclareTextCommand{\sva}{\GRencoding@name}{% +% The CB fonts include also the letter “shwa”, the glyph that +% appears as a roman “e” rotated 180$^\circ$ around its center. +% Philologists need it even when writing Greek. In order to make it +% available also when the Latin encodings are in force, suitable +% definitions have been given so that the suitable CB font was changed +% behind the scenes without any intervention by the typesetter. With +% this version of |teubner.sty| a new definition is made up that +% uses the |\rotatebox| facility of the |graphicx| package; In a future +% revision of the CB fonts the |\schwa| slot shall be freed so that Greek +% glyphs only populate it, without extraneous presences. The |\schwa| +% glyph is made available also with the Latin encodings. +% \begin{macrocode} +%\DeclareTextSymbol{\sva}{\GRenc@name}{26} +\DeclareTextCommand{\sva}{\GRenc@name}{% \rotatebox[origin=c]{180}{\def\@tempA{li}% \fontencoding{OT1}\ifx\f@shape\@tempA\fontshape{it}\fi\selectfont e}} \DeclareTextCommand\sva{OT1}{{\expandafter\fontencoding - \expandafter{\GRencoding@name}\selectfont\sva}} + \expandafter{\GRenc@name}\selectfont\sva}} \DeclareTextCommand\sva{T1}{{\expandafter\fontencoding - \expandafter{\GRencoding@name}\selectfont\sva}} + \expandafter{\GRenc@name}\selectfont\sva}} \let\shva\sva\let\shwa\sva % \end{macrocode} @@ -2260,13 +2404,15 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\skewstack} -% The |\skewstack| command stacks two arguments not one on top of the other, but the -% second argument is placed to the right and upwards relative to the first argument. -% The second argument is set in script font size. Although there are similarities -% with the |\textsuperscript| command, the exact placement of the second argument -% depends on the shape (height and depth) of both arguments. This command will be -% used for creating some philologist's symbols, but is readily available to the -% typesetter both for direct use and for writing macros defining new symbols. +% The |\skewstack| command stacks two arguments not one on top of the +% other, but the second argument is placed to the right and upwards +% relative to the first argument. +% The second argument is set in script font size. Although there are +% similarities with the |\textsuperscript| command, the exact placement +% of the second argument depends on the shape (height and depth) of both +% arguments. This command will be used for creating some philologist's +% symbols, but is readily available to the typesetter both for direct +% use and for writing macros defining new symbols. % \begin{macrocode} \DeclareRobustCommand\skewstack[2]{{% \edef\slant@{\strip@pt\fontdimen1\font}% @@ -2285,9 +2431,10 @@ Type X <return> to exit.}% %\begin{macro}{\gusv} %\begin{macro}{\qusv} %\begin{macro}{\qu} -% Matter of fact some common Latin stacked symbols are defined here in terms of -% |\skewstack|. As it may bee seen, the second argument (the first as well, but here -% there are no examples) may in turn contain other macros for composite symbols. +% Matter of fact some common Latin stacked symbols are defined here in +% terms of |\skewstack|. As it may bee seen, the second argument (the +% first as well, but here there are no examples) may in turn contain other +% macros for composite symbols. % \begin{macrocode} \DeclareRobustCommand\hv{{\fontencoding{OT1}\selectfont \skewstack{h}{v}}} @@ -2311,20 +2458,21 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\dz} -% Without using |\skewstack| other symbols may be defined; here |\dz| is just an -% example, where the kerning between `d' and `z' has been found by cut and try. With -% other glyphs may be different kerning is necessary. +% Without using |\skewstack| other symbols may be defined; here |\dz| +% is just an example, where the kerning between `d' and `z' has been +% found by cut and try. With other glyphs may be different kerning is +% necessary. % \begin{macrocode} \DeclareRobustCommand\dz{{\fontencoding{OT1}\selectfont d\kern-.33ex z}} % \end{macrocode} %\end{macro} % -% Now we come to another set of commands like the ones needed to mark the syneresis -% or the zeugma and other similar marks. +% Now we come to another set of commands like those needed to mark the +% syneresis or the zeugma and other similar marks. %\begin{macro}{\Utie} -% This first macro sets a ``smile'' symbol under a couple of letters. The glyph is -% fine but is good only for two adjacent letters, therefore +% This first macro sets a “smile” symbol under a couple of letters. +% The glyph is fine but is good only for two adjacent letters, therefore % it is necessary to have a stretchable symbol. % \begin{macrocode} \DeclareRobustCommand\Utie[1]{% @@ -2338,10 +2486,11 @@ Type X <return> to exit.}% % %\begin{macro}{\siner} %\begin{macro}{\siniz} -% This is why the |\siner| and |\siniz| synonymous commands have been defined; in -% place of or in addition to the ``smile'' symbol; they contain a stretchable -% filler |\upfill| that behaves almost as the stretchable horizontal brace that is -% used in the definition of the \LaTeX\ commands |\underbrace| or |\overbrace|. +% This is why the |\siner| and |\siniz| synonymous commands have been +% defined; in place of or in addition to the “smile” symbol; they contain +% a stretchable filler |\upfill| that behaves almost as the stretchable +% horizontal brace that is used in the definition of the \LaTeX\ commands +% |\underbrace| or |\overbrace|. % \begin{macrocode} \DeclareRobustCommand{\siner}[1]{% \mbox{\vtop{\ialign{##\crcr @@ -2355,8 +2504,8 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\upfill} -% The |\upfill| is defined as a leader, the same way as the corresponding \LaTeX\ -% stretchable horizontal brace. +% The |\upfill| is defined as a leader, the same way as the +% corresponding \LaTeX\ stretchable horizontal brace. % \begin{macrocode} \def\upfill{$\m@th \scriptstyle\setbox\z@\hbox{$\scriptstyle\bracelu$}% \kern.16ex\bracelu\ifPDF\kern-.15ex\fi @@ -2367,8 +2516,9 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\downfill} -% The |\downfill| arc is totally similar to the |\upfill| one, except for its -% terminating elements that change the shape of the arc from ``up'' to ``down''. +% The |\downfill| arc is totally similar to the |\upfill| one, except +% for its terminating elements that change the shape of the arc from +% “up” to “down”. % \begin{macrocode} \def\downfill{$\m@th\scriptstyle\setbox\z@\hbox{$\scriptstyle\braceld$}% \kern.16ex\braceld\ifPDF\kern-.15ex\fi @@ -2379,8 +2529,9 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\zeugma} -% Similarly |\zeugma| puts a stretchable arc over its argument; it must take into -% account the slant of the argument font so as to skew the placement of the arc. +% Similarly |\zeugma| puts a stretchable arc over its argument; it must +% take into account the slant of the argument font so as to skew the +% placement of the arc. % \begin{macrocode} \newcommand*\zeugma[1]{{\vbox{\setbox\z@\hbox{#1}\dimen@=\ht\z@ \edef\@slant{\strip@pt\fontdimen1\font}% @@ -2400,14 +2551,16 @@ Type X <return> to exit.}% % %\begin{macro}{\slzeugma} %\begin{macro}{\rszeugma} -% Although the shape of oblique zeugma arcs cannot be changed depending on the width -% and height of the zeugma argument, in certain circumstances the philologists want -% to use oblique zeugma marks. This is why we defined a ``sloping zeugma arc'' -% |\slzeugma|, and a ``rising zeugma arc'' |\rszeugma| that can be used with poor -% results, if such arcs are superimposed over the ``wrong'' letters. There is -% nothing automatic in the choice of the oblique arc and is totally on the -% typesetter responsibility to use the correct command. These slanted zeugma signs -% are possibly useful only for two letters since they are not stretchable. +% Although the shape of oblique zeugma arcs cannot be changed depending +% on the width and height of the zeugma argument, in certain +% circumstances the philologists want to use oblique zeugma marks. This +% is why we defined a “sloping zeugma arc” |\slzeugma|, and a “rising +% zeugma arc” |\rszeugma| that can be used with poor results, if such +% arcs are superimposed over the “wrong” letters. There is nothing +% automatic in the choice of the oblique arc and is totally on the +% typesetter responsibility to use the correct command. These slanted +% zeugma signs are possibly useful only for two letters since they are +% not stretchable. % \begin{macrocode} \newcommand*\slzeugma[1]{{\leavevmode \setbox\tw@\hbox{\metricsfont\char120}% @@ -2433,7 +2586,15 @@ Type X <return> to exit.}% % %\begin{macro}{\nexus} %\begin{macro}{\nesso} -% Originally I had two different macros for marking a \emph{nexus}; one made use of a ``up stretchable turtle bracket'', and the user used a leader of Latin circumflex signs. Both were unsatisfactory; the latter was really ugly, but I kept the macro name as a synonym for compatibility with the past. The good looking marker is obtained from a mathematical |\widehat| sign by stretching it to the width of the string the marcher should mark; the new macro |\nexus| (that replaces the stretchable turtle bracket) relies on the facilities offered by the |\resizebox| of the package |graphicx|. +% Originally I had two different macros for marking a \emph{nexus}; +% one made use of a “up stretchable turtle bracket”, and the user used +% a leader of Latin circumflex signs. Both were unsatisfactory; the +% latter was really ugly, but I kept the macro name as a synonym for +% compatibility with the past. The good looking marker is obtained +% from a mathematical |\widehat| sign by stretching it to the width +% of the string the marcher should mark; the new macro |\nexus| (that +% replaces the stretchable turtle bracket) relies on the facilities +% offered by the |\resizebox| of the package |graphicx|. % \begin{macrocode} \newcommand*{\nexus}[1]{{\setbox\tw@\hbox{#1\/}% \edef\slant@{\strip@pt\fontdimen1\font}% @@ -2456,16 +2617,17 @@ Type X <return> to exit.}% %\begin {macro}{\Coronis} %\begin {macro}{\paragr} % \begin {macro}{\dpar} -% While setting poetry it is necessary to mark the end of paragraphs, which do not -% necessarily coincide with the ends of stanzas. After the verse that concludes a -% logical paragraph philologists insert a mark called ``coronis'' (synonymous of -% paragraph, therefore the command |\paragr|) or a ``stronger'' mark called -% ``Coronis'', which differs from the common ``coronis'' because it bears an -% inverted semilunar sign on its left. Both marks are input by means of their -% respective commands |\paragr| (preferred to |\coronis|) or |\Coronis| inserted +% While setting poetry it is necessary to mark the end of paragraphs, +% which do not necessarily coincide with the ends of stanzas. After the +% verse that concludes a logical paragraph philologists insert a mark +% called “coronis” (synonymous of paragraph, therefore the command +% |\paragr|) or a “stronger” mark called “Coronis”, which differs from +% the common “coronis” because it bears an inverted semilunar sign on +% its left. Both marks are input by means of their respective commands +% |\paragr| (preferred to |\coronis|) or |\Coronis| inserted % \emph{at the beginning of the paragraph terminating verse}. -% The command |\dparagr| inserts a double coronis mark, which is sometimes required -% in place of the ordinary single mark. +% The command |\dparagr| inserts a double coronis mark, which is +% sometimes required in place of the ordinary single mark. % \begin{macrocode} \def\C@rule{\vrule\@height.45ex\@depth-.35ex\@width1.5em} \def\coronis@rule{\hbox to\z@{\hss\C@rule\hss}} @@ -2494,18 +2656,19 @@ Type X <return> to exit.}% %\begin {macro}{\dstar} %\begin {macro}{\tstar} %\begin {macro}{\responsio} -% The next group of commands are intended to insert special symbols in the -% philological text; just the command |\apici| requires an argument, a block of text -% that shall be enclosed within straight vertical apices, irrespective of the font -% slant. The command |\FinisCarmen| although very descriptive, is long to type, -% therefore a shorter alias |\FinCar| has been defined. |\apex| was the initial name -% given to the command, but on a second time it was changed to |\positio|, and the -% latter should always be used in place of the former. For what concerns |\star| -% which is a standard \LaTeX\ math command, the original definition is saved in the -% service macro |\m@thst@r| and the command is redefined so as to perform as it -% should both in text and in math mode. The symbol $\int$, on the contrary, was -% redefined so as not to mix math with text, even if its rendering resorts to -% mathematics. +% The next group of commands are intended to insert special symbols in +% the philological text; just the command |\apici| requires an argument, +% a block of text that shall be enclosed within straight vertical apices, +% irrespective of the font slant. The command |\FinisCarmen| although +% very descriptive, is long to type, therefore a shorter alias +% |\FinCar| has been defined. |\apex| was the initial name given to the +% command, but on a second time it was changed to |\positio|, and the +% latter should always be used in place of the former. For what concerns +% |\star| which is a standard \LaTeX\ math command, the original +% definition is saved in the service macro |\m@thst@r| and the command +% is redefined so as to perform as it should both in text and in math +% mode. The symbol $\int$, on the contrary, was redefined so as not to +% mix math with text, even if its rendering resorts to mathematics. % \begin{macrocode} \DeclareRobustCommand*\sinafia{{\metricsfont s}} \DeclareRobustCommand*{\crux}{{\metricsfont\char'171}} @@ -2519,9 +2682,9 @@ Type X <return> to exit.}% \let\positio\apex \DeclareRobustCommand*{\Int}{\ensuremath{\int}} \let\m@thst@r\star -\DeclareRobustCommand*{\star}{\textormath{{{\upshape *}}}{\m@thst@r}} -\DeclareRobustCommand*{\dstar}{{\upshape **}} -\DeclareRobustCommand*{\tstar}{{\upshape ***}} +\DeclareRobustCommand*{\star}{\textormath{{{\normalshape *}}}{\m@thst@r}} +\DeclareRobustCommand*{\dstar}{{\normalshape **}} +\DeclareRobustCommand*{\tstar}{{\normalshape ***}} \DeclareRobustCommand*{\responsio}{{\boldmath\ensuremath{\sim}}} % \end{macrocode} @@ -2537,9 +2700,9 @@ Type X <return> to exit.}% %\end{macro} % %\begin{macro}{\thorn} -%\begin{macro}{\Thorn} |\thorn| and |\Thorn| are the exact equivalents of |\th| -% and |\Th| that are defined only for the T1 encoding. Therefore such encoding is -% selected in an implicit way. +%\begin{macro}{\Thorn} |\thorn| and |\Thorn| are the exact equivalents +% of |\th| and |\Th| that are defined only for the T1 encoding. Therefore +% such encoding is selected in an implicit way. % \begin{macrocode} \DeclareRobustCommand{\thorn}{{\fontencoding{T1}\selectfont\th}} \DeclareRobustCommand{\Thorn}{{\fontencoding{T1}\selectfont\TH}} @@ -2555,10 +2718,10 @@ Type X <return> to exit.}% %\begin {macro}{\stater} %\begin {macro}{\denarius} %\begin {macro}{\etos} -% This set of symbols, taken from the metrics symbol font (which by this time is -% evident does not contain only metrics symbols) represents the unit symbols of some -% coins of ancient Greece, as they were found on many ``ostraka'' in several -% archeological sites. +% This set of symbols, taken from the metrics symbol font (which by this +% time is evident does not contain only metrics symbols) represents the +% unit symbols of some coins of ancient Greece, as they were found on +% many “ostraka” in several archeological sites. % \begin{macrocode} \DeclareRobustCommand{\dracma}{{\metricsfont D}} \DeclareRobustCommand{\hemiobelion}{{\metricsfont A}} @@ -2580,18 +2743,19 @@ Type X <return> to exit.}% %\begin{macro}{\dcutbar} %\begin{macro}{\bcutbar} %\begin{macro}{\gcutbar} -% The following set of macros are all connected with the principal macro |\cut|, -% which should position a horizontal tie or bar across a certain number of latin -% letters, specifically `d', `b', and `g'; due to their different shapes, such bars -% are of different length and located at different heights; if they are in italics -% the bar position must change again. Therefore even if the user command |\cut| is -% the same for all these letters, its action must change depending on different -% circumstances. -% It merely checks its argument (it must be \emph{one} letter and unpredictable -% results are obtained if more that one token is passed as an argument to |\cut|) -% and selects the proper bar. The specific bar commands |\dcutbar|, |\bcutbar|, and -% |\gcutbar|, are defined in such a way as to cope only with the their initial -% letter. +% The following set of macros are all connected with the principal +% macro |\cut|, which should position a horizontal tie or bar across +% a certain number of latin letters, specifically `d', `b', and `g'; +% due to their different shapes, such bars are of different length and +% located at different heights; if they are in italics the bar position +% must change again. Therefore even if the user command |\cut| is +% the same for all these letters, its action must change depending on +% different circumstances. +% It merely checks its argument (it must be \emph{one} letter and +% unpredictable results are obtained if more that one token is passed +% as an argument to |\cut|) and selects the proper bar. The specific +% bar commands |\dcutbar|, |\bcutbar|, and |\gcutbar|, are defined in +% such a way as to cope only with the their initial letter. % \begin{macrocode} \DeclareRobustCommand{\cut}[1]{% \ifx#1d\dcutbar\else @@ -2636,9 +2800,10 @@ Type X <return> to exit.}% %\begin{macro}{\splus} %\begin{macro}{\stimes} %\begin{macro}{\kclick} -% The next three macros are used in glottology; the first two ones are used to -% mark special pronunciations of the sibilant, while the last one is used to mark -% a special pronunciation of the guttural that produces a ``click''. +% The next three macros are used in glottology; the first two ones are +% used to mark special pronunciations of the sibilant, while the last +% one is used to mark a special pronunciation of the guttural that +% produces a “click”. %\begin{macrocode} \newcommand\splus{\leavevmode{% \edef\slant@{\strip@pt\fontdimen1\font}% @@ -2663,7 +2828,7 @@ Type X <return> to exit.}% \newcommand\kclick{\leavevmode{% \edef\slant@{\strip@pt\fontdimen1\font}% \setbox\z@\hbox{k}% - \setbox\tw@\hbox{\fontencoding\GRencoding@name\selectfont\s{v}}% + \setbox\tw@\hbox{\fontencoding\GRenc@name\selectfont\s{v}}% \dimen@\wd\z@ \ifdim\slant@\p@=\z@ \advance\dimen@-.1\wd\z@\else\advance\dimen@\wd\tw@ @@ -2679,26 +2844,27 @@ Type X <return> to exit.}% % \subsection{Poetry environments and macros} %\begin {macro}{\verso} %\begin{environment}{versi} -% Here we start with verse environments; we already explained that we defined three -% new verse environments that typeset poetry in ``in-line'' verses, -% ``numbered by five'' verses, and ``numbered by five and subnumbered'' verses. -% For the environment |versi| we first need a counter and a little macro for -% generating the short bar that has to receive the verse number as a ``limits'' -% superscript. +% Here we start with verse environments; we already explained that we +% defined three new verse environments that typeset poetry in “in-line” +% verses, “numbered by five” verses, and “numbered by five and +% subnumbered” verses. For the environment |versi| we first need a +% counter and a little macro for generating the short bar that has to +% receive the verse number as a “limits” superscript. % \begin{macrocode} \newcounter{verso}\setcounter{verso}{0} \newcommand{\smallvert}{\vrule\@height.6ex\@depth.4ex} % \end{macrocode} -% Next we define the macro |\verso| that sets the small bar with the verse number on -% top. Since the initial numbering might be different from~1, |\verso| accepts an -% optional argument, which is intended to be the initial counter value. Since -% |\verso| steps up the counter a different action must be taken if the optional -% argument is present; in order to be able to reference such verse by means of the -% |\label|--|\ref| cross reference mechanism, this stepping up must be done by means -% of |\refstepcounter|; therefore we have to leave |\refstepcounter| outside the -% conditional code, and step down the counter by one unit only in case the initial -% value is specified. +% Next we define the macro |\verso| that sets the small bar with the +% verse number on top. Since the initial numbering might be different +% from~1, |\verso| accepts an optional argument, which is intended to +% be the initial counter value. Since |\verso| steps up the counter a +% different action must be taken if the optional argument is present; +% in order to be able to reference such verse by means of the +% |\label|--|\ref| cross reference mechanism, this stepping up must +% be done by means of |\refstepcounter|; therefore we have to leave +% |\refstepcounter| outside the conditional code, and step down the +% counter by one unit only in case the initial value is specified. % \begin{macrocode} \DeclareRobustCommand\verso[1][]{% \def\@tempA{#1}\ifx\@tempA\empty @@ -2711,13 +2877,14 @@ Type X <return> to exit.}% \space\ignorespaces} % \end{macrocode} -% Now that the verse separation macro is ready we can define the environment; the -% required opening statement argument represents a short text whose width is taken -% as a measure for indentation, so that verses are typeset with a left margin that -% leaves out this short text. Substantially this environment is a \texttt{list} one, -% and the left margin variable width is totally similar to the one used in -% |thebibiography| environment. Also the |\makelabel| command has been modified -% accordingly. +% Now that the verse separation macro is ready we can define the +% environment; the required opening statement argument represents a +% short text whose width is taken as a measure for indentation, so that +% verses are typeset with a left margin that leaves out this short text. +% Substantially this environment is a \texttt{list} one, and the left +% margin variable width is totally similar to the one used in +% |thebibiography| environment. Also the |\makelabel| command has been +% modified accordingly. % \begin{macrocode} \newenvironment{versi}[1]{% \def\makelabel##1{##1} @@ -2734,22 +2901,24 @@ Type X <return> to exit.}% %\end{macro} % %\begin{environment}{Versi} -% The second environment |Versi| accepts an optional starting number in the opening, -% statement, whose default value is~1: verses are composed as in the standard -% \LaTeX\ |verse| environment (with one minor difference) except they are numbered -% in the left margin with a progression of five; only verse numbers that are integer -% multiples of five are displayed. The minor difference is that stanzas cannot be -% marked with a blank line in the input |.tex| file, as it is customary with -% the standard environment, but if a visual mark is desired, such as extra vertical -% space, it is necessary to resort to the optional spacing parameter that can be -% specified to the |\\| command. This environment uses the same verse counting -% counter, defined for use with the |versi| environment. +% The second environment |Versi| accepts an optional starting number in +% the opening, statement, whose default value is~1: verses are composed +% as in the standard \LaTeX\ |verse| environment (with one minor +% difference) except they are numbered in the left margin with a +% progression of five; only verse numbers that are integer multiples +% of five are displayed. The minor difference is that stanzas cannot be +% marked with a blank line in the input |.tex| file, as it is customary +% with the standard environment, but if a visual mark is desired, such +% as extra vertical space, it is necessary to resort to the optional +% spacing parameter that can be specified to the |\\| command. This +% environment uses the same verse counting counter, defined for use +% with the |versi| environment. % %\begin{macro}{\BreakVersotrue} %\begin{macro}{\BreakVersofalse} -% For specific purposes it is necessary to have a boolean variable for allowing or -% prohibiting verses to split up at the end of line; the default is not -% to split. +% For specific purposes it is necessary to have a boolean variable for +% allowing or prohibiting verses to split up at the end of line; the +% default is not to split. % \begin{macrocode} \newif\ifBreakVersi \BreakVersifalse @@ -2758,10 +2927,11 @@ Type X <return> to exit.}% % \end{macrocode} %\end{macro} %\end{macro} -% An internal macro |\writ@verso| does not actually write out the complete, possibly -% numbered verse, but provides for checking that the verse counter contains a -% multiple of~5, and to write it out using old stile numbers; in case the number is -% not an integer multiple of~5 the number is written out as the |\empty| macro. +% An internal macro |\writ@verso| does not actually write out the +% complete, possibly numbered verse, but provides for checking that +% the verse counter contains a multiple of~5, and to write it out using +% old stile numbers; in case the number is not an integer multiple of~5 +% the number is written out as the |\empty| macro. % \begin{macrocode} \def\writ@verso{% \count255=\value{verso}\divide\count255by5\relax @@ -2774,11 +2944,12 @@ Type X <return> to exit.}% \empty \fi}% % \end{macrocode} -% Since the |\\| command should provide the same functionality as the regular -% \LaTeX\ command, while in this environment it should provide other -% functionalities, such as triggering the display of the verse number. It is -% necessary to define an intermediate command |\v@rscr|, that examines the possible -% optional arguments, such as the optional star or the brackets enclosing vertical +% Since the |\\| command should provide the same functionality as the +% regular \LaTeX\ command, while in this environment it should provide +% other functionalities, such as triggering the display of the verse +% number. It is necessary to define an intermediate command |\v@rscr|, +% that examines the possible optional arguments, such as the optional +% star or the brackets enclosing vertical % spacing % \begin{macrocode} \def\acapo{\@ifstar{\v@rscr{\@M}}{\v@rscr{\z@}}}% @@ -2786,30 +2957,34 @@ Type X <return> to exit.}% \def\v@rscr##1{\@ifnextchar[{\wr@teverse{##1}}% {\wr@teverse{##1}[\z@]}}% % \end{macrocode} -% Finally the |\wr@teverse| macro does the actual typesetting of the verse. Notice -% that the environment opening statement and every succeeding previous verse starts -% an horizontal box where the contents of the current verse is stored. Therefore the -% first thing to do is to close the box with the |\egroup| command, then a line of -% text is output that contains a possibly empty box or the verse number and the -% command for stepping up the verse counter, followed by the verse box number~0 and -% an end of paragraph; in this way the |\\| operates always in vertical mode, -% contrary to what happens in the |verse| standard \LaTeX\ environment. Even in this -% environment the actual typesetting is done within a |list| environment, whose -% parameters are set differently from what they are in the |verse| environment. -% Notice in any case that the command |\wr@teverse| reopens the~0 box, so on the -% last verse, upon closing the environment, it is necessary to remember to close -% such box, whose contents is irrelevant and can be thrown away. -% -% I have experienced some problems in typesetting verses in two-column format; the -% column width might be too short for setting up verses even if verses are not that -% long, because in the left margin there must be room for the verse numbering; for -% homogeneity the spacing must conform also with the following environment -% \texttt{VERSI} that has a secondary verse numbering, therefore it can't be too -% small. The result is that there might be a test for controlling the two-column -% format, but I think that it is more useful for the typesetter to be able to switch +% Finally the |\wr@teverse| macro does the actual typesetting of the +% verse. Notice that the environment opening statement and every +% succeeding previous verse starts an horizontal box where the contents +% of the current verse is stored. Therefore the first thing to do is to +% close the box with the |\egroup| command, then a line of text is output +% that contains a possibly empty box or the verse number and the command +% for stepping up the verse counter, followed by the verse box number~0 +% and an end of paragraph; in this way the |\\| operates always in +% vertical mode, contrary to what happens in the |verse| standard +% \LaTeX\ environment. Even in this environment the actual typesetting +% is done within a |list| environment, whose parameters are set +% differently from what they are in the |verse| environment. +% Notice in any case that the command |\wr@teverse| reopens the~0 box, +% so on the last verse, upon closing the environment, it is necessary +% to remember to close such box, whose contents is irrelevant and can +% be thrown away. +% +% I have experienced some problems in typesetting verses in two-column +% format; the column width might be too short for setting up verses even +% if verses are not that long, because in the left margin there must be +% room for the verse numbering; for homogeneity the spacing must conform +% also with the following environment \texttt{VERSI} that has a secondary +% verse numbering, therefore it can't be too small. The result is that +% there might be a test for controlling the two-column format, but I +% think that it is more useful for the typesetter to be able to switch % on and off the possibility of breaking long verses on more lines. -% On two-column format in any case it is better to leave the right margin to -% coincide with the column right margin. +% On two-column format in any case it is better to leave the right +% margin to coincide with the column right margin. % \begin{macrocode} \def\wr@teverse##1[##2]{\egroup \makebox[3em][r]{% @@ -2840,9 +3015,10 @@ Type X <return> to exit.}% \item\leavevmode\setbox\z@\hbox\bgroup\ignorespaces }{% % \end{macrocode} -% Upon closing it is necessary to activate the writing out of the last verse that is -% still in the~0 box, but since this box is immediately reopened, it is necessary to -% close it again before exiting the environment. +% Upon closing it is necessary to activate the writing out of the last +% verse that is still in the~0 box, but since this box is immediately +% reopened, it is necessary to close it again before exiting the +% environment. % \begin{macrocode} \\% \egroup @@ -2853,31 +3029,34 @@ Type X <return> to exit.}% % \end{macrocode} %\end{environment} % -%\begin{environment}{VERSI} The third environment |VERSI| set verses in the -% traditional way, but numbers them with two different enumerations; the principal -% one is by multiples of five, while the secondary one counts by units, and may be -% turned on and off, or reset at will. We therefore need another counter for the -% secondary enumeration and commands for turning it on and off and for resetting the -% counter. We need also a new length and a new boolean variable in order to manage -% the secondary enumeration. -% The new length represents an indentation of those verses that do no have the -% secondary enumeration, while secondary enumerated verses are not indented. For -% \texttt{VERSI} there is the same possibility of turning on and off the possibility -% of breaking verses at the end of line as it happens for the environment +%\begin{environment}{VERSI} The third environment |VERSI| set verses in +% the traditional way, but numbers them with two different enumerations; +% the principal one is by multiples of five, while the secondary one +% counts by units, and may be turned on and off, or reset at will. We +% therefore need another counter for the secondary enumeration and +% commands for turning it on and off and for resetting the counter. +% We need also a new length and a new boolean variable in order to +% manage the secondary enumeration. +% The new length represents an indentation of those verses that do no +% have the secondary enumeration, while secondary enumerated verses are +% not indented. For \texttt{VERSI} there is the same possibility of +% turning on and off the possibility of breaking verses at the end of +% line as it happens for the environment % \texttt{Versi}. % \begin {macro}{\SubVerso} % \begin {macro}{\NoSubVerso} -% Macro |\NoSubVerso| turns off the secondary enumeration; macro |\SubVerso| turns -% on the secondary enumeration, but it accepts an optional argument for resetting -% the secondary counter; the default value is~0; if no optional argument is -% specified, and therefore if the optional argument has its default value~0, no -% resetting is performed and the enumeration keeps going from the last contents of -% the secondary counter; if the first use of |\SubVerso| does not contain the -% optional argument, the secondary enumeration keeps going from the old contents of -% the secondary counter which is unpredictable, depending upon the previous -% occurrences of the environment |VERSI|. The typesetter, therefore, must remember -% to specify the optional argument to |\SubVerso| the first time he uses it in this -% environment. +% Macro |\NoSubVerso| turns off the secondary enumeration; macro +% |\SubVerso| turns on the secondary enumeration, but it accepts an +% optional argument for resetting the secondary counter; the default +% value is~0; if no optional argument is specified, and therefore if +% the optional argument has its default value~0, no resetting is +% performed and the enumeration keeps going from the last contents +% of the secondary counter; if the first use of |\SubVerso| does not +% contain the optional argument, the secondary enumeration keeps going +% from the old contents of the secondary counter which is unpredictable, +% depending upon the previous occurrences of the environment |VERSI|. +% The typesetter, therefore, must remember to specify the optional +% argument to |\SubVerso| the first time he uses it in this environment. % \begin{macrocode} \newcounter{subverso} \setcounter{subverso}{0} \newif\ifSubVerso @@ -2894,16 +3073,18 @@ Type X <return> to exit.}% % \end{macrocode} %\end{macro} %\end{macro} -% The opening environment statement accepts an optional argument (default equals~1) -% which represents the primary enumeration starting number: +% The opening environment statement accepts an optional argument +% (default equals~1) which represents the primary enumeration +% starting number: % \begin{macrocode} \newenvironment{VERSI}[1][1]{% \setcounter{verso}{#1}% % \end{macrocode} -% We need two macros |\writ@verso| and |\writ@subverso|, that typeset the primary -% and secondary enumeration; the first one is similar to the one used in the |Versi| -% environment, while the second one has no special features except the conditional -% construct needed to check if the secondary enumeration has to be printed out. +% We need two macros |\writ@verso| and |\writ@subverso|, that typeset +% the primary and secondary enumeration; the first one is similar to +% the one used in the |Versi| environment, while the second one has no +% special features except the conditional construct needed to check +% if the secondary enumeration has to be printed out. % \begin{macrocode} \def\writ@verso{% \count255=\value{verso}\divide\count255by5\relax @@ -2921,12 +3102,13 @@ Type X <return> to exit.}% \expandafter{\the\c@subverso}}% \fi}% % \end{macrocode} -% Similarly to the previous environment, the |\\| command must be redefined -% so as to perform more or less as the standard one, while doing all the necessary -% actions needed in this environment. It must check the presence of the optional -% star and of the optional vertical skip and it has to pass control to a service -% macro |\v@rscr| that does the actual job; actually it passes control to a third -% macro |\writ@verse| that effectively outputs the current verse. +% Similarly to the previous environment, the |\\| command must be +% redefined so as to perform more or less as the standard one, while +% doing all the necessary actions needed in this environment. It must +% check the presence of the optional star and of the optional vertical +% skip and it has to pass control to a service macro |\v@rscr| that +% does the actual job; actually it passes control to a third macro +% |\writ@verse| that effectively outputs the current verse. % \begin{macrocode} \def\\% {\@ifstar{\v@rscr{\@M}}{\v@rscr{\z@}}}% @@ -2947,8 +3129,8 @@ Type X <return> to exit.}% \penalty##1\vskip##2\relax \setbox\z@\hbox\bgroup\ignorespaces}% % \end{macrocode} -% For the remaining part, the environment is a normal |list| environment with -% specific initial parameters. +% For the remaining part, the environment is a normal |list| environment +% with specific initial parameters. % \begin{macrocode} \list{}{\parsep\z@\itemsep\z@ \if@twocolumn @@ -2966,9 +3148,10 @@ Type X <return> to exit.}% \item\leavevmode\setbox\z@\hbox\bgroup\ignorespaces }{% % \end{macrocode} -% The closing statement must output the last verse, which is still contained in -% box~0; since box~0 is automatically reopened, it must be closed again and its -% contents, of no significance now, can be lost upon closing the environment group. +% The closing statement must output the last verse, which is still +% contained in box~0; since box~0 is automatically reopened, it must +% be closed again and its contents, of no significance now, can be lost +% upon closing the environment group. % \begin{macrocode} \\% \egroup\endlist} @@ -2978,6 +3161,7 @@ Type X <return> to exit.}% %\end{environment} % % \subsection{Metrics symbols, macros and environments} +% % Now we start defining many macros concerned with metrics; the metric % symbol font has been developed mainly for this purpose. We start % defining some macros for inputting specific symbols. @@ -3063,7 +3247,7 @@ Type X <return> to exit.}% \DeclareRobustCommand\coronainv{{\metricsfont\char21}} \DeclareRobustCommand\catal{{\metricsfont g}} \DeclareRobustCommand\ipercatal{{\metricsfont h}} -\DeclareRobustCommand\hiatus{\textsuperscript{\upshape H}} +\DeclareRobustCommand\hiatus{\textsuperscript{\normalshape H}} \DeclareRobustCommand\Hiatus{\makebox[\z@]{\hiatus}} \DeclareRobustCommand\X{{\metricsfont X}} \let\anceps\X @@ -3252,7 +3436,7 @@ $\displaystyle\left.% %\begin{macro}{\GTRON} %\begin{macro}{\TROF} %\begin{macro}{\GTROF} -%\begin{macro}{\treceon} +%\begin{macro}{\traceon} %\begin{macro}{\traceoff} % Here there are some macros for turning on and off the tracing % facilities of \TeX, that turn out to be useful while debugging; @@ -3306,7 +3490,7 @@ $\displaystyle\left.% % package defines a couple of macros for transforming explicit % Arabic numerals or counter contents as Milesian numerals. Since % this package offers more possibilities in the choice of those -% ``non alphabetic'' characters used in the Milesian notation, +% “non alphabetic” characters used in the Milesian notation, % such macros have to be redefined. On the occasion we changed % some little internal details so as to make such macros a little % faster and more robust. @@ -3319,10 +3503,10 @@ $\displaystyle\left.% % ones, resort to robust internal macros if the |greek.ldf| language % description style is active; they are renamed versions of the original % macros that are perfect for modern Greek usage; therefore we simply let -% the glyph placeholders for the vales 6, 90, and 900, originally indicated -% with the place holders |\textstigma| and |\textkoppa|, (together with -% their capital glyph counterparts) the the place holders for -% |\textdigamma| and |\textqoppa|; with the value~6, we decided to use +% the glyph placeholders for the vales 6, 90, and 900, originally +% indicated with the place holders |\textstigma| and |\textkoppa|, +% (together with their capital glyph counterparts) the the place holders +% for |\textdigamma| and |\textqoppa|; with the value~6, we decided to use % either the stigma or the digamma sign by using the usual asterisk % added to the macro names; the \LaTeX\,3 language greatly simplifies % this task. @@ -3375,6 +3559,7 @@ $\displaystyle\left.% %\end{macro} % %\subsection{Attic numerals} +% % It's true that Apostolos Siropoulos wrote also the |athnum.sty| % extension package in order to typeset integer numbers with the % Athenian or Attic notation; this representation of strictly @@ -3415,10 +3600,10 @@ $\displaystyle\left.% % in all sizes, series and shapes; therefore the definitions % must be subject to the LGR encoding: % \begin{macrocode} -\DeclareTextSymbol{\Vmiria}{\GRencoding@name}{5} -\DeclareTextSymbol{\Vkilo}{\GRencoding@name}{4} -\DeclareTextSymbol{\Vetto}{\GRencoding@name}{3} -\DeclareTextSymbol{\Vdeka}{\GRencoding@name}{2} +\DeclareTextSymbol{\Vmiria}{\GRenc@name}{5} +\DeclareTextSymbol{\Vkilo}{\GRenc@name}{4} +\DeclareTextSymbol{\Vetto}{\GRenc@name}{3} +\DeclareTextSymbol{\Vdeka}{\GRenc@name}{2} % \end{macrocode} % The we need a command to issue a warning message if the number % to be transformed is out of range: @@ -3504,7 +3689,7 @@ Illegal value (\number#1) for \string\ActicNumeral\space}} %\section{Accessing the CBgreek fonts when the TX fonts are selected} % During the year 2010 this package \textsf{teubner.sty} was upgraded % in order to allow using the CBgreek fonts even when other Latin -% fonts, different from the ``standard'' CM and LM ones are selected +% fonts, different from the “standard” CM and LM ones are selected % for typesetting text with the Latin script. % At the same time Antonis Tsolomitis uploaded a new package in order @@ -3534,7 +3719,7 @@ Illegal value (\number#1) for \string\ActicNumeral\space}} % We therefore avoid this clash by creating a \textsf{teubnertx.sty} % file. This extension defines the families and shapes available with % the familiar font definition files, but the information gets input by -% \textsf{teubner.sty} at the ``begin document'' time, without resorting +% \textsf{teubner.sty} at the “begin document” time, without resorting % to any |.fd| file. Maybe more information is loaded than is strictly % necessary, but it is better to do this way than to clash with other % packages. |