greek-euenc.def
+++++++++++++++
Greek LICR definitions for XeTeX and LuaTeX
*******************************************

:Copyright: © 2013 Günter Milde
:Licence:   This work may be distributed and/or modified under the
            conditions of the `LaTeX Project Public License`_, either
            version 1.3 of this license or any later version.
:Identification:
 ::

  \ProvidesFile{greek-euenc.def}
  [2018/01/06 0.13.3 Greek LICRs for XeTeX and LuaTeX]
  
:abstract:
  Experimental support for Greek LICR macros with XeTeX and LuaTeX.
  Extends euenc_. Used by babel-greek_ and textalpha_.

**History**:
  .. class:: borderless

  ====== ==========  ========================================================
  0.1    2013-07-16  initial version
  0.1.1  2013-07-18  bugfix: wrong breathings psilioxia -> dasiaoxia
  0.1.2  2013-07-19  bugfix: Disable composite defs starting with char macro,
         ..          fix "hiatus" handling.
  0.1.3  2013-07-24  fix "input" path.
  0.1.4  2013-10-01  remove clashing defs for legacy characters with oxia,
         ..          fix upcasing of ``\finalsigma``.
  0.11.1 2013-12-01  fix identification.
  0.11.2 2014-09-08  ``\textKoppa`` macro
  ..                 (Capital Koppa is not defined in LGR but Unicode).
  0.12   2014-12-12  Remove symbol macros for breathing accents.
  0.13   2015-08-07  ``\lccode``/``\uccode`` corrections from xgreek_.
  ..                 LICR macros for symbol variants.
  0.13.3 2018-01-06  Documentation update.
  ====== ==========  ========================================================

.. contents::

Motivation
==========

LICR macro definitions for the Greek script are missing in both, xunicode_
and euenc_.

This file expands the font encoding definition files ``eu1enc.def`` rsp.
``eu2enc.def`` from euenc_ defining `LaTeX Internal Character
Representaction` (LICR) macros for Greek letters and symbols. It works
independed of xunicode_ using the standard commands for `LaTeX2e font
selection`_.

Requirements
============

Requires XeTeX or LuaTeX, fontspec_, and a font with Greek characters.

See `<greek-euenc-doc.tex>`_ and `<greek-euenc-doc.pdf>`_ for setup and
usage examples.


Greek Diacritics
================

Define "named macros" for simple and combined diacritics.

* Named accent macros can be used instead of the ``\@tabacckludge`` by
  to-LaTeX converters to ensure working also inside the tabbing environment.

* Named macros are required for upcasing according to Greek typesetting
  conventions and in the definition of composite commands.

