On Mon, Nov 23, 2009 at 4:02 AM, David Kastrup <d...@gnu.org> wrote: >>> I have no idea what I am doing here. In particular not with the >>> \override, and the set-object-property!. Can somebody explain to me >>> just what data structures I happen to manipulate, and how a user is >>> actually _supposed_ to be mangling them? >> >> Perhaps you could explain us how accordion notation works; that will >> make it easier to give advice on how to best achieve your targets. > > In the context of _this_ patch, we are just placing register symbols.
Right, but I have the feeling this patch is the wrong way to go, but I need more information. > The set of symbols that is being used is normally valid per staff. It > is just in rare cases that you would want to change this set in > mid-staff, with the exception of switching between "Free Bass" and > "Standard Bass" symbols which can be interchanged on one hand. > >> As far as I can see, there are 2 settings: >> >> - the type of accordion (eg defaultStdBassV), which typically span >> multiple notes, or even the entire piece? > > There are separate symbol sets for left and right hand, and that of the > left hand may be interchanged in mid-stream. > >> - the register of a note. Is that specific for one note or for >> multiple notes? > > Multiple notes. If both are stateful properties (ie. span multiple notes) of the music, like key signatures, they should be context properties, to be modified using \set accordionType = "StdVII" \set accordionRegister = "22x7whatever" When are there symbols to be printed? In case of a change of either property, manual forcing, or both? In any event, the correct approach would be write an engraver, which unfortunately cannot currently be done in Scheme (it would be a nice project to write bindings to enable though). The engraver creates a new grob (AccordionRegister ?) carrying a markup. The markup should be created by calling out to a Scheme function which would look at the accordionType and accordionRegister. -- Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel