Simplify define-markup-[list-]command-internal,

This reverts additions made in commit
d2199b0163c33bcb7504c87e57eefbea93e08c88 "Issue 5167/3: Split off
`markup-lambda' from `define-markup-command'"

In this commit, extra support for the case where command-and-args is
empty was added, ie.

  -  (let* ((command (car command-and-args))
  -         (args (cdr command-and-args))
  +  (let* ((command (if (pair? command-and-args)
  +                      (car command-and-args)
  +                      command-and-args))
  +         (args (and (pair? command-and-args) (cdr command-and-args)))

However, markup commands are functions that are always called with
arguments 'layout' and 'props', so there can never be a case that
'args' would be empty.

https://codereview.appspot.com/545590045


---

** [issues:#5167] Allow defining markup commands in LilyPond syntax**

**Status:** Started
**Created:** Fri Jul 28, 2017 06:55 PM UTC by David Kastrup
**Last Updated:** Sun Feb 16, 2020 08:35 PM UTC
**Owner:** David Kastrup


Allow defining markup commands in LilyPond syntax

This works with assignments of the form

    \markup with-red = \markup \with-color #red \etc

or similar.  The resulting definition (in addition to being available
as \with-red command inside of markups) can be used with the `markup'
macro and also gets a `make-with-red-markup' convenience function.


Also contains commits:

markup-partial regtest: use \markup function assignment



Changes: show \markup xxx = ... \etc assignments



Parser: let `assignment_id' return a symbol

That's actually what's needed rather than a string.



Split off `markup-lambda' from `define-markup-command'

Also markup-list-lambda from define-markup-list-command.



Let `make-markup' fetch the signature itself

Also don't export it from markup-macros.scm: it is an internal function.



Reorganize markup commands to use object properties

This loosens the ties between the actual markup function and its
calling methods.

http://codereview.appspot.com/324140043


---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/testlilyissues/issues/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/testlilyissues/admin/issues/options.  Or, if this is 
a mailing list, you can unsubscribe from the mailing list.
_______________________________________________
Testlilyissues-auto mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/testlilyissues-auto
  • ... Auto mailings of changes to Lily Issues via Testlilyissues-auto via Automated messages for lilypond development
    • ... Auto mailings of changes to Lily Issues via Testlilyissues-auto via Automated messages for lilypond development
    • ... Auto mailings of changes to Lily Issues via Testlilyissues-auto via Automated messages for lilypond development
    • ... Auto mailings of changes to Lily Issues via Testlilyissues-auto via Automated messages for lilypond development

Reply via email to