summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/lgrx/README
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-07-11 23:31:14 +0000
committerKarl Berry <karl@freefriends.org>2012-07-11 23:31:14 +0000
commitd41b09fae4e020f0ff6108838e6175646f3d2b9e (patch)
treef92fa339314d12452a3eb93257fa8ac492279da6 /Master/texmf-dist/doc/latex/lgrx/README
parent562ae685591240b0ea768aa3de044339bcaee64e (diff)
lgrx (6jul12)
git-svn-id: svn://tug.org/texlive/trunk@27003 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/lgrx/README')
-rw-r--r--Master/texmf-dist/doc/latex/lgrx/README321
1 files changed, 192 insertions, 129 deletions
diff --git a/Master/texmf-dist/doc/latex/lgrx/README b/Master/texmf-dist/doc/latex/lgrx/README
index cb4a68cee1e..302cf95bc23 100644
--- a/Master/texmf-dist/doc/latex/lgrx/README
+++ b/Master/texmf-dist/doc/latex/lgrx/README
@@ -1,71 +1,138 @@
.. -*- rst-mode -*-
-.. sectnum::
- :depth: 1
-
-Greek text with the `LGR` font encoding
+Greek text with the LGR font encoding
***************************************
:Copyright: © 2010 Günter Milde
:Licence: This work may be distributed and/or modified under the
conditions of the `LaTeX Project Public License`_, either
version 1.3 of this license or any later version.
-:abstract: The LGRx bundle provides packages and definitions for typesetting
- Greek text with fonts in the LGR encoding, the de-facto standard
- set by babel. It includes a comprehensive font definition file,
- support for Unicode input and macros for Greek letters in
- non-Greek text.
+
+:Abstract: The LGR font encoding is the de-facto standard for Greek
+ typesetting with (8-bit) LaTeX. However, the encoding definition
+ file that ships with babel_ misses many of the definitions common
+ since the advent of the NFSS [fntguide]_.
+
+ The `lgrx` bundle provides packages and definitions for
+ typesetting Greek text with fonts in the LGR encoding. It works
+ for both, monotonic and polytonic Greek, independent of the
+ `babel` package.
+
+ The bundle is available from CTAN__ and included in TeXLive
+ 2012. Development takes place at the Sourceforge__.
+
+__ http://www.ctan.org/tex-archive/macros/latex/contrib/lgrx
+__ http://milde.users.sourceforge.net/LGR/
+
+.. Note::
+
+ The TeXLive 2012 pre-release contains the Unicode definition file
+ ``lgrenc.dfu`` in the documentation instead of the TEXPATH. To enable
+ `Greek Unicode support`_, update via `tlmgr` or place a copy in the
+ TEXPATH «by hand».
+ See http://tug.org/pipermail/tex-live/2012-June/031757.html
.. contents::
-State of the Art
-================
-Up to now, there is no agreement on a Greek standard font encoding
-(reserved name `T7`) because the restrictions for general text encodings
-are too severe for typesetting polytonic Greek.
+Manifest
+========
+
+The lgrx bundle consists of the following LaTeX files:
+
+LaTeX files:
+ :lgrxenc.def: comprehensive LGR encoding definition file
+ :lgrenc.dfu: support for Unicode input
+ :textalpha.sty: ``\text...`` macros for Greek letters in non-Greek text
+ :alphabeta.sty: Greek letters with ``\alpha``, ``\beta``, ... in text
+ and math
+
+ Literal sources:
+ `<lgrxenc.def.html>`_, `<lgrenc.dfu.html>`_,
+ `<textalpha.sty.html>`_, `<alphabeta.sty.html>`_
+
+Documentation and test documents:
+ .. class:: run-in
+
+ :`<lgrx.pdf>`_: user documentation, source `<lgrx.tex>`__
+ :`<greekhyperref.pdf>`_: `Greek script in PDF metadata`,
+ source `<greekhyperref.tex>`__
+ :`<greek-unicode.pdf>`_: `Greek Unicode with lgrenc.dfu`,
+ source `<greek-unicode.tex>`__
+ :`<lgrxenc-test.pdf>`_: source `<lgrxenc-test.tex>`__
+ :`<textalpha-test.pdf>`_: source `<textalpha-test.tex>`__
+ :`<alphabeta-test.pdf>`_: source `<alphabeta-test.tex>`__
+
+
+
+Motivation
+==========
-The `LGR` font encoding is the de-facto standard for typesetting Greek with
+Greek font encodings
+--------------------
+
+Unicode
+~~~~~~~
+
+The Unicode standard allows fonts that comprise glyphs from (almost) all
+known scripts. With the TeX engines XeTeX or LuaTeX, typesetting Greek with
+LaTeX is as easy as finding a font that contains Greek letters and setting
+it up with fontspec_. Beware, that you must not use the ``greek`` or
+``polutonikogreek`` options of the babel_ package. The `babel` replacement
+polyglossia_ provides Greek language support for XeLaTeX/LuaLaTeX.
+If you go this way, you don't need the lgrx bundle.
+
+\*T7
+~~~~
+
+The [encguide]_ reserves the name T7 for a Greek `standard font encoding`.
+However, up to now, there is no agreement on an implementation because the
+restrictions for general text encodings are too severe for typesetting
+polytonic Greek.
+
+LGR
+~~~
+
+The LGR font encoding is the de-facto standard for typesetting Greek with
(8-bit) LaTeX. Fonts in this encoding include the `CB fonts`_ (matching CM),
grtimes_ (Greek Times), Kerkis_ (matching URW Bookman), and the `GFS font
collection`_. Setup of these fonts as Greek variant to matching Latin fonts
is facilitated by the substitutefont_ package.
-The `LGR` font encoding generates Greek characters via an ASCII
+The LGR font encoding generates Greek characters via an ASCII
transliteration. This enables simple input with a Latin keyboard.
Characters with diacritics are selected by ligature definitions in the
-font (see greek-usage.pdf__, teubner-doc.pdf__, or
-`The CB Greek fonts`__).
+font (see [greek-usage]_, [teubner-doc]_, [cbfonts]_).
-__ http://www.tug.org/texlive/Contents/live/texmf-dist/doc/generic/babel/greek-usage.pdf
-__ http://www.ctan.org/tex-archive/macros/latex/contrib/teubner/teubner-doc.pdf
-__ http://www.eutypon.gr/eutypon/pdf/e2008-21/e21-a01.pdf
+\*OT7
+~~~~~
-.. compound::
+The name LGR does not reflect status of this font encoding due to historical
+reasons. [encguide]_ classifies encodings starting with `L` as "local".
+Indeed, LGR started as a local encoding for the `CB fonts`_ by Claudio
+Beccari. Later, Apostolos Syropoulos advanced it to the default font
+encoding for the `babel` package's ``greek`` option. A better name would be
+OT7:
- The name `LGR` does not reflect status of this font encoding due to
- historical reasons. The encguide_ classifies encodings starting with `L`
- as "local". Indeed, `LGR` started as a local encoding for the `CB Greek
- fonts` by Claudio Beccari. Later, Apostolos Syropoulos advanced it to the
- default font encoding for the `Babel`_ package's ``greek`` option. The
- correct name would be ``OT7``:
+* It is an 'old' encoding.
+* It implements a Latin transcription for a non-Latin script like the
+ OT2 encoding.
+* It is not confined to 128 bit but OT4 shows that this is no
+ absolute requirement for an `OT` encoding.
- * It is an 'old' encoding.
- * It implements a Latin transscription for a non-Latin script like the
- ``OT2`` encoding.
- * It is not confined to 128 bit but ``OT4`` shows that this is no
- absolute requirement for an `OT` encoding.
+However, due to the fact that the LGR font encoding has been used under its
+current name for a long time, the name will not change for compatibility
+reasons.
- However, due to the fact that this font encoding has been used under its
- current name for a long time, the name will not change for compatibility
- reasons.
+Problems with the default setup
+-------------------------------
-Problems
-========
+The `lgrx` budle adresses a set of problems with the LGR font encoding as
+set up by `babel`:
-1. Ligatures with prefix notation prevent kerning (see the examples
- linked below or the `LGR` documentation linked above).
+1. Ligatures with prefix notation prevent kerning (see the example document
+ lgrxenc-test.pdf_ and [teubner-doc]_).
2. Sub-optimal results with the standard accent macros:
@@ -77,7 +144,7 @@ Problems
default. Therefore the transliteration for the *perispomeni* accent is
not available without re-definition of this character. [#tildehack]_
-4. The ``polutonikogreek`` `Babel` option redefines both, ``~`` and ``\~``
+4. The ``polutonikogreek`` `babel` option redefines both, ``~`` and ``\~``
to produce accents via input ligatures (restricted to the language
setting instead of the font encoding). This prevents the placing of a
tilde-accent on non-supported characters like in *niño* if the language
@@ -85,14 +152,11 @@ Problems
5. There is no Unicode support with `inputenc`_'s ``utf8`` option.
- The `ucs` package contributed by Dominique Unruh provides Unicode
- support with the ``utf8x`` option. A `babel patch`_ by Werner Lemberg
- for Greek Unicode support never got applied.)
-
-6. The LGR transliteration does not work for PDF bookmarks.
+ The `ucs` package contributed by Dominique Unruh provides Unicode support
+ with the ``utf8x`` option. A babel patch by Werner Lemberg for Greek
+ Unicode support [lemberg2008]_ never got applied.)
-
-.. _babel patch: http://www.eutypon.gr/eutypon/pdf/e2008-20/e20-a03.pdf
+6. The LGR transliteration does not work for PDF metadata.
.. [#tildehack] Problem 3 can be solved by the simple one-liner ::
@@ -100,121 +164,120 @@ Problems
\DeclareTextSymbol{\~}{LGR}{126}
which results in ``\~`` inserting a plain tilde character if the
- font encoding is `LGR`.
+ font encoding is LGR.
Drawback: you cannot place a ~-accent on Greek characters except the
ones supported by an input ligature.
.. [#poluhack] Fortunately, LaTeX saves copies of the accent macros: ``\~``
is an alias of ``\a~`` (which is an alias of ``\@tabacckludge~``), so it
- can be restored after loading `Babel` with::
+ can be restored after loading `babel` with::
\addto\extraspolutonikogreek{\renewcommand*{\~}{\a~}}
\addto\extrasgreek{\renewcommand*{\~}{\a~}}
With this addition, both the comprehensive font encoding definitions and
the workaround [#tildehack]_ also work with the ``polutonikogreek``
- `Babel` option.
-
-
-lgrxenc.def: Comprehensive font encoding definitions
-====================================================
-
-``lgrxenc.def`` is an alternative to the rudimentary `LGR` font
-definition file ``lgrenc.def`` which comes with Babel_'s Greek
-support. It defines accent macros for the `LGR` font encoding that
-select pre-composed glyphs if possible and places the diacritics
-according to Greek typesetting rules else. Combined accents can be
-specified as backslash + transliteration (``\~>a``) or iteratively
-(``\~\>{a}``).
-
-:Source: `<lgrxenc.def>`_, `<lgrxenc.def.html>`__
-:Doc: `<lgrxenc.tex>`__, `<lgrxenc.pdf>`__
-:Tests: `<lgrxenc-test.tex>`__, `<lgrxenc-test.pdf>`__
-
-Usage
------
-
-To prevent confusion with Babel_'s ``lgrenc.def``, this file is named
-``lgrxenc.def``. Load it by calling fontenc_ with the ``LGRx`` option.
+ `babel` option.
-Example:
- Select font encodings `T1` (as default) and `LGR` (with the comprehensive
- font encoding definitions)
- ``\usepackage[LGRx,T1]{fontenc}``
+Components of the `lgrx` bundle
+===============================
-.. Attention:: The name of the font encoding defined by the option ``LGRx``
- is **not** `LGRx` but `LGR`. Therefore, ``LGRx`` may not be the
- last option (as fontenc uses the last option to select the default font
- encoding). To set `LGR` as as default font encoding specify both,
- `LGRx` and `LGR`, e.g.
+The `lgrx` bundle comprises tools that help typesetting Greek script
+with (8-bit) LaTeX in Greek as well as multi-lingual documents.
- ``\usepackage[LGRx,T1,LGR]{fontenc}``
+Comprehensive font encoding definition file
+-------------------------------------------
+``lgrxenc.def`` is an alternative to the rudimentary LGR encoding
+definition file [#fdf]_ ``lgrenc.def`` which comes with babel_'s Greek
+support. It defines macros for Greek characters the LGR font encoding that
+select pre-composed glyphs if possible and places the diacritics according
+to Greek typesetting rules else. Combined accents can be specified as
+backslash + transliteration (``\~>a``) or iteratively (``\~\>{a}``).
-lgrenc.dfu: Greek Unicode support
-=================================
+For usage and documentation see the literal source lgrxenc.def.html_, the
+user manual lgrx.pdf_, and the test document lgrxenc-test.pdf_.
-Standards-compatible UTF-8 support for Greek based on the comprehensive
-font encoding definitions.
+.. [#fdf] See [fntguide_, section 5] for a definition of `encoding definition
+ files`.
-Cooperates with hyperref_ to enable Greek characters in section headers and
-PDF bookmarks without the need for ``\texorpdfstring``.
+Greek Unicode support
+---------------------
-:Source: `<lgrenc.dfu>`__, `<lgrenc.dfu.html>`__
-:Example: `<greek-unicode.tex>`__, `<greek-unicode.pdf>`__
+``lgrenc.dfu`` provides standards-compatible UTF-8 support for Greek based
+on the comprehensive font encoding definitions. It is compatible with
+hyperref_ enabling Greek characters in PDF metadata without the need for
+``\texorpdfstring``.
-Usage
------
+See the literal source lgrenc.dfu.html_ and the test document
+greek-unicode.pdf_.
-Requires comprehensive font encoding definitions from ``lgrxenc.def``:
+Macros for Greek in text
+------------------------
- ``\usepackage[LGRx,T1]{fontenc}`` % define LGR and T1 encodings
- ``\usepackage[utf8]{inputenc}`` % standard UTF-8 input encoding
+``textalpha.sty`` defines ``\textalpha``, ``\textbeta`` ... macros for Greek
+letters in text that work in any font encoding and alias macros for
+compatibility with existing packages. With this package, Unicode input of
+Greek letters works in any font encoding, too.
-Unless combined with the textalpha_ package, text containing Greek Unicode
-characters must be marked as requiring the LGR font encoding (either
-directly or by setting the language to ``greek`` or ``polutonikogreek``).
-This is a feature of inputenc_'s standard utf8 support, similar to the
-behaviour for, e.g., Cyrillic characters.
+.. _limitations:
+However, in any font encoding except LGR:
-.. _textalpha:
+* there is no kerning between Greek characters,
+* composition of diacritics (like ``\Dasia\Tonos``) fails,
+* accent macros do not select precomposed characters
+ (pre-composed Unicode literals work fine).
-textalpha.sty: Macros for Greek in text
-=======================================
+See the literal source textalpha.sty.html_ and textalpha-test.pdf_ for
+details on usage, limitations, and recommended workarounds.
-Macros for Greek letters in text that work in any font encoding (see the
-example below for limitations) and alias macros for compatibility with
-existing packages.
+Generic macros for Greek letters
+--------------------------------
-Cooperates with hyperref_ and bookmark_ to enable Greek characters in
-section headers and PDF bookmarks without the need for ``\texorpdfstring``.
+``alphabeta.sty`` allows you to use ``\alpha``, ``\beta``, ... in both, text
+and math. For this, the math macros are redefined with the help of
+``\TextOrMath`` from the standard package fixltx2e_.
-.. note::
+See the literal source alphabeta.sty.html_ and the test document
+alphabeta-test.pdf_.
- The package was renamed from `textgreek` to `textalpha` to prevent
- confusion with the textgreek_ package by Leonard Michlmayr.
-:Source: `<textalpha.sty>`__, `<textalpha.sty.html>`__
-:Example: `<textalpha-test.tex>`__, `<textalpha-test.pdf>`__
-:Bookmarks: `<greekhyperref.tex>`__, `<greekhyperref.pdf>`__
+References
+==========
+.. [fntguide] LaTeX3 Project Team, `LaTeX 2ε font selection`, 2005.
+ http://mirror.ctan.org/macros/latex/doc/fntguide.pdf
+.. [encguide] Frank Mittelbach, Robin Fairbairns, Werner Lemberg,
+ LaTeX3 Project Team, `LaTeX font encodings`, 2006.
+ http://mirror.ctan.org/macros/latex/doc/encguide.pdf
+.. [greek-usage] Apostolos Syropoulos, `Writing Greek with the greek option
+ of the babel package`, 1997.
+ http://www.tug.org/texlive/Contents/live/texmf-dist/doc/generic/babel/greek-usage.pdf
+.. [cbfonts] Claudio Beccari, `The CB Greek fonts`, Εὔτυπον, τεῦχος № 21, 2008.
+ http://www.eutypon.gr/eutypon/pdf/e2008-21/e21-a01.pdf
+.. [teubner-doc] Claudio Beccari, ``teubner.sty``
+ `An extension to the greek option of the babel package`, 2011.
+ http://mirror.ctan.org/macros/latex/contrib/teubner/teubner-doc.pdf
+.. [lemberg2008] Werner Lemberg,
+ `Unicode support for the Greek LGR encoding`, Εὔτυπον, τεῦχος № 20, 2008.
+ http://www.eutypon.gr/eutypon/pdf/e2008-20/e20-a03.pdf
-.. References
- ==========
.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt
-.. _CB Fonts: http://www.ctan.org/pkg/cbgreek-complete
-.. _grtimes: http://www.ctan.org/pkg/grtimes
-.. _GFS font collection: http://www.ctan.org/pkg/gfs
-.. _Kerkis: http://www.ctan.org/pkg/kerkis
-.. _substitutefont: http://www.ctan.org/pkg/substitutefont
-.. _encguide: http://tug.ctan.org/tex-archive/macros/latex/doc/encguide.pdf
-.. _Babel: http://www.ctan.org/pkg/babel
-.. _fontenc: http://www.ctan.org/pkg/fontenc
-.. _inputenc: http://www.ctan.org/pkg/inputenc
-.. _textgreek: http://www.ctan.org/pkg/textgreek
-.. _hyperref: http://www.ctan.org/pkg/hyperref
-.. _bookmark: http://www.ctan.org/pkg/bookmark
+.. _CB Fonts: http://mirror.ctan.org/help/Catalogue/entries/cbgreek-complete.html
+.. _grtimes: http://mirror.ctan.org/help/Catalogue/entries/grtimes.html
+.. _GFS font collection: http://mirror.ctan.org/help/Catalogue/entries/gfs.html
+.. _Kerkis: http://mirror.ctan.org/help/Catalogue/entries/kerkis.html
+.. _substitutefont: http://mirror.ctan.org/help/Catalogue/entries/substitutefont.html
+.. _babel: http://mirror.ctan.org/help/Catalogue/entries/babel.html
+.. _fontenc: http://mirror.ctan.org/help/Catalogue/entries/fontenc.html
+.. _inputenc: http://mirror.ctan.org/help/Catalogue/entries/inputenc.html
+.. _fontspec: http://mirror.ctan.org/help/Catalogue/entries/fontspec.html
+.. _polyglossia: http://mirror.ctan.org/help/Catalogue/entries/polyglossia.html
+.. _textgreek: http://mirror.ctan.org/help/Catalogue/entries/textgreek.html
+.. _fixltx2e: http://mirror.ctan.org/help/Catalogue/entries/fixltx2e.html
+.. _hyperref: http://mirror.ctan.org/help/Catalogue/entries/hyperref.html
+.. _bookmark: http://mirror.ctan.org/help/Catalogue/entries/bookmark.html