LilyPond Notation Reference: 4.3.2 Page breaking

### 4.3.2 Page breaking

The default page breaking may be overridden by inserting `\pageBreak` or `\noPageBreak` commands. These commands are analogous to `\break` and `\noBreak`. They should be inserted at a bar line. These commands force and forbid a page-break from happening. Of course, the `\pageBreak` command also forces a line break.

The `\pageBreak` and `\noPageBreak` commands may also be inserted at top-level, between scores and top-level markups.

There are also analogous settings to `ragged-right` and `ragged-last` which have the same effect on vertical spacing: `ragged-bottom` and `ragged-last-bottom`. If set to `##t` the systems on all pages or just the last page respectively will not be justified vertically. See Fixed vertical spacing `\paper` variables.

Page breaks are computed by the `page-breaking` function. LilyPond provides three algorithms for computing page breaks, `ly:optimal-breaking`, `ly:page-turn-breaking` and `ly:minimal-breaking`. The default is `ly:optimal-breaking`, but the value can be changed in the `\paper` block:

>     \paper {
>       page-breaking = #ly:page-turn-breaking
>     }

When a book has many scores and pages, the page breaking problem may be difficult to solve, requiring large processing time and memory. To ease the page breaking process, `\bookpart` blocks are used to divide the book into several parts: the page breaking occurs separately on each part. Different page breaking functions may also be used in different book parts.

>     \bookpart {
>       \header {
>         subtitle = "Preface"
>       }
>       \paper {
>          %% In a part consisting mostly of text,
>          %% ly:minimal-breaking may be preferred
>          page-breaking = #ly:minimal-breaking
>       }
>       \markup { … }
>       …
>     }
>     \bookpart {
>       %% In this part, consisting of music, the default optimal
>       %% page breaking function is used.
>       \header {
>         subtitle = "First movement"
>       }
>       \score { … }
>       …
>     }

#### Predefined commands

`\pageBreak`, `\noPageBreak`.

#### See also

Notation Reference: `\paper` variables for page breaking.

Snippets: Spacing.

Other languages: deutsch, español, français, 日本語.

#### LilyPond — Notation Reference