Greek alias names for standard accents::

  \DeclareTextCommand{\acctonos}{\LastDeclaredEncoding}{\@tabacckludge'}
  \DeclareTextCommand{\accvaria}{\LastDeclaredEncoding}{\@tabacckludge`}
  \DeclareTextCommand{\accdialytika}{\LastDeclaredEncoding}{\@tabacckludge"}
  
The combining perispomeni character is normalized with Greek base letters,
while the (standard) combining tilde is not::

  \DeclareTextCommand{\accperispomeni}{\LastDeclaredEncoding}[1]{#1\char"0342 }
  
Breathings:

(The COMBINING GREEK KORONIS is a legacy character, discarded in favour of
COMBINING COMMA ABOVE) ::

  \DeclareTextCommand{\accpsili}{\LastDeclaredEncoding}[1]{#1\char"0313 } % ψιλή spiritus lenis (smooth breathing)
  \DeclareTextCommand{\accdasia}{\LastDeclaredEncoding}[1]{#1\char"0314 } % δασεῖα spiritus asper (rough breathing)
  
  
Sub-iota:

``\ypogegrammeni`` is a postfix accent (ligature in LGR) ::

  \DeclareTextSymbol{\ypogegrammeni}{\LastDeclaredEncoding}{0837} % COMBINING GREEK YPOGEGRAMMENI
  
Combined diacritics::

  % The COMBINING DIALYTIKA TONOS is discarded and not well supported by fonts:
  \DeclareTextCommand{\accdialytikatonos}{\LastDeclaredEncoding}[1]{#1\char"0308 \char"0301 }
  \DeclareTextCommand{\accdialytikavaria}{\LastDeclaredEncoding}[1]{#1\char"0308 \char"0300 }
  \DeclareTextCommand{\accdialytikaperispomeni}{\LastDeclaredEncoding}[1]{#1\char"0342 \char"0308 }
  
  \DeclareTextCommand{\accdasiaoxia}{\LastDeclaredEncoding}[1]{#1\char"0314 \char"0301 }
  \DeclareTextCommand{\accdasiavaria}{\LastDeclaredEncoding}[1]{#1\char"0314 \char"0300 }
  \DeclareTextCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}[1]{#1\char"0314 \char"0342 }
  
  \DeclareTextCommand{\accpsilioxia}{\LastDeclaredEncoding}[1]{#1\char"0301 \char"0313 }
  \DeclareTextCommand{\accpsilivaria}{\LastDeclaredEncoding}[1]{#1\char"0300 \char"0313 }
  \DeclareTextCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}[1]{#1\char"0342 \char"0313 }
  
  
Common Definitions
==================

Use the `common Greek font encoding definitions`_::

  \input{greek-fontenc.def}
  
  
Character Definitions
=====================

General Punctuation
~~~~~~~~~~~~~~~~~~~

Ligature break up with ZERO WIDTH NON-JOINER::

  \DeclareTextCommand{\textcompwordmark}{\LastDeclaredEncoding}{\char"200C}
  
Greek and Coptic
~~~~~~~~~~~~~~~~

::

  % NR    Unicode Name                                       %   babel name, % PU name
  % 0370  GREEK CAPITAL LETTER HETA                          % Ͱ
  % 0371  GREEK SMALL LETTER HETA                            % ͱ
  % 0372  GREEK CAPITAL LETTER ARCHAIC SAMPI                 % Ͳ
  % 0373  GREEK SMALL LETTER ARCHAIC SAMPI                   % ͳ
  \DeclareTextCommand{\textdexiakeraia}{\LastDeclaredEncoding}{ʹ} % \anwtonos, \textnumeralsigngreek
  \DeclareTextCommand{\textaristerikeraia}{\LastDeclaredEncoding}{͵} % \katwtonos, \textnumeralsignlowergreek
  % 0376  GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA            % Ͷ
  % 0377  GREEK SMALL LETTER PAMPHYLIAN DIGAMMA              % ͷ
  
  % 037A  GREEK YPOGEGRAMMENI (use \textcompwordmark\ypogegrammeni) % ͺ
  % 037B  GREEK SMALL REVERSED LUNATE SIGMA SYMBOL
  % 037C  GREEK SMALL DOTTED LUNATE SIGMA SYMBOL
  % 037D  GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL
  \DeclareTextCommand{\texterotimatiko}{\LastDeclaredEncoding}{;} % 037E GREEK QUESTION MARK
  
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textcompwordmark}{΄}
  \DeclareTextCompositeCommand{\accdialytikatonos}{\LastDeclaredEncoding}{\textcompwordmark}{΅}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textAlpha}{Ά}
  \DeclareTextCommand{\textanoteleia}{\LastDeclaredEncoding}{·} % \anoteleia
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textEpsilon}{Έ}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textEta}{Ή}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textIota}{Ί}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textOmicron}{Ό}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textUpsilon}{Ύ}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textOmega}{Ώ}
  \DeclareTextCompositeCommand{\accdialytikatonos}{\LastDeclaredEncoding}{\textiota}{ΐ}
  
  \DeclareTextCommand{\textAlpha}{\LastDeclaredEncoding}{Α}
  \DeclareTextCommand{\textBeta}{\LastDeclaredEncoding}{Β}
  \DeclareTextCommand{\textGamma}{\LastDeclaredEncoding}{Γ}
  \DeclareTextCommand{\textDelta}{\LastDeclaredEncoding}{Δ}
  \DeclareTextCommand{\textEpsilon}{\LastDeclaredEncoding}{Ε}
  \DeclareTextCommand{\textZeta}{\LastDeclaredEncoding}{Ζ}
  \DeclareTextCommand{\textEta}{\LastDeclaredEncoding}{Η}
  \DeclareTextCommand{\textTheta}{\LastDeclaredEncoding}{Θ}
  \DeclareTextCommand{\textIota}{\LastDeclaredEncoding}{Ι}
  \DeclareTextCommand{\textKappa}{\LastDeclaredEncoding}{Κ}
  \DeclareTextCommand{\textLambda}{\LastDeclaredEncoding}{Λ}
  \DeclareTextCommand{\textMu}{\LastDeclaredEncoding}{Μ}
  \DeclareTextCommand{\textNu}{\LastDeclaredEncoding}{Ν}
  \DeclareTextCommand{\textXi}{\LastDeclaredEncoding}{Ξ}
  \DeclareTextCommand{\textOmicron}{\LastDeclaredEncoding}{Ο}
  \DeclareTextCommand{\textPi}{\LastDeclaredEncoding}{Π}
  \DeclareTextCommand{\textRho}{\LastDeclaredEncoding}{Ρ}
  \DeclareTextCommand{\textSigma}{\LastDeclaredEncoding}{Σ}
  \DeclareTextCommand{\textTau}{\LastDeclaredEncoding}{Τ}
  \DeclareTextCommand{\textUpsilon}{\LastDeclaredEncoding}{Υ}
  \DeclareTextCommand{\textPhi}{\LastDeclaredEncoding}{Φ}
  \DeclareTextCommand{\textChi}{\LastDeclaredEncoding}{Χ}
  \DeclareTextCommand{\textPsi}{\LastDeclaredEncoding}{Ψ}
  \DeclareTextCommand{\textOmega}{\LastDeclaredEncoding}{Ω}
  
  \DeclareTextCompositeCommand{\"}{\LastDeclaredEncoding}{\textIota}{Ϊ}
  \DeclareTextCompositeCommand{\"}{\LastDeclaredEncoding}{\textUpsilon}{Ϋ}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textalpha}{ά}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textepsilon}{έ}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\texteta}{ή}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textiota}{ί}
  \DeclareTextCompositeCommand{\accdialytikatonos}{\LastDeclaredEncoding}{\textupsilon}{ΰ}
  
  \DeclareTextCommand{\textalpha}{\LastDeclaredEncoding}{α}
  \DeclareTextCommand{\textbeta}{\LastDeclaredEncoding}{β}
  \DeclareTextCommand{\textgamma}{\LastDeclaredEncoding}{γ}
  \DeclareTextCommand{\textdelta}{\LastDeclaredEncoding}{δ}
  \DeclareTextCommand{\textepsilon}{\LastDeclaredEncoding}{ε}
  \DeclareTextCommand{\textvarepsilon}{\LastDeclaredEncoding}{ε} % cf. $\varepsiolon$
  \DeclareTextCommand{\textzeta}{\LastDeclaredEncoding}{ζ}
  \DeclareTextCommand{\texteta}{\LastDeclaredEncoding}{η}
  \DeclareTextCommand{\texttheta}{\LastDeclaredEncoding}{θ}
  \DeclareTextCommand{\textiota}{\LastDeclaredEncoding}{ι}
  \DeclareTextCommand{\textkappa}{\LastDeclaredEncoding}{κ}
  \DeclareTextCommand{\textlambda}{\LastDeclaredEncoding}{λ}
  \DeclareTextCommand{\textmu}{\LastDeclaredEncoding}{μ} % \textmugreek
  \DeclareTextCommand{\textnu}{\LastDeclaredEncoding}{ν}
  \DeclareTextCommand{\textxi}{\LastDeclaredEncoding}{ξ}
  \DeclareTextCommand{\textomicron}{\LastDeclaredEncoding}{ο}
  \DeclareTextCommand{\textpi}{\LastDeclaredEncoding}{π}
  \DeclareTextCommand{\textrho}{\LastDeclaredEncoding}{ρ}
  \DeclareTextCommand{\textvarsigma}{\LastDeclaredEncoding}{ς} % final sigma
  \DeclareTextCommand{\textfinalsigma}{\LastDeclaredEncoding}{\textvarsigma}
  \DeclareTextCommand{\textsigma}{\LastDeclaredEncoding}{σ}
  % Dummy definition (\textautosigma is lowercase of \textSigma):
  \ProvideTextCommand{\textautosigma}{\LastDeclaredEncoding}{\textsigma}
  \DeclareTextCommand{\texttau}{\LastDeclaredEncoding}{τ}
  \DeclareTextCommand{\textupsilon}{\LastDeclaredEncoding}{υ}
  \DeclareTextCommand{\textphi}{\LastDeclaredEncoding}{φ}
  \DeclareTextCommand{\textvarphi}{\LastDeclaredEncoding}{φ} % cf. $\varphi$
  \DeclareTextCommand{\textchi}{\LastDeclaredEncoding}{χ}
  \DeclareTextCommand{\textpsi}{\LastDeclaredEncoding}{ψ}
  \DeclareTextCommand{\textomega}{\LastDeclaredEncoding}{ω}
  
  \DeclareTextCompositeCommand{\"}{\LastDeclaredEncoding}{\textiota}{ϊ}
  \DeclareTextCompositeCommand{\"}{\LastDeclaredEncoding}{\textupsilon}{ϋ}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textomicron}{ό}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textupsilon}{ύ}
  \DeclareTextCompositeCommand{\'}{\LastDeclaredEncoding}{\textomega}{ώ}
  
  \DeclareTextCommand{\textQoppa}{\LastDeclaredEncoding}{Ϙ}
  \DeclareTextCommand{\textqoppa}{\LastDeclaredEncoding}{ϙ}
  \DeclareTextCommand{\textStigma}{\LastDeclaredEncoding}{Ϛ}
  \DeclareTextCommand{\textstigma}{\LastDeclaredEncoding}{ϛ}
  \DeclareTextCommand{\textDigamma}{\LastDeclaredEncoding}{Ϝ}
  \DeclareTextCommand{\textdigamma}{\LastDeclaredEncoding}{ϝ}
  \DeclareTextCommand{\textKoppa}{\LastDeclaredEncoding}{Ϟ} % not defined in LGR
  \DeclareTextCommand{\textkoppa}{\LastDeclaredEncoding}{ϟ} % \koppa, \textqoppa [sic!]
  \DeclareTextCommand{\textSampi}{\LastDeclaredEncoding}{Ϡ}
  \DeclareTextCommand{\textsampi}{\LastDeclaredEncoding}{ϡ}
  
  % Symbol variants
  \DeclareTextCommand{\textbetasymbol}{\LastDeclaredEncoding}{ϐ}
  \DeclareTextCommand{\textkappasymbol}{\LastDeclaredEncoding}{ϰ}
  \DeclareTextCommand{\textThetasymbol}{\LastDeclaredEncoding}{ϴ}
  \DeclareTextCommand{\textthetasymbol}{\LastDeclaredEncoding}{ϑ}
  \DeclareTextCommand{\textphisymbol}{\LastDeclaredEncoding}{ϕ}
  \DeclareTextCommand{\textpisymbol}{\LastDeclaredEncoding}{ϖ}
  \DeclareTextCommand{\textrhosymbol}{\LastDeclaredEncoding}{ϱ}
  \DeclareTextCommand{\textepsilonsymbol}{\LastDeclaredEncoding}{ϵ}
  % math compatibility aliases
  % $\varphi$ and $\varepsilon$ refer to the letter characters (see above)!
  \DeclareTextCommand{\textvarbeta}{\LastDeclaredEncoding}{\textbetasymbol}
  \DeclareTextCommand{\textvarkappa}{\LastDeclaredEncoding}{ϰ}
  \DeclareTextCommand{\textvarTheta}{\LastDeclaredEncoding}{ϴ}
  \DeclareTextCommand{\textvartheta}{\LastDeclaredEncoding}{ϑ}
  \DeclareTextCommand{\textvarpi}{\LastDeclaredEncoding}{ϖ}
  \DeclareTextCommand{\textvarrho}{\LastDeclaredEncoding}{ϱ}
  
Greek Extended
~~~~~~~~~~~~~~

We skip definitions for characters "... WITH OXIA", because they would
overwrite the defintions for "... WITH TONOS" in the `Greek and Coptic`
block.

::

  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textalpha}{ἀ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textalpha}{ἁ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textalpha}{ἂ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textalpha}{ἃ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textalpha}{ἄ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textalpha}{ἅ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textalpha}{ἆ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textalpha}{ἇ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textAlpha}{Ἀ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textAlpha}{Ἁ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textAlpha}{Ἂ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textAlpha}{Ἃ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textAlpha}{Ἄ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textAlpha}{Ἅ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textAlpha}{Ἆ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textAlpha}{Ἇ}
  
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textepsilon}{ἐ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textepsilon}{ἑ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textepsilon}{ἒ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textepsilon}{ἓ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textepsilon}{ἔ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textepsilon}{ἕ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textEpsilon}{Ἐ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textEpsilon}{Ἑ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textEpsilon}{Ἒ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textEpsilon}{Ἓ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textEpsilon}{Ἔ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textEpsilon}{Ἕ}
  
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\texteta}{ἠ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\texteta}{ἡ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\texteta}{ἢ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\texteta}{ἣ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\texteta}{ἤ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\texteta}{ἥ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\texteta}{ἦ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\texteta}{ἧ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textEta}{Ἠ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textEta}{Ἡ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textEta}{Ἢ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textEta}{Ἣ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textEta}{Ἤ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textEta}{Ἥ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textEta}{Ἦ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textEta}{Ἧ}
  
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textiota}{ἰ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textiota}{ἱ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textiota}{ἲ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textiota}{ἳ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textiota}{ἴ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textiota}{ἵ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textiota}{ἶ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textiota}{ἷ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textIota}{Ἰ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textIota}{Ἱ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textIota}{Ἲ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textIota}{Ἳ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textIota}{Ἴ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textIota}{Ἵ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textIota}{Ἶ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textIota}{Ἷ}
  
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textomicron}{ὀ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textomicron}{ὁ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textomicron}{ὂ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textomicron}{ὃ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textomicron}{ὄ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textomicron}{ὅ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textOmicron}{Ὀ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textOmicron}{Ὁ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textOmicron}{Ὂ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textOmicron}{Ὃ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textOmicron}{Ὄ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textOmicron}{Ὅ}
  
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textupsilon}{ὐ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textupsilon}{ὑ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textupsilon}{ὒ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textupsilon}{ὓ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textupsilon}{ὔ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textupsilon}{ὕ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textupsilon}{ὖ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textupsilon}{ὗ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textUpsilon}{Ὑ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textUpsilon}{Ὓ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textUpsilon}{Ὕ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textUpsilon}{Ὗ}
  
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textomega}{ὠ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textomega}{ὡ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textomega}{ὢ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textomega}{ὣ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textomega}{ὤ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textomega}{ὥ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textomega}{ὦ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textomega}{ὧ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textOmega}{Ὠ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textOmega}{Ὡ}
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textOmega}{Ὢ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textOmega}{Ὣ}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textOmega}{Ὤ}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textOmega}{Ὥ}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textOmega}{Ὦ}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textOmega}{Ὧ}
  
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textalpha}{ὰ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textepsilon}{ὲ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\texteta}{ὴ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textiota}{ὶ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textomicron}{ὸ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textupsilon}{ὺ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textomega}{ὼ}
  
  \DeclareTextCompositeCommand{\u}{\LastDeclaredEncoding}{\textalpha}{ᾰ}
  \DeclareTextCompositeCommand{\=}{\LastDeclaredEncoding}{\textalpha}{ᾱ}
  % ᾲ
  % ᾳ
  % ᾴ
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{\textalpha}{ᾶ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{α}{ᾶ}
  \DeclareTextCompositeCommand{\accperispomeni}{\LastDeclaredEncoding}{\textalpha}{ᾶ}
  % ᾷ
  \DeclareTextCompositeCommand{\u}{\LastDeclaredEncoding}{\textAlpha}{Ᾰ}
  \DeclareTextCompositeCommand{\=}{\LastDeclaredEncoding}{\textAlpha}{Ᾱ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textAlpha}{Ὰ}
  % ᾼ
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textcompwordmark}{᾽}
  \DeclareTextCommand{\prosgegrammeni}{\LastDeclaredEncoding}{ι}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textcompwordmark}{᾿}
  
  \DeclareTextCompositeCommand{\accperispomeni}{\LastDeclaredEncoding}{\textcompwordmark}{῀}
  \DeclareTextCompositeCommand{\accdialytikaperispomeni}{\LastDeclaredEncoding}{\textcompwordmark}{῁}
  % ῂ
  % ῃ
  % ῄ
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{\texteta}{ῆ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{η}{ῆ}
  \DeclareTextCompositeCommand{\accperispomeni}{\LastDeclaredEncoding}{\texteta}{ῆ}
  % ῇ
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textEpsilon}{Ὲ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textEta}{Ὴ}
  % ῌ
  \DeclareTextCompositeCommand{\accpsilivaria}{\LastDeclaredEncoding}{\textcompwordmark}{῍}
  \DeclareTextCompositeCommand{\accpsilioxia}{\LastDeclaredEncoding}{\textcompwordmark}{῎}
  \DeclareTextCompositeCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}{\textcompwordmark}{῏}
  
  \DeclareTextCompositeCommand{\u}{\LastDeclaredEncoding}{\textiota}{ῐ}
  \DeclareTextCompositeCommand{\=}{\LastDeclaredEncoding}{\textiota}{ῑ}
  \DeclareTextCompositeCommand{\accdialytikavaria}{\LastDeclaredEncoding}{\textiota}{ῒ}
  \DeclareTextCompositeCommand{\accdialytikaoxia}{\LastDeclaredEncoding}{\textiota}{ΐ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{\textiota}{ῖ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{ι}{ῖ}
  \DeclareTextCompositeCommand{\accperispomeni}{\LastDeclaredEncoding}{\textiota}{ῖ}
  \DeclareTextCompositeCommand{\accdialytikaperispomeni}{\LastDeclaredEncoding}{\textiota}{ῗ}
  \DeclareTextCompositeCommand{\u}{\LastDeclaredEncoding}{\textIota}{Ῐ}
  \DeclareTextCompositeCommand{\=}{\LastDeclaredEncoding}{\textIota}{Ῑ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textIota}{Ὶ}
  \DeclareTextCompositeCommand{\accdasiavaria}{\LastDeclaredEncoding}{\textcompwordmark}{῝}
  \DeclareTextCompositeCommand{\accdasiaoxia}{\LastDeclaredEncoding}{\textcompwordmark}{῞}
  \DeclareTextCompositeCommand{\accdasiaperispomeni}{\LastDeclaredEncoding}{\textcompwordmark}{῟}
  
  \DeclareTextCompositeCommand{\u}{\LastDeclaredEncoding}{\textupsilon}{ῠ}
  \DeclareTextCompositeCommand{\=}{\LastDeclaredEncoding}{\textupsilon}{ῡ}
  \DeclareTextCompositeCommand{\accdialytikavaria}{\LastDeclaredEncoding}{\textupsilon}{ῢ}
  \DeclareTextCompositeCommand{\accdialytikaoxia}{\LastDeclaredEncoding}{\textupsilon}{ΰ}
  \DeclareTextCompositeCommand{\accpsili}{\LastDeclaredEncoding}{\textrho}{ῤ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textrho}{ῥ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{\textupsilon}{ῦ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{υ}{ῦ}
  \DeclareTextCompositeCommand{\accperispomeni}{\LastDeclaredEncoding}{\textupsilon}{ῦ}
  \DeclareTextCompositeCommand{\accdialytikaperispomeni}{\LastDeclaredEncoding}{\textupsilon}{ῧ}
  \DeclareTextCompositeCommand{\u}{\LastDeclaredEncoding}{\textUpsilon}{Ῠ}
  \DeclareTextCompositeCommand{\=}{\LastDeclaredEncoding}{\textUpsilon}{Ῡ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textUpsilon}{Ὺ}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textRho}{Ῥ}
  \DeclareTextCompositeCommand{\accdialytikavaria}{\LastDeclaredEncoding}{\textcompwordmark}{῭}
  \DeclareTextCompositeCommand{\accdialytikaoxia}{\LastDeclaredEncoding}{\textcompwordmark}{΅}
  
  % ῲ
  % ῳ
  % ῴ
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{\textomega}{ῶ}
  \DeclareTextCompositeCommand{\~}{\LastDeclaredEncoding}{ω}{ῶ}
  \DeclareTextCompositeCommand{\accperispomeni}{\LastDeclaredEncoding}{\textomega}{ῶ}
  % ῷ
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textOmicron}{Ὸ}
  \DeclareTextCompositeCommand{\`}{\LastDeclaredEncoding}{\textOmega}{Ὼ}
  % ῼ
  \DeclareTextCompositeCommand{\accoxia}{\LastDeclaredEncoding}{\textcompwordmark}{´}
  \DeclareTextCompositeCommand{\accdasia}{\LastDeclaredEncoding}{\textcompwordmark}{῾}
  
Letterlike Symbols
~~~~~~~~~~~~~~~~~~
::

  \DeclareTextCommand{\textohm}{\LastDeclaredEncoding}{Ω} % OHM SIGN
  
Ancient Greek Numbers
~~~~~~~~~~~~~~~~~~~~~
TODO: map other chars to corresponding Greek letters.
See also the grnumalt_ package.

Definition with literal Unicode characters, because the code-point has 5
hexadecimal digits:

::

  \DeclareTextCommand{\textpentedeka}{\LastDeclaredEncoding}{𐅄}    % GREEK ACROPHONIC ATTIC FIFTY
  \DeclareTextCommand{\textpentehekaton}{\LastDeclaredEncoding}{𐅅} % GREEK ACROPHONIC ATTIC FIVE HUNDRED
  \DeclareTextCommand{\textpenteqilioi}{\LastDeclaredEncoding}{𐅆}  % GREEK ACROPHONIC ATTIC FIVE THOUSAND
  \DeclareTextCommand{\textpentemuria}{\LastDeclaredEncoding}{𐅇}   % GREEK ACROPHONIC ATTIC FIFTY THOUSAND
  
  
UPPERCASE
=========

Greek letters drop diacritics (eccept dialytika and sub-iota) in UPPERCASE.

uc/lc values
~~~~~~~~~~~~

``\lccode`` and ``\uccode`` corrections from the xgreek_ package 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="03A1
  \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
  
  
uclclist
~~~~~~~~

The common Greek font encoding definitions in greek-fontenc.def_ extend the
`uclclist` with Greek LICR macros. Here, we add textkoppa/textKoppa and
Unicode-specific "hiatus_" handling (copied from lgrenc.def_ and changed
Latin transcription to Unicode literals).

@uclclist extension (see also greek-fontenc.def_)::

  \providecommand*\greek@euenc@update@uclclist{%
    \expandafter\def\expandafter\@uclclist\expandafter{%
      \@uclclist
      \textkoppa \textKoppa
    }%
    \let\greek@euenc@update@uclclist\relax
  }
  
Expand the uclc list using the just defined macro::

  \greek@euenc@update@uclclist
  
Now the hiatus definition modifications::

  \DeclareTextCommand{\LGR@A@hiatus}{\LastDeclaredEncoding}{%
    \LGR@ifnextchar{Ι}{\textAlpha\"}{%
      \LGR@ifnextchar{Υ}{\textAlpha\"}{%
        \LGR@ifnextchar{\textIota}{\textAlpha\"}{%
          \LGR@ifnextchar{\textUpsilon}{\textAlpha\"}{\textAlpha}%
        }%
      }%
    }%
  }
  \DeclareTextCommand{\LGR@E@hiatus}{\LastDeclaredEncoding}{%
    \LGR@ifnextchar{Ι}{\textEpsilon\"}{%
      \LGR@ifnextchar{Υ}{\textEpsilon\"}{%
        \LGR@ifnextchar{\textIota}{\textEpsilon\"}{%
          \LGR@ifnextchar{\textUpsilon}{\textEpsilon\"}{\textEpsilon}%
        }%
      }%
    }%
  }
  
.. References

.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt
.. _babel-greek: http://www.ctan.org/pkg/babel-greek
.. _euenc: http://www.ctan.org/pkg/euenc
.. _fontspec: http://www.ctan.org/pkg/fontspec
.. _greek-fontenc: http://www.ctan.org/pkg/greek-fontenc
.. _grnumalt: http://www.ctan.org/pkg/grnumalt
.. _inputenc: http://www.ctan.org/pkg/inputenc
.. _textalpha: textalpha.sty.html
.. _xgreek: http://www.ctan.org/pkg/xgreek
.. _xunicode: http://www.ctan.org/pkg/xunicode

.. _LaTeX2e font selection:
   http://mirror.ctan.org/macros/latex/doc/fntguide.pdf
.. _common Greek font encoding definitions:
.. _greek-fontenc.def: greek-fontenc.def.html
.. _lgrenc.def: lgrenc.def.html
.. _hiatus: greek-fontenc.def.html#mark-hiatus
