[ < ] [ > ]   [ << ] [ Su ] [ >> ]         [Inizio] [Contenuti] [Indice] [ ? ]

3.1 Struttura dell’input

@translationof Input structure

Il principale formato di input di LilyPond sono i file di testo. Per convenzione, questi file hanno estensione ‘.ly’.


[ < ] [ > ]   [ << ] [ Su ] [ >> ]         [Inizio] [Contenuti] [Indice] [ ? ]

3.1.1 Struttura di una partitura

@translationof Structure of a score

Un blocco \score deve contenere una singola espressione musicale delimitata da parentesi graffe:

 
\score {
  …
}

Nota: Ci deve essere solo una espressione musicale più esterna in un blocco score e deve essere racchiusa tra parentesi graffe.

Questa espressione musicale singola può essere di qualsiasi dimensione e contenere altre espressioni musicali di qualsiasi complessità. Tutti gli esempi seguenti sono espressioni musicali:

 
{ c'4 c' c' c' }
 
{
  { c'4 c' c' c' }
  { d'4 d' d' d' }
}

[image of music]

 
<<
  \new Staff { c'4 c' c' c' }
  \new Staff { d'4 d' d' d' }
>>

[image of music]

 
{
  \new GrandStaff <<
    \new StaffGroup <<
      \new Staff { \flauto }
      \new Staff { \oboe }
    >>
    \new StaffGroup <<
      \new Staff { \violinoI }
      \new Staff { \violinoII }
    >>
  >>
}

I commenti sono un’eccezione a questa regola generale (altre eccezioni sono spiegate in Struttura del file). Sia i commenti su una singola riga che quelli multirigo delimitati da %{ … %} possono essere inseriti ovunque nel file di input: dentro o fuori un blocco \score e dentro o fuori la singola espressione musicale di un blocco \score.

È bene ricordare che anche se un file contiene soltanto un blocco \score, questo è implicitamente racchiuso in un blocco \book. Un blocco \book in un file sorgente produce almeno un file di output e il nome predefinito del file di output deriva dal nome del file di input, quindi ‘fandangoperelefanti.ly’ genererà ‘fandangoperelefanti.pdf’.

Maggiori dettagli sui blocchi \book si trovano in Molteplici partiture in un libro, Molteplici file di output da un unico file di input e Struttura del file.

Vedi anche

Manuale di apprendimento: (learning)Lavorare sui file di input section ‘Lavorare sui file di input’ in Manuale di Apprendimento, (learning)Espressioni musicali section ‘Espressioni musicali’ in Manuale di Apprendimento, (learning)La partitura è una (singola) espressione musicale composta section ‘La partitura è una (singola) espressione musicale composta’ in Manuale di Apprendimento.


[ < ] [ > ]   [ << ] [ Su ] [ >> ]         [Inizio] [Contenuti] [Indice] [ ? ]

3.1.2 Molteplici partiture in un libro

@translationof Multiple scores in a book

Un documento può contenere più brani di musica e testo, come, per esempio, uno studio o una parte orchestrale con vari movimenti. Ogni movimento si inserisce con un blocco \score,

 
\score {
  …musica…
}

e il testo si inserisce con un blocco \markup,

 
\markup {
  …testo…
}

Tutti i movimenti e i testi che appaiono nello stesso file ‘.ly’ normalmente vengono elaborati in un singolo file di output.

 
\score {
  …
}
\markup {
  …
}
\score {
  …
}

Un’importante eccezione è costituita dai documenti da elaborare con lilypond-book, dove occorre aggiungere esplicitamente un blocco \book, altrimenti apparirà nell’output solo il primo blocco \score o \markup.

L’intestazione di ogni brano musicale può essere inserita nel blocco \score. Il nome definito nel campo piece (brano) dell’intestazione apparirà all’inizio di ogni movimento. Il titolo dell’intero libro può trovarsi all’interno del blocco \book oppure, se questo non è presente, nel blocco \header all’inizio del file.

 
\header {
  title = "Otto miniature"
  composer = "Igor Stravinsky"
}
\score {
  …
  \header { piece = "Romanza" }
}
\markup {
   …testo della seconda strofa…
}
\markup {
   …testo della terza strofa…
}
\score {
  …
  \header { piece = "Minuetto" }
}

