diff options
author | Norbert Preining <preining@logic.at> | 2013-05-27 04:54:15 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2013-05-27 04:54:15 +0000 |
commit | 9b6d55826b81b01af1fd60c259bb57b13ed881d4 (patch) | |
tree | d37e746a78fd0bf7865aedb4b9a56e5446fb5efd /Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html | |
parent | 8103639268b02c8c5b27e1c2aac11e1bc5d92f22 (diff) |
greek-fontenc addition
git-svn-id: svn://tug.org/texlive/trunk@30721 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html')
-rw-r--r-- | Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html | 359 |
1 files changed, 214 insertions, 145 deletions
diff --git a/Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html b/Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html index 9c609c9b3f4..48282a59f38 100644 --- a/Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html +++ b/Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html @@ -6,8 +6,8 @@ <meta name="generator" content="Docutils 0.11: http://docutils.sourceforge.net/" /> <title>lgrenc.def</title> <meta name="copyright" content="© 2010 Günter Milde" /> -<link rel="stylesheet" href="../../../../../../Code/Python/docutils-svn/docutils/docutils/writers/html4strict/html4css1.css" type="text/css" /> -<link rel="stylesheet" href="../../../../../../Code/Python/docutils-svn/docutils/docutils/writers/html4strict/html4css2.css" type="text/css" /> +<link rel="stylesheet" href="../../../../../Python/docutils-svn/docutils/docutils/writers/html4strict/html4css1.css" type="text/css" /> +<link rel="stylesheet" href="../../../../../Python/docutils-svn/docutils/docutils/writers/html4strict/html4css2.css" type="text/css" /> </head> <body> <div class="document" id="lgrenc-def"> @@ -97,13 +97,13 @@ package.</p> </div> <div class="section" id="changelog"> <h1><a class="toc-backref" href="#id1">Changelog</a></h1> -<p class="borderless">Development of this file started under the name “lgrxenc.def” as part of the +<p>Development of this file started under the name “lgrxenc.def” as part of the <a class="reference external" href="http://www.ctan.org/pkg/lgrx">lgrx</a> bundle. With version 0.8, it moved to <tt class="literal"><span class="pre">greek-fontenc/lgrx.def</span></tt>.</p> -<table> +<table class="borderless"> <colgroup> <col width="7%" /> -<col width="17%" /> -<col width="76%" /> +<col width="16%" /> +<col width="77%" /> </colgroup> <tbody> <tr><td><p>0.1</p></td> @@ -112,44 +112,93 @@ package.</p> </tr> <tr><td><p>0.2</p></td> <td><p>2010-04-20</p></td> -<td><p>diacritics dropped in UPPERCASE</p></td> +<td><p>diacritics dropped in UPPERCASE.</p></td> </tr> <tr><td><p>0.3</p></td> <td><p>2010-06-08</p></td> <td><p>handle Titlecase and UPPERCASE extending -<tt class="literal">\@uclclist</tt></p></td> +<tt class="literal">\@uclclist</tt>.</p></td> </tr> <tr><td><p>0.4</p></td> <td><p>2010-06-15</p></td> -<td><p>more text symbols</p></td> +<td><p>more text symbols.</p></td> </tr> <tr><td><p>0.5</p></td> <td><p>2010-08-27</p></td> -<td><p>support <tt class="literal">\textalpha</tt> … <tt class="literal">\textOmega</tt></p></td> +<td><p>support <tt class="literal">\textalpha</tt> … <tt class="literal">\textOmega</tt>.</p></td> </tr> <tr><td><p>0.5.1</p></td> <td><p>2012-05-08</p></td> -<td><p>upload to CTAN</p></td> +<td><p>upload to CTAN.</p></td> </tr> <tr><td><p>0.6</p></td> <td><p>2012-06-29</p></td> -<td><p><tt class="literal">\TextGreek</tt> wrapper command, -aliases for <tt class="literal">puenc.def</tt> compatibility</p></td> +<td><p><tt class="literal">\TextGreek</tt> wrapper command,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>aliases for <tt class="literal">puenc.def</tt> compatibility.</p></td> </tr> <tr><td><p>0.6.1</p></td> <td><p>2013-02-12</p></td> -<td><p><tt class="literal">\@uclclist</tt> entries for <cite>PU</cite> aliases</p></td> +<td><p><tt class="literal">\@uclclist</tt> entries for <cite>PU</cite> aliases.</p></td> </tr> <tr><td><p>0.7</p></td> <td><p>2013-05-13</p></td> -<td><p>documentation update, new accent macros names, -<tt class="literal">\TextGreek</tt> renamed to <tt class="literal">\ensuregreek</tt>.</p></td> +<td><p>documentation update, new accent macros names,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p><tt class="literal">\TextGreek</tt> renamed to <tt class="literal">\ensuregreek</tt>.</p></td> </tr> <tr><td><p>0.8</p></td> <td><p>2013-05-13</p></td> -<td><p>rename to lgrenc.def (superseding the <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> version), -move to greek-fontenc, -drop back-compatibility definitions</p></td> +<td><p>rename to lgrenc.def (superseding the <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> version),</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>move to greek-fontenc,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>drop the old (<0.7) internal accent macros names.</p></td> +</tr> +<tr><td><p>0.8.1</p></td> +<td><p>2013-05-22</p></td> +<td><p>auxiliary macro update@uclc@with@greek,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>conservative naming: “text” prefix for archaic letters,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>“LGR@” prefix for internal commands,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>remove not required alias macros.</p></td> +</tr> +<tr><td><p>0.8.2</p></td> +<td><p>2013-05-23</p></td> +<td><p>fix name: <tt class="literal">\textpentehkaton</tt> -> <tt class="literal">\textpentehekaton</tt>,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>fix <tt class="literal">\textperiodcentered</tt>,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>add composite command for Ῥ (Rho with Dasia).</p></td> </tr> </tbody> </table> @@ -268,6 +317,11 @@ without the <tt class="literal">text</tt>-prefix, especially for letters,</p> <li><p><tt class="literal">text</tt> prefix marks a macro as confined to text mode.</p></li> </ul> </dd> +<dt>Conclusion:</dt> +<dd><p>To avoid name clashes, the font encoding file uses the <tt class="literal">text</tt> prefix +for symbols. Aliases (short forms, compatibility defs, etc.) can be +defined in packages.</p> +</dd> </dl> </li> </ul> @@ -280,19 +334,18 @@ without the <tt class="literal">text</tt>-prefix, especially for letters,</p> <li><p>tipa.sty and ucs use the “text” prefix also for accents.</p> <p>However, the <a class="reference external" href="http://www.adobe.com/devnet-archive/opentype/archives/aglfn.txt">Adobe Glyph List For New Fonts</a> maps, e.g., “tonos” and “dieresistonos” to 0384 GREEK TONOS and 0385 GREEK DIALYTIKA TONOS, hence -<cite>texttonos</cite> and <cite>textdiaresistonos</cite> should denote these spacing -characters.</p> +<cite>texttonos</cite> and <cite>textdiaresistonos</cite> should be spacing characters.</p> </li> <li><p>textcomp (ts1enc.def) defines <tt class="literal"><span class="pre">\capital...</span></tt> accents (i.e. without <tt class="literal">text</tt> prefix).</p></li> -<li><p>Use a common prefix <tt class="literal"><span class="pre">\accent...</span></tt> or postfix <tt class="literal"><span class="pre">\...accent</span></tt>, -or short <tt class="literal"><span class="pre">\acc...</span></tt>?</p></li> +<li><p>Use a common prefix <tt class="literal"><span class="pre">\textaccent...</span></tt>, <tt class="literal"><span class="pre">\accent...</span></tt>, +or just <tt class="literal"><span class="pre">\acc...</span></tt> (cf <tt class="literal">\@tabacckludge</tt>)?</p></li> </ul> <p>Currently, <cite>lgrx</cite> uses for <a class="reference internal" href="#diacritics">diacritics</a>:</p> <ul class="simple"> <li><p>Greek names like in Unicode, and ucsencs.def</p></li> <li><p>The prefix “acc” to distinguish the macros as <cite>TextAaccent</cite> and reduce the -risc of name clashes (cf <tt class="literal">\@tabacckludge</tt>).</p></li> +risc of name clashes.</p></li> <li><p>For the end-user “symbol macros” (<tt class="literal">\~ \' \` \" \< \></tt>) are provided.</p></li> </ul> </div> @@ -322,7 +375,8 @@ interfering with test via eTeX’s <tt class="literal">\ifdefined</tt>). However no harm is done as the macro is defined by the <a class="reference internal" href="#identification">identification</a> below anyway.</p> </div> -<pre class="literal-block">\@ifundefined{ver@lgrenc.def} +<pre class="literal-block">% read this file only once +\@ifundefined{ver@lgrenc.def} {} {\message{LGR font encoding definitions already loaded} \expandafter\endinput % "return" @@ -332,7 +386,12 @@ anyway.</p> <div class="section" id="identification"> <h2><a class="toc-backref" href="#id9">Identification</a></h2> <pre class="literal-block">\ProvidesFile{lgrenc.def} -[2013/05/13 v0.8 LGR Greek font encoding definitions] +[2013/05/24 v0.8.2 LGR Greek font encoding definitions] +% Copyright © 2010 Günter Milde +% This file is part of the "greek-fontenc" package. +% It 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. </pre> <p>You can test the version date using</p> <pre class="code latex literal-block"><span class="keyword">\@</span>ifl@ter <span class="name builtin">{</span>extension<span class="name builtin">}{</span>filename<span class="name builtin">}{</span>date<span class="name builtin">}{</span>YES<span class="name builtin">}{</span>NO<span class="name builtin">}</span> @@ -362,7 +421,7 @@ wrapping of compound Unicode character definitions.</p> specific to the LGR font encoding.</p> <p>The LICR macros provide a way to access the symbols independent of the specific font encoding, in any font encoding supporting Greek. An -alternative Greek font encodings is. LGI (<a class="reference external" href="http://www.ctan.org/pkg/ibycus-babel">ibycus</a>). Greek script is also +alternative Greek font encodings is LGI (<a class="reference external" href="http://www.ctan.org/pkg/ibycus-babel">ibycus</a>). Greek script is also supported by the Unicode-based font encodings PU (<cite>PDF Unicode</cite> used by <a class="reference external" href="http://www.ctan.org/pkg/hyperref">hyperref</a> for PDF metadata), EU1 (XeTeX) and EU2 (LuaTeX). The <a class="reference external" href="textalpha.sty.html">textalpha</a> package makes these macros available independent of the current font @@ -411,7 +470,7 @@ encoding.</p> \DeclareTextSymbol{\textrho}{LGR}{114} \DeclareTextCommand{\textsigma}{LGR}{s\noboundary} % σ \DeclareTextSymbol{\textvarsigma}{LGR}{99} % ς final sigma -\DeclareTextSymbol{\textfinalsigma}{LGR}{99} % ς final sigma +\DeclareTextCommand{\textfinalsigma}{LGR}{\textvarsigma} % ς final sigma \DeclareTextSymbol{\textautosigma}{LGR}{115} % σ (ς at end of word) \DeclareTextSymbol{\texttau}{LGR}{116} \DeclareTextSymbol{\textupsilon}{LGR}{117} @@ -425,64 +484,64 @@ encoding.</p> <h3><a class="toc-backref" href="#id13">Additional Greek symbols</a></h3> <div class="section" id="ancient-greek-numbers-athenian-numerals"> <h4><a class="toc-backref" href="#id14">Ancient Greek Numbers (Athenian Numerals)</a></h4> -<p>Names from the <a class="reference external" href="http://www.ctan.org/pkg/athnum">athnum</a> package -(TODO: should we define them here?):</p> -<pre class="literal-block">%\DeclareTextSymbol{\PiDelta}{LGR}{2} % GREEK ACROPHONIC ATTIC FIFTY -%\DeclareTextSymbol{\PiEta}{LGR}{3} % GREEK ACROPHONIC ATTIC FIVE HUNDRED -%\DeclareTextSymbol{\PiChi}{LGR}{4} % GREEK ACROPHONIC ATTIC FIVE THOUSAND -%\DeclareTextSymbol{\PiMu}{LGR}{5} % GREEK ACROPHONIC ATTIC FIFTY THOUSAND -</pre> -<p>Names from <tt class="literal"><span class="pre">xl-lgr.enc</span></tt> (Greek numerals):</p> -<pre class="literal-block">\DeclareTextSymbol{\pentedeka}{LGR}{2} % GREEK ACROPHONIC ATTIC FIFTY -\DeclareTextSymbol{\pentehekaton}{LGR}{3} % GREEK ACROPHONIC ATTIC FIVE HUNDRED -\DeclareTextSymbol{\penteqilioi}{LGR}{4} % GREEK ACROPHONIC ATTIC FIVE THOUSAND -\DeclareTextSymbol{\pentemurioi}{LGR}{5} % GREEK ACROPHONIC ATTIC FIFTY THOUSAND +<p>Names from <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a> (<tt class="literal">ucsencs.def</tt>) +(In ucs, five hundred is (wrongly?) named textpentehkaton.)</p> +<pre class="literal-block">\DeclareTextSymbol{\textpentedeka}{LGR}{2} % GREEK ACROPHONIC ATTIC FIFTY +\DeclareTextSymbol{\textpentehekaton}{LGR}{3} % GREEK ACROPHONIC ATTIC FIVE HUNDRED +\DeclareTextSymbol{\textpenteqilioi}{LGR}{4} % GREEK ACROPHONIC ATTIC FIVE THOUSAND +\DeclareTextSymbol{\textpentemuria}{LGR}{5} % GREEK ACROPHONIC ATTIC FIFTY THOUSAND </pre> </div> <div class="section" id="archaic-letters"> <h4><a class="toc-backref" href="#id15">Archaic letters</a></h4> -<p>Names after <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a> and <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a>. The “text” prefix is only used for Digamma, -which is also used in mathematical context:</p> -<pre class="literal-block">\DeclareTextSymbol{\stigma}{LGR}{6} % ϛ (greek.ldf, teubner) -\DeclareTextSymbol{\varstigma}{LGR}{7} % stigma variant (CB.enc, teubner) -\DeclareTextSymbol{\koppa}{LGR}{18} % ϟ (greek small letter koppa) -\DeclareTextSymbol{\qoppa}{LGR}{19} % ϙ (archaic koppa) -\DeclareTextSymbol{\Qoppa}{LGR}{21} % Ϙ (archaic Koppa) -\DeclareTextSymbol{\Stigma}{LGR}{22} % Ϛ (teubner) in some fonts ϹΤ ligature -\DeclareTextSymbol{\Sampi}{LGR}{23} % Ϡ -\DeclareTextSymbol{\sampi}{LGR}{27} % ϡ -\DeclareTextSymbol{\anoteleia}{LGR}{38} % · -\DeclareTextSymbol{\erotimatiko}{LGR}{63} % ; -% \digamma used by amsmath for math-macro: -\DeclareTextSymbol{\textdigamma}{LGR}{147} % ϝ (uni-3.def (ucs)) -\DeclareTextSymbol{\textDigamma}{LGR}{195} % Ϝ (uni-3.def (ucs)) +<p>Names after <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a> and <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a>:</p> +<pre class="literal-block">\DeclareTextSymbol{\textstigma}{LGR}{6} % ϛ +\DeclareTextSymbol{\textvarstigma}{LGR}{7} % stigma variant (CB.enc, teubner) +\DeclareTextSymbol{\textkoppa}{LGR}{18} % ϟ (greek small letter koppa) +\DeclareTextSymbol{\textqoppa}{LGR}{19} % ϙ (archaic koppa) +\DeclareTextSymbol{\textQoppa}{LGR}{21} % Ϙ (archaic Koppa) +\DeclareTextSymbol{\textStigma}{LGR}{22} % Ϛ in some fonts ϹΤ ligature +\DeclareTextSymbol{\textSampi}{LGR}{23} % Ϡ +\DeclareTextSymbol{\textsampi}{LGR}{27} % ϡ +\DeclareTextSymbol{\textanoteleia}{LGR}{38} % · +\DeclareTextSymbol{\texterotimatiko}{LGR}{63} % ; +\DeclareTextSymbol{\textdigamma}{LGR}{147} % ϝ (ucs) \digamma used by amsmath for math-macro +\DeclareTextSymbol{\textDigamma}{LGR}{195} % Ϝ (ucs) </pre> -<p>Compatibility aliases for <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a>’s <tt class="literal">greek.ldf</tt> and <a class="reference external" href="http://www.ctan.org/pkg/hyperref">hyperref</a>’s puenc.def, -defined via <cite>DeclareTextCommand</cite> so that up/downcasing works without the -need for additional uclclist entries:</p> -<pre class="literal-block">\DeclareTextCommand{\vardigamma}{LGR}{\varstigma} % greek.ldf -\DeclareTextCommand{\textstigmagreek}{LGR}{\stigma} % puenc.def -\DeclareTextCommand{\textkoppagreek}{LGR}{\koppa} % puenc.def -\DeclareTextCommand{\textStigmagreek}{LGR}{\Stigma} % puenc.def -\DeclareTextCommand{\textSampigreek}{LGR}{\Sampi} % puenc.def -\DeclareTextCommand{\textsampigreek}{LGR}{\sampi} % puenc.def -\DeclareTextCommand{\ddigamma}{LGR}{\textdigamma} % greek.ldf +<p>Compatibility aliases for <a class="reference external" href="http://www.ctan.org/pkg/hyperref">hyperref</a>’s puenc.def, defined via +<cite>DeclareTextCommand</cite> so that up/downcasing works without the need for +additional uclclist entries:</p> +<pre class="literal-block">\DeclareTextCommand{\textstigmagreek}{LGR}{\textstigma} % puenc.def +\DeclareTextCommand{\textkoppagreek}{LGR}{\textkoppa} % puenc.def +\DeclareTextCommand{\textStigmagreek}{LGR}{\textStigma} % puenc.def +\DeclareTextCommand{\textSampigreek}{LGR}{\textSampi} % puenc.def +\DeclareTextCommand{\textsampigreek}{LGR}{\textsampi} % puenc.def \DeclareTextCommand{\textdigammagreek}{LGR}{\textdigamma} % puenc.def -\DeclareTextCommand{\Digamma}{LGR}{\textDigamma} % greek.ldf \DeclareTextCommand{\textDigammagreek}{LGR}{\textDigamma} % puenc.def </pre> +<p>Compatibility aliases for <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a>’s <tt class="literal">greek.ldf</tt> (will be moved to the babel +package). :</p> +<pre class="code latex literal-block"><span class="comment">% \digamma used by amsmath for math-macro +</span><span class="keyword">\DeclareTextCommand</span><span class="name builtin">{</span><span class="keyword">\ddigamma</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textdigamma</span><span class="name builtin">}</span> <span class="comment">% greek.ldf +</span><span class="keyword">\DeclareTextCommand</span><span class="name builtin">{</span><span class="keyword">\vardigamma</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textvarstigma</span><span class="name builtin">}</span> <span class="comment">% greek.ldf +</span><span class="keyword">\DeclareTextCommand</span><span class="name builtin">{</span><span class="keyword">\Digamma</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textDigamma</span><span class="name builtin">}</span> <span class="comment">% greek.ldf</span> +</pre> </div> <div class="section" id="numeral-signs"> <h4><a class="toc-backref" href="#id16">Numeral signs</a></h4> -<p>See also <a class="reference external" href="http://en.wikipedia.org/wiki/Greek_numerals">http://en.wikipedia.org/wiki/Greek_numerals</a></p> -<p>Names from <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> and <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a>:</p> -<pre class="literal-block">\DeclareTextSymbol{\anwtonos}{LGR}{254} % ʹ (Dexia keraia) -\DeclareTextSymbol{\katwtonos}{LGR}{255} % ͵ (Aristeri keraia) -</pre> -<p>Compatibility definitions for <a class="reference external" href="http://www.ctan.org/pkg/hyperref">hyperref</a>’s puenc.def:</p> +<p>See also <a class="reference external" href="http://en.wikipedia.org/wiki/Greek_numerals">http://en.wikipedia.org/wiki/Greek_numerals</a> +Names from <a class="reference external" href="http://www.ctan.org/pkg/hyperref">hyperref</a>’s puenc.def:</p> <pre class="literal-block">\DeclareTextSymbol{\textnumeralsigngreek}{LGR}{254} % ʹ (puenc.def) \DeclareTextSymbol{\textnumeralsignlowergreek}{LGR}{255} % ͵ (puenc.def) </pre> +<p>Names from <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a> and <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a></p> +<pre class="code latex literal-block"><span class="keyword">\DeclareTextSymbol</span><span class="name builtin">{</span><span class="keyword">\anwtonos</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>254<span class="name builtin">}</span> <span class="comment">% ʹ (Dexia keraia) +</span><span class="keyword">\DeclareTextSymbol</span><span class="name builtin">{</span><span class="keyword">\katwtonos</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>255<span class="name builtin">}</span> <span class="comment">% ͵ (Aristeri keraia)</span> +</pre> +<p>Names from <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a></p> +<pre class="code latex literal-block"><span class="keyword">\DeclareTextSymbol</span><span class="name builtin">{</span><span class="keyword">\textdexiakeraia</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>254<span class="name builtin">}</span> <span class="comment">% ʹ (Dexia keraia) +</span><span class="keyword">\DeclareTextSymbol</span><span class="name builtin">{</span><span class="keyword">\textaristerikeraia</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>255<span class="name builtin">}</span> <span class="comment">% ͵ (Aristeri keraia)</span> +</pre> </div> </div> <div class="section" id="other"> @@ -493,20 +552,20 @@ need for additional uclclist entries:</p> <li><p>use established macro names that match with other <tt class="literal">*enc.def</tt> files and <tt class="literal">textcomp.sty</tt>.</p></li> </ul> -<pre class="literal-block">% all encodings: See usrguide.pdf, chapter 3.14 ff -\DeclareTextSymbol{\textendash}{LGR}{0} % EN DASH +<p>All encodings: See usrguide.pdf, chapter 3.14 ff:</p> +<pre class="literal-block">\DeclareTextSymbol{\textendash}{LGR}{0} % EN DASH \DeclareTextSymbol{\textquoteleft}{LGR}{28} % ‘ \DeclareTextSymbol{\textquoteright}{LGR}{29} % ’ -\DeclareTextSymbol{\textperiodcentered}{LGR}{46} % · = \textanoteleia +\DeclareTextSymbol{\textperiodcentered}{LGR}{38} % · = \textanoteleia \DeclareTextSymbol{\textcompwordmark}{LGR}{118} % ZERO WIDTH NO JOINER \DeclareTextSymbol{\textemdash}{LGR}{127} % EM DASH - -% T1 -\DeclareTextSymbol{\guillemotleft}{LGR}{123} % « +</pre> +<p>T1:</p> +<pre class="literal-block">\DeclareTextSymbol{\guillemotleft}{LGR}{123} % « \DeclareTextSymbol{\guillemotright}{LGR}{125} % » - -% TS1 -\ProvideTextCommand{\textasciibreve}{LGR}{\char30\textcompwordmark} % ˘ +</pre> +<p>TS1:</p> +<pre class="literal-block">\ProvideTextCommand{\textasciibreve}{LGR}{\char30\textcompwordmark} % ˘ \ProvideTextCommand{\textasciimacron}{LGR}{\char31\textcompwordmark} % ¯ \ProvideTextCommand{\textasciidieresis}{LGR}{\char34\textcompwordmark} % " \ProvideTextCommand{\textasciiacute}{LGR}{\char39\textcompwordmark} % ' @@ -516,9 +575,9 @@ need for additional uclclist entries:</p> \DeclareTextSymbol{\texteuro}{LGR}{24} % € \euro in greek.ldf \DeclareTextSymbol{\textpercent}{LGR}{37} % % \DeclareTextSymbol{\textperthousand}{LGR}{25} % ‰ \permille in greek.ldf - -% T3 -\DeclareTextSymbol{\textschwa}{LGR}{26} % ə +</pre> +<p>T3:</p> +<pre class="literal-block">\DeclareTextSymbol{\textschwa}{LGR}{26} % ə </pre> </div> <div class="section" id="not-implemented"> @@ -540,12 +599,12 @@ in a font-encoding definition file as they</p> <li><p>require <tt class="literal">\textlatin</tt> which is defined in <tt class="literal">babel.def</tt>,</p></li> <li><p>prevent use of TS1 symbols set as default by <tt class="literal">textcomp.sty</tt>.</p></li> </ul> -<pre class="literal-block">%\ProvideTextCommand{\textcopyright}{LGR}{\textcircled{\textlatin{c}}} -%\ProvideTextCommand{\textregistered}{LGR}{\textcircled{\textlatin{\textsc r}}} -%\ProvideTextCommand{\texttrademark}{LGR}{\textsuperscript{\textlatin{TM}}} -%\ProvideTextCommand{\SS}{LGR}{\textlatin{SS}} +<pre class="code latex literal-block"><span class="keyword">\ProvideTextCommand</span><span class="name builtin">{</span><span class="keyword">\textcopyright</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textcircled</span><span class="name builtin">{</span><span class="keyword">\textlatin</span><span class="name builtin">{</span>c<span class="name builtin">}}}</span> +<span class="keyword">\ProvideTextCommand</span><span class="name builtin">{</span><span class="keyword">\textregistered</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textcircled</span><span class="name builtin">{</span><span class="keyword">\textlatin</span><span class="name builtin">{</span><span class="keyword">\textsc</span> r<span class="name builtin">}}}</span> +<span class="keyword">\ProvideTextCommand</span><span class="name builtin">{</span><span class="keyword">\texttrademark</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textsuperscript</span><span class="name builtin">{</span><span class="keyword">\textlatin</span><span class="name builtin">{</span>TM<span class="name builtin">}}}</span> +<span class="keyword">\ProvideTextCommand</span><span class="name builtin">{</span><span class="keyword">\SS</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\textlatin</span><span class="name builtin">{</span>SS<span class="name builtin">}}</span> </pre> -<p>They may be moved to <tt class="literal">greek.ldf</tt> one day (with a caveat for textcomp/TS1).</p> +<p>They were moved to <tt class="literal">greek.ldf</tt>.</p> </div> </div> <div class="section" id="diacritics"> @@ -605,10 +664,8 @@ with kerning:</p> <p>For classical Greek and linguistics, the LGR font encoding contains a number of additional diacritic symbols:</p> <pre class="literal-block">\DeclareTextAccent{\accinvertedbrevebelow}{LGR}{1} % INVERTED BREVE BELOW -\DeclareTextAccent{\subinvertedbreve}{LGR}{1} % (lgrx) \DeclareTextAccent{\textsubarch}{LGR}{1} % (tipa) \DeclareTextAccent{\accbrevebelow}{LGR}{20} % BREVE BELOW -\DeclareTextAccent{\subbreve}{LGR}{20} % (lgrx) \DeclareTextAccent{\u}{LGR}{30} % BREVE \DeclareTextAccent{\=}{LGR}{31} % MACRON </pre> @@ -625,8 +682,8 @@ of additional diacritic symbols:</p> </pre> <p>TODO: do we also want alternative symbols for the breathings (cf. X compose table, LCI encoding)?</p> -<pre class="literal-block">%\DeclareTextCommand{\(}{LGR}{\accdasia} -%\DeclareTextCommand{\)}{LGR}{\accpsili} +<pre class="code latex literal-block"><span class="keyword">\DeclareTextCommand</span><span class="name builtin">{</span><span class="literal string">\(</span><span class="name builtin">}{LGR}{</span><span class="name variable">\accdasia</span><span class="name builtin">} +</span><span class="name variable">\DeclareTextCommand</span><span class="name builtin">{</span><span class="literal string">\)</span><span class="name builtin">}{</span>LGR<span class="name builtin">}{</span><span class="keyword">\accpsili</span><span class="name builtin">}</span> </pre> <p>Two Unicode names for one character:</p> <pre class="literal-block">\DeclareTextCommand{\accoxia}{LGR}{\acctonos} @@ -956,6 +1013,8 @@ in cases where they are not needed when writing in lowercase)</p> \DeclareTextCompositeCommand{\acctonos}{LGR}{O}{'O} \DeclareTextCompositeCommand{\accvaria}{LGR}{O}{`O} +\DeclareTextCompositeCommand{\accdasia}{LGR}{R}{<R} + \DeclareTextCompositeCommand{\accdasia}{LGR}{U}{<U} \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{U}{<`U} \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{U}{<'U} @@ -1030,6 +1089,8 @@ in cases where they are not needed when writing in lowercase)</p> \DeclareTextCompositeCommand{\acctonos}{LGR}{\textOmicron}{'O} \DeclareTextCompositeCommand{\accvaria}{LGR}{\textOmicron}{`O} +\DeclareTextCompositeCommand{\accdasia}{LGR}{\textRho}{<R} + \DeclareTextCompositeCommand{\accdasia}{LGR}{\textUpsilon}{<U} \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\textUpsilon}{<`U} \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\textUpsilon}{<'U} @@ -1062,24 +1123,27 @@ in cases where they are not needed when writing in lowercase)</p> <p>If UPPERCASE (all-caps) is generated with <tt class="literal">\MakeUppercase</tt>, macro substitutions in the <tt class="literal">\@uclclist</tt> apply. This can be used to drop the diacritics (except dialytika).</p> -<p>Based on the <a class="reference external" href="http://www.eutypon.gr/eutypon/pdf/e2008-20/e20-a03.pdf">babel patch</a> and <tt class="literal">fontenc.sty</tt>. -(The first two lines are TeX’ way of writing <tt class="literal">uclclist += …</tt>):</p> -<pre class="literal-block">\expandafter\def\expandafter\@uclclist\expandafter{% - \@uclclist - \accdasia\acc@invisible - \accdasiaoxia\@hiatus - \accdasiavaria\acc@invisible - \accdasiaperispomeni\acc@invisible - \accpsili\@hiatus - \accpsilioxia\@hiatus - \accpsilivaria\@hiatus - \accpsiliperispomeni\acc@invisible - \acctonos\@hiatus - \accvaria\acc@invisible - \accdialytikatonos\acc@Dialytika - \accdialytikavaria\acc@Dialytika - \accdialytikaperispomeni\acc@Dialytika - \accperispomeni\acc@invisible +<p>Based on the <a class="reference external" href="http://www.eutypon.gr/eutypon/pdf/e2008-20/e20-a03.pdf">babel patch</a> and <tt class="literal">fontenc.sty</tt>.</p> +<p>The definition or an auxiliary, self-restting macro makes this idempotent +(only the first use of this function will expand the <tt class="literal">@uclclist</tt>). +The second and third lines are TeX’ way of writing <tt class="literal">uclclist += …</tt>:</p> +<pre class="literal-block">\providecommand*\update@uclc@with@greek{% + \expandafter\def\expandafter\@uclclist\expandafter{% + \@uclclist + \accdasia\LGR@accdropped + \accdasiaoxia\LGR@hiatus + \accdasiavaria\LGR@accdropped + \accdasiaperispomeni\LGR@accdropped + \accpsili\LGR@hiatus + \accpsilioxia\LGR@hiatus + \accpsilivaria\LGR@hiatus + \accpsiliperispomeni\LGR@accdropped + \acctonos\LGR@hiatus + \accvaria\LGR@accdropped + \accdialytikatonos\LGR@accDialytika + \accdialytikavaria\LGR@accDialytika + \accdialytikaperispomeni\LGR@accDialytika + \accperispomeni\LGR@accdropped \ypogegrammeni\prosgegrammeni % \textalpha \textAlpha @@ -1109,19 +1173,24 @@ diacritics (except dialytika).</p> \textpsi \textPsi \textomega \textOmega % - \qoppa \Qoppa - \varstigma \Stigma - \stigma \Stigma - \sampi \Sampi - \textdigamma \textDigamma + \textqoppa \textQoppa + \textvarstigma \textStigma + \textstigma \textStigma + \textsampi \textSampi + \textdigamma \textDigamma + }% + \let\update@uclc@with@greek\relax } </pre> +<p>Expand the uclc list with the just defined macro:</p> +<pre class="literal-block">\update@uclc@with@greek +</pre> </div> <div class="section" id="substitution-macros"> <h3><a class="toc-backref" href="#id29">Substitution macros</a></h3> <div class="section" id="drop-diacritics"> <h4><a class="toc-backref" href="#id30">Drop diacritics</a></h4> -<pre class="literal-block">\DeclareTextCommand{\acc@invisible}{LGR}[1]{#1} +<pre class="literal-block">\DeclareTextCommand{\LGR@accdropped}{LGR}[1]{#1} </pre> <p>(The argument processing ensures that kerning is preserved)</p> </div> @@ -1129,18 +1198,18 @@ diacritics (except dialytika).</p> <h4><a class="toc-backref" href="#id31">Keep dialytika.</a></h4> <p>Define a dummy alias so that downcasing with <tt class="literal">\MakeLowercase</tt> does not convert a simple dialytika to a composite accent:</p> -<pre class="literal-block">\DeclareTextCommand{\acc@Dialytika}{LGR}{\accdialytika} +<pre class="literal-block">\DeclareTextCommand{\LGR@accDialytika}{LGR}{\accdialytika} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{\@hiatus}{\accdialytika} +\DeclareTextCompositeCommand{\accdialytika}{LGR}{\LGR@hiatus}{\accdialytika} </pre> <!-- TODO: MakeUppercase with ``\"'`` fails if the language is "greek". How can we specify a composite command with character ``"9F``, the uccode of ``'``? -% \DeclareTextCompositeCommand{\acc@Dialytika}{LGR}{"9F}{\accdialytika} -% \DeclareTextAccent{\acc@Dialytika}{LGR}{34} % upcase Dialytika -% \DeclareTextCompositeCommand{\acc@Dialytika}{LGR}{\@hiatus}{\accdialytika} -% \DeclareTextCompositeCommand{\acc@Dialytika}{LGR}{'}{\accdialytika} --> +% \DeclareTextCompositeCommand{\LGR@accDialytika}{LGR}{"9F}{\accdialytika} +% \DeclareTextAccent{\LGR@accDialytika}{LGR}{34} % upcase Dialytika +% \DeclareTextCompositeCommand{\LGR@accDialytika}{LGR}{\LGR@hiatus}{\accdialytika} +% \DeclareTextCompositeCommand{\LGR@accDialytika}{LGR}{'}{\accdialytika} --> </div> <div class="section" id="mark-hiatus"> <h4><a class="toc-backref" href="#id32">Mark hiatus</a></h4> @@ -1148,20 +1217,21 @@ the uccode of ``'``? first vowel of a diphthong (ΑΙ, ΑΥ, ΕΙ). A dialytika must be placed on the second vowel if they are dropped (άυλος → ΑΫΛΟΣ, μάινα → ΜΑΪΝΑ, κέικ → ΚΕΪΚ, ἀυπνία → ΑΫΠΝΙΑ):</p> -<pre class="literal-block">\DeclareTextCommand{\@hiatus}{LGR}[1]{#1} -\DeclareTextCompositeCommand{\@hiatus}{LGR}{>}{\@hiatus} -\DeclareTextCompositeCommand{\@hiatus}{LGR}{<}{\acc@invisible} -\DeclareTextCompositeCommand{\@hiatus}{LGR}{A}{\A@hiatus} -\DeclareTextCompositeCommand{\@hiatus}{LGR}{\textAlpha}{\A@hiatus} -\DeclareTextCompositeCommand{\@hiatus}{LGR}{E}{\E@hiatus} -\DeclareTextCompositeCommand{\@hiatus}{LGR}{\textEpsilon}{\E@hiatus} -% What does the \@hiatus command "see" if an unicode literal follows? -% \DeclareTextCompositeCommand{\@hiatus}{LGR}{\symbol{"ce}}{bluff} -% \DeclareTextCompositeCommand{\@hiatus}{LGR}{"cf}{blaff} -% \DeclareTextCompositeCommand{\@hiatus}{LGR}{ι}{blaff} +<pre class="literal-block">\DeclareTextCommand{\LGR@hiatus}{LGR}[1]{#1} +\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{>}{\LGR@hiatus} +\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{<}{\LGR@accdropped} +\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{A}{\LGR@A@hiatus} +\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{\textAlpha}{\LGR@A@hiatus} +\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{E}{\LGR@E@hiatus} +\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{\textEpsilon}{\LGR@E@hiatus} +</pre> +<p>TODO: What does the <a class="reference external" href="mailto:LGR@hiatus">LGR@hiatus</a> command “see” if an unicode literal follows?</p> +<pre class="code latex literal-block"><span class="comment">% \DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{\symbol{"ce}}{bluff} +% \DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{"cf}{blaff} +% \DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{ι}{blaff}</span> </pre> <p>Look ahead and place a diaeresis on Ι or Υ:</p> -<pre class="literal-block">\DeclareTextCommand{\A@hiatus}{LGR}{% +<pre class="literal-block">\DeclareTextCommand{\LGR@A@hiatus}{LGR}{% \LGR@ifnextchar{I}{A\"}{% \LGR@ifnextchar{U}{A\"}{% \LGR@ifnextchar{\textIota}{A\"}{% @@ -1170,7 +1240,7 @@ second vowel if they are dropped (άυλος → ΑΫΛΟΣ, μάινα → ΜΑ }% }% } -\DeclareTextCommand{\E@hiatus}{LGR}{% +\DeclareTextCommand{\LGR@E@hiatus}{LGR}{% \LGR@ifnextchar{I}{E\"}{% \LGR@ifnextchar{U}{E\"}{% \LGR@ifnextchar{\textIota}{E\"}{% @@ -1187,7 +1257,6 @@ second vowel if they are dropped (άυλος → ΑΫΛΟΣ, μάινα → ΜΑ that does not skip over spaces.</p> </blockquote> <pre class="literal-block">\ProvideTextCommand{\LGR@ifnextchar}{LGR}[3]{% -% \long\def\LGR@ifnextchar#1#2#3{% \let\reserved@d= #1% \def\reserved@a{#2}\def\reserved@b{#3}% \futurelet\@let@token\LGR@ifnch @@ -1200,20 +1269,20 @@ that does not skip over spaces.</p> <p>Unfortunately, the lookahead breaks kerning.</p> <p>Alternatives tried:</p> <ul> -<li><p>CompositeCommands fail at the end of a macro, e.g. <tt class="literal"><span class="pre">\emph{\'a}</span></tt>:</p> -<pre class="literal-block">%\DeclareTextCommand{\A@hiatus}{LGR}{A} -%\DeclareTextCommand{\E@hiatus}{LGR}{E} +<li><p>CompositeCommands fail at the end of a macro, e.g. <tt class="literal"><span class="pre">\emph{\'a}</span></tt></p> +<pre class="code latex literal-block"><span class="keyword">\DeclareTextCommand</span><span class="name builtin">{</span><span class="keyword">\LGR</span>@A@hiatus<span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>A<span class="name builtin">}</span> +<span class="keyword">\DeclareTextCommand</span><span class="name builtin">{</span><span class="keyword">\LGR</span>@E@hiatus<span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>E<span class="name builtin">}</span> -%\DeclareTextCompositeCommand{\A@hiatus}{LGR}{}{A} -%\DeclareTextCompositeCommand{\A@hiatus}{LGR}{I}{A\"I} -%\DeclareTextCompositeCommand{\A@hiatus}{LGR}{U}{A\"U} +<span class="keyword">\DeclareTextCompositeCommand</span><span class="name builtin">{</span><span class="keyword">\LGR</span>@A@hiatus<span class="name builtin">}{</span>LGR<span class="name builtin">}{}{</span>A<span class="name builtin">}</span> +<span class="keyword">\DeclareTextCompositeCommand</span><span class="name builtin">{</span><span class="keyword">\LGR</span>@A@hiatus<span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>I<span class="name builtin">}{</span>A<span class="keyword">\"</span>I<span class="name builtin">}</span> +<span class="keyword">\DeclareTextCompositeCommand</span><span class="name builtin">{</span><span class="keyword">\LGR</span>@A@hiatus<span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>U<span class="name builtin">}{</span>A<span class="keyword">\"</span>U<span class="name builtin">}</span> </pre> </li> <li><p>The glyph No 12 is a special “Upcase Alpha” that in ligature with Y and I adds a diaresis to them. However, it seems that it has only kerning definitions for I and Y (as it is not intended for direct -use):</p> -<pre class="literal-block">%\DeclareTextComposite{\@hiatus}{LGR}{A}{12} +use)</p> +<pre class="code latex literal-block"><span class="keyword">\DeclareTextComposite</span><span class="name builtin">{</span><span class="keyword">\LGR</span>@hiatus<span class="name builtin">}{</span>LGR<span class="name builtin">}{</span>A<span class="name builtin">}{</span>12<span class="name builtin">}</span> </pre> <p>No such glyph exists for E but this is no problem as E does not require kerning anyway.</p> |