diff options
Diffstat (limited to 'language/greek/greek-fontenc/test-lgrenc.tex')
-rw-r--r-- | language/greek/greek-fontenc/test-lgrenc.tex | 219 |
1 files changed, 77 insertions, 142 deletions
diff --git a/language/greek/greek-fontenc/test-lgrenc.tex b/language/greek/greek-fontenc/test-lgrenc.tex index 17da4d353e..676df13100 100644 --- a/language/greek/greek-fontenc/test-lgrenc.tex +++ b/language/greek/greek-fontenc/test-lgrenc.tex @@ -71,6 +71,9 @@ \newcommand{\cs}[1]{\texttt{\textbackslash#1}} \newcommand{\cssample}[1]{\LGR\csname#1\endcsname{} \Latin \cs{#1}} +\IfFormatAtLeastTF{2022/06/01} + {\newcommand{\IsNewMakeUppercase}{}} + {} \begin{document} @@ -105,6 +108,8 @@ using the LICR macros: \end{quote} +\tableofcontents + \section{Symbols} See the source file \href{lgrenc-test.tex}{lgrenc-test.tex} for the macros @@ -112,34 +117,40 @@ used to access the symbols. \subsection{Generic text symbols} +Direct input: + Latin: + - = < > -- --- [ () ] -% -\textbraceleft{} -\textbraceright{} -\textbackslash{} -\textbar{} -\textperthousand{} -\textpertenthousand{} -\textvisiblespace{} LGR: \LGR -+ - = -- --- [ () ] ++ - = < > -- --- [ () ] +\Latin +Less than and greater than characters are mapped to breathing marks, use +LICRs. + +Character macros: + +\newcommand{\sample}{% + \begin{quote} + \raggedright + \cssample{textless} \\ + \cssample{textgreater} \\ + \cssample{textbraceleft} \\ + \cssample{textbraceright} \\ + % + \cssample{textbackslash} \\ + \cssample{textbar} \\ + \cssample{textperthousand} \\ + \cssample{textpertenthousand} \\ + \cssample{textvisiblespace} + \end{quote} +} +Latin: \sample +LGR: (per-tenthousand sign is missing in LGR, LaTeX selects the global default) +\LGR \sample \Latin -\begin{quote} - \raggedright - \cssample{textless} \\ - \cssample{textgreater} \\ - \cssample{textbraceleft} \\ - \cssample{textbraceright} \\ - % - \cssample{textbackslash} \\ - \cssample{textbar} \\ - \cssample{textperthousand} (Per-mille symbol is missing in LGR.) \\ - % \textpertenthousand{} - \cssample{textvisiblespace} \\ -\end{quote} + % Quotes:\footnote{% Single quotes need special attention to prevent conversion to accents. @@ -164,7 +175,7 @@ Single guillemets and base-quotes \quotesinglbase{}a\textquoteright{}) are missing in LGR. -Ligature break up with \verb|\textcompwordmark|: +Suppress ligatures and kerning with \verb|\textcompwordmark|: AY fi \LGR AU "i $\mapsto$ \Latin A\textcompwordmark Y f\textcompwordmark i \LGR A\textcompwordmark U "\textcompwordmark i @@ -202,17 +213,19 @@ other symbols are composed from Latin letters and show Greek letters in LGR. \emph{babel-greek} redefines some affected macros to use a standard font encoding, however this cannot be done in a font encoding definition file. -Beware that \texttt{" \# \& ' ; < > ? @} becomes -\LGR " \# \& ' ; < > ? @ -\Latin +Beware that " \# \& ' ; < > ? @ becomes +\LGR " \# \& ' ; < > ? @% +\Latin ! The \emph{textcomp} package\footnote{loaded by default in not too old LaTeX} provides pre-composed coyright \textcopyright{}, registered \textregistered{} and trademark \texttrademark{} symbols that work in all font encodings. -In LGR they come out as: \cssample{textcopyright}, -\cssample{textregistered}, \cssample{texttrademark}. - +Up-to-date LaTeX installations load \emph{textcomp} by default. +The legacy composite fallback definitions showed Greek letters if used in LGR: +\LGR +\cssample{textcopyright}, \cssample{textregistered}, \cssample{texttrademark}. +\Latin \emph{textcomp} also provides the upright MICRO SIGN and OHM SIGN for SI units: R = 5\,\textmu\textohm @@ -352,7 +365,7 @@ Names matching mathematical variant symbols: Compatibility aliases for hyperref’s puenc.def: \begin{quote} \raggedright - \cssample{textmugreek} = \cssample{textmu} \\ + \cssample{textmugreek} = \cssample{textmu} \\ \cssample{textkoppagreek} = \cssample{textkoppa} \\ \cssample{textKoppagreek} = \cssample{textKoppa} \\ \cssample{textStigmagreek} = \cssample{textStigma} \\ @@ -376,20 +389,23 @@ Mathematical notation distinguishes variant shapes for pi ($\pi|\varpi$), rho ($\rho|\varrho$), theta ($\theta|\vartheta$), beta ($\beta|\varbeta$), and kappa ($\kappa|\varkappa$) (characters for the last two variant symbols are not included in TeX's standard math fonts). -These variations have no syntactic meaning in Greek text and are not given -code-points in the LGR encoding. Greek text fonts use the shape variants -interchangeably. +These variations have no semantic significance in Greek text and are not +given code-points in the LGR encoding. Greek text fonts use the shape +variants interchangeably. \section{Diacritics} Capital Greek letters have breathings and accents (except dialytika) to the left (instead of above) and drop them if text is set in UPPERCASE.% -\footnote{The word \ensuregreek{Ἢ} (or), is an exception to this rule - because of the need to distinguish it from the nominative - feminine article \ensuregreek{Η}.} +\footnote{The word \ensuregreek{Ἢ} (``or'', monotonic \ensuregreek{Ή}), + is an exception to this rule because of the need to distinguish + it from the nominative feminine article \ensuregreek{Η}.} This is implemented for all combinations that are used in Greek texts (i.e. for which pre-composed Unicode character exist), but not for, -e.g., \LGR\~W\Latin). +e.g., \LGR\~W\Latin). Since 2022, LaTeX's \cs{MakeUppercase} uses the +Greek upcasing rules only if the text language (locale) is set to ``greek'' +with Babel (i.e.\ not in this document). +See \texttt{char-list.tex | char-list.pdf} for a comprehensive example. Different conventions exist for the treatment of the sub-iota with uppercase letters. The CB-Fonts use a capital Iota ``index'' (\LGR A|, H|, W|\Latin). @@ -425,7 +441,8 @@ is not defined in LGR.} Additional Greek diacritics (Greek, Greek Capitals% -\footnote{The dialytika is not used on Initial letters.} % (\LGR \"'I \"`I \~"I) +\footnote{The dialytika is not used on initial letters.} + % (\LGR \"'I \"`I \~"I) $\mapsto$ UPPERCASE) \begin{quote} @@ -441,25 +458,31 @@ $\mapsto$ UPPERCASE) } \end{quote} -\Latin Input variants and their conversion with MakeUppercase:% +\Latin Input variants and their conversion with MakeUppercase: \begin{quote} -\LGR +As this document does not set the text language to ``greek'', capital +letters do not drop accents (since the 2022 MakeUppercase revamp). + +There are issues like wrongly placed diacritics or \verb|~| leading to a +NBSP with letters/diacritics that are never used in an initial position. +However, there should not be any compiling errors. +\LGR \~>a \>\~a \~\>{a}, \~<a \<\~a \<~a \~\<a \~<a, \>\~{h} \~>h \>~h \>\~h \~>h \~>h|, \~<h \<\~h, -\>\~i \~>i, \~<i \<\~i, \~"i \"\~i \"~i,\\ -\>\~u \~>u, \~<u \<\~u, \~"u \"\~u, -\>w, \<w, \>\~w \~>w, \~<w \<\~w, -a| a\ypogegrammeni{} - +\>\~i \~>i, \~<i \<\~i, \~"i \"\~i \"~i →\\ \MakeUppercase{ \~>a \>\~a \~\>{a}, \~<a \<\~a \<~a \~\<a \~<a, \>\~{h} \~>h \>~h \>\~h \~>h \~>h|, \~<h \<\~h, -\>\~i \~>i, \~<i \<\~i, \~"i \"\~i \\ % for \"~i, see below +\>\~i \~>i, \~<i \<\~i, \~"i \"\~i % for \"~i, see below +} + \>\~u \~>u, \~<u \<\~u, \~"u \"\~u, -\>w, \<w, \>\~w \~>w, \~<w \<\~w, -a| a\ypogegrammeni{} +\>w, \<w, \>\~w \~>w, \~<w \<\~w, a| a\ypogegrammeni{} → \\ +\MakeUppercase{ +\>\~u \~>u, \~<u \<\~u, \~"u \"\~u, +\>w, \<w, \>\~w \~>w, \~<w \<\~w, a| a\ypogegrammeni{} } \<{\textalpha} \>{\textepsilon} \"'{\textiota} \`>\texteta{} @@ -467,7 +490,7 @@ a| a\ypogegrammeni{} \'<{\textomicron} \~<{\textupsilon} \~>{\textomega} \<{\textAlpha} \>{\textEpsilon} \"{\textIota} \`>\textEta{} \'<{\textOmicron} \~<{\textUpsilon} \~>{\textOmega}, -\textalpha| \textalpha\ypogegrammeni{} +\textalpha| \textalpha\ypogegrammeni{} → \\ \MakeUppercase{% \<{\textalpha} \>{\textepsilon} \"'{\textiota} \`\>\texteta{} @@ -478,7 +501,7 @@ a| a\ypogegrammeni{} \textalpha| \textalpha\ypogegrammeni{} } - \<'A \<\'A \'<A \'\<A $\mapsto$ \MakeUppercase{\<'A \<\'A \'<A \'\<A}. + \<'A \<\'A \'<A \'\<A → \MakeUppercase{\<'A \<\'A \'<A \'\<A}. \end{quote} @@ -526,10 +549,9 @@ A| A\ypogegrammeni{} A\prosgegrammeni{}. \end{quote} The tilde character can be used in combined accents. -However, in documents not defining the Babel language \emph{greek} or -\emph{polutonikogreek}, better use the tilde-accent macro, as -the tilde produces a no-break space if converted with \verb|\MakeUppercase| -or \verb|\MakeLowercase|: +However, in documents not defining the Babel language \emph{greek}, +the tilde character produces a no-break space if converted +with \verb|\MakeUppercase| or \verb|\MakeLowercase|: \begin{quote} combined accent with tilde character:\\ \LGR \"~i \<~i \"~u \<~u \`>u $\mapsto$ @@ -545,7 +567,7 @@ or \verb|\MakeLowercase|: \Latin Accents input via the Latin transliteration are not dropped with MakeUppercase, unless Babel is loaded and the current language is Greek -(because the required local re-definitions of the \texttt{uccode} are done in +(because the required local re-definitions are done in \texttt{greek.ldf} from the \emph{babel-greek} package). \begin{quote} \LGR @@ -569,95 +591,8 @@ and \verb|\>|: \Latin Combinations with named accents: \LGR \accdasia'a \accdasia`a \accdasia\~a. -\Latin The dialytika must be kept in UPPERCASE, e.\,g. - -\begin{quote} - % from http://diacritics.typo.cz/index.php?id=70 μαΐστρος -> ΜΑΪΣΤΡΟΣ. - \LGR ma\"'istros $\mapsto$ \MakeUppercase{ma\"'istros} - \Latin or % from teubner εὐζωΐα -> ΕΥΖΩΪΑ. - \LGR e\>uzw\'"ia $\mapsto$ \MakeUppercase{e\>uzw\'"ia}. -\end{quote} - -This is implemented for all input variants of diacritics with -dialytika: - -\begin{quote} - \LGR \"i \"'i \"`i \"\~i \"u \"'u \"`u \"\~u $\mapsto$ - \MakeUppercase{\"i \"'i \"`i \"\~i \"u \"'u \"`u \"\~u}, -\end{quote} - -Tonos and dasia mark a \emph{hiatus} (break-up of a diphthong) if -placed on the first vowel of a diphthong ({\LGR \'ai, \'au, \'ei}). A -dialytika must be placed on the second vowel if they are dropped: \LGR -(\MakeUppercase{\'ai, \'au, \'ei}). - -\begin{quote} - % from teubner: άυλος/ΑΫΛΟΣ - \'aulos $\mapsto$ \MakeUppercase{\'aulos}, - \>'aulos $\mapsto$ \MakeUppercase{\>'aulos}, - % from http://diacritics.typo.cz/index.php?id=69 μάινα -> ΜΑΪΝΑ - m\'aina $\mapsto$ \MakeUppercase{m\'aina}, - % from http://de.wikipedia.org/wiki/Neugriechische_Orthographie#Das_Trema - % κέικ, ἀυπνία/αϋπνία - k\'eik $\mapsto$ \MakeUppercase{k\'eik}, - \>aupn\'ia $\mapsto$ \MakeUppercase{\>aupn\'ia}, - % from http://multilingualtypesetting.co.uk/blog/greek-typesetting-tips/ - % ρωμέικα - rwm\'eika $\mapsto$ \MakeUppercase{rwm\'eika} -\end{quote} - -\newpage - -\Latin Test the auto-hiatus feature for side-effects: - -\LGR \MakeUppercase{\'a b} (\Latin must keep space after A). - -Kerning (see the input): -\LGR -\newcommand\md{\textcompwordmark} -\newcommand\MU{\MakeUppercase} - -\begin{quote} - \raggedright - \md \MU{ AO AY AI AU RA OA UA DU} [ \\ - \<\md \MU{ \<AO \<AY \<AI \<AU \<RA \<OA U\<A D\<U} [ \\ - \>\md \MU{ \>AO \>AY \>AI \>AU \>RA \>OA U\>A D\>U} [ \\ - \>'\md\MU{ \>'AO \>'AY \>'AI \>'AU \>'RA \>'OA U\>'A D\>'U} [ \\ - \'\md \MU{ \'AO \'AY \'AI \'AU \'RA \'OA U\'A D\'U} [ \\ - \>`\md\MU{ \>`AO \>`AY \>`AI \>`AU \>`RA \>`OA U\>`A D\>`U} [ \\ - \<'\md\MU{ \<'AO \<'AY \<'AI \<'AU \<'RA \<'OA U\<'A D\<'U} [ \\ - \`\md \MU{ \`AO \`AY \`AI \`AU \`RA \`OA U\`A D\`U} [ \\ - \<`\md\MU{ \<`AO \<`AY \<`AI \<`AU \<`RA \<`OA U\<`A D\<`U} [ \\ - \~\md \MU{ \~AO \~AY \~AI \~AU \~RA \~OA U\~A D\~U} [ \\ - \~>\md\MU{ \~>AO \~>AY \~>AI \~>AU \~>RA \~>OA U\~>A D\~>U} [ \\ - \~<\md\MU{ \~<AO \~<AY \~<AI \~<AU \~<RA \~<OA U\~<A D\~<U} [ \\ - \~<\md\MU{ \~<ao \~<ay \~<ai \~<au \~<ra \~<oa u\~<a d\~<u} [ \\ - \"\md \MU{ AO AY A\"I A\"U RA OA \"UA DU} [ \\ - \"\md \MU{ \"AO \"AY \"AI \"AU \"RA \"OA U\"A D\"U} [ \\ - \"~\md\MU{ \~"AO \~"AY \~"AI \~"AU \~"RA \~"OA U\~"A D\~"U} [ \\ -\end{quote} - - -\Latin -Rows 3 \ldots 7: Look-ahead (to check for a hiatus) breaks kerning before -`A' with tonos or psili. - -% \'AA \'AB \'AG \'AD \'AE \'AZ \'AH \'AJ \'AI \'AK \'AL \'AM \'AN \'AX -% \'AO \'AP \'AR \'AS \'AC \'AT \'AU \'AF \'AQ \'AY \'AW - -Rows 15 and 16: Like in any font encoding, there is no kerning for -non-defined accent-letter-combinations (dialytica on \LGR A O D\Latin). - -\Latin - -Downcasing should keep diacritics (of course, it cannot regenerate -``manually" dropped ones): -\LGR 'A \"I \"U \~<A $\mapsto$ \MakeLowercase{\'A \"I \"U \~<A} - % \Latin Comprehensive error message for missing symbol variants: % \LGR \textbeta\textbetasymbol % \texttheta\textthetasymbol -\Latin - \end{document} |