[ << Gestione dello spazio ] | [Inizio][Contenuti][Indice] | [ Modifica delle impostazioni predefinite >> ] |
[ < Interruzioni ] | [ Su : Interruzioni ] | [ Interruzioni di pagina > ] |
4.3.1 Interruzioni di linea
Le interruzioni di linea di solito sono determinate automaticamente. Sono decise in modo che le linee non sembrino né fitte né troppo spaziate, e che le linee consecutive abbiano una densità simile.
Per forzare manualmente un’interruzione di linea dopo una stanghetta, usare
il comando \break
:
\relative c'' { c4 c c c | \break c4 c c c | }
Per impostazione predefinita, un comando \break
inserito nel mezzo di una
misura viene ignorato (e apparirà un messaggio di avvertimento durante la
compilazione del file LilyPond). L’aggiunta di una stanghetta invisibile
– ‘\bar ""’ – prima del comando \break
forzerà l’interruzione
di linea:
\relative c'' { c4 c c \bar "" \break c | c4 c c c | }
Un comando \break
successivo a una stanghetta viene ignorato se la
misura precedente termina nel mezzo di una nota (per esempio, quando un
gruppo irregolare inizia in una misura e termina in un’altra). In questo
caso conviene togliere l’incisore Forbid_line_break_engraver
dal
contesto Voice
e usare una costruzione musicale simultanea inserendo
il \break
nel punto giusto della seconda voce:
\new Voice \with { \remove Forbid_line_break_engraver } \relative { << { c''2. \tuplet 3/2 { c4 c c } c2. | } { s1 | \break s1 | } >> }
Analogalmente, le interruzioni di linea vengono ignorate quando le travature
oltrepassano una stanghetta. Tale comportamento predefinito può
essere modificato col comando \override Beam.breakable = ##t
:
\relative c'' { \override Beam.breakable = ##t c2. c8[ c | \break c8 c] c2. | }
Il comando \noBreak
impedisce un’interruzione di linea sulla
stanghetta in cui è inserito.
In una partitura, l’interruzione di linea automatica è vietata per
la musica compresa tra i comandi \autoLineBreaksOff
e
\autoLineBreaksOn
. Per impedire anche le interruzioni di
pagina, usare i comandi \autoBreaksOff
e \autoBreaksOn
.
Le interruzioni manuali non sono interessate da questi comandi.
Nota che bloccare le interruzioni di linea automatiche potrebbe
far andare la musica oltre il margine destro se questa non può
essere contenuta in una linea.
Le interruzioni di linea automatiche (ma non le interruzioni di pagina)
possono essere abilitate per singole stanghette usando
\once \autoLineBreaksOn
all’inizio di una stanghetta.
Ciò identifica un’interruzione di linea permessa, invece che forzata.
Le impostazioni fondamentali che influenzano la spaziatura della linea
sono indent
e line-width
, impostate nel blocco
\layout
: regolano l’indentazione della prima linea e la
lunghezza delle linee.
Se ragged-right
è impostato su vero nel blocco \layout
, allora
i sistemi terminano alla loro naturale lunghezza orizzontale, invece di
essere allungati orizzontalmente per riempire l’intera linea. Ciò è
utile per brevi frammenti e per verificare quanto è stretta la spaziatura
naturale.
L’opzione ragged-last
è simile a ragged-right
, ma agisce
soltanto sull’ultima linea del brano.
\layout { indent = 0\mm line-width = 150\mm ragged-last = ##t }
Per inserire interruzioni di linea a intervalli regolari usare \break
separato da pause spaziatrici e ripetuto con \repeat
. Per esempio,
per interrompere le seguenti 28 misure (considerando un tempo di 4/4) esattamente
ogni 4 misure, usare:
<< \repeat unfold 7 { s1 \noBreak s1 \noBreak s1 \noBreak s1 \break } { la vera musica… } >>
Comandi predefiniti
\break
,
\noBreak
,
\autoBreaksOff
,
\autoBreaksOn
,
\autoLineBreaksOff
,
\autoLineBreaksOn
.
Frammenti di codice selezionati
Usare una voce apposita per le interruzioni
Spesso è più facile gestire l’informazione sulle interruzioni di linea
e di pagina tenendola separata dalla musica grazie a un’ulteriore voce
che contenga solo pause spaziatrici e i comandi
\break
, \pageBreak
e altre informazioni di formattazione.
Questo modello diventa utile specialmente quando si modifica
line-break-system-details
e altre utili ma lunghe
proprietà di NonMusicalPaperColumnGrob
.
music = \relative c'' { c4 c c c } \score { \new Staff << \new Voice { s1 * 2 \break s1 * 3 \break s1 * 6 \break s1 * 5 \break } \new Voice { \repeat unfold 2 { \music } \repeat unfold 3 { \music } \repeat unfold 6 { \music } \repeat unfold 5 { \music } } >> }
Vedi anche
Guida alla notazione:
Variabili di \paper
per l’interruzione di linea,
Il blocco \layout
.
Frammenti: Spacing.
Guida al funzionamento interno: LineBreakEvent.
Problemi noti e avvertimenti
L’inserimento dei comandi \autoLineBreaksOff
o \autoBreaksOff
prima della musica produrrà dei messaggi di errore. Inserire sempre questi
comandi dopo la musica.
[ << Gestione dello spazio ] | [Inizio][Contenuti][Indice] | [ Modifica delle impostazioni predefinite >> ] |
[ < Interruzioni ] | [ Su : Interruzioni ] | [ Interruzioni di pagina > ] |