lilypond-user
[Top][All Lists]
Advanced

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

Re: uniform-stretching


From: Trevor Bača
Subject: Re: uniform-stretching
Date: Mon, 4 Dec 2006 19:13:42 -0600

On 12/4/06, Trevor Bača <address@hidden> wrote:
On 12/4/06, Trevor Bača <address@hidden> wrote:
> On 12/4/06, Trevor Bača <address@hidden> wrote:
> > On 12/4/06, Orm Finnendahl <address@hidden> wrote:
> > > Hi,
> > >
> > > I tried the uniform-stretching property but couldn't get it to work as
> > > expected. If I understand this property correctly, it should stretch
> > > out bars according to their time-signature regardless of skips or
> > > rests within.
> > >
> > > This fails (e.g. the first measure should be much wider than the
> > > second, the last and the one before the last measure should have the
> > > same width ...):
> > >
> > > \version "2.11.0"
> > >
> > > \score {
> > >     \new Staff {
> > >         \relative {
> > >             \override Score.SpacingSpanner #'uniform-stretching = ##t
> > >             \set Score.proportionalNotationDuration = #(ly:make-moment 8 
50)
> > >             \time 4/4 r1
> > >             \time 3/8 r4.
> > >             \time 5/4 r1 r4
> > >             \time 5/16 r4 r16
> > >             \time 5/8 s2 s8
> > >             \time 5/8 r2 r8
> > >         }
> > >     }
> > >     \layout {
> > >         ragged-right = ##t
> > >     }
> > > }
> > >
> > > Can someone help? Trevor?

Hi Orm,

OK, and overriding PaperColumn used to ##t (together with uniform
stretching) evens out the last two measures in 5/8 perfectly (with no
need to resort to the transparent Rest workaround).

%%% BEGIN %%%

\version "2.11.0"

\layout {
  ragged-right = ##t
}

\score {
  \new Staff \with {
     \remove Separating_line_group_engraver
  } {
      \relative {
          \override Score.SpacingSpanner #'uniform-stretching = ##t
          \set Score.proportionalNotationDuration = #(ly:make-moment 8 50)
           \override Score.PaperColumn #'used = ##t
          \time 4/4 r1
          \time 3/8 r4.
          \time 5/4 r1 r4
          \time 5/16 r4 r16
          \time 5/8 s2 s8
          \time 5/8 r2 r8
      }
  }
}

\score {
  \new Staff \with {
     \remove Separating_line_group_engraver
  } {
      \relative c' {
          \override Score.SpacingSpanner #'uniform-stretching = ##t
          \set Score.proportionalNotationDuration = #(ly:make-moment 8 50)
           \override Score.PaperColumn #'used = ##t
          \time 4/4 r1
          \time 3/8 r4.
          \time 5/4 r1 r4
          \time 5/16 r4 r16
          \time 5/8 s2 s8
          \time 5/8 r2 r8
      }
  }
}

%%% END %%%

I still don't understand why that initial measure in 4/4 is so short, though ...

So the list of settings to use so far is:


1. \set proportionalNotationDuration = #(ly:make-moment n d) (in the Score)
2. \override SpacingSpanner #'uniform-stretching = ##t (in the Score)
3. \override PaperColumn #'used = ##t (in the Score)
4. \remove Separating_line_group_engraver (in the Staff)

In addition, if you want "true" proportional notation (where time
signatures and clefs and accidentals consume no space), then set

5. \override SpacingSpanner #'strict-note-spacing = ##t (in the Score)

This should now be much closer.

Also, some other contemporary best practices I use almost all the time are:

Score:
6. allowBeamBreak = ##t
7. autoBeaming = ##f
8. tupletFullLength = ##t
9. \override Beam #'break-overshoot = #'(-0.5 . 1.0)
10. \override SpacingSpanner #'strict-grace-spacing = ##t
11. \override TupletBracket #'bracket-visibility = ##t

Voice:
12. \remove Forbid_line_break_engraver

Most of these additional settings aid in letting tuplet brackets and
beams break across two or even three lines, and so may not be as
useful in your current score. But if you do have sections with many
measured spanners, consider the settings above for a starting point.


--
Trevor Bača
address@hidden

Attachment: PaperColumn-2.png
Description: PNG image


reply via email to

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