From: Mats Bengtsson Date: Wed, 31 Mar 1999 22:06:16 +0000 (+0200) Subject: patch::: 1.1.37.mb1: Re: LilyPond 1.1.37 X-Git-Tag: release/1.1.38~3 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=a2fefe82bdf6411042104d995c4de00078e1c3a7;p=lilypond.git patch::: 1.1.37.mb1: Re: LilyPond 1.1.37 pl 37.mb1 - Added property restStyle. - mensural 4th, 8th and 16th rests. ************* --- diff --git a/NEWS b/NEWS index 8c09cf7b0e..f56f8067e8 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +pl 37.mb1 + - Added property restStyle. + - mensural 4th, 8th and 16th rests. + +************* - diamond heads (probably really ugly). - cross head. diff --git a/VERSION b/VERSION index c24cec832a..5be3db6e5e 100644 --- a/VERSION +++ b/VERSION @@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=1 PATCH_LEVEL=37 -MY_PATCH_LEVEL= +MY_PATCH_LEVEL=mb1 # use the above to send patches: MY_PATCH_LEVEL is always empty for a # released version. diff --git a/input/test/rests.fly b/input/test/rests.fly new file mode 100644 index 0000000000..d01cc5bcd5 --- /dev/null +++ b/input/test/rests.fly @@ -0,0 +1,5 @@ +r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 +\property Staff.restStyle = "mensural" +\property Staff.textEmptyDimension = 1 +r\longa^"restStyle = \"mensural\"" r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 + diff --git a/lily/include/lookup.hh b/lily/include/lookup.hh index 9290359b1e..abf3434a8b 100644 --- a/lily/include/lookup.hh +++ b/lily/include/lookup.hh @@ -39,7 +39,7 @@ public: Molecule flag (int, Direction) const; Molecule hairpin (Real width, bool decresc, bool continued) const; Molecule plet (Real dy, Real dx, Direction dir) const; - Molecule rest (int, bool outside) const; + Molecule rest (int, bool outside, String) const; Molecule rule_symbol (Real height, Real width) const; Molecule script (String idx) const; Molecule stem (Real y1_pos, Real y2_pos) const; diff --git a/lily/lookup.cc b/lily/lookup.cc index b4ae24acb5..9458b672d1 100644 --- a/lily/lookup.cc +++ b/lily/lookup.cc @@ -305,9 +305,9 @@ Lookup::flag (int j, Direction d) const } Molecule -Lookup::rest (int j, bool o) const +Lookup::rest (int j, bool o, String style) const { - return afm_find (String ("rests-") + to_str (j) + (o ? "o" : "")); + return afm_find (String ("rests-") + to_str (j) + (o ? "o" : "") + style); } Molecule diff --git a/lily/multi-measure-rest.cc b/lily/multi-measure-rest.cc index d161819a54..00b647e6a1 100644 --- a/lily/multi-measure-rest.cc +++ b/lily/multi-measure-rest.cc @@ -47,12 +47,12 @@ Multi_measure_rest::do_brew_molecule_p () const Molecule s; if (measures_i_ == 1 || measures_i_ == 2 || measures_i_ == 4) { - s = (lookup_l ()->rest (- intlog2(measures_i_), 0)); + s = (lookup_l ()->rest (- intlog2(measures_i_), 0, "")); s.translate_axis (-s.extent ()[X_AXIS].length () / 2, X_AXIS); } else { - s = (lookup_l ()->rest (-4, 0)); + s = (lookup_l ()->rest (-4, 0, "")); } mol_p->add_molecule (s); Real interline_f = staff_line_leading_f (); diff --git a/lily/rest-engraver.cc b/lily/rest-engraver.cc index 4ef7833386..1e5aa7eed2 100644 --- a/lily/rest-engraver.cc +++ b/lily/rest-engraver.cc @@ -55,6 +55,13 @@ Rest_engraver::do_process_requests () rest_p_->dots_l_ =dot_p_; announce_element (Score_element_info (dot_p_,0)); } + if (rest_p_->balltype_i_ >= 2) + { + String reststyle = get_property ("restStyle", 0); + if (reststyle.length_i ()) + rest_p_->set_elt_property (style_scm_sym, + gh_str02scm (reststyle.ch_C())); + } announce_element (Score_element_info (rest_p_, rest_req_l_)); } } diff --git a/lily/rest.cc b/lily/rest.cc index 50eed01303..b737dea036 100644 --- a/lily/rest.cc +++ b/lily/rest.cc @@ -40,7 +40,14 @@ Rest::do_brew_molecule_p () const bool streepjes_b = abs(position_i_) > lines_i () / 2 && (balltype_i_ == 0 || balltype_i_ == 1); - Molecule s(lookup_l ()->rest (balltype_i_, streepjes_b)); + String style; + SCM style_sym =get_elt_property (style_scm_sym); + if (style_sym != SCM_BOOL_F) + { + style = ly_scm2string (SCM_CDR(style_sym)); + } + + Molecule s(lookup_l ()->rest (balltype_i_, streepjes_b, style)); Molecule * m = new Molecule ( Molecule (s)); m->translate_axis (position_i_ * staff_line_leading_f ()/2.0, Y_AXIS); return m; diff --git a/mf/feta-eindelijk.mf b/mf/feta-eindelijk.mf index e8b5d28f89..8ec1e82a2e 100644 --- a/mf/feta-eindelijk.mf +++ b/mf/feta-eindelijk.mf @@ -272,5 +272,59 @@ fet_beginchar("128th rest","7","hundredtwentyeighthrest"); fet_endchar; endgroup; -fet_endgroup("rests"); +% Rest symbols for mensural notation: + +mensrestsize# = .8interline#; + +fet_beginchar("Mensural 4th rest","2mensural","minimarest") + set_char_box(0,mensrestsize#,0,mensrestsize#); + pickup pencircle scaled 2 stafflinethickness; + lft x1 = 0; + bot y1 = 0; + lft x2 = 0; + top y2 = h; + rt x3 = w; + bot y3 = h/2; + draw z1 .. z2; + draw z2 .. z3; +fet_endchar + +fet_beginchar("Mensural 8th rest","3mensural","fusarest") + set_char_box(0,mensrestsize#,0,mensrestsize#); + pickup pencircle scaled 2 stafflinethickness; + rt x1 = w; + bot y1 = 0; + rt x2 = w; + top y2 = h; + lft x3 = 0; + bot y3 = h/2; + draw z1 .. z2; + draw z2 .. z3; +fet_endchar + +fet_beginchar("Mensural 16th rest","4mensural","semifusarest") + set_char_box(0,mensrestsize#,0,interline#); + pickup pencircle scaled 2 stafflinethickness; + rt x1 = w; + bot y1 = 0; + rt x2 = w; + top y2 = h; + + draw z1 .. z2; + + pickup pencircle scaled 2 stafflinethickness; + rt x3 = w; + top y3 = h; + lft x4 = 0; + bot y4 = h/2; + rt x5 = w; + top y5 = 5/8h; + lft x6 = 0; + bot y6 = h/8; + + draw z3 .. z4; + draw z5 .. z6; +fet_endchar + +fet_endgroup("rests") diff --git a/mf/feta-generic.mf b/mf/feta-generic.mf index 01d1cb2c7a..b902151162 100644 --- a/mf/feta-generic.mf +++ b/mf/feta-generic.mf @@ -34,9 +34,9 @@ if test = 0: input feta-klef; input feta-timesig; else: - input feta-bolletjes; +% input feta-bolletjes; % input feta-banier; -% input feta-eindelijk; + input feta-eindelijk; % input feta-klef; % input feta-toevallig; % input feta-schrift;