[texhax] Greek in omega under texlive-2005
Eftaxiopoulos Dimitrios
eftaxiop at central.ntua.gr
Wed Feb 28 10:13:42 CET 2007
Hello,
I have the simple file test.tex
\documentclass[12pt]{article}
\usepackage{omega}
\usepackage{keyval}
\input{greek.bgd}
\begin{document}
α
\end{document}
which I expect to yield the greek
small letter alpha, in test.dvi. This is what happens in Debian linux sarge,
tetex, when I run
lambda test
and get as output the folowing
This is Omega, Version 3.14159--1.23.2.1 (Web2C 7.4.5)
Copyright (c) 1994--2000 John Plaice and Yannis Haralambous
(test.tex
LaTeX2e <2001/06/01>
Babel <v3.7h> and hyphenation patterns for english, spanish, russian, greek,
in
uit, dumylang, nohyphenation, loaded.
(/usr/share/texmf/tex/latex/base/article.cls
Document Class: article 2001/04/21 v1.4e Standard LaTeX document class
(/usr/share/texmf/tex/latex/base/size12.clo))
(/usr/share/texmf/omega/lambda/base/omega.sty
(/usr/share/texmf/omega/plain/base/grlccode.tex
Greek lccodes...
)) (/usr/share/texmf/tex/latex/graphics/keyval.sty)
(/usr/share/texmf/omega/lambda/base/greek.bgd)
No file test.aux.
(/usr/share/texmf/omega/lambda/base/ot1omlgc.fd) [1] (test.aux) )
Output written on test.dvi (1 page, 268 bytes).
Transcript written on test.log.
Then
oxdvi -not1lib test
gives what I expect.
When I run the same file test.tex in Debian linux etch, where omega is under
texlive (tetex not
installed), the output of
lambda test
is
This is Omega, Version 3.141592-1.23.2.3 (Web2C 7.5.5)
Copyright (c) 1994--2000 John Plaice and Yannis Haralambous
(test.tex
LaTeX2e <2003/12/01>
Antomega <v0.7> and hyphenation patterns for english, dumylang, nohyphenation,
loaded.
(/usr/share/texmf-texlive/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf-texlive/tex/latex/base/size12.clo))
(/usr/share/texmf-texlive/tex/lambda/base/omega.sty
(/usr/share/texmf-texlive/tex/plain/omega/grlccode.tex
Greek lccodes...
)) (/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty)
(/usr/share/texmf-texlive/tex/lambda/base/greek.bgd
! Undefined control sequence.
l.300 \language=\l at greek
?
! Missing number, treated as zero.
<to be read again>
\def
l.302 \greekmarks
?
) (test.aux) (/usr/share/texmf-texlive/tex/lambda/base/ot1omlgc.fd) [1]
(test.aux) )
Output written on test.dvi (1 page, 268 bytes).
Transcript written on test.log.
When I try
oxdvi
I get nothing on the screen and a warning message
xdvi.bin: Warning: Character 177 not defined in font omlgc
I use the attached hacked greek.bgd file. The test.tex file is written in
iso-8859-7 encoding. If I uncomment the two lines in greek.bgd I don't get any
lambda output error, but oxdvi doesn't give anything different.
Any hint?
Dimitris
-------------- next part --------------
\makeatletter
\ocp\Uppercase=uppercase
\ocplist\UppercaseOCP=
\addbeforeocplist 3000 \Uppercase
\nullocplist
\ocp\Identity=id
\ocp\GrTexUni=grpo2uni
\ocp\GrTexTildeUni=grpotilde2uni
\ocp\GrMacUni=macgr2uni
\ocp\GrIsoUni=isogr2uni
\ocp\GrIsoUniVerbatim=isogr2uni-verbatim
% \ocp\GrIsoUniVerbatim=id
\ocp\GrMixedUni=mixedgreek2uni
\ocp\GrUniToFont=uni2greek
\ocp\GrUniToFontVerbatim=uni2greek-verbatim
% \ocp\GrUniToFontVerbatim=id
\ocp\GrMedBeta=medbeta
\ocp\GrApostrophe=apostr2psili
\ocp\InvertediotaOCP=inverted-iota-upsilon
\ocp\lunatesigmaOCP=lunatesigma
\ocp\alphatonosOCP=alphatonos
\ocplist\GreekIsoOCP=
\addbeforeocplist 300 \alphatonosOCP
\addbeforeocplist 500 \GrIsoUni
\addbeforeocplist 1750 \GrMedBeta
\addbeforeocplist 2000 \GrApostrophe
\addbeforeocplist 3500 \GrUniToFont
\nullocplist
\ocplist\nomedbeta=
\addbeforeocplist 1750 \Identity
\nullocplist
\ocplist\nograpostrophe=
\addbeforeocplist 2000 \Identity
\nullocplist
\ocplist\invertediota=
\addbeforeocplist 2050 \InvertediotaOCP
\nullocplist
\ocplist\lunatesigma=
\addbeforeocplist 2100 \lunatesigmaOCP
\nullocplist
\ocplist\GreekMacOCP=
\addbeforeocplist 500 \GrMacUni
\addbeforeocplist 1750 \GrMedBeta
\addbeforeocplist 2000 \GrApostrophe
\addbeforeocplist 3500 \GrUniToFont
\nullocplist
\ocplist\GreekMacOCPnomedbeta=
\addbeforeocplist 500 \GrMacUni
%\addbeforeocplist 1750 \GrMedBeta
\addbeforeocplist 2000 \GrApostrophe
\addbeforeocplist 3500 \GrUniToFont
\nullocplist
\ocplist\GreekTexOCP=
\addbeforeocplist 500 \GrTexUni
\addbeforeocplist 1750 \GrMedBeta
\addbeforeocplist 2000 \GrApostrophe
\addbeforeocplist 3500 \GrUniToFont
\nullocplist
\ocplist\GreekTexTildeOCP=
\addbeforeocplist 500 \GrTexTildeUni
\addbeforeocplist 1750 \GrMedBeta
\addbeforeocplist 2000 \GrApostrophe
\addbeforeocplist 3500 \GrUniToFont
\nullocplist
\ocplist\GreekMixedOCP=
\addbeforeocplist 500 \GrMixedUni
\addbeforeocplist 1750 \GrMedBeta
\addbeforeocplist 2000 \GrApostrophe
\addbeforeocplist 3500 \GrUniToFont
\nullocplist
\ocplist\GreekVerbatimOCP=
\addbeforeocplist 500 \GrIsoUniVerbatim
\addbeforeocplist 3500 \GrUniToFontVerbatim
\nullocplist
\def\tmp at iso{iso}
\def\tmp at mac{mac}
\def\tmp at tex{tex}
\def\tmp at textilde{textilde}
\def\tmp at mixed{mixed}
\let\eventualNMB=\relax
\let\eventualNGA=\relax
\let\eventualIIU=\relax
\let\eventualLS=\relax
\def\GreekOCP{\pushocplist\GreekIsoOCP\eventualNMB\eventualNGA\eventualIIU\eventualLS}
\def\GreekLetterStigma{ÓÔ}
\def\GreekSmallLetterStigma{óô}
\def\GreekSmallLetterDigamma{^^^^03dd}
\define at key{greek}{input}[iso]{%
\def\@tmpa{#1}\ifx\@tmpa\tmp at iso\def\GreekOCP{\pushocplist\GreekIsoOCP\eventualNMB\eventualNGA\eventualIIU\eventualLS}%
\else\ifx\@tmpa\tmp at mac\def\GreekOCP{\pushocplist\GreekMacOCP\eventualNMB\eventualNGA\eventualIIU\eventualLS}%
\else\ifx\@tmpa\tmp at tex\def\GreekOCP{\pushocplist\GreekTexOCP\eventualNMB\eventualNGA\eventualIIU\eventualLS}%
\else\ifx\@tmpa\tmp at textilde\def\GreekOCP{\pushocplist\GreekTexTildeOC\eventualNMB\eventualNGA\eventualIIU\eventualLSP}%
\else\ifx\@tmpa\tmp at mixed\def\GreekOCP{\pushocplist\GreekMixedOCP\eventualNMB\eventualNGA\eventualIIU\eventualLS}%
\fi\fi\fi\fi\fi}
\def\tmp at oneform{oneform}
\def\tmp at twoform{twoform}
\define at key{greek}{beta}[twoform]{\def\@tmpa{#1}\ifx\@tmpa\tmp at oneform\def\eventualNMB{\pushocplist\nomedbeta}%
\typeout{Option: Form of beta = oneform}%
\else\let\eventualNMB=\relax\typeout{Option: Form of beta = twoform}\fi}
\def\tmp at apolatin{latin}
\def\tmp at apogreek{different}
\define at key{greek}{apostrophe}[different]{\def\@tmpa{#1}\ifx\@tmpa\tmp at apolatin\def\eventualNGA{\pushocplist\nograpostrophe}%
\else\let\eventualNGA=\relax\fi}
\def\tmp at stigma{stigma}
\def\tmp at sigmatau{sigmatau}
\def\tmp at oldstigma{oldstigma}
\define at key{greek}{numbersix}[sigmatau]{\def\@tmpa{#1}\ifx\@tmpa\tmp at stigma%
\def\GreekSmallLetterStigma{^^^^03db}\def\GreekLetterStigma{^^^^03da}%
\else\ifx\@tmpa\tmp at oldstigma%
\def\GreekSmallLetterStigma{^^^^03db}\def\GreekLetterStigma{^^^^03fd}\else%
\def\GreekSmallLetterStigma{óô}\def\GreekLetterStigma{ÓÔ}\fi\fi}
\def\tmp at yes{yes}
\def\tmp at no{no}
\define at key{greek}{invertediota}[no]{\def\@tmpa{#1}\ifx\@tmpa\tmp at yes\def\eventualIIU{\pushocplist\invertediota}%
\typeout{Option: Inverted iota = yes}%
\else\let\eventualIIU=\relax\typeout{Option: Inverted iota = no}\fi}
\def\tmp at std{std}
\def\tmp at alt{alt}
\define at key{greek}{digamma}[std]{\def\@tmpa{#1}\ifx\@tmpa\tmp at alt\def\GreekSmallLetterDigamma{^^^^03fb}%
\else\GreekSmallLetterDigamma{^^^^03dd}\fi}
\def\tmp at lunate{lunate}
\define at key{greek}{sigma}[twoform]{\def\@tmpa{#1}\ifx\@tmpa\tmp at lunate\def\eventualLS{\pushocplist\lunatesigma}%
\else\let\eventualLS=\relax\fi}
\catcode`\@=11
\def\greekmarks{%
\def\markboth##1##2{\gdef\@themark{{\GreekOCP##1}{\GreekOCP##2}}{%
\let\protect\@unexpandable at protect%
\let\label\relax \let\index\relax \let\glossary\relax%
\mark{\@themark}}\if at nobreak\ifvmode\nobreak\fi\fi}
\def\markright##1{{\let\protect\@unexpandable at protect%
\let\label\relax \let\index\relax \let\glossary\relax%
\expandafter\@markright\@themark{##1}\mark{\@themark}}\if at nobreak\ifvmode\nobreak\fi\fi}%
\def\@markright##1##2##3{\gdef\@themark{{\GreekOCP##1}{\GreekOCP##3}}}}
\def\monocaptions{\def\refname{ÁíáöïñÝò}%
\def\abstractname{Ðåñßëçøç}%
\def\bibname{Âéâëéïãñáößá}%
\def\prefacename{Ðñüëïãïò}%
\def\chaptername{ÊåöÜëáéï}%
\def\appendixname{ÐáñÜñôçìá}%
\def\contentsname{Ðåñéå÷üìåíá}%
\def\listfigurename{ÊáôÜëïãïò ó÷çìÜôùí}%
\def\listtablename{ÊáôÜëïãïò ðéíÜêùí}%
\def\indexname{ÅõñåôÞñéï}%
\def\figurename{Ó÷Þìá}%
\def\tablename{Ðßíáêáò}%
\def\partname{ÌÝñïò}%
\def\pagename{Óåëßäá}%
\def\seename{âëÝðå}%
\def\alsoname{âëÝðå åðßóçò}%
\def\enclname{ÓõíçììÝíá}%
\def\ccname{Êïéíïðïßçóç}%
\def\headtoname{Ðñïò}%
\def\proofname{Áðüäåéîç}% for AMS-\LaTeX
\def\today{\number\day \space%
\ifcase\month\or
Éáíïõáñßïõ\or Öåâñïõáñßïõ\or Ìáñôßïõ\or Áðñéëßïõ\or
ÌáÀïõ\or Éïõíßïõ\or Éïõëßïõ\or Áõãïýóôïõ\or
Óåðôåìâñßïõ\or Ïêôùâñßïõ\or Íïåìâñßïõ\or Äåêåìâñßïõ\fi
\space \number\year}
}
\def\polydemocaptions{\def\refname{>Áíáöïñ`åò}%
\def\abstractname{Ðåñßëçøç}%
\def\bibname{Âéâëéïãñáößá}%
\def\prefacename{Ðñüëïãïò}%
\def\chaptername{ÊåöÜëáéï}%
\def\appendixname{ÐáñÜñôçìá}%
\def\contentsname{Ðåñéå÷üìåíá}%
\def\listfigurename{ÊáôÜëïãïò ó÷çìÜôùí}%
\def\listtablename{ÊáôÜëïãïò ðéíÜêùí}%
\def\indexname{Å>õñåôÞñéï}%
\def\figurename{Ó÷=çìá}%
\def\tablename{Ðßíáêáò}%
\def\partname{ÌÝñïò}%
\def\pagename{Óåëßäá}%
\def\seename{âëÝðåô}%
\def\alsoname{âëÝðå >åðßóçò}%
\def\enclname{ÓõíçììÝíá}%
\def\ccname{Êïéíïðïßçóç}%
\def\headtoname{Ðñ`ïò}%
\def\proofname{>Áðüäåéîç}% for AMS-\LaTeX
\def\today{\number\day \space%
\ifcase\month\or
>Éáíïõáñßïõ\or Öåâñïõáñßïõ\or Ìáñôßïõ\or >Áðñéëßïõ\or
ÌáÀïõ\or >Éïõíßïõ\or >Éïõëßïõ\or Á>õãïýóôïõ\or
Óåðôåìâñßïõ\or >Ïêôùâñßïõ\or Íïåìâñßïõ\or Äåêåìâñßïõ\fi
\space \number\year}
}
\def\polykathacaptions{\def\refname{>Áíáöïñá`é}%
\def\abstractname{Ðåñßëçøéò}%
\def\bibname{Âéâëéïãñáößá}%
\def\prefacename{Ðñüëïãïò}%
\def\chaptername{ÊåöÜëáéïí}%
\def\appendixname{ÐáñÜñôçìá}%
\def\contentsname{Ðåñéå÷üìåíá}%
\def\listfigurename{ÊáôÜëïãïò ó÷çìÜôùí}%
\def\listtablename{ÊáôÜëïãïò ðéíÜêùí}%
\def\indexname{Å>õñåôÞñéïí}%
\def\figurename{Ó÷=çìá}%
\def\tablename{Ðßíáî}%
\def\partname{ÌÝñïò}%
\def\pagename{Óåë`éò}%
\def\seename{<üñá}%
\def\alsoname{<üñá >åðßóçò}%
\def\enclname{ÓõíçììÝíá}%
\def\ccname{Êïéíïðïßçóéò}%
\def\headtoname{Ðñ`ïò}%
\def\proofname{>Áðüäåéîéò}% for AMS-\LaTeX
\def\today{\number\day \space%
\ifcase\month\or
>Éáíïõáñßïõ\or Öåâñïõáñßïõ\or Ìáñôßïõ\or >Áðñéëßïõ\or
ÌáÀïõ\or >Éïõíßïõ\or >Éïõëßïõ\or Á>õãïýóôïõ\or
Óåðôåìâñßïõ\or >Ïêôùâñßïõ\or Íïåìâñßïõ\or Äåêåìâñßïõ\fi
\space \number\year}
}
\monocaptions
\def\tmp at monotonic{monotonic}
\def\tmp at polytonic{polytonic}
\define at key{greek}{accents}[monotonic]{\def\@tmpa{#1}\ifx\@tmpa\tmp at monotonic%
\monocaptions\else\polydemocaptions\fi}
\def\tmp at katharevousa{katharevousa}
\define at key{greek}{style}[katharevousa]{\def\@tmpa{#1}\ifx\@tmpa\tmp at katharevousa%
\polykathacaptions\fi}
\def\greek at alph#1{%
\greeknumber{#1}}
\def\greek at Alph#1{%
\uppercase{\greeknumber{#1}}}
\let\@alph\@greek at alph
\let\@Alph\@greek at Alph
\def\labelitemi{--}%
\def\labelitemii{--}%
\def\labelitemiii{--}%
\def\labelitemiv{--}
\newcounter{hundredmillions}
\newcounter{tenmillions}
\newcounter{millions}
\newcounter{hundredthousands}
\newcounter{tenthousands}
\newcounter{thousands}
\newcounter{hundreds}
\newcounter{tens}
\newcounter{units}
\newcounter{belowhundred}
\newcounter{grnumber}
\def\numbersix{^^^^03db}
\def\grnumbertmp#1#2#3{\ifcase\value{#1}\or ñ\or ó\or ô\or õ\or ö\or ÷\or ø\or ù\or =ð\else rien\fi%
\ifcase\value{#2}\or é\or ê\or ë\or ì\or í\or î\or ï\or ð\or =÷\else rien\fi%
\ifcase\value{#3}\or á\or \/â\/\or ã\or ä\or å\or \numbersix\or æ\or ç\or è\else rien\fi}
\def\greeknumber#1{%
\setcounter{grnumber}{#1}%
\ifthenelse{\value{grnumber} > 999999999}{\typeout{Number too big!}}{%
\ifthenelse{\value{grnumber} > 999999}{^^^^0375^^^^0375\kern.5pt}{\ifthenelse{\value{grnumber} > 999}{^^^^0375\kern.5pt}{}}%
\setcounter{hundredmillions}{\value{grnumber}/100000000}%
\addtocounter{grnumber}{-100000000*\value{hundredmillions}}%
\setcounter{tenmillions}{\value{grnumber}/10000000}%
\addtocounter{grnumber}{-10000000*\value{tenmillions}}%
\setcounter{millions}{\value{grnumber}/1000000}%
\addtocounter{grnumber}{-1000000*\value{millions}}%
\setcounter{hundredthousands}{\value{grnumber}/100000}%
\addtocounter{grnumber}{-100000*\value{hundredthousands}}%
\setcounter{tenthousands}{\value{grnumber}/10000}%
\addtocounter{grnumber}{-10000*\value{tenthousands}}%
\setcounter{thousands}{\value{grnumber}/1000}%
\addtocounter{grnumber}{-1000*\value{thousands}}%
\setcounter{hundreds}{\value{grnumber}/100}%
\addtocounter{grnumber}{-100*\value{hundreds}}%
\setcounter{tens}{\value{grnumber}/10}%
\addtocounter{grnumber}{-10*\value{tens}}%
\setcounter{units}{\value{grnumber}}%
\grnumbertmp{hundredmillions}{tenmillions}{millions}\grnumbertmp{hundredthousands}{tenthousands}{thousands}\grnumbertmp{hundreds}{tens}{units}%
\setcounter{belowhundred}{\value{hundreds}+\value{tens}+\value{units}}%
\ifthenelse{\value{belowhundred}>0}{^^^^0374}{}}}
\def\greektoday{\greeknumber{\number\day} \space%
\ifcase\month\or
>Éáíïõáñßïõ\or Öåâñïõáñßïõ\or Ìáñôßïõ\or >Áðñéëßïõ\or
ÌáÀïõ\or >Éïõíßïõ\or >Éïõëßïõ\or Á>õãïýóôïõ\or
Óåðôåìâñßïõ\or >Ïêôùâñßïõ\or Íïåìâñßïõ\or Äåêåìâñßïõ\fi
\space \greeknumber{\number\year}}
\def\OTPGreekIso{\GreekOCP}
%\newenvironment{greek}[1][]{%
%\setkeys{greek}{#1}\def\addcontentsline##1##2##3{%
% \addtocontents{##1}{\protect\contentsline{##2}{\protect\GreekOCP##3}{\thepage}}}%
%\def\@wrindex##1{%
% \protected at write\@indexfile{}%
% {\string\indexentry{##1}{\thepage}} \endgroup
% \@esphack}%
%\protect\language=\l at greek\protect\greeklccodes\protect\greekmarks%
%\def\verbatim at font{\clearocplists\pushocplist\GreekVerbatimOCP\usefont{UT1}{monospace}{m}{n}}%
%\protect\GreekOCP}{}
\newcommand{\localgreek}[1]{{\GreekOCP#1}}
\language=\l at greek
%\greeklccodes
\greekmarks
\def\@wrindex#1{%
\protected at write\@indexfile{}%
{\string\indexentry{{\protect\OTPGreekIso#1}}{\thepage}} \endgroup
\@esphack}%
\def\verbatim at font{\clearocplists\pushocplist\GreekVerbatimOCP\usefont{UT1}{monospace}{m}{n}}
\GreekOCP
\endinput
More information about the texhax
mailing list