# alphabeta: Greek symbols in text and math

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.

Identification

      \NeedsTeXFormat{LaTeX2e}
      \ProvidesPackage{alphabeta}
      [2013/05/03 v0.2 macros for Greek letters in text and math]

  This package is part of the lgrx bundle.

Abstract

Use `\alpha, \beta, ...` for Greek letters in text and math.

Changelog:

  2012-06-26 | 0.1 | initial version
  2013-05-03 | 0.2 | new accent macro names with lgrxenc.def 0.7

# Motivation

By default, the `\alpha, \beta, ...` macros for Greek letters are only valid in mathematical mode.

The textalpha package provides a set of macros that can be used to access Greek symbols from a font in LGR encoding (e.g. the CB fonts) without the need for an explicite font-encoding switch under the names `\textalpha, \textbeta`, …, `\textOmega`.

With this package, the math macros are redefined to work in both, text and math mode, so that Greek letters can be specified with the established command names in text, too.

Attention

  While the macros work reasonably well for single letters, the automatic font-encoding switches behind the doors interferes with the kerning between the letters and replacement of accent+character with a pre-composed character.

  Therefore, Greek text should be written with the help of babel, setting the language to either `greek` or `polutonikogreek` or wrapped in the provided `\ensuregreek` macro.

# Implementation

This package extends the textalpha package:

    \RequirePackage{textalpha}

It uses the `\TextOrMath` test from the fixltx2e standard LaTeX package:

    \RequirePackage{fixltx2e}

## Save math macros

Provide an alias for the standard math commands:

    \let\mathGamma\Gamma
    \let\mathDelta\Delta
    \let\mathTheta\Theta
    \let\mathLambda\Lambda
    \let\mathXi\Xi
    \let\mathPi\Pi
    \let\mathSigma\Sigma
    \let\mathUpsilon\Upsilon
    \let\mathPhi\Phi
    \let\mathPsi\Psi
    \let\mathOmega\Omega
    %
    \let\mathalpha\alpha
    \let\mathbeta\beta
    \let\mathgamma\gamma
    \let\mathdelta\delta
    \let\mathepsilon\epsilon
    \let\mathzeta\zeta
    \let\matheta\eta
    \let\maththeta\theta
    \let\mathiota\iota
    \let\mathkappa\kappa
    \let\mathlambda\lambda
    \let\mathmu\mu
    \let\mathnu\nu
    \let\mathxi\xi
    \let\mathpi\pi
    \let\mathrho\rho
    \let\mathsigma\sigma
    \let\mathvarsigma\varsigma
    \let\mathtau\tau
    \let\mathupsilon\upsilon
    \let\mathphi\phi
    \let\mathchi\chi
    \let\mathpsi\psi
    \let\mathomega\omega

## Commands to access Greek letters by name

For letters defined in math mode, the commands work in both, text and math.

