summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/greek-fontenc/textalpha-test.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/greek-fontenc/textalpha-test.tex')
-rw-r--r--Master/texmf-dist/doc/latex/greek-fontenc/textalpha-test.tex266
1 files changed, 266 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/greek-fontenc/textalpha-test.tex b/Master/texmf-dist/doc/latex/greek-fontenc/textalpha-test.tex
new file mode 100644
index 00000000000..1a0f796faad
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/greek-fontenc/textalpha-test.tex
@@ -0,0 +1,266 @@
+\documentclass{article}
+\usepackage{parskip}
+\usepackage{booktabs}
+
+\usepackage{lmodern}
+\usepackage{textcomp}
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+
+\usepackage[pdfencoding=auto,colorlinks=true]{hyperref}
+\usepackage{bookmark}
+% hyperrefs PU encoding supports Greek LICR macros
+\DeclareTextCommand{\ensuregreek}{PU}[1]{#1}
+
+\usepackage{textalpha}
+
+\begin{document}
+
+\title{The \emph{textalpha} package}
+\author{Günter Milde}
+\maketitle
+
+With the \emph{textalpha} package, you can easily write a single Greek
+symbol (like \textPsi{} or \textmu{}) or a
+\textlambda\textomicron\textgamma\textomicron\textvarsigma{} in non-Greek
+text as well as ISO-conforming formulas with upright constants (like
+\textpi): $A = \mbox{\textpi} r^2$ vs. $A = \pi r^2$. Input is possible via
+LICR macros (\verb|\textalpha| \ldots \verb|\textOmega|) or (with
+\emph{\href{http://www.ctan.org/pkg/greek-inputenc}{greek-inputenc}} and the
+utf8 option to \emph{\href{http://www.ctan.org/pkg/inputenc}{inputenc}})
+Unicode literals.
+
+\section{Greek alphabet}
+
+Greek letters via Latin transcription in LGR font encoding:
+
+\begin{quote}
+ \ensuregreek{A B G D E Z H J I K L M N X O P R S T U F Q Y W}\\
+ \ensuregreek{a b g d e z h j i k l m n x o p r sv c t u f q y w}
+\end{quote}
+
+Greek letters via default macros in other font encoding (here T1):
+
+\begin{quote}
+ \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{}
+\end{quote}
+
+Archaic Greek letters and Greek punctuation
+
+\begin{quote}
+ \textDigamma
+ \textanoteleia
+ \textQoppa
+ \textSampi
+ \textStigma
+ \textnumeralsigngreek
+ \texterotimatiko
+ \\
+ \textdigamma
+ \textkoppa
+ \textqoppa
+ \textsampi
+ \textstigma
+ \textnumeralsignlowergreek
+ \textvarstigma
+\end{quote}
+
+Diacritics
+
+\begin{quote}
+ Symbol macros:%
+ \footnote{Composite diacritics require wrapping in
+ \texttt{\textbackslash ensuregreek}.}
+ \"{} \'{} \`{} \~{} \<{} \>{} \u{} \={}
+ \ensuregreek{\"~{} \"'{} \"`{} \<~{} \<`{} \<'{} \>~{} \>'{} \>`{}}
+
+ Named macros:
+ \accdialytika{}
+ \acctonos{}
+ \accvaria{}
+ \accperispomeni{}
+ \accdasia{}
+ \accpsili{}
+ \ypogegrammeni{}
+ \prosgegrammeni{}
+ %
+ \accdialytikaperispomeni{}
+ \accdialytikatonos{}
+ \accdialytikavaria{}
+ \accdasiaperispomeni{}
+ \accdasiavaria{}
+ \accdasiaoxia{}
+ \accpsiliperispomeni{}
+ \accpsilioxia{}
+ \accpsilivaria{}
+ %
+ \accinvertedbrevebelow{} % == \textsubarch{}
+ \accbrevebelow{}
+
+
+\end{quote}
+
+
+\pagebreak{}
+
+\section{Greek Unicode characters in non-Greek text}
+
+With the \emph{textalpha} package and input encoding \texttt{utf8}, Greek
+Unicode characters can be used in text with any font encoding.
+
+Kerning is preserved if the font encoding is LGR. This holds also for
+pre-composed accented characters: \ensuregreek{AΫA}.
+
+All characters of the Greek and Coptic Unicode Block present in LGR via
+literal Unicode input in T1 font encoding
+(legend: * glyph missing in LGR):
+
+\begin{tabular}{rrrrrrrrrrrrrrrrr}
+\toprule
+ & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & A & B & C & D & E & F\\
+\midrule
+370 & * & * & * & * & ʹ & ͵ & * & * & & & ͺ & * & * & * & ; & \\
+380 & & & & & ΄ & ΅ & Ά & · & Έ & Ή & Ί & & Ό & & Ύ & Ώ\\
+390 & ΐ & Α & Β & Γ & Δ & Ε & Ζ & Η & Θ & Ι & Κ & Λ & Μ & Ν & Ξ & Ο\\
+3A0 & Π & Ρ & & Σ & Τ & Υ & Φ & Χ & Ψ & Ω & Ϊ & Ϋ & ά & έ & ή & ί\\
+3B0 & ΰ & α & β & γ & δ & ε & ζ & η & θ & ι & κ & λ & μ & ν & ξ & ο\\
+3C0 & π & ρ & ς & σ & τ & υ & φ & χ & ψ & ω & ϊ & ϋ & ό & ύ & ώ & \\
+3D0 & * & * & * & * & * & * & * & * & Ϙ & ϙ & Ϛ & ϛ & Ϝ & ϝ & * & ϟ\\
+3E0 & Ϡ & ϡ & * & * & * & * & * & * & * & * & * & * & * & * & * & *\\
+3F0 & * & * & * & * & * & * & * & * & * & * & * & * & * & * & * & *\\
+\bottomrule
+\end{tabular}
+
+All characters of the Greek Extended Unicode Block via literal Unicode
+input in T1 font encoding:
+
+\begin{tabular}{rrrrrrrrrrrrrrrrr}
+\toprule
+ & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & A & B & C & D & E & F\\
+\midrule
+1F00 & ἀ & ἁ & ἂ & ἃ & ἄ & ἅ & ἆ & ἇ & Ἀ & Ἁ & Ἂ & Ἃ & Ἄ & Ἅ & Ἆ & Ἇ\\
+1F10 & ἐ & ἑ & ἒ & ἓ & ἔ & ἕ & & & Ἐ & Ἑ & Ἒ & Ἓ & Ἔ & Ἕ & & \\
+1F20 & ἠ & ἡ & ἢ & ἣ & ἤ & ἥ & ἦ & ἧ & Ἠ & Ἡ & Ἢ & Ἣ & Ἤ & Ἥ & Ἦ & Ἧ\\
+1F30 & ἰ & ἱ & ἲ & ἳ & ἴ & ἵ & ἶ & ἷ & Ἰ & Ἱ & Ἲ & Ἳ & Ἴ & Ἵ & Ἶ & Ἷ\\
+1F40 & ὀ & ὁ & ὂ & ὃ & ὄ & ὅ & & & Ὀ & Ὁ & Ὂ & Ὃ & Ὄ & Ὅ & & \\
+1F50 & ὐ & ὑ & ὒ & ὓ & ὔ & ὕ & ὖ & ὗ & & Ὑ & & Ὓ & & Ὕ & & Ὗ\\
+1F60 & ὠ & ὡ & ὢ & ὣ & ὤ & ὥ & ὦ & ὧ & Ὠ & Ὡ & Ὢ & Ὣ & Ὤ & Ὥ & Ὦ & Ὧ\\
+1F70 & ὰ & ά & ὲ & έ & ὴ & ή & ὶ & ί & ὸ & ό & ὺ & ύ & ὼ & ώ & & \\
+1F80 & ᾀ & ᾁ & ᾂ & ᾃ & ᾄ & ᾅ & ᾆ & ᾇ & ᾈ & ᾉ & ᾊ & ᾋ & ᾌ & ᾍ & ᾎ & ᾏ\\
+1F90 & ᾐ & ᾑ & ᾒ & ᾓ & ᾔ & ᾕ & ᾖ & ᾗ & ᾘ & ᾙ & ᾚ & ᾛ & ᾜ & ᾝ & ᾞ & ᾟ\\
+1FA0 & ᾠ & ᾡ & ᾢ & ᾣ & ᾤ & ᾥ & ᾦ & ᾧ & ᾨ & ᾩ & ᾪ & ᾫ & ᾬ & ᾭ & ᾮ & ᾯ\\
+1FB0 & ᾰ & ᾱ & ᾲ & ᾳ & ᾴ & & ᾶ & ᾷ & Ᾰ & Ᾱ & Ὰ & Ά & ᾼ & ᾽ & ι & ᾿\\
+1FC0 & ῀ & ῁ & ῂ & ῃ & ῄ & & ῆ & ῇ & Ὲ & Έ & Ὴ & Ή & ῌ & ῍ & ῎ & ῏\\
+1FD0 & ῐ & ῑ & ῒ & ΐ & & & ῖ & ῗ & Ῐ & Ῑ & Ὶ & Ί & & ῝ & ῞ & ῟\\
+1FE0 & ῠ & ῡ & ῢ & ΰ & ῤ & ῥ & ῦ & ῧ & Ῠ & Ῡ & Ὺ & Ύ & Ῥ & ῭ & ΅ & `\\
+1FF0 & & & ῲ & ῳ & ῴ & & ῶ & ῷ & Ὸ & Ό & Ὼ & Ώ & ῼ & ´ & ῾ & \\
+\bottomrule
+\end{tabular}
+
+
+Combined Diacritics work ᾅ, diacritics (except diaeresis) are dropped with
+MakeUppercase (μαΐστρος $\mapsto$ \MakeUppercase{μαΐστρος}).
+
+
+
+\section{PDF strings}
+
+With \emph{textalpha} and
+\emph{\href{http://www.ctan.org/pkg/greek-inputenc}{greek-inputenc}}, there
+are two options to get Greek letters in PDF strings: LICR macros and literal
+Unicode input.
+
+\subsection{\textlambda\textomicron\textgamma\textomicron\textvarsigma{},
+ λογος and \ensuregreek{logos}}
+
+The subsection title above uses: LICR macros, Unicode input and the LGR
+transcription for the Greek word \ensuregreek{logos}. Check the table of
+contents in the PDF viewer: LICR macros and Unicode literals work fine, the
+Latin transcription remains Latin in the PDF metadata.
+
+
+\section{Limitations}
+
+Because the internal font encoding switch interferes with other work behind
+the scenes, kerning, diacritics and up/down-casing show problems if Greek
+letters are used without explicit change of the font encoding. These
+problems can be avoided by use of \emph{babel} and the correct language
+setting (greek) or an explicit font encoding switch (e.g.
+wrapping the Greek text in \verb|\ensuregreek|%
+\footnote{The \texttt{\textbackslash ensuregreek} macro ensures the argument
+is set in a font encoding supporting Greek. This can be used to fix these
+problems without adverse side-effects if the active font encoding is already
+LGR.}).
+
+\subsection{Diacritics}
+
+Composition of diacritics (like \verb|\accdasia\acctonos|) fails in other
+font encodings. Long names (like \verb|\accdasiaoxia|) work, however they do
+not select pre-composed characters. With LGR, pre-composed glyphs are chosen
+if available (the difference becomes obvious if you drag-and-drop text from
+the PDF version of this document):
+%
+\ensuregreek{\<'a \accdasia\acctonos a \accdasiaoxia a
+\accdasiaoxia\textalpha} (LGR) vs. \accdasiaoxia\textalpha{} (T1).
+
+According to Greek typographical tradition, diacritics (except the
+dialytika) are placed before capital letters in titlecase and dropped in
+all-caps:
+%
+\begin{quote}
+ \ensuregreek{%
+ \<{\textalpha} \>{\textepsilon} \"'{\textiota} \`>\texteta{}
+ \'<{\textomicron} \~<{\textupsilon} \~>{\textomega}
+ \\
+ \<{\textAlpha} \>{\textEpsilon} \"{\textIota} \`>\textEta{}
+ \'<{\textOmicron} \~<{\textUpsilon} \~>{\textOmega}
+ \\
+ \MakeUppercase{%
+ \<{\textalpha} \>{\textepsilon} \"'{\textiota} \`\>\texteta{}
+ \'<{\textomicron} \~<{\textupsilon} \~>{\textomega}.
+ }
+ }
+\end{quote}
+%
+This fails if the active font encoding is not LGR:
+\ensuregreek{\'\textAlpha} (LGR) vs. \'\textAlpha (T1).
+To overcome this, the \verb|\ensuregreek| macro is used in composite Unicode
+character definitions: \ensuregreek{Ά} (LGR) = Ά (T1).
+
+
+The dialytika marks a \emph{hiatus} (break-up of a diphthong). It must be
+present in UPPERCASE even where it is redundant in lowercase (the hiatus can
+also be marked by an accent on the first character of a diphthong). The
+auto-hiatus feature works in LGR font encoding only:
+\acctonos\textalpha\textupsilon{}, \acctonos\textepsilon\textiota{} $\mapsto$
+\MakeUppercase{\ensuregreek{
+ \acctonos\textalpha\textupsilon{}, \acctonos\textepsilon\textiota{}
+}} vs.
+\MakeUppercase{
+ \acctonos\textalpha\textupsilon{}, \acctonos\textepsilon\textiota{}%
+}.
+
+Currently, the second vowel of the diphthong must be given as macro, not
+Unicode literal if the auto-hiatus feature should work:
+\ensuregreek{ἀ\textupsilon{}πνία} $\mapsto$
+\ensuregreek{\MakeUppercase{\ensuregreek{ἀ\textupsilon{}πνία}}} vs.
+\ensuregreek{\MakeUppercase{\ensuregreek{ἀυπνία}}}.
+
+\subsection{Kerning}
+
+No kerning occurs between Greek characters in non-Greek text due to the
+internal font encoding switch: compare
+\ensuregreek{\textAlpha\textUpsilon\textAlpha} (LGR) to
+\textAlpha\textUpsilon\textAlpha (T1).
+
+\end{document}