diff options
author | Karl Berry <karl@freefriends.org> | 2012-05-08 22:52:38 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-05-08 22:52:38 +0000 |
commit | d189ec20694dbb800e75ab2bf0a80f3af44c738c (patch) | |
tree | 7f159a9a5123046351d6e262edac1d15f1912e74 /Master/texmf-dist/doc/latex/lgrx/textalpha-test.tex | |
parent | 117d3cf753beae31aec295e409a34c2bc1353613 (diff) |
new latex package lgrx (8may12)
git-svn-id: svn://tug.org/texlive/trunk@26262 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/lgrx/textalpha-test.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/lgrx/textalpha-test.tex | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/lgrx/textalpha-test.tex b/Master/texmf-dist/doc/latex/lgrx/textalpha-test.tex new file mode 100644 index 00000000000..c3a33e248dd --- /dev/null +++ b/Master/texmf-dist/doc/latex/lgrx/textalpha-test.tex @@ -0,0 +1,133 @@ +\documentclass{article} +\usepackage{cmap} % fix search and cut-and-paste in PDF +\usepackage{lmodern} +\usepackage{parskip} +\usepackage{textcomp} +\usepackage{textalpha} +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\hypersetup{unicode=true} +\usepackage{bookmark} + +\newcommand{\LGR}{\fontencoding{LGR}\selectfont} +\newcommand{\Latin}{\fontencoding{T1}\selectfont} + +\providecommand{\greektext}{% + \fontencoding{LGR}\selectfont\def\encodingdefault{LGR}% +} +\providecommand*{\textgreek}[1]{\leavevmode{\greektext #1}} + +\DeclareTextCommand{\TextGreek}{LGR}[1]{#1} +\DeclareTextCommandDefault{\TextGreek}[1]{\textgreek{#1}} + +\pagestyle{empty} +\setcounter{secnumdepth}{0} + +\begin{document} + +\subsection{Greek alphabet} + +Greek letters via Latin transscription in LGR font encoding: + +\LGR +\MakeUppercase{a b g d e z h j i k l m n x o p r s t u f q y w} + +a b g d e z h j i k l m n x o p r s c t u f q y w + +\Latin +Greek letters via default macros in other font encoding (here T1): + +\textAlpha{} \textBeta{} \textGamma{} \textDelta{} \textEpsilon{} +\textZeta{} \textEta{} \textTheta{} \textIota{} \textKappa{} +\textLambda{} \textMu{} \textNu{} \textXi{} \textOmicron{} \textPi{} +\textRho{} \textSigma{} \textTau{} \textUpsilon{} \textPhi{} +\textChi{} \textPsi{} \textOmega{} + + +\textalpha{} \textbeta{} \textgamma{} \textdelta{} \textepsilon{} +\textzeta{} \texteta{} \texttheta{} \textiota{} \textkappa{} +\textlambda{} \textmu{} \textnu{} \textxi{} \textomicron{} \textpi{} +\textrho{} \textsigma{} \textvarsigma{} \texttau{} \textupsilon{} +\textphi{} \textchi{} \textpsi{} \textomega{} + +So you can easily write a single Greek symbol (like \textPsi{} or +\textmu{}) or +\textlambda\textomicron\textgamma\textomicron\textvarsigma{} in +non-Greek text or ISO-conforming formulas with an upright pi symbol +like $A = \mbox{\textpi} r^2$ instead of $A = \pi r^2$. + +However, kerning is broken in other font encodings: compare +\textgreek{AUA} (LGR) to \textAlpha\textUpsilon\textAlpha (T1). +Because of this (and for proper hyphenation), use of babel and correct +language setting is recommended for Greek quotes. + +\subsection{\textlambda\textomicron\textgamma\textomicron\textvarsigma{}, + λογος and \TextGreek{logos}} + +The subsection title above uses: text* macros, Unicode input and the LGR +transcription for the Greek word \TextGreek{logos}. The last variant (Latin +transscription) is written in Latin letters in the PDF bookmark. + +On 2010-11-05, Heiko Oberdiek wrote in comp.text.tex: + +\begin{quote} + \textbackslash pdfstringdef (converting TeX code to PDF strings for + bookmarks) supports NFSS2 and needs active characters. Encoding + stuff based on the internal font machinery of TeX (letters with + catcode 11 or 12, ligatures) does not work, because the strings + don't reach TeX's stomach. +\end{quote} + +\subsection{Diacritics} + +In LGR encoding, shortcuts as well as named macros are set up for use with +the Latin transcription. + +Composition of diacritics (like \verb+\Dasia\Tonos+) fails in other +font encodings. Long names (like \verb+\DasiaOxia+) work, however they +do not select precomposed characters (the difference becomes obvious +if you drag-and-drop text from the PDF version of this document): +% +LGR: \LGR \<'a \Dasia\Tonos a \DasiaOxia a \DasiaOxia\textalpha \Latin \\ +Latin: \DasiaOxia\textalpha + +Diacritics (except the dialytika) should placed +before capital letters and dropped with MakeUppercase: + +\LGR +\<{\textalpha} \>{\textepsilon} \"'{\textiota} \`>{\texteta} +\'<{\textomicron} \~<{\textupsilon} \~>{\textomega} +\\ +\<{\textAlpha} \>{\textEpsilon} \"'{\textIota} \`>{\textEta} +\'<{\textOmicron} \~<{\textUpsilon} \~>{\textOmega} +\\ +\MakeUppercase{% + \<{\textalpha} \>{\textepsilon} \"'{\textiota} \`>\texteta{} + \'<{\textomicron} \~<{\textupsilon} \~>{\textomega} +} + +\Latin However, in other font encodings, this does not work: + +No kerning: (\textgreek{ΑΥΑ} vs. ΑΥΑ), misplaced multiple (\textgreek{ἅ} vs. +ἅ) or Titlecase accents (\textgreek{Ά Έ Ή Ί} vs. Ά Έ Ή Ί) and errors with +MakeUppercase. + +Therefore, we would need to define macros for all Unicode characters +that we want to access without explicit font-encoding change. + +Alternative: A \verb+\TextGreek+ TextCommandDefault that wraps the argument in +the equivalent of Babel's \verb+\textgreek+ with an LGR TextCommand that +just passes the argument. This is done in the preamble of this document. + +This works with the Babel transscription (\TextGreek{logos}), +keeps kerning (if the kerning pair is inside the argument, +\TextGreek{\textAlpha\textUpsilon\textAlpha}), +and allows iterative accent macros where pre-composed characters are +selected (\TextGreek{\DasiaOxia\textalpha} or +\TextGreek{\Dasia\Tonos\textalpha}). + +TODO: Use this definition for multi-macro definitions in the Unicode +definition file? + +\end{document} |