Some Greek letters look identic to Latin letters and can therefore not be used as variable symbols in math formulas. These letters are not defined in TeX’s math mode, we define just an alias to the corrsponding `\text...` command.

    \newcommand{\Alpha}{\textAlpha}
    \newcommand{\Beta}{\textBeta}
    \renewcommand{\Gamma}{\TextOrMath{\textGamma}{\mathGamma}}
    \renewcommand{\Delta}{\TextOrMath{\textDelta}{\mathDelta}}
    \newcommand{\Epsilon}{\textEpsilon}
    \newcommand{\Zeta}{\textZeta}
    \newcommand{\Eta}{\textEta}
    \renewcommand{\Theta}{\TextOrMath{\textTheta}{\mathTheta}}
    \newcommand{\Iota}{\textIota}
    \newcommand{\Kappa}{\textKappa}
    \renewcommand{\Lambda}{\TextOrMath{\textLambda}{\mathLambda}}
    \newcommand{\Mu}{\textMu}
    \newcommand{\Nu}{\textNu}
    \renewcommand{\Xi}{\TextOrMath{\textXi}{\mathXi}}
    \newcommand{\Omicron}{\textOmicron}
    \renewcommand{\Pi}{\TextOrMath{\textPi}{\mathPi}}
    \newcommand{\Rho}{\textRho}
    \renewcommand{\Sigma}{\TextOrMath{\textSigma}{\mathSigma}}
    \newcommand{\Tau}{\textTau}
    \renewcommand{\Upsilon}{\TextOrMath{\textUpsilon}{\mathUpsilon}}
    \renewcommand{\Phi}{\TextOrMath{\textPhi}{\mathPhi}}
    \newcommand{\Chi}{\textChi}
    \renewcommand{\Psi}{\TextOrMath{\textPsi}{\mathPsi}}
    \renewcommand{\Omega}{\TextOrMath{\textOmega}{\mathOmega}}
    %
    \renewcommand{\alpha}{\TextOrMath{\textalpha}{\mathalpha}}
    \renewcommand{\beta}{\TextOrMath{\textbeta}{\mathbeta}}
    \renewcommand{\gamma}{\TextOrMath{\textgamma}{\mathgamma}}
    \renewcommand{\delta}{\TextOrMath{\textdelta}{\mathdelta}}
    \renewcommand{\epsilon}{\TextOrMath{\textepsilon}{\mathepsilon}}
    \renewcommand{\zeta}{\TextOrMath{\textzeta}{\mathzeta}}
    \renewcommand{\eta}{\TextOrMath{\texteta}{\matheta}}
    \renewcommand{\theta}{\TextOrMath{\texttheta}{\maththeta}}
    \renewcommand{\iota}{\TextOrMath{\textiota}{\mathiota}}
    \renewcommand{\kappa}{\TextOrMath{\textkappa}{\mathkappa}}
    \renewcommand{\lambda}{\TextOrMath{\textlambda}{\mathlambda}}
    \renewcommand{\mu}{\TextOrMath{\textmu}{\mathmu}}
    \renewcommand{\nu}{\TextOrMath{\textnu}{\mathnu}}
    \renewcommand{\xi}{\TextOrMath{\textxi}{\mathxi}}
    \newcommand{\omicron}{\textomicron}
    \renewcommand{\pi}{\TextOrMath{\textpi}{\mathpi}}
    \renewcommand{\rho}{\TextOrMath{\textrho}{\mathrho}}
    \renewcommand{\sigma}{\TextOrMath{\textsigma}{\mathsigma}}
    \renewcommand{\varsigma}{\TextOrMath{\textvarsigma}{\mathvarsigma}}
    \renewcommand{\tau}{\TextOrMath{\texttau}{\mathtau}}
    \renewcommand{\upsilon}{\TextOrMath{\textupsilon}{\mathupsilon}}
    \renewcommand{\phi}{\TextOrMath{\textphi}{\mathphi}}
    \renewcommand{\chi}{\TextOrMath{\textchi}{\mathchi}}
    \renewcommand{\psi}{\TextOrMath{\textpsi}{\mathpsi}}
    \renewcommand{\omega}{\TextOrMath{\textomega}{\mathomega}}

## TextCompositeCommands for the generic macros

