lilypond-user
[Top][All Lists]
Advanced

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

Re: less than two visible stems


From: Han-Wen Nienhuys
Subject: Re: less than two visible stems
Date: Thu, 02 Jun 2005 11:38:54 +0200
User-agent: Mozilla Thunderbird 1.0.2-1.3.3 (X11/20050513)

Sean Reed wrote:
i can think of instances where a warning is valid, but the only ones that come to mind right off the bat are generally stylistic issues; for example, when beaming a 16th note to a dotted 8th rest in most common forms of classical music notation.

what other situations for valid warnings are there that i'm overlooking? this might clarify understanding of autoBeam and help find an idea for a creative approach to the issue (i'm sure you guys have thought these things through, especially being active instrumentalists yourselves).

i can beam the following with no warning about "less than two visible stems": a16[ r8 a16]. whereas a16[ r8.] gives me the warning.

I've removed the warning. There's still a warning for a beam with only 1 stem.

would it be feasible to implement different automatic beaming environments? perhaps with an argument in the context part of the function to indicate which beat duration then gets checked for potential mistakes? for example, one could indicate # (set-automaticBeaming-style 'restInclusion #('quarters#)) [forgive me if that's senseless code!]. this would indicate, for example, that rests can be beamed to notes, even in groups of two (one rest, one note), and that automatic beaming is undertaken for every quarter note beat. this would perhaps also allow for zeroguy's desire to not have to manually place the square brackets all the time. one could also then choose #(set-automaticBeaming-style 'default), like with the accidental styles, which would then give the warnings we get now, and which would be default.

The autobeamer is a grotesque hack, which works remarkably well for a hack. However, I don't like the idea of sinking much time in it. If you're interested, you can see what happens if you remove the following bits from auto beam engraver.


      else if (Rest::has_interface (info.grob ()))
        {
          end_beam ();
        }

...

      /*
        Don't (start) auto-beam over empty stems; skips or rests
      */
      if (!Stem::head_count (stem))
        {
          if (stems_)
            end_beam ();
          return;
        }


--
 Han-Wen Nienhuys - address@hidden - http://www.xs4all.nl/~hanwen




reply via email to

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