[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