Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I use TeX Live including the Hebrew package. I've tried to produce a simple TeX file:

\documentclass{article}
\usepackage [english,hebrew]{babel}
\begin{document}
שלום
\end{document}

but I keep getting the infamous

Package babel Warning: No hyphenation patterns were loaded for the language `Hebrew'.

I've searched all over but can't find the solution.

share|improve this question
1  
Welcome to TeX.SX! Is Hebrew hyphenated at all? –  egreg Dec 4 '12 at 12:00
1  
@egreg: it may be hyphenate-able, but not with anything obvious on ctan. (it's a bit sad, if it isn't hyphenatable, that babel doesn't "know", and throws the warning anyway.) –  wasteofspace Dec 4 '12 at 13:47
    
@Adam, please consider accepting the answer. Alternatively, if you're getting this and then an error about missing font metrics, see these two questions. –  einpoklum May 14 '13 at 14:02
add comment

1 Answer

As far as my research in the net has been able to find, hyphenation in Hebrew is used mainly (or even uniquely) in newspaper typeset in narrow columns. There are no hyphenation pattern files for Hebrew that I know of; surely not on CTAN.

The message you get is a long standing misfeature of babel, which, when it doesn't find hyphenation patterns preloaded for a language, decides arbitrarily to use the patterns for English (\language0, to be precise).

You can cure the problem with a hack:

\documentclass{article}

% Fool babel
\makeatletter\let\l@hebrew\l@nohyphenation\makeatother

\usepackage [english,hebrew]{babel}
\begin{document}
 שלום
\end{document}

\l@hebrew is the internal command that babel looks for. You have two advantages with this: the message will not appear and you risk no wrong application of hyphenation. In my opinion, no hyphenation is better than a wrong one based on the rules for (American) English.

If you still get the message, it means that your TeX distribution doesn't define the nohyphenation pseudolanguage. The remedy then is to say

\makeatletter\chardef\l@hebrew=255 \makeatother

which works unless your TeX distribution defines hyphenation patterns for 256 languages, and this seems unlikely.

share|improve this answer
    
MiKTeX needs definitely your second solution. –  Speravir Dec 23 '12 at 0:59
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.