bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: tool for identifying LilyPond grobs


From: Werner LEMBERG
Subject: Re: tool for identifying LilyPond grobs
Date: Tue, 23 Jul 2002 22:41:07 +0200 (CEST)

> Try \apply #(lambda (x) (display x) x) ...

Aah, this is exactly what I want!

>  * the mapping from syntax to parse trees is not entirely trivial. For
> example
> 
>        R1
> 
> is internall converted to
> 
>   { \spanrequest \start mmrest
>     s1
>     \spanrequest \start mmrest
>   }
> 
> what should \what return? 

Perhaps the same as the above lambda function, but tweaked for better
readability.  So instead of 

  #<Music
      Sequential_musicelements =
        (#<Music
             Request_chordelements =
               (#<Music
                    Span_reqspan-type = "rest"
                    span-direction = -1
                    type = request
                 >)
             iterator-ctor = #<encapsulated C++ function>
          >
         #<Music
             Request_chordelements =
               (#<Music
                    Skip_reqduration = #<Duration 1 >
                    type = request
                 >)
             iterator-ctor = #<encapsulated C++ function>
          >
         #<Music
             Request_chordelements =
               (#<Music
                    Span_reqspan-type = "rest"
                    span-direction = 1
                    type = request
                 >)
             iterator-ctor = #<encapsulated C++ function>
          >)
    iterator-ctor = #<encapsulated C++ function>
   >

[do you like my formatting? :-)]

Something like this:

  Sequential musicelements =
    Request_chordelements =
      Span_reqspan-type = "rest"
      span-direction = -1
      type = request
    Request_chordelements =
      Skip_reqduration = #<Duration 1 >
      type = request
    Request_chordelements =
      Span_reqspan-type = "rest"
      span-direction = 1
      type = request

A further refinement would be to replace the C++ variable names with
an English equivalent.

> > The trial-and-error method which is necessary at the moment due to
> > lacking documentation costs way too much time.
> 
> Can you be more specific about "lacking documentation"?  I recently
> added a section on adjusting output to the tutorial, which explains
> how to go about tweaking.

Yes, this was of great help how to do it in general, but without
knowing exactly which input element maps to which grob you have a hard
time to find out what property of which grob should be modified.  Many
examples should be added as soon as the interface and syntax of
\property is really stable.


    Werner



reply via email to

[Prev in Thread] Current Thread [Next in Thread]