The NFSS TextComposite mechanism looks for the next token without expanding it. In order to let compositions like `\TextGreek{\'\Alpha}` or `\TextGreek{\>"\alpha}` work as expected we define TextComposites with the letter name commands. (Composition only works if the active font encoding is LGR).

    \DeclareTextComposite{\accvaria}{LGR}{\alpha}{128}
    \DeclareTextComposite{\accdasia}{LGR}{\alpha}{129}
    \DeclareTextComposite{\accpsili}{LGR}{\alpha}{130}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\alpha}{131}
    \DeclareTextComposite{\acctonos}{LGR}{\alpha}{136}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\alpha}{137}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\alpha}{138}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\alpha}{139}
    \DeclareTextComposite{\accperispomeni}{LGR}{\alpha}{144}
    \DeclareTextComposite{\accdasiaperispomeni}{LGR}{\alpha}{145}
    \DeclareTextComposite{\accpsiliperispomeni}{LGR}{\alpha}{146}
    \DeclareTextComposite{\accvaria}{LGR}{\eta}{152}
    \DeclareTextComposite{\accdasia}{LGR}{\eta}{153}
    \DeclareTextComposite{\accpsili}{LGR}{\eta}{154}
    \DeclareTextComposite{\acctonos}{LGR}{\eta}{160}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\eta}{161}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\eta}{162}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\eta}{163}
    \DeclareTextComposite{\accperispomeni}{LGR}{\eta}{168}
    \DeclareTextComposite{\accdasiaperispomeni}{LGR}{\eta}{169}
    \DeclareTextComposite{\accpsiliperispomeni}{LGR}{\eta}{170}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\eta}{171}
    \DeclareTextComposite{\accvaria}{LGR}{\omega}{176}
    \DeclareTextComposite{\accdasia}{LGR}{\omega}{177}
    \DeclareTextComposite{\accpsili}{LGR}{\omega}{178}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\omega}{179}
    \DeclareTextComposite{\acctonos}{LGR}{\omega}{184}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\omega}{185}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\omega}{186}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\omega}{187}
    \DeclareTextComposite{\accperispomeni}{LGR}{\omega}{192}
    \DeclareTextComposite{\accdasiaperispomeni}{LGR}{\omega}{193}
    \DeclareTextComposite{\accpsiliperispomeni}{LGR}{\omega}{194}
    \DeclareTextComposite{\accvaria}{LGR}{\iota}{200}
    \DeclareTextComposite{\accdasia}{LGR}{\iota}{201}
    \DeclareTextComposite{\accpsili}{LGR}{\iota}{202}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\iota}{203}
    \DeclareTextComposite{\acctonos}{LGR}{\iota}{208}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\iota}{209}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\iota}{210}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\iota}{211}
    \DeclareTextComposite{\accperispomeni}{LGR}{\iota}{216}
    \DeclareTextComposite{\accdasiaperispomeni}{LGR}{\iota}{217}
    \DeclareTextComposite{\accpsiliperispomeni}{LGR}{\iota}{218}
    \DeclareTextComposite{\accdialytika}{LGR}{\iota}{240}
    \DeclareTextComposite{\accdialytikavaria}{LGR}{\iota}{241}
    \DeclareTextComposite{\accdialytikatonos}{LGR}{\iota}{242}
    \DeclareTextComposite{\accdialytikaperispomeni}{LGR}{\iota}{243}
    \DeclareTextComposite{\accvaria}{LGR}{\upsilon}{204}
    \DeclareTextComposite{\accdasia}{LGR}{\upsilon}{205}
    \DeclareTextComposite{\accpsili}{LGR}{\upsilon}{206}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\upsilon}{207}
    \DeclareTextComposite{\acctonos}{LGR}{\upsilon}{212}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\upsilon}{213}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\upsilon}{214}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\upsilon}{215}
    \DeclareTextComposite{\accperispomeni}{LGR}{\upsilon}{220}
    \DeclareTextComposite{\accdasiaperispomeni}{LGR}{\upsilon}{221}
    \DeclareTextComposite{\accpsiliperispomeni}{LGR}{\upsilon}{222}
    \DeclareTextComposite{\accdialytika}{LGR}{\upsilon}{244}
    \DeclareTextComposite{\accdialytikavaria}{LGR}{\upsilon}{245}
    \DeclareTextComposite{\accdialytikatonos}{LGR}{\upsilon}{246}
    \DeclareTextComposite{\accdialytikaperispomeni}{LGR}{\upsilon}{247}
    \DeclareTextComposite{\accvaria}{LGR}{\epsilon}{224}
    \DeclareTextComposite{\accdasia}{LGR}{\epsilon}{225}
    \DeclareTextComposite{\accpsili}{LGR}{\epsilon}{226}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\epsilon}{227}
    \DeclareTextComposite{\acctonos}{LGR}{\epsilon}{232}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\epsilon}{233}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\epsilon}{234}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\epsilon}{235}
    \DeclareTextComposite{\accvaria}{LGR}{\omicron}{228}
    \DeclareTextComposite{\accdasia}{LGR}{\omicron}{229}
    \DeclareTextComposite{\accpsili}{LGR}{\omicron}{230}
    \DeclareTextComposite{\accdasiavaria}{LGR}{\omicron}{231}
    \DeclareTextComposite{\acctonos}{LGR}{\omicron}{236}
    \DeclareTextComposite{\accdasiaoxia}{LGR}{\omicron}{237}
    \DeclareTextComposite{\accpsilioxia}{LGR}{\omicron}{238}
    \DeclareTextComposite{\accpsilivaria}{LGR}{\omicron}{239}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Alpha}{<A}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Alpha}{<`A}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Alpha}{<'A}
    \DeclareTextCompositeCommand{\accdasiaperispomeni}{LGR}{\Alpha}{<\char126A}
    \DeclareTextCompositeCommand{\accpsili}{LGR}{\Alpha}{>A}
    \DeclareTextCompositeCommand{\accpsilivaria}{LGR}{\Alpha}{>`A}
    \DeclareTextCompositeCommand{\accpsilioxia}{LGR}{\Alpha}{>'A}
    \DeclareTextCompositeCommand{\accpsiliperispomeni}{LGR}{\Alpha}{>\char126A}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Alpha}{'A}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Alpha}{`A}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Epsilon}{<E}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Epsilon}{<'E}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Epsilon}{<`E}
    \DeclareTextCompositeCommand{\accpsili}{LGR}{\Epsilon}{>E}
    \DeclareTextCompositeCommand{\accpsilioxia}{LGR}{\Epsilon}{>'E}
    \DeclareTextCompositeCommand{\accpsilivaria}{LGR}{\Epsilon}{>`E}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Epsilon}{'E}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Epsilon}{`E}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Eta}{<H}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Eta}{<`H}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Eta}{<'H}
    \DeclareTextCompositeCommand{\accdasiaperispomeni}{LGR}{\Eta}{<\char126H}
    \DeclareTextCompositeCommand{\accpsili}{LGR}{\Eta}{>H}
    \DeclareTextCompositeCommand{\accpsilivaria}{LGR}{\Eta}{>`H}
    \DeclareTextCompositeCommand{\accpsilioxia}{LGR}{\Eta}{>'H}
    \DeclareTextCompositeCommand{\accpsiliperispomeni}{LGR}{\Eta}{>\char126H}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Eta}{'H}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Eta}{`H}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Iota}{<I}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Iota}{<`I}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Iota}{<'I}
    \DeclareTextCompositeCommand{\accdasiaperispomeni}{LGR}{\Iota}{<\char126I}
    \DeclareTextCompositeCommand{\accpsili}{LGR}{\Iota}{>I}
    \DeclareTextCompositeCommand{\accpsilivaria}{LGR}{\Iota}{>`I}
    \DeclareTextCompositeCommand{\accpsilioxia}{LGR}{\Iota}{>'I}
    \DeclareTextCompositeCommand{\accpsiliperispomeni}{LGR}{\Iota}{>\char126I}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Iota}{'I}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Iota}{`I}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Omicron}{<O}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Omicron}{<`O}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Omicron}{<'O}
    \DeclareTextCompositeCommand{\accpsili}{LGR}{\Omicron}{>O}
    \DeclareTextCompositeCommand{\accpsilivaria}{LGR}{\Omicron}{>`O}
    \DeclareTextCompositeCommand{\accpsilioxia}{LGR}{\Omicron}{>'O}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Omicron}{'O}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Omicron}{`O}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Upsilon}{<U}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Upsilon}{<`U}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Upsilon}{<'U}
    \DeclareTextCompositeCommand{\accdasiaperispomeni}{LGR}{\Upsilon}{<\char126U}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Upsilon}{'U}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Upsilon}{`U}
    \DeclareTextCompositeCommand{\accdasia}{LGR}{\Omega}{<W}
    \DeclareTextCompositeCommand{\accdasiavaria}{LGR}{\Omega}{<`W}
    \DeclareTextCompositeCommand{\accdasiaoxia}{LGR}{\Omega}{<'W}
    \DeclareTextCompositeCommand{\accdasiaperispomeni}{LGR}{\Omega}{<\char126W}
    \DeclareTextCompositeCommand{\accpsili}{LGR}{\Omega}{>W}
    \DeclareTextCompositeCommand{\accpsilivaria}{LGR}{\Omega}{>`W}
    \DeclareTextCompositeCommand{\accpsilioxia}{LGR}{\Omega}{>'W}
    \DeclareTextCompositeCommand{\accpsiliperispomeni}{LGR}{\Omega}{>\char126W}
    \DeclareTextCompositeCommand{\acctonos}{LGR}{\Omega}{'W}
    \DeclareTextCompositeCommand{\accvaria}{LGR}{\Omega}{`W}
    \DeclareTextComposite{\accdialytika}{LGR}{\Iota}{219}
    \DeclareTextComposite{\accdialytika}{LGR}{\Upsilon}{223}
    \DeclareTextCompositeCommand{\@hiatus}{LGR}{\Alpha}{\A@hiatus}
    \DeclareTextCompositeCommand{\@hiatus}{LGR}{\Epsilon}{\E@hiatus}