@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 92d7753b7a1e9887afcc6ad6864a78940e7878fb
+ Translation of GIT committish: 7fdce4f39834cc8c83f176480cc1d20900eb09f8
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.14.0"
+@c \version "2.19.2"
@node Concetti fondamentali
@chapter Concetti fondamentali
@translationof Fundamental concepts
-Nel Tutorial abbiamo visto come produrre della bella musica a stampa
-da un semplice file di testo. Questa sezione presenta i concetti e le
+Nel Tutorial abbiamo visto come produrre dei belli spartiti da un
+semplice file di testo. Questa sezione presenta i concetti e le
tecniche richiesti per produrre partiture ugualmente belle, ma
più complesse.
\header @{ @}
\score @{
- @var{...compound music expression...} % all the music goes here!
+ @var{ @dots{} espressione musicale composta @dots{} } % tutta la musica va qui!
\layout @{ @}
\midi @{ @}
@}
@example
@{
\new StaffGroup <<
- @var{...insert the whole score of a Wagner opera in here...}
+ @var{ @dots{} inserisci qui l'intera opera di Wagner @dots{} }
>>
@}
@end example
@noindent
-Tutto quanto è compreso in @code{@{ ... @}} costituisce un'unica
+Tutto quanto è compreso in @code{@{ @dots{} @}} costituisce un'unica
espressione musicale.
Come abbiamo detto prima, il blocco @code{\score} può contenere altri
che si trova dentro un blocco @code{\score} riguarda solo quel blocco
@code{\score}, mentre un blocco @code{\layout} che si trova fuori da un
blocco @code{\score} (e quindi in un blocco @code{\book}, esplicitamente
-o implicitamente) riguraderà ogni @code{\score} in quel @code{\book}.
+o implicitamente) riguarderà ogni @code{\score} in quel @code{\book}.
Per maggiori dettagli si veda @ruser{Multiple scores in a book}.
musicale composta, potrebbe esserti utile ripassare il tutorial,
@ref{Espressioni musicali}. In quella sezione, abbiamo visto
come costruire grandi espressioni musicali a partire da piccoli brani -- abbiamo
-iniziato con le note, poi gli accordi, etc. Adesso inzieremo da una grande
+iniziato con le note, poi gli accordi, etc. Adesso inizieremo da una grande
espressione musicale e proseguiremo poi a spiegarne i dettagli. Per semplicità,
nel nostro esempio useremo soltanto un canto e un pianoforte. Per questa formazione
non abbiamo bisogno di @code{StaffGroup}, che non fa altro che raggruppare un insieme
di righi con una parentesi graffa a sinistra, ma abbiamo comunque bisogno dei
righi per il canto e per il pianoforte.
-@example
-\score @{
- @{ % questa parentesi inizia la principale espressione musicale composta
- \new StaffGroup <<
- @var{...inserisci qui la partitura completa di un'opera di Wagner...}
- >>
- @} % questa parentesi chiude la principale espressione musicale composta
- \layout @{ @}
-@}
-@end example
-
-Un'intera opera di Wagner sarebbe probabilmente il doppio di questo
-manuale, quindi aggiungeremo solo un pianoforte e un cantante. Per questo
-ensemble non abbiamo bisongo di @code{StaffGroup}, che non fa altro che
-raggruppare un certo numero di righi con una parentesi a sinistra, dunque lo
-toglieremo. Tuttavia @emph{abbiamo} bisogno di un pianoforte e di una voce.
-
@example
\score @{
<<
da coltivare, perché ti permette di vedere a colpo d'occhio a cosa serve
ciascun rigo.
-Ricorda che si usano @code{<< ... >>} invece di @code{@{ ... @}} per indicare
+Ricorda che si usa @code{<< @dots{} >>} invece di @code{@{ @dots{} @}} per indicare
la musica simultanea. In questo modo la parte vocale e quella di pianoforte
-appaiono una sopra l'altra nello spartito. Il costrutto @code{<< ... >>} non
+appaiono una sopra l'altra nello spartito. Il costrutto @code{<< @dots{} >>} non
sarebbe necessario per il rigo del cantante nell'esempio precedente se contenesse
-soltanto un'espressione musicale sequenziale, ma @code{<< ... >>} al posto delle
+soltanto un'espressione musicale sequenziale, ma @code{<< @dots{} >>} al posto delle
parentesi è necessario se la musica sul rigo deve contenere due o più espressioni
simultanee, ad esempio due voci simultanee, o una voce con del testo. Vogliamo
avere una voce con del testo, dunque ci servono le parentesi ad angolo. Aggiungeremo
Gli ossia vengono spesso scritti senza armatura di chiave e senza
tempo, e solitamente hanno un font più piccolo. Richiedono ulteriori
comandi che non sono stati ancora presentati. Si veda @ref{Size of objects},
-e @ruser{Ossia staves}.
+e @ruser{Righi ossia}.
@node Sul non annidamento di parentesi e legature di valore
@multitable @columnfractions .3 .7
@headitem Tipo di parentesi
@tab Funzione
-@item @code{@{ .. @}}
+@item @code{@{ @dots{} @}}
@tab Racchiude un frammento di musica sequenziale
-@item @code{< .. >}
+@item @code{< @dots{} >}
@tab Racchiude le note di un accordo
-@item @code{<< .. >>}
+@item @code{<< @dots{} >>}
@tab Racchiude le espressioni musicali simultanee
-@item @code{( .. )}
+@item @code{( @dots{} )}
@tab Contrassegna l'inizio e la fine di una legatura di portamento
-@item @code{\( .. \)}
+@item @code{\( @dots{} \)}
@tab Contrassegna l'inizio e la fine di una legatura di frase
-@item @code{[ .. ]}
- @tab Contrassegna l'inizio e la fine di una cediglia impostata manualmente
+@item @code{[ @dots{} ]}
+ @tab Contrassegna l'inizio e la fine di una travatura impostata manualmente
@end multitable
A questi dovremmo aggiungere altri costrutti che generano linee tra
e lungo le note: legature di valore (contrassegnate dal tilde, @code{~}),
-i gruppi irregolari scritti in questa forma @code{\times x/y @{..@}}, e
-gli abbellimenti, indicati con @code{\grace@{..@}}.
+i gruppi irregolari scritti in questa forma @code{\tuplet x/y @{ @dots{} @}}, e
+gli abbellimenti, indicati con @code{\grace@{ @dots{} @}}.
Fuori da LilyPond, l'uso convenzionale delle parentesi esige che i diversi
-tipi siano annidati adeguatamente, in questo modo, @code{<< [ @{ ( .. )
+tipi siano annidati adeguatamente, in questo modo, @code{<< [ @{ ( @dots{} )
@} ] >>}, dove le parentesi che chiudono si trovano esattamente
nell'ordine opposto alle parentesi che aprono. Questo @strong{è} un
requisito per i tre tipi di parentesi descritti dal termine @q{Racchiude}
queste non sono parentesi nel senso che racchiudono qualcosa -- sono semplicemente
dei contrassegni che indicano dove qualcosa inizia e finisce.
-Quindi, ad esempio, una legatura di frase può iniziare prima di una cediglia
-inserita manualmente e finire prima della fine della cediglia -- non
+Quindi, ad esempio, una legatura di frase può iniziare prima di una travatura
+inserita manualmente e finire prima della fine della travatura -- non
molto musicale, forse, ma possibile:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
- { g8\( a b[ c b\) a] g4 }
+@lilypond[quote,verbatim,ragged-right,relative=2]
+g8\( a b[ c b\) a] g4
@end lilypond
In generale, tipi diversi di parentesi, costrutti in parentesi e segni che
riguardano gruppi irregolari, legature e abbellimenti possono essere combinati
-liberamente. L'esempio seguente mostra una cediglia che si estende su un
+liberamente. L'esempio seguente mostra una travatura che si estende su un
gruppo irregolare (linea 1), una legatura di portamento che si estende su
-una terzina (linea 2), una cediglia e una legatura di portamento che si
+una terzina (linea 2), una travatura e una legatura di portamento che si
estendono su una terzina, una legatura di valore che attraversa due gruppi
irregolari, e una legatura di frase che si estende fuori da un gruppo
irregolare (linee 3 e 4).
-@lilypond[quote,verbatim,fragment,ragged-right]
-{
- r16[ g \times 2/3 { r16 e'8] }
- g16( a \times 2/3 { b16 d) e' }
- g8[( a \times 2/3 { b8 d') e'~] } |
- \times 4/5 { e'32\( a b d' e' } a'4.\)
-}
+@lilypond[quote,verbatim,ragged-right,relative=1]
+r16[ g \tuplet 3/2 { r16 e'8] }
+g,16( a \tuplet 3/2 { b16 d) e }
+g,8[( a \tuplet 3/2 { b8 d) e~] } |
+\tuplet 5/4 { e32\( a, b d e } a4.\)
@end lilypond
musica. Se un contesto della voce non è dichiarato esplicitamente, ne
viene creato uno automaticamente, come abbiamo visto all'inizio di questo
capitolo. Alcuni strumenti, come ad esempio un oboe, possono produrre una
-sola nota per volta. La musica scritta per tali strumenti è monofonica e
-necessita di una sola voce. Invece gli strumenti che possono produrre più
-di una nota contemporaneamente, come ad esempio il pianoforte, richiederanno
-spesso voci multiple per codificare le diverse note e ritmi simultanei che
+sola nota per volta. La musica scritta per tali strumenti necessita di
+una sola voce. Invece gli strumenti che possono produrre più di una nota
+contemporaneamente, come ad esempio il pianoforte, richiederanno spesso
+voci multiple per codificare le diverse note e ritmi simultanei che
sono capaci di riprodurre.
Ovviamente, una singola voce può contenere molte note in un accordo,
@end lilypond
Questa musica può essere espressa usando soltanto i simboli dell'accordo,
-ovvero le parentesi angolari, @code{< ... >}, e una singola voce è
+ovvero le parentesi angolari, @code{< @dots{} >}, e una singola voce è
sufficiente. Ma cosa accadrebbe se il Fa# fosse in realtà una nota di un
ottavo seguita da un Sol di un ottavo, una nota di passaggio che porta al La?
In questo caso abbiamo due note che iniziano nello stesso momento ma hanno
@funindex \\
Il modo più semplice per inserire frammenti che utilizzino più di una voce
-su un rigo è scrivere ogni voce come una sequenza (con @code{@{...@}}),
-e poi combinarle in simultanea tramite le doppie parentesi angolari, @code{<<...>>}.
+su un rigo è scrivere ogni voce come una sequenza (con @code{@{ @dots{} @}}),
+e poi combinarle in simultanea tramite le doppie parentesi angolari, @code{<< @dots{} >>}.
Per collocarli in voci distinte, i frammenti devono essere separati da un doppio
backslash, @code{\\}. Senza di esso, le note sarebbero inserite in un'unica
voce, e questo normalmente causerebbe degli errori. Questa tecnica è
-particolarmente adatta ai brani che sono in gran parte monofonici ma
+particolarmente adatta ai brani che sono in gran parte omofonici ma
con brevi e occasionali sezioni polifoniche.
Ecco come suddividere gli accordi precedenti in due voci e aggiungere sia
la nota di passaggio che la legatura di portamento:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[quote,verbatim,ragged-right,relative=2]
\key g \major
% Voice "1" Voice "2"
<< { g4 fis8( g) a4 g } \\ { d4 d d d } >>
Ecco un altro semplice esempio:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[quote,verbatim,ragged-right,relative=2]
\key d \minor
% Voice "1" Voice "2"
<< { r4 g g4. a8 } \\ { d,2 d4 g } >> |
può aiutare la leggibilità del codice, ma se ci sono molte note in
ogni battuta è preferibile dividere ogni voce, così:
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[quote,verbatim,ragged-right,relative=2]
\key d \minor
<< {
% Voice "1"
costrutto per scrivere tre o più voci aggiungendo più backslash.
I contesti della voce hanno i nomi @code{"1"}, @code{"2"}, etc.
-In ogni contesto, la direzione verticale di legature di portamento,
-gambi, legature di valore, dinamica, etc., è impostata correttamente.
+I primi contesti impostano le voci @emph{più esterne}, la voce
+più alta nel contesto @code{"1"} e la più bassa nel @code{"2"}. Le voci
+più interne vanno nei contesti @code{"3"} e @code{"4"}. In ogni
+contesto, la direzione verticale di legature di portamento, gambi,
+legature di valore, dinamica, etc., è impostata correttamente.
-@lilypond[quote,verbatim,fragment]
+@lilypond[quote,verbatim]
\new Staff \relative c' {
% Main voice
c16 d e f
% Voice "1" Voice "2" Voice "3"
<< { g4 f e } \\ { r8 e4 d c8~ } >> |
- << { d2 e } \\ { c8 b16 a b8 g~ g2 } \\ { s4 b c2 } >> |
+ << { d2 e } \\ { c8 b16 a b8 g~ 2 } \\ { s4 b c2 } >> |
}
@end lilypond
Tutte queste voci sono separate dalla voce principale che contiene le
-note e che si trova fuori dal costrutto @code{<< .. >>}, che chiameremo
+note e che si trova fuori dal costrutto @code{<< @dots{} >>}, che chiameremo
il @emph{costrutto simultaneo}. Legature di portamento e di valore
possono connettere solo note che fanno parte della stessa voce, quindi
le legature non possono entrare in un costrutto simultaneo o uscirne. Viceversa,
{ d2 e }
\\
% Voice 2 continues
- { c8 b16 a b8 g~ g2 }
+ { c8 b16 a b8 g~ 2 }
\\
{
\voiceThreeStyle
I comandi @code{\voiceXXXStyle} sono pensati soprattutto
per documenti didattici come questo. Modificano il colore
-della testa, del gambo e delle cediglie, e lo stile della
+della testa, del gambo e delle travature, e lo stile della
testa, così da rendere le voci facilmente distinguibili.
La voce uno è impostata su rombi rossi, la voce due su triangoli blu,
la voce tre su cerchi barrati verdi, e la voce quattro (non impiegata
non usato qui) riporta lo stile all'impostazione predefinita.
Vedremo in seguito come l'utente possa creare comandi simili.
Si veda @ref{Visibility and color of objects} e
-@ref{Using variables for tweaks}.
+@ref{Using variables for layout adjustments}.
@cindex polifonia e modo relativo
@cindex modo relativo e polifonia
all'inizio di ogni voce:
@example
-\relative c' @{ noteA ... @}
+\relative c' @{ noteA @dots{} @}
<<
- \relative c'' @{ < noteB noteC > ... @}
+ \relative c'' @{ < noteB noteC > @dots{} @}
\\
- \relative g' @{ noteD ... @}
+ \relative g' @{ noteD @dots{} @}
>>
-\relative c' @{ noteE ... @}
+\relative c' @{ noteE @dots{} @}
@end example
Analizziamo infine le voci in un brano più complesso. Queste note sono
<< % Voice one
{ c2 aes4. bes8 }
\\ % Voice two
- { aes2 f4 fes }
- \\ % No voice three
- \\ % Voice four
{
% Ignore these for now - they are explained in Ch 4
- \once \override NoteColumn #'force-hshift = #0
- <ees c>2
- \once \override NoteColumn #'force-hshift = #0.5
+ \once \override NoteColumn.ignore-collision = ##t
+ <ees, c>2
+ \once \override NoteColumn.force-hshift = #0.5
des2
}
+ \\ % No voice three
+ \\ % Voice four
+ {
+ \override NoteColumn.force-hshift = #0
+ aes'2 f4 fes
+ }
>> |
<c ees aes c>1 |
}
}
\\ % Voice two
{ \voiceTwoStyle
- aes2 f4 fes
+ % Ignore these for now - they are explained in Ch 4
+ \once \override NoteColumn.ignore-collision = ##t
+ <ees, c>2
+ \once \override NoteColumn.force-hshift = #0.5
+ des2
}
\\ % No Voice three (we want stems down)
\\ % Voice four
{ \voiceThreeStyle
- % Ignore these for now - they are explained in Ch 4
- \once \override NoteColumn #'force-hshift = #0
- <ees c>2
- \once \override NoteColumn #'force-hshift = #0.5
- des2
+ \override NoteColumn.force-hshift = #0
+ aes'2 f4 fes
}
>> |
<c ees aes c>1 |
Proviamo a scrivere il codice di questa musica da zero. Come
vedremo, questo pone alcune difficoltà. Come abbiamo imparato,
-iniziamo usando il costrutto @code{<< \\ >>} per inserire la musica
+iniziamo usando il costrutto @code{<< \\ >>} per inserire la musica
della prima battuta in tre voci:
-@lilypond[quote,verbatim,fragment,ragged-right]
+@lilypond[quote,verbatim,ragged-right]
\new Staff \relative c'' {
\key aes \major
<<
- { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des2 }
- >>
- <c ees aes c>1
+ { c2 aes4. bes8 } \\ { <ees, c>2 des } \\ { aes'2 f4 fes }
+ >> |
+ <c ees aes c>1 |
}
@end lilypond
giusti, ma in questo brano i gambi della voce 3 dovrebbero essere in
giù. Possiamo correggere semplicemente omettendo la voce tre e ponendo la
musica nella voce quattro. Si può fare aggiungendo semplicemente un altro
-paio di @code {\\}:
+paio di @code{\\}:
-@lilypond[quote,verbatim,fragment,ragged-right]
+@lilypond[quote,verbatim,ragged-right]
\new Staff \relative c'' {
\key aes \major
- << % Voice one
+ << % Voice one
{ c2 aes4. bes8 }
- \\ % Voice two
- { aes2 f4 fes }
- \\ % Omit Voice three
- \\ % Voice four
- { <ees c>2 des2 }
+ \\ % Voice two
+ { <ees, c>2 des }
+ \\ % Omit Voice three
+ \\ % Voice four
+ { aes'2 f4 fes }
>> |
<c ees aes c>1 |
}
@end lilypond
@noindent
-Possiamo vedere che questo corregge la direzione del gambo, ma espone
-a un problema talvolta presente con le voci multiple: i gambi delle note
-in una voce possono collidere con le teste delle note di un'altra voce. Nel
-disporre le note, LilyPond permette alle note o agli accordi di due diverse
-voci di occupare la stessa colonna verticale della nota purché i gambi siano
-in direzioni opposte, ma le note della terza e quarta voce vengono
-spostate, se necessario, per evitare la collisione tra le teste. Questo
-di solito funziona bene, ma in questo esempio le note della voce più bassa,
-con le impostazioni predefinite, appaiono chiaramente disposte in una posizione
-non ottimale. LilyPond fornisce molti modi per aggiustare la collocazione
+Possiamo vedere che questo corregge la direzione del gambo, ma il posizionamento
+orizzontale delle note non è quello che desideriamo. LilyPond sposta le note
+più interne quando queste o i loro gambi collidono con le voci più
+esterne, ma questo non è appropriato nella musica per pianoforte. In altre
+situazioni, gli spostamenti applicati da LilyPond potrebbero non riuscire
+a evitare le collisioni. LilyPond fornisce molti modi per aggiustare la collocazione
orizzontale delle note. Per ora, non siamo ancora pronti a cercare di
correggere questo problema, dunque dovremo aspettare fino a una
prossima sezione -- si veda la proprietà @code{force-hshift} in @ref{Fixing
overlapping notation}.
+@warning{Il testo e gli @emph{spanner} (come le legature di portamento e di valore, le
+forcelle, etc.) non possono essere create @q{attraverso} le voci.}
@seealso
-Guida alla notazione: @ruser{Multiple voices}.
+Guida alla notazione: @ruser{Più voci}.
@node Definire esplicitamente le voci
I contesti della voce possono anche essere creati manualmente,
all'interno di un blocco @code{<< >>} che crea musica polifonica, usando
-@code{\voiceOne} ... @code{\voiceFour} per indicare le direzioni desiderate
+@code{\voiceOne} @dots{} @code{\voiceFour} per indicare le direzioni desiderate
per gambi, legature, etc. Nelle partiture più grandi questo metodo
è più chiaro, perché fa sì che le voci possano essere separate e nominate
in modo più descrittivo.
riporta i valori alle normali impostazioni di una singola voce.
Vediamo tramite alcuni semplici esempi quali effetti esattamente
-@code{\oneVoice}, @code{\voiceOne} e @code{voiceTwo} hanno su
+@code{\oneVoice}, @code{\voiceOne} e @code{\voiceTwo} hanno su
markup, legature di valore, legature di portamento, e dinamica:
@lilypond[quote,ragged-right,verbatim]
\relative c'{
% Default behavior or behavior after \oneVoice
- c4 d8~ d e4( f | g4 a) b-> c |
+ c4 d8~ 8 e4( f | g4 a) b-> c |
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
\relative c' {
\voiceOne
- c4 d8~ d e4( f | g4 a) b-> c |
+ c4 d8~ 8 e4( f | g4 a) b-> c |
\oneVoice
- c,4 d8~ d e4( f | g4 a) b-> c |
+ c,4 d8~ 8 e4( f | g4 a) b-> c |
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
\relative c' {
\voiceTwo
- c4 d8~ d e4( f | g4 a) b-> c |
+ c4 d8~ 8 e4( f | g4 a) b-> c |
\oneVoice
- c,4 d8~ d e4( f | g4 a) b-> c |
+ c,4 d8~ 8 e4( f | g4 a) b-> c |
}
@end lilypond
@lilypond[quote,ragged-right,verbatim]
\new Staff \relative c' {
\voiceOneStyle
- % The following notes are monophonic
+ % This section is homophonic
c16^( d e f
% Start simultaneous section of three voices
<<
\new Voice {
% Set stems, etc., down
\voiceTwo
- r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
+ r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
}
% Initiate third voice
\new Voice {
\voiceTwo
r8 e4 d c8~ |
<<
- { c8 b16 a b8 g~ g2 | }
+ { c8 b16 a b8 g~ 2 | }
\new Voice {
\voiceThree
s4 b c2 |
\new Voice {
% Set stems, etc, down
\voiceTwo
- s4 r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
+ s4 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
}
% Initiate third voice
\new Voice {
>>
@end lilypond
-@subsubheading Note columns
+@subsubheading Colonne di note
@cindex colonna delle note
@cindex collisioni di note
@seealso
-Guida alla notazione: @ruser{Multiple voices}.
+Manuale di apprendimento:
+@ref{Moving objects}.
+
+Guida alla notazione: @ruser{Più voci}.
@node Voci e musica vocale
esplicitamente il testo alle note con @code{\lyricsto@{@}}, tramite
il nome assegnato alla voce.
-@lilypond[quote,verbatim,fragment]
+@lilypond[quote,verbatim]
<<
\new Voice = "one" {
\relative c'' {
global = { \key f \major \time 6/8 \partial 8 }
SopOneMusic = \relative c'' {
- c8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ c4
+ c8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ 4
}
SopOneLyrics = \lyricmode {
Let | flee -- cy flocks the | hills a -- dorn, __
nell'output. Ad esempio, si confrontino l'input e l'output del
seguente esempio:
-@lilypond[quote,verbatim,relative=2,fragment]
+@lilypond[quote,verbatim,relative=2]
cis4 cis2. | a4 a2. |
@end lilypond
All'interno di LilyPond, queste regole e pezzi di informazione sono raggruppati
nei @emph{Contesti}. Abbiamo già presentato il contesto @code{Voice}.
Altri contesti sono @code{Staff} e @code{Score}. I contesti sono strutturati
-gerarchicicamente per riflettere la natura gerarchica di una partitura musicale.
+gerarchicamente per riflettere la natura gerarchica di una partitura musicale.
Ad esempio: un contesto @code{Staff} può contenere molti contesti @code{Voice},
e un contesto @code{Score} può contenere molti contesti @code{Staff}.
@seealso
-Guida alla notazione: @ruser{Contexts explained}.
+Guida alla notazione: @ruser{Contexts explained}.
@node Creare i contesti
@seealso
-Guida alla notazione: @ruser{Creating contexts}.
+Guida alla notazione: @ruser{Creating and referencing contexts}.
@node Gli incisori
Ogni segno presente nell'output di una partitura realizzata con LilyPond
è prodotto da un @code{Engraver} (incisore). Dunque c'è un incisore per
creare i righi, uno per le teste delle note, uno per i gambi, uno per le
-cediglie, etc, etc. In totale ci sono più di 120 incisori!
+travature, etc, etc. In totale ci sono più di 120 incisori!
Fortunatamente, per gran parte delle partiture è necessario conoscerne
pochi soltanto, e per partiture semplici non occorre conoscerne
alcuno.
@item Accidental_engraver
@tab Crea le alterazioni, le alterazioni di precauzione e di cortesia
@item Beam_engraver
- @tab Incide le cediglie
+ @tab Incide le travature
@item Clef_engraver
@tab Incide le chiavi
@item Completion_heads_engraver
@tab Separa le note che attraversano le stanghette
-@c The old Dynamic_engraver is deprecated. -jm
-@item New_dynamic_engraver
+@item Dynamic_engraver
@tab Crea le forcelle e i testi relativi alla dinamica
@item Forbid_line_break_engraver
@tab Impedisce l'a capo se un elemento musicale è ancora attivo
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff \relative c'' {
- ais2 aes
+ aeses2 aes
}
\new Staff \relative c'' {
\set Staff.extraNatural = ##f
- ais2 aes
+ aeses2 aes
}
>>
@end lilypond
@lilypond[quote,verbatim,ragged-right]
<<
\new Staff \relative c'' {
- ais2 aes
+ aeses2 aes
}
\new Staff \relative c'' {
\set Score.extraNatural = ##f
- ais2 aes
+ aeses2 aes
}
>>
@end lilypond
-Un altro esempio: se la proprietà @code{clefOctavation} viene posta
+Un altro esempio: se la proprietà @code{clefTransposition} viene posta
nel contesto @code{Score}, cambia immediatamente il valore
-dell'ottavazione in tutti i righi presenti e imposta un nuovo
+della trasposizione in tutti i righi presenti e imposta un nuovo
valore predefinito che sarà applicato a tutti i righi.
Il comando opposto, @code{\unset}, di fatto rimuove la proprietà
le altre cose) sulla dimensione delle teste delle note. La modifica è relativa
al valore predefinito, non all'ultimo valore impostato.
-@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
+@lilypond[quote,verbatim,ragged-right,relative=1]
c4 d
% make note heads smaller
\set fontSize = #-4
anche nel momento in cui il contesto viene creato. Talvolta questo è un
modo più chiaro per specificare il valore della proprietà se questa deve
rimanere fissa per la durata del contesto. Un contesto creato col comando @code{\new}
-può essere immediatamente seguito da un blocco @code{\with @{ .. @}} dove
+può essere immediatamente seguito da un blocco @code{\with @{ @dots{} @}} dove
vengono impostati i valori predefiniti della proprietà. Ad esempio, se vogliamo
eliminare la stampa del bequadro per l'estensione di un rigo possiamo scrivere:
<<
\new Staff {
\relative c'' {
- gis4 ges aes ais
+ gisis4 gis aeses aes
}
}
\new Staff \with { extraNatural = ##f } {
\relative c'' {
- gis4 ges aes ais
+ gisis4 gis aeses aes
}
}
>>
\score {
\new Staff {
\relative c'' {
- cis4 e d ces
+ cisis4 e d cis
}
}
\layout {
}
@end lilypond
+Se si vuole che la modifica della proprietà venga applicata a tutti i righi
+della partitura:
+
+@lilypond[quote,verbatim]
+\score {
+ <<
+ \new Staff {
+ \relative c'' {
+ gisis4 gis aeses aes
+ }
+ }
+ \new Staff {
+ \relative c'' {
+ gisis4 gis aeses aes
+ }
+ }
+ >>
+ \layout {
+ \context {
+ \Score extraNatural = ##f
+ }
+ }
+}
+@end lilypond
+
@noindent
Le proprietà di contesto impostate in questo modo possono essere sovrascritte per
alcuni particolari contesti attraverso asserzioni in un blocco @code{\with}, e tramite
@lilypond[quote,verbatim,ragged-right]
\new Staff \with {
- \remove Staff_symbol_engraver
+ \remove "Staff_symbol_engraver"
}
\relative c' {
c4 d
@lilypond[quote,verbatim,ragged-right]
\new Staff <<
\new Voice \with {
- \consists Ambitus_engraver
+ \consists "Ambitus_engraver"
} {
\relative c'' {
\voiceOne
@lilypond[quote,verbatim,ragged-right]
\new Staff \with {
- \consists Ambitus_engraver
+ \consists "Ambitus_engraver"
}
<<
\new Voice {
\layout {
\context {
\Staff
- \consists Ambitus_engraver
+ \consists "Ambitus_engraver"
}
}
}
per tutti i contesti di un particolare tipo includendo il comando
@code{\set} in un blocco @code{\context} nello stesso modo.
-
@seealso
Guida alla notazione: @ruser{Modifying context plug-ins},
@ruser{Changing context default settings}.
+@knownissues
+Gli incisori @code{Stem_engraver} e @code{Beam_engraver} fissano i propri
+oggetti alle teste delle note. Se si elimina @code{Note_heads_engraver}
+le teste delle note non vengono prodotte e di conseguenza non vengono creati
+nemmeno i gambi né le travature.
+
@node Estendere i modelli
@section Estendere i modelli
* Soprano e violoncello::
* Partitura vocale a quattro parti SATB::
* Scrivere una partitura da zero::
-* Ridurre le dimensioni del file grazie a variabili e funzioni::
+* Ridurre l'input grazie a variabili e funzioni::
* Partiture e parti::
@end menu
@noindent
L'aspetto è un po' confuso; l'indentazione non è pulita. Ma si
-può correggere facilmente. Ecco il template completo per soprano
+può correggere facilmente. Ecco il modello completo per soprano
e violoncello.
@lilypond[quote,verbatim,ragged-right,addversion]
@seealso
I modelli da cui partire si trovano nell'appendice @q{Modelli},
-si veda @ref{Single staff}.
+si veda @ref{Single staff templates}.
@node Partitura vocale a quattro parti SATB
@end lilypond
Nessun modello fornisce esattamente questo assetto. Quello più simile
-è @q{Partitura vocale SATB e riduzione automatica per pianoforte} -- si veda @ref{Vocal
-ensembles} -- ma abbiamo bisogno di modificare l'assetto e aggiungere
+è @q{Partitura vocale SATB e riduzione automatica per pianoforte}, ma
+abbiamo bisogno di modificare l'assetto e aggiungere
un accompagnamento per pianoforte che non sia derivato automaticamente dalle
parti vocali. Le variabili che si riferiscono alla musica e alle parole per
le parti vocali vanno bene, ma dovremo aggiungere le variabili per la
@subsection Scrivere una partitura da zero
@translationof Building a score from scratch
-@cindex template, scrivere il tuo
+@cindex modello, scrivere il tuo
@cindex esempio di scrittura di una partitura
@cindex scrivere una partitura, esempio
@cindex partitura, esempio di scrittura
>>
@end example
-Non è necessario usare il costrutto simultaneo @code{<< .. >>} per il rigo del
+Non è necessario usare il costrutto simultaneo @code{<< @dots{} >>} per il rigo del
secondo manuale e per quello della pedaliera, poiché contengono solo una
espressione musicale, ma non è male usarlo comunque; usare sempre le parentesi
angolari dopo @code{\new Staff} è una buona abitudine da coltivare nel caso ci
sia più di una voce. Per le Voci, è vero l'opposto: queste devono essere
-seguite regolarmente da parentesi graffe @code{@{ .. @}} nel caso in cui la
-musica sia composta da diverse variabili che devono essere eseguite
+seguite regolarmente da parentesi graffe @code{@{ @dots{} @}} nel caso in cui
+la musica sia composta da diverse variabili che devono essere eseguite
consecutivamente.
Aggiungiamo questa struttura al blocco della partitura, e aggiustiamo
un'occhiata a @ruser{Overview of modifying properties}.
In questo caso, vogliamo modificare soltanto la sottoproprietà
@code{allungabilità}. Di nuovo, chi è curioso può trovare i valori predefiniti
-per la proprietà staff-staff-spacing nel file @file{scm/@/define-grobs@/.scm}
+per la proprietà staff-staff-spacing nel file @file{scm/define-grobs.scm}
guardando la definizione del grob @code{VerticalAxisGroup}. Il valore dell'
@code{allungabilità} viene preso dalla definizione del contesto @code{PianoStaff}
-(nel file @file{ly/@/engraver-init@/.ly}) così che i valori siano identici.
+(nel file @file{ly/engraver-init.ly}) così che i valori siano identici.
@example
\score @{
@}
>> % fine del contesto ManualOne Staff
\new Staff = "ManualTwo" \with @{
- \override VerticalAxisGroup
- #'staff-staff-spacing #'stretchability = 5
+ \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
@} <<
\keyTime
\clef "bass"
d2 c |
}
ManualOneVoiceTwoMusic = \relative c' {
- ees16 d ees8~ ees16 f ees d c8 d~ d c~ |
- c8 c4 b8 c8. g16 c b c d |
+ ees16 d ees8~ 16 f ees d c8 d~ d c~ |
+ 8 c4 b8 c8. g16 c b c d |
}
ManualTwoMusic = \relative c' {
- c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
- f16 ees f d g aes g f ees d e8~ ees16 f ees d |
+ c16 b c8~ 16 b c g a8 g~ 16 g aes ees |
+ f16 ees f d g aes g f ees d ees8~ 16 f ees d |
}
PedalOrganMusic = \relative c {
- r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
+ r8 c16 d ees d ees8~ 16 a, b g c b c8 |
r16 g ees f g f g8 c,2 |
}
}
>> % end ManualOne Staff context
\new Staff = "ManualTwo" \with {
- \override VerticalAxisGroup
- #'staff-staff-spacing #'stretchability = 5
+ \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
} <<
\keyTime
\clef "bass"
@seealso
Glossario musicale:
-@rglos{system}.
+@rglosnamed{system,sistema}.
@node Ridurre l'input grazie a variabili e funzioni
@subsection Ridurre l'input grazie a variabili e funzioni
@lilypond[quote,verbatim,ragged-right]
dolce = \markup { \italic \bold dolce }
-padText = { \once \override TextScript #'padding = #5.0 }
+padText = { \once \override TextScript.padding = #5.0 }
fthenp =_\markup {
\dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
}
violin = \relative c'' @{
\repeat volta 2 @{
c4._\markup @{ \italic \bold dolce @} b8 a8 g a b |
- \once \override TextScript #'padding = #5.0
+ \once \override TextScript.padding = #5.0
c4.^"hi there!" d8 e' f g d |
c,4.\markup @{
\dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
(parser location padding)
(number?)
#{
- \once \override TextScript #'padding = $padding
+ \once \override TextScript.padding = #padding
#})
\relative c''' {
L'uso di variabili è anche un buon modo per ridurre il lavoro quando
la sintassi di input di LilyPond cambia (vedi
-@rprogram{Updating files with convert-ly}). Se si ha un'unica
+@rprogram{Aggiornare i file con convert-ly}). Se si ha un'unica
definizione (come @code{\dolce}) per tutti i file di input
(vedi @ref{Style sheets}), allora se la sintassi cambia bisogna
aggiornare soltanto la singola definizione @code{\dolce},
-invece di dover modificare tutti i file @code{.ly}.
+invece di dover modificare tutti i file @file{.ly}.
@node Partiture e parti