LilyPond: colori e variabili


LilyPond è un linguaggio molto versatile ed elastico.
In questo articolo ho provato a inserire gli insiemi di colori in variabili in modo da avere velocemente a disposizione ogni possibile combinazione.
Il sistema funziona alla perfezione.
Ecco un semplice esempio (il frammento musicale è tratto dalla pagina dedicata alla polifonia del manuale ufficiale LilyPond)

Ed ecco il relativo sorgente
\version "2.18.2"
\paper{
  indent=0\mm
  line-width=120\mm
  oddFooterMarkup=##f
  oddHeaderMarkup=##f
  bookTitleMarkup = ##f
  scoreTitleMarkup = ##f
}
rosso = {
\override Tie.color = #red %Per le legature di valore
\override Slur.color = #red %Per le legature di portamento e frase
\override NoteHead.color = #red %Per la testa delle note
\override Stem.color = #red %Per i gambi
\override Beam.color = #red %Per le stanghette
\override Rest.color = #red %Per le pause
\override Accidental.color = #red %Per gli accidenti
\override Script.color = #red %Per le indicazioni espressive
}
verde = {
\override Tie.color = #green %Per le legature di valore
\override Slur.color = #green %Per le legature di portamento e frase
\override NoteHead.color = #green %Per la testa delle note
\override Stem.color = #green %Per i gambi
\override Beam.color = #green %Per le stanghette
\override Rest.color = #green %Per le pause
\override Accidental.color = #green %Per gli accidenti
\override Script.color = #green %Per le indicazioni espressive
}
blu = {
\override Tie.color = #blue %Per le legature di valore
\override Slur.color = #blue %Per le legature di portamento e frase
\override NoteHead.color = #blue %Per la testa delle note
\override Stem.color = #blue %Per i gambi
\override Beam.color = #blue %Per le stanghette
\override Rest.color = #blue %Per le pause
\override Accidental.color = #blue %Per gli accidenti
\override Script.color = #blue %Per le indicazioni espressive
}
\new Staff \relative c' <<
  % Initiate first voice
  \new Voice {
    \voiceOne
\rosso
c16^( d e f g4 f e | d2 e) |
  }
  % Initiate second voice
  \new Voice {
    % Set stems, etc, down
    \voiceTwo
 
\verde
s4 r8 e4 d c8~ | c8 b16 a b8 g~ g2 |
  }
  % Initiate third voice
  \new Voice {
    % Set stems, etc, up
    \voiceThree
    \blu
s1 | s4 b c2 |
  }
>>

Commenti

Post popolari in questo blog

PCT e collegamenti ipertestuali tra atti e documenti in Word, Writer e LaTeX

Atti giudiziari: utilizzare le variabili al posto dei nomi propri in Word, Writer e LaTeX