summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-06-24 23:45:45 +0000
committerKarl Berry <karl@freefriends.org>2013-06-24 23:45:45 +0000
commitd6f69adcdd2a4f41183336025041848a5dee6398 (patch)
tree89563d7c7df821eb03996563d1d352d89e96d160
parent8e6beb966f4cb90d2deac853ee674032892fc7ab (diff)
babel-greek (24jun13)
git-svn-id: svn://tug.org/texlive/trunk@30912 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/README56
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/README.html77
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/greek.pdfbin206574 -> 208265 bytes
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/test-greek.pdfbin0 -> 187861 bytes
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/test-greek.tex332
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.pdfbin0 -> 47917 bytes
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.tex306
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/usage.pdfbin172121 -> 172121 bytes
-rw-r--r--Master/texmf-dist/doc/generic/babel-greek/usage.tex2
-rw-r--r--Master/texmf-dist/source/generic/babel-greek/greek.dtx513
-rw-r--r--Master/texmf-dist/tex/generic/babel-greek/greek.ldf340
11 files changed, 1272 insertions, 354 deletions
diff --git a/Master/texmf-dist/doc/generic/babel-greek/README b/Master/texmf-dist/doc/generic/babel-greek/README
index 6cead21490d..ee2b1a991f7 100644
--- a/Master/texmf-dist/doc/generic/babel-greek/README
+++ b/Master/texmf-dist/doc/generic/babel-greek/README
@@ -17,23 +17,42 @@ In 1997, Apostolos Syropoulos added support for the Greek language to the
"babel" package. The file ``greek.ldf`` provides options for monotonic
(single-diacritic) and polytonic (multiple-diacritic) modes of writing.
-Currently, it only works with LaTeX and 8-bit TeX engines. Users of the
-XeTeX and LuaTeX engines are advised to use the polyglossia_ package
-instead.
+There is now partial support for Unicode-aware TeX engines (XeTeX/LuaTeX).
+However, users of the XeTeX and LuaTeX engines are advised to use the
+polyglossia_ package.
News
----
-:2013-05-17: * New maintainer.
- * The encoding definition file ``lgrenc.def`` moved to the
- greek-fontenc_ package.
+.. class:: borderless
+
+===== ========== ===========================================================
+1.4 2013-05-17 New maintainer.
+.. The encoding definition file ``lgrenc.def`` moved to the
+ greek-fontenc_ package.
+
+1.5 2013-06-21 bugfixes and cleanup,
+.. LICR macros in string definitions,
+.. LGR font encoding not used with XeTeX/LuaTeX,
+.. input "xgreek-fixes.def" from polyglossia_ with Xe/LuaTeX.
+===== ========== ===========================================================
+
Requirements
------------
-The "babel-greek" package requires the babel_ base package, `Greek text
-fonts`_ in the LGR encoding, and the encoding definition file ``lgrenc.def``
-from the greek-fontenc_ package.
+Typesetting Greek texts requires a `font containing Greek glyphs`__.
+
+The "babel-greek" package requires the babel_ base package. `Greek text
+fonts`_ in the LGR encoding and the encoding definition file ``lgrenc.def``
+from the greek-fontenc_ package are required with 8-bit TeX engines.
+
+For correct up/downcasing with XeTeX/LuaTeX, the file ``xgreek-fixes.def``
+from polyglossia_ is required.
+
+"plain" TeX is currently not supported. Patches are welcome.
+
+__ http://www.ctan.org/topic/font-greek
Installation
@@ -58,20 +77,30 @@ Otherwise, make sure LaTeX can find the required files:
Usage
-----
-Pass the "greek" or "polutonikogreek" options to babel::
+Pass the "greek" option to babel::
\usepackage[greek]{babel}
+For polytonic greek, set the language attribute "polutoniko"::
+
+ \languageattribute{greek}{polutoniko}
+
For details see `<usage.pdf>`_, `<greek.pdf>`_ and the babel_ documentation.
Literal input of Greek characters is possible with the greek-inputenc_
-package.
+package and XeTeX/LuaTeX.
Greek text fonts
----------------
+With the XeTeX or LuaTeX engines, the user should ensure that the choosen
+font contains the required glyphs (the default Latin Modern fonts miss
+them). Examples for suitable fonts are the CM-unicode_ or the `Linux
+Libertine`_ OpenType fonts as well as any system-wide installed OTF fonts
+that support Greek (e.g. `Deja Vu`_).
+
The LGR font encoding is the de-facto standard for typesetting Greek with
-(8-bit) LaTeX. Fonts in this encoding include the `CB fonts`_ (matching CM),
+8-bit LaTeX. Fonts in this encoding include the `CB fonts`_ (matching CM),
grtimes_ (Greek Times), Kerkis_ (matching URW Bookman), and the `GFS font
collection`_. Setup of these fonts as Greek variant to matching Latin fonts
is facilitated by the substitutefont_ package.
@@ -97,11 +126,14 @@ font-encoding comprising Latin and Greek like the hypothetic T7 or Unicode
.. _babel: http://www.ctan.org/pkg/babel
.. _fontspec: http://www.ctan.org/pkg/fontspec
.. _CB Fonts: http://www.ctan.org/pkg/cbgreek-complete
+.. _CM-unicode: http://www.ctan.org/pkg/cm-unicode
+.. _Deja Vu: http://dejavu-fonts.org
.. _grtimes: http://www.ctan.org/pkg/grtimes
.. _greek-fontenc: http://www.ctan.org/pkg/greek-fontenc
.. _greek-inputenc: http://www.ctan.org/pkg/greek-inputenc
.. _GFS font collection: http://www.ctan.org/pkg/gfs
.. _Kerkis: http://www.ctan.org/pkg/kerkis
.. _lgrx: http://www.ctan.org/pkg/lgrx
+.. _Linux Libertine: http://www.ctan.org/pkg/libertine
.. _polyglossia: http://www.ctan.org/pkg/polyglossia
.. _substitutefont: http://www.ctan.org/pkg/substitutefont
diff --git a/Master/texmf-dist/doc/generic/babel-greek/README.html b/Master/texmf-dist/doc/generic/babel-greek/README.html
index a278d42b4e8..680be11a675 100644
--- a/Master/texmf-dist/doc/generic/babel-greek/README.html
+++ b/Master/texmf-dist/doc/generic/babel-greek/README.html
@@ -32,26 +32,59 @@ Greek language and script via the <a class="reference external" href="http://www
<p>In 1997, Apostolos Syropoulos added support for the Greek language to the
“babel” package. The file <tt class="literal">greek.ldf</tt> provides options for monotonic
(single-diacritic) and polytonic (multiple-diacritic) modes of writing.</p>
-<p>Currently, it only works with LaTeX and 8-bit TeX engines. Users of the
-XeTeX and LuaTeX engines are advised to use the <a class="reference external" href="http://www.ctan.org/pkg/polyglossia">polyglossia</a> package
-instead.</p>
+<p>There is now partial support for Unicode-aware TeX engines (XeTeX/LuaTeX).
+However, users of the XeTeX and LuaTeX engines are advised to use the
+<a class="reference external" href="http://www.ctan.org/pkg/polyglossia">polyglossia</a> package.</p>
<div class="section" id="news">
<h1>News</h1>
-<dl class="field-list simple">
-<dt>2013-05-17</dt>
-<dd><ul class="simple">
-<li><p>New maintainer.</p></li>
-<li><p>The encoding definition file <tt class="literal">lgrenc.def</tt> moved to the
-<a class="reference external" href="http://www.ctan.org/pkg/greek-fontenc">greek-fontenc</a> package.</p></li>
-</ul>
-</dd>
-</dl>
+<table class="borderless">
+<colgroup>
+<col width="7%" />
+<col width="14%" />
+<col width="80%" />
+</colgroup>
+<tbody>
+<tr><td><p>1.4</p></td>
+<td><p>2013-05-17</p></td>
+<td><p>New maintainer.</p></td>
+</tr>
+<tr><td><!-- -->
+</td>
+<td>&nbsp;</td>
+<td><p>The encoding definition file <tt class="literal">lgrenc.def</tt> moved to the
+<a class="reference external" href="http://www.ctan.org/pkg/greek-fontenc">greek-fontenc</a> package.</p></td>
+</tr>
+<tr><td><p>1.5</p></td>
+<td><p>2013-06-21</p></td>
+<td><p>bugfixes and cleanup,</p></td>
+</tr>
+<tr><td><!-- -->
+</td>
+<td>&nbsp;</td>
+<td><p>LICR macros in string definitions,</p></td>
+</tr>
+<tr><td><!-- -->
+</td>
+<td>&nbsp;</td>
+<td><p>LGR font encoding not used with XeTeX/LuaTeX,</p></td>
+</tr>
+<tr><td><!-- -->
+</td>
+<td>&nbsp;</td>
+<td><p>input “xgreek-fixes.def” from <a class="reference external" href="http://www.ctan.org/pkg/polyglossia">polyglossia</a> with Xe/LuaTeX.</p></td>
+</tr>
+</tbody>
+</table>
</div>
<div class="section" id="requirements">
<h1>Requirements</h1>
-<p>The “babel-greek” package requires the <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> base package, <a class="reference internal" href="#greek-text-fonts">Greek text
-fonts</a> in the LGR encoding, and the encoding definition file <tt class="literal">lgrenc.def</tt>
-from the <a class="reference external" href="http://www.ctan.org/pkg/greek-fontenc">greek-fontenc</a> package.</p>
+<p>Typesetting Greek texts requires a <a class="reference external" href="http://www.ctan.org/topic/font-greek">font containing Greek glyphs</a>.</p>
+<p>The “babel-greek” package requires the <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> base package. <a class="reference internal" href="#greek-text-fonts">Greek text
+fonts</a> in the LGR encoding and the encoding definition file <tt class="literal">lgrenc.def</tt>
+from the <a class="reference external" href="http://www.ctan.org/pkg/greek-fontenc">greek-fontenc</a> package are required with 8-bit TeX engines.</p>
+<p>For correct up/downcasing with XeTeX/LuaTeX, the file <tt class="literal"><span class="pre">xgreek-fixes.def</span></tt>
+from <a class="reference external" href="http://www.ctan.org/pkg/polyglossia">polyglossia</a> is required.</p>
+<p>“plain” TeX is currently not supported. Patches are welcome.</p>
</div>
<div class="section" id="installation">
<h1>Installation</h1>
@@ -69,17 +102,25 @@ ending in <tt class="literal">.dtx</tt> through LaTeX.</p></li>
</div>
<div class="section" id="usage">
<h1>Usage</h1>
-<p>Pass the “greek” or “polutonikogreek” options to babel:</p>
+<p>Pass the “greek” option to babel:</p>
<pre class="literal-block">\usepackage[greek]{babel}
</pre>
+<p>For polytonic greek, set the language attribute “polutoniko”:</p>
+<pre class="literal-block">\languageattribute{greek}{polutoniko}
+</pre>
<p>For details see <a class="reference external" href="usage.pdf">usage.pdf</a>, <a class="reference external" href="greek.pdf">greek.pdf</a> and the <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> documentation.
Literal input of Greek characters is possible with the <a class="reference external" href="http://www.ctan.org/pkg/greek-inputenc">greek-inputenc</a>
-package.</p>
+package and XeTeX/LuaTeX.</p>
</div>
<div class="section" id="greek-text-fonts">
<h1>Greek text fonts</h1>
+<p>With the XeTeX or LuaTeX engines, the user should ensure that the choosen
+font contains the required glyphs (the default Latin Modern fonts miss
+them). Examples for suitable fonts are the <a class="reference external" href="http://www.ctan.org/pkg/cm-unicode">CM-unicode</a> or the <a class="reference external" href="http://www.ctan.org/pkg/libertine">Linux
+Libertine</a> OpenType fonts as well as any system-wide installed OTF fonts
+that support Greek (e.g. <a class="reference external" href="http://dejavu-fonts.org">Deja Vu</a>).</p>
<p>The LGR font encoding is the de-facto standard for typesetting Greek with
-(8-bit) LaTeX. Fonts in this encoding include the <a class="reference external" href="http://www.ctan.org/pkg/cbgreek-complete">CB fonts</a> (matching CM),
+8-bit LaTeX. Fonts in this encoding include the <a class="reference external" href="http://www.ctan.org/pkg/cbgreek-complete">CB fonts</a> (matching CM),
<a class="reference external" href="http://www.ctan.org/pkg/grtimes">grtimes</a> (Greek Times), <a class="reference external" href="http://www.ctan.org/pkg/kerkis">Kerkis</a> (matching URW Bookman), and the <a class="reference external" href="http://www.ctan.org/pkg/gfs">GFS font
collection</a>. Setup of these fonts as Greek variant to matching Latin fonts
is facilitated by the <a class="reference external" href="http://www.ctan.org/pkg/substitutefont">substitutefont</a> package.</p>
diff --git a/Master/texmf-dist/doc/generic/babel-greek/greek.pdf b/Master/texmf-dist/doc/generic/babel-greek/greek.pdf
index ad572570849..5ea9214b5fb 100644
--- a/Master/texmf-dist/doc/generic/babel-greek/greek.pdf
+++ b/Master/texmf-dist/doc/generic/babel-greek/greek.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/babel-greek/test-greek.pdf b/Master/texmf-dist/doc/generic/babel-greek/test-greek.pdf
new file mode 100644
index 00000000000..1acf4b34c40
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/babel-greek/test-greek.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/babel-greek/test-greek.tex b/Master/texmf-dist/doc/generic/babel-greek/test-greek.tex
new file mode 100644
index 00000000000..fff605eb988
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/babel-greek/test-greek.tex
@@ -0,0 +1,332 @@
+\documentclass[a4paper]{article}
+\usepackage{cmap} % fix search and cut-and-paste in Acrobat Reader
+\usepackage[LGR,T1]{fontenc}
+\usepackage[utf8]{inputenc}
+% \usepackage{textalpha}
+\usepackage{textcomp}
+\usepackage{hyperref,bookmark}
+\usepackage{parskip}
+\usepackage{booktabs}
+
+\usepackage{lmodern}
+% \usepackage{kerkis}
+% \usepackage{gfsdidot}
+
+\usepackage[greek,english]{babel}
+% \languageattribute{greek}{polutoniko}
+
+\DeclareTextCommandDefault{\ensuregreek}{\textgreek}
+
+\begin{document}
+
+% \message{Latin encoding is \latinencoding}
+
+\section*{Test the Greek support for Babel}
+
+The babel option ``greek'' activates the support for the Greek language
+defined in the file ``greek.ldf'' (source ``greek.dtx'').
+
+\section{Language Switch}
+
+The declaration \verb|\selectlanguage| switches between languages.
+
+\selectlanguage{greek}
+Ὁ Σύλλογος Ἑλλήνων Φίλων τοῦ TeX, γνωστὸς καὶ ὡς
+«Ἕλληνες Φίλοι τοῦ \TeX» (ΕΦΤ γιὰ συντομία) ἀποτελεῖ τὴν ἐπίσημη Τοπικὴ Ὁμάδα
+τοῦ \TeX{} ἢ τὸ ἑλληνικὸ \textlatin{\TeX{} LUG (Local Users Group)}.
+\selectlanguage{english}
+
+The macro \verb|\foreignlanguage| sets its second argument in the specified
+language. This is intended for short text parts like
+\foreignlanguage{greek}{Βιβλιοθήκη}.
+
+\section{Font Encoding}
+
+In Greek text parts, the font encoding is automatically set to LGR if an
+8-bit TeX engine is used. (See test-unicode-greek.tex for usage of
+babel-greek with XeTeX or LuaTeX.)
+
+LGR has Greek characters in the slots reserved in a TeX \emph{standard text
+font encoding}. This means you need an explicit font encoding change for
+every Latin letter and some other symbols if the current font encoding is
+LGR.
+
+Switching between Latin and Greek script/font encoding is possible without
+switching the Babel language using the declarations \verb|\latintext|,
+\verb|\greektext| and the macros \verb|\textlatin|, \verb|\textgreek|. These
+commands do not start a new paragraph:
+
+\greektext Φίλων τοῦ \textlatin{TeX} (ΕΦΤ) --
+\latintext Friends (\textgreek{F\'ilwn}) of TeX.
+
+``greek.ldf'' has some workarounds, so that macros relying on Latin
+characters in the ``right'' positions keep working. We test, that these
+definitions do not overwrite the selection of pre-composed characters for
+``copyright'' and ``registered trade mark'' by ``textcomp'' (try copy and
+paste from the PDF output):
+
+Greek (LGR): \ensuregreek{Α \& Ω, \textcopyright{} \textregistered{}
+\texttrademark{}, © ® ™ } \\
+Latin: A \& O.
+
+To prevent Roman numerals being typeset in Greek letters we need to adopt
+the internal LaTeX commands. Note that this may cause errors when roman
+numerals are used in a situation where the macros need to be expanded:
+
+\makeatletter
+Greek: \ensuregreek{
+\@roman{1}, \@roman{2}, \@roman{3}, \@roman{4}, \ldots, \@roman{1975}
+\@Roman{1}, \@Roman{2}, \@Roman{3}, \@Roman{4}, \ldots, \@Roman{1975}
+}
+
+Latin:
+\@roman{1}, \@roman{2}, \@roman{3}, \@roman{4}, \ldots, \@roman{1975}
+\@Roman{1}, \@Roman{2}, \@Roman{3}, \@Roman{4}, \ldots, \@Roman{1975}
+\makeatother
+
+Enumerated lists:
+
+\selectlanguage{greek}
+\begin{enumerate}
+ \item $\leftarrow$ 1
+ \begin{enumerate}
+ \item $\leftarrow$ 1.1
+ \begin{enumerate}
+ \item $\leftarrow$ 1.1.1
+ \begin{enumerate}
+ \item $\leftarrow$ 1.1.1.1
+ \item $\leftarrow$ 1.1.1.2
+ \end{enumerate}
+ \item $\leftarrow$ 1.1.2
+ \end{enumerate}
+ \end{enumerate}
+\end{enumerate}
+\selectlanguage{english}
+
+
+\section{MakeUppercase, MakeLowercase}
+
+Capital Greek letters have diacritics (except the dialytika and sub-iota) to
+the left (instead of above) and drop them in uppercase, e.g.
+\ensuregreek{μαΐστρος $\mapsto$ \MakeUppercase{μαΐστρος}}.
+
+Upcased letters with diacritics keep the dialytika. This is implemented for
+all input variants of diacritics with dialytika. (Babel has ``composite
+command'' definitions to ensure this also works for accent characters
+"upcased" to the charcter No 159.)
+
+\foreignlanguage{greek}{\"i \"'i \"`i \"~i \'"i \`"i \~"i
+ \"u \"\'u \"\`u \"\~u
+$\mapsto$ \MakeUppercase{\"i \"'i \"`i \"~i \'"i \`"i \~"i
+ \"u \"\'u \"\`u \"\~u }}
+
+Tonos and dasia mark a \emph{hiatus} (break-up of a diphtong) if
+placed on the first vowel of a diphtong
+(\ensuregreek{\'ai, \'au, \'ei, \'>ai, \>'au, \>'ei}).
+A dialytika must be placed on the second vowel if they are dropped:
+(\ensuregreek{\MakeUppercase{\'ai, \'au, \'ei, \'>ai, \>'au, \>'ei}}).
+
+\selectlanguage{greek}
+% from teubner: άυλος/ΑΫΛΟΣ
+\'aulos $\mapsto$ \MakeUppercase{\'aulos},
+\>'aulos $\mapsto$ \MakeUppercase{\>'aulos},
+% from http://diacritics.typo.cz/index.php?id=69 μάινα -> ΜΑΪΝΑ
+m\'aina $\mapsto$ \MakeUppercase{m\'aina},
+% from http://de.wikipedia.org/wiki/Neugriechische_Orthographie#Das_Trema
+% κέικ, ἀυπνία/αϋπνία
+k\'eik, $\mapsto$ \MakeUppercase{k\'eik}
+\>aupn\'ia $\mapsto$ \MakeUppercase{\>aupn\'ia}
+\selectlanguage{english}
+
+There are several alternative styles for the capitalized sub-iota.
+
+The following subsections test MakeUppercase and MakeLowercase with all
+characters defined in lgrenc.dfu:
+
+\subsection{Greek and Coptic}
+
+\newcommand{\GreekAndCoptic}{\ensuregreek{
+ʹ͵ͺ; ΄ ΅Ά·ΈΉΊΌΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫϘϚϜϠ}}
+\newcommand{\greekandcoptic}{\ensuregreek{
+άέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώϙϛϝϟϡ}}
+
+Characters of the Greek and Coptic Unicode Block:
+
+\begin{quote}
+ \GreekAndCoptic\\
+ \greekandcoptic
+\end{quote}
+
+MakeUppercase:
+
+\begin{quote}
+ \MakeUppercase{\GreekAndCoptic}\\
+ \MakeUppercase{\greekandcoptic}
+\end{quote}
+
+Letters and sub-iota upcased, other diacritics except dialytika dropped.
+
+There is no capital Koppa in LGR, therefore \ensuregreek{ϟ} is left
+unchanged with MakeUppercase.
+
+
+MakeLowercase:
+
+\begin{quote}
+ \MakeLowercase{\GreekAndCoptic}\\
+ \MakeLowercase{\greekandcoptic}
+\end{quote}
+
+The lowercase of \ensuregreek{Σ} is the «auto-sigma» (\verb+\textautosigma+):
+\ensuregreek{ΣΣ $\mapsto$ \MakeLowercase{ΣΣ}}. Add a ZWNJ or use the
+\verb+\noboundary+ macro to prevent conversion to final sigma:
+\ensuregreek{\MakeLowercase{ΣΣ‌}}. The lowercase of GREEK LETTER STIGMA
+\ensuregreek{Ϛ} is \ensuregreek{\MakeLowercase{Ϛ}} not \verb|\textvarstigma|
+(\ensuregreek\textvarstigma).
+
+% \newpage
+
+\subsection{Greek extended}
+
+MakeUppercase:
+
+\selectlanguage{greek}
+
+\MakeUppercase{ ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ }\\
+\MakeUppercase{ ἐ ἑ ἒ ἓ ἔ ἕ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ }\\
+\MakeUppercase{ ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ }\\
+\MakeUppercase{ ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ }\\
+\MakeUppercase{ ὀ ὁ ὂ ὃ ὄ ὅ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ }\\
+\MakeUppercase{ ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ Ὑ Ὓ Ὕ Ὗ }\\
+\MakeUppercase{ ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ }\\
+\MakeUppercase{ ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ }\\
+\MakeUppercase{ ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ }\\
+\MakeUppercase{ ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ }\\
+\MakeUppercase{ ᾠ ᾡ ᾢ ᾣ ᾤ ᾥ ᾦ ᾧ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ }\\
+\MakeUppercase{ ᾰ ᾱ ᾲ ᾳ ᾴ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ }\\
+\MakeUppercase{ ῀ ῁ ῂ ῃ ῄ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ }\\
+\MakeUppercase{ ῐ ῑ ῒ ΐ ῖ ῗ Ῐ Ῑ Ὶ Ί ῝ ῞ ῟ }\\
+\MakeUppercase{ ῠ ῡ ῢ ΰ ῤ ῥ ῦ ῧ Ῠ Ῡ Ὺ Ύ Ῥ ῭ ΅ ` }\\
+\MakeUppercase{ ῲ ῳ ῴ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ }
+\selectlanguage{english}
+
+MakeLowercase:
+
+\selectlanguage{greek}
+\MakeLowercase{ ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ }\\
+\MakeLowercase{ ἐ ἑ ἒ ἓ ἔ ἕ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ }\\
+\MakeLowercase{ ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ }\\
+\MakeLowercase{ ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ }\\
+\MakeLowercase{ ὀ ὁ ὂ ὃ ὄ ὅ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ }\\
+\MakeLowercase{ ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ Ὑ Ὓ Ὕ Ὗ }\\
+\MakeLowercase{ ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ }\\
+\MakeLowercase{ ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ }\\
+\MakeLowercase{ ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ }\\
+\MakeLowercase{ ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ }\\
+\MakeLowercase{ ᾠ ᾡ ᾢ ᾣ ᾤ ᾥ ᾦ ᾧ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ }\\
+\MakeLowercase{ ᾰ ᾱ ᾲ ᾳ ᾴ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ }\\
+\MakeLowercase{ ῀ ῁ ῂ ῃ ῄ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ }\\
+\MakeLowercase{ ῐ ῑ ῒ ΐ ῖ ῗ Ῐ Ῑ Ὶ Ί ῝ ῞ ῟ }\\
+\MakeLowercase{ ῠ ῡ ῢ ΰ ῤ ῥ ῦ ῧ Ῠ Ῡ Ὺ Ύ Ῥ ῭ ΅ ` }\\
+\MakeLowercase{ ῲ ῳ ῴ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ }
+\selectlanguage{english}
+
+\section{Babel Strings}
+
+Babel defines macros for several autogenerated strings so that they may
+appear in the choosen language. babel-greek uses LICRs in order to let the
+string macros work independent of the font encoding, in both 8-bit and
+Unicode-aware TeX.
+
+\subsection{Captions}
+
+\selectlanguage{greek}
+\prefacename,
+\refname,
+\abstractname,
+\bibname,
+\chaptername,
+\appendixname,
+\contentsname,
+\listfigurename ,
+\listtablename,
+\indexname,
+\figurename,
+\tablename,
+\partname,
+\enclname,
+\ccname,
+\headtoname,
+\pagename,
+\seename,
+\alsoname,
+\proofname,
+\glossaryname,
+\selectlanguage{english}
+
+
+\subsection{Months}
+
+\selectlanguage{greek}
+\newcounter{foo}
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\selectlanguage{english}
+
+\section{Greek Numerals}
+
+See greek.pdf for the formation rules of Greek numerals.
+Some examples:
+
+\selectlanguage{greek}
+
+\greeknumeral{1},
+\greeknumeral{2},
+\greeknumeral{3},
+\greeknumeral{4},
+\greeknumeral{5},
+\greeknumeral{6},
+\greeknumeral{7},
+\greeknumeral{8},
+\greeknumeral{9},
+\greeknumeral{10},
+\greeknumeral{11},
+\greeknumeral{12},
+\greeknumeral{20},
+\greeknumeral{345},
+\greeknumeral{500},
+\greeknumeral{1997},
+\greeknumeral{2013},
+
+\Greeknumeral{1},
+\Greeknumeral{2},
+\Greeknumeral{3},
+\Greeknumeral{4},
+\Greeknumeral{5},
+\Greeknumeral{6},
+\Greeknumeral{7},
+\Greeknumeral{8},
+\Greeknumeral{9},
+\Greeknumeral{10},
+\Greeknumeral{11},
+\Greeknumeral{12},
+\Greeknumeral{20},
+\Greeknumeral{345},
+\Greeknumeral{500},
+\Greeknumeral{1997},
+\Greeknumeral{2013},
+
+
+\selectlanguage{english}
+
+\end{document}
diff --git a/Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.pdf b/Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.pdf
new file mode 100644
index 00000000000..5975a681d1b
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.tex b/Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.tex
new file mode 100644
index 00000000000..d667027a112
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/babel-greek/test-unicode-greek.tex
@@ -0,0 +1,306 @@
+\documentclass[a4paper]{article}
+% \usepackage{textcomp}
+\usepackage{hyperref,bookmark}
+\usepackage{parskip}
+\usepackage{booktabs}
+
+\usepackage{fontspec}
+\usepackage{libertineotf}
+
+\usepackage[greek,english]{babel}
+% \languageattribute{greek}{polutoniko}
+
+\DeclareTextCommandDefault{\ensuregreek}{\textgreek}
+
+\begin{document}
+
+\section*{Greek support for Babel with XeTeX/LuaTeX}
+
+The babel option ``greek'' activates the support for the Greek language
+defined in the file ``greek.ldf'' (source ``greek.dtx'').
+
+Typesetting Greek texts requires a font containing Greek letters. With the
+XeTeX or LuaTeX engines, the user should ensure that the choosen font
+contains the required glyphs (the default Latin Modern fonts miss them).
+Examples for suitable fonts are the ``Deja Vu'' or the ``Linux Libertine''
+OpenType fonts.
+
+
+\section{Language Switch}
+
+The declaration \verb|\selectlanguage| switches between languages.
+
+\selectlanguage{greek}
+Ὁ Σύλλογος Ἑλλήνων Φίλων τοῦ TeX, γνωστὸς καὶ ὡς
+«Ἕλληνες Φίλοι τοῦ \TeX» (ΕΦΤ γιὰ συντομία) ἀποτελεῖ τὴν ἐπίσημη Τοπικὴ Ὁμάδα
+τοῦ \TeX{} ἢ τὸ ἑλληνικὸ \TeX{} LUG (Local Users Group).
+\selectlanguage{english}
+
+The macro \verb|\foreignlanguage| sets its second argument in the specified
+language. This is intended for short text parts like
+\foreignlanguage{greek}{Βιβλιοθήκη}.
+
+\section{Font Encoding}
+
+In Greek text parts, the font encoding is automatically set to LGR if an
+8-bit TeX engine is used. With XeTeX or LuaTeX, the macros
+\verb|\greektext| and \verb|\textgreek| don't change the font encoding.
+Latin characters can be used also in Greek text parts.
+Input via the Latin transcription defined in LGR is not possible.
+
+\greektext Φίλων τοῦ \textlatin{TeX} (ΕΦΤ) --
+\latintext Friends (\textgreek{F\'ilwn}) of TeX.
+
+
+Enumerated lists use Greek characters/numerals in the second and fourth level.
+This requires support for Greek LICR macros in XeTeX/LuaTeX (currently
+missing).
+
+\selectlanguage{greek}
+\begin{enumerate}
+ \item $\leftarrow$ 1
+% \begin{enumerate}
+% \item $\leftarrow$ 1.1
+% \begin{enumerate}
+% \item $\leftarrow$ 1.1.1
+% \begin{enumerate}
+% \item $\leftarrow$ 1.1.1.1
+% \item $\leftarrow$ 1.1.1.2
+% \end{enumerate}
+% \item $\leftarrow$ 1.1.2
+% \end{enumerate}
+% \end{enumerate}
+\end{enumerate}
+\selectlanguage{english}
+
+
+
+\section{MakeUppercase, MakeLowercase}
+
+Capital Greek letters have diacritics (except the dialytika and sub-iota) to
+the left (instead of above) and drop them in uppercase, e.g.
+\ensuregreek{μαΐστρος $\mapsto$ \MakeUppercase{μαΐστρος}}.
+
+% Upcased letters with diacritics keep the dialytika. This is implemented for
+% all input variants of diacritics with dialytika. (Babel has ``composite
+% command'' definitions to ensure this also works for accent characters
+% "upcased" to the charcter No 159.)
+
+% \foreignlanguage{greek}{\"i \"'i \"`i \"~i \'"i \`"i \~"i
+% \"u \"\'u \"\`u \"\~u
+% $\mapsto$ \MakeUppercase{\"i \"'i \"`i \"~i \'"i \`"i \~"i
+% \"u \"\'u \"\`u \"\~u }}
+
+Tonos and dasia mark a \emph{hiatus} (break-up of a diphthong) if
+placed on the first vowel of a diphtong
+((άι, άυ, έι, ἄι, ἄυ, ἔι).
+A dialytika must be placed on the second vowel if they are dropped:
+(\foreignlanguage{greek}{\MakeUppercase{άι, άυ, έι, ἄι, ἄυ, ἔι}}).
+This does not work (yet?) with XeTeX/LuaTeX.
+
+% \selectlanguage{greek}
+% % from teubner: άυλος/ΑΫΛΟΣ
+% \'aulos $\mapsto$ \MakeUppercase{\'aulos},
+% \>'aulos $\mapsto$ \MakeUppercase{\>'aulos},
+% % from http://diacritics.typo.cz/index.php?id=69 μάινα -> ΜΑΪΝΑ
+% m\'aina $\mapsto$ \MakeUppercase{m\'aina},
+% % from http://de.wikipedia.org/wiki/Neugriechische_Orthographie#Das_Trema
+% % κέικ, ἀυπνία/αϋπνία
+% k\'eik, $\mapsto$ \MakeUppercase{k\'eik}
+% \>aupn\'ia $\mapsto$ \MakeUppercase{\>aupn\'ia}
+% \selectlanguage{english}
+
+There are several alternative styles for the capitalized sub-iota.
+
+The following subsections test MakeUppercase and MakeLowercase with all
+characters defined in lgrenc.dfu:
+
+\subsection{Greek and Coptic}
+
+\newcommand{\GreekAndCoptic}{
+ʹ͵ͺ; ΄ ΅Ά·ΈΉΊΌΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫϘϚϜϠ}
+\newcommand{\greekandcoptic}{
+άέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώϙϛϝϟϡ}
+
+Characters of the Greek and Coptic Unicode Block:
+
+\begin{quote}
+ \GreekAndCoptic\\
+ \greekandcoptic
+\end{quote}
+
+MakeUppercase:
+
+\begin{quote}
+ \MakeUppercase{\GreekAndCoptic}\\
+ \MakeUppercase{\greekandcoptic}
+\end{quote}
+
+Letters upcased, diacritics except dialytika dropped. OK.
+
+Ϡ (Sampi) $\mapsto$ \MakeUppercase{Ϡ} (Kappa) and
+ϡ (sampi) $\mapsto$ \MakeUppercase{ϡ} (Rho) seems a bug
+(in Xe/LuaTeX or xgreek?).
+
+MakeLowercase:
+
+\begin{quote}
+ \MakeLowercase{\GreekAndCoptic}\\
+ \MakeLowercase{\greekandcoptic}
+\end{quote}
+
+The lowercase of Σ is σ (GREEK SMALL LETTER SIGMA, with LGR, it is
+\verb|\textautosigma|). The lowercase of GREEK LETTER STIGMA Ϛ is
+\MakeLowercase{Ϛ}.
+
+% \newpage
+
+\subsection{Greek extended}
+
+MakeUppercase:
+
+\selectlanguage{greek}
+
+\MakeUppercase{ ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ }\\
+\MakeUppercase{ ἐ ἑ ἒ ἓ ἔ ἕ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ }\\
+\MakeUppercase{ ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ }\\
+\MakeUppercase{ ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ }\\
+\MakeUppercase{ ὀ ὁ ὂ ὃ ὄ ὅ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ }\\
+\MakeUppercase{ ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ Ὑ Ὓ Ὕ Ὗ }\\
+\MakeUppercase{ ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ }\\
+\MakeUppercase{ ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ }\\
+\MakeUppercase{ ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ }\\
+\MakeUppercase{ ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ }\\
+\MakeUppercase{ ᾠ ᾡ ᾢ ᾣ ᾤ ᾥ ᾦ ᾧ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ }\\
+\MakeUppercase{ ᾰ ᾱ ᾲ ᾳ ᾴ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ }\\
+\MakeUppercase{ ῀ ῁ ῂ ῃ ῄ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ }\\
+\MakeUppercase{ ῐ ῑ ῒ ΐ ῖ ῗ Ῐ Ῑ Ὶ Ί ῝ ῞ ῟ }\\
+\MakeUppercase{ ῠ ῡ ῢ ΰ ῤ ῥ ῦ ῧ Ῠ Ῡ Ὺ Ύ Ῥ ῭ ΅ ` }\\
+\MakeUppercase{ ῲ ῳ ῴ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ }
+\selectlanguage{english}
+
+MakeLowercase:
+
+\selectlanguage{greek}
+\MakeLowercase{ ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ }\\
+\MakeLowercase{ ἐ ἑ ἒ ἓ ἔ ἕ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ }\\
+\MakeLowercase{ ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ }\\
+\MakeLowercase{ ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ }\\
+\MakeLowercase{ ὀ ὁ ὂ ὃ ὄ ὅ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ }\\
+\MakeLowercase{ ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ Ὑ Ὓ Ὕ Ὗ }\\
+\MakeLowercase{ ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ }\\
+\MakeLowercase{ ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ }\\
+\MakeLowercase{ ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ }\\
+\MakeLowercase{ ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ }\\
+\MakeLowercase{ ᾠ ᾡ ᾢ ᾣ ᾤ ᾥ ᾦ ᾧ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ }\\
+\MakeLowercase{ ᾰ ᾱ ᾲ ᾳ ᾴ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ }\\
+\MakeLowercase{ ῀ ῁ ῂ ῃ ῄ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ }\\
+\MakeLowercase{ ῐ ῑ ῒ ΐ ῖ ῗ Ῐ Ῑ Ὶ Ί ῝ ῞ ῟ }\\
+\MakeLowercase{ ῠ ῡ ῢ ΰ ῤ ῥ ῦ ῧ Ῠ Ῡ Ὺ Ύ Ῥ ῭ ΅ ` }\\
+\MakeLowercase{ ῲ ῳ ῴ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ }
+\selectlanguage{english}
+
+\section{Babel Strings}
+
+Babel defines macros for several autogenerated strings so that they may
+appear in the choosen language. babel-greek uses LICR macross in order to
+let the string macros work independent of the font encoding.
+
+This requires support for Greek LICR macros in XeTeX/LuaTeX (currently
+missing).
+
+\end{document}
+
+
+\subsection{Captions}
+
+\selectlanguage{greek}
+\prefacename,
+\refname,
+\abstractname,
+\bibname,
+\chaptername,
+\appendixname,
+\contentsname,
+\listfigurename ,
+\listtablename,
+\indexname,
+\figurename,
+\tablename,
+\partname,
+\enclname,
+\ccname,
+\headtoname,
+\pagename,
+\seename,
+\alsoname,
+\proofname,
+\glossaryname,
+\selectlanguage{english}
+
+
+\subsection{Months}
+
+\selectlanguage{greek}
+\newcounter{foo}
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\stepcounter{foo} \month=\value{foo} \today \\
+\selectlanguage{english}
+
+\section{Greek Numerals}
+
+See greek.pdf for the formation rules of Greek numerals.
+Some examples:
+
+\selectlanguage{greek}
+
+\greeknumeral{1},
+\greeknumeral{2},
+\greeknumeral{3},
+\greeknumeral{4},
+\greeknumeral{5},
+\greeknumeral{6},
+\greeknumeral{7},
+\greeknumeral{8},
+\greeknumeral{9},
+\greeknumeral{10},
+\greeknumeral{11},
+\greeknumeral{12},
+\greeknumeral{20},
+\greeknumeral{345},
+\greeknumeral{500},
+\greeknumeral{1997},
+\greeknumeral{2013},
+
+\Greeknumeral{1},
+\Greeknumeral{2},
+\Greeknumeral{3},
+\Greeknumeral{4},
+\Greeknumeral{5},
+\Greeknumeral{6},
+\Greeknumeral{7},
+\Greeknumeral{8},
+\Greeknumeral{9},
+\Greeknumeral{10},
+\Greeknumeral{11},
+\Greeknumeral{12},
+\Greeknumeral{20},
+\Greeknumeral{345},
+\Greeknumeral{500},
+\Greeknumeral{1997},
+\Greeknumeral{2013},
+
+
+\selectlanguage{english}
+
+\end{document}
diff --git a/Master/texmf-dist/doc/generic/babel-greek/usage.pdf b/Master/texmf-dist/doc/generic/babel-greek/usage.pdf
index 4a290ee2b22..2695cdfc7b5 100644
--- a/Master/texmf-dist/doc/generic/babel-greek/usage.pdf
+++ b/Master/texmf-dist/doc/generic/babel-greek/usage.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/babel-greek/usage.tex b/Master/texmf-dist/doc/generic/babel-greek/usage.tex
index 87f119de614..c3c4bde820d 100644
--- a/Master/texmf-dist/doc/generic/babel-greek/usage.tex
+++ b/Master/texmf-dist/doc/generic/babel-greek/usage.tex
@@ -33,7 +33,7 @@
\newcommand{\sg}{\selectlanguage{greek}}
\newcommand{\sa}{\selectlanguage{american}}
\begin{document}
-\show\extrasgreek
+%\show\extrasgreek
%\show\extraspolutonikogreek
\selectlanguage{american}
diff --git a/Master/texmf-dist/source/generic/babel-greek/greek.dtx b/Master/texmf-dist/source/generic/babel-greek/greek.dtx
index 0581b25f996..95910561258 100644
--- a/Master/texmf-dist/source/generic/babel-greek/greek.dtx
+++ b/Master/texmf-dist/source/generic/babel-greek/greek.dtx
@@ -25,7 +25,7 @@
% and covered by LPPL is defined by the unpacking script (greek.ins)
% which is part of the package.
% \fi
-% \CheckSum{660}
+% \CheckSum{1218}
%
% \iffalse
% Tell the \LaTeX\ system who we are and write an entry on the
@@ -36,8 +36,8 @@
%<code>\ProvidesLanguage{greek}
%\fi
%\ProvidesFile{greek.dtx}
- [2013/05/17 v1.4 Greek support from the babel system]
-%\iffalse
+ [2013/06/21 v1.5 Greek support for the babel system]
+%\iffalse
%% File `greek.dtx'
%% Babel package for LaTeX version 2e
%% Copyright (C) 1989 -- 2005
@@ -87,6 +87,12 @@
% \changes{greek-1.3a}{1998/07/04}{polutoniko is now an attribute to
% Greek, no longer a `dialect'}
% \changes{greek-1.4}{2013/05/17}{new maintainer}
+% \changes{greek-1.5}{2013/06/21}{bugfixes,
+% change some symbol macros to aliases,
+% LGR fixes via DeclareTextCommand instead of
+% extrasgreek/noextrasgreek definitions,
+% LICR macros in string definitions,
+% LGR font encoding not used with XeTeX/LuaTeX.}
%
% \section{Babel support for the Greek language}
%
@@ -123,19 +129,8 @@
%
% \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.
+% The file \file{usage.pdf} explains the several input conventions
+% for Greek.
%
% \subsection{Greek numbering}
%
@@ -248,68 +243,130 @@
}
% \end{macrocode}
%
+% Next, we check if Lua\LaTeX\ or Xe\LaTeX\ is running. If so, we set
+% boolean key |\if@babel@greek@unicode| to true.
+% (The test code is taken from russian.ldf. We hope that a future
+% version of \file{babel.sty} will do the check and provide a boolean.
+%
+% We don't load the \pkg{ifluatex} or \pkg{ifxetex} package because
+% |\RequirePackage| is not allowed at the stage of processing options
+% (note that babel loads this file right when it processes its own options)
+% but we borrow code from these packages.
+%
+% The test requires the e-TeX extensions (provided by all TeX engines in
+% contemporary TeX distributions).
+%
+% \changes{greek-1.5}{2013/06/21}{Check for XeTeX/LuaTeX}
+% \begin{macrocode}
+\ifdefined\if@bbl@greek@unicode
+ \PackageError{babel}{if@bbl@greek@unicode already defined.\MessageBreak
+ Please contact author of greek.ldf}
+ \relax
+\fi
+\newif\if@bbl@greek@unicode
+\ifdefined\luatexversion \@bbl@greek@unicodetrue \else
+\ifdefined\XeTeXrevision \@bbl@greek@unicodetrue \fi\fi
+% \end{macrocode}
+%
% Typesetting Greek texts requires a font containing Greek letters.
-% For 8-bit LaTeX this package uses fonts with the LGR font encoding
+% With the modern XeTeX or LuaTeX engines, the user should ensure that
+% the choosen font contains the required glyphs. Examples for suitable
+% fonts are the ``Deja Vu'' or the ``Linux Libertine'' OpenType fonts.
+%
+% For 8-bit LaTeX, this package uses fonts with the LGR font encoding
% (see the `greek-fontenc' package http://www.ctan.org/pkg/greek-fontenc).
-% The |cb| fonts
-% created by Claudio Beccari\footnote{Apostolos Syropoulos wishes
-% to thank him for his patience, collaboration, cooments and
-% suggestions.} are a set of Greek text fonts matching
-% Computer Modern. They provide all sorts of \textit{font
-% combinations}. We make sure
-% that the LGR encoding is known to \LaTeX, and if it isn't we abort.
+% The |cb| fonts created by Claudio Beccari%
+% \footnote{Apostolos Syropoulos wishes to thank him for his
+% patience, collaboration, comments and suggestions.}
+% are a complete set of LGR encoded Greek text fonts matching
+% Computer Modern.
% \changes{greek-1.2a}{1997/10/31}{filename \file{lgrenc.def} now
% lowercase}
% \changes{greek-1.4}{2013/05/17}{\file{lgrenc.def} moved to the
% separate package `greek-fontenc'}
+% \changes{greek-1.5}{2013/06/21}{LGR setup skipped with XeTeX/LuaTeX}
+% \begin{macrocode}
+\if@bbl@greek@unicode
+% \end{macrocode}
+ % No font encoding switch required with Unicode fonts.
+ % Define dummy commands for |\textgreek| and |\greektext| (cf. below):
% \begin{macrocode}
-\InputIfFileExists{lgrenc.def}{}{%
- \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
- }
+ \let\greektext\relax
+ \let\textgreek\@firstofone
+\else
+ \InputIfFileExists{lgrenc.def}{}{%
+ \errhelp{I can't find the lgrenc.def file for the Greek fonts}%
+ \errmessage{Since I do not know the LGR font encoding^^J
+ I can't typeset Greek with 8-bit TeX.^^J
+ Please install the "greek-fontenc" package or use XeTeX/LuaTeX.}\@@end
+ }
% \end{macrocode}
%
-% We define a few commands in the \texttt{LGR} encoding
+% We redefine a few commands in the LGR encoding
% to work around problems because LGR is no \emph{standard text
-% encoding}.\footnote{%
-% The current implementation has the disadvantage that it makes
-% the symbols from the package `textcomp' inaccessible if the active font
-% encoding is LGR.}
+% encoding} but has Greek letters in the places of Latin ones.
% \changes{greekfdd-2.2c}{1999/04/05}{Fixed typos, \cs{textrademark}
% misses a `t', \cs{copyright} should be \cs{textcopyright}}
% \changes{greekfdd-2.2d}{1999/04/25}{removed redefinition of \cs{\&}}
% \changes{greek-1.4}{2013/05/17}{moved here from \file{lgrenc.def} because
% the definitions require the \texttt{\textbackslash latintext} macro
% defined by Babel.}
+% \changes{greek-1.5}{2013/05/27}{enable use of "textcomp" characters
+% for "textcopyright" and "textregistered" macros}
+% \changes{greek-1.5}{2013/06/15}{\textbackslash & made TextCommand}
+% \begin{macrocode}
+ \ProvideTextCommand{\textcopyright}{LGR}{\textlatin{\textcopyright}}
+ \ProvideTextCommand{\textregistered}{LGR}{\textlatin{\textregistered}}
+ \ProvideTextCommand{\texttrademark}{LGR}{\textlatin{\texttrademark}}
+ \let\ltx@amp\&
+ \DeclareTextCommandDefault{\&}{\ltx@amp}
+ \DeclareTextCommand{\&}{LGR}{\textlatin{\ltx@amp}}
+ \ProvideTextCommand{\SS}{LGR}{\textlatin{\SS}}
+% \end{macrocode}
+%
+% \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}}
+% \changes{greek-1.5}{2013/06/15}{@roman and @Roman made TextCommands}
+% To prevent roman numerals being typeset in greek letters we need
+% to adopt the internal \LaTeX\ commands |\@roman| and
+% |\@Roman|. \textbf{The pre-1.5 definition caused errors where
+% |\@roman| ends up in a situation where it needs to be expanded;
+% Check whether problems persist with the AMS document classes!}
% \begin{macrocode}
-\ProvideTextCommand{\textcopyright}{LGR}{%
- \textcircled{\textlatin{c}}}
-\ProvideTextCommand{\textregistered}{LGR}{%
- \textcircled{\textlatin{\textsc r}}}
-\ProvideTextCommand{\texttrademark}{LGR}{%
- \textsuperscript{\textlatin{TM}}}
-\ProvideTextCommand{\SS}{LGR}{%
- \textlatin{SS}}
+ \let\latin@roman\@roman
+ \DeclareTextCommandDefault{\@roman}[1]{\latin@roman{#1}}
+ \DeclareTextCommand{\@roman}{LGR}[1]{\textlatin{\latin@roman{#1}}}
+ \let\latin@Roman\@Roman
+ \DeclareTextCommandDefault{\@Roman}[1]{\latin@Roman{#1}}
+ \DeclareTextCommand{\@Roman}{LGR}[1]{\textlatin{\latin@Roman{#1}}}
% \end{macrocode}
+% \end{macro}
+% \end{macro}
%
% Later in this file, the charcter No 159 is defined as uppercase of
% |<|, |>|, |~|, |`|, |'|, |"| and \verb=|=.
% Add composite commands, so that the dialytika is kept or put on the
-% following character with |\MakeUppercase|
+% following character of a diphthong with |\MakeUppercase|
% (see lgrdef.enc from the the greek-fontenc package for details).
% As a the TextCompositeCommand mechanism compares the
% unexpanded literal strings, we need the literal character in the
% declarations, too.
-% \changes{greek-1.4}{2013/05/17}{Add TextCompositeCommands for ``uppercase
-% diacritics''.}
+% \changes{greek-1.4}{2013/05/17}{Add TextCompositeCommands for
+% ``uppercase diacritics''.}
+% \changes{greek-1.5}{2013/05/27}{Bugfix: @hiatus->LGR@hiatus}
% \begin{macrocode}
-\DeclareTextCompositeCommand{\"}{LGR}{}{\accdialytika}
-\DeclareTextCompositeCommand{\'}{LGR}{}{\@hiatus}
-\DeclareTextCompositeCommand{\`}{LGR}{}{\@hiatus}
-\DeclareTextCompositeCommand{\<}{LGR}{}{\@hiatus}
-\DeclareTextCompositeCommand{\>}{LGR}{}{\@hiatus}
+ \DeclareTextCompositeCommand{\"}{LGR}{}{\accdialytika}
+ \DeclareTextCompositeCommand{\'}{LGR}{}{\LGR@hiatus}
+ \DeclareTextCompositeCommand{\`}{LGR}{}{\LGR@hiatus}
+ \DeclareTextCompositeCommand{\<}{LGR}{}{\LGR@hiatus}
+ \DeclareTextCompositeCommand{\>}{LGR}{}{\LGR@hiatus}
% \end{macrocode}
%
% Now we define two commands that offer the possibility to switch
@@ -322,9 +379,9 @@
% for shorter pieces of text the command |\textgreek| should be
% used.
% \begin{macrocode}
-\DeclareRobustCommand{\greektext}{%
- \fontencoding{LGR}\selectfont
- \def\encodingdefault{LGR}}
+ \DeclareRobustCommand{\greektext}{%
+ \fontencoding{LGR}\selectfont
+ \def\encodingdefault{LGR}}
% \end{macrocode}
% \end{macro}
%
@@ -337,7 +394,7 @@
% \changes{greek-1.3k}{2003/03/19}{Added \cs{leavevmode} as was done
% with \cs{latintext}}
% \begin{macrocode}
-\DeclareRobustCommand{\textgreek}[1]{\leavevmode{\greektext #1}}
+ \DeclareRobustCommand{\textgreek}[1]{\leavevmode{\greektext #1}}
% \end{macrocode}
% \end{macro}
%
@@ -347,8 +404,9 @@
% 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}
+ \def\outlfamily{\usefont{LGR}{cmro}{m}{n}}
+ \DeclareTextFontCommand{\textol}{\outlfamily}
+\fi % End of LGR fixes not required with XeTeX/LuaTeX.
% \end{macrocode}
% \end{macro}
%
@@ -378,27 +436,46 @@
% 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}%
+ \def\prefacename{\textPi\textrho\'\textomicron\textlambda\textomicron%
+ \textgamma\textomicron\textfinalsigma}%
+ \def\refname{\textAlpha\textnu\textalpha%
+ \textphi\textomicron\textrho\'\textepsilon\textfinalsigma}%
+ \def\abstractname{\textPi\textepsilon\textrho\'\textiota%
+ \textlambda\texteta\textpsi\texteta}%
+ \def\bibname{\textBeta\textiota\textbeta\textlambda\textiota\textomicron%
+ \textgamma\textrho\textalpha\textphi\'\textiota\textalpha}%
+ \def\chaptername{\textKappa\textepsilon\textphi\'\textalpha%
+ \textlambda\textalpha\textiota\textomicron}%
+ \def\appendixname{\textPi\textalpha\textrho\'\textalpha\textrho%
+ \texttau\texteta\textmu\textalpha}%
+ \def\contentsname{\textPi\textepsilon\textrho\textiota%
+ \textepsilon\textchi\'\textomicron\textmu\textepsilon\textnu\textalpha}%
+ \def\listfigurename{\textKappa\textalpha\texttau\'\textalpha%
+ \textlambda\textomicron\textgamma\textomicron\textfinalsigma{}
+ \textSigma\textchi\texteta\textmu\'\textalpha\texttau\textomega\textnu}%
+ \def\listtablename{\textKappa\textalpha\texttau\'\textalpha%
+ \textlambda\textomicron\textgamma\textomicron\textfinalsigma{}
+ \textPi\textiota\textnu\'\textalpha\textkappa\textomega\textnu}%
+ \def\indexname{\textEpsilon\textupsilon\textrho\textepsilon%
+ \texttau\'\texteta\textrho\textiota\textomicron}%
+ \def\figurename{\textSigma\textchi\'\texteta\textmu\textalpha}%
+ \def\tablename{\textPi\'\textiota\textnu\textalpha%
+ \textkappa\textalpha\textfinalsigma}%
+ \def\partname{\textMu\'\textepsilon\textrho\textomicron\textfinalsigma}%
+ \def\enclname{\textSigma\textupsilon\textnu\texteta\textmu%
+ \textmu\'\textepsilon\textnu\textalpha}%
+ \def\ccname{\textKappa\textomicron\textiota\textnu\textomicron%
+ \textpi\textomicron\'\textiota\texteta\textsigma\texteta}%
+ \def\headtoname{\textPi\textrho\textomicron\textfinalsigma}%
+ \def\pagename{\textSigma\textepsilon\textlambda\'\textiota%
+ \textdelta\textalpha}%
+ \def\seename{\textbeta\textlambda\'\textepsilon\textpi\textepsilon}%
+ \def\alsoname{\textbeta\textlambda\'\textepsilon\textpi\textepsilon{}
+ \textepsilon\textpi\'\textiota\textsigma\texteta\textfinalsigma}%
+ \def\proofname{\textAlpha\textpi\'\textomicron%
+ \textdelta\textepsilon\textiota\textxi\texteta}%
+ \def\glossaryname{\textGamma\textlambda\textomega\textsigma%
+ \textsigma\'\textalpha\textrho\textiota}%
}
% \end{macrocode}
% \end{macro}
@@ -416,12 +493,16 @@
% \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}%
+ \def\refname{\>\textAlpha\textnu\textalpha%
+ \textphi\textomicron\textrho\`\textepsilon\textfinalsigma}%
+ \def\indexname{\textEpsilon\<\textupsilon\textrho\textepsilon%
+ \texttau\'\texteta\textrho\textiota\textomicron}%
+ \def\figurename{\textSigma\textchi\~\texteta\textmu\textalpha}%
+ \def\headtoname{\textPi\textrho\`\textomicron\textfinalsigma}%
+ \def\alsoname{\textbeta\textlambda\'\textepsilon\textpi\textepsilon{}
+ \>\textepsilon\textpi\'\textiota\textsigma\texteta\textfinalsigma}%
+ \def\proofname{\>\textAlpha\textpi\'\textomicron%
+ \textdelta\textepsilon\textiota\textxi\texteta}%
}
% \end{macrocode}
% \end{macro}
@@ -442,9 +523,30 @@
% \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}
+ \textIota\textalpha\textnu\textomicron\textupsilon\textalpha%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textPhi\textepsilon\textbeta\textrho\textomicron\textupsilon%
+ \textalpha\textrho\'\textiota\textomicron\textupsilon\or
+ \textMu\textalpha\textrho\texttau\'\textiota\textomicron\textupsilon\or
+ \textAlpha\textpi\textrho\textiota\textlambda\'\textiota%
+ \textomicron\textupsilon\or
+ \textMu\textalpha\'\"\textiota\textomicron\textupsilon\or
+ \textIota\textomicron\textupsilon\textnu\'\textiota%
+ \textomicron\textupsilon\or
+ \textIota\textomicron\textupsilon\textlambda\'\textiota%
+ \textomicron\textupsilon\or
+ \textAlpha\textupsilon\textgamma\textomicron\'\textupsilon\textsigma%
+ \texttau\textomicron\textupsilon\or
+ \textSigma\textepsilon\textpi\texttau\textepsilon\textmu%
+ \textbeta\textrho\'\textiota\textomicron\textupsilon\or
+ \textOmicron\textkappa\texttau\textomega\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textNu\textomicron\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textDelta\textepsilon\textkappa\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon%
+ \fi%
+}
\def\dategreek{%
\def\today{\number\day \space \gr@month\space \number\year}}
% \end{macrocode}
@@ -459,10 +561,31 @@
% \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}
+ \ifcase\month\or
+ \>\textIota\textalpha\textnu\textomicron\textupsilon\textalpha%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textPhi\textepsilon\textbeta\textrho\textomicron\textupsilon%
+ \textalpha\textrho\'\textiota\textomicron\textupsilon\or
+ \textMu\textalpha\textrho\texttau\'\textiota\textomicron\textupsilon\or
+ \>\textAlpha\textpi\textrho\textiota\textlambda%
+ \'\textiota\textomicron\textupsilon\or
+ \textMu\textalpha\"\'\textiota\textomicron\textupsilon\or
+ \>\textIota\textomicron\textupsilon\textnu%
+ \'\textiota\textomicron\textupsilon\or
+ \>\textIota\textomicron\textupsilon\textlambda%
+ \'\textiota\textomicron\textupsilon\or
+ \textAlpha\>\textupsilon\textgamma\textomicron\'\textupsilon\textsigma%
+ \texttau\textomicron\textupsilon\or
+ \textSigma\textepsilon\textpi\texttau\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \>\textOmicron\textkappa\texttau\textomega\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textNu\textomicron\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textDelta\textepsilon\textkappa\textepsilon\textmu%
+ \textbeta\textrho\'\textiota\textomicron\textupsilon%
+ \fi
+}
% \end{macrocode}
% \end{macro}
%
@@ -484,13 +607,17 @@
% 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
+% macros switch the fontencoding (with 8-bit TeX) and the definition of
+% the internal macros |\@alph| and |\@Alph| because in Greek we do use
% the Greek numerals.
-%
+% \changes{greek-1.5}{2013/06/21}{LGR not used with XeTeX/LuaTeX.}
% \begin{macrocode}
-\addto\extrasgreek{\greektext}
-\addto\noextrasgreek{\latintext}
+\if@bbl@greek@unicode
+ \relax
+\else
+ \addto\extrasgreek{\greektext}
+ \addto\noextrasgreek{\latintext}
+\fi
% \end{macrocode}
%
% \begin{macro}{\gr@ill@value}
@@ -622,53 +749,6 @@
% \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}
@@ -684,13 +764,16 @@
% 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
+ \ifcase#1\or \textalpha\or \textbeta\or \textgamma\or \textdelta\or
+ \textepsilon\or \textstigma\or \textzeta\or \texteta\or \texttheta\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
+ \ifcase#1\or \textiota\or \textkappa\or \textlambda\or \textmu\or
+ \textnu\or \textxi\or \textomicron\or \textpi\or \textqoppa\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
+ \ifcase#1\or \textrho\or \textsigma\or \texttau\or \textupsilon\or
+ \textphi\or \textchi\or \textpsi\or \textomega\or \textsampi\fi
\ifnum#1=\z@\anw@false\else\anw@true\fi\gr@num@ii}
% \end{macrocode}
% \end{macro}
@@ -705,42 +788,74 @@
% \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
+ \ifcase#1\or \textalpha\or \textbeta\or \textgamma\or \textdelta\or
+ \textepsilon\or \stigma\or \textzeta\or \texteta\or \texttheta\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
+ \ifcase#1\or \textiota\or \textkappa\or \textlambda\or \textmu\or
+ \textnu\or \textxi\or \textomicron\or \textpi\or \textqoppa\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
+ \ifcase#1\or \textrho\or \textsigma\or \texttau\or \textupsilon\or
+ \textphi\or \textchi\or \textpsi\or \textomega\or \textsampi\fi
\gr@num@v}
% \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
%
+% Handling of Diacritics differs between Unicode and LGR encoding.
+% \changes{greek-1.5}{2013/06/21}{Support XeTeX/LuaTeX.}
+
+% Greek letters drop diacritics (eccept dialytika and sub-iota) in
+% UPPERCASE. This is not cared for by the Unicode standard.
+% The file \file{xgreek-fixes.def} from \pkg{polyglossia}
+% contains the required |\lccode| and |\uccode| corrections from the
+% \pkg{xgreek} package by Apostolos Syropoulos.
+% \begin{macrocode}
+\if@bbl@greek@unicode
+ \InputIfFileExists{xgreek-fixes.def}{}{%
+ \PackageWarning{babel}{Can't find the file "xgreek-fixes.def".\MessageBreak
+ For correct up/downcasing of Greek text,
+ install the "polyglossia" package.}%
+ }
+\else % 8-bit TeX
+% \end{macrocode}
+% The LGR encoded fonts that are used to typeset Greek with 8-bit TeX
+% define ligatures for characters with diacritics. 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.
+%
% \begin{macro}{\greek@tilde}
% \changes{greek-1.0c}{1997/02/19}{Added command}
% The Greek script uses a number of characters with more
-% than one accent. In LGR-encoded fonts combined diacritics can be
+% than one accent. In LGR encoded fonts combined diacritics can be
% obtained using Knuth's ligature mechanism (see usage.pdf).
% 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
+% In text input the |~| is normally used to produce an
% unbreakable space.
% \changes{greek-1.3k}{2003/04/10}{Make sure the character `!' is not
% active during the definition of \cs{greek@tilde}}
-% \begin{macrocode}
% \changes{greek-1.4}{2013/05/17}{do not re-define the tilde accent macro:
-% it works as expected with the new lgrenc.def file.}
-\begingroup
- \@ifundefined{active@char\string!}{}{\catcode`!=12\relax}
- \catcode`\~=12
- \lccode`\!=`\~
- \lowercase{\def\x{\endgroup
- \def\greek@tilde{!}}\x}
+% it works as expected with \file{lgrenc.def} from \pkg{greek-fontenc}.}
+% \begin{macrocode}
+ \begingroup
+ \@ifundefined{active@char\string!}{}{\catcode`!=12\relax}
+ \catcode`\~=12
+ \lccode`\!=`\~
+ \lowercase{\def\x{\endgroup
+ \def\greek@tilde{!}}\x}
% \end{macrocode}
% \end{macro}
% In order to get correct hyphenation we need to set the lower case
@@ -762,16 +877,16 @@
% \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`\`=`\`}
+ \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
@@ -794,15 +909,15 @@
% 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}
+ \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
@@ -817,23 +932,24 @@
% 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
+% \changes{greek-1.3j}{2001/02/03}{Use the tilde as an alias for
% character 159}
% \begin{macrocode}
-\@tempcnta=\lccode`\~
-\lccode`\~=159
-\lowercase{%
- \initiate@active@char{~}%
- \declare@shorthand{greek}{~}{}}
-\lccode`\~=\@tempcnta
+ \@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}
+ \addto\extraspolutonikogreek{\languageshorthands{greek}}%
+ \declare@shorthand{greek}{~}{\greek@tilde}
+\fi % End of LGR-specific code not required with XeTeX/LuaTeX.
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -850,17 +966,18 @@
% 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}
+% \changes{greek-1.5}{2013/06/11}{change symbol macros to aliases}
+% \begin{macrocode}
+\providecommand*{\anwtonos}{\textnumeralsigngreek}
+\providecommand*{\katwtonos}{\textnumeralsignlowergreek}
+\providecommand*{\qoppa}{\textqoppa}
+\providecommand*{\stigma}{\textstigma}
+\providecommand*{\sampi}{\textsampi}
+\providecommand*{\Digamma}{\textDigamma}
+\providecommand*{\ddigamma}{\textdigamma}
+\providecommand*{\vardigamma}{\textvardigamma}
+\providecommand*{\euro}{\texteuro}
+\providecommand*{\permill}{\textperthousand}
% \end{macrocode}
%
% Since the |~| cannot be used to produce an unbreakable white
diff --git a/Master/texmf-dist/tex/generic/babel-greek/greek.ldf b/Master/texmf-dist/tex/generic/babel-greek/greek.ldf
index 4fa267b8be2..7ade8596776 100644
--- a/Master/texmf-dist/tex/generic/babel-greek/greek.ldf
+++ b/Master/texmf-dist/tex/generic/babel-greek/greek.ldf
@@ -32,7 +32,7 @@
%% and covered by LPPL is defined by the unpacking script (greek.ins)
%% which is part of the package.
\ProvidesLanguage{greek}
- [2013/05/17 v1.4 Greek support from the babel system]
+ [2013/06/21 v1.5 Greek support for the babel system]
%% File `greek.dtx'
%% Babel package for LaTeX version 2e
%% Copyright (C) 1989 -- 2005
@@ -57,82 +57,171 @@
\let\extraspolutonikogreek\extrasgreek
\let\noextraspolutonikogreek\noextrasgreek
}
-\InputIfFileExists{lgrenc.def}{}{%
- \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
- }
-\ProvideTextCommand{\textcopyright}{LGR}{%
- \textcircled{\textlatin{c}}}
-\ProvideTextCommand{\textregistered}{LGR}{%
- \textcircled{\textlatin{\textsc r}}}
-\ProvideTextCommand{\texttrademark}{LGR}{%
- \textsuperscript{\textlatin{TM}}}
-\ProvideTextCommand{\SS}{LGR}{%
- \textlatin{SS}}
-\DeclareTextCompositeCommand{\"}{LGR}{}{\accdialytika}
-\DeclareTextCompositeCommand{\'}{LGR}{}{\@hiatus}
-\DeclareTextCompositeCommand{\`}{LGR}{}{\@hiatus}
-\DeclareTextCompositeCommand{\<}{LGR}{}{\@hiatus}
-\DeclareTextCompositeCommand{\>}{LGR}{}{\@hiatus}
-\DeclareRobustCommand{\greektext}{%
- \fontencoding{LGR}\selectfont
- \def\encodingdefault{LGR}}
-\DeclareRobustCommand{\textgreek}[1]{\leavevmode{\greektext #1}}
-\def\outlfamily{\usefont{LGR}{cmro}{m}{n}}
-\DeclareTextFontCommand{\textol}{\outlfamily}
+\ifdefined\if@bbl@greek@unicode
+ \PackageError{babel}{if@bbl@greek@unicode already defined.\MessageBreak
+ Please contact author of greek.ldf}
+ \relax
+\fi
+\newif\if@bbl@greek@unicode
+\ifdefined\luatexversion \@bbl@greek@unicodetrue \else
+\ifdefined\XeTeXrevision \@bbl@greek@unicodetrue \fi\fi
+\if@bbl@greek@unicode
+ % No font encoding switch required with Unicode fonts.
+ % Define dummy commands for |\textgreek| and |\greektext| (cf. below):
+ \let\greektext\relax
+ \let\textgreek\@firstofone
+\else
+ \InputIfFileExists{lgrenc.def}{}{%
+ \errhelp{I can't find the lgrenc.def file for the Greek fonts}%
+ \errmessage{Since I do not know the LGR font encoding^^J
+ I can't typeset Greek with 8-bit TeX.^^J
+ Please install the "greek-fontenc" package or use XeTeX/LuaTeX.}\@@end
+ }
+ \ProvideTextCommand{\textcopyright}{LGR}{\textlatin{\textcopyright}}
+ \ProvideTextCommand{\textregistered}{LGR}{\textlatin{\textregistered}}
+ \ProvideTextCommand{\texttrademark}{LGR}{\textlatin{\texttrademark}}
+ \let\ltx@amp\&
+ \DeclareTextCommandDefault{\&}{\ltx@amp}
+ \DeclareTextCommand{\&}{LGR}{\textlatin{\ltx@amp}}
+ \ProvideTextCommand{\SS}{LGR}{\textlatin{\SS}}
+ \let\latin@roman\@roman
+ \DeclareTextCommandDefault{\@roman}[1]{\latin@roman{#1}}
+ \DeclareTextCommand{\@roman}{LGR}[1]{\textlatin{\latin@roman{#1}}}
+ \let\latin@Roman\@Roman
+ \DeclareTextCommandDefault{\@Roman}[1]{\latin@Roman{#1}}
+ \DeclareTextCommand{\@Roman}{LGR}[1]{\textlatin{\latin@Roman{#1}}}
+ \DeclareTextCompositeCommand{\"}{LGR}{}{\accdialytika}
+ \DeclareTextCompositeCommand{\'}{LGR}{}{\LGR@hiatus}
+ \DeclareTextCompositeCommand{\`}{LGR}{}{\LGR@hiatus}
+ \DeclareTextCompositeCommand{\<}{LGR}{}{\LGR@hiatus}
+ \DeclareTextCompositeCommand{\>}{LGR}{}{\LGR@hiatus}
+ \DeclareRobustCommand{\greektext}{%
+ \fontencoding{LGR}\selectfont
+ \def\encodingdefault{LGR}}
+ \DeclareRobustCommand{\textgreek}[1]{\leavevmode{\greektext #1}}
+ \def\outlfamily{\usefont{LGR}{cmro}{m}{n}}
+ \DeclareTextFontCommand{\textol}{\outlfamily}
+\fi % End of LGR fixes not required with XeTeX/LuaTeX.
\providehyphenmins{\CurrentOption}{\@ne\@ne}
\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}%
+ \def\prefacename{\textPi\textrho\'\textomicron\textlambda\textomicron%
+ \textgamma\textomicron\textfinalsigma}%
+ \def\refname{\textAlpha\textnu\textalpha%
+ \textphi\textomicron\textrho\'\textepsilon\textfinalsigma}%
+ \def\abstractname{\textPi\textepsilon\textrho\'\textiota%
+ \textlambda\texteta\textpsi\texteta}%
+ \def\bibname{\textBeta\textiota\textbeta\textlambda\textiota\textomicron%
+ \textgamma\textrho\textalpha\textphi\'\textiota\textalpha}%
+ \def\chaptername{\textKappa\textepsilon\textphi\'\textalpha%
+ \textlambda\textalpha\textiota\textomicron}%
+ \def\appendixname{\textPi\textalpha\textrho\'\textalpha\textrho%
+ \texttau\texteta\textmu\textalpha}%
+ \def\contentsname{\textPi\textepsilon\textrho\textiota%
+ \textepsilon\textchi\'\textomicron\textmu\textepsilon\textnu\textalpha}%
+ \def\listfigurename{\textKappa\textalpha\texttau\'\textalpha%
+ \textlambda\textomicron\textgamma\textomicron\textfinalsigma{}
+ \textSigma\textchi\texteta\textmu\'\textalpha\texttau\textomega\textnu}%
+ \def\listtablename{\textKappa\textalpha\texttau\'\textalpha%
+ \textlambda\textomicron\textgamma\textomicron\textfinalsigma{}
+ \textPi\textiota\textnu\'\textalpha\textkappa\textomega\textnu}%
+ \def\indexname{\textEpsilon\textupsilon\textrho\textepsilon%
+ \texttau\'\texteta\textrho\textiota\textomicron}%
+ \def\figurename{\textSigma\textchi\'\texteta\textmu\textalpha}%
+ \def\tablename{\textPi\'\textiota\textnu\textalpha%
+ \textkappa\textalpha\textfinalsigma}%
+ \def\partname{\textMu\'\textepsilon\textrho\textomicron\textfinalsigma}%
+ \def\enclname{\textSigma\textupsilon\textnu\texteta\textmu%
+ \textmu\'\textepsilon\textnu\textalpha}%
+ \def\ccname{\textKappa\textomicron\textiota\textnu\textomicron%
+ \textpi\textomicron\'\textiota\texteta\textsigma\texteta}%
+ \def\headtoname{\textPi\textrho\textomicron\textfinalsigma}%
+ \def\pagename{\textSigma\textepsilon\textlambda\'\textiota%
+ \textdelta\textalpha}%
+ \def\seename{\textbeta\textlambda\'\textepsilon\textpi\textepsilon}%
+ \def\alsoname{\textbeta\textlambda\'\textepsilon\textpi\textepsilon{}
+ \textepsilon\textpi\'\textiota\textsigma\texteta\textfinalsigma}%
+ \def\proofname{\textAlpha\textpi\'\textomicron%
+ \textdelta\textepsilon\textiota\textxi\texteta}%
+ \def\glossaryname{\textGamma\textlambda\textomega\textsigma%
+ \textsigma\'\textalpha\textrho\textiota}%
}
\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}%
+ \def\refname{\>\textAlpha\textnu\textalpha%
+ \textphi\textomicron\textrho\`\textepsilon\textfinalsigma}%
+ \def\indexname{\textEpsilon\<\textupsilon\textrho\textepsilon%
+ \texttau\'\texteta\textrho\textiota\textomicron}%
+ \def\figurename{\textSigma\textchi\~\texteta\textmu\textalpha}%
+ \def\headtoname{\textPi\textrho\`\textomicron\textfinalsigma}%
+ \def\alsoname{\textbeta\textlambda\'\textepsilon\textpi\textepsilon{}
+ \>\textepsilon\textpi\'\textiota\textsigma\texteta\textfinalsigma}%
+ \def\proofname{\>\textAlpha\textpi\'\textomicron%
+ \textdelta\textepsilon\textiota\textxi\texteta}%
}
\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}
+ \textIota\textalpha\textnu\textomicron\textupsilon\textalpha%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textPhi\textepsilon\textbeta\textrho\textomicron\textupsilon%
+ \textalpha\textrho\'\textiota\textomicron\textupsilon\or
+ \textMu\textalpha\textrho\texttau\'\textiota\textomicron\textupsilon\or
+ \textAlpha\textpi\textrho\textiota\textlambda\'\textiota%
+ \textomicron\textupsilon\or
+ \textMu\textalpha\'\"\textiota\textomicron\textupsilon\or
+ \textIota\textomicron\textupsilon\textnu\'\textiota%
+ \textomicron\textupsilon\or
+ \textIota\textomicron\textupsilon\textlambda\'\textiota%
+ \textomicron\textupsilon\or
+ \textAlpha\textupsilon\textgamma\textomicron\'\textupsilon\textsigma%
+ \texttau\textomicron\textupsilon\or
+ \textSigma\textepsilon\textpi\texttau\textepsilon\textmu%
+ \textbeta\textrho\'\textiota\textomicron\textupsilon\or
+ \textOmicron\textkappa\texttau\textomega\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textNu\textomicron\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textDelta\textepsilon\textkappa\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon%
+ \fi%
+}
\def\dategreek{%
\def\today{\number\day \space \gr@month\space \number\year}}
\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}
+ \ifcase\month\or
+ \>\textIota\textalpha\textnu\textomicron\textupsilon\textalpha%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textPhi\textepsilon\textbeta\textrho\textomicron\textupsilon%
+ \textalpha\textrho\'\textiota\textomicron\textupsilon\or
+ \textMu\textalpha\textrho\texttau\'\textiota\textomicron\textupsilon\or
+ \>\textAlpha\textpi\textrho\textiota\textlambda%
+ \'\textiota\textomicron\textupsilon\or
+ \textMu\textalpha\"\'\textiota\textomicron\textupsilon\or
+ \>\textIota\textomicron\textupsilon\textnu%
+ \'\textiota\textomicron\textupsilon\or
+ \>\textIota\textomicron\textupsilon\textlambda%
+ \'\textiota\textomicron\textupsilon\or
+ \textAlpha\>\textupsilon\textgamma\textomicron\'\textupsilon\textsigma%
+ \texttau\textomicron\textupsilon\or
+ \textSigma\textepsilon\textpi\texttau\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \>\textOmicron\textkappa\texttau\textomega\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textNu\textomicron\textepsilon\textmu\textbeta%
+ \textrho\'\textiota\textomicron\textupsilon\or
+ \textDelta\textepsilon\textkappa\textepsilon\textmu%
+ \textbeta\textrho\'\textiota\textomicron\textupsilon%
+ \fi
+}
\def\Grtoday{%
\expandafter\Greeknumeral\expandafter{\the\day}\space
\gr@c@month \space
\expandafter\Greeknumeral\expandafter{\the\year}}
-\addto\extrasgreek{\greektext}
-\addto\noextrasgreek{\latintext}
+\if@bbl@greek@unicode
+ \relax
+\else
+ \addto\extrasgreek{\greektext}
+ \addto\noextrasgreek{\latintext}
+\fi
\def\gr@ill@value#1{%
\PackageWarning{babel}{Illegal value (#1) for greeknumeral}}
\DeclareRobustCommand\anw@false{%
@@ -176,84 +265,85 @@
\addto\noextrasgreek{%
\let\@alph\latin@alph
\let\@Alph\latin@Alph}
-\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}
-\let\ltx@amp\&
-\def\greek@amp{\textlatin{\ltx@amp}}
-\addto\extrasgreek{\let\&\greek@amp}
-\addto\noextrasgreek{\let\&\ltx@amp}
\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
+ \ifcase#1\or \textalpha\or \textbeta\or \textgamma\or \textdelta\or
+ \textepsilon\or \textstigma\or \textzeta\or \texteta\or \texttheta\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
+ \ifcase#1\or \textiota\or \textkappa\or \textlambda\or \textmu\or
+ \textnu\or \textxi\or \textomicron\or \textpi\or \textqoppa\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
+ \ifcase#1\or \textrho\or \textsigma\or \texttau\or \textupsilon\or
+ \textphi\or \textchi\or \textpsi\or \textomega\or \textsampi\fi
\ifnum#1=\z@\anw@false\else\anw@true\fi\gr@num@ii}
\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
+ \ifcase#1\or \textalpha\or \textbeta\or \textgamma\or \textdelta\or
+ \textepsilon\or \stigma\or \textzeta\or \texteta\or \texttheta\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
+ \ifcase#1\or \textiota\or \textkappa\or \textlambda\or \textmu\or
+ \textnu\or \textxi\or \textomicron\or \textpi\or \textqoppa\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
+ \ifcase#1\or \textrho\or \textsigma\or \texttau\or \textupsilon\or
+ \textphi\or \textchi\or \textpsi\or \textomega\or \textsampi\fi
\gr@num@v}
-\begingroup
- \@ifundefined{active@char\string!}{}{\catcode`!=12\relax}
- \catcode`\~=12
- \lccode`\!=`\~
- \lowercase{\def\x{\endgroup
- \def\greek@tilde{!}}\x}
-\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`\`=`\`}
-\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}
-\@tempcnta=\lccode`\~
-\lccode`\~=159
-\lowercase{%
- \initiate@active@char{~}%
- \declare@shorthand{greek}{~}{}}
-\lccode`\~=\@tempcnta
-\addto\extraspolutonikogreek{\languageshorthands{greek}}%
-\declare@shorthand{greek}{~}{\greek@tilde}
-\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}
+
+\if@bbl@greek@unicode
+ \InputIfFileExists{xgreek-fixes.def}{}{%
+ \PackageWarning{babel}{Can't find the file "xgreek-fixes.def".\MessageBreak
+ For correct up/downcasing of Greek text,
+ install the "polyglossia" package.}%
+ }
+\else % 8-bit TeX
+ \begingroup
+ \@ifundefined{active@char\string!}{}{\catcode`!=12\relax}
+ \catcode`\~=12
+ \lccode`\!=`\~
+ \lowercase{\def\x{\endgroup
+ \def\greek@tilde{!}}\x}
+ \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`\`=`\`}
+ \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}
+ \@tempcnta=\lccode`\~
+ \lccode`\~=159
+ \lowercase{%
+ \initiate@active@char{~}%
+ \declare@shorthand{greek}{~}{}}
+ \lccode`\~=\@tempcnta
+ \addto\extraspolutonikogreek{\languageshorthands{greek}}%
+ \declare@shorthand{greek}{~}{\greek@tilde}
+\fi % End of LGR-specific code not required with XeTeX/LuaTeX.
+\providecommand*{\anwtonos}{\textnumeralsigngreek}
+\providecommand*{\katwtonos}{\textnumeralsignlowergreek}
+\providecommand*{\qoppa}{\textqoppa}
+\providecommand*{\stigma}{\textstigma}
+\providecommand*{\sampi}{\textsampi}
+\providecommand*{\Digamma}{\textDigamma}
+\providecommand*{\ddigamma}{\textdigamma}
+\providecommand*{\vardigamma}{\textvardigamma}
+\providecommand*{\euro}{\texteuro}
+\providecommand*{\permill}{\textperthousand}
\ldf@finish{\CurrentOption}
%% \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