+pl 21.jcn1
+ - gnossienne-4.ly (start of)
+pl 20.jcn2
+ - mutopia fixes; see preludes-1.ly for cross-staff beams and slurs
+ - bf: broken interstaff slur
+ - sm66: check for gmake
pl 20.jcn1
- interstaff slurs v0: preludes-1.ly
* fix: cello suites
- * fix: petites preludes (rediculous dims)
+ * fix: text on rests: rediculous dims
* fix extender
* gallina barlines.
* fix height of / collisions with lyrics (chords),
- see input/test/vertical-text.ly
+ see input/test/vertical-text.ly; input/test/repeat.ly
* repeat/volta:
- one volta spanner per score
MAJOR_VERSION=1
MINOR_VERSION=1
PATCH_LEVEL=21
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=jcn1
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
AC_SUBST(CONFIGSUFFIX)
AC_CANONICAL_HOST
- AC_CHECK_PROGS(MAKE, make, error)
+ AC_CHECK_PROGS(MAKE, make gmake, error)
AC_CHECK_PROGS(FIND, find, error)
-
dnl system supplied INSTALL is unsafe; use our own install.
dnl AC_PROG_INSTALL
dnl if test "$INSTALL" = "bin/install-sh"; then
AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
AC_SUBST(PYTHON)
-
- AC_CHECK_SEARCH_RESULT($MAKE, GNU make, You should install GNU make)
if test $MAKE != "error" ; then
- $MAKE -v| grep GNU > /dev/null
+ $MAKE -v 2> /dev/null | grep GNU > /dev/null
if test "$?" = 1
then
AC_STEPMAKE_WARN(Please install *GNU* make)
AC_DEFUN(AC_STEPMAKE_MAN, [
AC_CHECK_PROGS(TROFF, troff, -echo no troff)
+ AC_CHECK_PROGS(TBL, tbl, cat)
])
AC_DEFUN(AC_STEPMAKE_MSGFMT, [
PATHSEP = @PATHSEP@
PERL = @PERL@
PYTHON = @PYTHON@
-TAR= @TAR@
STRIPROFF = @STRIPROFF@
+TAR= @TAR@
+TBL = @TBL@
TROFF = @TROFF@
YODL= @YODL@
YODL2HTML= @YODL2HTML@
\score{
\type GrandStaff <
\type Staff=one \notes\relative c'{
- \stemup c8( c \translator Staff=two \stemup c )c
- r2
+ \stemup c4( c \translator Staff=two c )c
\translator Staff=one
- \stemdown c8( c \translator Staff=two \stemup c )c
- r2
- \stemdown c8( c \translator Staff=one \stemdown c )c
+ \stemup c4( c \translator Staff=two c )c
+ \stemup c4( c \translator Staff=one c )c
+ \translator Staff=two
+ \stemup c4( c \translator Staff=one c )c
+ \translator Staff=two
+ \stemup c4( \translator Staff=one c c )c
r2
\translator Staff=two
- \stemup c8( c \translator Staff=one \stemdown c )c
+ \stemup c4( \translator Staff=one c \break c )c
r2
+ r1
+ r1
+ r1
}
\type Staff=two \notes\relative c'{
\clef bass;
- s1
- s1
- s1
- s1
+ s1 s1 s1 s1 s1 s1 s1 s1 s1 s1
}
>
\paper{
minVerticalAlign = 3.0*\staffheight;
maxVerticalAlign = 3.0*\staffheight;
}
- linewidth=-1.;
+ %linewidth=100.\mm;
}
}
Real notewidth = paper->note_width () * 0.8;
Real internote = interline / 2;
- Stem* stem_l_ = note->stem_l_;
+ Stem* stem_l = note->stem_l_;
/*
set o_.x () to middle of notehead or on the exact position of stem,
according to slur direction
*/
- o_.x () = stem_l_->hpos_f ();
+ o_.x () = stem_l->hpos_f ();
/*
- stem_l_->dir == dir
+ stem_l->dir == dir
________
| | / \
x| x| |x |x
*/
- if (stem_l_->dir_ != dir)
- o_.x () -= 0.5 * notewidth * stem_l_->dir_;
+ if (stem_l->dir_ != dir)
+ o_.x () -= 0.5 * notewidth * stem_l->dir_;
- o_.y () = stem_l_->extent (Y_AXIS)[dir];
+ o_.y () = stem_l->extent (Y_AXIS)[dir];
/*
leave a gap: slur mustn't touch head/stem
*/
o_.y () += 2.5 * internote * dir;
- if (stem_l_->dir_ != dir)
+ if (stem_l->dir_ != dir)
o_.y () += 1.0 * internote * dir;
- Slur* slur_l_ = stem_l_->slur_l_;
+ Slur* slur_l_ = stem_l->slur_l_;
if (slur_l_->encompass_arr_.size ()
- && stem_l_->staff_sym_l_ != slur_l_->encompass_arr_[0]->stem_l_->staff_sym_l_)
+ && stem_l->staff_sym_l_ != slur_l_->encompass_arr_[0]->stem_l_->staff_sym_l_)
{
- if (stem_l_->staff_sym_l_->dim_cache_[Y_AXIS].valid_b ())
+ if (stem_l->staff_sym_l_->dim_cache_[Y_AXIS].valid_b ())
{
- slur_l_->interstaff_f_ = stem_l_->staff_sym_l_->absolute_coordinate (Y_AXIS)
+ interstaff_f_ = stem_l->staff_sym_l_->absolute_coordinate (Y_AXIS)
- slur_l_->encompass_arr_[0]->stem_l_->staff_sym_l_->absolute_coordinate (Y_AXIS);
}
else
if (slur_l_->vertical_align_drul_[MIN] !=
slur_l_->vertical_align_drul_[MAX])
warning (_ ("minVerticalAlign != maxVerticalAlign: interstaff slurs may be broken"));
- slur_l_->interstaff_f_ = slur_l_->vertical_align_drul_[MIN];
+ interstaff_f_ = slur_l_->vertical_align_drul_[MIN];
// urg, guess staff order:
// if our stem ends higher, our staff is probably lower...
- if (stem_l_->chord_start_f () > slur_l_->encompass_arr_[0]->stem_l_->chord_start_f ())
- slur_l_->interstaff_f_ *= -1;
+ if (stem_l->chord_start_f () > slur_l_->encompass_arr_[0]->stem_l_->chord_start_f ())
+ interstaff_f_ *= -1;
}
- o_.y () += slur_l_->interstaff_f_;
+ o_.y () += interstaff_f_;
}
}
Encompass_info (Note_column const*, Direction);
Offset o_;
+ Real interstaff_f_;
};
#endif // ENCOMPASS_INFO_HH
int last = encompass_arr_.size () - 1;
// prebreak
- if (encompass_arr_[0] != spanned_drul_[LEFT])
- first--;
-
- // postbreak
if (encompass_arr_.top () != spanned_drul_[RIGHT])
last++;
+ // postbreak
+ if (encompass_arr_[0] != spanned_drul_[LEFT])
+ first--;
+
Array<Offset> notes;
notes.push (Offset (0,0));
Encompass_info info (encompass_arr_[i], dir_);
notes.push (info.o_ - left);
}
+ Encompass_info info (encompass_arr_[encompass_arr_.size () - 1], dir_);
+ // urg:
+ Slur* urg = (Slur*)this;
+ urg->interstaff_f_ = info.interstaff_f_;
d.y () += interstaff_f_;
+
+ // prebreak
+ if (interstaff_f_ && (encompass_arr_.top () != spanned_drul_[RIGHT]))
+ {
+ Encompass_info info (encompass_arr_[encompass_arr_.size () - 1], dir_);
+ d.y () -= info.o_.y () - interstaff_f_;
+ }
+
notes.push (d);
return notes;
% howto get rid of these ridiculous dimensions????
% to view the output, subsitute 0.0 with 0.0 in the .tex file...
-% one = \type Voice=one \notes\relative c {
-% one = \notes\relative c {
-one = \type Staff=treble \notes\relative c {
+one = \type Voice=one \notes\relative c {
\property Voice . textstyle = "italic"
- r16\p_"legato"\< [g''-1( c-3 )e-5] r [g,-1( c )e]
+% rediculous dim...
+% r16\p_"legato"\< [g''-1( c-3 )e-5] r [g,-1( c )e]
+ r16\p\< [g''-1( c-3 )e-5] r [g,-1( c )e]
r [g,( c )d] r [b-1( d-2 \!)g-5] |
- r\mf [a,( d-2 ) g-5] r [a,(\< d )f-4]
+ r16\mf [a,( d-2 ) g-5] r [a,(\< d )f-4]
r [a,( d )e-3] r [c-1( e-2 \!)a-5] |
- r\f [b, e a-5] r [b, e-3 g-5]
+ r16\f [b, e a-5] r [b, e-3 g-5]
r [c,-1 e-3 f-4] r [g, d'-3 f-5] |
- r [g,-"poco a poco dim." d'-4 e] r [g, c-2 e]
+% all text is fat currently...
+% r [g,-"poco a poco dim." d'-4 e] r [g, c-2 e]
+ r [g, d'-4 e] r [g, c-2 e]
r [a,-1 c-3 d-4] r [e, b'-3 d-5] |
r [e, b' c-4] r [e, a-2 c]
r [f,-1 a-3 bes-4] r [c, g'-3 bes-5] |
r [b, d a'-5] r [b, d g-4]
r [a, c g'-5] r [a, c f!-4] |
% ugh arpeggio
- <
+ \type Staff=treble <
{ \voiceone f4 r }
{ \voicetwo <g,4 d'> r }
>
\onevoice
% s
% ugh beam across staffs slur starts at lower staff
-% r16 [g,-1( b d] |
-% \voiceone
-% )b s4 [g'16-1( b-2 d] )b s s s [f'-2 g-3 b-5 f-2] |
-% \onevoice
\translator Staff=bass\stemup
r16 [g,,-5( b-4 d ]
[f-1 \translator Staff=treble\stemdown g16-1 b d] | \stemup )b
[d c'-5 b-4 a] [b-4 g-2 d'-5 f,-1] |
[g-4 e-2 f-1 d'-5] [c-4 b a g]
[f'-5 d-3 es-4 c-2] [fis,-1 es'-4 d-3 c-2] |
- [b-1 d-5 b-3 g-1] [as-4-"cresc. e rall." f-2 g-3 d-1]
+% [b-1 d-5 b-3 g-1] [as-4-"cresc. e rall." f-2 g-3 d-1]
+ [b-1 d-5 b-3 g-1] [as-4 f-2 g-3 d-1]
[es-2 fis-3 a-4 c-5]
- <
+ \type Staff=treble <
{ \voiceone r [c8 b16] }
- %%% urg urg ?{ \voicetwo [d,8 f-2] }
+ { \voicetwo [d,8 f-2] }
>
\onevoice |
<c1\mf g e>
\bar "|.";
}
-% two = \notes\relative c{
-% two = \type Voice=three \notes\relative c{
-two = \type Staff=bass \notes\relative c{
+two = \type Voice=three \notes\relative c{
\property Voice . textstyle = "roman"
c4-5 e-3 g-\mordent^"(\\textsharp)" g,4 |
- d'-\mordent-5 f-3 a-\mordent^"(\\textsharp)" a,4 |
+ d'4-\mordent-5 f-3 a-\mordent^"(\\textsharp)" a,4 |
e'-5 e'-\mordent-1 a,-4 b-\upprall |
c4 e,-4 fis gis-\downprall |
a4 c,-4 d e-\upprall |
f4-1 e d-3-\prall c |
g'-\mordent^"(\\textsharp)" g, g'-\mordent g, |
g'-\mordent g, g'-\mordent g, |
-% % ugh f should be at upper staff
-% g'-\mordent r r16 [g,-5( b-4 d] )f-1 s s s |
-% g'-\mordent r r16 [g,-5( b-4 d \translator Staff=treble )f-1 ] s s s |
-% \translator Staff=bass
-% s [g-5( b-4 d-2] )f-1 s s s s \clef "violin"; [g-4 b-2 d-1]
-% s s s s \clef bass; |
g' r s s | s s s s \clef bass; |
- <
-% { \voiceone g,,1 ~ g ~ g ~ g ~ g ~ g ~ g }
-% { \voicetwo g,1 ~ g ~ g ~ g ~ g ~ g ~ g }
+ \type Staff=bass <
{ \voicethree g1 ~ g ~ g ~ g ~ g ~ g ~ g }
{ \voicefour g,1 ~ g ~ g ~ g ~ g ~ g ~ g }
>
>
bass_staff = \type Staff = bass <
-% bass = Staff <
\clef "bass";
\global
\two
<
{
\voiceone
- f4-4\> ~ | \![f8 e] [e32-4 f e8. ~] [e8 d-3]
+ f4-4\> ~ | [\!f8 e] [e32-4 f e8. ~] [e8 d-3]
}
{ \voicetwo <d4 a> r4 cis-2 }
> |
\bar "|."; |
}
-dux = \notes \relative c''{
+dux = \type Voice=two \notes \relative c''{
\voicetwo
\clef violin;
}
-comes = \notes \relative c'' {
+comes = \type Voice=one \notes \relative c'' {
\voiceone
R1 |
R1 |
}
-bassdux = \notes \relative c' {
+bassdux = \type Voice=three \notes \relative c' {
\clef bass;
-
R1 |
R |
R |
[f,16 g] as4 [g16 f] es4 r8 es' |
[d c g' g,]
%%30
- %urg
- %using only \type Staff or \voiceone/two don't work anymore?
- %moreover, the ties are not fooled by this anymore
- \type Staff <
- {\voiceone c2 ~ | c1 ~ | c1 }
- {\voicetwo c,2 ~ | c1 ~ | c1 }
+ \type Staff=bass <
+ {\voicethree c2 ~ | c1 ~ | c1 }
+ {\voicefour c,2 ~ | c1 ~ | c1 }
>
}
--- /dev/null
+\header {
+ filename = "gnossienne-4.ly";
+ title = "Gnossienne";
+ subtitle = "4";
+ source = "";
+ composer = "Erik Satie (1866-1925)";
+ enteredby = "jcn";
+ copyright = "Public Domain";
+}
+
+%{
+ Tested Features: cross staff beams and slurs
+%}
+
+\version "1.0.14";
+
+\include "nederlands.ly"
+
+global = \notes {
+ \key a \minor;
+ \time 6/4;
+ \cadenza 1;
+ \property Staff.timeSignatureStyle = ""
+}
+
+one = \type Voice=one \notes \relative c'''{
+ \clef violin;
+ r2 r r r r r
+ r4 [a8--(\< a--] [a-- a-- c-- \!b--] [a--\> fis g \!)e]
+}
+
+% upper staff
+us = {
+ \type Staff=treble
+ \skip 1*0;
+}
+
+% lower staff
+ls = {
+ \type Staff=bass
+ \skip 1*0;
+}
+
+two = \type Voice=two \notes \relative c{
+ \stemdown
+ \property Staff.slurydirection = 1
+% hmm
+% [d,8( a' d f] [a \us d f d] \ls [a f d )a]
+ [d,8( a' d f] [a \translator Staff=treble d f d]
+ \translator Staff=bass [a f d )a]
+ [d,8( a' d f] [a \translator Staff=treble d f d]
+ \translator Staff=bass [a f d )a]
+ [d,8( a' d f] [a \translator Staff=treble d f d]
+ \skip 8*0;
+ \translator Staff=bass [a f d )a]
+}
+
+\score {
+ \type GrandStaff <
+ \type Staff = treble <
+ \global
+ \one
+ >
+ \type Staff = bass <
+ \global
+ \clef bass;
+ \two
+ >
+ >
+
+ \paper {
+ gourlay_maxmeasures = 4.;
+ indent = 8.\mm;
+ textheight = 295.\mm;
+
+ % no slur damping
+ slur_slope_damping = 10.0;
+
+ %hmm
+% \translator { \BarNumberingScoreContext }
+% \translator { \BarNumberingStaffContext }
+% \translator{ \OrchestralScoreContext }
+ \translator{ \OrchestralScoreContext }
+ \translator{
+ \GrandStaffContext
+ minVerticalAlign = 3.0*\staffheight;
+ maxVerticalAlign = 3.0*\staffheight;
+ }
+ }
+% \header{
+% opus = "BWV 847";
+% }
+
+ \midi {
+ \tempo 4 = 54;
+ }
+}
+
+% EOF
+pl 66
+ - check for tbl and gmake
+
pl 65
- unix style pathsep/dirsep for cygwin
PACKAGE_NAME=StepMake
MAJOR_VERSION=0
MINOR_VERSION=1
-PATCH_LEVEL=65
+PATCH_LEVEL=66
MY_PATCH_LEVEL=
# use the above to send patches, always empty for released version:
AC_SUBST(CONFIGSUFFIX)
AC_CANONICAL_HOST
- AC_CHECK_PROGS(MAKE, make, error)
+ AC_CHECK_PROGS(MAKE, make gmake, error)
AC_CHECK_PROGS(FIND, find, error)
-
dnl system supplied INSTALL is unsafe; use our own install.
dnl AC_PROG_INSTALL
dnl if test "$INSTALL" = "bin/install-sh"; then
AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
AC_SUBST(PYTHON)
-
- AC_CHECK_SEARCH_RESULT($MAKE, GNU make, You should install GNU make)
if test $MAKE != "error" ; then
- $MAKE -v| grep GNU > /dev/null
+ $MAKE -v 2> /dev/null | grep GNU > /dev/null
if test "$?" = 1
then
AC_STEPMAKE_WARN(Please install *GNU* make)
AC_DEFUN(AC_STEPMAKE_MAN, [
AC_CHECK_PROGS(TROFF, troff, -echo no troff)
+ AC_CHECK_PROGS(TBL, tbl, cat)
])
AC_DEFUN(AC_STEPMAKE_MSGFMT, [
PATHSEP = @PATHSEP@
PERL = @PERL@
PYTHON = @PYTHON@
-TAR= @TAR@
STRIPROFF = @STRIPROFF@
+TAR= @TAR@
+TBL = @TBL@
TROFF = @TROFF@
YODL= @YODL@
YODL2HTML= @YODL2HTML@