3.3.5 Aggiungere e togliere gli incisori

Abbiamo visto che ciascuno dei contesti contiene vari incisori, ognuno dei quali ha il compito di produrre una parte specifica dell’output, come stanghette, righi, teste, gambi, etc.. Se un incisore viene rimosso da un contesto, non può più produrre il suo output. Si tratta di un metodo sbrigativo per modificare l’output, e talvolta può essere utile.

Cambiare un singolo contesto

Per rimuovere un incisore da un singolo contesto usiamo il comando \with posto subito dopo il comando di creazione del contesto, come esposto nella sezione precedente.

A titolo di esempio, ripetiamo un esempio della sezione precedente rimuovendo le linee del rigo. Ricorda che le linee del rigo vengono create dall’incisore Staff_symbol_engraver.

\new Staff \with {
  \remove "Staff_symbol_engraver"
}
\relative c' {
  c4 d
  \set fontSize = #-4  % make note heads smaller
  e4 f |
  \set fontSize = #2.5  % make note heads larger
  g4 a
  \unset fontSize  % return to default size
  b4 c |
}

[image of music]

Gli incisori possono essere aggiunti anche a contesti individuali. Il comando per farlo è

\consists Engraver_name,

posto all’interno di un blocco \with. Alcune partiture vocali hanno un ambitus collocato all’inizio del pentagramma per indicare l’intervallo tra la nota più grave e quella più acuta in quella parte – si veda ambitus. L’ambitus viene creato dall’incisore Ambitus_engraver, che di norma non è incluso in alcun contesto. Se lo aggiungiamo al contesto Voice, calcola l’intervallo di quella voce soltanto:

\new Staff <<
  \new Voice \with {
    \consists "Ambitus_engraver"
  } {
    \relative c'' {
      \voiceOne
      c4 a b g
    }
  }
  \new Voice {
    \relative c' {
      \voiceTwo
      c4 e d f
    }
  }
>>

[image of music]

ma se aggiungiamo l’incisore ambitus al contesto Staff, calcola l’intervallo di tutte le note in tutte le voci di quel pentagramma:

\new Staff \with {
  \consists "Ambitus_engraver"
}
<<
  \new Voice {
    \relative c'' {
      \voiceOne
      c4 a b g
    }
  }
  \new Voice {
    \relative c' {
      \voiceTwo
      c4 e d f
    }
  }
>>

[image of music]

Modificare tutti i contesti dello stesso tipo

Gli esempi precedenti mostrano come rimuovere o aggiungere degli incisori a contesti individuali. È anche possibile rimuovere o aggiungere gli incisori per ogni contesto di un particolare tipo inserendo i comandi nel contesto appropriato in un blocco \layout. Ad esempio, se volessimo mostrare un ambitus per ogni pentagramma in una partitura di quattro pentagrammi, potremmo scrivere

\score {
  <<
    \new Staff {
      \relative c'' {
        c4 a b g
      }
    }
    \new Staff {
      \relative c' {
        c4 a b g
      }
    }
    \new Staff {
      \clef "G_8"
      \relative c' {
        c4 a b g
      }
    }
    \new Staff {
      \clef "bass"
      \relative c {
        c4 a b g
      }
    }
  >>
  \layout {
    \context {
      \Staff
      \consists "Ambitus_engraver"
    }
  }
}

[image of music]

I valori delle proprietà di un contesto possono essere impostati anche per tutti i contesti di un particolare tipo includendo il comando \set in un blocco \context nello stesso modo.

Vedi anche

Guida alla notazione: Modifying context plug-ins, Changing context default settings.

Problemi noti e avvertimenti

Gli incisori Stem_engraver e Beam_engraver fissano i propri oggetti alle teste delle note. Se si elimina Note_heads_engraver le teste delle note non vengono prodotte e di conseguenza non vengono creati nemmeno i gambi né le travature.


Other languages: English, česky, deutsch, español, français, magyar, 日本語, nederlands.
About automatic language selection.

LilyPond — Learning Manual