xunicode-greek.sty: xunicode extension for Greek

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
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{xunicode-greek}
[2013/07/18 0.1.1 Greek LICRs for XeTeX and LuaTeX]

Based on xunicode, lgrenc.def and lgrenc.dfu.

Changelog:

2013-07-16

0.1

initial version

2013-07-18

0.1.1

bugfix: wrong breathings psilioxia -> dasiaoxia

Requires XeTeX or LuaTeX and a font with Greek characters. See test-xunicode.tex and test-xunicode.pdf for usage details and example.

xunicode.sty defines several commands for the declaration of UTF characters, composites and accents. These are (sparsely) documented in the source. Unfortunately, they do not work seamless with the standard NFSS commands described in the fntguide. Therefore, some declarations are done twice: for fontenc and for xunicode (xunicode itself uses dummy declarations for the OT1 encoding).

Greek Diacritics

Define “named macros” for simple and combined diacritics.

Greek alias names for standard accents:

\DeclareTextCommand{\acctonos}{\LastDeclaredEncoding}{\@tabacckludge'}
\DeclareTextCommand{\accvaria}{\LastDeclaredEncoding}{\@tabacckludge`}
\DeclareTextCommand{\accdialytika}{\LastDeclaredEncoding}{\@tabacckludge"}
\DeclareTextCommand{\accperispomeni}{\LastDeclaredEncoding}{\@tabacckludge~}

Breathings:

\DeclareTextCommand{\accpsili}{\LastDeclaredEncoding}[1]{#1\char"0313 } % ψιλή spiritus lenis (smooth breathing)
\DeclareTextCommand{\accdasia}{\LastDeclaredEncoding}[1]{#1\char"0314 } % δασεῖα spiritus asper (rough breathing)
\DeclareTextCommand{\>}{\LastDeclaredEncoding}{\accpsili}
\DeclareTextCommand{\<}{\LastDeclaredEncoding}{\accdasia}
\DeclareEncodedCompositeCharacter{\LastDeclaredEncoding}{\accpsili}{0313}{02BC} % COMBINING COMMA ABOVE = Greek psili, smooth breathing mark
\DeclareEncodedCompositeCharacter{\LastDeclaredEncoding}{\accdasia}{0314}{02BD} % COMBINING REVERSED COMMA ABOVE = Greek dasia, rough breathing mark

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

Sub-iota:

% \ypogegrammeni is a postfix accent (ligature in LGR)
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0345}{\ypogegrammeni} % COMBINING GREEK YPOGEGRAMMENI

Combined diacritics:

% \DeclareTextCommand{\accdialytikatonos}{\LastDeclaredEncoding}{\textdieresisacute} % Greek alias
% \DeclareTextCommand{\accdialytikavaria}{\LastDeclaredEncoding}{\textdieresisgrave}
\DeclareTextCommand{\accdialytikatonos}{\LastDeclaredEncoding}[1]{#1\char"0308 \char"0301 }
\DeclareTextCommand{\accdialytikavaria}{\LastDeclaredEncoding}[1]{#1\char"0308 \char"0300 }
\DeclareTextCommand{\accdialytikaperispomeni}{\LastDeclaredEncoding}[1]{#1\char"0308 \char"0342 }

\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"0313 \char"0301 }
\DeclareTextCommand{\accpsilivaria}{\LastDeclaredEncoding}[1]{#1\char"0313 \char"0300 }
\DeclareTextCommand{\accpsiliperispomeni}{\LastDeclaredEncoding}[1]{#1\char"0313 \char"0342 }

xunicode special commands for accents with combining Unicode character(s):

According to the definition and usage in xunicode.sty, \DeclareEncodedCompositeAccents should set up accents by combining two combining characters. Unfortunately this does not seem to work: one of the combining characters is missing (see test-xunicode.tex). However, as for all letters that use the combining accents pre-composed characters are selected (via composite definitions below) this should not matter in actual use:

% The COMBINING DIALYTIKA TONOS is discarded and not well supported by fonts:
% \DeclareEncodedCompositeCharacter{\LastDeclaredEncoding}{\accdialytikatonos}{0344}{0385} % COMBINING GREEK DIALYTIKA TONOS / GREEK DIALYTIKA TONOS
% If Dialytika-Tonos and Dialytika-Varia are defined as alias for \textdieresisacute,
% and \textdieresisgrave, they are already set up for xunicode.
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accdialytikatonos}{0301}{0308}
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accdialytikavaria}{0300}{0308}
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accdialytikaperispomeni}{0342}{0308}

\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accdasiaoxia}{0314}{0301}
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accdasiavaria}{0314}{0300}
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accdasiaperispomeni}{0314}{0342}

\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accpsilioxia}{0301}{0313}
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accpsilivaria}{0300}{0313}
\DeclareEncodedCompositeAccents{\LastDeclaredEncoding}{\accpsiliperispomeni}{0342}{0313}

Composite Diacritics

Use the common Greek font encoding definitions:

\input{../greek-fontenc/greek-fontenc.def}

Character Definitions

Greek and Coptic

% NR    Unicode Name                                       %   babel name, UCS name
% 0370  GREEK CAPITAL LETTER HETA                          % Ͱ
% 0371  GREEK SMALL LETTER HETA                            % ͱ
% 0372  GREEK CAPITAL LETTER ARCHAIC SAMPI                 % Ͳ
% 0373  GREEK SMALL LETTER ARCHAIC SAMPI                   % Ͳ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0374}{\textdexiakeraia} % ʹ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0375}{\textaristerikeraia} % ͵
% 0376  GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA            % Ͷ
% 0377  GREEK SMALL LETTER PAMPHYLIAN DIGAMMA              % ͷ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x037A}{\textcompwordmark}{\ypogegrammeni} % ͺ
% 037B  GREEK SMALL REVERSED LUNATE SIGMA SYMBOL           %
% 037C  GREEK SMALL DOTTED LUNATE SIGMA SYMBOL             %
% 037D  GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL    %
\DeclareUTFcharacter[\LastDeclaredEncoding]{x037E}{\texterotimatiko} % ; \textquestion

\DeclareUTFcomposite[\LastDeclaredEncoding]{x0384}{\'}{\textcompwordmark} % ΄
\DeclareUTFcomposite[\LastDeclaredEncoding]{x0385}{\"'}{\textcompwordmark} % ΅ \textdialytikatonos
\DeclareUTFcomposite[\LastDeclaredEncoding]{x0386}{\'}{\textAlpha}   % Ά
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0387}{\textanoteleia}   % · \anoteleia
\DeclareUTFcomposite[\LastDeclaredEncoding]{x0388}{\'}{\textEpsilon} % Έ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x0389}{\'}{\textEta}     % Ή
\DeclareUTFcomposite[\LastDeclaredEncoding]{x038A}{\'}{\textIota}    % Ί
\DeclareUTFcomposite[\LastDeclaredEncoding]{x038C}{\'}{\textOmicron} % Ό
\DeclareUTFcomposite[\LastDeclaredEncoding]{x038E}{\'}{\textUpsilon} % Ύ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x038F}{\'}{\textOmega}   % Ώ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x0390}{\accdialytikatonos}{\textiota} % ΐ

\DeclareUTFcharacter[\LastDeclaredEncoding]{x0391}{\textAlpha}   % Α
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0392}{\textBeta}    % Β
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0393}{\textGamma}   % Γ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0394}{\textDelta}   % Δ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0395}{\textEpsilon} % Ε
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0396}{\textZeta}    % Ζ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0397}{\textEta}     % Η
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0398}{\textTheta}   % Θ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x0399}{\textIota}    % Ι
\DeclareUTFcharacter[\LastDeclaredEncoding]{x039A}{\textKappa}   % Κ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x039B}{\textLambda}  % Λ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x039C}{\textMu}      % Μ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x039D}{\textNu}      % Ν
\DeclareUTFcharacter[\LastDeclaredEncoding]{x039E}{\textXi}      % Ξ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x039F}{\textOmicron} % Ο
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A0}{\textPi}      % Π
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A1}{\textRho}     % Ρ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A3}{\textSigma}   % Σ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A4}{\textTau}     % Τ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A5}{\textUpsilon} % Υ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A6}{\textPhi}     % Φ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A7}{\textChi}     % Χ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A8}{\textPsi}     % Ψ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03A9}{\textOmega}   % Ω

\DeclareUTFcomposite[\LastDeclaredEncoding]{x03AA}{\"}{\textIota}    % Ϊ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03AB}{\"}{\textUpsilon} % Ϋ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03AC}{\'}{\textalpha}   % ά
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03AD}{\'}{\textepsilon} % έ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03AE}{\'}{\texteta}     % ή
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03AF}{\'}{\textiota}    % ί
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03B0}{\accdialytikatonos}{\textupsilon}  % ΰ

\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B1}{\textalpha}    % α
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B2}{\textbeta}     % β
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B3}{\textgamma}    % γ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B4}{\textdelta}    % δ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B5}{\textepsilon}  % ε
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B6}{\textzeta}     % ζ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B7}{\texteta}      % η
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B8}{\texttheta}    % θ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03B9}{\textiota}     % ι
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03BA}{\textkappa}    % κ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03BB}{\textlambda}   % λ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03BC}{\textmu}       % μ \textmugreek
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03BD}{\textnu}       % ν
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03BE}{\textxi}       % ξ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03BF}{\textomicron}  % ο
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C0}{\textpi}       % π
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C1}{\textrho}      % ρ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C2}{\textvarsigma} % ς
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C2}{\textfinalsigma} % ς
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C3}{\textsigma}    % σ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C4}{\texttau}      % τ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C5}{\textupsilon}  % υ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C6}{\textphi}      % φ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C7}{\textchi}      % χ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C8}{\textpsi}      % ψ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03C9}{\textomega}    % ω

\DeclareUTFcomposite[\LastDeclaredEncoding]{x03CA}{\"}{\textiota}                 % ϊ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03CB}{\"}{\textupsilon}              % ϋ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03CC}{\'}{\textomicron} % ό
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03CD}{\'}{\textupsilon} % ύ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x03CE}{\'}{\textomega}   % ώ

\DeclareUTFcharacter[\LastDeclaredEncoding]{x03D8}{\textQoppa}    % Ϙ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03D9}{\textqoppa}    % ϙ
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03DA}{\textStigma}   % Ϛ \Stigma
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03DB}{\textstigma}   % ϛ \stigma
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03DC}{\textDigamma}  % Ϝ \Digamma
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03DD}{\textdigamma}  % ϝ \ddigamma
%03DE GREEK LETTER KOPPA                      % Ϟ \textKoppa
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03DF}{\textkoppa}    % ϟ \koppa, \textqoppa [sic!]
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03E0}{\textSampi}    % Ϡ \Sampi
\DeclareUTFcharacter[\LastDeclaredEncoding]{x03E1}{\textsampi}    % ϡ \sampi

Greek Extended

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F00}{\accpsili}{\textalpha}     % ἀ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F01}{\accdasia}{\textalpha}     % ἁ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F02}{\accpsilivaria}{\textalpha}    % ἂ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F03}{\accdasiavaria}{\textalpha}    % ἃ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F04}{\accpsilioxia}{\textalpha}    % ἄ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F05}{\accdasiaoxia}{\textalpha}    % ἅ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F06}{\accpsiliperispomeni}{\textalpha}    % ἆ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F07}{\accdasiaperispomeni}{\textalpha}    % ἇ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F08}{\accpsili}{\textAlpha}     % Ἀ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F09}{\accdasia}{\textAlpha}     % Ἁ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F0A}{\accpsilivaria}{\textAlpha}    % Ἂ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F0B}{\accdasiavaria}{\textAlpha}    % Ἃ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F0C}{\accpsilioxia}{\textAlpha}    % Ἄ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F0D}{\accdasiaoxia}{\textAlpha}    % Ἅ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F0E}{\accpsiliperispomeni}{\textAlpha}    % Ἆ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F0F}{\accdasiaperispomeni}{\textAlpha}    % Ἇ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F10}{\accpsili}{\textepsilon}   % ἐ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F11}{\accdasia}{\textepsilon}   % ἑ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F12}{\accpsilivaria}{\textepsilon}  % ἒ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F13}{\accdasiavaria}{\textepsilon}  % ἓ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F14}{\accpsilioxia}{\textepsilon}  % ἔ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F15}{\accdasiaoxia}{\textepsilon}  % ἕ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F18}{\accpsili}{\textEpsilon}   % Ἐ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F19}{\accdasia}{\textEpsilon}   % Ἑ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F1A}{\accpsilivaria}{\textEpsilon}  % Ἒ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F1B}{\accdasiavaria}{\textEpsilon}  % Ἓ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F1C}{\accpsilioxia}{\textEpsilon}  % Ἔ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F1D}{\accdasiaoxia}{\textEpsilon}  % Ἕ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F20}{\accpsili}{\texteta}       % ἠ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F21}{\accdasia}{\texteta}       % ἡ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F22}{\accpsilivaria}{\texteta}      % ἢ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F23}{\accdasiavaria}{\texteta}      % ἣ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F24}{\accpsilioxia}{\texteta}      % ἤ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F25}{\accdasiaoxia}{\texteta}      % ἥ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F26}{\accpsiliperispomeni}{\texteta}      % ἦ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F27}{\accdasiaperispomeni}{\texteta}      % ἧ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F28}{\accpsili}{\textEta}       % Ἠ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F29}{\accdasia}{\textEta}       % Ἡ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F2A}{\accpsilivaria}{\textEta}      % Ἢ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F2B}{\accdasiavaria}{\textEta}      % Ἣ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F2C}{\accpsilioxia}{\textEta}      % Ἤ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F2D}{\accdasiaoxia}{\textEta}      % Ἥ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F2E}{\accpsiliperispomeni}{\textEta}      % Ἦ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F2F}{\accdasiaperispomeni}{\textEta}      % Ἧ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F30}{\accpsili}{\textiota}      % ἰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F31}{\accdasia}{\textiota}      % ἱ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F32}{\accpsilivaria}{\textiota}     % ἲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F33}{\accdasiavaria}{\textiota}     % ἳ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F34}{\accpsilioxia}{\textiota}     % ἴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F35}{\accdasiaoxia}{\textiota}     % ἵ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F36}{\accpsiliperispomeni}{\textiota}     % ἶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F37}{\accdasiaperispomeni}{\textiota}     % ἷ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F38}{\accpsili}{\textIota}      % Ἰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F39}{\accdasia}{\textIota}      % Ἱ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F3A}{\accpsilivaria}{\textIota}     % Ἲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F3B}{\accdasiavaria}{\textIota}     % Ἳ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F3C}{\accpsilioxia}{\textIota}     % Ἴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F3D}{\accdasiaoxia}{\textIota}     % Ἵ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F3E}{\accpsiliperispomeni}{\textIota}     % Ἶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F3F}{\accdasiaperispomeni}{\textIota}     % Ἷ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F40}{\accpsili}{\textomicron}   % ὀ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F41}{\accdasia}{\textomicron}   % ὁ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F42}{\accpsilivaria}{\textomicron}  % ὂ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F43}{\accdasiavaria}{\textomicron}  % ὃ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F44}{\accpsilioxia}{\textomicron}  % ὄ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F45}{\accdasiaoxia}{\textomicron}  % ὅ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F48}{\accpsili}{\textOmicron}   % Ὀ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F49}{\accdasia}{\textOmicron}   % Ὁ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F4A}{\accpsilivaria}{\textOmicron}  % Ὂ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F4B}{\accdasiavaria}{\textOmicron}  % Ὃ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F4C}{\accpsilioxia}{\textOmicron}  % Ὄ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F4D}{\accdasiaoxia}{\textOmicron}  % Ὅ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F50}{\accpsili}{\textupsilon}   % ὐ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F51}{\accdasia}{\textupsilon}   % ὑ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F52}{\accpsilivaria}{\textupsilon}  % ὒ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F53}{\accdasiavaria}{\textupsilon}  % ὓ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F54}{\accpsilioxia}{\textupsilon}  % ὔ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F55}{\accdasiaoxia}{\textupsilon}  % ὕ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F56}{\accpsiliperispomeni}{\textupsilon}  % ὖ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F57}{\accdasiaperispomeni}{\textupsilon}  % ὗ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F59}{\accdasia}{\textUpsilon}   % Ὑ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F5B}{\accdasiavaria}{\textUpsilon}  % Ὓ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F5D}{\accdasiaoxia}{\textUpsilon}  % Ὕ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F5F}{\accdasiaperispomeni}{\textUpsilon}  % Ὗ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F60}{\accpsili}{\textomega}     % ὠ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F61}{\accdasia}{\textomega}     % ὡ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F62}{\accpsilivaria}{\textomega}    % ὢ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F63}{\accdasiavaria}{\textomega}    % ὣ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F64}{\accpsilioxia}{\textomega}    % ὤ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F65}{\accdasiaoxia}{\textomega}    % ὥ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F66}{\accpsiliperispomeni}{\textomega}    % ὦ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F67}{\accdasiaperispomeni}{\textomega}    % ὧ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F68}{\accpsili}{\textOmega}     % Ὠ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F69}{\accdasia}{\textOmega}     % Ὡ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F6A}{\accpsilivaria}{\textOmega}    % Ὢ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F6B}{\accdasiavaria}{\textOmega}    % Ὣ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F6C}{\accpsilioxia}{\textOmega}    % Ὤ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F6D}{\accdasiaoxia}{\textOmega}    % Ὥ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F6E}{\accpsiliperispomeni}{\textOmega}    % Ὦ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F6F}{\accdasiaperispomeni}{\textOmega}    % Ὧ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F70}{\`}{\textalpha}     % ὰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F71}{\'}{\textalpha}     % ά
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F72}{\`}{\textepsilon}   % ὲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F73}{\'}{\textepsilon}   % έ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F74}{\`}{\texteta}       % ὴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F75}{\'}{\texteta}       % ή
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F76}{\`}{\textiota}      % ὶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F77}{\'}{\textiota}      % ί
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F78}{\`}{\textomicron}   % ὸ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F79}{\'}{\textomicron}   % ό
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7A}{\`}{\textupsilon}   % ὺ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7B}{\'}{\textupsilon}   % ύ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7C}{\`}{\textomega}     % ὼ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7D}{\'}{\textomega}     % ώ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F70}{\accvaria}{\textalpha}     % ὰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F71}{\acctonos}{\textalpha}     % ά
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F72}{\accvaria}{\textepsilon}   % ὲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F73}{\acctonos}{\textepsilon}   % έ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F74}{\accvaria}{\texteta}       % ὴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F75}{\acctonos}{\texteta}       % ή
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F76}{\accvaria}{\textiota}      % ὶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F77}{\acctonos}{\textiota}      % ί
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F78}{\accvaria}{\textomicron}   % ὸ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F79}{\acctonos}{\textomicron}   % ό
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7A}{\accvaria}{\textupsilon}   % ὺ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7B}{\acctonos}{\textupsilon}   % ύ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7C}{\accvaria}{\textomega}     % ὼ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1F7D}{\acctonos}{\textomega}     % ώ

%% postfix ypogegrammeni cannot be second part of composite defs.
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F80}{\accpsili}{\textalpha\ypogegrammeni}   % ᾀ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F81}{\accdasia}{\textalpha\ypogegrammeni}   % ᾁ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F82}{\accpsilivaria}{\textalpha\ypogegrammeni}  % ᾂ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F83}{\accdasiavaria}{\textalpha\ypogegrammeni}  % ᾃ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F84}{\accpsilioxia}{\textalpha\ypogegrammeni}  % ᾄ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F85}{\accdasiaoxia}{\textalpha\ypogegrammeni}  % ᾅ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F86}{\accpsiliperispomeni}{\textalpha\ypogegrammeni}  % ᾆ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F87}{\accdasiaperispomeni}{\textalpha\ypogegrammeni}  % ᾇ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F88}{\accpsili}{\textAlpha\prosgegrammeni}  % ᾈ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F89}{\accdasia}{\textAlpha\prosgegrammeni}  % ᾉ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F8A}{\accpsilivaria}{\textAlpha\prosgegrammeni} % ᾊ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F8B}{\accdasiavaria}{\textAlpha\prosgegrammeni} % ᾋ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F8C}{\accpsilioxia}{\textAlpha\prosgegrammeni} % ᾌ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F8D}{\accdasiaoxia}{\textAlpha\prosgegrammeni} % ᾍ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F8E}{\accpsiliperispomeni}{\textAlpha\prosgegrammeni} % ᾎ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F8F}{\accdasiaperispomeni}{\textAlpha\prosgegrammeni} % ᾏ
%
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F90}{\accpsili}{\texteta\ypogegrammeni}     % ᾐ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F91}{\accdasia}{\texteta\ypogegrammeni}     % ᾑ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F92}{\accpsilivaria}{\texteta\ypogegrammeni}    % ᾒ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F93}{\accdasiavaria}{\texteta\ypogegrammeni}    % ᾓ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F94}{\accpsilioxia}{\texteta\ypogegrammeni}    % ᾔ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F95}{\accdasiaoxia}{\texteta\ypogegrammeni}    % ᾕ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F96}{\accpsiliperispomeni}{\texteta\ypogegrammeni}    % ᾖ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F97}{\accdasiaperispomeni}{\texteta\ypogegrammeni}    % ᾗ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F98}{\accpsili}{\textEta\prosgegrammeni}    % ᾘ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F99}{\accdasia}{\textEta\prosgegrammeni}    % ᾙ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F9A}{\accpsilivaria}{\textEta\prosgegrammeni}   % ᾚ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F9B}{\accdasiavaria}{\textEta\prosgegrammeni}   % ᾛ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F9C}{\accpsilioxia}{\textEta\prosgegrammeni}   % ᾜ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F9D}{\accdasiaoxia}{\textEta\prosgegrammeni}   % ᾝ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F9E}{\accpsiliperispomeni}{\textEta\prosgegrammeni}   % ᾞ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1F9F}{\accdasiaperispomeni}{\textEta\prosgegrammeni}   % ᾟ
%
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA0}{\accpsili}{\textomega\ypogegrammeni}   % ᾠ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA1}{\accdasia}{\textomega\ypogegrammeni}   % ᾡ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA2}{\accpsilivaria}{\textomega\ypogegrammeni}  % ᾢ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA3}{\accdasiavaria}{\textomega\ypogegrammeni}  % ᾣ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA4}{\accpsilioxia}{\textomega\ypogegrammeni}  % ᾤ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA5}{\accdasiaoxia}{\textomega\ypogegrammeni}  % ᾥ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA6}{\accpsiliperispomeni}{\textomega\ypogegrammeni}  % ᾦ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA7}{\accdasiaperispomeni}{\textomega\ypogegrammeni}  % ᾧ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA8}{\accpsili}{\textOmega\prosgegrammeni}  % ᾨ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FA9}{\accdasia}{\textOmega\prosgegrammeni}  % ᾩ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FAA}{\accpsilivaria}{\textOmega\prosgegrammeni} % ᾪ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FAB}{\accdasiavaria}{\textOmega\prosgegrammeni} % ᾫ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FAC}{\accpsilioxia}{\textOmega\prosgegrammeni} % ᾬ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FAD}{\accdasiaoxia}{\textOmega\prosgegrammeni} % ᾭ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FAE}{\accpsiliperispomeni}{\textOmega\prosgegrammeni} % ᾮ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FAF}{\accdasiaperispomeni}{\textOmega\prosgegrammeni} % ᾯ

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB0}{\u}{\textalpha}                  % ᾰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB1}{\=}{\textalpha}     % ᾱ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB2}{\`}{\textalpha\ypogegrammeni} % ᾲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB3}{\textalpha}{\ypogegrammeni}      % ᾳ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB4}{\'}{\textalpha\ypogegrammeni} % ᾴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB6}{\~}{\textalpha}                  % ᾶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB6}{\accperispomeni}{\textalpha}                  % ᾶ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB7}{\accperispomeni}{\textalpha\ypogegrammeni}    % ᾷ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB8}{\u}{\textAlpha}                  % Ᾰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FB9}{\=}{\textAlpha}     % Ᾱ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBA}{\`}{\textAlpha}     % Ὰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBB}{\'}{\textAlpha}     % Ά
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBA}{\accvaria}{\textAlpha}     % Ὰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBB}{\acctonos}{\textAlpha}     % Ά
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBC}{\textAlpha}{\prosgegrammeni}     % ᾼ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBD}{\accpsili}{\textcompwordmark} % ᾽
\DeclareUTFcharacter[\LastDeclaredEncoding]{x1FBE}{\prosgegrammeni} % ι
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FBF}{\accpsili}{\textcompwordmark} % ᾿

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC0}{\~}{\textcompwordmark}           % ῀
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC0}{\accperispomeni}{\textcompwordmark}           % ῀
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC1}{\accdialytikaperispomeni}{\textcompwordmark}         % ῁
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC2}{\`}{\texteta\ypogegrammeni} % ῂ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC3}{\texteta}{\ypogegrammeni}        % ῃ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC4}{\'}{\texteta\ypogegrammeni} % ῄ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC6}{\~}{\texteta}                    % ῆ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC6}{\accperispomeni}{\texteta}                    % ῆ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC7}{\accperispomeni}{\texteta\ypogegrammeni}      % ῇ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC8}{\`}{\textEpsilon}                 % Ὲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC9}{\'}{\textEpsilon}                 % Έ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCA}{\`}{\textEta}                     % Ὴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCB}{\'}{\textEta}                     % Ή
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC8}{\accvaria}{\textEpsilon}          % Ὲ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FC9}{\acctonos}{\textEpsilon}          % Έ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCA}{\accvaria}{\textEta}              % Ὴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCB}{\acctonos}{\textEta}              % Ή
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCC}{\textEta}{\prosgegrammeni}        % ῌ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCD}{\accpsilivaria}{\textcompwordmark} % ῍
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCE}{\accpsilioxia}{\textcompwordmark} % ῎
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FCF}{\accpsiliperispomeni}{\textcompwordmark} % ῏

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD0}{\u}{\textiota}                    % ῐ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD1}{\=}{\textiota}                    % ῑ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD2}{\accdialytikavaria}{\textiota}    % ῒ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD3}{\accdialytikaoxia}{\textiota}     % ΐ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD6}{\~}{\textiota}       % ῖ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD6}{\accperispomeni}{\textiota}       % ῖ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD7}{\accdialytikaperispomeni}{\textiota}% ῗ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD8}{\u}{\textIota}                    % Ῐ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FD9}{\=}{\textIota}                    % Ῑ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDA}{\`}{\textIota}                    % Ὶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDB}{\'}{\textIota}                    % Ί
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDA}{\accvaria}{\textIota}             % Ὶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDB}{\acctonos}{\textIota}             % Ί
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDD}{\accdasiavaria}{\textcompwordmark}% ῝
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDE}{\accdasiaoxia}{\textcompwordmark} % ῞
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FDF}{\accdasiaperispomeni}{\textcompwordmark} % ῟

\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE0}{\u}{\textupsilon}                 % ῠ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE1}{\=}{\textupsilon}                 % ῡ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE2}{\accdialytikavaria}{\textupsilon} % ῢ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE3}{\accdialytikaoxia}{\textupsilon}  % ΰ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE4}{\accpsili}{\textrho}              % ῤ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE5}{\accdasia}{\textrho}              % ῥ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE6}{\~}{\textupsilon}    % ῦ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE6}{\accperispomeni}{\textupsilon}    % ῦ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE7}{\accdialytikaperispomeni}{\textupsilon} % ῧ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE8}{\u}{\textUpsilon}                 % Ῠ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FE9}{\=}{\textUpsilon}                 % Ῡ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEA}{\`}{\textUpsilon}                 % Ὺ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEB}{\'}{\textUpsilon}                 % Ύ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEA}{\accvaria}{\textUpsilon}          % Ὺ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEB}{\acctonos}{\textUpsilon}          % Ύ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEC}{\accdasia}{\textRho}              % Ῥ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FED}{\accdialytikavaria}{\textcompwordmark} % ῭
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEE}{\accdialytikaoxia}{\textcompwordmark} % ΅
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FEF}{\accvaria}{\textcompwordmark} % `

% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF2}{\`}{\textomega\ypogegrammeni} % ῲ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF3}{\textomega}{\ypogegrammeni}   % ῳ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF4}{\'}{\textomega\ypogegrammeni} % ῴ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF6}{\~}{\textomega}    % ῶ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF6}{\accperispomeni}{\textomega}    % ῶ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF7}{\accperispomeni}{\textomega\ypogegrammeni} % ῷ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF8}{\`}{\textOmicron}   % Ὸ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF9}{\'}{\textOmicron}   % Ό
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFA}{\`}{\textOmega}     % Ὼ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFB}{\'}{\textOmega}     % Ώ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF8}{\accvaria}{\textOmicron}   % Ὸ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FF9}{\acctonos}{\textOmicron}   % Ό
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFA}{\accvaria}{\textOmega}     % Ὼ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFB}{\acctonos}{\textOmega}     % Ώ
% \DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFC}{\textOmega}{\prosgegrammeni}     % ῼ
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFD}{\accoxia}{\textcompwordmark} % ´
\DeclareUTFcomposite[\LastDeclaredEncoding]{x1FFE}{\accdasia}{\textcompwordmark} % ῾

Letterlike Symbols

\DeclareUTFcharacter[\LastDeclaredEncoding]{x2126}{\textohm}  % Ω 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

The common Greek font encoding definitions in greek-fontenc.def extend the uclclist with Greek LICR macros. Here, we add EU1 specific “hiatus” handling.

Mark hiatus

Tonos and dasia mark a hiatus if placed on the first vowel of a diphthong (ΑΙ, ΑΥ, ΕΙ). A dialytika must be placed on the second vowel if they are dropped (άυλος → ΑΫΛΟΣ, μάινα → ΜΑΪΝΑ, κέικ → ΚΕΪΚ, ἀυπνία → ΑΫΠΝΙΑ).

Look ahead and place a diaeresis on Ι or Υ (copied from lgrenc.def and changed Latin transcription to Unicode literals):

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