Auto-beam in 2.6

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Auto-beam in 2.6

Joe Neeman
I've had a few problems with auto-beaming in lilypond. Since I found the
autobeaming page in the manual pretty confusing[1], I thought I'd check
here before I filed a bug report. I want 32ed notes to break only every
quarter note.

%%%%%%%%%%%%%%%%% This snippet breaks every 8th note
{
\time 2/4
#(override-auto-beam-setting '(end * * * *) 1 4)
\repeat unfold 16 a32
}

%%%%%%%%%%%%%%%%% This snippet works!
{
\time 2/4
#(override-auto-beam-setting '(end * * * *) 1 4)
\set Score.beatLength = #(ly:make-moment 1 2)
\repeat unfold 16 a32
}

But if I use #(ly:make-moment 1 4) then it goes back to breaking on
every 8th note. Can someone explain this to me?

Thanks,
Joe


[1]: If I can figure out how this works, I'd be happy to write a
modified page for your consideration.


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Auto-beam in 2.6

Mats Bengtsson-6
The default settings in LilyPond include settings equivalent to
#(override-auto-beam-setting '(end 1 32 2 4) 1 8)
#(override-auto-beam-setting '(end 1 32 2 4) 3 8)
see the file scm/auto-beam.scm

This means that you have to revert these settings using:
#(revert-auto-beam-setting '(end 1 32 2 4) 1 8)
#(revert-auto-beam-setting '(end 1 32 2 4) 3 8)


Since the default settings also contain the equivalent of
#(override-auto-beam-setting '(end * * 2 4) 1 4)
your setting does not really change anything.


    /Mats

Joe Neeman wrote:

> I've had a few problems with auto-beaming in lilypond. Since I found the
> autobeaming page in the manual pretty confusing[1], I thought I'd check
> here before I filed a bug report. I want 32ed notes to break only every
> quarter note.
>
> %%%%%%%%%%%%%%%%% This snippet breaks every 8th note
> {
> \time 2/4
> #(override-auto-beam-setting '(end * * * *) 1 4)
> \repeat unfold 16 a32
> }
>
> %%%%%%%%%%%%%%%%% This snippet works!
> {
> \time 2/4
> #(override-auto-beam-setting '(end * * * *) 1 4)
> \set Score.beatLength = #(ly:make-moment 1 2)
> \repeat unfold 16 a32
> }
>
> But if I use #(ly:make-moment 1 4) then it goes back to breaking on
> every 8th note. Can someone explain this to me?
>
> Thanks,
> Joe
>
>
> [1]: If I can figure out how this works, I'd be happy to write a
> modified page for your consideration.
>
>
> _______________________________________________
> lilypond-user mailing list
> [hidden email]
> http://lists.gnu.org/mailman/listinfo/lilypond-user

--
=============================================
        Mats Bengtsson
        Signal Processing
        Signals, Sensors and Systems
        Royal Institute of Technology
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463
         Fax:   (+46) 8 790 7260
        Email: [hidden email]
        WWW: http://www.s3.kth.se/~mabe
=============================================


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Auto-beam in 2.6

Joe Neeman

> This means that you have to revert these settings using:
> #(revert-auto-beam-setting '(end 1 32 2 4) 1 8)
> #(revert-auto-beam-setting '(end 1 32 2 4) 3 8)

Thanks, that makes things clearer. I think I was confused by the use of
the words override and revert. I'm going to try to summarize here;
correct me if I'm wrong.

override-auto-beam-setting adds an extra beam start/break point
revert-auto-beam-setting removes a beam start/break point (but doesn't
seem to like wildcards)


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Auto-beam in 2.6

Joe Neeman

>override-auto-beam-setting adds an extra beam start/break point
>revert-auto-beam-setting removes a beam start/break point (but doesn't
>seem to like wildcards)
>  
>
Actually, I still have a couple problems understanding things:

%%% This beams straight through the 3rd beat, as expected
{
\time 4/4
#(revert-auto-beam-setting '(end 1 16 4 4) 3 4)
\repeat unfold 16 a16
}

%%% This still breaks the beam at the 2nd beat!
{
\time 4/4
#(revert-auto-beam-setting '(end 1 16 4 4) 2 4)
\repeat unfold 16 a16
}

I also have some problems with setting the beginning of a beam:

%%% This should prevent the beam from starting on beat 3, right?
{
\time 6/8
#(revert-auto-beam-setting '(begin 1 8 6 8) 3 8)
\repeat unfold 6 a8
}


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: Auto-beam in 2.6

Mats Bengtsson-6
revert-... will only remove start/stop points that have already been
defined earlier and as far as I can understand, you have to use exactly
the same parameters (for example wildcards or absence of wildcards) as
in the already existing settings. In other words, you have to go into
the file /usr/share/lilypond/2.6.0/scm/auto-beam.scm (or wherever the
file is installed on your machine) and see exactly what default settings
are done there if you want to remove one of these defaults.

I send a copy of this email to lilypond-devel, since your question
shows how user-unfriendly this interface is for the moment.

    /Mats


Joe Neeman wrote:

>>override-auto-beam-setting adds an extra beam start/break point
>>revert-auto-beam-setting removes a beam start/break point (but doesn't
>>seem to like wildcards)
>>
>>
>
> Actually, I still have a couple problems understanding things:
>
> %%% This beams straight through the 3rd beat, as expected
> {
> \time 4/4
> #(revert-auto-beam-setting '(end 1 16 4 4) 3 4)
> \repeat unfold 16 a16
> }
>
> %%% This still breaks the beam at the 2nd beat!
> {
> \time 4/4
> #(revert-auto-beam-setting '(end 1 16 4 4) 2 4)
> \repeat unfold 16 a16
> }
>
> I also have some problems with setting the beginning of a beam:
>
> %%% This should prevent the beam from starting on beat 3, right?
> {
> \time 6/8
> #(revert-auto-beam-setting '(begin 1 8 6 8) 3 8)
> \repeat unfold 6 a8
> }
>
>
> _______________________________________________
> lilypond-user mailing list
> [hidden email]
> http://lists.gnu.org/mailman/listinfo/lilypond-user

--
=============================================
        Mats Bengtsson
        Signal Processing
        Signals, Sensors and Systems
        Royal Institute of Technology
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463
         Fax:   (+46) 8 790 7260
        Email: [hidden email]
        WWW: http://www.s3.kth.se/~mabe
=============================================


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user