@c -*- coding: utf-8; mode: texinfo; -*- @ignore Translation of GIT committish: 18d03fa6a724b0102ccc47d194209802cea02f2e When revising a translation, copy the HEAD committish of the version that you are working on. For details, see the Contributors' Guide, node Updating translation committishes.. @end ignore @c \version "2.19.40" @c Translators: Federico Bruni @c Translation checkers: Luca Rossetto Casel @node Ritmi @section Ritmi @translationof Rhythms @lilypondfile[quote]{rhythms-headword.ly} Questa sezione tratta i ritmi, le pause, le durate, la disposizione delle travature e le battute. @menu * Inserimento delle durate:: * Inserimento delle pause:: * Aspetto dei ritmi:: * Travature:: * Battute:: * Questioni ritmiche particolari:: @end menu @node Inserimento delle durate @subsection Inserimento delle durate @translationof Writing rhythms @menu * Durata:: * Gruppi irregolari:: * Scalare le durate:: * Legature di valore:: @end menu @node Durata @unnumberedsubsubsec Durata @translationof Durations @cindex durata delle note @cindex note, durata delle @cindex lunghezza delle note @cindex note, lunghezza delle @funindex \longa @funindex \breve @funindex \maxima Le durate, indicate con numeri e punti, sono indicate con i valori corrispondenti. Per esempio, una nota di un quarto si indica con un @code{4} (dato che il suo valore è un 1/4), mentre una minima si indica col @code{2} (dato che il suo valore è 1/2). Per le note più lunghe di un intero bisogna usare i comandi @code{\longa} (due volte una breve) e @code{\breve}. La minor durata esprimibile per una nota indipendente è di 128; è possibile inserire anche valori inferiori, ma solo all'interno di travature. @c Two 64th notes are needed to obtain beams @lilypond[quote,verbatim] \relative { \time 8/1 c''\longa c\breve c1 c2 c4 c8 c16 c32 c64 c128 c128 } @end lilypond Ecco gli stessi valori con la disposizione automatica delle travature disabilitata. @c not strictly "writing rhythms"; more of a "displaying" thing, @c but it's ok here. -gp @lilypond[quote,verbatim] \relative { \time 8/1 \autoBeamOff c''\longa c\breve c1 c2 c4 c8 c16 c32 c64 c128 c128 } @end lilypond Solo nella notazione per musica antica è possibile specificare una nota che dura quattro volte una breve, attraverso il comando @code{\maxima}. Per maggiori informazioni si veda @ref{Ancient notation}. @cindex durata predefinita @cindex nota, durata predefinita Se una durata viene omessa, viene mantenuta quella precedente. Il valore predefinito della prima nota è di un quarto. @lilypond[quote,verbatim] \relative { a' a a2 a a4 a a1 a } @end lilypond Le durate isolate prendono l'altezza dalla nota o accordo precedenti. @lilypond[quote,verbatim] \relative { \time 8/1 c'' \longa \breve 1 2 4 8 16 32 64 128 128 } @end lilypond @cindex note puntate @cindex punto, note @cindex note doppiamente puntate @cindex doppio punto, note @funindex . Per ottenere note puntate, si inserisce un punto (@code{.}) dopo la durata. Le figure con doppio punto si indicano aggiungendo due punti, e così via. @lilypond[quote,verbatim] \relative { a'4 b c4. b8 a4. b4.. c8. } @end lilypond Alcune durate non possono essere rappresentate soltanto con durate e punti; occorre inserire una legatura di valore tra due o più note. I dettagli sono spiegati in @ref{Ties}. Per sapere come specificare le durate delle sillabe del testo e come allineare il testo alle note, si veda @ref{Vocal music}. Le note possono essere distanziate in modo rigorosamente proporzionale alla loro durata. I dettagli relativi a questo argomento e alle impostazioni della notazione proporzionale si trovano in @ref{Proportional notation}. @funindex \dotsUp @funindex \dotsDown @funindex \dotsNeutral Di norma i punti sono spostati in su per evitare le linee del rigo, fuorché all'interno di passaggi polifonici. I punti possono essere orientati manualmente verso l'alto o verso il basso; si veda @ref{Direzione e posizionamento}. @predefined @code{\autoBeamOn}, @code{\autoBeamOff}, @code{\dotsUp}, @code{\dotsDown}, @code{\dotsNeutral}. @endpredefined @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {alternative-breve-notes.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {changing-the-number-of-augmentation-dots-per-note.ly} @seealso Glossario musicale: @rglos{breve}, @rglos{longa}, @rglos{maxima}, @rglosnamed{note value,durata}, @rglosnamed{Duration names notes and rests,Nomi di durata delle note e delle pause}. Guida alla notazione: @ref{Travature automatiche}, @ref{Ties}, @ref{Stems}, @ref{Writing rhythms}, @ref{Writing rests}, @ref{Vocal music}, @ref{Ancient notation}, @ref{Proportional notation}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Dots}, @rinternals{DotColumn}. @knownissues @c Deliberately duplicated in Durations and Rests. -gp Non c'è un limite massimo o minimo alla durata di una pausa, ma è il numero dei glifi ad essere limitato: si possono indicare pause da un centoventottesimo fino alla maxima (otto volte una semibreve). @node Gruppi irregolari @unnumberedsubsubsec Gruppi irregolari @translationof Tuplets @cindex gruppi irregolari @cindex terzine @funindex \tuplet I gruppi irregolari sono costituiti da un'espressione musicale introdotta dal comando @code{\tuplet}, che moltiplica la velocità dell'espressione musicale per una frazione: @example \tuplet @var{frazione} @{ @var{musica} @} @end example @noindent Il numeratore della frazione apparirà sopra o sotto le note; eventualmente, con l'aggiunta opzionale di una parentesi quadra. Il gruppo irregolare più comune è la terzina, in cui 3@tie{}note hanno la durata di@tie{}2: @lilypond[quote,verbatim] \relative { a'2 \tuplet 3/2 { b4 b b } c4 c \tuplet 3/2 { b4 a g } } @end lilypond @cindex raggruppamento dei gruppi irregolari @cindex gruppi irregolari, raggruppamento @noindent In caso di lunghi passaggi di gruppi irregolari, dover scrivere un comando @code{\tuplet} per ogni gruppo è scomodo. È possibile specificare direttamente la durata di un gruppo irregolare prima della musica per far sì che i gruppi siano suddivisi automaticamente: @lilypond[quote,verbatim] \relative { g'2 r8 \tuplet 3/2 8 { cis16 d e e f g g f e } } @end lilypond @cindex posizionamento della parentesi quadra del gruppo irregolare @cindex gruppo irregolare, posizionamento della parentesi quadra @funindex \tupletUp @funindex \tupletDown @funindex \tupletNeutral Le parentesi dei gruppi irregolari si possono posizionare manualmente sopra o sotto il rigo: @lilypond[quote,verbatim] \relative { \tupletUp \tuplet 3/2 { c''8 d e } \tupletNeutral \tuplet 3/2 { c8 d e } \tupletDown \tuplet 3/2 { f,8 g a } \tupletNeutral \tuplet 3/2 { f8 g a } } @end lilypond È possibile annidare i gruppi irregolari: @lilypond[quote,verbatim] \relative { \autoBeamOff c''4 \tuplet 5/4 { f8 e f \tuplet 3/2 { e[ f g] } } f4 } @end lilypond La modifica di gruppi irregolari annidati che iniziano simultaneamente richiede l'uso di @code{\tweak}. Per modificare la durata delle note senza che appaia la parentesi quadra del gruppo irregolare, si veda @ref{Scaling durations}. @predefined @code{\tupletUp}, @code{\tupletDown}, @code{\tupletNeutral}. @endpredefined @snippets @cindex formattazione del gruppo irregolare @cindex gruppo irregolare, formattazione del @cindex formattazione della terzina @cindex terzina, formattazione della @funindex tupletNumberFormatFunction @funindex tupletSpannerDuration @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {entering-several-tuplets-using-only-one--tuplet-command.ly} @cindex gruppo irregolare, modifiche del numero del @cindex numero del gruppo irregolare, modifiche del @funindex TupletNumber @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {changing-the-tuplet-number.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {non-default-tuplet-numbers.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {controlling-tuplet-bracket-visibility.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {permitting-line-breaks-within-beamed-tuplets.ly} @seealso Glossario musicale: @rglosnamed{triplet,terzina}, @rglosnamed{tuplet,gruppo irregolare}, @rglosnamed{polymetric,polimetrico}. Manuale di apprendimento: @rlearning{Metodi di modifica}. Guida alla notazione: @ref{Direzione e posizionamento}, @ref{Time administration}, @ref{Scaling durations}, @ref{Il comando tweak}, @ref{Polymetric notation}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{TupletBracket}, @rinternals{TupletNumber}, @rinternals{TimeScaledMusic}. @node Scalare le durate @unnumberedsubsubsec Scalare le durate @translationof Scaling durations @cindex scalare le durate @cindex durate, scalare La durata di singole note, pause o accordi può essere moltiplicata per una frazione @code{N/M} aggiungendo @code{*N/M} (o @code{*N} se @code{M} è 1). Questo non cambierà l'aspetto delle note o delle pause, ma la durata così alterata verrà utilizzata per calcolare la posizione all'interno della misura e per impostare la durata nel file MIDI. Si possono combinare molteplici fattori, come @code{*L*M/N}. I fattori fanno parte della durata: quindi se non si specifica una durata per le note successive, la durata ripresa dalla nota precedente includerà il fattore di scalatura. Nell'esempio seguente le prime tre note occupano esattamente due tempi, ma non sono indicate come gruppo irregolare. @lilypond[quote,verbatim] \relative { \time 2/4 % Trasforma le durate in terzine a'4*2/3 gis a % Durate normali a4 a % Raddoppia la durata dell'accordo 4*2 % Durata di un quarto, ma appare come un sedicesimo b16*4 c4 } @end lilypond Anche la durata delle pause spaziatrici può essere modificata con un moltiplicatore. Può essere utile per saltare molte misure; per esempio @code{s1*23}. @cindex comprimere la musica @cindex espandere la musica @funindex \scaleDurations Frammenti musicali più lunghi possono essere compressi secondo la stessa proporzione, come moltiplicando ogni nota, accordo o pausa per una medesima frazione. In questo modo, l'aspetto della musica non cambia ma la durata interna delle note viene moltiplicata per la frazione @emph{num}/@emph{den}. Ecco un esempio che mostra come la musica possa essere compressa e espansa: @lilypond[quote,verbatim] \relative { \time 2/4 % Durate normali 4 c8 a % Scala la musica di *2/3 \scaleDurations 2/3 { 4. c8 a f } % Scala la musica di *2 \scaleDurations 2/1 { 4 c8 b } } @end lilypond Questo comando torna utile nella notazione polimetrica, si veda @ref{Polymetric notation}. @seealso Guida alla notazione: @ref{Tuplets}, @ref{Invisible rests}, @ref{Polymetric notation}. Frammenti di codice: @rlsr{Rhythms}. @knownissues Il calcolo della posizione in una misura deve considerare tutti i fattori di dimensionamento applicati alle note di quella misura e gli esigui residui delle misure precedenti. Questo calcolo viene fatto con numeri razionali. Se un numeratore o un denominatore intermedi in quel calcolo eccedono di 2^30, l'esecuzione e la composizione tipografica si arresteranno in quel punto senza indicare un errore. @node Legature di valore @unnumberedsubsubsec Legature di valore @translationof Ties @cindex legatura di valore @funindex ~ Una legatura di valore connette le teste di due note della stessa altezza successive. Dunque, la legatura di valore prolunga la durata di una nota. @warning{Le legature di valore non devono essere confuse con le @emph{legature di portamento}, che articolano un passaggio, o con le @emph{legature di frase}, che delimitano una frase musicale. Una legatura di valore serve semplicemente a prolungare la durata di una nota, in modo analogo al punto di valore.} La legatura di valore si inserisce aggiungendo il simbolo tilde (@code{~}) alla prima di ogni coppia di note legate. Esso indica che la nota deve essere legata alla nota successiva, che deve essere della stessa altezza. @lilypond[quote,verbatim] { a'2~ 4~ 16 r r8 } @end lilypond Le legature di valore possono avvantaggiarsi dell'interpretazione dell' @q{ultima altezza esplicita} per le durate isolate: @lilypond[quote,verbatim] { a'2~ 4~ 16 r r8 } @end lilypond Le legature di valore si usano per unire due note a cavallo di una stanghetta di battuta, oppure quando non si possono usare i punti per esprimere una particolare durata. Le legature si dovrebbero usare anche per unire note dalle durate superiori all'unità di suddivisione della misura: @lilypond[verbatim,quote] \relative { r8 c'4.~ 4 r4 | r8^"non" c2~ 8 r4 } @end lilypond Per legare una successione di note la cui durata si prolunga per più misure intere, è più semplice ricorrere alla suddivisione automatica delle note, come è spiegato in @ref{Automatic note splitting}. Questo metodo divide automaticamente le note lunghe e le connette da misura a misura. @cindex legature di valore e accordi @cindex accordi e legature di valore Quando si applica una legatura di valore a degli accordi, vengono legate tutte le teste delle note della stessa altezza. In assenza di altezze corrispondenti, non verrà creata alcuna legatura. Singoli suoni degli accordi possono essere legati inserendo la legatura all'interno dell'accordo stesso. @lilypond[quote,verbatim] \relative c' { 2~ 2 | 4~ | } @end lilypond @cindex ripetere le legature di valore @cindex legature di valore, ripetizione @cindex parentesi della volta e legature di valore @cindex legature di valore e parentesi della volta @funindex \repeatTie Quando la battuta della "seconda volta" di un ritornello inizia con una nota legata a quella precedente, occorre indicare la legatura nel modo seguente: @lilypond[quote,verbatim] \relative { \repeat volta 2 { c g 2~ } \alternative { % Prima volta: la nota seguente viene legata in modo normale { 2. r4 } % Seconda volta: la nota seguente ha una legatura ripetuta { 2\repeatTie d4 c } } } @end lilypond @cindex laissez vibrer @cindex legatura di valore, laissez vibrer @funindex \laissezVibrer Le legature @notation{L.v.}@: (@notation{laissez vibrer}) indicano che le note non devono essere terminate nettamente. Si usa nella notazione per pianoforte, arpa e altri strumenti a corda e a percussione. Si inseriscono così: @lilypond[quote,verbatim,fragment] 1\laissezVibrer @end lilypond @cindex legature di valore, posizionamento @funindex \tieUp @funindex \tieDown @funindex \tieNeutral Le legature di valore possono essere impostate manualmente per avere la curva in su o in giù, come è spiegato in @ref{Direzione e posizionamento}. @cindex legature di valore, aspetto @cindex legature di valore punteggiate @cindex legature di valore tratteggiate @funindex \tieDotted @funindex \tieDashed @funindex \tieSolid Le legature di valore possono essere tratteggiate, punteggiate, oppure tracciate secondo una successione di tratti continui e tratti interrotti. @lilypond[quote, verbatim] \relative c' { \tieDotted c2~ 2 \tieDashed c2~ 2 \tieHalfDashed c2~ 2 \tieHalfSolid c2~ 2 \tieSolid c2~ 2 } @end lilypond Si possono specificare modelli di tratteggiatura personalizzati: @lilypond[quote, verbatim] \relative c' { \tieDashPattern #0.3 #0.75 c2~ 2 \tieDashPattern #0.7 #1.5 c2~ 2 \tieSolid c2~ 2 } @end lilypond Le definizioni dei modelli di tratteggiatura delle legature di valore hanno la stessa struttura di quelle per le legature di portamento. I dettagli relativi ai modelli complessi di tratteggiatura sono trattati in @ref{Slurs}. Sovrascrivere le proprietà di formattazione @var{whiteout} e @var{layer} degli oggetti che devono creare uno spazio vuoto tra le legature di valore. @lilypond[verbatim,quote,ragged-right] \relative { \override Tie.layer = #-2 \override Staff.TimeSignature.layer = #-1 \override Staff.KeySignature.layer = #-1 \override Staff.TimeSignature.whiteout = ##t \override Staff.KeySignature.whiteout = ##t b'2 b~ \time 3/4 \key a \major b r4 } @end lilypond @predefined @code{\tieUp}, @code{\tieDown}, @code{\tieNeutral}, @code{\tieDotted}, @code{\tieDashed}, @code{\tieDashPattern}, @code{\tieHalfDashed}, @code{\tieHalfSolid}, @code{\tieSolid}. @endpredefined @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {using-ties-with-arpeggios.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {engraving-ties-manually.ly} @seealso Glossario musicale: @rglosnamed{tie,legatura di valore}, @rglos{laissez vibrer}. Guida alla notazione: @ref{Slurs}, @ref{Automatic note splitting}. Frammenti di codice: @rlsr{Expressive marks}, @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{LaissezVibrerTie}, @rinternals{LaissezVibrerTieColumn}, @rinternals{TieColumn}, @rinternals{Tie}. @knownissues Cambiare rigo mentre una legatura di valore è attiva non produce una legatura obliqua. Il cambio di chiave o di ottava durante una legatura di valore non è una situazione ben definita. In questi casi è preferibile usare una legatura di portamento. @node Inserimento delle pause @subsection Inserimento delle pause @translationof Writing rests Le pause si inseriscono insieme alla musica contenuta nelle espressioni musicali. @menu * Pause:: * Pause invisibili:: * Pause d'intero:: @end menu @node Pause @unnumberedsubsubsec Pause @translationof Rests @cindex pausa @cindex pausa, inserire le durate @cindex pausa di maxima @cindex pausa di longa @cindex pausa di breve @funindex \rest @funindex r @funindex \maxima @funindex \longa @funindex \breve Le pause si inseriscono allo stesso modo delle note, ma con il carattere @code{r}. Le durate più lunghe di un intero usano i seguenti comandi predefiniti: @c \time 16/1 is used to avoid spurious bar lines @c and long tracts of empty measures @lilypond[quote,verbatim] \new Staff { % Queste due linee servono solo ad abbellire questo esempio \time 16/1 \omit Staff.TimeSignature % Mostra una pausa di maxima, equivalente a quattro brevi r\maxima % Mostra una pausa di longa, equivalente a due brevi r\longa % Mostra una pausa di breve r\breve r1 r2 r4 r8 r16 r32 r64 r128 } @end lilypond @cindex pausa multipla @cindex pausa d'intero Le pause d'intero, poste al centro della misura, devono essere inserite come pause multiple. Si possono usare sia per una sola misura sia su più misure, come è spiegato in @ref{Full measure rests}. @cindex pausa, specificare la posizione verticale Per indicare esplicitamente la posizione verticale di una pausa, si scrive la nota corrispondente seguita da @code{\rest}. Una pausa della durata della nota verrà collocata nella posizione della nota sul rigo. Questo permette una precisa formattazione manuale della musica polifonica, dato che il formattatore automatico che gestisce le collisioni tra pause non interviene su questo tipo di pause. @lilypond[quote,verbatim] \relative { a'4\rest d4\rest } @end lilypond @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {rest-styles.ly} @seealso Glossario musicale: @rglos{breve}, @rglos{longa}, @rglos{maxima}. Guida alla notazione: @ref{Full measure rests}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Rest}. @knownissues @c Deliberately duplicated in Durations and Rests. -gp Non c'è un limite massimo o minimo alla durata di una pausa, ma è il numero dei glifi ad essere limitato: si possono indicare pause da un centoventottesimo fino alla maxima (otto volte una semibreve). @node Pause invisibili @unnumberedsubsubsec Pause invisibili @translationof Invisible rests @cindex \skip @cindex pausa invisibile @cindex nota spaziatrice @cindex pausa spaziatrice @funindex s @funindex \skip Una pausa invisibile (chiamata anche @q{pausa spaziatrice}) si inserisce come come una nota col nome@tie{}@code{s}: @lilypond[verbatim,quote] \relative c'' { c4 c s c | s2 c | } @end lilypond @cindex testo, \skip Le pause spaziatrici possono essere usate soltanto nella modalità note e nella modalità accordi. In altre situazioni, ad esempio quando si inserisce il testo vocale, si usa il comando @code{\skip} per saltare un valore musicale. @code{\skip} richiede una durata esplicita, ma questo requisito viene ignorato se il testo desume le proprie durate dalle note presenti in una melodia ad esso associata attraverso @code{\addlyrics} o @code{\lyricsto}. @lilypond[quote,verbatim] << { a'2 \skip2 a'2 a'2 } \new Lyrics { \lyricmode { foo2 \skip 1 bla2 } } >> @end lilypond Dato che @code{\skip} è un comando, non modifica la durata predefinita delle note che seguono, diversamente da@tie{}@code{s}. @lilypond[quote,verbatim] << { \repeat unfold 8 { a'4 } } { a'4 \skip 2 a' | s2 a' } >> @end lilypond Una pausa spaziatrice crea implicitamente i contesti @code{Staff} e @code{Voice} se non esistono già, proprio come accade per le note e le pause: @lilypond[quote,verbatim] { s1 s s } @end lilypond @code{\skip} si limita a saltare un valore musicale, non crea nessun tipo di output. @lilypond[quote,verbatim] % Questo input è corretto, ma non produce niente \skip 1 \skip1 \skip 1 @end lilypond @seealso Manuale di apprendimento: @rlearning{Visibilità e colore degli oggetti}. Guida alla notazione: @ref{Hidden notes}, @ref{Visibility of objects}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{SkipMusic}. @node Pause d'intero @unnumberedsubsubsec Pause d'intero @translationof Full measure rests @cindex pause multiple @cindex pause d'intero @cindex pausa intera per una misura intera @funindex \compressMMRests @funindex R Le pause per una o più misure d'intero si inseriscono, come le note, col carattere maiuscolo @code{R}: @lilypond[quote,verbatim] % L'insieme delle misure di pausa vengono riportate in una sola misura \compressMMRests { R1*4 R1*24 R1*4 b'2^"Tutti" b'4 a'4 } @end lilypond La durata delle pause multiple è identica alla notazione di durata usata per le note e deve essere sempre un numero intero di misure/lunghezze, quindi occorre spesso usare dei punti di aumentazione o delle frazioni: @lilypond[quote,verbatim] \compressMMRests { \time 2/4 R1 | R2 | \time 3/4 R2. | R2.*2 | \time 13/8 R1*13/8 | R1*13/8*12 | \time 10/8 R4*5*4 | } @end lilypond Una pausa d'intero appare al centro della misura con la durata di una semibreve o di una breve, in base all'indicazione di tempo. @lilypond[quote,verbatim,fragment] \time 4/4 R1 | \time 6/4 R1*3/2 | \time 8/4 R1*2 | @end lilypond @cindex pausa multipla, espansione @cindex pausa multipla, contrazione Di norma una pausa multipla viene scorporata sul pentagramma in modo da mostrare esplicitamente tutte le misure per cui si prolunga. Altrimenti, è possibile indicarla collocando in una sola misura un simbolo di pausa multipla, col numero di misure per cui la pausa si prolunga posto al di sopra della misura stessa: @lilypond[quote,verbatim,fragment] % Comportamento predefinito \time 3/4 r2. | R2.*2 | \time 2/4 R2 | \time 4/4 % Tutte le misure di pausa sono riportate in una singola misura \compressMMRests { r1 | R1*17 | R1*4 | } % Le misure della pausa multipla sono scorporate di nuovo \time 3/4 R2.*2 | @end lilypond @cindex testo su pausa multipla @cindex pausa multipla, attaccare testo @cindex script su pausa multipla @cindex pausa multipla, script @cindex fermata su pausa multipla @cindex pausa multipla, attaccare fermata @cindex annotazione su pausa multipla @cindex pausa multipla con testo a margine @funindex \fermataMarkup @funindex MultiMeasureRestText Si possono aggiungere delle annotazioni alle pause multiple. Il comando predefinito @code{\fermataMarkup} permette di aggiungere il segno di corona. @lilypond[quote,verbatim] \compressMMRests { \time 3/4 R2.*10^\markup { \italic "ad lib." } R2.^\fermataMarkup } @end lilypond @warning{Il testo connesso a una pausa multipla è un oggetto di tipo @code{MultiMeasureRestText}, non @code{TextScript}. Le sovrascritture devono specificare l'oggetto corretto o saranno ignorate. Si veda l'esempio seguente:} @lilypond[quote,verbatim,fragment] % Questo non funziona, perché è specificato il nome dell'oggetto sbagliato \override TextScript.padding = #5 R1^"sbagliato" % Questo è il nome dell'oggetto corretto da specificare \override MultiMeasureRestText.padding = #5 R1^"corretto" @end lilypond Quando una pausa multipla segue immediatamente un comando @code{\partial}, potrebbero non apparire i relativi avvertimenti del controllo battuta. @funindex \textLengthOn @funindex \textLengthOff @funindex \fermataMarkup @funindex \compressMMRests @predefined @code{\textLengthOn}, @code{\textLengthOff}, @code{\fermataMarkup}, @code{\compressMMRests}, @endpredefined @snippets @cindex pausa ecclesiastica @cindex kirchenpausen @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {changing-form-of-multi-measure-rests.ly} @cindex pause multiple, posizionamento @cindex posizionare pause multiple @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {positioning-multi-measure-rests.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {multi-measure-rest-markup.ly} @seealso Glossario musicale: @rglosnamed{multi-measure rest,pausa multipla}. Guida alla notazione: @ref{Durata}, @ref{Text}, @ref{Formattazione del testo}, @ref{Text scripts}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{MultiMeasureRest}, @rinternals{MultiMeasureRestNumber}, @rinternals{MultiMeasureRestText}. @cindex diteggiature e pause multiple @cindex pause multiple e diteggiature @knownissues Se una diteggiatura viene posta su una pausa multipla (ad esempio @code{R1*10-4}), il numero della diteggiatura può collidere col numero del contatore delle battute. @cindex condensare le pause normali @cindex pause, condensare Non è possibile condensare automaticamente molteplici pause normali in in una singola pausa multipla. @cindex pausa, collisioni di Le pause multiple non considerano le collisioni di pausa. @node Aspetto dei ritmi @subsection Aspetto dei ritmi @translationof Displaying rhythms @menu * Indicazione di tempo:: * Indicazioni metronomiche:: * Anacrusi:: * Musica in tempo libero:: * Notazione polimetrica:: * Divisione automatica delle note:: * Mostrare i ritmi della melodia:: @end menu @node Indicazione di tempo @unnumberedsubsubsec Indicazione di tempo @translationof Time signature @cindex indicazione di tempo @cindex tempo @cindex misura @funindex \time L'indicazione di tempo si imposta così: @lilypond[quote,verbatim,fragment] \time 2/4 c''2 \time 3/4 c''2. @end lilypond I cambi di indicazione di tempo a metà misura sono trattati in @ref{Upbeats}. @cindex indicazione di tempo, visibilità dell' @cindex visibilità dell'indicazione di tempo Le indicazioni di tempo appaiono all'inizio di un brano e ogni volta che l'indicazione cambia. Se il cambio ha luogo alla fine di un rigo, appare un'indicazione di tempo di precauzione. Si può modificare questo comportamento predefinito, come è spiegato in @ref{Visibility of objects}. @lilypond[quote,verbatim] \relative c'' { \time 2/4 c2 c \break c c \break \time 4/4 c c c c } @end lilypond @cindex indicazione di tempo, stile @cindex tempo, stile @funindex \numericTimeSignature @funindex \defaultTimeSignature Il simbolo di indicazione di tempo usato nei tempi 2/2 e 4/4 può essere sostituito da un numero: @lilypond[quote,verbatim] \relative c'' { % Stile predefinito \time 4/4 c1 \time 2/2 c1 % Passaggio allo stile numerico \numericTimeSignature \time 4/4 c1 \time 2/2 c1 % Ritorno allo stile predefinito \defaultTimeSignature \time 4/4 c1 \time 2/2 c1 } @end lilypond Le indicazioni di tempo mensurali sono trattate in @ref{Mensural time signatures}. @cindex indicazione di tempo, impostazioni predefinite @cindex proprietà di disposizione automatica delle travature per le indicazioni di tempo @cindex disposizione delle travature, proprietà predefinite delle indicazioni di tempo @funindex \overrideTimeSignatureSettings Oltre a impostare l'indicazione di tempo che appare nel pentagramma, il comando @code{\time} imposta anche i valori delle proprietà basate sull'indicazione di tempo, ovvero @code{baseMoment}, @code{beatStructure} e @code{beamExceptions}. I valori predefiniti di queste proprietà si trovano in @file{scm/time-signature-settings.scm}. Si può sovrascrivere il valore predefinito di @code{beatStructure} nel comando @code{\time} stesso specificandolo come primo argomento opzionale: @lilypond[quote,verbatim] \score { \new Staff { \relative { \time 2,2,3 7/8 \repeat unfold 7 { c'8 } | \time 3,2,2 7/8 \repeat unfold 7 { c8 } | } } } @end lilypond Oppure si possono impostare tutti i valori predefiniti di queste variabili relative all'indicazione di tempo, incluse @code{baseMoment} e @code{beamExceptions}. I valori possono essere impostati in modo indipendente per diverse indicazioni di tempo. I nuovi valori hanno effetto appena viene eseguito un nuovo comando @code{\time} che abbia lo stesso valore dell'indicazione di tempo specificata nelle nuove impostazioni: @lilypond[quote,verbatim] \score { \new Staff { \relative c' { \overrideTimeSignatureSettings 4/4 % timeSignatureFraction 1/4 % baseMomentFraction 3,1 % beatStructure #'() % beamExceptions \time 4/4 \repeat unfold 8 { c8 } | } } } @end lilypond @code{\overrideTimeSignatureSettings} prende quattro argomenti: @enumerate @item @code{@var{timeSignatureFraction}}, una frazione che indica l'indicazione di tempo a cui questi valori si riferiscono. @item @code{@var{baseMomentFraction}}, una frazione che contiene il numeratore e il denominatore dell'unità di tempo. @item @code{@var{beatStructure}}, una lista Scheme che indica la struttura dei battiti nella misura, nell'unità di @code{@var{baseMomentFraction}}. @item @code{@var{beamExceptions}}, una lista di associazione (@emph{alist}) che contiene regole di disposizione delle travature che vanno oltre la fine ad ogni battito, come descritto in @ref{Setting automatic beam behavior}. @end enumerate @cindex ripristinare le proprietà predefinite delle indicazioni di tempo @cindex indicazioni di tempo, ripristinare i valori predefiniti delle proprietà delle @funindex \revertTimeSignatureSettings I valori modificati delle proprietà predefinite dell'indicazione di tempo possono essere ripristinati ai valori originali: @lilypond[quote,verbatim] \score{ \relative { \repeat unfold 8 { c'8 } | \overrideTimeSignatureSettings 4/4 % timeSignatureFraction 1/4 % baseMomentFraction 3,1 % beatStructure #'() % beamExceptions \time 4/4 \repeat unfold 8 { c8 } | \revertTimeSignatureSettings 4/4 \time 4/4 \repeat unfold 8 { c8 } | } } @end lilypond Si possono stabilire valori diversi delle proprietà predefinite dell'indicazione di tempo per righi diversi spostando @code{Timing_translator} e @code{Default_bar_line_engraver} dal contesto @code{Score} al contesto @code{Staff}. @lilypond[quote, verbatim] \score { \new StaffGroup << \new Staff { \overrideTimeSignatureSettings 4/4 % timeSignatureFraction 1/4 % baseMomentFraction 3,1 % beatStructure #'() % beamExceptions \time 4/4 \repeat unfold 8 {c''8} } \new Staff { \overrideTimeSignatureSettings 4/4 % timeSignatureFraction 1/4 % baseMomentFraction 1,3 % beatStructure #'() % beamExceptions \time 4/4 \repeat unfold 8 {c''8} } >> \layout { \context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver" } \context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver" } } } @end lilypond Un ulteriore metodo per modificare queste variabili relative all'indicazione di tempo, che evita di mostrare di nuovo l'indicazione di tempo al momento del cambio, è descritto in @ref{Setting automatic beam behavior}. @predefined @code{\numericTimeSignature}, @code{\defaultTimeSignature}. @endpredefined @snippets @lilypondfile[verbatim,quote,texidoc,doctitle] {time-signature-printing-only-the-numerator-as-a-number-instead-of-the-fraction.ly} @seealso Glossario musicale: @rglosnamed{time signature,indicazione di tempo} Guida alla notazione: @ref{Mensural time signatures}, @ref{Setting automatic beam behavior}, @ref{Time administration}. File installati: @file{scm/time-signature-settings.scm}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{TimeSignature}, @rinternals{Timing_translator}. @node Indicazioni metronomiche @unnumberedsubsubsec Indicazioni metronomiche @translationof Metronome marks @cindex tempo @cindex battiti per minuto @cindex indicazione metronomica @cindex indicazione metronomica con testo @funindex \tempo Un'indicazione metronomica è semplice da scrivere: @lilypond[verbatim,quote] \relative { \tempo 4 = 120 c'2 d e4. d8 c2 } @end lilypond Le indicazioni metronomiche si possono rappresentare anche come una gamma di due numeri: @lilypond[verbatim,quote] \relative { \tempo 4 = 40 - 46 c'4. e8 a4 g b,2 d4 r } @end lilypond Al loro posto si possono usare delle indicazioni di tempo testuali: @lilypond[verbatim,quote] \relative { \tempo "Allegretto" c''4 e d c b4. a16 b c4 r4 } @end lilypond Un'indicazione metronomica, se combinata con del testo, viene posta automaticamente tra parentesi: @lilypond[verbatim,quote] \relative { \tempo "Allegro" 4 = 160 g'4 c d e d4 b g2 } @end lilypond In generale, il testo può essere qualsiasi oggetto di tipo testuale: @lilypond[verbatim,quote] \relative { \tempo \markup { \italic Faster } 4 = 132 a'8-. r8 b-. r gis-. r a-. r } @end lilypond È possibile scrivere un'indicazione metronomica tra parentesi e senza testo includendo una stringa vuota nell'input: @lilypond[verbatim,quote] \relative { \tempo "" 8 = 96 d''4 g e c } @end lilypond @funindex \markLengthOn @funindex \markLengthOff In una parte per uno strumento che ha lunghi periodi pieni di pause, le indicazioni di tempo sono talvolta molto ravvicinate. Il comando @code{\markLengthOn} aggiunge dello spazio orizzontale per impedire che le indicazioni di tempo si sovrappongano; @code{\markLengthOff} ripristina il comportamento predefinito, per cui le indicazioni di tempo non sono tenute in considerazione ai fini della spaziatura orizzontale. @lilypond[verbatim,quote] \compressMMRests { \markLengthOn \tempo "Molto vivace" R1*12 \tempo "Meno mosso" R1*16 \markLengthOff \tempo "Tranquillo" R1*20 } @end lilypond @snippets @lilypondfile[verbatim,quote,texidoc,doctitle] {printing-metronome-and-rehearsal-marks-below-the-staff.ly} @c perhaps also an example of how to move it horizontally? @lilypondfile[verbatim,quote,texidoc,doctitle] {changing-the-tempo-without-a-metronome-mark.ly} @lilypondfile[verbatim,quote,texidoc,doctitle] {creating-metronome-marks-in-markup-mode.ly} I dettagli si trovano in @ref{Formattazione del testo}. @seealso Glossario musicale: @rglosnamed{metronome,metronomo}, @rglosnamed{tempo indication,indicazione di tempo}, @rglosnamed{metronome mark,indicazione metronomica}. Guida alla notazione: @ref{Formattazione del testo}, @ref{Creazione dell'output MIDI}. Frammenti di codice: @rlsr{Staff notation}. Guida al funzionamento interno: @rinternals{MetronomeMark}. @node Anacrusi @unnumberedsubsubsec Anacrusi @translationof Upbeats @cindex anacrusi @cindex misura parziale @cindex parziale, misura @cindex battuta in levare @funindex measurePosition @funindex \partial Le misure parziali, come l'@emph{anacrusi} o la battuta in levare, si inseriscono col comando @code{\partial}: @example \partial @var{durata} @end example Quando si usa @code{\partial} all'inizio di una partitura, la @code{@var{durata}} è la lunghezza della musica che precede la prima battuta. @lilypond[quote,verbatim] \relative { \time 3/4 \partial 4. r4 e'8 | a4 c8 b c4 | } @end lilypond Quando si usa @code{\partial} dopo l'inizio di una partitura, la @var{durata} è la lunghezza @emph{rimanente} della misura corrente. Non crea una battuta con un nuovo numero. @lilypond[quote,verbatim] \relative { \set Score.barNumberVisibility = #all-bar-numbers-visible \override Score.BarNumber.break-visibility = #end-of-line-invisible \time 9/8 d''4.~ 4 d8 d( c) b | c4.~ 4. \bar "||" \time 12/8 \partial 4. c8( d) e | f2.~ 4 f8 a,( c) f | } @end lilypond Il comando @code{\partial} è @emph{obbligatorio} quando l'indicazione di tempo cambia in mezzo a una misura, ma si può usare anche da solo. @lilypond[quote,verbatim] \relative { \set Score.barNumberVisibility = #all-bar-numbers-visible \override Score.BarNumber.break-visibility = #end-of-line-invisible \time 6/8 \partial 8 e'8 | a4 c8 b[ c b] | \partial 4 r8 e,8 | a4 \bar "||" \partial 4 r8 e8 | a4 c8 b[ c b] | } @end lilypond Il comando @code{\partial} imposta la proprietà @code{Timing.measurePosition}, che è un numero razionale che indica quanto tempo della misura è trascorsa. @seealso Glossario musicale: @rglosnamed{anacrusis,anacrusi}. Guida alla notazione: @ref{Grace notes}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Timing_translator}. @node Musica in tempo libero @unnumberedsubsubsec Musica in tempo libero @translationof Unmetered music @cindex cadenza @cindex cadenza, travature @cindex cadenza, alterazioni @cindex cadenza, stanghette @cindex cadenza, numeri di battuta @cindex musica in tempo libero @cindex musica in tempo libero, travature @cindex musica in tempo libero, alterazioni @cindex musica in tempo libero, stanghette @cindex musica in tempo libero, numeri di battuta @cindex alterazioni, cadenze @cindex alterazioni, musica in tempo libero @cindex stanghette, cadenze @cindex stanghette, musica in tempo libero @cindex numeri di battuta, cadenze @cindex numeri di battuta, musica in tempo libero @cindex travature, cadenze @cindex travature, musica in tempo libero @funindex \cadenzaOn @funindex \cadenzaOff Nella musica in un tempo determinato l'inserimento delle stanghette e dei numeri di battuta è calcolato automaticamente. Nella musica in tempo libero (per esempio, la cadenza), un simile comportamento non è desiderabile, e può essere @q{disabilitato} col comando @code{\cadenzaOn} e poi @q{riabilitato} quando necessario con @code{\cadenzaOff}. @lilypond[verbatim,quote] \relative c'' { c4 d e d \cadenzaOn c4 c d8[ d d] f4 g4. \cadenzaOff \bar "|" d4 e d c } @end lilypond La numerazione delle battute riprende dopo la cadenza. @lilypond[verbatim,quote] \relative c'' { % Mostra tutti i numeri di battuta \override Score.BarNumber.break-visibility = #all-visible c4 d e d \cadenzaOn c4 c d8[ d d] f4 g4. \cadenzaOff \bar "|" d4 e d c } @end lilypond Se si inserisce un comando @code{\bar} dentro una cadenza non viene iniziata una nuova misura, anche se appare una stanghetta nell'output. Quindi qualsiasi alterazione, che di solito si considera sempre attiva fino alla fine della misura, sarà ancora valida dopo la stanghetta stampata da @code{\bar}. Se si desidera che le alterazioni successive appaiano, si dovranno inserire manualmente delle alterazioni forzate o di precauzione, come è spiegato in @ref{Alterazioni}. @lilypond[verbatim,quote] \relative c'' { c4 d e d \cadenzaOn cis4 d cis d \bar "|" % Il primo cis viene stampato senza alterazione anche se si trova dopo \bar cis4 d cis! d \cadenzaOff \bar "|" } @end lilypond La disposizione automatica delle travature viene disabilitata da @code{\cadenzaOn}. Quindi tutte le travature nelle cadenze devono essere inserite manualmente. Si veda @ref{Manual beams}. @lilypond[verbatim,quote] \relative { \repeat unfold 8 { c''8 } \cadenzaOn cis8 c c c c \bar"|" c8 c c \cadenzaOff \repeat unfold 8 { c8 } } @end lilypond Questi comandi predefiniti hanno effetto su tutti i righi di una partitura, anche quando inseriti in un solo contesto @code{Voice}. Per modificare questo comportamento, si sposta @code{Timing_translator} dal contesto @code{Score} al contesto @code{Staff}. Si veda @ref{Polymetric notation}. @predefined @code{\cadenzaOn}, @code{\cadenzaOff}. @endpredefined @seealso Glossario musicale: @rglos{cadenza}. Guida alla notazione: @ref{Visibility of objects}, @ref{Polymetric notation}, @ref{Manual beams}, @ref{Alterazioni}. Frammenti di codice: @rlsr{Rhythms}. @cindex cadenza, interruzioni di linea @cindex cadenza, interruzioni di pagina @cindex musica in tempo libero, interruzioni di linea @cindex musica in tempo libero, interruzioni di pagina @cindex interruzioni nella musica in tempo libero @cindex interruzioni di linea, cadenze @cindex interruzioni di pagina, cadenze @cindex interruzioni di linea, musica in tempo libero @cindex interruzioni di pagina, musica in tempo libero @knownissues Le interruzioni automatiche di linea e di pagina possono aver luogo solo dopo una stanghetta di battuta; quindi, per consentire delle interruzioni nei lunghi passaggi di musica in tempo libero è necessario inserire manualmente delle stanghette @q{invisibili}: @example \bar "" @end example @node Notazione polimetrica @unnumberedsubsubsec Notazione polimetrica @translationof Polymetric notation @c This section necessarily uses \set @c This is acceptable -td @cindex indicazioni di tempo doppie @cindex indicazioni polimetriche @cindex indicazioni di tempo polimetrico @cindex polimetriche, indicazioni @cindex tempo polimetrico @funindex timeSignatureFraction @funindex \scaleDurations @funindex \tuplet La notazione polimetrica è supportata esplicitamente o tramite la modifica manuale del simbolo d'indicazione di tempo (e la trasformazione della durata delle note). @subsubsubheading Diverse indicazioni di tempo con misure di uguale lunghezza Si sceglie una normale indicazione di tempo per ogni rigo e si imposta @code{timeSignatureFraction} sulla frazione desiderata. Quindi si usa la funzione @code{\scaleDurations} per scalare la durata delle note di ogni rigo in modo che rientrino nella comune indicazione di tempo. @cindex travature, con tempi polimetrici @cindex tempi polimetrici, con travature L'esempio seguente presenta simultaneamente musica con indicazioni di tempo di 3/4, 9/8 e 10/8. Nel secondo rigo le durate appaiono come moltiplicate per 2/3 (perché 2/3 * 9/8 = 3/4), mentre nel terzo rigo le durate appaiono come moltiplicate per 3/5 (perché 3/5 * 10/8 = 3/4). È possibile che si debbano inserire a mano le travature, perché la scalatura delle durate influenzerà le regole della disposizione automatica delle travature. @lilypond[quote,verbatim] \relative << \new Staff { \time 3/4 c'4 c c | c4 c c | } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = 9/8 \scaleDurations 2/3 \repeat unfold 6 { c8[ c c] } } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = 10/8 \scaleDurations 3/5 { \repeat unfold 2 { c8[ c c] } \repeat unfold 2 { c8[ c] } | c4. c \tuplet 3/2 { c8[ c c] } c4 } } >> @end lilypond @subsubsubheading Diverse indicazioni di tempo con misure di lunghezza differenti Si può dare a ogni rigo la sua indicazione di tempo indipendente spostando @code{Timing_translator} e @code{Default_bar_line_engraver} nel contesto @code{Staff}. @lilypond[quote,verbatim] \layout { \context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver" } \context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver" } } % Ora ogni rigo ha la sua indicazione di tempo. \relative << \new Staff { \time 3/4 c'4 c c | c4 c c | } \new Staff { \time 2/4 c4 c | c4 c | c4 c | } \new Staff { \time 3/8 c4. | c8 c c | c4. | c8 c c | } >> @end lilypond @funindex \compoundMeter @cindex indicazioni di tempo composto @cindex tempo composto, indicazioni @subsubsubheading Indicazioni di tempo composto Si creano con la funzione @code{\compoundMeter}. La sintassi è: @example \compoundMeter #'(lista di liste) @end example La struttura più semplice è una singola lista, dove l'@emph{ultimo} numero indica il numero inferiore dell'indicazione di tempo e i numeri precedenti indicano i numeri superiori del segno di tempo. @lilypond[quote,verbatim] \relative { \compoundMeter #'((2 2 2 8)) \repeat unfold 6 c'8 \repeat unfold 12 c16 } @end lilypond Si possono costruire tempi più complessi tramite ulteriori liste. Le modalità di disposizione automatica delle travature varieranno a seconda di questi valori. @lilypond[quote,verbatim] \relative { \compoundMeter #'((1 4) (3 8)) \repeat unfold 5 c'8 \repeat unfold 10 c16 } \relative { \compoundMeter #'((1 2 3 8) (3 4)) \repeat unfold 12 c'8 } @end lilypond @seealso Glossario musicale: @rglosnamed{polymetric,polimetrico}, @rglosnamed{polymetric time signature,indicazione di tempo polimetrico}, @rglosnamed{meter,tempo}. Guida alla notazione: @ref{Travature automatiche}, @ref{Manual beams}, @ref{Time signature}, @ref{Scaling durations}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{TimeSignature}, @rinternals{Timing_translator}, @rinternals{Default_bar_line_engraver}, @rinternals{Staff}. @knownissues Quando si usano simultaneamente indicazioni di tempo diverse, le note che procedono parallelamente saranno poste nella stessa posizione sull'asse orizzontale. Tuttavia le stanghette dei vari righi faranno sì che la spaziatura delle note sia meno regolare in ciascun rigo di quanto accadrebbe normalmente senza le diverse indicazioni di tempo. @node Divisione automatica delle note @unnumberedsubsubsec Divisione automatica delle note @translationof Automatic note splitting @cindex note, divisione @cindex divisione delle note @cindex pause, divisione @cindex divisione delle pause @funindex Note_heads_engraver @funindex Completion_heads_engraver @funindex Completion_rest_engraver Le note le cui durate eccedono il valore della battuta possono essere convertite automaticamente in note con legature di valore a cavallo delle stanghette sostituendo l'incisore @code{Note_heads_engraver} con @code{Completion_heads_engraver}. Analogalmente, le pause le cui durate eccedono il valore della battuta possono essere divise automaticamente sostituendo @code{Rest_engraver} con @code{Completion_rest_engraver}. Nell'esempio seguente, le note e le pause che eccedono la durata di battuta vengono divise e le note sono anche connesse con legature di valore a cavallo della stanghetta. @lilypond[quote,verbatim] \new Voice \with { \remove "Note_heads_engraver" \consists "Completion_heads_engraver" \remove "Rest_engraver" \consists "Completion_rest_engraver" } \relative { c'2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 r1*2 } @end lilypond Questi incisori dividono tutte le note e le pause in corrispondenza della stanghetta e inseriscono le legature di valore. Uno dei suoi usi possibili è la verifica di partiture complesse: se le misure non sono riempite interamente, le legature di valore mostrano esattamente di quanto è ecceduta ogni misura. La proprietà @code{completionUnit} imposta la durata preferita per le note divise. @lilypond[quote,verbatim] \new Voice \with { \remove "Note_heads_engraver" \consists "Completion_heads_engraver" } \relative { \time 9/8 g\breve. d''4. \bar "||" \set completionUnit = #(ly:make-moment 3 8) g\breve. d4. } @end lilypond Questi incisori dividono le note che hanno una durata ridimensionata, come quelle dei gruppi irregolari, in note con lo stesso fattore di ridimensionamento della nota di input. @lilypond[quote,verbatim] \new Voice \with { \remove "Note_heads_engraver" \consists "Completion_heads_engraver" } \relative { \time 2/4 r4 \tuplet 3/2 {g'4 a b} \scaleDurations 2/3 {g a b} g4*2/3 a b \tuplet 3/2 {g4 a b} r4 } @end lilypond @seealso Glossario musicale: @rglosnamed{tie,legatura di valore} Manuale di apprendimento: @rlearning{Gli incisori}, @rlearning{Aggiungere e togliere gli incisori}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Note_heads_engraver}, @rinternals{Completion_heads_engraver}, @rinternals{Rest_engraver}, @rinternals{Completion_rest_engraver}, @rinternals{Forbid_line_break_engraver}. @knownissues In accordo col comportamento precedente, note e pause la cui durata è più lunga di una misura, come @code{c1*2}, sono divise in note prive di fattore di ridimensionamento, @code{@{ c1 c1 @}}. La proprietà @code{completionFactor} controlla questo comportamento e impostandola su @code{#f} fa sì che le note e le pause divise abbiano il fattore di ridimensionamento delle durate di input. @node Mostrare i ritmi della melodia @unnumberedsubsubsec Mostrare i ritmi della melodia @translationof Showing melody rhythms @cindex melodia, mostrare i ritmi della @cindex ritmi, mostrare la melodia È possibile mostrare soltanto il ritmo di una melodia usando il rigo ritmico. Tutte le altezze delle note su tale rigo sono appiattite e il rigo stesso ha una sola linea @lilypond[quote,verbatim] << \new RhythmicStaff { \new Voice = "myRhythm" \relative { \time 4/4 c'4 e8 f g2 r4 g g f g1 } } \new Lyrics { \lyricsto "myRhythm" { This is my song I like to sing } } >> @end lilypond @cindex diagramma degli accordi per chitarra @cindex accordi per chitarra, tabella @cindex ritmi di accompagnamento, mostrare @cindex ritmi di accompagnamento per chitarra, mostrare @funindex Pitch_squash_engraver @funindex \improvisationOn @funindex \improvisationOff I diagrammi degli accordi per chitarra di solito mostrano i ritmi di accompagnamento. Si possono visualizzare usando l'incisore @code{Pitch_squash_engraver} e il comando @code{\improvisationOn}. @lilypond[quote,verbatim] << \new ChordNames { \chordmode { c1 f g c } } \new Voice \with { \consists "Pitch_squash_engraver" } \relative c'' { \improvisationOn c4 c8 c c4 c8 c f4 f8 f f4 f8 f g4 g8 g g4 g8 g c4 c8 c c4 c8 c } >> @end lilypond La musica contenente accordi può essere usata anche come input per @code{RhythmicStaff} e per essere usata con l'incisore @code{Pitch_squash_engraver} se gli accordi vengono prima ridotti a note singole con la funzione musicale @code{\reduceChords}: @lilypond[quote,verbatim] \new RhythmicStaff { \time 4/4 \reduceChords { 2 2 2 4 4 } } @end lilypond @predefined @code{\improvisationOn}, @code{\improvisationOff}. @endpredefined @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {guitar-strum-rhythms.ly} @seealso Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{RhythmicStaff}, @rinternals{Pitch_squash_engraver}. @node Travature @subsection Travature @translationof Beams @menu * Travature automatiche:: * Impostare il comportamento delle travature automatiche:: * Travature manuali:: * Travature a raggiera:: @end menu @node Travature automatiche @unnumberedsubsubsec Travature automatiche @translationof Automatic beams Le travature sono inserite automaticamente: @cindex travature manuali @cindex travature, personalizzazione delle regole @funindex \autoBeamOn @funindex \autoBeamOff @lilypond[quote,verbatim] \relative c'' { \time 2/4 c8 c c c \time 6/8 c8 c c c8. c16 c8 } @end lilypond Se queste impostazioni automatiche non sono soddisfacenti, si può definire esplicitamente la disposizione delle travature, come è spiegato in @ref{Manual beams}. Le travature @emph{devono} essere inserite manualmente se devono estendersi oltre le pause. La disposizione automatica delle travature, se non necessaria, può essere disabilitata con @code{\autoBeamOff} e riabilitata con @code{\autoBeamOn}: @lilypond[quote,verbatim] \relative c' { c4 c8 c8. c16 c8. c16 c8 \autoBeamOff c4 c8 c8. c16 c8. \autoBeamOn c16 c8 } @end lilypond @cindex melismi, con travature @cindex travature, con melismi @warning{Se si usano le travature per indicare i melismi nelle parti vocali, occorre disabilitare la disposizione automatica delle travature con @code{\@bs{}autoBeamOff} e le travature devono essere indicate manualmente. L'uso di @code{@bs{}partcombine} insieme a @code{@bs{}autoBeamOff} può produrre risultati imprevisti. Si vedano i frammenti di codice per avere maggiori informazioni.} Si possono creare dei modelli di disposizione delle travature diversi da quelli automatici predefiniti, come è spiegato in @ref{Setting automatic beam behavior}. @predefined @code{\autoBeamOff}, @code{\autoBeamOn}. @endpredefined @cindex travature, interruzioni di linea @cindex interruzioni di linea, travature @cindex travature angolari @cindex travature con angolazione @funindex breakable @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {beams-across-line-breaks.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {changing-beam-knee-gap.ly} @cindex travature, \partcombine con \autoBeamOff @cindex voci, \partcombine con \autoBeamOff @lilypondfile [verbatim, quote, ragged-right, texidoc, doctitle] {partcombine-and-autobeamoff.ly} @seealso Guida alla notazione: @ref{Manual beams}, @ref{Setting automatic beam behavior}. File installati: @file{scm/auto-beam.scm}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Auto_beam_engraver}, @rinternals{Beam_engraver}, @rinternals{Beam}, @rinternals{BeamEvent}, @rinternals{BeamForbidEvent}, @rinternals{beam-interface}, @rinternals{unbreakable-spanner-interface}. @knownissues Le proprietà di una travatura sono determinate all'@emph{inizio} della sua costruzione e qualsiasi ulteriore modifica alle sue proprietà che venga fatta prima che la travatura sia stata completata non avrà effetto finché non inizia la @emph{successiva}, nuova travatura. @node Impostare il comportamento delle travature automatiche @unnumberedsubsubsec Impostare il comportamento delle travature automatiche @translationof Setting automatic beam behavior @cindex travature, con testo @cindex testo, con travature @funindex autoBeaming @funindex baseMoment @funindex \beamExceptions @funindex beatStructure @funindex measureLength @funindex \time @funindex \set Quando la disposizione automatica delle travature è abilitata, la disposizione delle travature è determinata da tre proprietà di contesto: @code{baseMoment}, @code{beatStructure} e @code{beamExceptions}. I valori predefiniti di queste variabili possono essere sovrascritti, come vedremo tra breve, oppure si possono anche cambiare i valori predefiniti stessi, come è spiegato in @ref{Time signature}. Se è definita una regola @code{beamExceptions} per l'indicazione di tempo corrente, tale regola soltanto determina la disposizione delle travature; i valori di @code{baseMoment} e @code{beatStructure} vengono ignorati. Se non è definita alcuna regola @code{beamExceptions} per l'indicazione di tempo corrente, la disposizione delle travature è determinata dai valori di @code{baseMoment} e @code{beatStructure}. @subsubsubheading Disposizione delle travature basata su @code{baseMoment} e @code{beatStructure} Dato che le indicazioni di tempo più comuni hanno delle regole @code{beamExceptions} già definite, occorre disabilitarle se la disposizione automatica deve basarsi su @code{baseMoment} e @code{beatStructure}. Le regole @code{beamExceptions} si disabilitano con questo comando @example \set Timing.beamExceptions = #'() @end example Quando @code{beamExceptions} è impostato su @code{#'()}, o per impostazione esplicita o perché non sono state definite internamente le @code{beamExceptions} per l'indicazione di tempo corrente, le estremità delle travature si trovano sulle suddivisioni come specificato dalle proprietà di contesto @code{baseMoment} e @code{beatStructure}. @code{beatStructure} è una lista @emph{scheme} che definisce la lunghezza di ogni suddivisione in rapporto alla misura in unità di @code{baseMoment}. Per impostazione predefinita, @code{baseMoment} è uno fratto il denominatore dell'indicazione di tempo e ogni unità di @code{baseMoment} corrisponde a una singola suddivisione. Per ogni indicazione di tempo esistono valori separati per @code{beatStructure} e @code{baseMoment}. Le modifiche di queste variabili hanno effetto solo sulle indicazioni di tempo attive, dunque tali modifiche devono essere poste dopo il comando @code{\time} che inizia una nuova indicazione di tempo, non prima. I nuovi valori assegnati a una certa indicazione di tempo sono mantenuti e reintrodotti ogni volta che quell'indicazione di tempo viene ristabilita. @lilypond[quote,verbatim] \relative c''{ \time 5/16 c16^"predefinito" c c c c | % È improbabile che per un tempo di 5/16 sia stata definita beamExceptions, % ma disabilitiamola lo stesso per sicurezza \set Timing.beamExceptions = #'() \set Timing.beatStructure = 2,3 c16^"(2+3)" c c c c | \set Timing.beatStructure = 3,2 c16^"(3+2)" c c c c | } @end lilypond @lilypond[quote,verbatim] \relative { \time 4/4 a'8^"predefinito" a a a a a a a % Disabilita beamExceptions perché è senz'altro definita % per il tempo 4/4 \set Timing.beamExceptions = #'() \set Timing.baseMoment = #(ly:make-moment 1/4) \set Timing.beatStructure = 1,1,1,1 a8^"cambiato" a a a a a a a } @end lilypond Le modifiche alle impostazioni delle travature possono essere limitate a contesti specifici. Se non si specifica alcuna impostazione in un contesto di livello più basso, verrà applicata l'impostazione del contesto che lo contiene. @lilypond[quote, verbatim] \new Staff { \time 7/8 % Nessun bisogno di disabilitare beamExceptions perché non è definita per il tempo 7/8 \set Staff.beatStructure = 2,3,2 << \new Voice = one { \relative { a'8 a a a a a a } } \new Voice = two { \relative { \voiceTwo \set Voice.beatStructure = 1,3,3 f'8 f f f f f f } } >> } @end lilypond Quando si usano più voci, occorre specificare il contesto @code{Staff} se si vuole applicare la disposizione delle travature a tutte le voci del rigo: @lilypond[quote,verbatim,fragment] \time 7/8 % ritmo 3-1-1-2 % Se non si specifica il contesto, la modifica viene applicata a Voice e quindi non funziona correttamente % Dato che le voci sono autogenerate, tutto il ritmo avrà come baseMoment (1 . 8) \set beatStructure = 3,1,1,2 << \relative {a'8 a a a16 a a a a8 a} \\ \relative {f'4. f8 f f f} >> % Funziona correttamente se si specifica il contesto Staff \set Staff.beatStructure = 3,1,1,2 << \relative {a'8 a a a16 a a a a8 a} \\ \relative {f'4. f8 f f f} >> @end lilypond Il valore di @code{baseMoment} può essere regolato in modo da cambiare il comportamento delle travature, se si vuole. In questo caso occorre cambiare anche il valore di @code{beatStructure} così che sia compatibile col nuovo valore di @code{baseMoment}. @lilypond[quote,verbatim,fragment] \time 5/8 % Nessun bisogno di disabilitare beamExceptions perché non è definita per il tempo 5/8 \set Timing.baseMoment = #(ly:make-moment 1/16) \set Timing.beatStructure = 7,3 \repeat unfold 10 { a16 } @end lilypond @code{baseMoment} è un @i{momento}, ovvero un'unità della durata musicale. Una quantità di tipo @i{moment} viene creata dalla funzione scheme @code{ly:make-moment}. Per maggiori informazioni su questa funzione, si veda @ref{Time administration}. Per impostazione predefinita, @code{baseMoment} ha un valore di uno fratto il denominatore dell'indicazione di tempo. Le eccezioni a questa regola si trovano in @file{scm/time-signature-settings.scm}. @subsubsubheading Disposizione delle travature con @code{beamExceptions} Le regole speciali di disposizione automatica delle travature (diverse da quelle che determinano la corrispondenza della travatura alla suddivisione) sono definite nella proprietà @code{beamExceptions}. Il valore di @code{beamExceptions}, una struttura dati Scheme piuttosto complessa, è più facile da generare con la funzione @code{\beamExceptions}. A tale funzione viene passato uno o più schemi ritmici della misura, specificati con travature manuali. Le misure devono essere separate da un controllo di battuta@tie{}@code{|} dato che la funzione non ha altro modo per determinare la lunghezza della misura. Ecco un semplice esempio: @lilypond[quote,verbatim] \relative c'' { \time 3/16 \set Timing.beatStructure = 2,1 \set Timing.beamExceptions = \beamExceptions { 32[ 32] 32[ 32] 32[ 32] } c16 c c | \repeat unfold 6 { c32 } | } @end lilypond @warning{Il valore di @code{beamExceptions} deve essere una lista @emph{completa} di eccezioni, ovvero bisogna includere tutte le eccezioni che si vogliono applicare. Non è possibile aggiungere, rimuovere o modificare soltanto una eccezione. Anche se questo può sembrare scomodo, significa anche che non c'è bisogno di conoscere le attuali impostazioni delle travature per poter specificare un nuovo modello di disposizione delle travature.} Quando cambia l'indicazione di tempo, vengono impostati i valori predefiniti di @code{Timing.baseMoment}, @code{Timing.beatStructure} e @code{Timing.beamExceptions}. L'impostazione dell'indicazione di tempo ripristina le impostazioni automatiche delle travature del contesto @code{Timing} ai valori predefiniti. @lilypond[quote,verbatim] \relative a' { \time 6/8 \repeat unfold 6 { a8 } % raggruppamento (4 + 2) \set Timing.beatStructure = 4,2 \repeat unfold 6 { a8 } % ritorno al comportamento predefinito \time 6/8 \repeat unfold 6 { a8 } } @end lilypond Le impostazioni predefinite della disposizione automatica delle travature per ogni tempo sono definite in @file{scm/time-signature-settings.scm}. La loro modifica è descritta in @ref{Time signature}. Molte impostazioni di travature automatiche per le indicazioni di tempo hanno un elemento @code{beamExceptions}. Ad esempio, il tempo 4/4 cerca di creare due travature nella misura se ci sono solo note di un ottavo. La regola @code{beamExceptions} può sovrascrivere l'impostazione di @code{beatStructure} se @code{beamExceptions} non viene annullato. @lilypond[quote,verbatim,fragment] \time 4/4 \set Timing.baseMoment = #(ly:make-moment 1/8) \set Timing.beatStructure = 3,3,2 % Le travature non saranno raggruppate in (3 3 2) a causa di beamExceptions \repeat unfold 8 {c8} | % Il raggruppamento delle travature è (3 3 2) perché abbiamo tolto le impostazioni predefinite di beamExceptions \set Timing.beamExceptions = #'() \repeat unfold 8 {c8} @end lilypond Analogalmente, le note di un ottavo in un tempo 3/4 sono raggruppate in un'unica travatura. Per raggrupparle secondo le suddivisioni, azzera @code{beamExceptions}. @lilypond[quote,verbatim,fragment] \time 3/4 % il comportamento predefinito è un gruppo di (6) a causa di beamExceptions \repeat unfold 6 {a8} | % Le travature saranno raggruppate in (1 1 1) a causa dei valori predefiniti di baseMoment e beatStructure \set Timing.beamExceptions = #'() \repeat unfold 6 {a8} @end lilypond Spesso, nelle partiture di età classica e romantica, le travature iniziano a metà della misura in un tempo 3/4; ma la pratica moderna preferisce evitare l'impressione ingannevole di un tempo 6/8 (vedi Gould, p. 153). Situazioni simili si incontrano anche per il tempo 3/8. Questo comportamento è controllato dalla proprietà di contesto @code{beamHalfMeasure}, che ha effetto soltanto sulle indicazioni di tempo che hanno 3 come numeratore: @lilypond[quote,verbatim] \relative a' { \time 3/4 r4. a8 a a | \set Timing.beamHalfMeasure = ##f r4. a8 a a | } @end lilypond @subsubsubheading Come funziona la disposizione automatica delle travature Quando la disposizione automatica delle travature è abilitata, la disposizione delle travature è determinata dalle proprietà di contesto @code{baseMoment}, @code{beatStructure} e @code{beamExceptions}. Nel determinare l'aspetto delle travature vengono applicate le seguenti regole, in ordine di priorità: @itemize @item Se si specifica una travatura manuale con @code{[@dots{}]} imposta la travatura in quel modo, altrimenti @item se è definita una regola di fine della travatura in @code{beamExceptions} per il tipo di travatura in questione, la usa per determinare i punti corretti in cui le travature possono terminare, altrimenti @item se è definita una regola di fine della travatura in @code{beamExceptions} per un tipo di travatura più lunga, la usa per determinare i punti corretti in cui le travature possono terminare, altrimenti @item usa i valori di @code{baseMoment} e @code{beatStructure} per determinare l'estensione delle suddivisioni della misura e terminare le travature alla fine delle suddivisioni. @end itemize Nelle regole precedenti, il @emph{tipo di travatura} è la durata della nota più corta nel gruppo della travatura. Le regole predefinite per le travature si trovano in @file{scm/time-signature-settings.scm}. @snippets @cindex travature, suddivisione @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {subdividing-beams.ly} @cindex tratti di suddivisione della travatura, direzione @cindex travatura, direzione dei tratti di suddivisione della @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {strict-beat-beaming.ly} @cindex misura, raggruppamenti @cindex suddivisioni, raggruppamenti @cindex misura, sottoraggruppamenti @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {conducting-signs,-measure-grouping-signs.ly} @cindex travatura, estremità in una partitura @cindex travatura, estremità in voci multiple @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {beam-endings-in-score-context.ly} @seealso Guida alla notazione: @ref{Time signature}. File installati: @file{scm/time-signature-settings.scm}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Auto_beam_engraver}, @rinternals{Beam}, @rinternals{BeamForbidEvent}, @rinternals{beam-interface}. @knownissues Se una partitura finisce prima del termine di una travatura automatica, cui mancano ancora delle note, quest'ultima travatura non apparirà. Lo stesso vale per le voci polifoniche, inserite con @code{<< @dots{} \\ @dots{} >>}. Una voce polifonica non apparirà se termina quando una travatura automatica è ancora in attesa di note. Per aggirare questi problemi occorre impostare manualmente l'ultima travatura della voce o della partitura. @code{Timing} è un alias del contesto @code{Score}. Questo significa che la modifica della disposizione delle travature in un rigo avrà effetto anche sugli altri righi. Quindi un'impostazione di tempo in un rigo successivo reimposterà la disposizione personalizzata delle travature definita in un rigo precedente. Per evitare questo problema si può impostare l'indicazione di tempo su un solo rigo. @lilypond[quote,verbatim] << \new Staff { \time 3/4 \set Timing.baseMoment = #(ly:make-moment 1/8) \set Timing.beatStructure = 1,5 \set Timing.beamExceptions = #'() \repeat unfold 6 { a'8 } } \new Staff { \repeat unfold 6 { a'8 } } >> @end lilypond Si possono cambiare anche le impostazioni predefinite delle travature, in modo che sia usata sempre la disposizione delle travature desiderata. Le modifiche nelle impostazioni della travatura automatica per le indicazioni di tempo sono descritte in @ref{Time signature}. @lilypond[quote,verbatim] << \new Staff { \overrideTimeSignatureSettings 3/4 % timeSignatureFraction 1/8 % baseMomentFraction 1,5 % beatStructure #'() % beamExceptions \time 3/4 \repeat unfold 6 { a'8 } } \new Staff { \time 3/4 \repeat unfold 6 { a'8 } } >> @end lilypond @node Travature manuali @unnumberedsubsubsec Travature manuali @translationof Manual beams @cindex travature manuali @funindex ] @funindex [ In alcuni casi potrebbe essere necessario scavalcare l'algoritmo di disposizione automatica delle travature. Ad esempio, questo algoritmo non inserirà delle travature tra le pause o tra le stanghette; e nelle partiture corali la disposizione delle travature è spesso determinato dall'articolazione del testo piuttosto che da quella musicale. Tali travature possono essere specificate manualmente indicandone l'inizio e la fine con @code{[} e @code{]}. @lilypond[quote,verbatim] \relative { r4 r8[ g' a r] r g[ | a] r } @end lilypond @cindex travature manuali, scorciatoia per impostare la direzione @cindex travature manuali, abbellimenti La direzione delle travature può essere impostata manualmente attraverso gli indicatori di direzione: @lilypond[quote,verbatim] \relative { c''8^[ d e] c,_[ d e f g] } @end lilypond @funindex \noBeam Le note individuali possono essere contrassegnate con @code{\noBeam} per impedire che vengano inserite in una travatura: @lilypond[quote,verbatim] \relative { \time 2/4 c''8 c\noBeam c c } @end lilypond Le travature degli abbellimenti e quelle delle note normali possono coesistere simultaneamente. Gli abbellimenti privi di travatura non vengono inseriti nella travatura delle note normali. @lilypond[quote,verbatim] \relative { c''4 d8[ \grace { e32 d c d } e8] e[ e \grace { f16 } e8 e] } @end lilypond @funindex stemLeftBeamCount @funindex stemRightBeamCount Si può ottenere un controllo manuale delle travature ancora più preciso agendo sulle proprietà @code{stemLeftBeamCount} e @code{stemRightBeamCount}, che specificano il numero di travature da creare a sinistra e a destra della nota successiva. Se una di queste proprietà viene impostata, il suo valore verrà usato una volta sola, e la proprietà sarà poi cancellata. In questo esempio, l'ultima nota @code{f} ha una sola travatura a sinistra: la travatura corrispondente alla sottodivisione di un ottavo all'interno dell'intero raggruppamento. @lilypond[quote,verbatim] \relative a' { a8[ r16 f g a] a8[ r16 \set stemLeftBeamCount = #2 \set stemRightBeamCount = #1 f16 \set stemLeftBeamCount = #1 g16 a] } @end lilypond @predefined @code{\noBeam}. @endpredefined @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {flat-flags-and-beam-nibs.ly} @seealso Guida alla notazione: @ref{Direzione e posizionamento}, @ref{Grace notes}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Beam}, @rinternals{BeamEvent}, @rinternals{Beam_engraver}, @rinternals{beam-interface}, @rinternals{Stem_engraver}. @node Travature a raggiera @unnumberedsubsubsec Travature a raggiera @translationof Feathered beams @cindex travature a raggiera @cindex travature convergenti o divergenti @funindex \featherDurations @funindex grow-direction Le travature a raggiera servono a indicare che un gruppo di note determinato deve essere eseguito a un tempo progressivamente accelerato (o rallentato), senza cambiare l'andamento complessivo del brano. L'estensione della travatura a raggiera deve essere indicato a mano con @code{[} e @code{]}, e la convergenza o divergenza delle travature si determina specificando la la direzione della proprietà @code{Beam} di @code{grow-direction}. Perché il @emph{ritardando} o l'@emph{accelerando} indicati dalla travatura a raggiera trovino riscontro nella disposizione delle note e nell'esecuzione del file MIDI, le note devono essere raggruppate in un'espressione musicale delimitata da parentesi graffe e preceduta dal comando @code{featherDurations}, che specifica il rapporto tra le durate delle prime e delle ultime note del gruppo. Le parentesi quadre indicano l'estensione della travatura, mentre quelle graffe indicano quali note devono avere una durata modificata. Di norma queste parentesi delimitano lo stesso gruppo di note, ma questo non è tassativo: i due comandi sono indipendenti. Nell'esempio seguente le otto note da un sedicesimo occupano esattamente lo stesso tempo di una nota di due quarti, ma la prima nota dura la metà dell'ultima e le note intermedie si allungano gradualmente. Le prime quattro note da un trentaduesimo sono progressivamente più veloci, mentre le ultime quattro presentano lo stesso tempo. @lilypond[verbatim,quote] \relative c' { \override Beam.grow-direction = #LEFT \featherDurations #(ly:make-moment 2/1) { c16[ c c c c c c c] } \override Beam.grow-direction = #RIGHT \featherDurations #(ly:make-moment 2/3) { c32[ d e f] } % ripristina le travature normali \override Beam.grow-direction = #'() { g32[ a b c] } } @end lilypond @noindent La spaziatura rappresenta la durata effettiva delle note solo in modo approssimato, mentre il tempo nel file MIDI è esatto. @predefined @code{\featherDurations}. @endpredefined @seealso Frammenti di codice: @rlsr{Rhythms}. @knownissues Il comando @code{\featherDurations} funziona solamente con frammenti di musica molto brevi e quando i numeri della frazione sono piccoli. @node Battute @subsection Battute @translationof Bars @menu * Stanghette:: * Numeri di battuta:: * Controlli di battuta e del numero di battuta:: * Segni di chiamata:: @end menu @node Stanghette @unnumberedsubsubsec Stanghette @translationof Bar lines @cindex stanghette @cindex battuta, stanghette @cindex misura, stanghette @cindex stanghette di chiusura @cindex stanghette doppie @cindex battute dei ritornelli @funindex \bar Le stanghette delimitano le misure e sono usate anche per indicare i ritornelli. Di norma, le stanghette semplici sono inserite automaticamente in base all'indicazione di tempo. Si possono inserire altri tipi di stanghette col comando @code{\bar}. Ad esempio, di solito si usa una stanghetta finale al termine di un brano: @lilypond[quote,verbatim] \relative { e'4 d c2 \bar "|." } @end lilypond Se l'ultima nota di una misura non termina entro la stanghetta inserita automaticamente, non viene segnalato un errore: si presuppone che la nota continui nella misura successiva. Ma se ci sono tante misure simili in sequenza, la musica potrebbe apparire compressa oppure scorrere fuori dalla pagina. Questo accade perché le interruzioni di linea automatiche si verificano solo al termine di misure complete, ovvero quando tutte le note terminano prima dell'inizio di una misura. @warning{Una durata errata può impedire un'interruzione di linea, causando una linea di musica altamente compressa oppure a musica che prosegue fuori dalla pagina.} @cindex interruzioni di linea @cindex stanghette invisibili Le interruzioni di linea sono permesse anche in caso si stanghette inserite a mano anche all'interno di misure incomplete. Per permettere un'interruzione di linea senza che appaia una stanghetta si usa: @example \bar "" @end example @noindent Questo comando inserirà una stanghetta invisibile e consentirà (senza però forzarla) un'interruzione di linea in questo punto. Il conteggio dei numeri di battuta non incrementa. Per forzare un'interruzione di linea si veda @ref{Line breaking}. @cindex stanghette manuali @cindex battuta, stanghette manuali @cindex misura, stanghette manuali Si possono inserire questa e altre stanghette speciali in qualsiasi punto. Quando coincidono con la fine di una misura, sostituiscono la stanghetta semplice che sarebbe stata posta automaticamente. Quando non coincidono con la fine di una misura, la stanghetta specificata viene inserita in quel punto. Si noti che le stanghette manuali hanno una funzione puramente visiva. Non hanno alcun effetto sulle proprietà di una normale stanghetta, come i numeri della misura, le alterazioni, le interruzioni di linea, etc. Non influiscono nemmeno sul conteggio e sulla posizione delle stanghette automatiche successive. Quando una stanghetta manuale è posta nel punto in cui si trova già una normale stanghetta, le caratteristiche della stanghetta originale non sono alterate. Sono disponibili per l'inserimento manuale due tipi di stanghette semplici e cinque tipi di stanghette doppie: @lilypond[quote,verbatim] \relative { f'1 \bar "|" f1 \bar "." g1 \bar "||" a1 \bar ".|" b1 \bar ".." c1 \bar "|.|" d1 \bar "|." e1 } @end lilypond @noindent oltre alle stanghette puntate e tratteggiate: @lilypond[quote,verbatim] \relative { f'1 \bar ";" g1 \bar "!" a1 } @end lilypond @noindent e a nove tipi di stanghette per le ripetizioni: @lilypond[quote,verbatim] \relative { f'1 \bar ".|:" g1 \bar ":..:" a1 \bar ":|.|:" b1 \bar ":|.:" c1 \bar ":.|.:" d1 \bar "[|:" e1 \bar ":|][|:" f1 \bar ":|]" g1 \bar ":|." a1 } @end lilypond Inoltre, una stanghetta può apparire come un semplice segno di spunta: @lilypond[quote,fragment,verbatim] f'1 \bar "'" g'1 @end lilypond Tuttavia,dato che questi segni di spunta sono tipicamente usati nella notazione gregoriana, è preferibile usare @code{\divisioMinima}, come è descritto nella sezione @ref{Divisiones} della parte dedicata al canto gregoriano. LilyPond supporta la notazione gregoriana russa e fornisce una stanghetta speciale per questo tipo di notazione: @lilypond[quote,fragment,verbatim] f'1 \bar "k" @end lilypond I dettagli di questo tipo di notazione sono spiegati in @ref{Typesetting Kievan square notation}. @cindex segno Per i segni di tipo segno interni al rigo, ci sono tre tipi di stanghette che differiscono nel comportamento quando incontrano un'interruzione di linea: @lilypond[quote,verbatim] \relative c'' { c4 c c c \bar "S" c4 c c c \break \bar "S" c4 c c c \bar "S-|" c4 c c c \break \bar "S-|" c4 c c c \bar "S-S" c4 c c c \break \bar "S-S" c1 } @end lilypond @cindex ritornelli Sebbene LilyPond preveda l'inserimento manuale delle stanghette che indicano i ritornelli, ciò non consente il riconoscimento della musica come una sezione da ripetere. Tali sezioni devono essere inserite con i vari comandi di ripetizione (vedi @ref{Repeats}), che creano automaticamente le stanghette appropriate. Inoltre si può specificare @code{".|:-||"}, che è equivalente a @code{".|:"} tranne in presenza di un'interruzione di linea, dove crea una doppia stanghetta alla fine della linea e una stanghetta di inizio ripetizione all'inizio della linea successiva. @lilypond[quote,verbatim] \relative c'' { c4 c c c \bar ".|:-||" c4 c c c \break \bar ".|:-||" c4 c c c } @end lilypond Esistono sei diverse combinazioni di ripetizioni e indicazioni di segno: @lilypond[quote,verbatim] \relative c'' { c4 c c c \bar ":|.S" c4 c c c \break \bar ":|.S" c4 c c c \bar ":|.S-S" c4 c c c \break \bar ":|.S-S" c4 c c c \bar "S.|:-S" c4 c c c \break \bar "S.|:-S" c4 c c c \bar "S.|:" c4 c c c \break \bar "S.|:" c4 c c c \bar ":|.S.|:" c4 c c c \break \bar ":|.S.|:" c4 c c c \bar ":|.S.|:-S" c4 c c c \break \bar ":|.S.|:-S" c1 } @end lilypond Esiste inoltre un comando @code{\inStaffSegno} che crea una stanghetta con segno in congiunzione con un'appropriata stanghetta di ripetizione se usata con un comando @code{\repeat volta}, vedi @ref{Normal repeats}.. @funindex \defineBarLine @cindex stanghette, definire @cindex definire le stanghette Si possono definire nuovi tipi di stanghette con @code{\defineBarLine}: @example \defineBarLine @var{tipo-stanghetta} #'(@var{fine} @var{inizio} @var{span}) @end example Le variabili di @code{\defineBarline} possono includere la stringa @q{vuota} @code{""},che è equivalente a una stanghetta invisibile. Oppure possono essere impostate su @code{#f}, che fa sì che non appaia alcuna stanghetta. Dopo averla definita, si può richiamare la nuova stanghetta col comando @code{\bar} @var{tipo-stanghetta}. Attualmente sono disponibile dieci tipi di stanghetta: @lilypond[quote,verbatim] \defineBarLine ":" #'("" ":" "") \defineBarLine "=" #'("=" "" "") \defineBarLine "[" #'("" "[" "") \defineBarLine "]" #'("]" "" "") \new Staff { s1 \bar "|" s1 \bar "." s1 \bar "!" s1 \bar ";" s1 \bar ":" s1 \bar "k" s1 \bar "S" s1 \bar "=" s1 \bar "[" s1 \bar "]" s1 \bar "" } @end lilypond La stanghetta @code{"="} crea una stanghetta doppia da combinare con il il segno. Non va usata per creare una stanghetta doppia indipendente; in questo caso è preferibile usare @code{\bar} @var{"||"}. Il segno @code{"-"} introduce le annotazioni alle stanghette che servono a distinguere quelle che hanno aspetto identico ma un diverso comportamento in corrispondenza delle interruzioni di linea e/o un diverso modo di connettere le stanghette tra i righi. La parte che segue il segno @code{"-"} non viene usato per costruire la stanghetta. @lilypond[quote,verbatim] \defineBarLine "||-dashedSpan" #'("||" "" "!!") \new StaffGroup << \new Staff \relative c'' { c1 \bar "||" c1 \bar "||-dashedSpan" c1 } \new Staff \relative c'' { c1 c1 c1 } >> @end lilypond Inoltre, lo spazio @code{" "} fa da spaziatore e fa sì che le stanghette tra i righi siano allineate correttamente alle stanghette principali: @lilypond[quote,verbatim] \defineBarLine ":|.-sbagliata" #'(":|." "" "|.") \defineBarLine ":|.-giusta" #'(":|." "" " |.") \new StaffGroup << \new Staff { c1 \bar ":|.-sbagliata" c1 \bar ":|.-giusta" c1 } \new Staff { c1 c1 c1 } >> @end lilypond Se servono ulteriori elementi, LilyPond fornisce un modo semplice per definirli. Maggiori informazioni sulla modifica e l'aggiunta delle stanghette sono presenti nel file @file{scm/bar-line.scm}. Nelle partiture con molti righi, un comando @code{\bar} inserito in un rigo viene applicato automaticamente a tutti i righi. Le stanghette risultanti sono connesse tra i diversi righi di un @code{StaffGroup}, @code{PianoStaff} o @code{GrandStaff}. @lilypond[quote,verbatim] << \new StaffGroup << \new Staff \relative { e'4 d \bar "||" f4 e } \new Staff \relative { \clef bass c'4 g e g } >> \new Staff \relative { \clef bass c'2 c2 } >> @end lilypond @cindex stanghette predefinite, modifica @funindex whichBar @funindex defaultBarType @funindex \bar @funindex bartype Il comando @samp{\bar @var{tipo-stanghetta}} è una scorciatoia di @samp{\set Timing.whichBar = @var{tipo-stanghetta}}. Una stanghetta viene creata ogni volta che si imposta la proprietà @code{whichBar}. Il tipo di stanghetta predefinita per le stanghette inserite automaticamente è @code{"|"}. Si può modificare in qualsiasi momento con @samp{\set Timing.defaultBarType = @var{tipo-stanghetta}}. @seealso Guida alla notazione: @ref{Line breaking}, @ref{Repeats}, @ref{Grouping staves}. File installati: @file{scm/bar-line.scm}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{BarLine} (creata al livello @code{Staff}), @rinternals{SpanBar} (tra i righi), @rinternals{Timing_translator} (per le proprietà di Timing). @node Numeri di battuta @unnumberedsubsubsec Numeri di battuta @translationof Bar numbers @cindex numeri di battuta @cindex battuta, numeri @cindex misura, numeri @funindex currentBarNumber I numeri di battuta appaiono all'inizio di ogni linea tranne la prima. Il numero viene salvato nella proprietà @code{currentBarNumber}, che viene aggiornata automaticamente per ogni misura. Può anche essere impostata a mano: @lilypond[verbatim,quote] \relative c' { c1 c c c \break \set Score.currentBarNumber = #50 c1 c c c } @end lilypond @cindex numeri di battuta, disposizione a distanza regolare @funindex barNumberVisibility @funindex BarNumber I numeri di battuta possono essere mostrati a intervalli regolari anziché solo all'inizio di ogni linea. Per farlo occorre sovrascrivere il comportamento predefinito e permettere ai numeri di battuta di apparire anche in punti diversi dall'inizio della linea. Questo comportamento è regolato dalla proprietà @code{break-visibility} di @code{BarNumber}, che considera tre valori impostabili su @code{#t} o @code{#f}, i quali indicano se il numero di battuta corrispondente debba essere visibile o no. L'ordine dei tre valori è @code{end of line visible}, @code{middle of line visible}, @code{beginning of line visible}. Nell'esempio seguente i numeri di battuta compaiono in tutti i punti possibili: @lilypond[verbatim,quote] \relative c' { \override Score.BarNumber.break-visibility = ##(#t #t #t) \set Score.currentBarNumber = #11 % Permette la visualizzazione del primo numero di battuta \bar "" c1 | c | c | c \break c1 | c | c | c } @end lilypond @snippets @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {printing-the-bar-number-for-the-first-measure.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {printing-bar-numbers-at-regular-intervals.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {printing-bar-numbers-with-changing-regular-intervals.ly} @cindex numero di battuta, formato @cindex battuta, numero, formato del @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {printing-bar-numbers-inside-boxes-or-circles.ly} @cindex numeri di battuta, con lettere @cindex numeri di battuta, con ripetizioni @lilypondfile[verbatim,quote,texidoc,doctitle] {alternative-bar-numbering.ly} @cindex numero di battuta, allineamento @lilypondfile[verbatim,quote,texidoc,doctitle] {aligning-bar-numbers.ly} @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle] {removing-bar-numbers-from-a-score.ly} @seealso Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{BarNumber}, @rinternals{Bar_number_engraver}. @cindex numeri di battuta, collisione @cindex collisione, numeri di battuta @knownissues I numeri di battuta possono collidere con la parte superiore della parentesi quadra di @code{StaffGroup}, se presente. Per evitare la collisione, si può usare la proprietà @code{padding} di @code{BarNumber} per posizionare correttamente il numero. Si veda @rinternals{StaffGroup} e @rinternals{BarNumber} per maggiori informazioni. @node Controlli di battuta e del numero di battuta @unnumberedsubsubsec Controlli di battuta e del numero di battuta @translationof Bar and bar number checks @cindex controlli di battuta @cindex controlli del numero di battuta @cindex controllo della misura @cindex battuta, controlli @cindex numeri di battuta, controlli @funindex barCheckSynchronize @funindex | I controlli di battuta aiutano a rilevare gli errori di durata. Il controllo di battuta si inserisce col simbolo della barra verticale, @code{|}, in un qualsiasi punto in cui è previsto l'inserimento di una stanghetta. Se vengono trovati controlli di battuta in punti diversi, viene creata una lista di avvisi nel file di log che mostra i numeri di linea e le linee in cui il controllo è fallito. Nell'esempio seguente il secondo controllo di battuta segnalerà un errore. @example \time 3/4 c2 e4 | g2 | @end example Una durata non corretta può generare uno spartito completamente alterato, specialmente nel caso di brani polifonici. Quindi il primo passo da compiere per correggere l'input è la verifica dei controlli di battuta e delle durate errate. Se i controlli di battuta successivi sono spostati dello stesso intervallo musicale, viene mostrato solo il primo messaggio di avviso. Così l'avvertimento si concentra sulla causa dell'errore di tempo. I controlli di battuta possono essere usati anche all'interno del testo vocale: @example \lyricmode @{ \time 2/4 Twin -- kle | Twin -- kle | @} @end example Attenzione: i segni di controllo di ottava nel testo vocale sono elaborati nel momento musicale in cui la sillaba @emph{che segue} il segno di controllo viene elaborata. Se il testo è associato alle note di una voce che ha una pausa all'inizio di una battuta, non è possibile individuare alcuna sillaba all'inizio di quella battuta e apparirà un avvertimento se viene posto un controllo di battuta in quel punto del testo vocale. @funindex | @funindex "|" È anche possibile ridefinire l'azione da prendere quando si incontra un controllo di battuta o simbolo di barra verticale, @code{|}, nell'input, in modo che avvenga qualcosa di diverso dal controllo di battuta. Si può fare assegnando un'espressione musicale a @code{"|"}. Nell'esempio seguente @code{|}, invece di controllare la fine di una battuta, viene usato per inserire una stanghetta doppia ovunque appaia nell'input. @lilypond[quote,verbatim] "|" = \bar "||" { c'2 c' | c'2 c' c'2 | c' c'2 c' } @end lilypond @funindex \barNumberCheck Quando si copiano brani di una certa ampiezza, può essere d'aiuto verificare che i numeri di battuta di LilyPond corrispondano all'originale a partire dal quale si sta scrivendo il brano. Si può abilitare con @code{\barNumberCheck}, ad esempio, @verbatim \barNumberCheck #123 @end verbatim @noindent genererà un avvertimento se @code{currentBarNumber} non è 123 nel momento in cui viene elaborato. @seealso Frammenti di codice: @rlsr{Rhythms}. @node Segni di chiamata @unnumberedsubsubsec Segni di chiamata @translationof Rehearsal marks @cindex segni di chiamata @funindex \mark Per creare un segno di chiamata si usa il comando @code{\mark}. @lilypond[quote,verbatim] \relative c'' { c1 \mark \default c1 \mark \default c1 \mark \default c1 \mark \default } @end lilypond @noindent Il segno viene incrementato automaticamente se si usa @code{\mark \default}, ma è possibile usare anche un numero intero come argomento in modo da impostare il segno manualmente. Il valore da usare viene salvato nella proprietà @code{rehearsalMark}. @lilypond[quote,verbatim] \relative c'' { c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default } @end lilypond @noindent La lettera@tie{}@q{I} viene saltata, come vuole la tradizione tipografica. Se si desidera includere la lettera @q{I}, si può usare uno dei seguenti comandi, a seconda dello stile che si vuole (solo lettere, lettere in un quadrato o lettere in un cerchio). @example \set Score.markFormatter = #format-mark-alphabet \set Score.markFormatter = #format-mark-box-alphabet \set Score.markFormatter = #format-mark-circle-alphabet @end example @lilypond[quote,verbatim] \relative c'' { \set Score.markFormatter = #format-mark-box-alphabet c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default } @end lilypond @cindex segno di chiamata, formato @cindex segno di chiamata, stile @cindex stile del segno di chiamata @cindex formato del segno di chiamata @cindex segno, di chiamata, stile @cindex segno, di chiamata, formato @cindex segno di chiamata manuale @cindex segno di chiamata personalizzato Lo stile viene definito dalla proprietà @code{markFormatter}. È una funzione che accoglie come argomenti il segno corrente (un numero intero) e il contesto corrente. Dovrebbe restituire un oggetto testuale. Nell'esempio seguente, @code{markFormatter} viene prima impostato su una procedura predefinita e dopo alcune misure su una procedura che produce un numero racchiuso in un quadrato. @lilypond[quote,verbatim] \relative c'' { \set Score.markFormatter = #format-mark-numbers c1 \mark \default c1 \mark \default \set Score.markFormatter = #format-mark-box-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-letters c1 } @end lilypond Il file @file{scm/translation-functions.scm} contiene le definizioni di @code{format-mark-letters} (il formato predefinito), @code{format-mark-box-letters}, @code{format-mark-numbers} e @code{format-mark-box-numbers}. Possono essere usate come fonte di ispirazione per creare altre funzioni di formattazione. Si possono usare @code{format-mark-barnumbers}, @code{format-mark-box-barnumbers} e @code{format-mark-circle-barnumbers} per ottenere i numeri di battuta invece di numeri o lettere crescenti. Si possono specificare manualmente altri stili di segni di chiamata: @example \mark "A1" @end example @noindent Si noti che @code{Score.markFormatter} non ha effetto sui segni specificati in questo modo. Tuttavia, è possibile applicare un @code{\markup} alla stringa. @example \mark \markup@{ \box A1 @} @end example @cindex segno @cindex coda @cindex D.S. al Fine @cindex corona @cindex glifi musicali @funindex \musicglyph I glifi musicali (come il Segno) possono essere posti dentro il comando @code{\mark} @lilypond[quote,verbatim] \relative c' { c1 \mark \markup { \musicglyph #"scripts.segno" } c1 \mark \markup { \musicglyph #"scripts.coda" } c1 \mark \markup { \musicglyph #"scripts.ufermata" } c1 } @end lilypond @noindent L'elenco dei simboli che possono essere prodotti con @code{\musicglyph} si trova in @ref{Il font Emmentaler}. Per le più comuni modifiche relative al posizionamento dei segni di chiamata, si veda @ref{Formattazione del testo}. Per ottenere un controllo più preciso si consiglia di studiare il funzionamento della proprietà @code{break-alignable-interface} descritta in @ref{Allineamento degli oggetti}. Il file @file{scm/translation-functions.scm} contiene le definizioni di @code{format-mark-numbers} e @code{format-mark-letters}, che possono essere usate come fonte di ispirazione per creare altre funzioni di formattazione. @seealso Guida alla notazione: @ref{Il font Emmentaler}, @ref{Formattazione del testo}, @ref{Allineamento degli oggetti}. File installati: @file{scm/translation-functions.scm}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{MarkEvent}, @rinternals{Mark_engraver}, @rinternals{RehearsalMark}. @node Questioni ritmiche particolari @subsection Questioni ritmiche particolari @translationof Special rhythmic concerns @menu * Abbellimenti:: * Allineamento sulle cadenze:: * Gestione del tempo:: @end menu @node Abbellimenti @unnumberedsubsubsec Abbellimenti @translationof Grace notes @cindex ornamenti @cindex abbellimenti @cindex appoggiatura @cindex acciaccatura @funindex \grace @funindex \slashedGrace @funindex \acciaccatura @funindex \appoggiatura Gli abbellimenti sono degli ornamenti musicali che hanno un carattere in corpo più piccolo e non alterano la durata della misura. @lilypond[quote,verbatim] \relative { c''4 \grace b16 a4( \grace { b16 c16 } a2) } @end lilypond Esistono altri tre tipi di abbellimenti possibili; l'@emph{acciaccatura} -- un abbellimento in tempo libero indicato da una nota con legatura di portamento e un gambo barrato -- e l'@emph{appoggiatura}, che sottrae un valore determinato della nota principale a cui corrisponde e ha un gambo non barrato. È anche possibile creare un abbellimento con gambo barrato, come l'acciaccatura, ma privo di legatura di portamento, in modo da collocarla tra note già poste sotto una legatura: si usa il comando @code{\slashedGrace}. @lilypond[quote,verbatim] \relative { \acciaccatura d''8 c4 \appoggiatura e8 d4 \acciaccatura { g16 f } e2 \slashedGrace a,8 g4 \slashedGrace b16 a4( \slashedGrace b8 a2) } @end lilypond Il posizionamento degli abbellimenti è sincronizzato sui diversi righi. Nell'esempio seguente, ci sono due abbellimenti da un sedicesimo ogni abbellimento da un ottavo @lilypond[quote,verbatim] << \new Staff \relative { e''2 \grace { c16 d e f } e2 } \new Staff \relative { c''2 \grace { g8 b } c2 } >> @end lilypond @cindex abbellimenti al termine di una nota @funindex \afterGrace Se si desidera risolvere una nota su un abbellimento, si usa il comando @code{\afterGrace}. Considera due argomenti: la nota principale e gli abbellimenti che la seguono. @lilypond[quote,verbatim] \relative { c''1 \afterGrace d1 { c16[ d] } c1 } @end lilypond In questo modo, gli abbellimenti sono collocati @emph{dopo} l'inizio della nota principale. Il momento temporale in cui sono posti gli abbellimenti è una certa frazione della durata della nota principale. L'impostazione predefinita di @example afterGraceFraction = 3/4 @end example @noindent può essere ridefinita nel livello superiore. Ma è anche possibile specificare la frazione per ogni singolo comando @code{\afterGrace}. L'esempio seguente mostra le diverse spaziature che si ottengono con la frazione predefinita, impostandola a @code{15/16} e infine a @code{1/2} della nota principale. @lilypond[quote,verbatim] << \new Staff \relative { c''1 \afterGrace d1 { c16[ d] } c1 } \new Staff \relative { c''1 \afterGrace 15/16 d1 { c16[ d] } c1 } \new Staff \relative { c''1 \afterGrace 1/2 d1 { c16[ d] } c1 } >> @end lilypond Lo spazio tra la nota principale e l'abbellimento può essere definito anche attraverso delle pause spaziatrici. L'esempio seguente sposta l'abbellimento di uno spazio equivalente ai 7/8 della nota principale. @lilypond[quote,verbatim] \new Voice \relative { << { d''1^\trill_( } { s2 s4. \grace { c16 d } } >> c1) } @end lilypond @cindex modificare gli abbellimenti @cindex abbellimenti, modifica manuale @cindex abbellimenti, modifica delle impostazioni di formattazione L'espressione musicale introdotta dal comando @code{\grace} avrà delle impostazioni tipografiche speciali; per esempio, per rimpicciolire il tipo di carattere e impostare le direzioni. Dunque le modifiche che sovrascrivono tali impostazioni speciali devono essere poste all'interno del blocco @code{\grace}. Lo stesso vale per le modifiche che ripristinano i valori predefiniti. Nell'esempio seguente la direzione predefinita del gambo viene prima sovrascritta e poi ripristinata. @lilypond[quote,verbatim] \new Voice \relative { \acciaccatura { \stemDown f''16-> \stemNeutral } g4 e c2 } @end lilypond @cindex gambo barrato @snippets @lilypondfile[verbatim,quote,texidoc,doctitle] {using-grace-note-slashes-with-normal-heads.ly} @lilypondfile[verbatim,quote,texidoc,doctitle] {tweaking-grace-layout-within-music.ly} @lilypondfile[verbatim,quote,texidoc,doctitle] {redefining-grace-note-global-defaults.ly} @lilypondfile[verbatim,quote,texidoc,doctitle] {positioning-grace-notes-with-floating-space.ly} @seealso Glossario musicale: @rglosnamed{grace notes,acciaccatura}, @rglos{acciaccatura}, @rglos{appoggiatura}. Guida alla notazione: @ref{Scaling durations}, @ref{Manual beams}. File installati: @file{ly/grace-init.ly}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{GraceMusic}, @rinternals{Grace_beam_engraver}, @rinternals{Grace_auto_beam_engraver}, @rinternals{Grace_engraver}, @rinternals{Grace_spacing_engraver}. @knownissues @cindex acciaccatura su più note @cindex sincronizzazione degli abbellimenti Una @i{acciaccatura} con molte note raggruppate sotto una travatura è priva della barra trasversale e ha il medesimo aspetto di una @i{appoggiatura} composta da varie note raggruppate sotto una travatura. @c TODO Add link to LSR snippet to add slash when available La sincronizzazione degli abbellimenti può nascondere delle sorprese, perché vengono sincronizzati anche altri elementi della notazione del rigo, come le armature di chiave, le stanghette, etc. Fai attenzione quando metti insieme righi che hanno degli abbellimenti con righi che non ne hanno. Ad esempio @lilypond[quote,verbatim] << \new Staff \relative { e''4 \bar ".|:" \grace c16 d2. } \new Staff \relative { c''4 \bar ".|:" d2. } >> @end lilypond @noindent Si può ovviare a questo problema inserendo degli abbellimenti della durata corrispondente negli altri righi. Riprendendo l'esempio precedente @lilypond[quote,verbatim] << \new Staff \relative { e''4 \bar ".|:" \grace c16 d2. } \new Staff \relative { c''4 \bar ".|:" \grace s16 d2. } >> @end lilypond L'uso del comando @code{\grace} nella parte con le pause spaziatrici è obbligatorio, anche se la parte visibile usa @code{\acciaccatura} o @code{\appoggiatura}, perché altrimenti apparirà un orribile frammento di legatura di portamento che connette la nota di abbellimento invisibile alla nota seguente. Le sezioni con abbellimenti devono essere usate solamente all'interno di espressioni musicali sequenziali. Non è permesso annidare o affiancare gruppi di abbellimenti; potrebbero verificarsi blocchi del programma o altri errori se non si rispetta questa limitazione. Ogni abbellimento generato nell'output MIDI ha una durata di 1/4 della sua vera durata. Se la durata complessiva degli abbellimenti è maggiore della durata della nota che li precede, verrà generato l'errore @qq{@code{Going back in MIDI time}}. A meno che non si diminuisca la durata degli abbellimenti, ad esempio: @example c'8 \acciaccatura @{ c'8[ d' e' f' g'] @} @end example diventa: @example c'8 \acciaccatura @{ c'16[ d' e' f' g'] @} @end example Oppure si cambia esplicitamente la durata musicale: @example c'8 \acciaccatura @{ \scaleDurations 1/2 @{ c'8[ d' e' f' g'] @} @} @end example Vedi @ref{Scaling durations}. @node Allineamento sulle cadenze @unnumberedsubsubsec Allineamento sulle cadenze @translationof Aligning to cadenzas @cindex cadenza @cindex cadenza, allineamento su @cindex allineamento sulla cadenza Nell'ambito di una partitura per orchestra, le cadenze presentano un problema peculiare: quando si scrive una partitura che include una cadenza o un altro passaggio solistico, tutti gli altri strumenti devono saltare esattamente la durata complessiva delle note del passaggio, altrimenti inizieranno troppo presto o troppo tardi. Una possibile soluzione a questo problema consiste nell'uso delle funzioni @code{mmrest-of-length} e @code{skip-of-length}. Queste funzioni Scheme prendono come argomento una sezione di musica salvata in una variabile e generano una pausa multipla o @code{\skip} della lunghezza esatta del brano. @lilypond[verbatim,quote] MyCadenza = \relative { c'4 d8 e f g g4 f2 g4 g } \new GrandStaff << \new Staff { \MyCadenza c'1 \MyCadenza c'1 } \new Staff { #(mmrest-of-length MyCadenza) c'1 #(skip-of-length MyCadenza) c'1 } >> @end lilypond @seealso Glossario musicale: @rglos{cadenza}. Frammenti di codice: @rlsr{Rhythms}. @node Gestione del tempo @unnumberedsubsubsec Gestione del tempo @translationof Time administration @cindex gestione del tempo @cindex tempo (all'interno della partitura) @cindex musica in tempo libero @funindex currentBarNumber @funindex measurePosition @funindex measureLength Il tempo è gestito da @code{Timing_translator}, che si trova nel contesto @code{Score}. Un suo alias, @code{Timing}, viene aggiunto nel contesto nel quale si trova @code{Timing_translator}. Per assicurarsi che l'alias @code{Timing} sia disponibile, occorre istanziare esplicitamente il contesto che lo contiene (come @code{Voice} o @code{Staff}). Si usano le seguenti proprietà di @code{Timing} per tenere traccia del tempo in una partitura. @cindex numero di battuta @table @code @item currentBarNumber Il numero di battuta corrente. Un esempio che mostra l'uso di questa proprietà si trova in @ref{Numeri di battuta}. @item measureLength La durata delle misure nel tempo corrente. Per un tempo di 4/4 è@tie{}1, per un tempo di 6/8 è 3/4. Il suo valore determina quando debbano essere inserite le stanghette e come debbano essere generate le travature automatiche. @item measurePosition Il punto della misura in cui ci si trova. Questa quantità viene reimpostata sottraendo @code{measureLength} ogni volta che @code{measureLength} viene raggiunto o superato. Quando questo accade, @code{currentBarNumber} viene incrementato. @item timing Se impostato su @code{#t}, le variabili precedenti sono aggiornate ad ogni momento temporale. Se impostato su @code{#f}, l'incisore rimane nella misura corrente per un tempo indefinito. @end table Si può cambiare il tempo impostando esplicitamente una qualsiasi di queste variabili. Nel prossimo esempio, viene visualizzata l'indicazione di tempo predefinita di 4/4, ma @code{measureLength} è impostato su 5/4. A 4/8 della terza misura, @code{measurePosition} si sposta in avanti di 1/8 fino a 5/8, diminuendo quella misura di 1/8. Quindi la stanghetta successiva si troverà a 9/8 invece che a 5/4. @lilypond[quote,verbatim] \new Voice \relative { \set Timing.measureLength = #(ly:make-moment 5/4) c'1 c4 | c1 c4 | c4 c \set Timing.measurePosition = #(ly:make-moment 5/8) b4 b b8 | c4 c1 | } @end lilypond @noindent Come mostra l'esempio, @code{ly:make-moment n/m} definisce una durata di n/m della nota intera. Ad esempio, @code{ly:make-moment 1/8} corrisponde alla durata di un ottavo mentre @code{ly:make-moment 7/16} a quella di sette sedicesimi. @seealso Guida alla notazione: @ref{Numeri di battuta}, @ref{Unmetered music}. Frammenti di codice: @rlsr{Rhythms}. Guida al funzionamento interno: @rinternals{Timing_translator}, @rinternals{Score}. @c LocalWords: accMusic MyCadenza