[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: (no subject)
From: |
Mats Bengtsson |
Subject: |
Re: (no subject) |
Date: |
Fri, 21 Sep 2001 11:48:41 +0200 |
> address@hidden writes:
> > With
> >
> > \time 6/8 [ c16 c c c8 c16 ]
> >
> > I get
> >
> > +--+--+--+---+
> > +--+ +- | -+
> > | | | | |
> > | | | | |
> >
> >
> > instead of the desired
> >
> > +--+--+--+---+
> > +--+--+ | -+
> > | | | | |
>
> > How do I correct this?
>
> I assume that you know about the manual override. (\property
> stem{Left,Right}BeamSomethingICantRemember (see manual) )
stemLeftBeamCount and stemRightBeamCount.
> By default LilyPond tries to "split" beams at points that have lowest
> denomintor (in this case 1/4 gets precedence over 3/8).
>
> A better solution is to have the initial split be tunable to allow
> ternary split points. This should not be a hard hack to do. Look at
> beaming.cc -- the code is not complicated.
auto-beam-engraver.cc is more complicated but could still be useful
as inspiration for this extension. Finding the splitting points of
a given beam should be less complicated then finding both the start
and the end point of a beam.
Even simpler but still very useful would be to add some intelligence
for the case you only specify one of the stem{Left,Right}BeamCount
properties. Now you almost always have to specify both, even though
it's obvious that if you set stemLeftBeamCount=2 in the example above,
you also want stemRightBeamCount=1. This wouldn't give less flexibility
since you could still specify both properties for the rare cases where
the heuristic doesn't work.
/Mats