diff options
author | Karl Berry <karl@freefriends.org> | 2013-07-17 22:12:47 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-07-17 22:12:47 +0000 |
commit | d9add100de8f268f2b408533a41cc5624ef1ee7a (patch) | |
tree | a50a9317ff4e1bc15403820318ab44ae97e99d0a /Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html | |
parent | 989e69000a109aa206742cc979fb247b9294ef7a (diff) |
greek-fontenc (17jul13)
git-svn-id: svn://tug.org/texlive/trunk@31220 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 | 590 |
1 files changed, 103 insertions, 487 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 48282a59f38..4b0ac85301f 100644 --- a/Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html +++ b/Master/texmf-dist/doc/latex/greek-fontenc/lgrenc.def.html @@ -34,69 +34,52 @@ package.</p> <div class="contents topic" id="contents"> <p class="topic-title first">Contents</p> <ul class="simple"> -<li><p><a class="reference internal" href="#changelog" id="id1">Changelog</a></p></li> -<li><p><a class="reference internal" href="#usage" id="id2">Usage</a></p></li> -<li><p><a class="reference internal" href="#preliminary-considerations-licr-macro-names" id="id3">preliminary considerations: LICR macro names</a></p> +<li><p><a class="reference internal" href="#changelog" id="id2">Changelog</a></p></li> +<li><p><a class="reference internal" href="#usage" id="id3">Usage</a></p></li> +<li><p><a class="reference internal" href="#implementation" id="id4">Implementation</a></p> <ul> -<li><p><a class="reference internal" href="#proposals" id="id4">Proposals</a></p></li> -<li><p><a class="reference internal" href="#how-to-name-accent-macros" id="id5">How to name <em>accent macros</em>?</a></p></li> -<li><p><a class="reference internal" href="#references" id="id6">References</a></p></li> -</ul> -</li> -<li><p><a class="reference internal" href="#implementation" id="id7">Implementation</a></p> +<li><p><a class="reference internal" href="#read-this-file-only-once" id="id5">Read this file only once</a></p></li> +<li><p><a class="reference internal" href="#identification" id="id6">Identification</a></p></li> +<li><p><a class="reference internal" href="#base-setup" id="id7">Base setup</a></p></li> +<li><p><a class="reference internal" href="#text-symbols" id="id8">Text symbols</a></p> <ul> -<li><p><a class="reference internal" href="#read-this-file-only-once" id="id8">Read this file only once</a></p></li> -<li><p><a class="reference internal" href="#identification" id="id9">Identification</a></p></li> -<li><p><a class="reference internal" href="#base-setup" id="id10">Base setup</a></p></li> -<li><p><a class="reference internal" href="#text-symbols" id="id11">Text symbols</a></p> +<li><p><a class="reference internal" href="#greek-alphabet" id="id9">Greek Alphabet</a></p></li> +<li><p><a class="reference internal" href="#additional-greek-symbols" id="id10">Additional Greek symbols</a></p> <ul> -<li><p><a class="reference internal" href="#greek-alphabet" id="id12">Greek Alphabet</a></p></li> -<li><p><a class="reference internal" href="#additional-greek-symbols" id="id13">Additional Greek symbols</a></p> -<ul> -<li><p><a class="reference internal" href="#ancient-greek-numbers-athenian-numerals" id="id14">Ancient Greek Numbers (Athenian Numerals)</a></p></li> -<li><p><a class="reference internal" href="#archaic-letters" id="id15">Archaic letters</a></p></li> -<li><p><a class="reference internal" href="#numeral-signs" id="id16">Numeral signs</a></p></li> +<li><p><a class="reference internal" href="#ancient-greek-numbers-athenian-numerals" id="id11">Ancient Greek Numbers (Athenian Numerals)</a></p></li> +<li><p><a class="reference internal" href="#archaic-letters" id="id12">Archaic letters</a></p></li> +<li><p><a class="reference internal" href="#numeral-signs" id="id13">Numeral signs</a></p></li> </ul> </li> -<li><p><a class="reference internal" href="#other" id="id17">Other</a></p></li> -<li><p><a class="reference internal" href="#not-implemented" id="id18">Not implemented</a></p></li> +<li><p><a class="reference internal" href="#other" id="id14">Other</a></p></li> +<li><p><a class="reference internal" href="#not-implemented" id="id15">Not implemented</a></p></li> </ul> </li> -<li><p><a class="reference internal" href="#diacritics" id="id19">Diacritics</a></p> +<li><p><a class="reference internal" href="#diacritics" id="id16">Diacritics</a></p> <ul> -<li><p><a class="reference internal" href="#named-macros" id="id20">Named macros</a></p></li> -<li><p><a class="reference internal" href="#aliases" id="id21">Aliases</a></p></li> +<li><p><a class="reference internal" href="#named-macros" id="id17">Named macros</a></p></li> +<li><p><a class="reference internal" href="#aliases" id="id18">Aliases</a></p></li> </ul> </li> -<li><p><a class="reference internal" href="#composite-definitions" id="id22">Composite definitions</a></p> +<li><p><a class="reference internal" href="#common-greek-font-encoding-definitions" id="id19">Common Greek font encoding definitions</a></p></li> +<li><p><a class="reference internal" href="#composite-definitions" id="id20">Composite definitions</a></p> <ul> -<li><p><a class="reference internal" href="#composite-diacritics" id="id23">Composite diacritics</a></p></li> -<li><p><a class="reference internal" href="#pre-composed-letters" id="id24">Pre-composed letters</a></p> +<li><p><a class="reference internal" href="#composite-diacritics" id="id21">Composite diacritics</a></p></li> +<li><p><a class="reference internal" href="#pre-composed-letters" id="id22">Pre-composed letters</a></p> <ul> -<li><p><a class="reference internal" href="#small-letters-with-diacritics" id="id25">Small letters with diacritics</a></p></li> -<li><p><a class="reference internal" href="#capital-letters-with-diacritics" id="id26">Capital letters with diacritics</a></p></li> -</ul> -</li> -</ul> -</li> -<li><p><a class="reference internal" href="#uppercase" id="id27">UPPERCASE</a></p> -<ul> -<li><p><a class="reference internal" href="#uclclist-extension" id="id28">@uclclist extension</a></p></li> -<li><p><a class="reference internal" href="#substitution-macros" id="id29">Substitution macros</a></p> -<ul> -<li><p><a class="reference internal" href="#drop-diacritics" id="id30">Drop diacritics</a></p></li> -<li><p><a class="reference internal" href="#keep-dialytika" id="id31">Keep dialytika.</a></p></li> -<li><p><a class="reference internal" href="#mark-hiatus" id="id32">Mark hiatus</a></p></li> +<li><p><a class="reference internal" href="#small-letters-with-diacritics" id="id23">Small letters with diacritics</a></p></li> +<li><p><a class="reference internal" href="#capital-letters-with-diacritics" id="id24">Capital letters with diacritics</a></p></li> </ul> </li> </ul> </li> +<li><p><a class="reference internal" href="#uppercase" id="id25">UPPERCASE</a></p></li> </ul> </li> </ul> </div> <div class="section" id="changelog"> -<h1><a class="toc-backref" href="#id1">Changelog</a></h1> +<h1><a class="toc-backref" href="#id2">Changelog</a></h1> <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 class="borderless"> @@ -200,11 +183,20 @@ package.</p> <td> </td> <td><p>add composite command for Ῥ (Rho with Dasia).</p></td> </tr> +<tr><td><p>0.9</p></td> +<td><p>2013-07-16</p></td> +<td><p>move common definitions to <tt class="literal"><span class="pre">greek-fontenc.def</span></tt>,</p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>add composite commands for single quotation marks.</p></td> +</tr> </tbody> </table> </div> <div class="section" id="usage"> -<h1><a class="toc-backref" href="#id2">Usage</a></h1> +<h1><a class="toc-backref" href="#id3">Usage</a></h1> <p>Load this file by calling <a class="reference external" href="http://www.ctan.org/pkg/fontenc">fontenc</a> with the <tt class="literal">LGR</tt> option or indirectly via the <a class="reference external" href="http://www.ctan.org/pkg/babel">babel</a>, <a class="reference external" href="textalpha.sty.html">textalpha</a> or <a class="reference external" href="alphabeta.sty.html">alphabeta</a> packages.</p> <dl class="docutils"> @@ -216,162 +208,15 @@ or indirectly via the <a class="reference external" href="http://www.ctan.org/pk </dd> </dl> </div> -<div class="section" id="preliminary-considerations-licr-macro-names"> -<h1><a class="toc-backref" href="#id3">preliminary considerations: LICR macro names</a></h1> -<p>This file provides LaTeX internal character representations (LICR macros) -for all non-ASCII characters present in the LGR font encoding. For Greek -letters and diacritics, LICR macro names were selected based on the -following considerations:</p> -<p>The <a class="reference external" href="http://mirror.ctan.org/macros/latex/doc/fntguide.pdf">fntguide</a> (section 6.4 Naming conventions) recommends:</p> -<blockquote> -<p>Where possible, text symbols should be named as <tt class="literal">\text</tt> followed -by the Adobe glyph name: for example <tt class="literal">\textonequarter</tt> or -<tt class="literal">\textsterling</tt>. Similarly, math symbols should be named as -<tt class="literal">\math</tt> followed by the glyph name, for example -<tt class="literal">\mathonequarter</tt> or <tt class="literal">\mathsterling</tt>.</p> -</blockquote> -<p>The <a class="reference external" href="http://www.adobe.com/devnet-archive/opentype/archives/aglfn.txt">Adobe Glyph List For New Fonts</a> has names for many glyphs in the -<cite>Greek and Coptic</cite> Unicode block, but not for <cite>Greek extended</cite>. -The <a class="reference external" href="http://partners.adobe.com/public/developer/en/opentype/glyphlist.txt">Adobe Glyph List</a> (for existing fonts) lists additional glyph names -used in older fonts.</p> -<div class="section" id="proposals"> -<h2><a class="toc-backref" href="#id4">Proposals</a></h2> -<ul> -<li><p>If there exists a math-mode macro for a symbol, form the corresponding text -macro by prepending <tt class="literal">text</tt>?</p> -<dl class="docutils"> -<dt>Example:</dt> -<dd><p>The glyph name for the GREEK SMALL LETTER FINAL SIGMA is <tt class="literal">sigma1</tt>, -the corresponding math-macro is <tt class="literal">\varsigma</tt>. The text symbol could be -made available as <tt class="literal">\textvarsigma</tt>.</p> -</dd> -<dt>Problems:</dt> -<dd><p><tt class="literal">\varepsilon</tt> and <tt class="literal">\varphi</tt> math macros map to characters named -“GREEK SMALL <strong>LETTER</strong> …”, while <tt class="literal">\\vartheta</tt>, <tt class="literal">\\varkappa</tt>, -<tt class="literal">\\varrho</tt>, and <tt class="literal">\\varpi</tt> math macros map to “GREEK … <strong>SYMBOL</strong>” -Unicode characters.</p> -<p>In Greek text, these variants are interchangeable. The LGR font encoding -does not contain slots for “symbol” glyph variants. In some Greek fonts, -GREEK SMALL LETTERS use glyph variants resembling the corresponding -GREEK SYMBOL Unicode character’s reference glyph.</p> -</dd> -</dl> -</li> -<li><p>Derive macro names from Unicode names?</p> -<p>The <a class="reference external" href="http://www.unicode.org/Public/UNIDATA/NamesList.txt">Unicode names list</a> provides standardized descriptive names for all -Unicode characters that use only capital letters of the Latin alphabet. -While not suited for direct use in a LICR macros, they can be either</p> -<ol class="loweralpha simple"> -<li><p>used as inspiration for new LICR macro names or</p></li> -<li><p>converted to LICR macro names via a defined set of transformation rules.</p></li> -</ol> -<dl class="docutils"> -<dt>Example:</dt> -<dd><p><tt class="literal">\textfinalsigma</tt> or just <tt class="literal">\finalsigma</tt> as a more descriptive name -for GREEK SMALL LETTER FINAL SIGMA derived via the rules:</p> -<ul class="simple"> -<li><p>drop “LETTER” if the name remains unique,</p></li> -<li><p>drop “GREEK” if the name remains unique,</p></li> -<li><p>use capitalized name for capital letters, lowercase for “SMALL” letters -and drop “SMALL”,</p></li> -<li><p>concatenate</p></li> -</ul> -</dd> -</dl> -</li> -<li><p>Omit the “text” prefix for macros that do not have a math counterpart?</p> -<dl class="docutils"> -<dt>Pro:</dt> -<dd><ul class="simple"> -<li><p>Simpler,</p></li> -<li><p>ease of use (less typing, better readability of source text),</p></li> -<li><p>many established text macro names without “text”,</p></li> -<li><p>there are examples of encoding-specific macros -without the <tt class="literal">text</tt>-prefix, especially for letters,</p> -<dl class="field-list simple"> -<dt>T1</dt> -<dd><p><tt class="literal">\AE \DH \DJ \L \NG \OE \O \SS \TH \ae \dh \dj \guillemotleft</tt> -<tt class="literal">\guillemotright \guilsinglleft \guilsinglright \i \j \l \ng</tt> -<tt class="literal">\oe \o \quotedblbase \quotesinglbase \ss \th</tt> (also in OT1)</p> -</dd> -<dt>T2*</dt> -<dd><p><tt class="literal">\CYR*</tt> and <tt class="literal">\cyr*</tt></p> -</dd> -<dt>HE8</dt> -<dd><p><tt class="literal">\heb*</tt> or no prefix</p> -</dd> -<dt>PU</dt> -<dd><p>short descriptive names in the arabic part (<tt class="literal">puarenc.def</tt>)</p> -</dd> -</dl> -</li> -<li><p><tt class="literal">text</tt> prefix does <strong>not</strong> mark a macro as encoding-specific or -“inserting a glyph”. There are e.g. font-changing macros (<tt class="literal">\textbf</tt>, -<tt class="literal">\textit</tt>) and encoding-changing macros (<tt class="literal">\textgreek</tt>, -<tt class="literal">\textcyr</tt>).</p></li> -</ul> -</dd> -<dt>Contra:</dt> -<dd><ul class="simple"> -<li><p>Less consistent.</p></li> -<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> -</div> -<div class="section" id="how-to-name-accent-macros"> -<h2><a class="toc-backref" href="#id5">How to name <em>accent macros</em>?</a></h2> -<ul> -<li><p>standard accent macros (<tt class="literal">\DeclareTextAccent</tt> definitions in -<tt class="literal"><span class="pre">latex/base/...</span></tt>) are one-symbol macros (<tt class="literal">\' \" ... \u \v ...</tt>) .</p></li> -<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 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">\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.</p></li> -<li><p>For the end-user “symbol macros” (<tt class="literal">\~ \' \` \" \< \></tt>) are provided.</p></li> -</ul> -</div> -<div class="section" id="references"> -<h2><a class="toc-backref" href="#id6">References</a></h2> -<p>An alternative, more complete set of short mnemonic character names is -the <a class="reference external" href="http://www.w3.org/TR/xml-entity-names/">XML Entity Definitions for Characters</a> W3C Recommendation from -01 April 2010.</p> -<p>For glyph names of the LGR encoding see e.g. <tt class="literal">CB.enc</tt> by Apostolos -Syropoulos and <tt class="literal"><span class="pre">xl-lgr.enc</span></tt> from the <a class="reference external" href="http://www.ctan.org/pkg/libertine-legacy">libertine</a> (legacy) package. -<tt class="literal">lgr.cmap</tt> provides a mapping to Unicode characters.</p> -<p>A full set of <tt class="literal">\text*</tt> symbol macros is defined in <tt class="literal">ucsencs.def</tt> -from the <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a> package.</p> -<p>Aliases from <tt class="literal">puenc.def</tt> ensure that the <a class="reference external" href="http://www.ctan.org/pkg/hyperref">hyperref</a> package can -convert Greek symbols to a PDF-string.</p> -</div> -</div> <div class="section" id="implementation"> -<h1><a class="toc-backref" href="#id7">Implementation</a></h1> +<h1><a class="toc-backref" href="#id4">Implementation</a></h1> <div class="section" id="read-this-file-only-once"> -<h2><a class="toc-backref" href="#id8">Read this file only once</a></h2> +<h2><a class="toc-backref" href="#id5">Read this file only once</a></h2> <div class="note"> <p class="admonition-title">Note</p> <p>The use of <tt class="literal">\@ifundefined</tt> has the side-effect that the tested macro becomes defined and set to <tt class="literal">\relax</tt> (polluting the namespace and -interfering with test via eTeX’s <tt class="literal">\ifdefined</tt>). However, in this case +interfering with tests via eTeX’s <tt class="literal">\ifdefined</tt>). However, in this case no harm is done as the macro is defined by the <a class="reference internal" href="#identification">identification</a> below anyway.</p> </div> @@ -384,9 +229,9 @@ anyway.</p> </pre> </div> <div class="section" id="identification"> -<h2><a class="toc-backref" href="#id9">Identification</a></h2> +<h2><a class="toc-backref" href="#id6">Identification</a></h2> <pre class="literal-block">\ProvidesFile{lgrenc.def} -[2013/05/24 v0.8.2 LGR Greek font encoding definitions] +[2013/06/11 v0.8.3 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 @@ -396,27 +241,20 @@ anyway.</p> <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> </pre> -<p>or using <a class="reference external" href="http://www.ctan.org/pkg/ltxcmds">ltxcmds</a>’ <tt class="literal">\@iffilelater</tt></p> +<p>or using <a class="reference external" href="http://www.ctan.org/pkg/ltxcmds">ltxcmds</a>’ <tt class="literal">\@iffilelater</tt>.</p> </div> <div class="section" id="base-setup"> -<h2><a class="toc-backref" href="#id10">Base setup</a></h2> -<p>Declare the font encoding and base substitutions:</p> +<h2><a class="toc-backref" href="#id7">Base setup</a></h2> +<p>Declare the LGR font encoding and base substitutions:</p> <pre class="literal-block">\DeclareFontEncoding{LGR}{}{} \DeclareFontSubstitution{LGR}{cmr}{m}{n} \DeclareErrorFont{LGR}{cmr}{m}{n}{10} </pre> -<p>The <tt class="literal">\ensuregreek</tt> command can be used to ensure that its argument is set -in a font encoding with support for Greek. If the font encoding is already -LGR, kerning between adjacent command calls (e.g. -<tt class="literal"><span class="pre">\ensuregreek{A}\ensuregreek{\Upsilon}</span></tt>) is preserved. This allows -wrapping of compound Unicode character definitions.</p> -<pre class="literal-block">\DeclareTextCommand{\ensuregreek}{LGR}[1]{#1} -</pre> </div> <div class="section" id="text-symbols"> -<h2><a class="toc-backref" href="#id11">Text symbols</a></h2> +<h2><a class="toc-backref" href="#id8">Text symbols</a></h2> <div class="section" id="greek-alphabet"> -<h3><a class="toc-backref" href="#id12">Greek Alphabet</a></h3> +<h3><a class="toc-backref" href="#id9">Greek Alphabet</a></h3> <p>Greek letters are accessible by the Latin transcription, but the mapping is specific to the LGR font encoding.</p> <p>The LICR macros provide a way to access the symbols independent of the @@ -481,9 +319,9 @@ encoding.</p> </pre> </div> <div class="section" id="additional-greek-symbols"> -<h3><a class="toc-backref" href="#id13">Additional Greek symbols</a></h3> +<h3><a class="toc-backref" href="#id10">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> +<h4><a class="toc-backref" href="#id11">Ancient Greek Numbers (Athenian Numerals)</a></h4> <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 @@ -493,7 +331,7 @@ encoding.</p> </pre> </div> <div class="section" id="archaic-letters"> -<h4><a class="toc-backref" href="#id15">Archaic letters</a></h4> +<h4><a class="toc-backref" href="#id12">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>:</p> <pre class="literal-block">\DeclareTextSymbol{\textstigma}{LGR}{6} % ϛ \DeclareTextSymbol{\textvarstigma}{LGR}{7} % stigma variant (CB.enc, teubner) @@ -508,44 +346,18 @@ encoding.</p> \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/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{\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> -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> +<h4><a class="toc-backref" href="#id13">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/unicode">ucs</a>:</p> +<pre class="literal-block">\DeclareTextSymbol{\textdexiakeraia}{LGR}{254} % ʹ (Dexia keraia) +\DeclareTextSymbol{\textaristerikeraia}{LGR}{255} % ͵ (Aristeri keraia) </pre> </div> </div> <div class="section" id="other"> -<h3><a class="toc-backref" href="#id17">Other</a></h3> +<h3><a class="toc-backref" href="#id14">Other</a></h3> <p>Characters that also exist in other font encodings:</p> <ul class="simple"> <li><p>define them for LGR if there is a matching glyph,</p></li> @@ -565,23 +377,23 @@ Names from <a class="reference external" href="http://www.ctan.org/pkg/hyperref" \DeclareTextSymbol{\guillemotright}{LGR}{125} % » </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} % ' -\ProvideTextCommand{\textasciigrave}{LGR}{\char96\textcompwordmark} % ` -\DeclareTextCommand{\textasciitilde}{LGR}{\char126\textcompwordmark} % ~ +<pre class="literal-block">\ProvideTextCommand{\textasciibreve}{LGR}{\char30\textcompwordmark} % ˘ +\ProvideTextCommand{\textasciimacron}{LGR}{\char31\textcompwordmark} % ¯ +\ProvideTextCommand{\textasciidieresis}{LGR}{"\textcompwordmark} % " +\ProvideTextCommand{\textasciiacute}{LGR}{'\textcompwordmark} % ' +\ProvideTextCommand{\textasciigrave}{LGR}{`\textcompwordmark} % ` +\DeclareTextCommand{\textasciitilde}{LGR}{\char126\textcompwordmark} % ~ \DeclareTextSymbol{\textohm}{LGR}{87} % Ω (Ohm sign -> Omega) \DeclareTextSymbol{\texteuro}{LGR}{24} % € \euro in greek.ldf \DeclareTextSymbol{\textpercent}{LGR}{37} % % -\DeclareTextSymbol{\textperthousand}{LGR}{25} % ‰ \permille in greek.ldf +\DeclareTextSymbol{\textperthousand}{LGR}{25} % ‰ \permill in greek.ldf </pre> <p>T3:</p> <pre class="literal-block">\DeclareTextSymbol{\textschwa}{LGR}{26} % ə </pre> </div> <div class="section" id="not-implemented"> -<h3><a class="toc-backref" href="#id18">Not implemented</a></h3> +<h3><a class="toc-backref" href="#id15">Not implemented</a></h3> <p>The characters at position 16 and 17 are used in the <tt class="literal">\nexus</tt> macro of the <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a> package to form an extensible, hat-like bracket. In <tt class="literal">CB.enc</tt>, they are mapped to</p> @@ -593,22 +405,13 @@ of the <a class="reference external" href="http://www.ctan.org/pkg/teubner">teub they rather represent the left and right part of U+23E0 TOP TORTOISE SHELL BRACKET.</p> <p>Babel’s <tt class="literal">lgrenc.def</tt> has some definitions to prevent surprises with -macros that expect a Latin script. These definitions are problematic -in a font-encoding definition file as they</p> -<ul class="simple"> -<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="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 were moved to <tt class="literal">greek.ldf</tt>.</p> +macros that expect a Latin script. These definitions are problematic in a +font-encoding definition file as they require <tt class="literal">\textlatin</tt> which is +defined in <tt class="literal">babel.def</tt>. They were moved to <tt class="literal">greek.ldf</tt>.</p> </div> </div> <div class="section" id="diacritics"> -<h2><a class="toc-backref" href="#id19">Diacritics</a></h2> +<h2><a class="toc-backref" href="#id16">Diacritics</a></h2> <p>This section defines <a class="reference internal" href="#named-macros">named macros</a> for Greek diacritics and standard <a class="reference internal" href="#symbol-macros">symbol macros</a> as alias for simple diacritics. Convenient input conventions for <a class="reference internal" href="#composite-diacritics">composite diacritics</a> are defined as <a class="reference internal" href="#composite-definitions">composite @@ -627,11 +430,11 @@ working also inside the tabbing environment.</p></li> conventions (cf. <a class="reference internal" href="#uppercase">UPPERCASE</a> below) and for composite diacritics.</p></li> </ul> <div class="section" id="named-macros"> -<h3><a class="toc-backref" href="#id20">Named macros</a></h3> +<h3><a class="toc-backref" href="#id17">Named macros</a></h3> <p>Definitions are based on the <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a> package by Claudio Beccari, the <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a> package, and the <a class="reference external" href="http://www.eutypon.gr/eutypon/pdf/e2008-20/e20-a03.pdf">babel patch</a> by Werner Lemberg. Names are derived from -the Unicode name with the prefix “acc” (cf. <a class="reference internal" href="#how-to-name-accent-macros">How to name accent macros?</a> -above) reducing the probability of incompatibilities compared to the +the Unicode name with the prefix “acc” (cf. <cite>How to name accent macros?</cite> +in the <a class="reference external" href="README.html">README</a>) reducing the probability of incompatibilities compared to the two-letter <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a> diacritic macros or the “text” prefix used by <a class="reference external" href="http://www.ctan.org/pkg/unicode">ucs</a>.</p> <p>Simple Greek diacritics:</p> <pre class="literal-block">\DeclareTextAccent{\accdialytika}{LGR}{34} % διαλυτικά (diaeresis/trema) @@ -671,120 +474,52 @@ of additional diacritic symbols:</p> </pre> </div> <div class="section" id="aliases"> -<h3><a class="toc-backref" href="#id21">Aliases</a></h3> -<p><span class="target" id="symbol-macros">Symbol macros</span>:</p> +<h3><a class="toc-backref" href="#id18">Aliases</a></h3> +<p>The standard <span class="target" id="symbol-macros">symbol macros</span> are exclusively used for Greek diacritics +in LGR:</p> <pre class="literal-block">\DeclareTextCommand{\"}{LGR}{\accdialytika} \DeclareTextCommand{\'}{LGR}{\acctonos} \DeclareTextCommand{\`}{LGR}{\accvaria} \DeclareTextCommand{\~}{LGR}{\accperispomeni} -\DeclareTextCommand{\<}{LGR}{\accdasia} -\DeclareTextCommand{\>}{LGR}{\accpsili} </pre> -<p>TODO: do we also want alternative symbols for the breathings (cf. X compose -table, LCI encoding)?</p> -<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> +<p>The <a class="reference external" href="http://en.wikipedia.org/wiki/Hypogegrammeni">sub-iota</a> is input after the base character. In LGR fonts, ligatures are +defined for pre-composed characters, the postfix ligature does not interfere +with kerning:</p> +<pre class="literal-block">\DeclareTextSymbol{\prosgegrammeni}{LGR}{8} % ι "capital" sub-iota +\DeclareTextSymbol{\ypogegrammeni}{LGR}{124} % ͺ "small" sub-iota </pre> -<p>Two Unicode names for one character:</p> -<pre class="literal-block">\DeclareTextCommand{\accoxia}{LGR}{\acctonos} -\DeclareTextCommand{\acckoronis}{LGR}{\accpsili} +<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{\textsubarch}{LGR}{1} % (tipa) +\DeclareTextAccent{\accbrevebelow}{LGR}{20} % BREVE BELOW +\DeclareTextAccent{\u}{LGR}{30} % BREVE +\DeclareTextAccent{\=}{LGR}{31} % MACRON </pre> </div> </div> +<div class="section" id="common-greek-font-encoding-definitions"> +<h2><a class="toc-backref" href="#id19">Common Greek font encoding definitions</a></h2> +<p>The file greek-fontenc.def contains font encoding definitions that are +shared by font encodings providing Greek characters:</p> +<pre class="literal-block">\input{greek-fontenc.def} +</pre> +</div> <div class="section" id="composite-definitions"> -<h2><a class="toc-backref" href="#id22">Composite definitions</a></h2> +<h2><a class="toc-backref" href="#id20">Composite definitions</a></h2> <div class="section" id="composite-diacritics"> -<h3><a class="toc-backref" href="#id23">Composite diacritics</a></h3> +<h3><a class="toc-backref" href="#id21">Composite diacritics</a></h3> <p>Composite accents can be input as sequence of simple diacritics (in arbitrary order) via named macro, symbol macro and “transcription characters”, e.g. <tt class="literal">\accdialytica\accvaria\textalpha</tt>, <tt class="literal"><span class="pre">\"\'\textalpha</span></tt>, <tt class="literal"><span class="pre">\"'\textalpha</span></tt>, or <tt class="literal"><span class="pre">\'"\textalpha</span></tt>.</p> -<p>Separate definitions for the supported variants of the second input token -are required as composition is based on the non-expanded input</p> -<p>The composition with simple “transcription characters” must also be defined -for the symbol macros, otherwise it fails with <tt class="literal">\Makeuppercase</tt>):</p> -<pre class="literal-block">\DeclareTextCompositeCommand{\accdialytika}{LGR}{\acctonos}{\accdialytikatonos} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{\'}{\accdialytikatonos} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{'}{\accdialytikatonos} -\DeclareTextCompositeCommand{\"}{LGR}{'}{\accdialytikatonos} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{\accvaria}{\accdialytikavaria} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{\`}{\accdialytikavaria} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{`}{\accdialytikavaria} -\DeclareTextCompositeCommand{\"}{LGR}{`}{\accdialytikavaria} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{\accperispomeni}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{\~}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\accdialytika}{LGR}{~}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\"}{LGR}{~}{\accdialytikaperispomeni} - -\DeclareTextCompositeCommand{\acctonos}{LGR}{\accdialytika}{\accdialytikatonos} -\DeclareTextCompositeCommand{\acctonos}{LGR}{\"}{\accdialytikatonos} -\DeclareTextCompositeCommand{\acctonos}{LGR}{"}{\accdialytikatonos} -\DeclareTextCompositeCommand{\'}{LGR}{"}{\accdialytikatonos} -\DeclareTextCompositeCommand{\acctonos}{LGR}{\accdasia}{\accdasiaoxia} -\DeclareTextCompositeCommand{\acctonos}{LGR}{\<}{\accdasiaoxia} -\DeclareTextCompositeCommand{\acctonos}{LGR}{<}{\accdasiaoxia} -\DeclareTextCompositeCommand{\'}{LGR}{<}{\accdasiaoxia} -\DeclareTextCompositeCommand{\acctonos}{LGR}{\accpsili}{\accpsilioxia} -\DeclareTextCompositeCommand{\acctonos}{LGR}{\>}{\accpsilioxia} -\DeclareTextCompositeCommand{\acctonos}{LGR}{>}{\accpsilioxia} -\DeclareTextCompositeCommand{\'}{LGR}{>}{\accpsilioxia} - -\DeclareTextCompositeCommand{\accvaria}{LGR}{\accdialytika}{\accdialytikavaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{\"}{\accdialytikavaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{"}{\accdialytikavaria} -\DeclareTextCompositeCommand{\`}{LGR}{"}{\accdialytikavaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{\accdasia}{\accdasiavaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{\<}{\accdasiavaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{<}{\accdasiavaria} -\DeclareTextCompositeCommand{\`}{LGR}{<}{\accdasiavaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{\accpsili}{\accpsilivaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{\>}{\accpsilivaria} -\DeclareTextCompositeCommand{\accvaria}{LGR}{>}{\accpsilivaria} -\DeclareTextCompositeCommand{\`}{LGR}{>}{\accpsilivaria} - -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{\accdialytika}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{\"}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{"}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\~}{LGR}{"}{\accdialytikaperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{\accdasia}{\accdasiaperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{\<}{\accdasiaperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{<}{\accdasiaperispomeni} -\DeclareTextCompositeCommand{\~}{LGR}{<}{\accdasiaperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{\accpsili}{\accpsiliperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{\>}{\accpsiliperispomeni} -\DeclareTextCompositeCommand{\accperispomeni}{LGR}{>}{\accpsiliperispomeni} -\DeclareTextCompositeCommand{\~}{LGR}{>}{\accpsiliperispomeni} - -\DeclareTextCompositeCommand{\accpsili}{LGR}{\acctonos}{\accpsilioxia} -\DeclareTextCompositeCommand{\accpsili}{LGR}{\'}{\accpsilioxia} -\DeclareTextCompositeCommand{\accpsili}{LGR}{'}{\accpsilioxia} -\DeclareTextCompositeCommand{\>}{LGR}{'}{\accpsilioxia} -\DeclareTextCompositeCommand{\accpsili}{LGR}{\accvaria}{\accpsilivaria} -\DeclareTextCompositeCommand{\accpsili}{LGR}{\`}{\accpsilivaria} -\DeclareTextCompositeCommand{\accpsili}{LGR}{`}{\accpsilivaria} -\DeclareTextCompositeCommand{\>}{LGR}{`}{\accpsilivaria} -\DeclareTextCompositeCommand{\accpsili}{LGR}{\accperispomeni}{\accpsiliperispomeni} -\DeclareTextCompositeCommand{\accpsili}{LGR}{\~}{\accpsiliperispomeni} -\DeclareTextCompositeCommand{\accpsili}{LGR}{~}{\accpsiliperispomeni} -\DeclareTextCompositeCommand{\>}{LGR}{~}{\accpsiliperispomeni} - -\DeclareTextCompositeCommand{\accdasia}{LGR}{\acctonos}{\accdasiaoxia} -\DeclareTextCompositeCommand{\accdasia}{LGR}{\'}{\accdasiaoxia} -\DeclareTextCompositeCommand{\accdasia}{LGR}{'}{\accdasiaoxia} -\DeclareTextCompositeCommand{\<}{LGR}{'}{\accdasiaoxia} -\DeclareTextCompositeCommand{\accdasia}{LGR}{\accvaria}{\accdasiavaria} -\DeclareTextCompositeCommand{\accdasia}{LGR}{\`}{\accdasiavaria} -\DeclareTextCompositeCommand{\accdasia}{LGR}{`}{\accdasiavaria} -\DeclareTextCompositeCommand{\<}{LGR}{`}{\accdasiavaria} -\DeclareTextCompositeCommand{\accdasia}{LGR}{\accperispomeni}{\accdasiaperispomeni} -\DeclareTextCompositeCommand{\accdasia}{LGR}{\~}{\accdasiaperispomeni} -\DeclareTextCompositeCommand{\<}{LGR}{~}{\accdasiaperispomeni} -</pre> +<p>The actual declarations are part of the <a class="reference internal" href="#common-greek-font-encoding-definitions">common Greek font encoding +definitions</a>.</p> </div> <div class="section" id="pre-composed-letters"> -<h3><a class="toc-backref" href="#id24">Pre-composed letters</a></h3> +<h3><a class="toc-backref" href="#id22">Pre-composed letters</a></h3> <div class="section" id="small-letters-with-diacritics"> -<h4><a class="toc-backref" href="#id25">Small letters with diacritics</a></h4> +<h4><a class="toc-backref" href="#id23">Small letters with diacritics</a></h4> <p>(from <a class="reference external" href="http://www.ctan.org/pkg/teubner">teubner</a> with changed names of the composite accents):</p> <pre class="literal-block">\DeclareTextComposite{\accvaria}{LGR}{a}{128} \DeclareTextComposite{\accdasia}{LGR}{a}{129} @@ -953,7 +688,7 @@ for the symbol macros, otherwise it fails with <tt class="literal">\Makeuppercas </pre> </div> <div class="section" id="capital-letters-with-diacritics"> -<h4><a class="toc-backref" href="#id26">Capital letters with diacritics</a></h4> +<h4><a class="toc-backref" href="#id24">Capital letters with diacritics</a></h4> <blockquote> <p>In Greek, diacritics are omitted in all-uppercase words, but kept as part of an uppercase initial (written before rather than above the letter).</p> @@ -1117,113 +852,12 @@ in cases where they are not needed when writing in lowercase)</p> </div> </div> <div class="section" id="uppercase"> -<h2><a class="toc-backref" href="#id27">UPPERCASE</a></h2> -<div class="section" id="uclclist-extension"> -<h3><a class="toc-backref" href="#id28">@uclclist extension</a></h3> -<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>.</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 - \textbeta \textBeta - \textgamma \textGamma - \textdelta \textDelta - \textepsilon\textEpsilon - \textzeta \textZeta - \texteta \textEta - \texttheta \textTheta - \textiota \textIota - \textkappa \textKappa - \textlambda \textLambda - \textmu \textMu - \textnu \textNu - \textxi \textXi - \textomicron\textOmicron - \textpi \textPi - \textrho \textRho - \textvarsigma \textSigma - \textsigma \textSigma - \textautosigma \textSigma - \texttau \textTau - \textupsilon\textUpsilon - \textphi \textPhi - \textchi \textChi - \textpsi \textPsi - \textomega \textOmega - % - \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{\LGR@accdropped}{LGR}[1]{#1} -</pre> -<p>(The argument processing ensures that kerning is preserved)</p> -</div> -<div class="section" id="keep-dialytika"> -<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{\LGR@accDialytika}{LGR}{\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{\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> -<p>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 (άυλος → ΑΫΛΟΣ, μάινα → ΜΑΪΝΑ, κέικ → ΚΕΪΚ, -ἀυπνία → ΑΫΠΝΙΑ):</p> -<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} +<h2><a class="toc-backref" href="#id25">UPPERCASE</a></h2> +<p>The <a class="reference internal" href="#common-greek-font-encoding-definitions">common Greek font encoding definitions</a> in <tt class="literal"><span class="pre">greek-fontenc.def</span></tt> extend +the <cite>uclclist</cite> with Greek LICR macros. Here, we add LGR specific “hiatus” +handling:</p> +<pre class="literal-block">\DeclareTextCompositeCommand{\LGR@hiatus}{LGR}{A}{\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} @@ -1250,22 +884,6 @@ second vowel if they are dropped (άυλος → ΑΫΛΟΣ, μάινα → ΜΑ }% } </pre> -<p>As <tt class="literal">\@ifnextchar</tt> gobbles spaces the lookahead macro definition from -<tt class="literal">amsgen.sty</tt> is used:</p> -<blockquote> -<p>This macro is a new version of LaTeX’s <tt class="literal">\@ifnextchar</tt>, macro -that does not skip over spaces.</p> -</blockquote> -<pre class="literal-block">\ProvideTextCommand{\LGR@ifnextchar}{LGR}[3]{% - \let\reserved@d= #1% - \def\reserved@a{#2}\def\reserved@b{#3}% - \futurelet\@let@token\LGR@ifnch -} -\ProvideTextCommand{\LGR@ifnch}{LGR}{% - \ifx\@let@token\reserved@d \let\reserved@b\reserved@a \fi - \reserved@b -} -</pre> <p>Unfortunately, the lookahead breaks kerning.</p> <p>Alternatives tried:</p> <ul> @@ -1293,7 +911,5 @@ not require kerning anyway.</p> </div> </div> </div> -</div> -</div> </body> </html> |