[Tex/LaTex] Reduce number of consecutive lines with hyphenation

hyphenation

How can I reduce the number of consecutive lines ending in a hyphenation?
I have a very long document (600 pages) and need an automatic way to tell latex the maximum number of lines ending in a hyphenation. I have seen occurences with 4 consecutive lines with hyphenation, my publisher asks for no more than 3.

I use xelatex, koma-script, document-class: scrbook.

Edit: a small example with a german lorem ipsum plus extra long words. Please note that this might not be the most minimal, but I thought that e.g. small page sizes (as in my book) might contribute to the problem.

\documentclass[
10pt, 
openany,        
paper=20.5cm:13.5cm,
]{scrbook}
\areaset{10.3cm}{17.0cm} 
\setlength{\oddsidemargin}{-13.4mm}
\setlength{\evensidemargin}{-5.4mm} 
\setlength{\headheight}{10pt}
\setlength{\topmargin}{-13.4mm}  
\linespread{0.958}\selectfont
\setlength{\headsep}{0.4485cm}
\usepackage[ngerman]{babel}     
\usepackage{fontspec}
\defaultfontfeatures{Numbers=OldStyle, Mapping=tex-text, Ligatures={Common}}
\usepackage{xunicode}
\usepackage{xltxtra}
\setmainfont[]{Garamond}
\setsansfont[]{Garamond}

\begin{document}
Er hörte leise Schritte hinter sich. Das bedeutete nichts Gutes. Wer würde Quartzstaublunge  ihm schon folgen, spät in der Nacht und dazu noch in dieser engen Gasse mitten im übel beleumundeten Hafenviertel? Gerade jetzt, wo er das Ding seines Lebens gedreht hatte Amrolltreppenendeimwegsteher  und mit der Beute verschwinden wollte! Hatte einer seiner zahllosen Kollegen dieselbe Amrolltreppenendeimwegsteher Idee gehabt, Amrolltreppenendeimwegsteher ihn beobachtet Amrolltreppenendeimwegsteher und abgewartet, um ihn nun um die Früchte seiner Arbeit zu erleichtern? Oder gehörten die Schritte hinter ihm zu einem der unzähligen Gesetzeshüter dieser Stadt, und die Amrolltreppenendeimwegsteher stählerne Acht um seine Handgelenke würde gleich zuschnappen? Er konnte die Aufforderung stehen Amrolltreppenendeimwegsteher zu bleiben schon hören. Gehetzt sah er sich um. Plötzlich erblickte er den schmalen Durchgang. Blitzartig drehte er sich nach rechts und verschwand zwischen den beiden Gebäuden. Amrolltreppenendeimwegsteher Beinahe wäre er dabei über den umgestürzten Mülleimer gefallen, der mitten im Weg lag. Er versuchte, Allesvomtischschmeisser sich Amrolltreppenendeimwegsteher in der Dunkelheit seinen Weg zu Amrolltreppenendeimwegsteher ertasten und erstarrte: Anscheinend Fliegenindiesuppemacher gab es keinen anderen Ausweg aus diesem kleinen Hof Haareimbadverteilersystem als den Durchgang, durch den er gekommen war. Die Schritte wurden lauter und lauter, er sah eine dunkle Gestalt um die Ecke biegen. Fieberhaft Amrolltreppenendeimwegsteher irrten seine Augen durch die nächtliche Dunkelheit und suchten einen Ausweg. War jetzt wirklich 
\end{document}

Best Answer

Perhaps you could set \doublehyphendemerits to a high value. It will discourage LaTeX from hyphenating words at the ends of two consecutive lines. For instance:

\doublehyphendemerits=1000000

Edit: (La)TeX associates "demerits" to lines when breaking them (i.e. how undesirable is the line), and tries to minimize the total demerits within a paragraph. Demerits are calculated based on the square values of the badness of the line and of the penalties associated with it (e.g. with things like \hyphenpenalty which discourages the use of hyphenation). Because it uses square values, you must set any demerits to a high value in order for them to have any effect, which is why the default is \doublehyphendemerits=10000 (whereas penalties are usually set in the hundreds by default and have a maximum value of ±10000). The exact algorithm is explained in the TeXbook and in most books on the subject.

Related Question