1

Can I set \brokenpenalty=10000 for odd page only?
(for prevent hyphenation from odd to even page. Not from even to odd).
Should I use everypage or atbegshi?

  • 1
    in general you can not do this: the value is set per paragraph and you don't know which page or pages the text will fall on at the point that the settings need to be made. (The paragraph may be more than one page, of a figure may be inserted and push this text to the next page or ... – David Carlisle Oct 26 '17 at 8:30
  • @DavidCarlisle true but with normal documents the assumption that a paragraph is less than a page is reasonable. And if the assumption fails then the worst that happens is that for one page the algorithm makes its decision with wrong data. – Frank Mittelbach Oct 28 '17 at 8:56
4

Yes. Use everypage and write:

\AddEverypageHook{%
    \ifodd\c@page%
      \global\brokenpenalty=110%
    \else%
      \global\brokenpenalty=10000%
    \fi%
}

You may also need to use \makeatletter ... \makeatother to get access to \c@page.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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