bug-lilypond
[Top][All Lists]
Advanced

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

tool for identifying LilyPond grobs


From: Han-Wen
Subject: tool for identifying LilyPond grobs
Date: Tue, 23 Jul 2002 13:59:17 +0200

address@hidden writes:
> Currently, my greatest problem is to identify grobs so that I can
> modify their properties.
> 
> I suggest a tool `grob' which accepts a LilyPond code fragment (either
> as an argument to the tool or read in interactively using
> e.g. readline), returning the context and grob.
> 
> Example:
> 
>   grob a_"foo"
> 
> should return something like this:
> 
>     `a': `Staff.NoteHead'
>          `Staff.Stem'
>     `"foo"': Staff.TextScript
> 
> In case this isn't possible, I suggest to add a \what keyword to
> LilyPond which emits information on its argument to stdout (but having
> no other effect):
> 
>   \what a_"foo"

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

The problem has two components

 * 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? 
   

 * There is no automated way to tell what will happen to a specific
   music event. I'm planning to add this, but that will have to wait
   until after 1.6. This means that information is added to the
   engravers, so that you can click all the way from NoteHead to
   Note_req (the input event). It will speed things up, and lily can
   be made more transparent.

> 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.

-- 

Han-Wen Nienhuys   |   address@hidden   |   http://www.cs.uu.nl/~hanwen 



reply via email to

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