diff options
Diffstat (limited to 'Master/texmf-dist/source/generic/babel/greek.dtx')
-rw-r--r-- | Master/texmf-dist/source/generic/babel/greek.dtx | 864 |
1 files changed, 0 insertions, 864 deletions
diff --git a/Master/texmf-dist/source/generic/babel/greek.dtx b/Master/texmf-dist/source/generic/babel/greek.dtx deleted file mode 100644 index 0e878bf22d4..00000000000 --- a/Master/texmf-dist/source/generic/babel/greek.dtx +++ /dev/null @@ -1,864 +0,0 @@ -% \iffalse meta-comment -% -% Copyright 1989-2008 Johannes L. Braams and any individual authors -% listed elsewhere in this file. All rights reserved. -% -% This file is part of the Babel system. -% -------------------------------------- -% -% It may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either version 1.3 -% of this license or (at your option) any later version. -% The latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of LaTeX -% version 2003/12/01 or later. -% -% This work has the LPPL maintenance status "maintained". -% -% The Current Maintainer of this work is Johannes Braams. -% -% The list of all files belonging to the Babel system is -% given in the file `manifest.bbl. See also `legal.bbl' for additional -% information. -% -% The list of derived (unpacked) files belonging to the distribution -% and covered by LPPL is defined by the unpacking scripts (with -% extension .ins) which are part of the distribution. -% \fi -% \CheckSum{636} -% -% \iffalse -% Tell the \LaTeX\ system who we are and write an entry on the -% transcript. -%<*dtx> -\ProvidesFile{greek.dtx} -%</dtx> -%<code>\ProvidesLanguage{greek} -%\fi -%\ProvidesFile{greek.dtx} - [2005/03/30 v1.3l Greek support from the babel system] -%\iffalse -%% File `greek.dtx' -%% Babel package for LaTeX version 2e -%% Copyright (C) 1989 -- 2005 -%% by Johannes Braams, TeXniek -% -%% Greek language Definition File -%% Copyright (C) 1997, 2005 -%% by Apostolos Syropoulos -%% Johannes Braams, TeXniek -% -%% Please report errors to: Apostolos Syropoulos -%% apostolo at platon.ee.duth.gr or -%% apostolo at obelix.ee.duth.gr -%% (or J.L. Braams <babel at braams.cistron.nl) -% -% This file is part of the babel system, it provides the source -% code for the greek language definition file. The original -% version of this file was written by Apostolos Syropoulos. -% It was then enhanced by adding code from kdgreek.sty from David -% Kastrup <dak@neuroinformatik.ruhr-uni-bochum.de> with his -% consent. -%<*filedriver> -\documentclass{ltxdoc} -\newcommand*{\TeXhax}{\TeX hax} -\newcommand*{\babel}{\textsf{babel}} -\newcommand*{\langvar}{$\langle \mathit lang \rangle$} -\newcommand*{\note}[1]{} -\newcommand*{\Lopt}[1]{\textsf{#1}} -\newcommand*{\file}[1]{\texttt{#1}} -\newcommand*{\pkg}[1]{\texttt{#1}} -\begin{document} - \DocInput{greek.dtx} -\end{document} -%</filedriver> -%\fi -% \GetFileInfo{greek.dtx} -% -% \changes{greek-1.0b}{1996/07/10}{Replaced \cs{undefined} with -% \cs{@undefined} and \cs{empty} with \cs{@empty} for consistency -% with \LaTeX} -% \changes{greek-1.0b}{1996/10/10}{Moved the definition of -% \cs{atcatcode} right to the beginning} -% \changes{greek-1.2}{1997/10/28}{Classical Greek is now a dialect} -% \changes{greek-1.2b}{1997/11/01}{Classical Greek is now called -% ``Polutoniko'' Greek. The previous name was at least misleading} -% \changes{greek-1.2c}{1998/06/26}{This version conforms to version -% 2.0 of the CB fonts and consequently we added a few new -% symbol-producing commands} -% \changes{greek-1.3a}{1998/07/04}{polutoniko is now an attribute to -% Greek, no longer a `dialect'} -% -% \section{The Greek language} -% -% The file \file{\filename}\footnote{The file described in this -% section has version number \fileversion\ and was last revised on -% \filedate. The original author is Apostolos Syropoulos -% (\texttt{apostolo@platon.ee.duth.gr}), code from -% \file{kdgreek.sty} by David Kastrup -% \texttt{dak@neuroinformatik.ruhr-uni-bochum.de} was used to -% enhance the support for typesetting greek texts.} defines all the -% language definition macros for the Greek language, i.e., -% as it used today with only one accent, and the attribute -% $\pi o\lambda\upsilon\tau o\nu\kappa\acute{o}$ (``Polutoniko'') -% for typesetting greek text with all accents. This separation -% arose out of the need to simplify things, for only very few -% people will be really interested to typeset polytonic Greek -% text. -% -% \DescribeMacro\greektext -% \DescribeMacro\latintext -% The commands |\greektext| and |\latintext| can be used to switch -% to greek or latin fonts. These are declarations. -% -% \DescribeMacro\textgreek -% \DescribeMacro\textlatin -% The commands |\textgreek| and |\textlatin| both take one argument -% which is then typeset using the requested font encoding. -% \DescribeMacro\textol -% The command |\greekol| switches to the greek outline font family, -% while the command |\textol| typests a short text in outline font. -% A number of extra greek characters are made available through the -% added text commands |\stigma|, |\qoppa|, |\sampi|, |\ddigamma|, -% |\Digamma|, |\euro|, |\permill|, and |\vardigamma|. -% -% \subsection{Typing conventions} -% -% Entering greek text can be quite difficult because of the many -% diacritical signs that need to be added for various purposes. -% The fonts that are used to typeset Greek make this a lot -% easier by offering a lot of ligatures. But in order for this to -% work, some characters need to be considered as letters. These -% characters are |<|, |>|, |~|, |`|, |'|, |"| and -% \verb=|=. Therefore their |\lccode| is changed when Greek is in -% effect. In order to let |\uppercase| give correct results, the -% |\uccode| of these characters is set to a non-existing character -% to make them disappear. Of course not all characters are needed -% when typesetting ``modern'' $\mu o\nu o\tau o\nu -% \iota\kappa\acute{o}$. In that case we only need the |'| and |"| -% symbols which are treated in the proper way. -% -% \subsection{Greek numbering} -% -% The Greek alphabetical numbering system, like the Roman one, is -% still used in everyday life for short enumerations. Unfortunately -% most Greeks don't know how to write Greek numbers bigger than 20 or -% 30. Nevertheless, in official editions of the last century and -% beginning of this century this numbering system was also used for -% dates and numbers in the range of several thousands. Nowadays -% this numbering system is primary used by the Eastern Orthodox -% Church and by certain scholars. It is hence necessary to be able -% to typeset any Greek numeral up to \hbox{999\,999}. Here are the -% conventions: -% \begin{itemize} -% \item There is no Greek numeral for any number less than or equal -% to $0$. -% \item Numbers from $1$ to $9$ are denoted by letters alpha, beta, -% gamma, delta, epsilon, stigma, zeta, eta, theta, followed by a -% mark similar to the mathematical symbol ``prime''. (Nowadays -% instead of letter stigma the digraph sigma tau is used for number -% $6$. Mainly because the letter stigma is not always available, so -% people opt to write down the first two letters of its name as an -% alternative. In our implementation we produce the letter stigma, -% not the digraph sigma tau.) -% \item Decades from $10$ to $90$ are denoted by letters iota, -% kappa, lambda, mu, nu, xi, omikron, pi, qoppa, again followed by -% the numeric mark. The qoppa used for this purpose has a special -% zig-zag form, which doesn't resemble at all the original -% `q'-like qoppa. -% \item Hundreds from $100$ to $900$ are denoted by letters rho, -% sigma, tau, upsilon, phi, chi, psi, omega, sampi, followed by the -% numeric mark. -% \item Any number between $1$ and $999$ is obtained by a group of -% letters denoting the hundreds decades and units, followed by a -% numeric mark. -% \item To denote thousands one uses the same method, but this time -% the mark is placed in front of the letter, and under the baseline -% (it is inverted by 180 degrees). When a group of letters denoting -% thousands is followed by a group of letters denoting a number -% under $1000$, then both marks are used. -% \end{itemize} -% -% Using these conventions one obtains numbers up to \hbox{999\,999}. -% \DescribeMacro{\greeknumeral} -% The command |\greeknumeral| makes it possible to typeset Greek -% numerals. There is also an -% \DescribeMacro{\Greeknumeral} -% ``uppercase'' version of this macro: |\Greeknumeral|. -% -% Another system which was in wide use only in Athens, could -% express any positive number. This system is implemented in -% package |athnum|. -% -% \StopEventually{} -% -% The macro |\LdfInit| takes care of preventing that this file is -% loaded more than once, checking the category code of the -% \texttt{@} sign, etc. -% \changes{greek-1.0b}{1996/11/02}{Now use \cs{LdfInit} to perform -% initial checks} -% \begin{macrocode} -%<*code> -\LdfInit\CurrentOption{captions\CurrentOption} -% \end{macrocode} -% When the option \Lopt{polutonikogreek} was used, redefine -% |\CurrentOption| to prevent problems later on. -% \begin{macrocode} -\gdef\CurrentOption{greek}% -% \end{macrocode} -% -% When this file is read as an option, i.e. by the |\usepackage| -% command, \texttt{greek} could be an `unknown' language in -% which case we have to make it known. So we check for the -% existence of |\l@greek| to see whether we have to do -% something here. -% -% \begin{macrocode} -\ifx\l@greek\@undefined - \@nopatterns{greek} - \adddialect\l@greek0\fi -% \end{macrocode} -% -% Now we declare the |polutoniko| language attribute. -% \begin{macrocode} -\bbl@declare@ttribute{greek}{polutoniko}{% -% \end{macrocode} -% This code adds the expansion of |\extraspolutonikogreek| to -% |\extrasgreek| and changes the definition of |\today| for Greek -% to produce polytonic month names. -% \begin{macrocode} - \expandafter\addto\expandafter\extrasgreek - \expandafter{\extraspolutonikogreek}% - \let\captionsgreek\captionspolutonikogreek - \let\gr@month\gr@c@month -% \end{macrocode} -% We need to take some extra precautions in order not to break -% older documents which still use the old \Lopt{polutonikogreek} -% option. -% \changes{greek-1.3f}{1999/09/29}{Added some code to make older -% documents work} -% \changes{greek-1.3g}{2000/02/04}{\cs{noextraspolutonikogreek} was -% missing} -% \begin{macrocode} - \let\l@polutonikogreek\l@greek - \let\datepolutonikogreek\dategreek - \let\extraspolutonikogreek\extrasgreek - \let\noextraspolutonikogreek\noextrasgreek - } -% \end{macrocode} -% -% Typesetting Greek texts implies that a special set of fonts needs -% to be used. The current support for greek uses the |cb| fonts -% created by Claudio Beccari\footnote{Apostolos Syropoulos wishes -% to thank him for his patience, collaboration, cooments and -% suggestions.}. The |cb| fonts provide all sorts of \textit{font -% combinations}. In order to use these fonts we define the Local -% GReek encoding (LGR, see the file \file{greek.fdd}). We make sure -% that this encoding is known to \LaTeX, and if it isn't we abort. -% \changes{greek-1.2a}{1997/10/31}{filename \file{lgrenc.def} now -% lowercase} -% \begin{macrocode} -\InputIfFileExists{lgrenc.def}{% - \message{Loading the definitions for the Greek font encoding}}{% - \errhelp{I can't find the lgrenc.def file for the Greek fonts}% - \errmessage{Since I do not know what the LGR encoding means^^J - I can't typeset Greek.^^J - I stop here, while you get a suitable lgrenc.def file}\@@end - } -% \end{macrocode} -% -% Now we define two commands that offer the possibility to switch -% between Greek and Roman encodings. -% -% \begin{macro}{\greektext} -% The command |\greektext| will switch from Latin font encoding to -% the Greek font encoding. This assumes that the `normal' font -% encoding is a Latin one. This command is a \emph{declaration}, -% for shorter pieces of text the command |\textgreek| should be -% used. -% \begin{macrocode} -\DeclareRobustCommand{\greektext}{% - \fontencoding{LGR}\selectfont - \def\encodingdefault{LGR}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\textgreek} -% This command takes an argument which is then typeset using the -% requested font encoding. In order to avoid many encoding switches -% it operates in a local scope. -% \changes{greek-1.0b}{1996/09/23}{Added a level of braces to keep -% encoding change local} -% \changes{greek-1.3k}{2003/03/19}{Added \cs{leavevmode} as was done -% with \cs{latintext}} -% \begin{macrocode} -\DeclareRobustCommand{\textgreek}[1]{\leavevmode{\greektext #1}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\textol} -% A last aspect of the set of fonts provided with this version of -% support for typesetting Greek texts is that it contains an -% outline family. In order to make it available we define the command -% |\textol|. -% \begin{macrocode} -\def\outlfamily{\usefont{LGR}{cmro}{m}{n}} -\DeclareTextFontCommand{\textol}{\outlfamily} -% \end{macrocode} -% \end{macro} -% -% The next step consists in defining commands to switch to (and -% from) the Greek language. -% -% \begin{macro}{\greekhyphenmins} -% This macro is used to store the correct values of the hyphenation -% parameters |\lefthyphenmin| and |\righthyphenmin|. -% \changes{greek-1.3h}{2000/09/22}{Now use \cs{providehyphenmins} to -% provide a default value} -% \begin{macrocode} -% Yannis Haralambous has suggested this value -\providehyphenmins{\CurrentOption}{\@ne\@ne} -% \end{macrocode} -% \end{macro} -% -% \changes{greek-1.1e}{1997/10/12}{Added caption name for proof} -% \changes{greek-1.3d}{1999/08/28}{Fixed typo, \texttt{bl'epe ep'ishc} -% instead of \texttt{bl'pe ep'ishc}} -% -% \begin{macro}{\captionsgreek} -% The macro |\captionsgreek| defines all strings used in the -% four standard document classes provided with \LaTeX. -% \changes{greek-1.3h}{2000/09/20}{Added \cs{glossaryname}} -% \changes{greek-1.3i}{2000/10/02}{The final sigma in all names appears -% as `s' instead of `c'.} -% \begin{macrocode} -\addto\captionsgreek{% - \def\prefacename{Pr'ologos}% - \def\refname{Anafor'es}% - \def\abstractname{Per'ilhyh}% - \def\bibname{Bibliograf'ia}% - \def\chaptername{Kef'alaio}% - \def\appendixname{Par'arthma}% - \def\contentsname{Perieq'omena}% - \def\listfigurename{Kat'alogos Sqhm'atwn}% - \def\listtablename{Kat'alogos Pin'akwn}% - \def\indexname{Euret'hrio}% - \def\figurename{Sq'hma}% - \def\tablename{P'inakas}% - \def\partname{M'eros}% - \def\enclname{Sunhmm'ena}% - \def\ccname{Koinopo'ihsh}% - \def\headtoname{Pros}% - \def\pagename{Sel'ida}% - \def\seename{bl'epe}% - \def\alsoname{bl'epe ep'ishs}% - \def\proofname{Ap'odeixh}% - \def\glossaryname{Glwss'ari}% - } -% \end{macrocode} -% \end{macro} -% \changes{greek-1.2}{1997/10/28}{Added caption names for -% \cs{polutonikogreek}} -% \changes{greek-1.3d}{1999/08/28}{Fixed typo, \texttt{bl'epe >ep'ishc} -% instead of \texttt{bl'pe >ep'ishc}} -% -% \begin{macro}{\captionspolutonikogreek} -% For texts written in the $\pi o\lambda\upsilon\tau -% o\nu\kappa\acute{o}$ (polytonic greek) the translations are -% the same as above, but some words are spelled differently. For -% now we just add extra definitions to |\captionsgreek| in order to -% override the earlier definitions. -% \begin{macrocode} -\let\captionspolutonikogreek\captionsgreek -\addto\captionspolutonikogreek{% - \def\refname{>Anafor`es}% - \def\indexname{E<uret'hrio}% - \def\figurename{Sq~hma}% - \def\headtoname{Pr`os}% - \def\alsoname{bl'epe >ep'ishs}% - \def\proofname{>Ap'odeixh}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\gr@month} -% \changes{greek-1.1e}{1997/10/12}{Macro added} -% \begin{macro}{\dategreek} -% The macro |\dategreek| redefines the command |\today| to -% produce greek dates. The name of the month is now produced -% by the macro |\gr@month| since it is needed in the definition -% of the macro |\Grtoday|. -% \changes{greek-1.1a}{1997/03/03}{Fixed typo, \texttt{Oktwbr'iou} -% instead of \texttt{Oktobr'iou}} -% \changes{greek-1.1d}{1997/10/12}{Macro \cs{gr@month} now produces -% the name of the month} -% \changes{greek-1.2a}{1997/10/31}{Use \cs{edef} to define \cs{today}} -% \changes{greek-1.2b}{1998/03/28}{use \cs{def} instead of \cs{edef}} -% \begin{macrocode} -\def\gr@month{% - \ifcase\month\or - Ianouar'iou\or Febrouar'iou\or Mart'iou\or April'iou\or - Ma'"iou\or Ioun'iou\or Ioul'iou\or Augo'ustou\or - Septembr'iou\or Oktwbr'iou\or Noembr'iou\or Dekembr'iou\fi} -\def\dategreek{% - \def\today{\number\day \space \gr@month\space \number\year}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\gr@c@greek} -% \changes{greek-1.2}{1997/10/28}{Added macro \cs{gr@cl@month}} -% \changes{greek-1.2}{1997/10/28}{Added macro -% \cs{datepolutonikogreek}} -% \changes{greek-1.3a}{1997/10/28}{removed macro -% \cs{datepolutonikogreek}} -% \begin{macrocode} -\def\gr@c@month{% - \ifcase\month\or >Ianouar'iou\or - Febrouar'iou\or Mart'iou\or >April'iou\or Ma"'iou\or - >Ioun'iou\or >Ioul'iou\or A>ugo'ustou\or Septembr'iou\or - >Oktwbr'iou\or Noembr'iou\or Dekembr'iou\fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\Grtoday} -% \changes{greek-1.1}{1996/10/28}{Added macro \cs{Grtoday}} -% The macro |\Grtoday| produces the current date, only that the -% month and the day are shown as greek numerals instead of arabic -% as it is usually the case. -% \begin{macrocode} -\def\Grtoday{% - \expandafter\Greeknumeral\expandafter{\the\day}\space - \gr@c@month \space - \expandafter\Greeknumeral\expandafter{\the\year}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\extrasgreek} -% \begin{macro}{\noextrasgreek} -% The macro |\extrasgreek| will perform all the extra definitions -% needed for the Greek language. The macro |\noextrasgreek| is used -% to cancel the actions of |\extrasgreek|. For the moment these -% macros switch the fontencoding used and the definition of the -% internal macros |\@alph| and |\@Alph| because in Greek we do use -% the Greek numerals. -% -% \begin{macrocode} -\addto\extrasgreek{\greektext} -\addto\noextrasgreek{\latintext} -% \end{macrocode} -% -% \begin{macro}{\gr@ill@value} -% When the argument of |\greeknumeral| has a value outside of the -% acceptable bounds ($0 < x < 999999$) a warning will be issued -% (and nothing will be printed). -% \begin{macrocode} -\def\gr@ill@value#1{% - \PackageWarning{babel}{Illegal value (#1) for greeknumeral}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\anw@true} -% \begin{macro}{\anw@false} -% \begin{macro}{\anw@print} -% When a a large number with three \emph{trailing} zero's is to be -% printed those zeros \emph{and} the numeric mark need to be -% discarded. As each `digit' is processed by a separate macro -% \emph{and} because the processing needs to be expandable we need -% some helper macros that help remember to \emph{not} print the -% numeric mark (|\anwtonos|). -% -% The command |\anw@false| switches the printing of the numeric -% mark off by making |\anw@print| expand to nothing. The command -% |\anw@true| (re)enables the printing of the numeric marc. These -% macro's need to be robust in order to prevent improper expansion -% during writing to files or during |\uppercase|. -% \begin{macrocode} -\DeclareRobustCommand\anw@false{% - \DeclareRobustCommand\anw@print{}} -\DeclareRobustCommand\anw@true{% - \DeclareRobustCommand\anw@print{\anwtonos}} -\anw@true -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\greeknumeral} -% The command |\greeknumeral| needs to be \emph{fully} expandable -% in order to get the right information in auxiliary -% files. Therefore we use a big |\if|-construction to check the -% value of the argument and start the parsing at the right level. -% \begin{macrocode} -\def\greeknumeral#1{% -% \end{macrocode} -% If the value is negative or zero nothing is printed and a warning -% is issued. -% \changes{greek-1.3b}{1999/04/03}{Added \cs{expandafter} and -% \cs{number} (PR3000) in order to make a counter an acceptable -% argument} -% \begin{macrocode} - \ifnum#1<\@ne\space\gr@ill@value{#1}% - \else - \ifnum#1<10\expandafter\gr@num@i\number#1% - \else - \ifnum#1<100\expandafter\gr@num@ii\number#1% - \else -% \end{macrocode} -% We use the available shorthands for 1.000 (|\@m|) and 10.000 -% (|\@M|) to save a few tokens. -% \begin{macrocode} - \ifnum#1<\@m\expandafter\gr@num@iii\number#1% - \else - \ifnum#1<\@M\expandafter\gr@num@iv\number#1% - \else - \ifnum#1<100000\expandafter\gr@num@v\number#1% - \else - \ifnum#1<1000000\expandafter\gr@num@vi\number#1% - \else -% \end{macrocode} -% If the value is too large, nothing is printed and a warning -% is issued. -% \begin{macrocode} - \space\gr@ill@value{#1}% - \fi - \fi - \fi - \fi - \fi - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\Greeknumeral} -% The command |\Greeknumeral| prints uppercase greek numerals. -% The parsing is performed by the macro |\greeknumeral|. -% \begin{macrocode} -\def\Greeknumeral#1{% - \expandafter\MakeUppercase\expandafter{\greeknumeral{#1}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\greek@alph} -% \begin{macro}{\greek@Alph} -% In the previous release of this language definition the -% commands |\greek@aplh| and |\greek@Alph| were kept just for -% reasons of compatibility. Here again they become meaningful macros. -% They are definited in a way that even page numbering with greek -% numerals is possible. Since the macros |\@alph| and |\@Alph| will -% lose their original meaning while the Greek option is active, we -% must save their original value. -% macros |\@alph| -% \begin{macrocode} -\let\latin@alph\@alph -\let\latin@Alph\@Alph -% \end{macrocode} -% Then we define the Greek versions; the additional |\expandafter|s -% are needed in order to make sure the table of contents will be -% correct, e.g., when we have appendixes. -% \begin{macrocode} -\def\greek@alph#1{\expandafter\greeknumeral\expandafter{\the#1}} -\def\greek@Alph#1{\expandafter\Greeknumeral\expandafter{\the#1}} -% \end{macrocode} -% -% Now we can set up the switching. -% \changes{greek-1.1a}{1997/03/03}{removed two superfluous @'s which -% made \cs{@alph} undefined} -% \begin{macrocode} -\addto\extrasgreek{% - \let\@alph\greek@alph - \let\@Alph\greek@Alph} -\addto\noextrasgreek{% - \let\@alph\latin@alph - \let\@Alph\latin@Alph} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\greek@roman} -% \begin{macro}{\greek@Roman} -% \changes{greek-1.2e}{1999/04/16}{Moved redefinition of \cs{@roman} -% back to the language specific file} -% \changes{greek-1.3d}{1999/08/27}{\cs{@roman} and \cs{@Roman} need to -% be added to \cs{extraspolutonikogreek}} -% \changes{greek-1.3e}{1999/09/24}{\cs{@roman} and \cs{@Roman} need -% \emph{not} be in \cs{extraspolutonikogreek} when they are already -% in \cs{extrasgreek}} -% -% To prevent roman numerals being typeset in greek letters we need -% to adopt the internal \LaTeX\ commands |\@roman| and -% |\@Roman|. \textbf{Note that this may cause errors where -% |\@roman| ends up in a situation where it needs to be expanded; -% problems are known to exist with the AMS document classes.} -% \begin{macrocode} -\let\latin@roman\@roman -\let\latin@Roman\@Roman -\def\greek@roman#1{\textlatin{\latin@roman{#1}}} -\def\greek@Roman#1{\textlatin{\latin@Roman{#1}}} -\addto\extrasgreek{% - \let\@roman\greek@roman - \let\@Roman\greek@Roman} -\addto\noextrasgreek{% - \let\@roman\latin@roman - \let\@Roman\latin@Roman} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\greek@amp} -% \begin{macro}{\ltx@amp} -% The greek fonts do not contain an ampersand, so the \LaTeX\ -% command |\&| dosn't give the expected result if we do not do -% something about it. -% \changes{greek-1.2f}{1999/04/25}{Now switch the definition of -% \cs{\&} from \cs{extrasgreek}} -% \changes{greek-1.3c}{1999/05/17}{Added a missing opening brace} -% \begin{macrocode} -\let\ltx@amp\& -\def\greek@amp{\textlatin{\ltx@amp}} -\addto\extrasgreek{\let\&\greek@amp} -\addto\noextrasgreek{\let\&\ltx@amp} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% What is left now is the definition of a set of macros to produce -% the various digits. -% \begin{macro}{\gr@num@i} -% \begin{macro}{\gr@num@ii} -% \begin{macro}{\gr@num@iii} -% \changes{greek-1.2b}{1997/11/13}{No longer use \cs{\let} in the -% expansion of the \cs{gr@num@x} macros as they ned to be -% expandable} -% As there is no representation for $0$ in this system the zeros -% are simply discarded. When we have a large number with three -% \emph{trailing} zero's also the numeric mark is discarded. -% Therefore these macros need to pass the information to each other -% about the (non-)translation of a zero. -% \begin{macrocode} -\def\gr@num@i#1{% - \ifcase#1\or a\or b\or g\or d\or e\or \stigma\or z\or h\or j\fi - \ifnum#1=\z@\else\anw@true\fi\anw@print} -\def\gr@num@ii#1{% - \ifcase#1\or i\or k\or l\or m\or n\or x\or o\or p\or \qoppa\fi - \ifnum#1=\z@\else\anw@true\fi\gr@num@i} -\def\gr@num@iii#1{% - \ifcase#1\or r\or sv\or t\or u\or f\or q\or y\or w\or \sampi\fi - \ifnum#1=\z@\anw@false\else\anw@true\fi\gr@num@ii} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\gr@num@iv} -% \begin{macro}{\gr@num@v} -% \begin{macro}{\gr@num@vi} -% The first three `digits' always have the numeric mark, except -% when one is discarded because it's value is zero. -% \begin{macrocode} -\def\gr@num@iv#1{% - \ifnum#1=\z@\else\katwtonos\fi - \ifcase#1\or a\or b\or g\or d\or e\or \stigma\or z\or h\or j\fi - \gr@num@iii} -\def\gr@num@v#1{% - \ifnum#1=\z@\else\katwtonos\fi - \ifcase#1\or i\or k\or l\or m\or n\or x\or o\or p\or \qoppa\fi - \gr@num@iv} -\def\gr@num@vi#1{% - \katwtonos - \ifcase#1\or r\or sv\or t\or u\or f\or q\or y\or w\or \sampi\fi - \gr@num@v} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\greek@tilde} -% \changes{greek-1.0c}{1997/02/19}{Added command} -% In greek typesetting we need a number of characters with more -% than one accent. In the underlying family of fonts (the -% |cb| fonts) this is solved using Knuth's ligature -% mechanism. -% Characters we need to have ligatures with are the tilde, the -% acute and grave accent characters, the rough and smooth breathings, -% the subscript, and the double quote character. -% In text input the |~| is normaly used to produce an -% unbreakable space. The command |\~| normally produces a tilde -% accent. For polytonic Greek we change the definition of |\~| -% to produce the tilde character itself, making sure it has category -% code 12. -% \changes{greek-1.3k}{2003/04/10}{Make sure the character `!' is not -% active during the definition of \cs{greek@tilde}} -% \begin{macrocode} -\begingroup - \@ifundefined{active@char\string!}{}{\catcode`!=12\relax} - \catcode`\~=12 - \lccode`\!=`\~ - \lowercase{\def\x{\endgroup - \def\greek@tilde{!}}\x} -\addto\extraspolutonikogreek{% - \babel@save\~\let\~\greek@tilde} -% \end{macrocode} -% \end{macro} -% In order to get correct hyphenation we need to set the lower case -% code of a number of characters. The `v' character has a special -% usage for the |cb| fonts: in fact this ligature mechanism detects -% the end of a word and assures that a final sigma is typeset with -% the proper sign wich is different from that of an initial or -% medial sigma; the `v 'after an \textit{isolated} sigma fools -% the ligature mechanism in order to typeset $\sigma$ in place of -% $\varsigma$. Because of this we make sure its lowercase code is -% not changed. For ``modern'' greek we have to deal only with |'| -% and |"| and so things are easy. -% \changes{greek-1.1c}{1997/04/30}{fixed two typos} -% \changes{greek-1.1e}{1997/10/12}{Added lowercase code for v} -% \changes{greek-1.2}{1997/10/28}{Definitions for ``modern'' Greek are -% now the definitions of ``Polutoniko'' Greek} -% \changes{greek-1.2}{1997/10/28}{Added lowercase codes for ``modern'' -% greek} -% \changes{greek-1.3e}{1999/09/24}{\cs{extrasgreek} and -% \cs{extraspolutonikogreek} should be complementary} -% \begin{macrocode} -\addto\extrasgreek{% - \babel@savevariable{\lccode`v}\lccode`v=`v% - \babel@savevariable{\lccode`\'}\lccode`\'=`\'% - \babel@savevariable{\lccode`\"}\lccode`\"=`\"} -\addto\extraspolutonikogreek{% - \babel@savevariable{\lccode`\<}\lccode`\<=`\<% - \babel@savevariable{\lccode`\>}\lccode`\>=`\>% - \babel@savevariable{\lccode`\~}\lccode`\~=`\~% - \babel@savevariable{\lccode`\|}\lccode`\|=`\|% - \babel@savevariable{\lccode`\`}\lccode`\`=`\`} -% \end{macrocode} -% And in order to get rid of all accents and breathings when a -% string is |\uppercase|d we also change a number of uppercase -% codes. -% \changes{greek-1.1b}{1997/03/06}{Added setting of \cs{uccode}s -% (after \file{kdgreek.sty})} -% \changes{greek-1.1e}{1997/10/12}{Added uppercase code for special -% letter ``v''. Uppercase code for accents is now \texttt{9f}, -% instead of \texttt{ff}} -% \changes{greek-1.2}{1997/10/28}{Added uppercase codes for ``modern'' -% Greek. The old codes are now for ``Polutoniko'' Greek} -% \changes{greek-1.3e}{1999/09/24}{\cs{extrasgreek} and -% \cs{extraspolutonikogreek} should be complementary} -% {\catcode`|=12\relax\gdef\indexbar{\cs{|}}} -% \changes{greek-1.3g}{1999/11/17}{uc code of \indexbar{} is now just -% \indexbar{} to reflect recent changes in the cb fonts} -% \changes{greek-1.3i}{2000/10/02}{uc code of `v' is switched to V -% so that mixed text appears correctly in headers.} -% \changes{greek-1.3j}{2001/02/03}{Because other languages might -% make the caret active, we can't use the double caret notation -% here} -% \begin{macrocode} -\addto\extrasgreek{% - \babel@savevariable{\uccode`\"}\uccode`\"=`\"% - \babel@savevariable{\uccode`\'}\uccode`\'=159} %% 159 == ^^9f -\addto\extraspolutonikogreek{% - \babel@savevariable{\uccode`\~}\uccode`\~=159% - \babel@savevariable{\uccode`\>}\uccode`\>=159% - \babel@savevariable{\uccode`\<}\uccode`\<=159% - \babel@savevariable{\uccode`\|}\uccode`\|=`\|% - \babel@savevariable{\uccode`\`}\uccode`\`=159} -% \end{macrocode} -% For this to work we make the character |^^9f| a shorthand that -% expands to nothing. In order for this to work we need to make a -% character look like |^^9f| in \TeX's eyes. The trick is to have -% another character and assign it a different lowercase code. The -% execute the macros needed in a |\lowercase| environment. Usually -% the tile |~| character is used for such purposes. Before we do -% this we save it's original lowercase code to restore it once -% we're done. -% \changes{greek-1.1b}{1997/03/06}{Added shorthand for \cs{char255}} -% \changes{greek-1.1e}{1997/10/12}{Shorthand is changed. Active -% character is now \cs{char159}} -% \changes{greek-1.2a}{1997/10/31}{Need shorthand to exist for -% ``monotoniko'' Greek, not ``polutoniko'' Greek} -% \changes{greek-1.3j}{2001/02/03}{Ues the tilde as an alias for -% character 159} -% \begin{macrocode} -\@tempcnta=\lccode`\~ -\lccode`\~=159 -\lowercase{% - \initiate@active@char{~}% - \declare@shorthand{greek}{~}{}} -\lccode`\~=\@tempcnta -% \end{macrocode} -% We can also make the tilde character itself expand to a tilde with -% category code 12 to make the typing of texts easier. -% \changes{greek-1.1b}{1997/03/06}{Made tilde expand to a tilde with -% \cs{catcode 12}} -% \begin{macrocode} -\addto\extraspolutonikogreek{\languageshorthands{greek}}% -\declare@shorthand{greek}{~}{\greek@tilde} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% -% -% \changes{greek-1.1c}{1997/03/10}{Added a couple of symbols, needed -% for \cs{greeknumeral}} -% \changes{greek-1.1e}{1997/10/12}{Most symbols are removed and are -% now defined in package grsymb} -% \changes{greek-1.2c}{1998/06/26}{Package grsymb has been eliminated -% because the CB fonts v2.0 do not inlcude certain symbols and so -% the remaining symbol definitions have been moved here} -% We now define a few symbols which are used in the typesetting of -% greek numerals, as well as some other symbols which are usefull, -% such as the $\epsilon\upsilon\rho\omega$ symbol, etc. -% \begin{macrocode} -\DeclareTextCommand{\anwtonos}{LGR}{\char"FE\relax} -\DeclareTextCommand{\katwtonos}{LGR}{\char"FF\relax} -\DeclareTextCommand{\qoppa}{LGR}{\char"12\relax} -\DeclareTextCommand{\stigma}{LGR}{\char"06\relax} -\DeclareTextCommand{\sampi}{LGR}{\char"1B\relax} -\DeclareTextCommand{\Digamma}{LGR}{\char"C3\relax} -\DeclareTextCommand{\ddigamma}{LGR}{\char"93\relax} -\DeclareTextCommand{\vardigamma}{LGR}{\char"07\relax} -\DeclareTextCommand{\euro}{LGR}{\char"18\relax} -\DeclareTextCommand{\permill}{LGR}{\char"19\relax} -% \end{macrocode} -% -% Since the |~| cannot be used to produce an unbreakable white -% space we must redefine at least the commands |\fnum@figure| and -% |\fnum@table| so they do not produce a |~| instead of white -% space. -% \changes{greek-1.3l}{2004/02/19}{Commented these lines out as this -% change has made it into \LaTeX{} itself.} -% \begin{macrocode} -%\def\fnum@figure{\figurename\nobreakspace\thefigure} -%\def\fnum@table{\tablename\nobreakspace\thetable} -% \end{macrocode} -% -% The macro |\ldf@finish| takes care of looking for a -% configuration file, setting the main language to be switched on -% at |\begin{document}| and resetting the category code of -% \texttt{@} to its original value. -% \changes{greek-1.0b}{1996/11/02}{Now use \cs{ldf@finish} to wrap up} -% \begin{macrocode} -\ldf@finish{\CurrentOption} -%</code> -% \end{macrocode} -% -% \Finale -%\endinput -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% |