summaryrefslogtreecommitdiff
path: root/macros/xetex/latex/xgreek/xgreek.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-09-06 03:01:30 +0000
committerNorbert Preining <norbert@preining.info>2022-09-06 03:01:30 +0000
commitd1c5ad9e2f25f73b84c87ef3bcec2432ff6e4ac6 (patch)
tree9cfbc16886e2e3ac4be092c1158d022ab816023e /macros/xetex/latex/xgreek/xgreek.dtx
parent428a6bcc4c634ccfe1ea8d9c1a3e4318037a0fee (diff)
CTAN sync 202209060301
Diffstat (limited to 'macros/xetex/latex/xgreek/xgreek.dtx')
-rw-r--r--macros/xetex/latex/xgreek/xgreek.dtx1015
1 files changed, 0 insertions, 1015 deletions
diff --git a/macros/xetex/latex/xgreek/xgreek.dtx b/macros/xetex/latex/xgreek/xgreek.dtx
deleted file mode 100644
index 864345aa82..0000000000
--- a/macros/xetex/latex/xgreek/xgreek.dtx
+++ /dev/null
@@ -1,1015 +0,0 @@
-%% \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 \~}
-%%
-%\iffalse
-%
-% (c) Copyright 2007-2022 Apostolos Syropoulos
-% This program can be redistributed and/or modified under the
-% terms of the LaTeX Project Public License Distributed from
-% http://www.latex-project.org/lppl.txt; either
-% version 1.3c of the License, or any later version.
-%
-% This work has the LPPL maintenance status `maintained'.
-%
-% Please report errors or suggestions for improvement to
-%
-% Apostolos Syropoulos (asyropoulos@yahoo.com)
-%
-%\fi
-% \CheckSum{1929}
-% \iffalse This is a Metacommentxel
-%
-%<xgreek, >\ProvidesFile{xgreek.sty}
-%
-%<xgreek, > [2022/08/28 v3.1.0 Package `xgreek.sty']
-%
-% \begin{macrocode}
-%<*driver>
-\documentclass{ltxdoc}
-\GetFileInfo{xgreek.drv}
-\usepackage{xltxtra}
-\begin{document}
-%\newopentypefeature{Contextuals}{Alts}{+calt}
-\setmainfont[Mapping=tex-text,Script=Greek,
- SmallCapsFeatures={Contextuals=Alternate}]{Universal Modern}
-\setmonofont{UM Typewriter}
-\setsansfont[Mapping=tex-text]{GFS Neohellenic}
- \DocInput{xgreek.dtx}
-\end{document}
-%</driver>
-% \end{macrocode}
-% \fi
-%\StopEventually{}
-%\title{Greek Language Support for\\ \XeLaTeX\ and Lua\LaTeX}
-%\author{Apostolos Syropoulos\\
-% Xanthi, Greece\\
-% \texttt{asyropoulos@yahoo.com}}
-% \date{2009/11/23\\ Last Updated 2022/08/22}
-%\maketitle
-% \begin{abstract}
-% The \textsf{xgreek} package provides rudimentary support for Greek language
-% typesetting with \XeLaTeX and Lua\LaTeX. In particular, it provides support for modern
-% Greek (either monotonic or polytonic) and ancient Greek.
-%\end{abstract}
-%
-%\section{Introduction}
-%
-% The \textsf{xgreek} package provides rudimentary support for Greek language
-% typesetting with \XeLaTeX and Lua\LaTeX. Users will be able to typeset documents in
-% either modern Greek (monotonic or polytonic) or ancient Greek by selecting the appropriate
-% package option. The default ``language'' is monotonic Greek.
-%
-% Support for Lua\LaTeX\ was provided by Javier Bezos.
-%
-% \section{The Source Code}
-% According to the Unicode standard
-%\begin{center}
-%|http://www.unicode.org/Public/UNIDATA/UnicodeData.txt|
-%\end{center}
-% the uppercase form of \textsc{greek small letter epsilon with tonos} is
-% \textsc{greek capital letter eta with tonos}. This is certainly wrong. The main reason
-% is that accents are not part of the letter as for example is the case with
-% \textsc{latin small letter k with caron}. Since, \XeLaTeX\ blindly follows the Unicode
-% standard, commands like |\MakeUppercase| produce wrong output. For this reason
-% I first need to set up the correct |\uccode|s and |\lccode|s.
-% \begin{macrocode}
-%<*xgreek>
-\message{Package 'xgreek' version 3.1.0 by Apostolos Syropoulos}
-\global\lccode"0370="0371 \global\uccode"0370="0370
-\global\lccode"0371="0371 \global\uccode"0371="0370
-\global\lccode"0372="0373 \global\uccode"0372="0372
-\global\lccode"0373="0373 \global\uccode"0373="0372
-\global\lccode"0376="0377 \global\uccode"0376="0376
-\global\lccode"0377="0377 \global\uccode"0377="0376
-\global\lccode"03FD="037B \global\uccode"03FD="03FD
-\global\lccode"037B="037B \global\uccode"037B="03FD
-\global\lccode"03FE="037C \global\uccode"03FE="03FE
-\global\lccode"037C="037C \global\uccode"037C="03FE
-\global\lccode"03FF="037D \global\uccode"03FF="03FF
-\global\lccode"037D="037D \global\uccode"037D="03FF
-\global\lccode"0386="03AC \global\uccode"0386="0391
-\global\lccode"0388="03AD \global\uccode"0388="0395
-\global\lccode"0389="03AC \global\uccode"0389="0397
-\global\lccode"038A="03AF \global\uccode"038A="0399
-\global\lccode"038C="03CC \global\uccode"038C="039F
-\global\lccode"038E="03CD \global\uccode"038E="03A5
-\global\lccode"038F="03CE \global\uccode"038F="03A9
-\global\lccode"0390="0390 \global\uccode"0390="03AA
-\global\lccode"0391="03B1 \global\uccode"0391="0391
-\global\lccode"0392="03B2 \global\uccode"0392="0392
-\global\lccode"0393="03B3 \global\uccode"0393="0393
-\global\lccode"0394="03B4 \global\uccode"0394="0394
-\global\lccode"0395="03B5 \global\uccode"0395="0395
-\global\lccode"0396="03B6 \global\uccode"0396="0396
-\global\lccode"0397="03B7 \global\uccode"0397="0397
-\global\lccode"0398="03B8 \global\uccode"0398="0398
-\global\lccode"0399="03B9 \global\uccode"0399="0399
-\global\lccode"039A="03BA \global\uccode"039A="039A
-\global\lccode"039B="03BB \global\uccode"039B="039B
-\global\lccode"039C="03BC \global\uccode"039C="039C
-\global\lccode"039D="03BD \global\uccode"039D="039D
-\global\lccode"039E="03BE \global\uccode"039E="039E
-\global\lccode"039F="03BF \global\uccode"039F="039F
-\global\lccode"03A0="03C0 \global\uccode"03A0="03A0
-\global\lccode"03A1="03C1 \global\uccode"03A1="03A1
-\global\lccode"03A3="03C3 \global\uccode"03A3="03A3
-\global\lccode"03A4="03C4 \global\uccode"03A4="03A4
-\global\lccode"03A5="03C5 \global\uccode"03A5="03A5
-\global\lccode"03A6="03C6 \global\uccode"03A6="03A6
-\global\lccode"03A7="03C7 \global\uccode"03A7="03A7
-\global\lccode"03A8="03C8 \global\uccode"03A8="03A8
-\global\lccode"03A9="03C9 \global\uccode"03A9="03A9
-\global\lccode"03AA="03CA \global\uccode"03AA="03AA
-\global\lccode"03AB="03CB \global\uccode"03AB="03AB
-\global\lccode"03AC="03AC \global\uccode"03AC="0391
-\global\lccode"03AD="03AD \global\uccode"03AD="0395
-\global\lccode"03AE="03AE \global\uccode"03AE="0397
-\global\lccode"03AF="03AF \global\uccode"03AF="0399
-\global\lccode"03B0="03B0 \global\uccode"03B0="03AB
-\global\lccode"03B1="03B1 \global\uccode"03B1="0391
-\global\lccode"03B2="03B2 \global\uccode"03B2="0392
-\global\lccode"03B3="03B3 \global\uccode"03B3="0393
-\global\lccode"03B4="03B4 \global\uccode"03B4="0394
-\global\lccode"03B5="03B5 \global\uccode"03B5="0395
-\global\lccode"03B6="03B6 \global\uccode"03B6="0396
-\global\lccode"03B7="03B7 \global\uccode"03B7="0397
-\global\lccode"03B8="03B8 \global\uccode"03B8="0398
-\global\lccode"03B9="03B9 \global\uccode"03B9="0399
-\global\lccode"03BA="03BA \global\uccode"03BA="039A
-\global\lccode"03BB="03BB \global\uccode"03BB="039B
-\global\lccode"03BC="03BC \global\uccode"03BC="039C
-\global\lccode"03BD="03BD \global\uccode"03BD="039D
-\global\lccode"03BE="03BE \global\uccode"03BE="039E
-\global\lccode"03BF="03BF \global\uccode"03BF="039F
-\global\lccode"03C0="03C0 \global\uccode"03C0="03A0
-\global\lccode"03C1="03C1 \global\uccode"03C1="03A1
-\global\lccode"03C2="03C2 \global\uccode"03C2="03A3
-\global\lccode"03C3="03C3 \global\uccode"03C3="03A3
-\global\lccode"03C4="03C4 \global\uccode"03C4="03A4
-\global\lccode"03C5="03C5 \global\uccode"03C5="03A5
-\global\lccode"03C6="03C6 \global\uccode"03C6="03A6
-\global\lccode"03C7="03C7 \global\uccode"03C7="03A7
-\global\lccode"03C8="03C8 \global\uccode"03C8="03A8
-\global\lccode"03C9="03C9 \global\uccode"03C9="03A9
-\global\lccode"03CA="03CA \global\uccode"03CA="03AA
-\global\lccode"03CB="03CB \global\uccode"03CB="03AB
-\global\lccode"03CC="03CC \global\uccode"03CC="039F
-\global\lccode"03CD="03CD \global\uccode"03CD="03A5
-\global\lccode"03CE="03CE \global\uccode"03CE="03A9
-\global\lccode"03D0="03D0 \global\uccode"03D0="0392
-\global\lccode"03D1="03D1 \global\uccode"03D1="0398
-\global\lccode"03D2="03C5 \global\uccode"03D2="03A5
-\global\lccode"03D3="03CD \global\uccode"03D3="03A5
-\global\lccode"03D4="03CB \global\uccode"03D4="03AB
-\global\lccode"03D5="03C6 \global\uccode"03D5="03A6
-\global\lccode"03D6="03C0 \global\uccode"03D6="03A0
-\global\lccode"03DA="03DB \global\uccode"03DA="03DA
-\global\lccode"03DB="03DB \global\uccode"03DB="03DA
-\global\lccode"03DC="03DD \global\uccode"03DC="03DC
-\global\lccode"03DD="03DD \global\uccode"03DD="03DC
-\global\lccode"03DE="03DF \global\uccode"03DE="03DE
-\global\lccode"03DF="03DF \global\uccode"03DF="03DE
-\global\lccode"03E0="03E1 \global\uccode"03E0="03E0
-\global\lccode"03E1="03E1 \global\uccode"03E1="03E0
-\global\lccode"03F0="03BA \global\uccode"03F0="039A
-\global\lccode"03F1="03C1 \global\uccode"03F1="03A1
-\global\lccode"03F2="03F2 \global\uccode"03F2="03F9
-\global\lccode"03F9="03F2 \global\uccode"03F9="03F9
-\global\lccode"1F00="1F00 \global\uccode"1F00="0391
-\global\lccode"1F01="1F01 \global\uccode"1F01="0391
-\global\lccode"1F02="1F02 \global\uccode"1F02="0391
-\global\lccode"1F03="1F03 \global\uccode"1F03="0391
-\global\lccode"1F04="1F04 \global\uccode"1F04="0391
-\global\lccode"1F05="1F05 \global\uccode"1F05="0391
-\global\lccode"1F06="1F06 \global\uccode"1F06="0391
-\global\lccode"1F07="1F07 \global\uccode"1F07="0391
-\global\lccode"1F08="1F00 \global\uccode"1F08="0391
-\global\lccode"1F09="1F01 \global\uccode"1F09="0391
-\global\lccode"1F0A="1F02 \global\uccode"1F0A="0391
-\global\lccode"1F0B="1F03 \global\uccode"1F0B="0391
-\global\lccode"1F0C="1F04 \global\uccode"1F0C="0391
-\global\lccode"1F0D="1F05 \global\uccode"1F0D="0391
-\global\lccode"1F0E="1F06 \global\uccode"1F0E="0391
-\global\lccode"1F0F="1F07 \global\uccode"1F0F="0391
-\global\lccode"1F10="1F10 \global\uccode"1F10="0395
-\global\lccode"1F11="1F11 \global\uccode"1F11="0395
-\global\lccode"1F12="1F12 \global\uccode"1F12="0395
-\global\lccode"1F13="1F13 \global\uccode"1F13="0395
-\global\lccode"1F14="1F14 \global\uccode"1F14="0395
-\global\lccode"1F15="1F15 \global\uccode"1F15="0395
-\global\lccode"1F18="1F10 \global\uccode"1F18="0395
-\global\lccode"1F19="1F11 \global\uccode"1F19="0395
-\global\lccode"1F1A="1F12 \global\uccode"1F1A="0395
-\global\lccode"1F1B="1F13 \global\uccode"1F1B="0395
-\global\lccode"1F1C="1F14 \global\uccode"1F1C="0395
-\global\lccode"1F1D="1F15 \global\uccode"1F1D="0395
-\global\lccode"1F20="1F20 \global\uccode"1F20="0397
-\global\lccode"1F21="1F21 \global\uccode"1F21="0397
-\global\lccode"1F22="1F22 \global\uccode"1F22="0397
-\global\lccode"1F23="1F23 \global\uccode"1F23="0397
-\global\lccode"1F24="1F24 \global\uccode"1F24="0397
-\global\lccode"1F25="1F25 \global\uccode"1F25="0397
-\global\lccode"1F26="1F26 \global\uccode"1F26="0397
-\global\lccode"1F27="1F27 \global\uccode"1F27="0397
-\global\lccode"1F28="1F20 \global\uccode"1F28="0397
-\global\lccode"1F29="1F21 \global\uccode"1F29="0397
-\global\lccode"1F2A="1F22 \global\uccode"1F2A="0397
-\global\lccode"1F2B="1F23 \global\uccode"1F2B="0397
-\global\lccode"1F2C="1F24 \global\uccode"1F2C="0397
-\global\lccode"1F2D="1F25 \global\uccode"1F2D="0397
-\global\lccode"1F2E="1F26 \global\uccode"1F2E="0397
-\global\lccode"1F2F="1F27 \global\uccode"1F2F="0397
-\global\lccode"1F30="1F30 \global\uccode"1F30="0399
-\global\lccode"1F31="1F31 \global\uccode"1F31="0399
-\global\lccode"1F32="1F32 \global\uccode"1F32="0399
-\global\lccode"1F33="1F33 \global\uccode"1F33="0399
-\global\lccode"1F34="1F34 \global\uccode"1F34="0399
-\global\lccode"1F35="1F35 \global\uccode"1F35="0399
-\global\lccode"1F36="1F36 \global\uccode"1F36="0399
-\global\lccode"1F37="1F37 \global\uccode"1F37="0399
-\global\lccode"1F38="1F30 \global\uccode"1F38="0399
-\global\lccode"1F39="1F31 \global\uccode"1F39="0399
-\global\lccode"1F3A="1F32 \global\uccode"1F3A="0399
-\global\lccode"1F3B="1F33 \global\uccode"1F3B="0399
-\global\lccode"1F3C="1F34 \global\uccode"1F3C="0399
-\global\lccode"1F3D="1F35 \global\uccode"1F3D="0399
-\global\lccode"1F3E="1F36 \global\uccode"1F3E="0399
-\global\lccode"1F3F="1F37 \global\uccode"1F3F="0399
-\global\lccode"1F40="1F40 \global\uccode"1F40="039F
-\global\lccode"1F41="1F41 \global\uccode"1F41="039F
-\global\lccode"1F42="1F42 \global\uccode"1F42="039F
-\global\lccode"1F43="1F43 \global\uccode"1F43="039F
-\global\lccode"1F44="1F44 \global\uccode"1F44="039F
-\global\lccode"1F45="1F45 \global\uccode"1F45="039F
-\global\lccode"1F48="1F40 \global\uccode"1F48="039F
-\global\lccode"1F49="1F41 \global\uccode"1F49="039F
-\global\lccode"1F4A="1F42 \global\uccode"1F4A="039F
-\global\lccode"1F4B="1F43 \global\uccode"1F4B="039F
-\global\lccode"1F4C="1F44 \global\uccode"1F4C="039F
-\global\lccode"1F4D="1F45 \global\uccode"1F4D="039F
-\global\lccode"1F50="1F50 \global\uccode"1F50="03A5
-\global\lccode"1F51="1F51 \global\uccode"1F51="03A5
-\global\lccode"1F52="1F52 \global\uccode"1F52="03A5
-\global\lccode"1F53="1F53 \global\uccode"1F53="03A5
-\global\lccode"1F54="1F54 \global\uccode"1F54="03A5
-\global\lccode"1F55="1F55 \global\uccode"1F55="03A5
-\global\lccode"1F56="1F56 \global\uccode"1F56="03A5
-\global\lccode"1F57="1F57 \global\uccode"1F57="03A5
-\global\lccode"1F59="1F51 \global\uccode"1F59="03A5
-\global\lccode"1F5B="1F53 \global\uccode"1F5B="03A5
-\global\lccode"1F5D="1F55 \global\uccode"1F5D="03A5
-\global\lccode"1F5F="1F57 \global\uccode"1F5F="03A5
-\global\lccode"1F60="1F60 \global\uccode"1F60="03A9
-\global\lccode"1F61="1F61 \global\uccode"1F61="03A9
-\global\lccode"1F62="1F62 \global\uccode"1F62="03A9
-\global\lccode"1F63="1F63 \global\uccode"1F63="03A9
-\global\lccode"1F64="1F64 \global\uccode"1F64="03A9
-\global\lccode"1F65="1F65 \global\uccode"1F65="03A9
-\global\lccode"1F66="1F66 \global\uccode"1F66="03A9
-\global\lccode"1F67="1F67 \global\uccode"1F67="03A9
-\global\lccode"1F68="1F60 \global\uccode"1F68="03A9
-\global\lccode"1F69="1F61 \global\uccode"1F69="03A9
-\global\lccode"1F6A="1F62 \global\uccode"1F6A="03A9
-\global\lccode"1F6B="1F63 \global\uccode"1F6B="03A9
-\global\lccode"1F6C="1F64 \global\uccode"1F6C="03A9
-\global\lccode"1F6D="1F65 \global\uccode"1F6D="03A9
-\global\lccode"1F6E="1F66 \global\uccode"1F6E="03A9
-\global\lccode"1F6F="1F67 \global\uccode"1F6F="03A9
-\global\lccode"1F70="1F70 \global\uccode"1F70="0391
-\global\lccode"1F71="1F71 \global\uccode"1F71="0391
-\global\lccode"1F72="1F72 \global\uccode"1F72="0395
-\global\lccode"1F73="1F73 \global\uccode"1F73="0395
-\global\lccode"1F74="1F74 \global\uccode"1F74="0397
-\global\lccode"1F75="1F75 \global\uccode"1F75="0397
-\global\lccode"1F76="1F76 \global\uccode"1F76="0399
-\global\lccode"1F77="1F77 \global\uccode"1F77="0399
-\global\lccode"1F78="1F78 \global\uccode"1F78="039F
-\global\lccode"1F79="1F79 \global\uccode"1F79="039F
-\global\lccode"1F7A="1F7A \global\uccode"1F7A="03A5
-\global\lccode"1F7B="1F7B \global\uccode"1F7B="03A5
-\global\lccode"1F7C="1F7C \global\uccode"1F7C="03A9
-\global\lccode"1F7D="1F7D \global\uccode"1F7D="03A9
-\global\lccode"1F80="1F80 \global\uccode"1F80="1FBC
-\global\lccode"1F81="1F81 \global\uccode"1F81="1FBC
-\global\lccode"1F82="1F82 \global\uccode"1F82="1FBC
-\global\lccode"1F83="1F83 \global\uccode"1F83="1FBC
-\global\lccode"1F84="1F84 \global\uccode"1F84="1FBC
-\global\lccode"1F85="1F85 \global\uccode"1F85="1FBC
-\global\lccode"1F86="1F86 \global\uccode"1F86="1FBC
-\global\lccode"1F87="1F87 \global\uccode"1F87="1FBC
-\global\lccode"1F88="1F80 \global\uccode"1F88="1FBC
-\global\lccode"1F89="1F81 \global\uccode"1F89="1FBC
-\global\lccode"1F8A="1F82 \global\uccode"1F8A="1FBC
-\global\lccode"1F8B="1F83 \global\uccode"1F8B="1FBC
-\global\lccode"1F8C="1F84 \global\uccode"1F8C="1FBC
-\global\lccode"1F8D="1F85 \global\uccode"1F8D="1FBC
-\global\lccode"1F8E="1F86 \global\uccode"1F8E="1FBC
-\global\lccode"1F8F="1F87 \global\uccode"1F8F="1FBC
-\global\lccode"1F90="1F90 \global\uccode"1F90="1FCC
-\global\lccode"1F91="1F91 \global\uccode"1F91="1FCC
-\global\lccode"1F92="1F92 \global\uccode"1F92="1FCC
-\global\lccode"1F93="1F93 \global\uccode"1F93="1FCC
-\global\lccode"1F94="1F94 \global\uccode"1F94="1FCC
-\global\lccode"1F95="1F95 \global\uccode"1F95="1FCC
-\global\lccode"1F96="1F96 \global\uccode"1F96="1FCC
-\global\lccode"1F97="1F97 \global\uccode"1F97="1FCC
-\global\lccode"1F98="1F90 \global\uccode"1F98="1FCC
-\global\lccode"1F99="1F91 \global\uccode"1F99="1FCC
-\global\lccode"1F9A="1F92 \global\uccode"1F9A="1FCC
-\global\lccode"1F9B="1F93 \global\uccode"1F9B="1FCC
-\global\lccode"1F9C="1F94 \global\uccode"1F9C="1FCC
-\global\lccode"1F9D="1F95 \global\uccode"1F9D="1FCC
-\global\lccode"1F9E="1F96 \global\uccode"1F9E="1FCC
-\global\lccode"1F9F="1F97 \global\uccode"1F9F="1FCC
-\global\lccode"1FA0="1FA0 \global\uccode"1FA0="1FFC
-\global\lccode"1FA1="1FA1 \global\uccode"1FA1="1FFC
-\global\lccode"1FA2="1FA2 \global\uccode"1FA2="1FFC
-\global\lccode"1FA3="1FA3 \global\uccode"1FA3="1FFC
-\global\lccode"1FA4="1FA4 \global\uccode"1FA4="1FFC
-\global\lccode"1FA5="1FA5 \global\uccode"1FA5="1FFC
-\global\lccode"1FA6="1FA6 \global\uccode"1FA6="1FFC
-\global\lccode"1FA7="1FA7 \global\uccode"1FA7="1FFC
-\global\lccode"1FA8="1FA0 \global\uccode"1FA8="1FFC
-\global\lccode"1FA9="1FA1 \global\uccode"1FA9="1FFC
-\global\lccode"1FAA="1FA2 \global\uccode"1FAA="1FFC
-\global\lccode"1FAB="1FA3 \global\uccode"1FAB="1FFC
-\global\lccode"1FAC="1FA4 \global\uccode"1FAC="1FFC
-\global\lccode"1FAD="1FA5 \global\uccode"1FAD="1FFC
-\global\lccode"1FAE="1FA6 \global\uccode"1FAE="1FFC
-\global\lccode"1FAF="1FA7 \global\uccode"1FAF="1FFC
-\global\lccode"1FB0="1FB0 \global\uccode"1FB0="1FB8
-\global\lccode"1FB1="1FB1 \global\uccode"1FB1="1FB9
-\global\lccode"1FB2="1FB2 \global\uccode"1FB2="1FBC
-\global\lccode"1FB3="1FB3 \global\uccode"1FB3="1FBC
-\global\lccode"1FB4="1FB4 \global\uccode"1FB4="1FBC
-\global\lccode"1FB6="1FB6 \global\uccode"1FB6="0391
-\global\lccode"1FB7="1FB7 \global\uccode"1FB7="1FBC
-\global\lccode"1FB8="1FB0 \global\uccode"1FB8="1FB8
-\global\lccode"1FB9="1FB1 \global\uccode"1FB9="1FB9
-\global\lccode"1FBA="1F70 \global\uccode"1FBA="0391
-\global\lccode"1FBB="1F71 \global\uccode"1FBB="0391
-\global\lccode"1FBC="1FB3 \global\uccode"1FBC="1FBC
-\global\lccode"1FBD="1FBD \global\uccode"1FBD="1FBD
-\global\lccode"1FC2="1FC2 \global\uccode"1FC2="1FCC
-\global\lccode"1FC3="1FC3 \global\uccode"1FC3="1FCC
-\global\lccode"1FC4="1FC4 \global\uccode"1FC4="1FCC
-\global\lccode"1FC6="1FC6 \global\uccode"1FC6="0397
-\global\lccode"1FC7="1FC7 \global\uccode"1FC7="1FCC
-\global\lccode"1FC8="1F72 \global\uccode"1FC8="0395
-\global\lccode"1FC9="1F73 \global\uccode"1FC9="0395
-\global\lccode"1FCA="1F74 \global\uccode"1FCA="0397
-\global\lccode"1FCB="1F75 \global\uccode"1FCB="0397
-\global\lccode"1FCC="1FC3 \global\uccode"1FCC="1FCC
-\global\lccode"1FD0="1FD0 \global\uccode"1FD0="1FD8
-\global\lccode"1FD1="1FD1 \global\uccode"1FD1="1FD9
-\global\lccode"1FD2="1FD2 \global\uccode"1FD2="03AA
-\global\lccode"1FD3="1FD3 \global\uccode"1FD3="03AA
-\global\lccode"1FD6="1FD6 \global\uccode"1FD6="0399
-\global\lccode"1FD7="1FD7 \global\uccode"1FD7="03AA
-\global\lccode"1FD8="1FD0 \global\uccode"1FD8="1FD8
-\global\lccode"1FD9="1FD1 \global\uccode"1FD9="1FD9
-\global\lccode"1FDA="1F76 \global\uccode"1FDA="0399
-\global\lccode"1FDB="1F77 \global\uccode"1FDB="0399
-\global\lccode"1FE0="1FE0 \global\uccode"1FE0="1FE8
-\global\lccode"1FE1="1FE1 \global\uccode"1FE1="1FE9
-\global\lccode"1FE2="1FE2 \global\uccode"1FE2="03AB
-\global\lccode"1FE3="1FE3 \global\uccode"1FE3="03AB
-\global\lccode"1FE4="1FE4 \global\uccode"1FE4="03A1
-\global\lccode"1FE5="1FE5 \global\uccode"1FE5="03A1
-\global\lccode"1FE6="1FE6 \global\uccode"1FE6="03A5
-\global\lccode"1FE7="1FE7 \global\uccode"1FE7="03AB
-\global\lccode"1FE8="1FE0 \global\uccode"1FE8="1FE8
-\global\lccode"1FE9="1FE1 \global\uccode"1FE9="1FE9
-\global\lccode"1FEA="1F7A \global\uccode"1FEA="03A5
-\global\lccode"1FEB="1F7B \global\uccode"1FEB="03A5
-\global\lccode"1FEC="1FE5 \global\uccode"1FEC="1FEC
-\global\lccode"1FF2="1FF2 \global\uccode"1FF2="1FFC
-\global\lccode"1FF3="1FF3 \global\uccode"1FF3="1FFC
-\global\lccode"1FF4="1FF4 \global\uccode"1FF4="1FFC
-\global\lccode"1FF6="1FF6 \global\uccode"1FF6="03A9
-\global\lccode"1FF7="1FF7 \global\uccode"1FF7="1FFC
-\global\lccode"1FF8="1F78 \global\uccode"1FF8="039F
-\global\lccode"1FF9="1F79 \global\uccode"1FF9="039F
-\global\lccode"1FFA="1F7C \global\uccode"1FFA="03A9
-\global\lccode"1FFB="1F7D \global\uccode"1FFB="03A9
-\global\lccode"1FFC="1FF3 \global\uccode"1FFC="1FFC
-% \end{macrocode}
-% Next I define the various strings that correspond to the standard \LaTeX\ captions.
-% I first define the strings for monotonic Greek.
-% \begin{macrocode}
-\def\prefacename{Πρόλογος}%
-\def\refname{Αναφορές}%
-\def\abstractname{Περίληψη}%
-\def\bibname{Βιβλιογραφία}%
-\def\chaptername{Κεφάλαιο}%
-\def\appendixname{Παράρτημα}%
-\def\contentsname{Περιεχόμενα}%
-\def\listfigurename{Κατάλογος σχημάτων}%
-\def\listtablename{Κατάλογος πινάκων}%
-\def\indexname{Ευρετήριο}%
-\def\figurename{Σχήμα}%
-\def\tablename{Πίνακας}%
-\def\partname{Μέρος}%
-\def\enclname{Συνημμένα}%
-\def\ccname{Κοινοποίηση}%
-\def\headtoname{Προς}%
-\def\pagename{Σελίδα}%
-\def\seename{βλέπε}%
-\def\alsoname{βλέπε επίσης}%
-\def\proofname{Απόδειξη}%
-\def\glossaryname{Γλωσσάρι}%
-% \end{macrocode}
-% Macro |\polytonicn@mes| is invoked when polytonic Greek is the main language of the document.
-% \begin{macrocode}
-\def\polytonicn@mes{%
- \def\refname{Ἀναφορὲς}%
- \def\indexname{Εὑρετήριο}%
- \def\figurename{Σχῆμα}%
- \def\headtoname{Πρὸς}%
- \def\alsoname{βλέπε ἐπίσης}%
- \def\proofname{Ἀπόδειξη}%
-}
-% \end{macrocode}
-% Macro |\@ncientn@mes| is invoked when ancient Greek is the main language of the document.
-% \begin{macrocode}
-\def\@ncientn@mes{%
- \def\prefacename{Προοίμιον}%
- \def\abstractname{Περίληψις}%
- \def\bibname{Βιβλιογραφία}%
- \def\chaptername{Κεφάλαιον}%
- \def\appendixname{Παράρτημα}%
- \def\contentsname{Περιεχόμενα}%
- \def\listfigurename{Κατάλογος σχημάτων}%
- \def\listtablename{Κατάλογος πινάκων}%
- \def\indexname{Εὑρετήριον}%
- \def\tablename{Πίναξ}%
- \def\partname{Μέρος}%
- \def\enclname{Συνημμένως}%
- \def\ccname{Κοινοποίησις}%
- \def\headtoname{Πρὸς}%
- \def\pagename{Σελὶς}%
- \def\seename{ὃρα}%
- \def\alsoname{ὃρα ὡσαύτως}%
- \def\proofname{Ἀπόδειξις}%
- \def\glossaryname{Γλωσσάριον}%
- \def\refname{Ἀναφοραὶ}%
- \def\figurename{Σχῆμα}%
- \def\headtoname{Πρὸς}%
-}
-% \end{macrocode}
-% I redefine |\today| so as to produce dates in Greek. The
-% names of months are defined by the macro |\gr@month|.
-% \begin{macrocode}
-\def\gr@month{%
- \ifcase\month\or Ιανουαρίου\or Φεβρουαρίου\or Μαρτίου\or Απριλίου\or
- Μαΐου\or Ιουνίου\or Ιουλίου\or Αυγούστου\or
- Σεπτεμβρίου\or Οκτωβρίου\or Νοεμβρίου\or Δεκεμβρίου\fi}
-\def\today{\number\day \space \gr@month\space \number\year}
-% \end{macrocode}
-% When either polytonic Greek or ancient Greek is the main language of the document,
-% then the macro |\gr@c@month| becomes active.
-% \begin{macrocode}
-\def\gr@c@month{%
- \ifcase\month\or Ἰανουαρίου\or Φεβρουαρίου\or Μαρτίου\or Ἀπριλίου\or
- Μαΐου\or Ἰουνίου\or Ἰουλίου\or Αὐγούστου\or Σεπτεμβρίου\or
- Ὀκτωβρίου\or Νοεμβρίου\or Δεκεμβρίου\fi}
-% \end{macrocode}
-% Next, I define a few macros that allow one to access characters
-% that are not usually easily accessible from the keyboard (e.g., the sampi or the
-% koppa symbol). The list includes a command for the unicode symbol GREEK ANO TELEIA,
-% which, in some systems, is confused with MIDDLE DOT. The use of command |\numer@lsign|
-% will be explained later.
-% \begin{macrocode}
-\def\anwtonos{ʹ} %GREEK NUMERAl SIGN
-\let\numer@lsign\anwtonos
-\def\katwtonos{͵} %GREEK LOWER NUMERAL SIGN
-\def\koppa{\char"03DF\relax}
-\def\sampi{\char"03E1\relax}
-\def\Digamma{\char"03DC\relax}
-\def\ddigamma{\char"03DD\relax}
-\def\anoteleia{\char"0387\relax}
-\def\euro{\char"20AC\relax}
-\def\permill{\char"2030\relax}
-% \end{macrocode}
-% Many users prefer the use of the letters sigma and tau instead of the stigma symbol in
-% Greek numerals, therefore, by default the |\stigma| command expands to ``στ''.
-% \begin{macrocode}
-\def\stigma{στ\relax}
-% \end{macrocode}
-% The following commands take care of the basic rules of typography. Note that the first command
-% changes the way space is added after punctuation symbols and the last two commands force \LaTeX\
-% to add indentation space to the first paragraph after a header. Since a number of users need, for
-% their own reasons, to be able to disable this particular feature I have introduced a new package
-% option, namely |noindentfirst|, which restores the default behavior. In order to be able
-% to do this I need the original value of the boolean variable |\@afterindentfalse|.
-% \begin{macrocode}
-\frenchspacing
-\let\@saveafterindentfalse\@afterindentfalse
-\let\@afterindentfalse\@afterindenttrue
-\@afterindenttrue
-% \end{macrocode}
-% Lua\LaTeX\ and \XeLaTeX\ have different ways to load hyphenation patterns. Package
-% \textsf{luahyphenrules} by Javier Bezos facilitates this process for people who
-% want to use Lua\LaTeX\ and the ``traditional'' way to load hyphenation patterns.
-% To ensure proper inclusion of LuaTeX staff, I use the following ``idiom'':
-% \begin{center}
-% |\ifx\directlua\undefined |\texttt{\textit{non Lua\LaTeX\ code}}|\else |%
-% \texttt{\textit{Lua\LaTeX\ code}}|\fi|
-% \end{center}
-% \begin{macrocode}
-\ifx\directlua\undefined\else\RequirePackage{luahyphenrules}\fi
-% \end{macrocode}
-% The code that follows specifies which hyphenation patterns will be active. The \XeLaTeX\ code
-% is quite standard and depends on the \textsf{babel} pattern loading mechanism, while the
-% Lua\LaTeX\ code uses the |\HyphenRules| macro, which has essentially the functionality
-% of the |\selectlanguage| macro.
-% \begin{macrocode}
-\DeclareOption{monogreek}{%
- \ifx\directlua\undefined%
- \language\l@monogreek\else\HyphenRules{monogreek}\fi%
-}
-\DeclareOption{polygreek}{%
- \ifx\directlua\undefined%
- \language\l@polygreek\else\HyphenRules{polygreek}\fi%
- \polytonicn@mes%
- \let\gr@month\gr@c@month%
-}
-\DeclareOption{ancientgreek}{%
- \ifx\directlua\undefined%
- \language\l@ancientgreek\else\HyphenRules{ancientgreek}\fi%
- \@ncientn@mes%
- \let\gr@month\gr@c@month%
-}
-% \end{macrocode}
-% If a user wants to use the stigma symbol in Greek numerals, she should use the
-% |stigma| option.
-% \begin{macrocode}
-\DeclareOption{stigma}{%
- \def\stigma{\char"03DB\relax}
-}
-% \end{macrocode}
-% As noted above, the new option |noindentfirst| restores the default \LaTeX\ behavior of adding no
-% indentation to the first paragraph after any header.
-% \begin{macrocode}
-\DeclareOption{noindentfirst}{%
- \let\@afterindentfalse\@saveafterindentfalse
-}
-% \end{macrocode}
-% Nowadays it is customary in Greece to use Greek numerals without the GREEK NUMERAL SIGN at the end
-% of numeral. Thus, the |nonumeralsign| option disables the typesetting of the GREEK NUMERAL SIGN
-% at the end of Greek numerals.
-% \begin{macrocode}
-\DeclareOption{nonumeralsign}{%
- \let\numer@lsign\relax
-}
-% \end{macrocode}
-% Package \textsf{listings} does not work properly with UTF-8 encoded files. So this
-% option should be used whenever one wants to use this package and see Greek text come out
-% correctly.
-% \begin{macrocode}
-\newif\if@mylistings
-\@mylistingsfalse
-\DeclareOption{listings}{%
- \@mylistingstrue
-}
-% \end{macrocode}
-% By default the |monogreek| option is activated.
-% \begin{macrocode}
-\ExecuteOptions{monogreek}
-\ProcessOptions
-% \end{macrocode}
-% If the user has enabled the |listings| option, then it loads the package \textsf{listings}
-% and makes a few changes to it. In particular, it redefines the command |\lst@DefEC| and the new
-% comamnd makes all characters in the range 128--255 plus the Greek letters to be treated as letters.
-% \begin{macrocode}
-\if@mylistings
-\RequirePackage{listings}
-\lstset{inputencoding=utf8}
-\lst@InputCatcodes
-\gdef\lst@DefEC{%
- \lst@CCECUse \lst@ProcessLetter
- ^^80^^81^^82^^83^^84^^85^^86^^87^^88^^89^^8a^^8b^^8c^^8d^^8e^^8f%
- ^^90^^91^^92^^93^^94^^95^^96^^97^^98^^99^^9a^^9b^^9c^^9d^^9e^^9f%
- ^^a0^^a1^^a2^^a3^^a4^^a5^^a6^^a7^^a8^^a9^^aa^^ab^^ac^^ad^^ae^^af%
- ^^b0^^b1^^b2^^b3^^b4^^b5^^b6^^b7^^b8^^b9^^ba^^bb^^bc^^bd^^be^^bf%
- ^^c0^^c1^^c2^^c3^^c4^^c5^^c6^^c7^^c8^^c9^^ca^^cb^^cc^^cd^^ce^^cf%
- ^^d0^^d1^^d2^^d3^^d4^^d5^^d6^^d7^^d8^^d9^^da^^db^^dc^^dd^^de^^df%
- ^^e0^^e1^^e2^^e3^^e4^^e5^^e6^^e7^^e8^^e9^^ea^^eb^^ec^^ed^^ee^^ef%
- ^^f0^^f1^^f2^^f3^^f4^^f5^^f6^^f7^^f8^^f9^^fa^^fb^^fc^^fd^^fe^^ff%
- ^^^^0396^^^^0388^^^^0389^^^^038a^^^^038c% <--- Begin of Greek Letters
- ^^^^038e^^^^038f^^^^0390^^^^0391^^^^0392%
- ^^^^0393^^^^0394^^^^0395^^^^0396^^^^0397%
- ^^^^0398^^^^0399^^^^039a^^^^039b^^^^039c%
- ^^^^039d^^^^039e^^^^039f^^^^03a0^^^^03a1%
- ^^^^03a3^^^^03a4^^^^03a5^^^^03a6^^^^03a7%
- ^^^^03a8^^^^03a9^^^^03aa^^^^03ab^^^^03ac%
- ^^^^03ad^^^^03ae^^^^03af^^^^03b0^^^^03b1%
- ^^^^03b2^^^^03b3^^^^03b4^^^^03b5^^^^03b6%
- ^^^^03b7^^^^03b8^^^^03b9^^^^03ba^^^^03bb%
- ^^^^03bc^^^^03bd^^^^03be^^^^03bf^^^^03c0%
- ^^^^03c1^^^^03c2^^^^03c3^^^^03c4^^^^03c5%
- ^^^^03c6^^^^03c7^^^^03c8^^^^03c9^^^^03ca%
- ^^^^03cb^^^^03cc^^^^03cd^^^^03ce% <--- End of Greek Letters
- ^^00}%
-\lst@RestoreCatcodes
-\fi
-% \end{macrocode}
-% Now I am going to define the macros that typeset alphabetic Greek numerals. The code
-% is borrowed from the greek option for the babel package.
-% \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{xgreek}{Illegal value (#1) for greeknumeral}}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\anw@true}
-% \begin{macro}{\anw@false}
-% \begin{macro}{\anw@print}
-% When a large number with three \emph{trailing} zeros 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 (|\numer@lsign|).
-%
-% 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{\numer@lsign}}
-\anw@true
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\@greeknumeral}
-% This command is used to get Greek numerals. The command uses
-% |\numer@lsign| to get the NUMERAL SIGN. Obviously, when the
-% user has specified the \texttt{no\-numeral\-sign} option, then numeral
-% comes out without the trailing NUMERAL SIGN. However, when a user
-% wants to typeset a Greek numeral, the numeral must come out correctly,
-% regardless of what appears in headers, etc. And that is exactly the
-% reason why this command is inaccessible to users.
-% 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.
-% \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}
-% The available shorthands for 1.000 (|\@m|) and 10.000
-% (|\@M|) are used 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}
-%
-% What is left to make complete the definition of command |\greeknumeral| is a set of macros to produce
-% the various digits.
-% \begin{macro}{\gr@num@i}
-% \begin{macro}{\gr@num@ii}
-% \begin{macro}{\gr@num@iii}
-% As there is no ``digit'' representing $0$ in this system, the zeros
-% are simply discarded. When there is a large number with three
-% \emph{trailing} zeros 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 α\or β\or γ\or δ\or ε\or \stigma\or ζ\or η\or θ\fi
- \ifnum#1=\z@\else\anw@true\fi\anw@print}
-\def\gr@num@ii#1{%
- \ifcase#1\or ι\or κ\or λ\or μ\or ν\or ξ\or ο\or π\or \koppa\fi
- \ifnum#1=\z@\else\anw@true\fi\gr@num@i}
-\def\gr@num@iii#1{%
- \ifcase#1\or ρ\or σ\or τ\or υ\or φ\or χ\or ψ\or ω\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 α\or β\or γ\or δ\or ε\or \stigma\or ζ\or η\or θ\fi
- \gr@num@iii}
-\def\gr@num@v#1{%
- \ifnum#1=\z@\else\katwtonos\fi
- \ifcase#1\or ι\or κ\or λ\or μ\or ν\or ξ\or ο\or π\or \koppa\fi
- \gr@num@iv}
-\def\gr@num@vi#1{%
- \katwtonos
- \ifcase#1\or ρ\or σ\or τ\or υ\or φ\or χ\or ψ\or ω\or \sampi\fi
- \gr@num@v}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \begin{macro}{\@Greeknumeral}
-% The command |\@Greeknumeral| prints uppercase Greek numerals.
-% The parsing is performed by the macro |\@greeknumeral|. The printing
-% of the NUMERAL SIGN depends on the value of |\numer@lsign|.
-% \begin{macrocode}
-\def\@Greeknumeral#1{%
- \expandafter\MakeUppercase\expandafter{\@greeknumeral{#1}}}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\greeknumeral}
-% This command prints lowercase Greek numerals and the NUMERAL SIGN
-% is always printed.
-% \begin{macrocode}
-\def\greeknumeral#1{%
- \let\@numer@lsign\numer@lsign%
- \let\numer@lsign\anwtonos%
- \@greeknumeral{#1}
- \let\numer@lsign\@numer@lsign}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\Greeknumeral}
-% This command prints uppercase Greek numerals and the NUMERAL SIGN
-% is always printed.
-% \begin{macrocode}
-\def\Greeknumeral#1{%
- \let\@numer@lsign\numer@lsign%
- \let\numer@lsign\anwtonos%
- \@Greeknumeral{#1}
- \let\numer@lsign\@numer@lsign}
-% \end{macrocode}
-% \end{macro}
-%
-% The alphabetic numbering system is not the only numbering system employed by Greeks.
-% In fact, Greeks used various systems that are now known as {\em acrophonic} numbering
-% systems. Many scholars are familiar with the acrophonic Attic numbering system and the
-% the command |\atticnum| can be used to generate acrophonic Attic numerals.
-% The acrophonic Attic numbering system, like the Roman one, employs
-% letters to denote important numbers. Multiple occurrence of a letter denote
-% a multiple of the ``important'' number, e.g., the letter Ι denotes 1, so
-% ΙΙΙ denotes 3. Here are the basic digits used in the acrophonic Attic numbering
-% system:
-% \begin{itemize}
-% \item Ι denotes the number one (1)
-% \item Π denotes the number five (5)
-% \item Δ denotes the number ten (10)
-% \item Η denotes the number one hundred (100)
-% \item Χ denotes the number one thousand (1000)
-% \item Μ denotes the number ten thousands (10000)
-%\end{itemize}
-% Moreover, the letters Δ, Η, Χ, and Μ under the letter ^^^^^^010143 (a form of Π)
-% denote five times their original value. In particular, the symbol ^^^^^10144, denotes
-% the number 50, the symbol ^^^^^10145 denotes the number 500, the symbol ^^^^^10146
-% denotes the number 5000, and the symbol ^^^^^10147 denotes the number 50,000. It
-% must be noted that the numbering system does not provide negative numerals or a symbol for
-% zero.
-%\begin{macro}{\@@atticnum}
-% Now, let me definite the macro
-% |\@@atticnum|. This macro uses one integer variable (or counter in
-% \TeX's jargon.)
-% \begin{macrocode}
-\newcount\@attic@num
-% \end{macrocode}
-% The macro |\@@atticnum| is also defined as a robust command.
-% \begin{macrocode}
-\DeclareRobustCommand*{\@@atticnum}[1]{%
-% \end{macrocode}
-% After assigning to variable |\@attic@num| the value of the macro's argument,
-% we make sure that the argument is in the expected range, i.e., it is greater
-% than zero, and less or equal to $249999$. In case it isn't, it simply
-% produces a |\space|, warns the user about it and quits. Although, the
-% |\atticnum| macro is capable to produce an Athenian numeral for even greater
-% intergers, the following argument by Claudio Beccari convised me to place
-% this upper limit:
-% \begin{quote}
-% According to psychological perception studies (that ancient Athenians
-% and Romans perfectly knew without needing to study Freud and Jung)
-% living beings (which includes at least all vertebrates, not only
-% humans) can perceive up to four randomly set objects of the same kind
-% without the need of counting, the latter activity being a specific
-% acquired ability of human kind; the biquinary numbering notation
-% used by the Athenians and the Romans exploits this natural
-% characteristic of human beings.
-% \end{quote}
-% \begin{macrocode}
- \@attic@num#1\relax
- \ifnum\@attic@num<\@ne%
- \space%
- \PackageWarning{xgreek}{%
- Illegal value (\the\@attic@num) for acrophonic
- Attic numeral}%
- \else\ifnum\@attic@num>249999%
- \space%
- \PackageWarning{xgreek}{%
- Value too large (\the\@attic@num) for acrophonic
- Attic numeral}%
- \else
-% \end{macrocode}
-% Having done all the necessary checks, it is possible to proceed with the actual
-% computation. If the number is greater than $49999$, then it certainly
-% has at least one ^^^^^10147 ``digit''. The macro finds all such digits by continuously
-% subtracting $50000$ from |\@attic@num|, until |\@attic@num| becomes less than
-% $50000$.
-% \begin{macrocode}
- \@whilenum\@attic@num>49999\do{%
- ^^^^^^010147\advance\@attic@num-50000}%
-% \end{macrocode}
-% Next the macro checks for tens of thousands.
-% \begin{macrocode}
- \@whilenum\@attic@num>9999\do{%
- M\advance\@attic@num-\@M}%
-% \end{macrocode}
-% Since a number can have only one ^^^^^10146 ``digit'' (equivalent to 5000), it
-% is easy to check whether is should have one and produce the corresponding numeral when
-% it does have one.
-% \begin{macrocode}
- \ifnum\@attic@num>4999%
- ^^^^^^010146\advance\@attic@num-5000%
- \fi\relax
-% \end{macrocode}
-% The macro should also check for thousands, the same way it checked for tens of thousands.
-% \begin{macrocode}
- \@whilenum\@attic@num>999\do{%
- Χ\advance\@attic@num-\@m}%
-% \end{macrocode}
-% Since a numeral can have at most one ^^^^^10145 ``digit'' (equivalent to 500), this should be
-% handled the way the macro handled the case of the five thousands ``digit''.
-% \begin{macrocode}
- \ifnum\@attic@num>499%
- ^^^^^^010145\advance\@attic@num-500%
- \fi\relax
-% \end{macrocode}
-% It is time to check hundreds, which follow the same pattern as thousands.
-% \begin{macrocode}
- \@whilenum\@attic@num>99\do{%
- Η\advance\@attic@num-100}%
-% \end{macrocode}
-% A numeral can have only one ^^^^^10144 ``digit'' (equivalent to 50).
-% \begin{macrocode}
- \ifnum\@attic@num>49%
- ^^^^^^010144\advance\@attic@num-50%
- \fi\relax
-% \end{macrocode}
-% The macro now checks now for tens digit.
-% \begin{macrocode}
- \@whilenum\@attic@num>9\do{%
- Δ\advance\@attic@num by-10}%
-% \end{macrocode}
-% Finally, it has to check for fives and the digits 1, 2, 3, and 4.
-% \begin{macrocode}
- \@whilenum\@attic@num>4\do{%
- Π\advance\@attic@num-5}%
- \ifcase\@attic@num\or Ι\or ΙΙ\or ΙΙΙ\or ΙΙΙΙ\fi%
- \fi\fi}
-% \end{macrocode}
-%\end{macro}
-%
-%\begin{macro}{\@atticnum}
-% The command |\@atticnum| has one argument, which
-% is a counter. It calls the command |\@@atticnum| to process the value of
-% the counter.
-% \begin{macrocode}
-\def\@atticnum#1{%
- \expandafter\@@atticnum\expandafter{\the#1}}
-% \end{macrocode}
-%\end{macro}
-%\begin{macro}{\atticnum}
-% The command |\atticnum| is a wrapper that declares
-% a new counter in a local scope, assigns to it the value of the argument of the command
-% and calls the macro |\@atticnum|. This way the command can process correctly
-% either a number or a counter.
-% \begin{macrocode}
-\def\atticnum#1{%
- \@attic@num#1\relax
- \@atticnum{\@attic@num}}
-% \end{macrocode}
-%\end{macro}
-%
-% \begin{macro}{\greek@alph}
-% \begin{macro}{\greek@Alph}
-% Here I redefine the macros |\@alph| and |\@Alph|. First, I define some placeholders
-% \begin{macrocode}
-\let\latin@alph\@alph
-\let\latin@Alph\@Alph
-% \end{macrocode}
-% Then I 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 there are appendices).
-% \begin{macrocode}
-\def\greek@alph#1{\expandafter\@greeknumeral\expandafter{\the#1}}
-\def\greek@Alph#1{\expandafter\@Greeknumeral\expandafter{\the#1}}
-% \end{macrocode}
-% By default Greek alphabetic enumerals instaed of Latin numerals are used to enumerate items in an
-% enumeration environment.
-% \begin{macrocode}
- \let\@alph\greek@alph
- \let\@Alph\greek@Alph
-% \end{macrocode}
-% If for some reason, one needs to have the Latin numerals back, then she has to invoke command
-% |\nogreekalph|. And if she wants to switch back, then she has to use the |\greekalph|
-% command:
-% \begin{macrocode}
-\def\nogreekalph{%
- \let\@alph\latin@alph
- \let\@Alph\latin@Alph}
-\def\greekalph{%
- \let\@alph\greek@alph
- \let\@Alph\greek@Alph}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\setlanguage}
-% We provide the |\setlanguage| command which
-% activates the hypehnation patterns of some other language. It is similar
-% to babel's |\selectlanguage|, but we opted to use a new name to avoid possible name conflicts.
-% Valid arguments include |monogreek|, |polygreek|, |ancientgreek|, and |american|. As was noted
-% previously, package \textsf{luahyphenrules} provides the command |\HyphenRules| which has exactly
-% the same functionality as this command. So when using Lua\LaTeX\ users will actually use the
-% |\HyphenRules| command.
-% \begin{macrocode}
-\ifx\directlua\undefined%
- \def\setlanguage#1{%
- \expandafter\ifx\csname l@#1\endcsname\relax%
- \typeout{^^J Error: No hyphenation pattern for}%
- \typeout{ language #1 are loaded,}%
- \typeout{ default hyphenation patterns are used.^^J}%
- \language=0%
- \else\language=\csname l@#1\endcsname\fi}
-\else
- \let\setlanguage\HyphenRules
-\fi
-% \end{macrocode}
-% \end{macro}
-% The macros |\grtoday| and |\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. In addition, the two commands differ in that the
-% later produces the Greek numerals in uppercase.
-% \begin{macrocode}
-\def\grtoday{%
- \expandafter\greeknumeral\expandafter{\the\day}\space
- \gr@c@month\space
- \expandafter\greeknumeral\expandafter{\the\year}}
-\def\Grtoday{%
- \expandafter\Greeknumeral\expandafter{\the\day}\space
- \gr@c@month\space
- \expandafter\Greeknumeral\expandafter{\the\year}}
-%</xgreek>
-% \end{macrocode}
-%
-% \Finale