Hi Jean, >> but for me, it's the highest-impact sales tool when I'm Lily-vangelizing. :) > I'm curious, could you say more?
When I show someone that you can install "vanilla" Lilypond, just type something like %%%% \version "2.23.4" randomNotes = { $@(let ((notes (ly:music-property #{ <e f g a b c' d' e' f' g' a' b' c' d'> #} 'elements))) (map (lambda (x) (list-ref notes (random (length notes)))) (iota 400))) } \new Voice { \randomNotes } %%%% and [every time you compile you] get random notes for interval practice, it blows their mind. Writing %%%% \language "english" \include "init_schenker.ly <http://init_schenker.ly/>" global = { \cadenzaOn \key g \major s8*16 \bar "|." } urlinie = \relative c'' { s8*4 b8*4[-3 \lesser b8*2 a8*4-2 g8]-1 } \score { \new SchenkerGrandStaff << \new SchenkerStaff << \clef treble \global \new UrlinieVoice { \voiceOne \urlinie } >> >> } %%%% and getting the output also seems very impressive at first… but the moment they see they can't do it with "vanilla" Lilypond (i.e., they need my included LilySchenker file/framework), they’re immediately less impressed. I don't know how many other people have tried to convert composers/engravers to Lilypond, but every bit of sugar makes the whole platform seem more approachable. As a wise man once said: “Every sufficiently advanced technology is indistinguishable from magic.” :) Hope that makes it clearer? Kieren.