]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/it/learning/tweaks.itely
Merge remote-tracking branch 'origin/translation'
[lilypond.git] / Documentation / it / learning / tweaks.itely
index 9e6e96ccdeeb36b4a54a620c3583263b51baef04..ea4ef460e1d82a1b2c60003a84a16032a35684f2 100644 (file)
@@ -1,14 +1,14 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
 
 @ignore
-    Translation of GIT committish: 6d501730d319a6456acd13870821f0bcad64bf4e
+    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.17.11"
+@c \version "2.19.2"
 
 @node Modifica dell'output
 @chapter Modifica dell'output
@@ -23,6 +23,7 @@ configurabile; praticamente si può modificare qualsiasi elemento dell'output.
 * Manuale del Funzionamento interno::
 * Aspetto degli oggetti::
 * Posizionamento degli oggetti::
+* Spaziatura verticale::
 * Collisioni tra oggetti::
 * Altre modifiche::
 @end menu
@@ -89,7 +90,7 @@ del contesto di quel rigo.  Analogalmente, ci sono oggetti che hanno
 le proprietà di tutti gli altri contesti, come  gli oggetti @code{Voice},
 gli oggetti @code{Score}, gli oggetti @code{Lyrics} e gli oggetti che
 rappresentano tutti gli elementi della notazione, come le stanghette,
-le teste di nota, le legature di valore, i segni di dinamica, etc.  A ogni
+le teste di nota, le legature di valore, le dinamiche, etc.  A ogni
 oggetto corrisponde un relativo insieme di valori di proprietà.
 
 Alcuni tipi di oggetto hanno dei nomi speciali.  Gli oggetti che rappresentano
@@ -176,7 +177,17 @@ di oggetti e proprietà dai loro nomi.
 @cindex metodi di modifica
 @cindex modifica, metodi
 
-@strong{Il comando \override}
+@menu
+* Il comando override::
+* Il comando revert::
+* Il prefisso once::
+* Il comando overrideProperty::
+* Il comando tweak::
+@end menu
+
+@node Il comando override
+@unnumberedsubsubsec Il comando @code{@bs{}override}
+@translationof The override command
 
 @cindex override, comando
 @cindex override, sintassi
