diff options
author | Karl Berry <karl@freefriends.org> | 2023-09-12 20:09:52 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-09-12 20:09:52 +0000 |
commit | 2db9c931a2cd69065a1d7bfb595dd235174e2579 (patch) | |
tree | 89e2edb804bd0bdc79e49920ab82482bf7727399 /Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html | |
parent | f66a2a909e3fd17941f2c4b11efdb3efb09238e7 (diff) |
greek-fontenc (12sep23)
git-svn-id: svn://tug.org/texlive/trunk@68249 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html')
-rw-r--r-- | Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html | 568 |
1 files changed, 191 insertions, 377 deletions
diff --git a/Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html b/Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html index 7a5fab007ce..daa868df0be 100644 --- a/Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html +++ b/Master/texmf-dist/doc/latex/greek-fontenc/tuenc-greek.def.html @@ -794,7 +794,7 @@ mstyle.mathscr, mi.mathscr { <p class="subtitle" id="greek-licr-definitions-for-xetex-and-luatex">Greek LICR definitions for XeTeX and LuaTeX</p> <dl class="docinfo"> <dt class="version">Version<span class="colon">:</span></dt> -<dd class="version">2.4 (<a class="reference internal" href="#changelog">changelog</a>)</dd> +<dd class="version">2.5 (<a class="reference internal" href="#changelog">changelog</a>)</dd> <dt class="copyright">Copyright<span class="colon">:</span></dt> <dd class="copyright">© 2013 – 2023 Günter Milde</dd> <dt class="licence">Licence<span class="colon">:</span></dt> @@ -827,21 +827,22 @@ Used by <a class="reference external" href="https://ctan.org/pkg/babel-greek">ba <li><p><a class="reference internal" href="#greek-and-coptic" id="toc-entry-11">Greek and Coptic</a></p></li> <li><p><a class="reference internal" href="#greek-extended" id="toc-entry-12">Greek Extended</a></p> <ul> -<li><p><a class="reference internal" href="#perispomeni-and-tilde-accent" id="toc-entry-13">Perispomeni and tilde accent</a></p></li> +<li><p><a class="reference internal" href="#spacing-diacritics" id="toc-entry-13">spacing diacritics</a></p></li> +<li><p><a class="reference internal" href="#perispomeni-and-tilde-accent" id="toc-entry-14">Perispomeni and tilde accent</a></p></li> </ul> </li> -<li><p><a class="reference internal" href="#letterlike-symbols" id="toc-entry-14">Letterlike Symbols</a></p></li> -<li><p><a class="reference internal" href="#ancient-greek-numbers" id="toc-entry-15">Ancient Greek Numbers</a></p></li> +<li><p><a class="reference internal" href="#letterlike-symbols" id="toc-entry-15">Letterlike Symbols</a></p></li> +<li><p><a class="reference internal" href="#ancient-greek-numbers" id="toc-entry-16">Ancient Greek Numbers</a></p></li> </ul> </li> -<li><p><a class="reference internal" href="#uppercase" id="toc-entry-16">UPPERCASE</a></p> +<li><p><a class="reference internal" href="#uppercase" id="toc-entry-17">UPPERCASE</a></p> <ul> -<li><p><a class="reference internal" href="#uclclist" id="toc-entry-17">uclclist</a></p></li> +<li><p><a class="reference internal" href="#uclclist" id="toc-entry-18">uclclist</a></p></li> </ul> </li> </ul> </li> -<li><p><a class="reference internal" href="#changelog" id="toc-entry-18">Changelog</a></p></li> +<li><p><a class="reference internal" href="#changelog" id="toc-entry-19">Changelog</a></p></li> </ul> </nav> <section id="motivation"> @@ -865,7 +866,11 @@ usage examples.</p> <section id="identification"> <h3><a class="toc-backref" href="#toc-entry-4" role="doc-backlink">Identification</a></h3> <pre class="literal-block">\ProvidesFile{tuenc-greek.def} - [2023-08-15 2.4 Greek LICRs for XeTeX and LuaTeX]</pre> + [2023-09-12 2.5 Greek LICRs for XeTeX and LuaTeX]</pre> +<p>Auxiliary command (modeled after definitions in <span class="docutils literal">tuenc.def</span>):</p> +<pre class="literal-block">\providecommand*{\DeclareUnicodeCompositeCommand}[2]{% + \DeclareTextCompositeCommand{#1}{\UnicodeEncodingName}{#2} +}</pre> </section> <section id="greek-diacritics"> <h3><a class="toc-backref" href="#toc-entry-5" role="doc-backlink">Greek Diacritics</a></h3> @@ -950,115 +955,72 @@ character, discarded in favour of COMBINING COMMA ABOVE.</p> % 037D GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL \DeclareTextSymbol{\texterotimatiko}\UnicodeEncodingName{"003B} % use SEMICOLON, not 037E GREEK QUESTION MARK -\DeclareUnicodeComposite{\acctonos} {} {"0384} % ΄ GREEK TONOS -\DeclareUnicodeComposite{\accdialytikatonos}{} {"0385} % ΅ GREEK DIALYTIKA TONOS -\DeclareUnicodeComposite{\'} {\textAlpha} {"0386} % Ά -\DeclareTextSymbol{\textanoteleia} \UnicodeEncodingName{"00B7} % use MIDDLE DOT, not 0387 GREEK ANO TELEIA -\DeclareUnicodeComposite{\'} {\textEpsilon}{"0388} % Έ -\DeclareUnicodeComposite{\'} {\textEta} {"0389} % Ή -\DeclareUnicodeComposite{\'} {\textIota} {"038A} % Ί -\DeclareUnicodeComposite{\'} {\textOmicron}{"038C} % Ό -\DeclareUnicodeComposite{\'} {\textUpsilon}{"038E} % Ύ -\DeclareUnicodeComposite{\'} {\textOmega} {"038F} % Ώ -% repeat with named accents (LuaTeX does not normalize to pre-composed chars): -\DeclareUnicodeComposite{\acctonos} {\textAlpha} {"0386} % Ά -\DeclareUnicodeComposite{\acctonos} {\textEpsilon}{"0388} % Έ -\DeclareUnicodeComposite{\acctonos} {\textEta} {"0389} % Ή -\DeclareUnicodeComposite{\acctonos} {\textIota} {"038A} % Ί -\DeclareUnicodeComposite{\acctonos} {\textOmicron}{"038C} % Ό -\DeclareUnicodeComposite{\acctonos} {\textUpsilon}{"038E} % Ύ -\DeclareUnicodeComposite{\acctonos} {\textOmega} {"038F} % Ώ -\DeclareUnicodeComposite{\accdialytikatonos}{\textiota} {"0390} % ΐ - -\DeclareTextSymbol{\textAlpha }\UnicodeEncodingName{"0391} % Α -\DeclareTextSymbol{\textBeta }\UnicodeEncodingName{"0392} % Β -\DeclareTextSymbol{\textGamma }\UnicodeEncodingName{"0393} % Γ -\DeclareTextSymbol{\textDelta }\UnicodeEncodingName{"0394} % Δ -\DeclareTextSymbol{\textEpsilon}\UnicodeEncodingName{"0395} % Ε -\DeclareTextSymbol{\textZeta }\UnicodeEncodingName{"0396} % Ζ -\DeclareTextSymbol{\textEta }\UnicodeEncodingName{"0397} % Η -\DeclareTextSymbol{\textTheta }\UnicodeEncodingName{"0398} % Θ -\DeclareTextSymbol{\textIota }\UnicodeEncodingName{"0399} % Ι -\DeclareTextSymbol{\textKappa }\UnicodeEncodingName{"039A} % Κ -\DeclareTextSymbol{\textLambda }\UnicodeEncodingName{"039B} % Λ -\DeclareTextSymbol{\textMu }\UnicodeEncodingName{"039C} % Μ -\DeclareTextSymbol{\textNu }\UnicodeEncodingName{"039D} % Ν -\DeclareTextSymbol{\textXi }\UnicodeEncodingName{"039E} % Ξ -\DeclareTextSymbol{\textOmicron}\UnicodeEncodingName{"039F} % Ο -\DeclareTextSymbol{\textPi }\UnicodeEncodingName{"03A0} % Π -\DeclareTextSymbol{\textRho }\UnicodeEncodingName{"03A1} % Ρ -\DeclareTextSymbol{\textSigma }\UnicodeEncodingName{"03A3} % Σ -\DeclareTextSymbol{\textTau }\UnicodeEncodingName{"03A4} % Τ -\DeclareTextSymbol{\textUpsilon}\UnicodeEncodingName{"03A5} % Υ -\DeclareTextSymbol{\textPhi }\UnicodeEncodingName{"03A6} % Φ -\DeclareTextSymbol{\textChi }\UnicodeEncodingName{"03A7} % Χ -\DeclareTextSymbol{\textPsi }\UnicodeEncodingName{"03A8} % Ψ -\DeclareTextSymbol{\textOmega }\UnicodeEncodingName{"03A9} % Ω - -\DeclareUnicodeComposite{\"} {\textIota} {"03AA} % Ϊ -\DeclareUnicodeComposite{\"} {\textIota} {"03AA} % Ϊ -\DeclareUnicodeComposite{\"} {\textUpsilon}{"03AB} % Ϋ -\DeclareUnicodeComposite{\'} {\textalpha} {"03AC} % ά -\DeclareUnicodeComposite{\'} {\textepsilon}{"03AD} % έ -\DeclareUnicodeComposite{\'} {\texteta} {"03AE} % ή -\DeclareUnicodeComposite{\'} {\textiota} {"03AF} % ί -% repeat with named accents (LuaTeX does not normalize to pre-composed chars): -\DeclareUnicodeComposite{\accdialytika} {\textIota} {"03AA} % Ϊ -\DeclareUnicodeComposite{\accdialytika} {\textIota} {"03AA} % Ϊ -\DeclareUnicodeComposite{\accdialytika} {\textUpsilon}{"03AB} % Ϋ -\DeclareUnicodeComposite{\acctonos} {\textalpha} {"03AC} % ά -\DeclareUnicodeComposite{\acctonos} {\textepsilon}{"03AD} % έ -\DeclareUnicodeComposite{\acctonos} {\texteta} {"03AE} % ή -\DeclareUnicodeComposite{\acctonos} {\textiota} {"03AF} % ί -\DeclareUnicodeComposite{\accdialytikatonos}{\textupsilon}{"03B0} % ΰ - -\DeclareTextSymbol{\textalpha }\UnicodeEncodingName{"03B1} % α -\DeclareTextSymbol{\textbeta }\UnicodeEncodingName{"03B2} % β -\DeclareTextSymbol{\textgamma }\UnicodeEncodingName{"03B3} % γ -\DeclareTextSymbol{\textdelta }\UnicodeEncodingName{"03B4} % δ -\DeclareTextSymbol{\textepsilon }\UnicodeEncodingName{"03B5} % ε -\DeclareTextSymbol{\textzeta }\UnicodeEncodingName{"03B6} % ζ -\DeclareTextSymbol{\texteta }\UnicodeEncodingName{"03B7} % η -\DeclareTextSymbol{\texttheta }\UnicodeEncodingName{"03B8} % θ -\DeclareTextSymbol{\textiota }\UnicodeEncodingName{"03B9} % ι -\DeclareTextSymbol{\textkappa }\UnicodeEncodingName{"03BA} % κ -\DeclareTextSymbol{\textlambda }\UnicodeEncodingName{"03BB} % λ -\DeclareTextSymbol{\textmu }\UnicodeEncodingName{"03BC} % μ % \textmugreek -\DeclareTextSymbol{\textnu }\UnicodeEncodingName{"03BD} % ν -\DeclareTextSymbol{\textxi }\UnicodeEncodingName{"03BE} % ξ -\DeclareTextSymbol{\textomicron }\UnicodeEncodingName{"03BF} % ο -\DeclareTextSymbol{\textpi }\UnicodeEncodingName{"03C0} % π -\DeclareTextSymbol{\textrho }\UnicodeEncodingName{"03C1} % ρ -\DeclareTextSymbol{\textfinalsigma}\UnicodeEncodingName{"03C2} % ς % final sigma -\DeclareTextSymbol{\textsigma }\UnicodeEncodingName{"03C3} % σ -\DeclareTextSymbol{\texttau }\UnicodeEncodingName{"03C4} % τ -\DeclareTextSymbol{\textupsilon }\UnicodeEncodingName{"03C5} % υ -\DeclareTextSymbol{\textphi }\UnicodeEncodingName{"03C6} % φ -\DeclareTextSymbol{\textchi }\UnicodeEncodingName{"03C7} % χ -\DeclareTextSymbol{\textpsi }\UnicodeEncodingName{"03C8} % ψ -\DeclareTextSymbol{\textomega }\UnicodeEncodingName{"03C9} % ω - -\DeclareUnicodeComposite{\"}{\textiota}{"03CA} % ϊ -\DeclareUnicodeComposite{\"}{\textupsilon}{"03CB} % ϋ -\DeclareUnicodeComposite{\'}{\textomicron}{"03CC} % ό -\DeclareUnicodeComposite{\'}{\textupsilon}{"03CD} % ύ -\DeclareUnicodeComposite{\'}{\textomega}{"03CE} % ώ -\DeclareUnicodeComposite{\accdialytika}{\textiota}{"03CA} % ϊ -\DeclareUnicodeComposite{\accdialytika}{\textupsilon}{"03CB} % ϋ -\DeclareUnicodeComposite{\acctonos}{\textomicron}{"03CC} % ό -\DeclareUnicodeComposite{\acctonos}{\textupsilon}{"03CD} % ύ -\DeclareUnicodeComposite{\acctonos}{\textomega}{"03CE} % ώ</pre> +\DeclareUnicodeComposite{\acctonos} {} {"0384} % ΄ GREEK TONOS +\DeclareUnicodeComposite{\accdialytikatonos}{} {"0385} % ΅ GREEK DIALYTIKA TONOS + +\DeclareTextSymbol{\textanoteleia }\UnicodeEncodingName{"00B7} % use MIDDLE DOT, not 0387 GREEK ANO TELEIA + +\DeclareTextSymbol{\textAlpha }\UnicodeEncodingName{"0391} % Α +\DeclareTextSymbol{\textBeta }\UnicodeEncodingName{"0392} % Β +\DeclareTextSymbol{\textGamma }\UnicodeEncodingName{"0393} % Γ +\DeclareTextSymbol{\textDelta }\UnicodeEncodingName{"0394} % Δ +\DeclareTextSymbol{\textEpsilon }\UnicodeEncodingName{"0395} % Ε +\DeclareTextSymbol{\textZeta }\UnicodeEncodingName{"0396} % Ζ +\DeclareTextSymbol{\textEta }\UnicodeEncodingName{"0397} % Η +\DeclareTextSymbol{\textTheta }\UnicodeEncodingName{"0398} % Θ +\DeclareTextSymbol{\textIota }\UnicodeEncodingName{"0399} % Ι +\DeclareTextSymbol{\textKappa }\UnicodeEncodingName{"039A} % Κ +\DeclareTextSymbol{\textLambda }\UnicodeEncodingName{"039B} % Λ +\DeclareTextSymbol{\textMu }\UnicodeEncodingName{"039C} % Μ +\DeclareTextSymbol{\textNu }\UnicodeEncodingName{"039D} % Ν +\DeclareTextSymbol{\textXi }\UnicodeEncodingName{"039E} % Ξ +\DeclareTextSymbol{\textOmicron }\UnicodeEncodingName{"039F} % Ο +\DeclareTextSymbol{\textPi }\UnicodeEncodingName{"03A0} % Π +\DeclareTextSymbol{\textRho }\UnicodeEncodingName{"03A1} % Ρ +\DeclareTextSymbol{\textSigma }\UnicodeEncodingName{"03A3} % Σ +\DeclareTextSymbol{\textTau }\UnicodeEncodingName{"03A4} % Τ +\DeclareTextSymbol{\textUpsilon }\UnicodeEncodingName{"03A5} % Υ +\DeclareTextSymbol{\textPhi }\UnicodeEncodingName{"03A6} % Φ +\DeclareTextSymbol{\textChi }\UnicodeEncodingName{"03A7} % Χ +\DeclareTextSymbol{\textPsi }\UnicodeEncodingName{"03A8} % Ψ +\DeclareTextSymbol{\textOmega }\UnicodeEncodingName{"03A9} % Ω + +\DeclareTextSymbol{\textalpha }\UnicodeEncodingName{"03B1} % α +\DeclareTextSymbol{\textbeta }\UnicodeEncodingName{"03B2} % β +\DeclareTextSymbol{\textgamma }\UnicodeEncodingName{"03B3} % γ +\DeclareTextSymbol{\textdelta }\UnicodeEncodingName{"03B4} % δ +\DeclareTextSymbol{\textepsilon }\UnicodeEncodingName{"03B5} % ε +\DeclareTextSymbol{\textzeta }\UnicodeEncodingName{"03B6} % ζ +\DeclareTextSymbol{\texteta }\UnicodeEncodingName{"03B7} % η +\DeclareTextSymbol{\texttheta }\UnicodeEncodingName{"03B8} % θ +\DeclareTextSymbol{\textiota }\UnicodeEncodingName{"03B9} % ι +\DeclareTextSymbol{\textkappa }\UnicodeEncodingName{"03BA} % κ +\DeclareTextSymbol{\textlambda }\UnicodeEncodingName{"03BB} % λ +\DeclareTextSymbol{\textmu }\UnicodeEncodingName{"03BC} % μ % \textmugreek +\DeclareTextSymbol{\textnu }\UnicodeEncodingName{"03BD} % ν +\DeclareTextSymbol{\textxi }\UnicodeEncodingName{"03BE} % ξ +\DeclareTextSymbol{\textomicron }\UnicodeEncodingName{"03BF} % ο +\DeclareTextSymbol{\textpi }\UnicodeEncodingName{"03C0} % π +\DeclareTextSymbol{\textrho }\UnicodeEncodingName{"03C1} % ρ +\DeclareTextSymbol{\textfinalsigma }\UnicodeEncodingName{"03C2} % ς % final sigma +\DeclareTextSymbol{\textsigma }\UnicodeEncodingName{"03C3} % σ +\DeclareTextSymbol{\texttau }\UnicodeEncodingName{"03C4} % τ +\DeclareTextSymbol{\textupsilon }\UnicodeEncodingName{"03C5} % υ +\DeclareTextSymbol{\textphi }\UnicodeEncodingName{"03C6} % φ +\DeclareTextSymbol{\textchi }\UnicodeEncodingName{"03C7} % χ +\DeclareTextSymbol{\textpsi }\UnicodeEncodingName{"03C8} % ψ +\DeclareTextSymbol{\textomega }\UnicodeEncodingName{"03C9} % ω</pre> <p>Archaic letters (still used in Greek numerals):</p> -<pre class="literal-block">\DeclareTextSymbol{\textQoppa }\UnicodeEncodingName{"03D8} % Ϙ -\DeclareTextSymbol{\textqoppa }\UnicodeEncodingName{"03D9} % ϙ -\DeclareTextSymbol{\textStigma }\UnicodeEncodingName{"03DA} % Ϛ -\DeclareTextSymbol{\textstigma }\UnicodeEncodingName{"03DB} % ϛ -\DeclareTextSymbol{\textDigamma }\UnicodeEncodingName{"03DC} % Ϝ -\DeclareTextSymbol{\textdigamma }\UnicodeEncodingName{"03DD} % ϝ -\DeclareTextSymbol{\textKoppa }\UnicodeEncodingName{"03DE} % Ϟ in LGR identic to \textkoppa -\DeclareTextSymbol{\textkoppa }\UnicodeEncodingName{"03DF} % ϟ \koppa, \textqoppa [sic!] -\DeclareTextSymbol{\textSampi }\UnicodeEncodingName{"03E0} % Ϡ -\DeclareTextSymbol{\textsampi }\UnicodeEncodingName{"03E1} % ϡ</pre> +<pre class="literal-block">\DeclareTextSymbol{\textQoppa }\UnicodeEncodingName{"03D8} % Ϙ +\DeclareTextSymbol{\textqoppa }\UnicodeEncodingName{"03D9} % ϙ +\DeclareTextSymbol{\textStigma }\UnicodeEncodingName{"03DA} % Ϛ +\DeclareTextSymbol{\textstigma }\UnicodeEncodingName{"03DB} % ϛ +\DeclareTextSymbol{\textDigamma }\UnicodeEncodingName{"03DC} % Ϝ +\DeclareTextSymbol{\textdigamma }\UnicodeEncodingName{"03DD} % ϝ +\DeclareTextSymbol{\textKoppa }\UnicodeEncodingName{"03DE} % Ϟ in LGR identic to \textkoppa +\DeclareTextSymbol{\textkoppa }\UnicodeEncodingName{"03DF} % ϟ \koppa, \textqoppa [sic!] +\DeclareTextSymbol{\textSampi }\UnicodeEncodingName{"03E0} % Ϡ +\DeclareTextSymbol{\textsampi }\UnicodeEncodingName{"03E1} % ϡ</pre> <p>Symbol variants:</p> <pre class="literal-block">\DeclareTextSymbol{\textbetasymbol }\UnicodeEncodingName{"03D0} % ϐ \DeclareTextSymbol{\textkappasymbol }\UnicodeEncodingName{"03F0} % ϰ @@ -1077,257 +1039,82 @@ TODO: Fix implementation of autosigma for TU:</p> </section> <section id="greek-extended"> <h4><a class="toc-backref" href="#toc-entry-12" role="doc-backlink">Greek Extended</a></h4> -<p>We skip definitions for characters “… WITH OXIA”, because they would -overwrite the definitions for “… WITH TONOS” in the <cite>Greek and Coptic</cite> -block.</p> -<pre class="literal-block">\DeclareUnicodeComposite{\accpsili }{\textalpha}{"1F00} % ἀ -\DeclareUnicodeComposite{\accdasia }{\textalpha}{"1F01} % ἁ -\DeclareUnicodeComposite{\accpsilivaria }{\textalpha}{"1F02} % ἂ -\DeclareUnicodeComposite{\accdasiavaria }{\textalpha}{"1F03} % ἃ -\DeclareUnicodeComposite{\accpsilioxia }{\textalpha}{"1F04} % ἄ -\DeclareUnicodeComposite{\accdasiaoxia }{\textalpha}{"1F05} % ἅ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textalpha}{"1F06} % ἆ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textalpha}{"1F07} % ἇ -\DeclareUnicodeComposite{\accpsili }{\textAlpha}{"1F08} % Ἀ -\DeclareUnicodeComposite{\accdasia }{\textAlpha}{"1F09} % Ἁ -\DeclareUnicodeComposite{\accpsilivaria }{\textAlpha}{"1F0A} % Ἂ -\DeclareUnicodeComposite{\accdasiavaria }{\textAlpha}{"1F0B} % Ἃ -\DeclareUnicodeComposite{\accpsilioxia }{\textAlpha}{"1F0C} % Ἄ -\DeclareUnicodeComposite{\accdasiaoxia }{\textAlpha}{"1F0D} % Ἅ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textAlpha}{"1F0E} % Ἆ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textAlpha}{"1F0F} % Ἇ - -\DeclareUnicodeComposite{\accpsili }{\textepsilon}{"1F10} % ἐ -\DeclareUnicodeComposite{\accdasia }{\textepsilon}{"1F11} % ἑ -\DeclareUnicodeComposite{\accpsilivaria }{\textepsilon}{"1F12} % ἒ -\DeclareUnicodeComposite{\accdasiavaria }{\textepsilon}{"1F13} % ἓ -\DeclareUnicodeComposite{\accpsilioxia }{\textepsilon}{"1F14} % ἔ -\DeclareUnicodeComposite{\accdasiaoxia }{\textepsilon}{"1F15} % ἕ -\DeclareUnicodeComposite{\accpsili }{\textEpsilon}{"1F18} % Ἐ -\DeclareUnicodeComposite{\accdasia }{\textEpsilon}{"1F19} % Ἑ -\DeclareUnicodeComposite{\accpsilivaria }{\textEpsilon}{"1F1A} % Ἒ -\DeclareUnicodeComposite{\accdasiavaria }{\textEpsilon}{"1F1B} % Ἓ -\DeclareUnicodeComposite{\accpsilioxia }{\textEpsilon}{"1F1C} % Ἔ -\DeclareUnicodeComposite{\accdasiaoxia }{\textEpsilon}{"1F1D} % Ἕ - -\DeclareUnicodeComposite{\accpsili }{\texteta}{"1F20} % ἠ -\DeclareUnicodeComposite{\accdasia }{\texteta}{"1F21} % ἡ -\DeclareUnicodeComposite{\accpsilivaria }{\texteta}{"1F22} % ἢ -\DeclareUnicodeComposite{\accdasiavaria }{\texteta}{"1F23} % ἣ -\DeclareUnicodeComposite{\accpsilioxia }{\texteta}{"1F24} % ἤ -\DeclareUnicodeComposite{\accdasiaoxia }{\texteta}{"1F25} % ἥ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\texteta}{"1F26} % ἦ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\texteta}{"1F27} % ἧ -\DeclareUnicodeComposite{\accpsili }{\textEta}{"1F28} % Ἠ -\DeclareUnicodeComposite{\accdasia }{\textEta}{"1F29} % Ἡ -\DeclareUnicodeComposite{\accpsilivaria }{\textEta}{"1F2A} % Ἢ -\DeclareUnicodeComposite{\accdasiavaria }{\textEta}{"1F2B} % Ἣ -\DeclareUnicodeComposite{\accpsilioxia }{\textEta}{"1F2C} % Ἤ -\DeclareUnicodeComposite{\accdasiaoxia }{\textEta}{"1F2D} % Ἥ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textEta}{"1F2E} % Ἦ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textEta}{"1F2F} % Ἧ - -\DeclareUnicodeComposite{\accpsili }{\textiota}{"1F30} % ἰ -\DeclareUnicodeComposite{\accdasia }{\textiota}{"1F31} % ἱ -\DeclareUnicodeComposite{\accpsilivaria }{\textiota}{"1F32} % ἲ -\DeclareUnicodeComposite{\accdasiavaria }{\textiota}{"1F33} % ἳ -\DeclareUnicodeComposite{\accpsilioxia }{\textiota}{"1F34} % ἴ -\DeclareUnicodeComposite{\accdasiaoxia }{\textiota}{"1F35} % ἵ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textiota}{"1F36} % ἶ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textiota}{"1F37} % ἷ -\DeclareUnicodeComposite{\accpsili }{\textIota}{"1F38} % Ἰ -\DeclareUnicodeComposite{\accdasia }{\textIota}{"1F39} % Ἱ -\DeclareUnicodeComposite{\accpsilivaria }{\textIota}{"1F3A} % Ἲ -\DeclareUnicodeComposite{\accdasiavaria }{\textIota}{"1F3B} % Ἳ -\DeclareUnicodeComposite{\accpsilioxia }{\textIota}{"1F3C} % Ἴ -\DeclareUnicodeComposite{\accdasiaoxia }{\textIota}{"1F3D} % Ἵ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textIota}{"1F3E} % Ἶ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textIota}{"1F3F} % Ἷ - -\DeclareUnicodeComposite{\accpsili }{\textomicron}{"1F40} % ὀ -\DeclareUnicodeComposite{\accdasia }{\textomicron}{"1F41} % ὁ -\DeclareUnicodeComposite{\accpsilivaria }{\textomicron}{"1F42} % ὂ -\DeclareUnicodeComposite{\accdasiavaria }{\textomicron}{"1F43} % ὃ -\DeclareUnicodeComposite{\accpsilioxia }{\textomicron}{"1F44} % ὄ -\DeclareUnicodeComposite{\accdasiaoxia }{\textomicron}{"1F45} % ὅ -\DeclareUnicodeComposite{\accpsili }{\textOmicron}{"1F48} % Ὀ -\DeclareUnicodeComposite{\accdasia }{\textOmicron}{"1F49} % Ὁ -\DeclareUnicodeComposite{\accpsilivaria }{\textOmicron}{"1F4A} % Ὂ -\DeclareUnicodeComposite{\accdasiavaria }{\textOmicron}{"1F4B} % Ὃ -\DeclareUnicodeComposite{\accpsilioxia }{\textOmicron}{"1F4C} % Ὄ -\DeclareUnicodeComposite{\accdasiaoxia }{\textOmicron}{"1F4D} % Ὅ - -\DeclareUnicodeComposite{\accpsili }{\textupsilon}{"1F50} % ὐ -\DeclareUnicodeComposite{\accdasia }{\textupsilon}{"1F51} % ὑ -\DeclareUnicodeComposite{\accpsilivaria }{\textupsilon}{"1F52} % ὒ -\DeclareUnicodeComposite{\accdasiavaria }{\textupsilon}{"1F53} % ὓ -\DeclareUnicodeComposite{\accpsilioxia }{\textupsilon}{"1F54} % ὔ -\DeclareUnicodeComposite{\accdasiaoxia }{\textupsilon}{"1F55} % ὕ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textupsilon}{"1F56} % ὖ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textupsilon}{"1F57} % ὗ -\DeclareUnicodeComposite{\accdasia }{\textUpsilon}{"1F59} % Ὑ -\DeclareUnicodeComposite{\accdasiavaria }{\textUpsilon}{"1F5B} % Ὓ -\DeclareUnicodeComposite{\accdasiaoxia }{\textUpsilon}{"1F5D} % Ὕ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textUpsilon}{"1F5F} % Ὗ - -\DeclareUnicodeComposite{\accpsili }{\textomega}{"1F60} % ὠ -\DeclareUnicodeComposite{\accdasia }{\textomega}{"1F61} % ὡ -\DeclareUnicodeComposite{\accpsilivaria }{\textomega}{"1F62} % ὢ -\DeclareUnicodeComposite{\accdasiavaria }{\textomega}{"1F63} % ὣ -\DeclareUnicodeComposite{\accpsilioxia }{\textomega}{"1F64} % ὤ -\DeclareUnicodeComposite{\accdasiaoxia }{\textomega}{"1F65} % ὥ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textomega}{"1F66} % ὦ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textomega}{"1F67} % ὧ -\DeclareUnicodeComposite{\accpsili }{\textOmega}{"1F68} % Ὠ -\DeclareUnicodeComposite{\accdasia }{\textOmega}{"1F69} % Ὡ -\DeclareUnicodeComposite{\accpsilivaria }{\textOmega}{"1F6A} % Ὢ -\DeclareUnicodeComposite{\accdasiavaria }{\textOmega}{"1F6B} % Ὣ -\DeclareUnicodeComposite{\accpsilioxia }{\textOmega}{"1F6C} % Ὤ -\DeclareUnicodeComposite{\accdasiaoxia }{\textOmega}{"1F6D} % Ὥ -\DeclareUnicodeComposite{\accpsiliperispomeni}{\textOmega}{"1F6E} % Ὦ -\DeclareUnicodeComposite{\accdasiaperispomeni}{\textOmega}{"1F6F} % Ὧ - -\DeclareUnicodeComposite{\`} {\textalpha} {"1F70} % ὰ -\DeclareUnicodeComposite{\`} {\textepsilon}{"1F72} % ὲ -\DeclareUnicodeComposite{\`} {\texteta} {"1F74} % ὴ -\DeclareUnicodeComposite{\`} {\textiota} {"1F76} % ὶ -\DeclareUnicodeComposite{\`} {\textomicron}{"1F78} % ὸ -\DeclareUnicodeComposite{\`} {\textupsilon}{"1F7A} % ὺ -\DeclareUnicodeComposite{\`} {\textomega} {"1F7C} % ὼ -% repeat with named accents (LuaTeX does not normalize to pre-composed chars): -\DeclareUnicodeComposite{\accvaria} {\textalpha} {"1F70} % ὰ -\DeclareUnicodeComposite{\accvaria} {\textepsilon}{"1F72} % ὲ -\DeclareUnicodeComposite{\accvaria} {\texteta} {"1F74} % ὴ -\DeclareUnicodeComposite{\accvaria} {\textiota} {"1F76} % ὶ -\DeclareUnicodeComposite{\accvaria} {\textomicron}{"1F78} % ὸ -\DeclareUnicodeComposite{\accvaria} {\textupsilon}{"1F7A} % ὺ -\DeclareUnicodeComposite{\accvaria} {\textomega} {"1F7C} % ὼ</pre> -<p>Skipping pre-composed characters with mute iota (misleadingly named -… WITH PROSGEGRAMMENI): letter + <span class="docutils literal">\ypogegrammeni</span> is normalized -to the pre-composed character.</p> -<pre class="literal-block">\DeclareUnicodeComposite{\u} {\textalpha} {"1FB0} % ᾰ -\DeclareUnicodeComposite{\=} {\textalpha} {"1FB1} % ᾱ -% ᾲ -% ᾳ -% ᾴ -\DeclareUnicodeComposite{\accperispomeni} {\textalpha} {"1FB6} % ᾶ -\DeclareUnicodeComposite{\~} {\textalpha} {"1FB6} % ᾶ -% ᾷ -\DeclareUnicodeComposite{\u} {\textAlpha} {"1FB8} % Ᾰ -\DeclareUnicodeComposite{\=} {\textAlpha} {"1FB9} % Ᾱ -\DeclareUnicodeComposite{\`} {\textAlpha} {"1FBA} % Ὰ -\DeclareUnicodeComposite{\accvaria} {\textAlpha} {"1FBA} % Ὰ -% ᾼ -\DeclareUnicodeComposite{\accpsili} {} {"1FBD} % ᾽ +<section id="spacing-diacritics"> +<h5><a class="toc-backref" href="#toc-entry-13" role="doc-backlink">spacing diacritics</a></h5> +<pre class="literal-block">% 1FBD GREEK KORONIS -> psili % ᾽ \DeclareTextSymbol{\prosgegrammeni}\UnicodeEncodingName {"1FBE} % ι \DeclareUnicodeComposite{\accpsili} {} {"1FBF} % ᾿ \DeclareUnicodeComposite{\accperispomeni} {} {"1FC0} % ῀ \DeclareUnicodeComposite{\accdialytikaperispomeni}{} {"1FC1} % ῁ -% ῂ -% ῃ -% ῄ -\DeclareUnicodeComposite{\accperispomeni} {\texteta} {"1FC6} % ῆ -\DeclareUnicodeComposite{\~} {\texteta} {"1FC6} % ῆ -% ῇ -\DeclareUnicodeComposite{\`} {\textEpsilon}{"1FC8} % Ὲ -\DeclareUnicodeComposite{\accvaria} {\textEpsilon}{"1FC8} % Ὲ -\DeclareUnicodeComposite{\`} {\textEta} {"1FCA} % Ὴ -\DeclareUnicodeComposite{\accvaria} {\textEta} {"1FCA} % Ὴ -% ῌ + \DeclareUnicodeComposite{\accpsilivaria} {} {"1FCD} % ῍ \DeclareUnicodeComposite{\accpsilioxia} {} {"1FCE} % ῎ \DeclareUnicodeComposite{\accpsiliperispomeni} {} {"1FCF} % ῏ -\DeclareUnicodeComposite{\u} {\textiota} {"1FD0} % ῐ -\DeclareUnicodeComposite{\=} {\textiota} {"1FD1} % ῑ -\DeclareUnicodeComposite{\accdialytikavaria} {\textiota} {"1FD2} % ῒ -\DeclareUnicodeComposite{\accdialytikaoxia} {\textiota} {"1FD3} % ΐ -\DeclareUnicodeComposite{\accperispomeni} {\textiota} {"1FD6} % ῖ -\DeclareUnicodeComposite{\~} {\textiota} {"1FD6} % ῖ -\DeclareUnicodeComposite{\~} {ι} {"1FD6} % ῖ -\DeclareUnicodeComposite{\accdialytikaperispomeni}{\textiota} {"1FD7} % ῗ -\DeclareUnicodeComposite{\u} {\textIota} {"1FD8} % Ῐ -\DeclareUnicodeComposite{\=} {\textIota} {"1FD9} % Ῑ -\DeclareUnicodeComposite{\`} {\textIota} {"1FDA} % Ὶ -\DeclareUnicodeComposite{\accvaria} {\textIota} {"1FDA} % Ὶ \DeclareUnicodeComposite{\accdasiavaria} {} {"1FDD} % ῝ \DeclareUnicodeComposite{\accdasiaoxia} {} {"1FDE} % ῞ \DeclareUnicodeComposite{\accdasiaperispomeni} {} {"1FDF} % ῟ -\DeclareUnicodeComposite{\u} {\textupsilon}{"1FE0} % ῠ -\DeclareUnicodeComposite{\=} {\textupsilon}{"1FE1} % ῡ -\DeclareUnicodeComposite{\accdialytikavaria} {\textupsilon}{"1FE2} % ῢ -\DeclareUnicodeComposite{\accdialytikaoxia} {\textupsilon}{"1FE3} % ΰ -\DeclareUnicodeComposite{\accpsili} {\textrho} {"1FE4} % ῤ -\DeclareUnicodeComposite{\accdasia} {\textrho} {"1FE5} % ῥ -\DeclareUnicodeComposite{\~} {\textupsilon}{"1FE6} % ῦ -\DeclareUnicodeComposite{\accperispomeni} {\textupsilon}{"1FE6} % ῦ -\DeclareUnicodeComposite{\accdialytikaperispomeni}{\textupsilon}{"1FE7} % ῧ -\DeclareUnicodeComposite{\u} {\textUpsilon}{"1FE8} % Ῠ -\DeclareUnicodeComposite{\=} {\textUpsilon}{"1FE9} % Ῡ -\DeclareUnicodeComposite{\`} {\textUpsilon}{"1FEA} % Ὺ -\DeclareUnicodeComposite{\accvaria} {\textUpsilon}{"1FEA} % Ὺ -% Ύ -\DeclareUnicodeComposite{\accdasia} {\textRho} {"1FEC} % Ῥ \DeclareUnicodeComposite{\accdialytikavaria} {} {"1FED} % ῭ \DeclareUnicodeComposite{\accdialytikaoxia} {} {"1FEE} % ΅ % ` - -% ῲ -% ῳ -% ῴ -\DeclareUnicodeComposite{\accperispomeni} {\textomega} {"1FF6} % ῶ -\DeclareUnicodeComposite{\~} {\textomega} {"1FF6} % ῶ -% ῷ -\DeclareUnicodeComposite{\`} {\textOmicron}{"1FF8} % Ὸ -\DeclareUnicodeComposite{\accvaria} {\textOmicron}{"1FF8} % Ὸ -\DeclareUnicodeComposite{\`} {\textOmega} {"1FFA} % Ὼ -\DeclareUnicodeComposite{\accvaria} {\textOmega} {"1FFA} % Ὼ -% ῼ \DeclareUnicodeComposite{\accoxia} {} {"1FFD} % ´ \DeclareUnicodeComposite{\accdasia} {} {"1FFE} % ῾</pre> +</section> <section id="perispomeni-and-tilde-accent"> -<h5><a class="toc-backref" href="#toc-entry-13" role="doc-backlink">Perispomeni and tilde accent</a></h5> -<p>XeTeX and LuaTeX (since 2022) convert letters followed by combining +<h5><a class="toc-backref" href="#toc-entry-14" role="doc-backlink">Perispomeni and tilde accent</a></h5> +<p>XeTeX normalizes letters followed by combining characters to a pre-composed character, if there is an equivalent -pre-composed character.</p> +pre-composed character (Unicode normalization NFC). +With LuaTeX NFC is provided by the emph{Harfbuzz} renderer +(select with the <span class="docutils literal">[Renderer=Harfbuzz]</span> option of the <a class="reference external" href="https://ctan.org/pkg/fontspec">fontspec</a> +font selection commands or the <a class="reference external" href="https://ctan.org/pkg/uninormalize">uninormalize</a> package.</p> <p>The <span class="docutils literal">\accperispomeni</span> macro expands to COMBINING GREEK PERISPOMENI while the standard short accent macro <span class="docutils literal">\~</span> uses the COMBINING TILDE. Only <Greek letter> + COMBINING GREEK PERISPOMENI is considered equivalent to the pre-composed <Greek letter> WITH PERISPOMENI. -Composite definitions for <span class="docutils literal">\~</span> select the pre-composed character</p> -<p>TODO: don’t use literal Unicode characters if <span class="docutils literal">\inputencodingname</span> -is defined and not “lutf8” to prevent errors with legacy 8-bit documents -read with “luainputenc.sty” (cf. test-licr-input.tex).</p> -<pre class="literal-block">\DeclareUnicodeComposite{\~}{α}{"1FB6} % ᾶ -\DeclareUnicodeComposite{\~}{η}{"1FC6} % ῆ -\DeclareUnicodeComposite{\~}{ι}{"1FD6} % ῖ -\DeclareUnicodeComposite{\~}{ι}{"1FD6} % ῖ -\DeclareUnicodeComposite{\~}{υ}{"1FE6} % ῦ -\DeclareUnicodeComposite{\~}{ω}{"1FF6} % ῶ</pre> -<p>If there is no pre-composed Capital letter with perispomeni, -we want no perispomeni with <span class="docutils literal">\MakeUppercase</span>. -(These definitions may be redundant with the new (2022/06) -implementation of <span class="docutils literal">\MakeUppercase</span>.)</p> -<pre class="literal-block">\DeclareUnicodeComposite{\~}{\textAlpha} {"0391} % Α -\DeclareUnicodeComposite{\~}{Α} {"0391} % Α -\DeclareUnicodeComposite{\~}{\textEta} {"0397} % Η -\DeclareUnicodeComposite{\~}{Η} {"0397} % Η -\DeclareUnicodeComposite{\~}{\textIota} {"0399} % Ι -\DeclareUnicodeComposite{\~}{Ι} {"0399} % Ι -\DeclareUnicodeComposite{\~}{\textUpsilon}{"03A5} % Υ -\DeclareUnicodeComposite{\~}{Υ} {"03A5} % Υ -\DeclareUnicodeComposite{\~}{\textOmega} {"03A9} % Ω -\DeclareUnicodeComposite{\~}{Ω} {"03A9} % Ω</pre> +Therefore, we define composite definitions for <span class="docutils literal">\~</span>:</p> +<pre class="literal-block">\DeclareUnicodeComposite{\~}{\textalpha }{"1FB6} % ᾶ +\DeclareUnicodeComposite{\~}{\texteta }{"1FC6} % ῆ +\DeclareUnicodeComposite{\~}{\textiota }{"1FD6} % ῖ +\DeclareUnicodeComposite{\~}{\textupsilon}{"1FE6} % ῦ +\DeclareUnicodeComposite{\~}{\textomega }{"1FF6} % ῶ</pre> +<p>There are no pre-composed capital letters with perispomeni +(the perispomeni is not used on initial letters and normally +dropped in <a class="reference internal" href="#uppercase">UPPERCASE</a>). +However, it is kept with the pre-2022 <span class="docutils literal">\MakeUppercase</span> and in documents +that don’t load <a class="reference external" href="https://ctan.org/pkg/babel-greek">babel-greek</a> (or an old babel-greek or use the +modifier <span class="docutils literal"><span class="pre">local-MakeUppercase-fixes</span></span>):</p> +<pre class="literal-block">\DeclareUnicodeCompositeCommand{\~}{\textAlpha }{\accperispomeni\textAlpha} +\DeclareUnicodeCompositeCommand{\~}{\textEta }{\accperispomeni\textEta} +\DeclareUnicodeCompositeCommand{\~}{\textIota }{\accperispomeni\textIota} +\DeclareUnicodeCompositeCommand{\~}{\textUpsilon}{\accperispomeni\textUpsilon} +\DeclareUnicodeCompositeCommand{\~}{\textOmega }{\accperispomeni\textOmega}</pre> +<p>Using literal Unicode chars leads to errors in LuaTeX’s 8-bit compatibility +mode. OTOH, composite definitions do a literal check, so we cannot use +a replacement:</p> +<pre class="literal-block">\@ifl@aded{sty}{luainputenc}{}{% else + \DeclareUnicodeComposite{\~}{α}{"1FB6} % ᾶ + \DeclareUnicodeComposite{\~}{η}{"1FC6} % ῆ + \DeclareUnicodeComposite{\~}{ι}{"1FD6} % ῖ + \DeclareUnicodeComposite{\~}{υ}{"1FE6} % ῦ + \DeclareUnicodeComposite{\~}{ω}{"1FF6} % ῶ + + \DeclareUnicodeCompositeCommand{\~}{Α}{\accperispomeni Α} + \DeclareUnicodeCompositeCommand{\~}{Η}{\accperispomeni Η} + \DeclareUnicodeCompositeCommand{\~}{Ι}{\accperispomeni Ι} + \DeclareUnicodeCompositeCommand{\~}{Υ}{\accperispomeni Υ} + \DeclareUnicodeCompositeCommand{\~}{Ω}{\accperispomeni Ω} +}</pre> </section> </section> <section id="letterlike-symbols"> -<h4><a class="toc-backref" href="#toc-entry-14" role="doc-backlink">Letterlike Symbols</a></h4> +<h4><a class="toc-backref" href="#toc-entry-15" role="doc-backlink">Letterlike Symbols</a></h4> <pre class="literal-block">\DeclareTextSymbol{\textohm}\UnicodeEncodingName{"03A9} % OHM SIGN, use 03A9 Omega</pre> </section> <section id="ancient-greek-numbers"> -<h4><a class="toc-backref" href="#toc-entry-15" role="doc-backlink">Ancient Greek Numbers</a></h4> +<h4><a class="toc-backref" href="#toc-entry-16" role="doc-backlink">Ancient Greek Numbers</a></h4> <p>TODO: map other chars to corresponding Greek letters. See also the <a class="reference external" href="https://ctan.org/pkg/grnumalt">grnumalt</a> package.</p> <pre class="literal-block">\DeclareTextSymbol{\textpentedeka }\UnicodeEncodingName{"10144} % GREEK ACROPHONIC ATTIC FIFTY @@ -1337,51 +1124,67 @@ See also the <a class="reference external" href="https://ctan.org/pkg/grnumalt"> </section> </section> <section id="uppercase"> -<h3><a class="toc-backref" href="#toc-entry-16" role="doc-backlink">UPPERCASE</a></h3> +<h3><a class="toc-backref" href="#toc-entry-17" role="doc-backlink">UPPERCASE</a></h3> <p>Greek letters drop diacritics (eccept dialytika and sub-iota) in UPPERCASE.</p> -<p>Babel-Greek indroduces macros for “capital accents” in 1.13.3. +<p>Babel-Greek introduces macros for “capital accents” in release 1.13.3. Here, we add definitions to drop diacritics in uppercase:</p> -<pre class="literal-block">\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} % new in 2020 -\IfFormatAtLeastTF{2022/06/01}{ - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textAlpha }{\LGR@A@hiatus} - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textEpsilon}{\LGR@E@hiatus} - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textEta }{Η} - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textIota }{Ι} - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textOmicron}{Ο} - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textUpsilon}{Υ} - \DeclareTextCompositeCommand{\accACUTE}{TU}{\textOmega }{Ω} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Α}{\LGR@A@hiatus} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Ε}{\LGR@E@hiatus} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Η}{Η} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Ι}{Ι} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Ο}{Ο} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Υ}{Υ} - \DeclareTextCompositeCommand{\accACUTE}{TU}{Ω}{Ω} - - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textAlpha }{Α} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textEpsilon}{Ε} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textEta }{Η} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textIota }{Ι} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textOmicron}{Ο} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textUpsilon}{Υ} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{\textOmega }{Ω} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Α}{Α} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Ε}{Ε} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Η}{Η} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Ι}{Ι} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Ο}{Ο} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Υ}{Υ} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Ω}{Ω} - \DeclareTextCompositeCommand{\accGRAVE}{TU}{Ω}{Ω} - - \DeclareTextCompositeCommand{\LGR@hiatus}{TU}{Α}{\LGR@A@hiatus} - \DeclareTextCompositeCommand{\LGR@hiatus}{TU}{Ε}{\LGR@E@hiatus}</pre> +<pre class="literal-block">\DeclareUnicodeCompositeCommand{\accACUTE}{\textAlpha }{\LGR@A@hiatus} +\DeclareUnicodeCompositeCommand{\accACUTE}{\textEpsilon}{\LGR@E@hiatus} +\DeclareUnicodeComposite{\accACUTE}{\textEta }{"0397} % Η +\DeclareUnicodeComposite{\accACUTE}{\textIota }{"0399} % Ι +\DeclareUnicodeComposite{\accACUTE}{\textOmicron}{"039F} % Ο +\DeclareUnicodeComposite{\accACUTE}{\textUpsilon}{"03A5} % Υ +\DeclareUnicodeComposite{\accACUTE}{\textOmega }{"03A9} % Ω + +\DeclareUnicodeComposite{\accGRAVE}{\textAlpha }{"0391} % Α +\DeclareUnicodeComposite{\accGRAVE}{\textEpsilon}{"0395} % Ε +\DeclareUnicodeComposite{\accGRAVE}{\textEta }{"0397} % Η +\DeclareUnicodeComposite{\accGRAVE}{\textIota }{"0399} % Ι +\DeclareUnicodeComposite{\accGRAVE}{\textOmicron}{"039F} % Ο +\DeclareUnicodeComposite{\accGRAVE}{\textUpsilon}{"03A5} % Υ +\DeclareUnicodeComposite{\accGRAVE}{\textOmega }{"03A9} % Ω + +\DeclareUnicodeComposite{\accTILDE}{\textAlpha }{"0391} % Α +\DeclareUnicodeComposite{\accTILDE}{\textEta }{"0397} % Η +\DeclareUnicodeComposite{\accTILDE}{\textIota }{"0399} % Ι +\DeclareUnicodeComposite{\accTILDE}{\textUpsilon}{"03A5} % Υ +\DeclareUnicodeComposite{\accTILDE}{\textOmega }{"03A9} % Ω</pre> +<p>Repeat with literal Unicode as base character +(fails in LuaTeX’s 8-bit compatibility mode):</p> +<pre class="literal-block">\@ifl@aded{sty}{luainputenc}{}{% else + \DeclareUnicodeCompositeCommand{\accACUTE}{Α}{\LGR@A@hiatus} + \DeclareUnicodeCompositeCommand{\accACUTE}{Ε}{\LGR@E@hiatus} + \DeclareUnicodeComposite{\accACUTE}{Η}{"0397} % Η + \DeclareUnicodeComposite{\accACUTE}{Ι}{"0399} % Ι + \DeclareUnicodeComposite{\accACUTE}{Ο}{"039F} % Ο + \DeclareUnicodeComposite{\accACUTE}{Υ}{"03A5} % Υ + \DeclareUnicodeComposite{\accACUTE}{Ω}{"03A9} % Ω + + \DeclareUnicodeComposite{\accGRAVE}{Α}{"0391} % Α + \DeclareUnicodeComposite{\accGRAVE}{Ε}{"0395} % Ε + \DeclareUnicodeComposite{\accGRAVE}{Η}{"0397} % Η + \DeclareUnicodeComposite{\accGRAVE}{Ι}{"0399} % Ι + \DeclareUnicodeComposite{\accGRAVE}{Ο}{"039F} % Ο + \DeclareUnicodeComposite{\accGRAVE}{Υ}{"03A5} % Υ + \DeclareUnicodeComposite{\accGRAVE}{Ω}{"03A9} % Ω + + \DeclareUnicodeComposite{\accTILDE}{Α}{"0391} % Α + \DeclareUnicodeComposite{\accTILDE}{Η}{"0397} % Η + \DeclareUnicodeComposite{\accTILDE}{Ι}{"0399} % Ι + \DeclareUnicodeComposite{\accTILDE}{Υ}{"03A5} % Υ + \DeclareUnicodeComposite{\accTILDE}{Ω}{"03A9} % Ω + + \DeclareUnicodeCompositeCommand{\LGR@hiatus}{Α}{\LGR@A@hiatus} + \DeclareUnicodeCompositeCommand{\LGR@hiatus}{Ε}{\LGR@E@hiatus} +}</pre> <p>The new (2022) implementation of <span class="docutils literal">\MakeUppercase</span> drops accents from literal Unicode input (if the text language is set to Greek with Babel).</p> <p>With the old <span class="docutils literal">\MakeUppercase</span> implementation, we can fix this using <span class="docutils literal">\lccode</span> and <span class="docutils literal">\uccode</span> corrections from the <a class="reference external" href="https://ctan.org/pkg/xgreek">xgreek</a> package by Apostolos Syropoulos:</p> -<pre class="literal-block">}{% else +<pre class="literal-block">\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} % new in 2020 +\IfFormatAtLeastTF{2022/06/01}{ +}{% else \global\lccode"0370="0371 \global\uccode"0370="0370 \global\lccode"0371="0371 \global\uccode"0371="0370 \global\lccode"0372="0373 \global\uccode"0372="0372 @@ -1702,7 +1505,7 @@ Apostolos Syropoulos:</p> \global\lccode"1FFC="1FF3 \global\uccode"1FFC="1FFC }</pre> <section id="uclclist"> -<h4><a class="toc-backref" href="#toc-entry-17" role="doc-backlink">uclclist</a></h4> +<h4><a class="toc-backref" href="#toc-entry-18" role="doc-backlink">uclclist</a></h4> <p>The common Greek font encoding definitions in <a class="reference external" href="greek-fontenc.def.html">greek-fontenc.def</a> extend the <cite>uclclist</cite> with Greek LICR macros. Here, we add Unicode-specific “<a class="reference external" href="greek-fontenc.def.html#mark-hiatus">hiatus</a>” handling (copied from <a class="reference external" href="lgrenc.def.html">lgrenc.def</a> and changed @@ -1730,7 +1533,7 @@ Latin transliteration to Unicode literals).</p> </section> </section> <section id="changelog"> -<h2><a class="toc-backref" href="#toc-entry-18" role="doc-backlink">Changelog</a></h2> +<h2><a class="toc-backref" href="#toc-entry-19" role="doc-backlink">Changelog</a></h2> <table class="borderless"> <tbody> <tr><td><p>0.1</p></td> @@ -1847,6 +1650,17 @@ in other encodings with <cite>luainputenc</cite>).</p></td> <td></td> <td><p>Composite commands for “captital” macros.</p></td> </tr> +<tr><td><p>2.5</p></td> +<td><p>2023-09-12</p></td> +<td><p>Drop composite definitions duplicating the Unicode +NFC transformation.</p></td> +</tr> +<tr><td><!-- --> +</td> +<td></td> +<td><p>Skip definitions requiring literal UTF8 chars in +LuaTeX’s 8-bit compatibility mode.</p></td> +</tr> </tbody> </table> <!-- References |