Apologies for bug reporting here, but thought I might as well. My current banner is:
$ pdflatex -version | grep 'TeX Live'
pdfTeX 3.14159265-2.6-1.40.15 (TeX Live 2014)
The problem seems to be described in Printing sentence in ancient Greek – comp.text.tex, and in my case stems from here: Getting Texlive version in pdflatex?; regardless of which example I try, say:
documentclass{article}
defgettexliveversion#1(#2 #3 #4#5#6#7#8)#9relax{#4#5#6#7}
edeftexliveversion{expandaftergettexliveversionpdftexbannerrelax}
% usepackage{unravel}
% [Printing sentence in ancient Greek - Google Groups](https://groups.google.com/forum/?_escaped_fragment_=topic/comp.text.tex/ajGFiDqpvW0#!topic/comp.text.tex/ajGFiDqpvW0)
% fail at step 16200 (16190)
% unravel{
usepackage[greek,english]{babel}
usepackage[utf8]{inputenc}
ifnumtexliveversion<2013
usepackage[LGRx,T1]{fontenc}
else
usepackage[T1]{fontenc}
fi
% }
listfiles
begin{document}
The starting verse of the Iliad is
begin{quotation}greektext
Μῆνιν ἄειδε, θεά, Πηληιάδεω Ἀχιλῆος
end{quotation}
and it's really great.
end{document}
… it fails with:
Package babel Warning: No hyphenation patterns were preloaded for
(babel) the language `greek' into the format.
(babel) Please, configure your TeX system to add them and
(babel) rebuild the format. Now I will use the patterns
(babel) preloaded for english instead on input line 44.
! Undefined control sequence.
l.50 ...bbl@monogreek bbl@monogreek=l@monogreek
If I keep on pressing ENTER at each error, eventually it compiles a PDF, and the listfiles output is:
*File List*
article.cls 2007/10/19 v1.4h Standard LaTeX document class
size10.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
babel.sty 2014/09/25 3.9l The Babel package
greek.ldf 2014/09/18 v1.9b Greek support for the babel system
lgrenc.def 2013/12/02 v0.11.2 LGR Greek font encoding definitions
greek-fontenc.def 2013/11/28 v0.11 Common Greek font encoding definitions
english.ldf 2012/08/20 v3.3p English support from the babel system
inputenc.sty 2014/04/30 v1.2b Input encoding file
utf8.def 2008/04/05 v1.1m UTF-8 support for inputenc
t1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
ot1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
omsenc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc
lgrenc.dfu 2014/09/14 1.5 UTF-8 support for Greek
fontenc.sty
t1enc.def 2005/09/27 v1.99g Standard LaTeX file
lgrcmr.fd 2013/09/01 v1.0 Greek European Computer Regular
***********
The comp.text.tex thread actually mentions:
Actually, to get this far I edited
/usr/share/texlive/texmf-local/texmf-compat/tex/latex/greek.ldf
replacing
ifxl@monogreek@undefined
adddialect@monogreek 0fi
ifxl@ancientgreek@undefined
adddialect@ancientgreek 0fi
by
ifxl@monogreek@undefined
adddialectl@monogreek 0fi
ifxl@ancientgreek@undefined
adddialectl@ancientgreek 0fi
…
The second version has l@monogreek
in the second line (for @monogreek
),
and a similar change in the fourth line.
After the change my problems go away.
For me, that snippet is in /media/texlive/2014/texmf-dist/tex/generic/babel-greek/greek.ldf
, and contains:
...
ProvidesLanguage{greek}
[2014/09/18 v1.9b Greek support for the babel system]
%% File `babel-greek.dtx'
...
ifxl@greek@undefined
@nopatterns{greek}
adddialectl@greek 0fi
ifxl@monogreek@undefined
adddialect@monogreek 0fi
ifxl@ancientgreek@undefined
adddialect@ancientgreek 0fi
Clearly, it should be adddialectl@monogreek
, not adddialect@monogreek
as it is; and indeed, when I make that change as well, the document compiles just fine.
The thing is this: I installed TexLive from scratch (install-tl
), tried to compile the given MWE, it fails with given error – had to hack babel-greek/greek.ldf
as described to get it to compile. So, there’s either faulty code in greek.ldf
and it’s a bug — or I miss some package, and Latex cannot tell me which with the usual “file not found” message. Since no one else can reproduce this error, it is probably not a bug – but how do I find what I am missing, then?