denemo-devel
[Top][All Lists]
Advanced

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

Re: [Denemo-devel] lyparser.y


From: Richard Shann
Subject: Re: [Denemo-devel] lyparser.y
Date: Fri, 18 Jul 2008 20:40:42 +0100

On Fri, 2008-07-18 at 14:47 +0800, address@hidden wrote:
> 
> Richard,
> 
> I have two issues with the change below. insert_movement_after has two
> arguments in my tree. 
> Also Denemo.gui does not exist.
Sorry about that, I forgot that I am working in 0.7.10 where the current
gui is stored globally in the root Denemo structure, in 0.7.9 it has to
be passed around. (That bit is only active for multiple score blocks).

I hope to get an hour or so at the weekend for the parser - it did some
remarkable things importing my old LilyPond files, but I haven't had a
chance to look at why it is not following sequentials - if you get any
insights, or if you have an good way of tracking which rules the parser
is going through please email me.
Thanks,

Richard

> 
> Regards,
> Roy Rankin
> 
> 
> On Fri Jul 18 0:28 , Richard Shann  sent:
> 
>         
>         Roy, 
>         In case you are working on this, I needed an old file which I
>         had
>         modified in lilypond, so I did a bit more:
>         In lyparser.y
>         instead of the crude hack si->thescore = NULL;
>         you doe
>         init_score (si, gui);
>         
>         and then the block for the successful parse should be thus (it
>         gets rid
>         of crud and loads multiple score blocks, which my old file
>         had):
>         
>         if (parser_error_message == NULL)
>         {
>         GList *score = findtok (lily_file, SCORE);
>         if (score)
>         if (create_score_from_lily (si, br (score)) == 0)
>         {
>         GList *top;
>         score_prop_from_lily(gui);
>         fixup_measure_widths_and_contexts (si);
>         while (score && score->next)
>         {
>         score = findtok (score->next, SCORE);
>         if (score)
>         {
>         insert_movement_after(NULL);
>         DenemoScore *nextsi =
>         Denemo.gui->si;
>         init_score (nextsi, gui);
>         create_score_from_lily (nextsi, br (score));
>         fixup_measure_widths_and_contexts (nextsi);
>         
>         }
>         }
>         
>         return 0;
>         }
>         }
>         
>         
>         
>         
>         _______________________________________________
>         Denemo-devel mailing list
>         address@hidden
>         http://lists.gnu.org/mailman/listinfo/denemo-devel
> 





reply via email to

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