I want to accomplish the following:

Clef changing when e1 is reached

Is this possible to do automatically (i.e. without the \clef tenor, treble etc). Ideally, what I would like is to specify the points, or a range at which the clef is changed.

  • 1
    Welcome to Music SE. For what purpose do you want your music to be used? For a performer to read it and perform it? I ask because, when a composer thinks of where to change clef, there are more things to take into account than the current clef and the next note's pitch. Changing clef between phrases is preferable to changing in mid-phrase. A performer might tolerate a single note on the 4th leger line, but if there's an extended passage of notes with 3 or 4 leger lines it might be better to change clef instead.
    – Rosie F
    Oct 8 '18 at 6:46
  • I don't know what instrument this is for -- cello? bassoon? Some performers might be unused to tenor clef, and would rather read notes on leger lines in bass clef; others might prefer tenor.
    – Rosie F
    Oct 8 '18 at 6:48
  • Thanks! The question is purely academic and strictly about LilyPond, not about musical practicality. Oct 9 '18 at 9:06

As far as I can tell, there is currently no mechanism in Lilypond to insert clefs automatically. It might be a good feature to suggest to the developers, since it wouldn't be too hard to implement - you might even want to try your hand at it yourself.

(As Rosie F noted, it is good music typesetting practice not to change clef whenever a specific pitch is crossed, but only when an extended or coherent passage exceeds the previous range, so it would be a nice addition to program a bit of hysteresis into the feature, i.e. to delay the clef computation for a few notes and apply it retroactively when it seems appropriate.)

  • Bassoon player here. I can tell that there are chef changes I hate! Some parts have several changes per bar. Same melody repeated but in different bars. Breaking runs unnecessarily for the last few notes.
    – ghellquist
    Oct 8 '18 at 20:10
  • This is rather surprising! I could try to look into the sources and try to implement this at a point or another. Oct 9 '18 at 8:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.