I brani musicali possono essere raggruppati in parti di libro tramite i blocchi \bookpart. Le parti di libro sono separate da un’interruzione di pagina e possono iniziare con un titolo, come il libro stesso, specificandolo in un blocco \header.

 
\bookpart {
  \header {
    title = "Titolo del libro"
    subtitle = "Prima parte"
  }
  \score { … }
  …
}
\bookpart {
  \header {
    subtitle = "Seconda parte"
  }
  \score { … }
  …
}

[ < ] [ > ]   [ << ] [ Su ] [ >> ]         [Inizio] [Contenuti] [Indice] [ ? ]

3.1.3 Molteplici file di output da un unico file di input

@translationof Multiple output files from one input file

Per generare molteplici file di output dallo stesso file ‘.ly’, basta aggiungere molteplici blocchi \book, ognuno dei quali produrrà un file di output separato. Se non è specificato alcun blocco \book nel file di input, LilyPond tratterà implicitamente l’intero file come un singolo blocco \book, come è spiegato in Struttura del file.

Nel generare molteplici file da un singolo file sorgente, LilyPond controlla che nessuno dei file di output di alcun blocco \book sovrascriva il file di output prodotto da un blocco \book precedente dello stesso file di input.

Per farlo, aggiunge un suffisso al nome del file di output di ogni blocco \book, derivato dal nome del file di input (se viene lasciata l’impostazione predefinita).

Il comportamento predefinito consiste quindi nell’appendere un suffisso numerico a ogni nome che potrebbe entrare in conflitto, quindi

 
\book {
  \score { … }
  \paper { … }
}
\book {
  \score { … }
  \paper { … }
}
\book {
  \score { … }
  \paper { … }
}

nel file sorgente ‘ottominiature.ly’ genererà


[ < ] [ > ]   [ << ] [ Su ] [ >> ]         [Inizio] [Contenuti] [Indice] [ ? ]

3.1.4 Nomi dei file di output

@translationof Output file names

LilyPond permette di decidere quali nomi di file debbano essere usati dai vari backend quando questi generano i file di output.

Nella sezione precedente abbiamo visto come LilyPond prevenga i conflitti di nome quando genera molti file di output da un singolo file sorgente. È possibile anche specificare un proprio suffisso per ogni blocco \book. Quindi si possono, per esempio, generare file chiamati ‘ottominiature-Romanza.pdf’, ‘ottominiature-Minuetto.pdf’ e ‘ottominiature-Notturno.pdf’ aggiungendo una dichiarazione \bookOutputSuffix all’interno di ogni blocco \book.

 
\book {
  \bookOutputSuffix "Romanza"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputSuffix "Minuetto"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputSuffix "Notturno"
  \score { … }
  \paper { … }
}

È possibile anche specificare un diverso nome del file di output per ciascun blocco book, tramite le dichiarazioni \bookOutputName

 
\book {
  \bookOutputName "Romanza"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputName "Minuetto"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputName "Notturno"
  \score { … }
  \paper { … }
}

Questo file produrrà i seguenti file di output:


[ < ] [ > ]   [ << ] [ Su ] [ >> ]         [Inizio] [Contenuti] [Indice] [ ? ]

3.1.5 Struttura del file

@translationof File structure

Un file ‘.ly’ può contenere un qualsiasi numero di espressioni di livello superiore (in inglese, toplevel expressions). Per espressione di livello superiore si intende una delle seguenti:

L’esempio seguente mostra tre elementi che possono essere inseriti nel livello superiore

 
\layout {
  % Non giustificare l'output
  ragged-right = ##t
}

\header {
   title = "Do-re-mi"
}

{ c'4 d' e2 }

Ciascuna delle seguenti istruzioni lessicali può essere inserita in qualsiasi punto di un file:

Lo spazio bianco tra gli elementi dell’input viene generalmente ignorato e può essere liberamente omesso o aumentato per migliorare la leggibilità. Tuttavia esistono dei casi in cui lo spazio bianco deve essere sempre usato per non incorrere in errori:

Vedi anche

Manuale di apprendimento: (learning)Come funzionano i file di input di LilyPond section ‘Come funzionano i file di input di LilyPond’ in Manuale di Apprendimento.

Guida alla notazione: Come funzionano i titoli, Il blocco \layout.


[ < ] [ > ]   [ << ] [ Su ] [ >> ]

This document was generated by gub on Luglio 13, 2020 using texi2html 1.82.

Altre lingue: English, català, deutsch, español, français, 日本語.
A proposito della selezione automatica della lingua.