diff options
author | Karl Berry <karl@freefriends.org> | 2014-09-08 22:09:04 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2014-09-08 22:09:04 +0000 |
commit | f2cbccb4cb819d91c65147f969322bcaa9977e49 (patch) | |
tree | af27c0cae74c1adbcd4294c5b3b91f659cbb75f9 /Master/texmf-dist/doc/latex/greek-fontenc/alphabeta-doc.tex | |
parent | 49901f331ab8e1cbb2810b3722c00d67da253ce5 (diff) |
greek-fontenc (8sep14)
git-svn-id: svn://tug.org/texlive/trunk@35130 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/greek-fontenc/alphabeta-doc.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/greek-fontenc/alphabeta-doc.tex | 259 |
1 files changed, 259 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/greek-fontenc/alphabeta-doc.tex b/Master/texmf-dist/doc/latex/greek-fontenc/alphabeta-doc.tex new file mode 100644 index 00000000000..0dc26a63bfc --- /dev/null +++ b/Master/texmf-dist/doc/latex/greek-fontenc/alphabeta-doc.tex @@ -0,0 +1,259 @@ +\documentclass{article} + +\usepackage[unicode,colorlinks=true,linkcolor=blue]{hyperref} +\usepackage{bookmark} +\hypersetup{colorlinks=true,linkcolor=blue,urlcolor=blue,pdfencoding=auto} +\usepackage{parskip} +\usepackage{amsmath} + +\ifdefined\XeTeXrevision + \usepackage[no-math]{fontspec} + \setmainfont{Linux Libertine O} + \usepackage[libertine,slantedGreek]{newtxmath} + \providecommand*{\varstigma}{$\oslash$} +\else\ifdefined\luatexversion + \usepackage{fontspec} + \setmainfont{Linux Libertine O} + \usepackage[libertine,slantedGreek]{newtxmath} + \providecommand*{\varstigma}{$\oslash$} +\else + \usepackage[utf8]{inputenc} + \usepackage[LGR,T1]{fontenc} + \usepackage{textcomp} + % \usepackage{lmodern} + % \usepackage{gfsdidot} + % \usepackage{kerkis} + \usepackage{newtxtext,newtxmath} + \usepackage{substitutefont} + \substitutefont{LGR}{\rmdefault}{artemisia} + \usepackage{isomath} +\fi\fi + +% No section numbers but PDF bookmarks for sections +\setcounter{secnumdepth}{0} + +% load alphabeta after math setup and encoding setup! +\usepackage{alphabeta} + +% Avoid warnigns with PDF string generation for "alphabeta" commands: + +% let \TextOrMath (from fixltx2e) return the "text" argument: +\pdfstringdefDisableCommands{% + \let\TextOrMath\@firstoftwo% +} + + +\begin{document} + +\title{The \emph{alphabeta} package} +\author{Günter Milde} +\maketitle + +With the \emph{alphabeta} package, you can write Greek letters ``by name'' +or as literal Unicode characters in both, ``text'' and ``math'' mode. The +mode determines whether the letters are taken from the text or math font. +Just like Latin letters, the Greek counterparts are by default italic in +math mode (capital letters upright without \emph{fixmath} or +\emph{\href{http://www.ctan.org/pkg/isomath}{isomath}}) and upright in text: + + +\begin{quote} + Text: L \Gamma{} l \gamma, + emphasized text: \emph{L \Gamma{} l \gamma}, + mathematics: $ L \ \Gamma \ l \ \gamma $ +\end{quote} + +This makes it easy to write a single Greek symbol (like \Psi{} or \mu{}) or +a \lambda\omicron\gamma\omicron\varsigma{} in non-Greek text as well as +ISO-conforming formulas with upright symbols for constants like $A = +\text{\pi} r^2$ instead of $A = \pi r^2$.\footnote{% + The \emph{\href{http://www.ctan.org/pkg/isomath}{isomath}} package + documentation describes more alternatives for upright Greek symbols in + math mode.} + +See the source of this document \url{alphabeta-doc.tex} for a setup and +usage example. + +\section{Tests and examples} + +\subsection{Greek alphabet} + +Greek letters via Latin transscription 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 s c t u f q y w} +\end{quote} + +Greek letters via default macros without language/font-encoding switch: + +\begin{quote} + \Alpha{} \Beta{} \Gamma{} \Delta{} \Epsilon{} \Zeta{} \Eta{} \Theta{} + \Iota{} \Kappa{} \Lambda{} \Mu{} \Nu{} \Xi{} \Omicron{} \Pi{} \Rho{} + \Sigma{} \Tau{} \Upsilon{} \Phi{} \Chi{} \Psi{} \Omega{} + \\ + \alpha{} \beta{} \gamma{} \delta{} \epsilon{} \zeta{} \eta{} \theta{} + \iota{} \kappa{} \lambda{} \mu{} \nu{} \xi{} \omicron{} \pi{} \rho{} + \sigma{} \varsigma{} \tau{} \upsilon{} \phi{} \chi{} \psi{} \omega{} + \\ + \digamma{} \Digamma{} \stigma{} \varstigma{}% + \footnote{\texttt{\textbackslash varstigma} is not defined with + Xe/LuaTeX and similar to \texttt{\textbackslash stigma} in some fonts.} + \koppa{} \qoppa{} \Qoppa{} + \Stigma{} \Sampi{} \sampi{} +\end{quote} + +Greek letters via Unicode input without language/font-encoding switch: + +\begin{quote} + Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω\\ + α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ ς τ υ φ χ ψ ω\\ + ϝ Ϝ ϛ ϟ ϙ Ϙ Ϛ Ϡ ϡ +\end{quote} + + +\subsection{\ensuregreek{% + Ἑλληνικά (\<\Epsilon\lambda\lambda\eta\nu\iota\kappa\'\alpha{})} + in PDF strings} + +With the alphabeta package, you get Greek letters in both, the document body +and PDF metadata generated by hyperref if the input uses Unicode literals or +macros. Wrapping in \verb+\ensuregreek+ ensures the right placement of the +accents and breathings (before, not above capital letters). With LICR input +(accent macros + symbol macros), non-standard diacritics are missing in the +PDF data, as hyperref's PU encoding currently does not support polytonic +Greek. (Here, the dasia is dropped at the start of the word in parentheses in +the PDF toc. The warning ``\texttt{Glyph not defined in PU encoding, +removing `\textbackslash<' on input line 145.}'' is written to the log.) + +Warnings like \texttt{Token not allowed in a PDF string +(Unicode): removing `\textbackslash TextOrMath ' on input line 145.} +can be ignored or avoided with the preamble code: + +\begin{verbatim} +\pdfstringdefDisableCommands{% + \let\TextOrMath\@firstoftwo% +} +\end{verbatim} + + +\subsection{Greek in math $\Gamma = \sin\alpha / \cos{\beta}$} + +In the main document, Greek in math mode should work as usual: + +\[\Gamma = \frac{\sin\alpha}{\cos{\beta}}. +\] + +With 8-bit TeX, literal Greek Unicode characters are supported also in +mathematical mode (for XeTeX/LuaTeX use unicode-math): + +\[ Γ = \frac{\sin α}{\cos{β}}. +\] + +Greek letters in math (there are no math macros for Greek letters wich exist +with similar shape in the Latin alphabet): + +Input as macro: + +\begin{align*} + & + % \Alpha{} \Beta{} + \Gamma{} \Delta{} + % \Epsilon{} \Zeta{} \Eta{} + \Theta{} + % \Iota{} \Kappa{} + \Lambda{} + % \Mu{} \Nu{} + \Xi{} + % \Omicron{} + \Pi{} + % \Rho{} + \Sigma{} + % \Tau{} + \Upsilon{} \Phi{} + % \Chi{} + \Psi{} \Omega{} +\\& + \alpha{} \beta{} \gamma{} \delta{} \epsilon{} \zeta{} \eta{} \theta{} + \iota{} \kappa{} \lambda{} \mu{} \nu{} \xi{} + % \omicron{} + \pi{} \rho{} + \sigma{} \varsigma{} \tau{} \upsilon{} \phi{} \chi{} \psi{} \omega{} + \, \digamma{} +\end{align*} + +Input as Unicode literals (with XeTeX/LuaTeX, this requires the unicode-math +package): + +\begin{align*} & Γ ΔΘΛΞΠΣΥ ΦΨ Ω \\ + & αβγδεζηθικλμνξπρσςτ υφχψω \, ϝ +\end{align*} + + +PDF strings do not know math mode. The content of a formula or equation is +evaluated in text mode with non-valid commands discarded (and warnings +written to the log). This works resonably well for simple formulas (but not, +e.g., for super-/subscripts). With the \emph{alphabeta} package, it works +also for Greek letters. + + +\subsection{Diacritics} + +Accent macros are set up for use with the generic macros by definition of +``TextComposite'' commands. + +Diacritics (except the dialytika) should placed +before capital letters and dropped with MakeUppercase: + +\ensuregreek{ +\<{\alpha} \>{\epsilon} \"'{\iota} \>`{\eta} +\'<{\omicron} \~<{\upsilon} \~>{\omega} +\\ +\<{\Alpha} \>{\Epsilon} \'{\Iota} \>`{\Eta} +\'<{\Omicron} \~<{\Upsilon} \~>{\Omega} +\\ +\MakeUppercase{% + \<{\alpha} \>{\epsilon} \"'{\iota} \>`\eta{} + \'<{\omicron} \~<{\upsilon} \~>{\omega} +}} + +\subsection{Limitations} + +With 8-bit TeX, the following limitations known from +\emph{\href{textalpha-doc.pdf}{textalpha}} apply if the current font +encoding is not LGR: + +\begin{itemize} + +\item Composition of diacritics (like \verb+\>\'+) fails: + + \<{\alpha} \>{\epsilon} \"'{\iota} \>`\eta{} + \'<{\omicron} \~<{\upsilon} \~>{\omega} + + Long names (like \verb+\accdasiaoxia+) work in any font encoding, + however they do not select precomposed characters (the difference + becomes obvious if you drag-and-drop text from the PDF version of this + document): + % + \ensuregreek{\<'\alpha{} \accdasia\acctonos\alpha{} \accdasiaoxia\alpha{}} + (LGR) vs. \accdasiaoxia\alpha{} (T1) + +\item MakeUppercase fails with composite diacritics in other font encodings. + % \MakeUppercase{% + % \<\alpha{} \>\epsilon{} \'\iota{} \`\eta{} \~\upsilon{} + % } + +\item There is no kerning between Greek letters, if the font encoding is not + LGR: compare \ensuregreek{\Alpha\Upsilon\Alpha} (LGR) to \Alpha\Upsilon\Alpha (T1). + Because of this (and for proper hyphenation), use of the Babel package + and correct language setting is recommended for Greek quotes. + +\end{itemize} + +The \verb+\ensuregreek+ macro ensures that the argument is typeset with a +font encoding supporting Greek. This keeps kerning (if the kerning pair is +inside the argument, \ensuregreek{\Alpha\Upsilon\Alpha}), and allows +iterative accent macros where pre-composed characters are selected +(\ensuregreek{\<'\alpha}). + +\end{document} |