@@ -209,7 +220,7 @@ Questo comando assegnerà alla proprietà chiamata @var{proprietà-formattazione
 dell'oggetto di formattazione chiamato @var{OggettoDiFormattazione}, che fa
 parte del contesto @var{Contesto}, il valore @var{valore}.
 
-Il @var{Contesto} può essere ommesso (e di solito lo è) quando il
+Il @var{Contesto} può essere omesso (e di solito lo è) quando il
 contesto richiesto è implicito e si trova a uno dei livelli più
 bassi dei contesti, come ad esempio @code{Voice}, @code{ChordNames} o
 @code{Lyrics}.  Lo ometteremo in molti degli esempi seguenti; vedremo
@@ -245,9 +256,12 @@ e4 f |
 g4 a b c |
 @end lilypond
 
-@strong{Il comando \revert}
+@node Il comando revert
+@unnumberedsubsubsec Il comando @code{@bs{}revert}
+@translationof The revert command
 
-@cindex ripristino (revert), comando
+@cindex revert, comando
+@cindex ripristino, comando \revert
 
 @funindex \revert
 @funindex revert
@@ -281,7 +295,9 @@ g4 a
 b4 c |
 @end lilypond
 
-@strong{Il prefisso \once}
+@node Il prefisso once
+@unnumberedsubsubsec Il prefisso @code{@bs{}once}
+@translationof The once prefix
 
 @funindex \once
 @funindex once
@@ -297,7 +313,7 @@ una singola nota in questo modo:
 @cindex colore, proprietà del
 @cindex NoteHead, esempio di sovrascrittura
 
-@lilypond[quote,fragment,ragged-right,verbatim,relative=1]
+@lilypond[quote,verbatim,relative=1]
 c4 d
 \override NoteHead.color = #red
 e4 f |
@@ -307,7 +323,27 @@ g4 a
 b c |
 @end lilypond
 
-@strong{Il comando \overrideProperty}
+Il prefisso @code{\once} può essere usato anche di fronte a molti
+comandi predefiniti per limitare il loro effetto a un momento musicale:
+
+@lilypond[quote,verbatim,relative=1]
+c4 d
+\once \stemDown
+e4 f |
+g4 a
+\once \hideNotes
+b c |
+@end lilypond
+
+Tuttavia, i comandi predefiniti che hanno la forma @code{\@dots{}Neutral},
+@code{\@dots{}Off} e @code{\un@dots{}} usano internamente @code{\revert} invece
+di @code{\override} dunque inserire @code{\once} prima di questi comandi
+non produce alcun effetto.
+
+
+@node Il comando overrideProperty
+@unnumberedsubsubsec Il comando @code{@bs{}overrideProperty}
+@translationof The overrideProperty command
 
 @cindex overrideProperty, comando
 
@@ -320,7 +356,9 @@ Lo menzioniamo qui per completezza, ma per approfondire l'argomento
 si veda @rextend{Difficult tweaks}.
 @c Maybe explain in a later iteration  -td
 
-@strong{Il comando \tweak}
+@node Il comando tweak
+@unnumberedsubsubsec Il comando @code{@bs{}tweak}
+@translationof The tweak command
 
 @cindex tweak, comando
 
@@ -650,7 +688,7 @@ delle situazioni più complesse nelle sezioni successive, ma ora possiedi già
 tutte le conoscenze di base che ti permetteranno di costruire i tuoi comandi.
 Ti manca solo un po' di pratica, che potrai fare grazie ai prossimi esempi.
 
-@subheading Trovare il contesto
+@subsubheading Trovare il contesto
 
 @cindex contesto, trovare il
 @cindex contesto, identificare il corretto
@@ -669,7 +707,7 @@ Dunque la nostra supposizione era corretta.  E dato che @code{Voice} è uno dei
 contesti che si trovano al livello più basso, come è sottinteso senza ambiguità
 dal fatto che stiamo inserendo delle note, in questo caso possiamo ometterlo.
 
-@subheading Sovrascrivere una volta sola
+@subsubheading Sovrascrivere una volta sola
 
 @cindex sovrascrivere una volta sola
 @cindex \once \override
@@ -714,7 +752,7 @@ Ora solo la prima legatura è più spessa.
 
 Il comando @code{\once} può essere usato anche prima del comando @code{\set}.
 
-@subheading Ripristinare
+@subsubheading Ripristinare
 
 @cindex revert
 @cindex ripristinare le proprietà predefinite
@@ -911,7 +949,10 @@ Nella guida al Funzionamento interno il tipo di proprietà è indicato
 tra parentesi dopo il nome della proprietà.  Ecco una lista dei tipi
 che ti possono servire, corredata dalle regole per ciascun tipo e da alcuni
 esempi.  Ovviamente, se inseriti in un comando @code{\override}, devono
-essere sempre preceduti dal simbolo di cancelletto, @code{#}.
+essere sempre preceduti dal simbolo di cancelletto,@tie{}@code{#}, anche se
+il valore stesso già inizia con@tie{}@code{#}.  In questa sede diamo solo
+esempi di costanti: se si desidera elaborare un valore con Scheme, si veda
+@rextend{Calculations in Scheme}.
 
 @multitable @columnfractions .2 .45 .35
 @headitem Tipo di proprietà
@@ -921,32 +962,32 @@ essere sempre preceduti dal simbolo di cancelletto, @code{#}.
   @tab O Vero (True) o Falso (False), rappresentato da #t o #f
   @tab @code{#t}, @code{#f}
 @item Dimension (in staff space)
-  @tab Un numero positivo decimale (nell'unità di misura dello spazio del rigo)
+  @tab Un numero decimale (nell'unità di misura dello spazio del rigo)
   @tab @code{2.5}, @code{0.34}
 @item Direction
-  @tab Una valida direzione costante o il suo equivalente numerico (sono
-ammessi valori decimali compresi tra -1 e 1)
+  @tab Una valida direzione costante o il suo equivalente numerico
+  (@code{0} o @code{CENTER} indicano una direzione neutrale)
   @tab @code{LEFT}, @code{CENTER}, @code{UP},
        @code{1}, @w{@code{-1}}
 @item Integer
-  @tab Un numero positivo intero
-  @tab @code{3}, @code{1}
+  @tab Un numero intero
+  @tab @code{3}, @code{-1}
 @item List
-  @tab Un insieme di valori separato da spazi, racchiuso tra parentesi e
-preceduto da un apostrofo
-  @tab @code{'(left-edge staff-bar)}, @code{'(1)},
+  @tab Una sequenza di costanti o simboli separata da spazi, racchiusa
+  tra parentesi e preceduta da un apostrofo
+  @tab @code{'(left-edge staff-bar)}, @code{'(1)}, @code{'()},
        @code{'(1.0 0.25 0.5)}
 @item Markup
   @tab Qualsiasi valido blocco markup
-  @tab @code{\markup @{ \italic "cresc." @}}
+  @tab @code{\markup @{ \italic "cresc." @}}, @code{"bagpipe"}
 @item Moment
   @tab Una frazione di una nota intera costruita con la
 funzione make-moment
   @tab @code{(ly:make-moment 1/4)},
        @code{(ly:make-moment 3/8)}
 @item Number
-  @tab Qualsiasi valore decimale positivo o negativo
-  @tab @code{3.5}, @w{@code{-2.45}}
+  @tab Qualsiasi valore positivo o negativo, possibilmente decimale
+  @tab @code{3}, @w{@code{-2.45}}
 @item Pair (of numbers)
   @tab Due numeri separati da un @q{spazio . spazio} e racchiusi tra
 parentesi precedute da un apostrofo
@@ -960,9 +1001,9 @@ preceduto da un apostrofo
   @tab @code{bend::print}, @code{ly:text-interface::print},
        @code{#f}
 @item Vector
-  @tab Una lista di tre elementi racchiusi tra parentesi e preceduti
-da apostrofo-cancelletto, @code{'#}.
-  @tab @code{'#(#t #t #f)}
+  @tab Costanti
+  racchiuse tra @code{#(}@dots{}@code{)}.
+  @tab @code{#(#t #t #f)}
 @end multitable
 
 
@@ -1018,7 +1059,16 @@ Tutte queste proprietà hanno degli effetti sulla visibilità delle stanghette (
 ovviamente, anche di molti altri oggetti grafici).  Vediamole una per
 volta.
 
-@subheading stencil
+@menu
+* La proprietà stencil::
+* La proprietà break-visibility::
+* La proprietà transparent::
+* La proprietà color::
+@end menu
+
+@node La proprietà stencil
+@unnumberedsubsubsec La proprietà @code{stencil}
+@translationof The stencil property
 
 @cindex proprietà stencil
 @cindex stencil, proprietà
@@ -1100,7 +1150,9 @@ zero:
 }
 @end lilypond
 
-@subheading break-visibility
+@node La proprietà break-visibility
+@unnumberedsubsubsec La proprietà @code{break-visibility}
+@translationof The break-visibility property
 
 @cindex proprietà break-visibility
 @cindex break-visibility, proprietà
@@ -1133,7 +1185,9 @@ sempre, il valore del comando @code{\override}.
 
 E vediamo che anche questo comando elimina tutte le stanghette.
 
-@subheading transparent
+@node La proprietà transparent
+@unnumberedsubsubsec La proprietà @code{transparent}
+@translationof The transparent property
 
 @cindex proprietà transparent
 @cindex transparent, proprietà
@@ -1206,7 +1260,9 @@ la differenza è ovvia: se si imposta lo stencil su @code{#f} (possibilmente
 con @code{\omit}) l'oggetto scompare del tutto; se si rende l'oggetto
 @code{trasparente} questo resta dove è, anche se invisibile.
 
-@subheading color
+@node La proprietà color
+@unnumberedsubsubsec La proprietà @code{color}
+@translationof The color property
 
 @cindex proprietà color
 @cindex color, proprietà
@@ -1387,7 +1443,7 @@ inserire un nuovo rigo temporaneo, come in un @rglos{ossia}.
 
 Gli ossia di norma vengono scritti senza chiave e senza indicazione di
 tempo e hanno solitamente una dimensione leggermente inferiore a
-quella del rigo pricipale.  Sappiamo già come togliere la chiave e
+quella del rigo principale.  Sappiamo già come togliere la chiave e
 il segno di tempo, cioè impostando semplicemente la proprietà stencil di
 ciascun oggetto su @code{#f}, così:
 
@@ -1506,7 +1562,7 @@ Infine arriviamo a modificare la dimensione degli oggetti di formattazione.
 
 Alcuni oggetti di formattazione sono dei glifi scelti da un tipo di
 carattere.  Ad esempio le teste di nota, le alterazioni, le annotazioni,
-le chiavi, le indicazioni di tempo, la dinamica, il testo vocale.  La loro dimensione
+le chiavi, le indicazioni di tempo, le dinamiche, il testo vocale.  La loro dimensione
 varia se si modifica la proprietà @code{font-size}, come vedremo a
 breve.  Altri oggetti di formattazione come le legature di portamento e
 di valore -- in generale, tutti gli oggetti estensori (@emph{spanner}) -- vengono
@@ -1695,7 +1751,7 @@ devono esserne posizionati al di fuori.  In LilyPond si chiamano rispettivamente
 (dentro il rigo) e oggetti outside-staff (fuori dal rigo).
 
 Gli oggetti within-staff sono quelli che si trovano nel rigo, come
-le teste e i gambi delle note, le alterazioni, etc..  La loro posizione
+le teste e i gambi delle note, le alterazioni, etc@dots{}  La loro posizione
 è determinata perlopiù dalla musica stessa: in verticale sono collocati
 su determinate posizioni del rigo o sono collegati
 ad altri oggetti disposti in questo modo. Di norma LilyPond evita
@@ -1780,10 +1836,23 @@ come i gambi e le code, a seconda dell'orientamento si dispongono anche sulla
 destra o sulla sinistra.  Tutto questo viene controllato automaticamente
 quando si imposta la proprietà @code{direction}.
 
+@menu
+* La proprietà direction::
+* Diteggiatura::
+@end menu
+
+@node La proprietà direction
+@unnumberedsubsubsec La proprietà @code{direction}
+@translationof The direction property
+
 @cindex down
+@cindex direzione, giù
 @cindex up
+@cindex direzione, su
 @cindex center
+@cindex direzione, centrale
 @cindex neutral
+@cindex direzione, neutrale
 
 L'esempio seguente mostra nella prima battuta il comportamento predefinito
 dei gambi, per cui i gambi delle note superiori puntano in basso e quelli delle
@@ -1868,7 +1937,9 @@ momento temporale, devi farli precedere da @code{\once} come faresti con
 delle sovrascritture esplicite.
 
 
+@node Diteggiatura
 @unnumberedsubsubsec Diteggiatura
+@translationof Fingering
 
 @cindex diteggiatura, posizionamento
 @cindex diteggiatura, accordi
@@ -2018,7 +2089,22 @@ con @w{@code{-7}}:
 @translationof Outside-staff objects
 
 Gli oggetti esterni al rigo sono disposti automaticamente in modo da evitare
-collisioni.  Gli oggetti dai valori più bassi per la proprietà
+collisioni.  Ci sono vari modi per modificare la disposizione automatica
+se questa non è ottimale.
+
+@menu
+* La proprietà outside-staff-priority::
+* Il comando textLengthOn::
+* Posizionamento delle dinamiche::
+* Dimensione dei grob::
+@end menu
+
+
+@node La proprietà outside-staff-priority
+@unnumberedsubsubsec La proprietà @code{outside-staff-priority}
+@translationof The outside-staff-priority property
+
+Gli oggetti dai valori più bassi per la proprietà
 @code{outside-staff-priority} vengono posizionati più vicino al rigo,
 mentre gli altri oggetti esterni al rigo vengono distanziati quanto
 basta per evitare collisioni.  La proprietà @code{outside-staff-priority} è
@@ -2181,7 +2267,7 @@ giusto per sovrascriverli.
 
 Le legature di portamento sono classificate come oggetti interni al rigo, anche
 se spesso sono poste sopra il rigo, se le note alle quali sono collegate si
-trovano nella aprte superiore del pentagramma.  Questo può far sì che gli oggetti esterni al rigo,
+trovano nella parte superiore del pentagramma.  Questo può far sì che gli oggetti esterni al rigo,
 come le articolazioni, siano spinti troppo in alto, dato che la legatura viene
 posizionata prima.  La proprietà @code{avoid-slur} dell'articolazione
 può essere impostata su @code{'inside} per portare l'articolazione
@@ -2231,7 +2317,9 @@ naturalmente, dobbiamo creare più spazio orizzontale tra le note per
 far posto al testo.  Lo si può ottenere con il comando
 @code{textLengthOn}.
 
-@subheading \textLengthOn
+@node Il comando textLengthOn
+@unnumberedsubsubsec Il comando @code{@bs{}textLengthOn}
+@translationof The textLengthOn command
 
 @cindex note, distanziarle insieme al testo
 
@@ -2241,7 +2329,7 @@ far posto al testo.  Lo si può ottenere con il comando
 @funindex textLengthOff
 
 Per impostazione predefinita, finché si tratta di formattare la musica il
-testo prodotto dal comando \markup non occupa uno spazio orizzontale.
+testo prodotto dal comando @code{\markup} non occupa uno spazio orizzontale.
 Il comando @code{\textLengthOn} inverte questo comportamento e fa sì che
 le note si distanzino quanto basti per introdurre il testo:
 
@@ -2254,9 +2342,12 @@ c2^"Text4" |
 @end lilypond
 
 Il comando che ripristina il comportamento predefinito è
-@code{\textLengthOff}.  Ricorda che @code{\once} funziona solo insieme
-a @code{\override}, @code{\set}, @code{\revert} o @code{\unset},
-dunque non si può usare con @code{\textLengthOn}.
+@code{\textLengthOff}.  Altrimenti si può usare @code{\once}
+con @code{\textLengthOn} se l'effetto deve essere limitato
+a un singolo momento musicale.
+Analogalmente, la spaziatura per i segni di chiamata e le indicazioni
+di tempo è regolata in modo indipendente con i comandi @code{\markLengthOn}
+e @code{\markLengthOff}.
 
 @cindex testo a margine, permettere le collisioni
 
@@ -2291,10 +2382,12 @@ c''2 |
 @end lilypond
 
 
-@subheading Dinamica
+@node Posizionamento delle dinamiche
+@unnumberedsubsubsec Posizionamento delle dinamiche
+@translationof Dynamics placement
 
-@cindex modificare il posizionamento della dinamica
-@cindex dinamica, modificare il posizionamento
+@cindex modificare il posizionamento delle dinamiche
+@cindex dinamiche, modificare il posizionamento
 
 Le indicazioni dinamiche sono di norma poste sotto il
 rigo, ma possono essere collocati al di sopra del pentagramma col comando @code{\dynamicUp}.
@@ -2321,7 +2414,7 @@ questo esempio piuttosto improbabile:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \dynamicUp
-a4\f b\mf c\mp b\p
+a4\f b\mf a\mp b\p
 @end lilypond
 
 @noindent
@@ -2332,6 +2425,10 @@ potuto farlo per il testo a margine usando il comando @code{\textLengthOn},
 ma non esiste un comando equivalente per i segni di dinamica.  Dunque
 dovremo scoprire come farlo usando i comandi @code{\override}.
 
+@node Dimensione dei grob
+@unnumberedsubsubsec Dimensione dei grob
+@translationof Grob sizing
+
 @subheading Estensione dei grob
 
 @cindex estensione dei grob
@@ -2353,16 +2450,17 @@ Queste proprietà appartengono a tutti i grob che supportano l'interfaccia
 
 Per impostazione predefinita, gli oggetti esterni al rigo presentano estensione
 pari a zero, in modo da potersi sovrapporre nella direzione orizzontale.
-Ciò si ottiene con un trucco, ovvero aggiungendo infinito all'estensione
-sinistra e infinito negativo a quella destra, impostando il valore di
-@code{extra-spacing-width} su @code{'(+inf.0 . -inf.0)}.  Dunque, per
+Ciò si ottiene con un trucco, ovvero dando un valore infinito all'estensione
+sinistra e infinito negativo a quella destra, impostando la proprietà
+@code{extra-spacing-width} su @code{'(+inf.0 . -inf.0)}.  Per
 assicurarci che non si sovrappongano nella direzione orizzontale, dobbiamo
-sovrascrivere il valore di @code{extra-spacing-width} e impostarlo su
-@code{'(0 . 0)} in modo da inserire una larghezza vera e propria.  Ecco il
-comando che lo fa sul testo della dinamica:
+sovrascrivere il valore di @code{extra-spacing-width} per dar loro un po' più
+di spazio.  Le unità sono lo spazio tra due linee del rigo, dunque spostare
+il margine sinistro di mezza unità a sinistra e quello destro di mezza unità
+a destra dovrebbe dare il risultato desiderato:
 
 @example
-\override DynamicText.extra-spacing-width = #'(0 . 0)
+\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
 @end example
 
 @noindent
@@ -2374,38 +2472,210 @@ Vediamo se funziona nell'esempio precedente:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \dynamicUp
-\override DynamicText.extra-spacing-width = #'(0 . 0)
-a4\f b\mf c\mp b\p |
+% Aumenta la larghezza di 1 spazio rigo
+\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
+a4\f b\mf a\mp b\p
 @end lilypond
 
 @noindent
-Sicuramente ha impedito un'errata disposizione delle indicazioni
-dinamiche, ma restano due problemi.  Le dinamiche dovrebbero
-essere un po' più distanziate; sarebbe inoltre opportuno collocarle
-tutte alla stessa distanza dal rigo.
-Il primo problema è facilmente risolvibile.  Invece di
-impostare @code{extra-spacing-width} su zero, possiamo
-aggiungere un po' di spazio.  L'unità è lo spazio tra due linee
-del rigo, quindi se spostiamo il margine sinistro mezza unità
-a sinistra e il margine destro mezza unità a destra dovrebbe
-funzionare:
+L'aspetto è migliore, ma sarebbe preferibile avere i segni di dinamica
+allineati alla stessa linea di base invece di spostarsi su e giù seguendo
+la posizione delle note.  La proprietà che permette di ottenere tale
+risultato è @code{staff-padding} ed è trattata nella sezione relativa
+alle collisioni (vedi @ref{Collisions of objects}).
 
-@cindex DynamicText, esempio di sovrascrittura
-@cindex proprietà extra-spacing-width, esempio
-@cindex extra-spacing-width, esempio
 
-@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
-\dynamicUp
-% Aumenta la larghezza di 1 spazio rigo
-\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
-a4\f b\mf c\mp b\p
+@node Spaziatura verticale
+@section Spaziatura verticale
+@translationof Vertical spacing
+
+Di norma, la spaziatura verticale degli oggetti musicali decisa da
+LilyPond è molto buona.  Vediamo come si comporta con una semplice
+canzone, composta da due voci e un accompagnamento per pianoforte:
+
+@lilypond[quote,fragment,ragged-right]
+<<
+  \new ChoirStaff
+  <<
+    \new Staff {
+      \new Voice = "music" {
+        b'2 c' c' c'
+      }
+    }
+    \new Lyrics
+    \lyricsto "music" {
+      Here are some lyrics
+    }
+    \new Staff {
+      \clef bass e'2 f e c
+    }
+  >>
+  \new PianoStaff
+  <<
+    \new Staff {
+      g''2 c'' c'' a''
+    }
+    \new Staff {
+      \clef bass e2 f c e
+    }
+  >>
+>>
 @end lilypond
 
-@noindent
-L'aspetto è migliore, ma sarebbe preferibile avere i segni di dinamica
-allineati alla stessa linea di base invece di spostarsi su e giù seguendo la posizione delle note.
-La proprietà che permette di ottenere tale risultato è @code{staff-padding} ed è trattata
-nella sezione seguente.
+Non c'è niente di sbagliato con la spaziatura verticale predefinita.  Tuttavia,
+supponiamo che si stia lavorando con un editore che abbia requisiti specifici
+per la spaziatura verticale dei righi e del testo vocale, ovvero maggior spazio
+tra testo e note, e tra l'accompagnamento del pianoforte e la linea vocale, e
+minor spazio tra i righi del pianoforte.  Iniziamo dal testo.
+
+Il testo vocale si trova all'interno di un sistema, dunque i comandi per
+modificarne la spaziatura sono descritti in @ruser{Flexible vertical spacing within systems}.
+Quel paragrafo ci dice che il testo è costituito da linee che non appartengono
+al rigo (@code{non-staff lines}), quindi il comando per cambiarne la spaziatura
+sarà riferito alla proprietà @code{nonstaff}.  Per allontanarlo dal rigo a cui
+si riferiscono (la linea superiore) si usa la proprietà @code{relatedstaff}.
+Per allontanarli dalla linea più bassa si usa la proprietà @code{unrelatedstaff}.
+Le parti vocali fanno parte del @code{VerticalAxisGroup}, dunque dobbiamo
+aggiustare le sue proprietà.  Proviamo a vedere se funziona.
+
+@lilypond[quote,fragment,ragged-right,verbatim]
+<<
+  \new ChoirStaff
+  <<
+    \new Staff {
+      \new Voice = "music" {
+        b'2 c' c' c'
+      }
+    }
+    \new Lyrics \with {
+      \override VerticalAxisGroup.
+        nonstaff-relatedstaff-spacing.padding = #5
+      \override VerticalAxisGroup.
+        nonstaff-unrelatedstaff-spacing.padding = #5
+    }
+    \lyricsto "music" {
+      Here are some lyrics
+    }
+    \new Staff {
+      \clef bass e'2 f e c
+    }
+  >>
+  \new PianoStaff
+  <<
+    \new Staff {
+      g''2 c'' c'' a''
+    }
+    \new Staff {
+      \clef bass e2 f c e
+    }
+  >>
+>>
+@end lilypond
+
+Funziona, ma forse non molto bene.  Quando impostiamo il
+@code{padding} su 5, LilyPond aggiunge 5 spazi rigo alla distanza
+tra gli oggetti, che è troppo in questo caso.  Useremo 2.
+
+Ora allontaniamo la musica per pianoforte dalle parti vocali.  La musica
+vocale si trova nel rigo @code{ChoirStaff}, quindi dobbiamo aumentare lo
+spazio tra quel gruppo di righi e il rigo per pianoforte che si trova sotto.
+Lo faremo modificando la proprietà @code{basic-distance} del
+@code{staffgroup-staff-spacing} di @code{StaffGrouper}.
+
+@lilypond[quote,fragment,ragged-right,verbatim]
+<<
+  \new ChoirStaff \with {
+    \override StaffGrouper.
+      staffgroup-staff-spacing.basic-distance = #15
+  }
+  <<
+    \new Staff {
+      \new Voice = "music" {
+        b'2 c' c' c'
+      }
+    }
+    \new Lyrics \with {
+      \override VerticalAxisGroup.
+        nonstaff-relatedstaff-spacing.padding = #2
+      \override VerticalAxisGroup.
+        nonstaff-unrelatedstaff-spacing.padding = #2
+    }
+    \lyricsto "music" {
+      Here are some lyrics
+    }
+    \new Staff {
+      \clef bass e'2 f e c
+    }
+  >>
+  \new PianoStaff
+  <<
+    \new Staff {
+      g''2 c'' c'' a''
+    }
+    \new Staff {
+      \clef bass e2 f c e
+    }
+  >>
+>>
+@end lilypond
+
+Ottimo.  Non ci resta che avvicinare i righi del pianoforte.  Per farlo,
+modifichiamo di nuovo le proprietà di @code{StaffGrouper}, ma questa volta
+riduciamo sia @code{basic-distance} che @code{padding}.  Ecco come fare:
+
+@lilypond[quote,fragment,ragged-right,verbatim]
+<<
+  \new ChoirStaff \with {
+    \override StaffGrouper.
+      staffgroup-staff-spacing.basic-distance = #15
+  }
+  <<
+    \new Staff {
+      \new Voice = "music" {
+        b'2 c' c' c'
+      }
+    }
+    \new Lyrics \with {
+      \override VerticalAxisGroup.
+        nonstaff-relatedstaff-spacing.padding = #2
+      \override VerticalAxisGroup.
+        nonstaff-unrelatedstaff-spacing.padding = #2
+    }
+    \lyricsto "music" {
+      Here are some lyrics
+    }
+    \new Staff {
+      \clef bass e'2 f e c
+    }
+  >>
+  \new PianoStaff \with {
+    \override StaffGrouper.staff-staff-spacing = #'(
+                            (basic-distance . 0)
+                            (padding . 0))
+  }
+  <<
+    \new Staff {
+      g''2 c'' c'' a''
+    }
+    \new Staff {
+      \clef bass e2 f c e
+    }
+  >>
+>>
+@end lilypond
+
+In questo modo sono molto vicini, ma è quello che vuole l'editore.
+Se necessario, possono essere allontanati modificando @code{padding} o
+@code{basic-distance}.
+
+Ci sono molti modi per modificare la spaziatura verticale.  Il punto fondamentale
+da ricordare è che la spaziatura degli oggetti in un contesto @code{StaffGroup}
+(come i gruppi @code{GrandStaff} o @code{PianoStaff}) è controllata dalle
+variabili spaziali di @code{StaffGrouper}.  La spaziatura relativa ai righi
+non raggruppati (come @code{Lyrics} e @code{Staff}) è regolata dalle variabili
+del @code{VerticalAxisGroup}.  Ulteriori dettagli in
+@ruser{Flexible vertical spacing paper variables} e
+@ruser{Flexible vertical spacing within systems}.
 
 
 @node Collisioni tra oggetti
@@ -2500,7 +2770,7 @@ La proprietà @code{staff-padding} è strettamente connessa alla proprietà
 qualsiasi oggetto che supporti l'interfaccia @code{side-position-interface} e
 quello più vicino (solitamente, la nota o le linee del rigo); @code{staff-padding}
 si applica solo a quegli oggetti che stanno sempre fuori dal rigo e regola
-la quantità minima di spazio da inserire tra l'oggetto e il rigo.  Nota che
+la distanza minima tra l'oggetto e il rigo.  Nota che
 @code{staff-padding} non ha alcun effetto sugli oggetti disposti relativamente
 alla nota invece che al rigo, anche se può essere sovrascritto senza generare
 degli errori per tali oggetti; quindi viene semplicemente ignorata.
@@ -2567,22 +2837,55 @@ alla linea centrale del rigo stesso.  È utile per risolvere collisioni
 tra oggetti come le pause di più misure, le legature di valore e le
 note in voci diverse.
 
+@item
+@code{horizontal-shift}
+
+@cindex horizontal-shift, proprietà
+@cindex proprietà horizontal-shift
+@cindex colonna di note
+@cindex collisioni di note
+@cindex note, collisioni
+@cindex shift, comandi
+@funindex \shiftOff
+@funindex shiftOff
+@funindex \shiftOn
+@funindex shiftOn
+@funindex \shiftOnn
+@funindex shiftOnn
+@funindex \shiftOnnn
+@funindex shiftOnnn
+
+All'interno di una voce, tutte le note che si trovano nello stesso momento
+musicale sono raggruppate in una colonna di note, e viene creato un oggetto
+@code{NoteColumn} per controllare il posizionamento orizzontale di quel
+gruppo di note (vedi @qq{Colonne di note} in @ref{Explicitly instantiating voices}).  Se
+@emph{e solo se} due o più colonne di note in un solo contesto Staff, entrambe
+con i gambi nella stessa direzione, si trovano sullo stesso momento musicale,
+i valori delle loro proprietà @code{horizontal-shift} sono usati per attribuire
+un punteggio e le colonne che hanno un punteggio più alto vengono progressivamente spostate
+per evitare le collisioni delle teste di nota.  Questa proprietà viene impostata
+dai comandi @code{\voiceXXX} e può essere scavalcata direttamente con un
+comando @code{\override} o, di solito, dai comandi @code{\shiftOn}.
+Attenzione: questa proprietà viene usata per dare un @emph{punteggio} alle
+colonne di note per spostarle orizzontalmente; non specifica la grandezza dello
+spostamento, che viene aumentata progressivamente per gradi in base alla larghezza della
+testa di nota  per ogni punteggio.  I gradi sono solitamente di metà della
+larghezza della testa di nota, ma possono essere della larghezza intera della
+testa quando c'è un gruppo di note molto ravvicinate.
+
+
 @item
 @code{force-hshift}
 
 @cindex proprietà force-hshift
 @cindex force-hshift, proprietà
 
-Le note ravvicinate di un accordo o quelle simultanee appartenenti
-a voci diverse sono disposte su due e talvolta più colonne per
-impedire la sovrapposizione delle teste.  Tali colonne si chiamano
-colonne di note (@emph{note columns}) e l'oggetto che provvede a crearle
-si chiama @code{NoteColumn}.
-
 La proprietà @code{force-hshift} appartiene a @code{NoteColumn}
 (più precisamente all'interfaccia @code{note-column-interface}).  Modificandola
-è possibile spostare la colonna di note proporzionalmente,
-assumendo come unità la larghezza della testa della nota nella voce superiore.  Si usa
+è possibile spostare la colonna di note in situazioni in cui le colonne di
+note sono sovrapposte.  Non ha effetto su colonne di note non sovrapposte.
+Viene specificata in unità appropriate per una colonna di note,  ovvero la
+larghezza della testa della nota nella prima voce.  Si usa
 in situazioni complesse in cui i normali comandi @code{\shiftOn} (vedi
 @ref{Explicitly instantiating voices}) non risolvono adeguatamente le collisioni tra le
 note.  Per questo scopo, è preferibile alla proprietà @code{extra-offset}
@@ -2671,7 +2974,20 @@ poter sapere quali proprietà si possono usare per spostarlo.
 Vediamo ora come le proprietà presentate nella sezione precedente possano
 aiutare a risolvere la sovrapposizione degli elementi della notazione.
 
-@subheading proprietà padding
+@menu
+* La proprietà padding::
+* La proprietà right-padding::
+* La proprietà staff-padding::
+* La proprietà self-alignment-X::
+* La proprietà staff-position::
+* La proprietà extra-offset::
+* La proprietà positions::
+* La proprietà force-hshift::
+@end menu
+
+@node La proprietà padding
+@unnumberedsubsubsec La proprietà @code{padding}
+@translationof The padding property
 
 @cindex padding
 @cindex spaziatura
@@ -2719,7 +3035,9 @@ loro proprietà @code{outside-staff-priority}, allora si sposteranno
 quell'oggetto e tutti gli oggetti esterni a esso.
 
 
-@subheading right-padding
+@node La proprietà right-padding
+@unnumberedsubsubsec La proprietà @code{right-padding}
+@translationof The right-padding property
 
 @cindex proprietà right-padding
 @cindex right-padding, proprietà
@@ -2767,15 +3085,17 @@ di @code{right-padding}.
 
 @noindent
 
-@subheading proprietà staff-padding
+@node La proprietà staff-padding
+@unnumberedsubsubsec La proprietà @code{staff-padding}
+@translationof The staff-padding property
 
 @cindex allineare gli oggetti a una base
 @cindex oggetti, allinearli a una base
 
 @code{staff-padding} serve ad allineare gli oggetti come i segni di
-dinamica lungo una linea di base a una certa altezza fissa sopra il
-rigo, invece che a un'altezza dipendente dalla posizione della nota al
-quale sono collegati.  Non è una proprietà di @code{DynamicText} bensì
+dinamica lungo una linea di base a una certa distanza dal rigo, quando
+nessun altro elemento della notazione li allontana dal rigo.
+Non è una proprietà di @code{DynamicText} bensì
 di @code{DynamicLineSpanner}, perché la base deve essere applicata
 ugualmente a @strong{tutti} i segni dinamica, compresi quelli creati
 come estensori.  Ecco come allineare i segni di dinamica nell'esempio
@@ -2789,20 +3109,18 @@ preso dalla sezione precedente:
 @cindex staff-padding, esempio
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
-\dynamicUp
-% Aumenta la larghezza di 1 unità
-\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
-% Allinea le dinamiche alla base posta 2 unità sopra il rigo
-\override DynamicLineSpanner.staff-padding = #2
-a4\f b\mf c\mp b\p
+\override DynamicLineSpanner.staff-padding = #3
+a4\f b\mf a\p b\mp
 @end lilypond
 
 
-@subheading proprietà self-alignment-X
+@node La proprietà self-alignment-X
+@unnumberedsubsubsec La proprietà @code{self-alignment-X}
+@translationof The self-alignment-X property
 
-L'esempio successivo mostra come questa proprietà possa risolvere la
-collisione di un numero di corda con un gambo allineando il bordo
-destro del numero al punto di riferimento della nota a cui si riferisce:
+L'esempio successivo mostra come aggiustare la posizione di un numero
+di corda rispetto a un gambo allineando il bordo destro del numero
+al punto di riferimento della nota a cui si riferisce:
 
 @cindex StringNumber, esempio di sovrascrittura
 @cindex proprietà self-alignment-X, esempio
@@ -2815,7 +3133,10 @@ destro del numero al punto di riferimento della nota a cui si riferisce:
 <a\2>
 @end lilypond
 
-@subheading proprietà staff-position
+
+@node La proprietà staff-position
+@unnumberedsubsubsec La proprietà @code{staff-position}
+@translationof The staff-position property
 
 @cindex collisione tra oggetti all'interno del rigo
 
@@ -2833,7 +3154,7 @@ di collisione di questo tipo:
 
 In questo caso la soluzione migliore è spostare in basso la pausa d'intero, poiché
 si trova nella seconda voce.  In @code{\voiceTwo} (ovvero nella seconda
-voce di un costrutto @code{<<@{...@} \\ @{...@}>>}) il valore predefinito
+voce di un costrutto @code{<<@{@dots{}@} \\ @{@dots{}@}>>}) il valore predefinito
 di @code{staff-position} è -4 per la pausa multipla (MultiMeasureRest), quindi
 dobbiamo spostarla più in basso, ad esempio di altri quattro semispazi del
 rigo; il nuovo valore sarà @w{@code{-8}}.
@@ -2854,7 +3175,9 @@ rigo; il nuovo valore sarà @w{@code{-8}}.
 Questa soluzione è preferibile all'uso di @code{extra-offset}, perché
 il taglio addizionale sopra la pausa è inserito automaticamente.
 
-@subheading proprietà extra-offset
+@node La proprietà extra-offset
+@unnumberedsubsubsec La proprietà @code{extra-offset}
+@translationof The extra-offset property
 
 @cindex posizionare gli oggetti
 @cindex posizionare i grob
@@ -2879,7 +3202,9 @@ f4-5
 @end lilypond
 
 
-@subheading proprietà positions
+@node La proprietà positions
+@unnumberedsubsubsec La proprietà @code{positions}
+@translationof The positions property
 
 @cindex controllo manuale di graffette dei gruppi irregolari, travature, legature di portamento e di frase
 @cindex travature dei gruppi irregolari, controllo manuale
@@ -2887,41 +3212,41 @@ f4-5
 @cindex legature di frase, controllo manuale
 @cindex travature, controllo manuale
 
-La proprietà @code{positions} permette di controllare manualmente la posizione e
-l'inclinazione delle graffette dei gruppi irregolari, delle legature di portamento e di
-frase e delle travature.  Ecco un esempio di una legatura di frase
-dall'aspetto orribile, dovuto al suo tentativo di evitare la legatura
-di portamento sull'acciaccatura.
+La proprietà @code{positions} permette di controllare manualmente la
+posizione verticale e quindi l'inclinazione delle graffette dei
+gruppi irregolari, delle legature di portamento e di frase e
+delle travature.  Ecco un esempio in cui una legatura di frase
+e una legatura di portamento collidono:
 
-@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
-r4 \acciaccatura e8\( d8 c~ c d c d\)
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+a8 \( ( a'16 ) a \)
 @end lilypond
 
-@noindent
-Potremmo semplicemente spostare la legatura di frase sopra le note:
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
-r4
-\phrasingSlurUp
-\acciaccatura e8\( d8 c~ c d c d\)
-@end lilypond
-
-@noindent
-Questa sarebbe la soluzione migliore.  Se, invece, per qualche motivo non
-fosse possibile, l'alternativa sarebbe spostare un po' più in basso l'estremità
-sinistra della legatura di frase tramite la proprietà @code{positions}.  Questo
-risolve anche il problema della forma sgraziata.
-
 @cindex PhrasingSlur, esempio di sovrascrittura
 @cindex proprietà positions, esempio
 @cindex positions, esempio
 
-@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
-r4
-\once \override PhrasingSlur.positions = #'(-4 . -3)
-\acciaccatura e8\( d8 c~ c d c d\)
+@noindent
+Si potrebbero spostare più in alto le due estremità della legatura
+di frase.  Possiamo provare a impostare quella sinistra su 2.5 spazi
+sopra la linea centrale e quella destra a 4.5 spazi; LilyPond
+sceglierà la legatura di frase tra quelle candidate che hanno le
+estremità più vicine a queste:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\once \override PhrasingSlur.positions = #'(2.5 . 4.5)
+a8 \( ( a'16 ) a \)
 @end lilypond
 
+È migliorato, ma perché non abbassare un po' l'estremità destra
+della legatura di portamento?  Se provi vedrai che non può essere
+fatto in questo modo.  Il motivo è che non ci sono legature di
+portamento candidate più basse di quella già selezionata, quindi
+in questo caso la proprietà @code{positions} non può produrre
+effetti.  Tuttavia, legature di valore, di portamento e di frase
+@emph{possono} essere posizionate e disegnate in modo molto preciso
+se necessario.  Per sapere come fare si veda @ruser{Modifying ties and slurs}.
+
 Ecco un altro esempio.  Vediamo che le travature collidono
 con le legature di valore:
 
@@ -2929,12 +3254,12 @@ con le legature di valore:
 {
   \time 4/2
   <<
-    { c'1 ~ c'2. e'8 f' }
+    { c'1 ~ 2. e'8 f' }
     \\
     { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
   >>
   <<
-    { c'1 ~ c'2. e'8 f' }
+    { c'1 ~ 2. e'8 f' }
     \\
     { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
   >>
@@ -2954,7 +3279,7 @@ centrale a, per esempio, 1:
 {
   \time 4/2
   <<
-    { c'1 ~ c'2. e'8 f' }
+    { c'1 ~ 2. e'8 f' }
     \\
     {
       \override Beam.positions = #'(-1 . -1)
@@ -2962,7 +3287,7 @@ centrale a, per esempio, 1:
     }
   >>
   <<
-    { c'1 ~ c'2. e'8 f' }
+    { c'1 ~ 2. e'8 f' }
     \\
     { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
   >>
@@ -2973,7 +3298,9 @@ centrale a, per esempio, 1:
 Come vedi, la sovrascrittura si applica anche alla prima voce della seconda
 misura di otto note, ma a nessuna delle travature nella seconda voce.
 
-@subheading proprietà force-hshift
+@node La proprietà force-hshift
+@unnumberedsubsubsec La proprietà @code{force-hshift}
+@translationof The force-hshift property
 
 Possiamo vedere ora come applicare le correzioni finali all'esempio di Chopin
 introdotto alla fine del paragrafo @ref{I'm hearing Voices}, che avevamo
@@ -2997,14 +3324,19 @@ lasciato così:
 @noindent
 La nota interna del primo accordo (ovvero il La bemolle della quarta
 voce) non deve essere allontanata dalla colonna della nota più
-alta.  Per correggerlo impostiamo @code{force-hshift}, una proprietà
-di @code{NoteColumn}, su zero.
+alta.  Potremmo pensare di correggerlo con @code{\shiftOff}, ma ciò
+causerebbe degli avvertimenti relativi alla collisione di note.  Impostiamo
+invece @code{force-hshift}, una proprietà di @code{NoteColumn}, su zero.
 
 Nel secondo accordo preferiamo che il Fa sia allineato al La bemolle e che
 la nota più grave sia posizionata leggermente più a destra, in modo da
 evitare la collisione dei gambi.  Per farlo dobbiamo impostare
 @code{force-hshift} nella colonna (@code{NoteColumn}) del Re bemolle
-grave in modo che si sposti a destra di mezzo spazio di rigo.
+grave in modo che si sposti a destra di mezzo spazio di rigo e  @code{force-hshift}
+per il Fa su zero.  Si usa @code{\once} per evitare che tali impostazioni
+si propaghino oltre il momento musicale immediato, sebbene in questo
+piccolo esempio il @code{\once} e il secondo @code{\override} nella quarta
+voce potrebbero essere omessi.  Ma non sarebbe un esempio di buona pratica.
 
 Ecco il risultato finale:
 
@@ -3018,17 +3350,12 @@ Ecco il risultato finale:
   <<
     { c2 aes4. bes8 }
     \\
-    {
-      <ees, c>2
-      \once \override NoteColumn.force-hshift = #0.5
-      des2
-    }
+    { <ees, c>2 \once \override NoteColumn.force-hshift =
+      0.5 des }
     \\
     \\
-    {
-      \override NoteColumn.force-hshift = #0
-      aes'2 f4 fes
-    }
+    { \once \override NoteColumn.force-hshift = 0 aes'2
+      \once \override NoteColumn.force-hshift = 0 f4 fes }
   >> |
   <c ees aes c>1 |
 }
@@ -3072,21 +3399,20 @@ rhMusic = \relative c'' {
       \new Voice {
         \voiceTwo
         c,8~
-        % Reposition the c2 to the right of the merged note
+        % Riposiziona il c2 a destra della nota unita
         \once \override NoteColumn.force-hshift = #1.0
-        % Move the c2 out of the main note column
-        % so the merge will work
+        % Sposta il c2 fuori dalla colonna della nota principale
+        % in modo che l'unione di note (merge) funzioni
         \shiftOnn
         c2
       }
       \new Voice {
         \voiceThree
         s8
-        % Stem on the d2 must be down to permit merging
+        % Il gambo di d2 deve essere in giù per permettere l'unione delle note
         \stemDown
-        % Stem on the d2 should be invisible
+        % Il gambo di d2 deve essere invisibile
         \tweak Stem.transparent ##t
-        \tweak Flag.transparent ##t
         d2
       }
       \new Voice {
@@ -3152,7 +3478,7 @@ rhMusic = \relative c'' {
       { c,8 d fis bes a }  % continuazione della voce principale
       \new Voice {
         \voiceTwo
-        c,8~ c2
+        c,8~ 2
       }
       \new Voice {
         \voiceThree
@@ -3210,7 +3536,7 @@ rhMusic = \relative c'' {
       { c,8 d fis bes a }  % continuazione della voce principale
       \new Voice {
         \voiceTwo
-        c,8~ c2
+        c,8~ 2
       }
       \new Voice {
         \voiceThree
@@ -3282,7 +3608,7 @@ rhMusic = \relative c'' {
       { c,8 d fis bes a }  % continuazione della voce principale
       \new Voice {
         \voiceTwo
-        c,8~ c2
+        c,8~ 2
       }
       \new Voice {
         \voiceThree
@@ -3364,7 +3690,7 @@ rhMusic = \relative c'' {
       { c,8 d fis bes a }  % continuazione della voce principale
       \new Voice {
         \voiceTwo
-        c,8~ c2
+        c,8~ 2
       }
       \new Voice {
         \voiceThree
@@ -3524,9 +3850,8 @@ rhMusic = \relative c'' {
         s8
         % Il gambo di d2 deve essere in giù per permettere l'unione delle note
         \stemDown
-        % Stem on the d2 should be invisible
+        % Il gambo di d2 deve essere invisibile
         \tweak Stem.transparent ##t
-        \tweak Flag.transparent ##t
         d2
       }
       \new Voice {
@@ -3568,17 +3893,23 @@ lhMusic = \relative c' {
 @translationof Further tweaking
 
 @menu
-* Altri usi delle modifiche::
-* Uso delle variabili per le modifiche::
+* Altri usi delle modifiche con \tweak::
+* Uso delle variabili per modificare la formattazione::
 * Fogli di stile::
 * Altre fonti di informazione::
 * Modifiche avanzate con Scheme::
 @end menu
 
-@node Altri usi delle modifiche
-@subsection Altri usi delle modifiche
+@node Altri usi delle modifiche con \tweak
+@subsection Altri usi delle modifiche con @code{\tweak}
 @translationof Other uses for tweaks
 
+@menu
+* Legature di valore tra note di voci diverse::
+* Simulare una corona nel MIDI::
+@end menu
+
+
 @cindex proprietà transparent, uso della
 @cindex oggetti, renderli invisibili
 @cindex togliere gli oggetti
@@ -3588,7 +3919,9 @@ lhMusic = \relative c' {
 @cindex oggetti invisibili
 @cindex legature di valore tra note di voci diverse
 
-@subheading Legature di valore tra note di voci diverse
+@node Legature di valore tra note di voci diverse
+@unnumberedsubsubsec Legature di valore tra note di voci diverse
+@translationof Tying notes across voices
 
 L'esempio seguente mostra come unire con legature di valore
 note appartenenti a voci diverse.  Di norma, solo le note nella
@@ -3596,7 +3929,7 @@ stessa voce possono essere unite da una legatura di valore.
 Se si usano due voci con le note legate in una voce
 
 @lilypond[quote,fragment,relative=2]
-<< { b8~ b\noBeam } \\ { b8[ g] } >>
+<< { b8~ 8\noBeam } \\ { b8[ g] } >>
 @end lilypond
 
 @noindent
@@ -3611,8 +3944,7 @@ attraversare le voci:
 <<
   {
     \tweak Stem.transparent ##t
-    \tweak Flag.transparent ##t
-    b8~ b\noBeam
+    b8~ 8\noBeam
   }
 \\
   { b8[ g] }
@@ -3627,9 +3959,8 @@ possiamo allungarlo impostando la proprietà
 <<
   {
     \tweak Stem.transparent ##t
-    \tweak Flag.transparent ##t
     \tweak Stem.length #8
-    b8~ b\noBeam
+    b8~ 8\noBeam
   }
 \\
   { b8[ g] }
@@ -3637,9 +3968,10 @@ possiamo allungarlo impostando la proprietà
 @end lilypond
 
 @funindex \single
-@cindex tweak, generated from override
-Per @emph{sovrascrivere} la trasparenza di un oggetto grafico,
-avremmo potuto usare la scorciatoia @code{\hide}, come spiegato
+@cindex tweak, generato da un override
+
+Per @emph{sovrascrivere} (con @code{\override}) la trasparenza di un oggetto
+grafico, avremmo potuto usare la scorciatoia @code{\hide}, come spiegato
 in precedenza.  Ma la modifica manuale con @emph{\tweak} è un'operazione
 diversa, che riguarda solo le proprietà generate da una singola espressione
 musicale.  Tuttavia è possibile convertire le sovrascritture in @emph{tweak}
@@ -3652,7 +3984,7 @@ in questo modo
     \single \hide Stem
     \single \hide Flag
     \tweak Stem.length #8
-    b8~ b\noBeam
+    b8~ 8\noBeam
   }
 \\
   { b8[ g] }
@@ -3660,13 +3992,16 @@ in questo modo
 @end lilypond
 
 In questo caso particolare, la differenza rispetto a @code{\once \hide} non
-è evidente.  La differenza è importante quando ci sono vari oggetti che
+è evidente.  La differenza è evidente quando ci sono vari oggetti che
 si trovano nello stesso punto del tempo musicale (come le teste delle note
 in un accordo).  In quel caso, @code{\once} avrà effetto su tutti quegli
 oggetti mentre @code{\single} solo su uno, ovvero quello generato
 dall'espressione musicale immediatamente seguente.
 
-@subheading Simulare una corona nel MIDI
+
+@node Simulare una corona nel MIDI
+@unnumberedsubsubsec Simulare una corona nel MIDI
+@translationof Simulating a fermata in MIDI
 
 @cindex proprietà stencil, uso della
 @cindex corona, usarla nel MIDI
@@ -3675,7 +4010,7 @@ Per gli oggetti esterni al rigo è di solito preferibile sovrascrivere
 la proprietà @code{stencil} piuttosto che la proprietà @code{transparent}
 dell'oggetto se si desidera toglierlo dall'output.  Se si imposta la
 proprietà @code{stencil} su @code{#f} l'oggetto verrà completamente
-rimosso dall'output e quindi non potrà influenzare la disposizone
+rimosso dall'output e quindi non potrà influenzare la disposizione
 di altri oggetti posizionati rispetto a esso.
 
 Ad esempio, se volessimo modificare il segno di metronomo solo per
@@ -3742,13 +4077,13 @@ viene tolto lo stampo (@emph{stencil}), ciò non accade.
 Glossario musicale:
 @rglosnamed{system,sistema}.
 
-@node Uso delle variabili per le modifiche
-@subsection Uso delle variabili per le modifiche
-@translationof Using variables for tweaks
+@node Uso delle variabili per modificare la formattazione
+@subsection Uso delle variabili per modificare la formattazione
+@translationof Using variables for layout adjustments
 
-@cindex variabili, usarle per le modifiche
-@cindex usare le variabili per le modifiche
-@cindex modifiche, usare le variabili per le
+@cindex variabili, usarle per le sovrascritture
+@cindex sovrascritture, usare le variabili per
+@cindex formattazione, usare le variabili per modificare la
 
 I comandi di sovrascrittura sono spesso lunghi e tediosi da
 scrivere, e devono essere assolutamente corretti.  Se si usa
@@ -3858,12 +4193,9 @@ parti che hanno @code{#()}; verranno spiegate nel capitolo
 
 @lilypond[quote,verbatim,ragged-right]
 mpdolce =
-#(make-dynamic-script
-  #{ \markup { \hspace #0
-               \translate #'(5 . 0)
-               \line { \dynamic "mp"
-                       \text \italic "dolce" } }
-  #})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
 
 inst =
 #(define-music-function
@@ -3891,12 +4223,10 @@ piuttosto brutti, dunque nascondiamoli in un altro file:
 @example
 %%% salva queste righe in un file chiamato "definitions.ily"
 mpdolce =
-#(make-dynamic-script
-  #@{ \markup @{ \hspace #0
-               \translate #'(5 . 0)
-               \line @{ \dynamic "mp"
-                       \text \italic "dolce" @} @}
-  #@})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #@{ \markup @{ \dynamic mp \normal-text \italic \bold dolce @} #@})
+
 
 inst =
 #(define-music-function
@@ -3928,12 +4258,9 @@ Ora modifichiamo la musica (e salviamo questo file come @file{music.ly}).
 
 @lilypond[quote,ragged-right]
 mpdolce =
-#(make-dynamic-script
-  #{ \markup { \hspace #0
-               \translate #'(5 . 0)
-               \line { \dynamic "mp"
-                       \text \italic "dolce" } }
-  #})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
 
 inst =
 #(define-music-function
@@ -3963,12 +4290,9 @@ questo modo:
 @example
 %%%  definitions.ily
 mpdolce =
-#(make-dynamic-script
-  #@{ \markup @{ \hspace #0
-               \translate #'(5 . 0)
-               \line @{ \dynamic "mp"
-                       \text \italic "dolce" @} @}
-  #@})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #@{ \markup @{ \dynamic mp \normal-text \italic \bold dolce @} #@})
 
 inst =
 #(define-music-function
@@ -3979,7 +4303,7 @@ inst =
 \layout@{
   \context @{
     \Score
-    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.extra-offset = #'(-5 . 0)
     \override MetronomeMark.padding = #'3
   @}
   \context @{
@@ -3996,12 +4320,9 @@ inst =
 
 @lilypond[quote,ragged-right]
 mpdolce =
-#(make-dynamic-script
-  #{ \markup { \hspace #0
-               \translate #'(5 . 0)
-               \line { \dynamic "mp"
-                       \text \italic "dolce" } }
-  #})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
 
 inst =
 #(define-music-function
@@ -4012,7 +4333,7 @@ inst =
 \layout{
   \context {
     \Score
-    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.extra-offset = #'(-5 . 0)
     \override MetronomeMark.padding = #'3
   }
   \context {
@@ -4046,12 +4367,9 @@ la dimensione complessiva dell'output.
 @example
 %%%  web-publish.ily
 mpdolce =
-#(make-dynamic-script
-  #@{ \markup @{ \hspace #0
-               \translate #'(5 . 0)
-               \line @{ \dynamic "mp"
-                       \text \italic "dolce" @} @}
-  #@})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #@{ \markup @{ \dynamic mp \normal-text \italic \bold dolce @} #@})
 
 inst =
 #(define-music-function
@@ -4064,7 +4382,7 @@ inst =
 \layout@{
   \context @{
     \Score
-    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.extra-offset = #'(-5 . 0)
     \override MetronomeMark.padding = #'3
   @}
   \context @{
@@ -4080,12 +4398,9 @@ inst =
 
 @lilypond[quote,ragged-right]
 mpdolce =
-#(make-dynamic-script
-  #{ \markup { \hspace #0
-               \translate #'(5 . 0)
-               \line { \dynamic "mp"
-                       \text \italic "dolce" } }
-  #})
+  \tweak self-alignment-X #-0.6
+  #(make-dynamic-script
+    #{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
 
 inst =
 #(define-music-function
@@ -4097,7 +4412,7 @@ inst =
 
 \layout{
   \context { \Score
-    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.extra-offset = #'(-5 . 0)
     \override MetronomeMark.padding = #'3
   }
   \context { \Voice
@@ -4166,7 +4481,7 @@ da lilypond.org oppure installandolo da un gestore di pacchetti
 (come nelle distribuzioni GNU/Linux o nelle istallazioni tramite
 fink o cygwin) o compilandolo dai sorgenti:
 
-@strong{Scaricato da lilypond.org}
+@subsubheading Scaricato da lilypond.org
 
 @itemize @bullet
 @item GNU/Linux
@@ -4196,7 +4511,7 @@ Con Windows Explorer vai in
 
 @end itemize
 
-@strong{Istallato da un gestore di pacchetti o compilato da sorgenti}
+@subsubheading Istallato da un gestore di pacchetti o compilato da sorgenti
 
 Vai in
 @file{@var{PREFIX}/share/lilypond/@var{X.Y.Z}/}, dove
@@ -4334,4 +4649,3 @@ note in base alla loro posizione sul rigo.
 
 Altri esempi che mostrano l'uso di queste interfacce programmabili
 si trovano in @rextend{Callback functions}.
-