noteflakes / lydown

A language for music notation
http://ciconia.github.io/lydown
MIT License
24 stars 0 forks source link

Cues in parts #23

Open noteflakes opened 9 years ago

noteflakes commented 9 years ago

The cues should appear only in part mode.

Lilypond:

<<
    { e'2\rest r4. e8 }
    \new CueVoice {
      \stemUp d'8^"flute" c d e fis2
    }
  >>

Lydown:

\cue:flute 8d'cde2f+ \cueWhile 2r4.r8e \cueEnd

Or maybe:

\cue:flute:{{8d'cde2f+}} 2r4.r8e

In that case, the system automatically matches the cue length to the music after, in order to create the corresponding nested lilypond structures.

Another option, in addition to the \cue command, is a quote command:

\quote:flute1 2r4.r \unquote, 8e

which translates to lilypond:

ldViolinoIMusic = { ... <>^\markup \tiny { \smallCaps { Flute I } } \cueDuring #"ldFluteIQuote" #UP { r2 r4.} e8 ... }
ldFluteIMusic = { ... }
\addQuote "ldFluteIQuote" { \ldFluteIMusic }

(Some kind of registry for quoted voices, so we know to add \addQuote commands)

Also, ability to provide custom titles for cue:

\quote:tenore:"_Evangelist:_" 2r4.r \unquote, 8e

Lilypond:

ldViolinoIMusic = { ... <>^\markup \tiny { \italic { Evangelist: } } \cueDuring #"ldFluteIQuote" #UP { r2 r4.} e8 ... }
ldFluteIMusic = { ... }
\addQuote "ldFluteIQuote" { \ldFluteIMusic }

Also, ability to cue with clef:

\quoteWithClef:treble_8:tenore:"_Evangelist:_" 2r4.r \unquote, 8e

Lilypond:

ldViolinoIMusic = { ... <>^\markup \tiny { \italic { Evangelist: } } \cueDuringWithClef #"ldFluteIQuote" #UP #"treble_8" { r2 r4.} e8 ... }
ldFluteIMusic = { ... }
\addQuote "ldFluteIQuote" { \ldFluteIMusic }

The vertical position of the cue on the staff can also be controlled using the vertical position specifiers:

\quote:tenore ... \unquote // default is on top of staff music (UP)
\_quote:tenore ... \unquote // on bottom - under staff music (DOWN)
\^quote:tenore ... \unquote // on top - like the default (UP)