On 2022-05-24 7:40 am, Jean Abou Samra wrote:
Because there is now a command called \section, so this
is trying to set a key inside a music function, which is
not an alist ... This is unfortunate but unavoidable.

Would it be practical for LilyPond to detect and warn when a built-in is being redefined?

Granted, one thing I really like about LilyPond is that one can easily redefine things as needed. But would it be burdensome to require a little bit of extra syntax that makes clear the user's intention to redefine something that already exists?

%%%%
\version "future"

foo = { c2 }     % Works, providing \foo does not exist.
bar = { c4 4 }   % Warns, since \bar does exist.
                 % (Could be made to fail in a "pedantic" mode.)

\redefine bar = { c8 4. }  % Explicitly redefine, no warning needed.
bar := { c8 4. }           % Same, with a possible syntactic shorthand.
%%%%


-- Aaron Hill

_______________________________________________
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond

Reply via email to