Considerazioni speciali

Visibilità dopo un cambio esplicito

La proprietà break-visibility controlla la visibilità delle armature di chiave e dei cambi di chiave solo all’inizio delle linee, ovvero dopo un’interruzione di linea. Non ha effetto sulla visibilità dell’armatura di chiave o della chiave che seguono un cambio esplicito dell’armatura o della chiave all’interno o alla fine di una linea. Nell’esempio seguente l’armatura di chiave che segue il cambio esplicito a Si bemolle maggiore è ancora visibile, anche se all-invisible è impostata.

\relative {
  \key g \major
  f'4 g a b
  % Tentativo di eliminazione di tutte le armature di chiave
  \override Staff.KeySignature.break-visibility = #all-invisible
  \key bes \major
  f4 g a b
  \break
  f4 g a b
  f4 g a b
}

[image of music]

La visibilità di questi cambi espliciti di armatura e di chiave è controllata dalle proprietà explicitKeySignatureVisibility e explicitClefVisibility. Sono equivalenti alla proprietà break-visibility e prendono entrambe come argomento un vettore di tre booleani o le funzioni predefinite elencate prima, proprio come break-visibility. Entrambe le proprietà appartengono al contesto Staff, non agli oggetti della formattazione stessi, dunque si impostano col comando \set. La loro impostazione predefinita è all-visible. Queste proprietà regolano solo la visibilità di armature di chiave e chiavi risultanti da cambi espliciti e non quelli all’inizio delle linee; per eliminare questi ultimi bisogna sempre sovrascrivere break-visibility nell’oggetto appropriato.

\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \override Staff.KeySignature.break-visibility = #all-invisible
  \key bes \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Visibilità dei bequadri

Per eliminare i bequadri stampati su un cambio di chiave esplicito, impostare la proprietà del contesto Staff printKeyCancellation su #f:

\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \set Staff.printKeyCancellation = ##f
  \override Staff.KeySignature.break-visibility = #all-invisible
  \key bes \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Con queste modifiche restano solo le alterazioni accanto alle note per indicare il cambio di armatura.

Nota bene che quando si cambia l’armatura su Do maggiore o La minore i bequadri sono l’unica indicazione del cambio di chiave. In questo caso impostando printKeyCancellation su #f non si ottiene alcun effetto:

\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \set Staff.printKeyCancellation = ##f
  \key c \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Per sopprimere i bequadri anche quando la tonalità passa a Do maggiore o La minore, sovrascrivere la visibilità del grob KeyCancellation:

\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \override Staff.KeyCancellation.break-visibility = #all-invisible
  \key c \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Battute automatiche

In un caso particolare, la stampa delle stanghette può essere disattivata impostando la proprietà automaticBars nel contesto Score. Se impostata su #f, le stanghette non verranno stampate automaticamente; devono invece essere create esplicitamente con un comando \bar. Diversamente dal comando predefinito \cadenzaOn, le misure vengono comunque contate. La generazione delle battute riprenderà in base a quel conteggio se questa proprietà viene poi impostata su #t. Se impostata su #f, le interruzioni di linea possono trovarsi solo su comandi \bar espliciti.

Chiavi trasposte

Il piccolo simbolo di trasposizione sulle chiavi trasposte è prodotto dall’oggetto di formattazione ClefModifier. La sua visibilità è ereditata automaticamente dall’oggetto Clef, dunque non è necessario applicare una modifica di break-visibility agli oggetti ClefModifier per sopprimere i simboli di trasposizione per le chiavi invisibili.

Per cambi di chiave espliciti, la proprietà explicitClefVisibility regola sia il simbolo della chiave che qualsiasi simbolo di trasposizione ad esso associato.

Vedi anche

Manuale di apprendimento: Visibilità e colore degli oggetti.


Guida alla Notazione di LilyPond v2.25.21 (ramo di sviluppo).