From: Han-Wen Nienhuys Date: Wed, 12 Apr 2000 11:36:06 +0000 (+0200) Subject: release: 1.3.44 X-Git-Tag: release/1.3.44 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=28d97df78de5e56962730b42119c2d9b73401fa7;p=lilypond.git release: 1.3.44 =========== * Put global element list into Line_of_score, instead of Paper_score. post processing (the stage after line breaking) is now truly done per-system, and we got rid of an ugly hack to get font handling OK. * Bugfix: set the group-interface of System_start_delimiter. * Cleanups of Break_algorithm and derived classes, Move broken_col_range () to Line_of_score, remove Paper_score::col_l_arr_ * Bugfix for accordion symbols. * Various patches to prevent crashing when do_brew_molecule gets called before after_line_breaking (). This was a problem in Spanner classes mostly. 1.3 --- diff --git a/CHANGES b/CHANGES index c9d7f0f36a..e9cb084f88 100644 --- a/CHANGES +++ b/CHANGES @@ -1,19 +1,21 @@ -1.3.43.jcn1 +1.3.43.hwn1 =========== -* Added a Piano_pedal_engraver. +* Put global element list into Line_of_score, instead of +Paper_score. post processing (the stage after line breaking) is now +truly done per-system, and we got rid of an ugly hack to get font +handling OK. -* Removed some empty files. +* Bugfix: set the group-interface of System_start_delimiter. -* Created piano pedal symbols: * - . P e d. +* Cleanups of Break_algorithm and derived classes, Move +broken_col_range () to Line_of_score, remove Paper_score::col_l_arr_ -* Fixed ps-to-pfa.py to handle multiple unfills. +* Bugfix for accordion symbols. -* Moved accordion symbols out of feta-script to end of font. - -* Bugfix: don't create tfm's, pfa's etc of feta-test fonts. - -* Fixed blot_diameter for small resolutions. +* Various patches to prevent crashing when do_brew_molecule gets +called before after_line_breaking (). This was a problem in Spanner +classes mostly. 1.3.43 ====== diff --git a/Documentation/user/glossary.tely b/Documentation/user/glossary.tely index 05bc8056b9..20924c7e96 100644 --- a/Documentation/user/glossary.tely +++ b/Documentation/user/glossary.tely @@ -324,8 +324,8 @@ orchestral or choral score. @ @mudela[13pt,eps] -%\context StaffGroup < -\context ChoirStaff < +\context StaffGroup < +% \context ChoirStaff < \property StaffGroup.minVerticalAlign = 12 \notes\relative c'' { \clef treble; g4 e c2 } \notes\relative c { \clef bass; c1 \bar "|."; } > diff --git a/VERSION b/VERSION index dd77d048be..d1321c8322 100644 --- a/VERSION +++ b/VERSION @@ -1,8 +1,8 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=3 -PATCH_LEVEL=43 -MY_PATCH_LEVEL=jcn1 +PATCH_LEVEL=44 +MY_PATCH_LEVEL= # use the above to send patches: MY_PATCH_LEVEL is always empty for a # released version. diff --git a/buildscripts/ps-to-pfa.py b/buildscripts/ps-to-pfa.py index 796c5d8b37..bab745820d 100755 --- a/buildscripts/ps-to-pfa.py +++ b/buildscripts/ps-to-pfa.py @@ -122,7 +122,8 @@ end % of font dictionary f.write ('' 'exch definefont pop % Define the font\n') -suspect_re = re.compile ('closepath ((gsave )*fill( grestore stroke)*) 1 setgray newpath (.*?) closepath fill') + +suspect_re = re.compile ('closepath (.*?) 1 setgray newpath (.*?) closepath fill') def characters (f): sys.stderr.write ('[') @@ -152,7 +153,7 @@ def characters (f): m = suspect_re.search (s) while m: fill = m.group (1) - path = m.group (4) + path = m.group (2) # be complicated, in case of gsave/grestore. # vill as quick hack to avoid duple substitutions. diff --git a/debian/control b/debian/control index 9a9f184e8c..12d811e790 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Build-Depends: debhelper (>= 2.0.71), python-base (>= 1.5.2-4), libguile6-dev, t Section: tex Priority: optional Maintainer: Anthony Fok -Standards-Version: 3.1.1 +Standards-Version: 3.1.0 Package: lilypond1.3 Architecture: any @@ -17,9 +17,8 @@ Description: A program for printing sheet music. using a high level description file as input. LilyPond is part of the GNU Project. . - This is the developmental 1.3 branch of LilyPond. It is not intended for - use with stable projects, although arguably 1.3.41 is less buggy and much - more featureful than then the "stable" 1.2.17. + This is the unstable 1.3 branch of LilyPond. It is not intended for + use with stable projects! . URLs: http://www.cs.uu.nl/~hanwen/lilypond/ http://www.xs4all.nl/~jantien/lilypond/ diff --git a/debian/out/control b/debian/out/control index 9a9f184e8c..12d811e790 100644 --- a/debian/out/control +++ b/debian/out/control @@ -3,7 +3,7 @@ Build-Depends: debhelper (>= 2.0.71), python-base (>= 1.5.2-4), libguile6-dev, t Section: tex Priority: optional Maintainer: Anthony Fok -Standards-Version: 3.1.1 +Standards-Version: 3.1.0 Package: lilypond1.3 Architecture: any @@ -17,9 +17,8 @@ Description: A program for printing sheet music. using a high level description file as input. LilyPond is part of the GNU Project. . - This is the developmental 1.3 branch of LilyPond. It is not intended for - use with stable projects, although arguably 1.3.41 is less buggy and much - more featureful than then the "stable" 1.2.17. + This is the unstable 1.3 branch of LilyPond. It is not intended for + use with stable projects! . URLs: http://www.cs.uu.nl/~hanwen/lilypond/ http://www.xs4all.nl/~jantien/lilypond/ diff --git a/flower/polynomial.cc b/flower/polynomial.cc index d43cb9e2a7..4e7fd944c7 100644 --- a/flower/polynomial.cc +++ b/flower/polynomial.cc @@ -90,7 +90,9 @@ Polynomial::clean() coefs_[i] = 0.0; } - while (degree () > 0 && fabs (coefs_.top ()) < FUDGE * fabs (coefs_.top (1))) + while (degree () > 0 && + (fabs (coefs_.top ()) < FUDGE * fabs (coefs_.top (1))) + || !coefs_.top ()) coefs_.pop (); } diff --git a/input/denneboom.ly b/input/denneboom.ly index 11bca6d414..9ecd76a180 100644 --- a/input/denneboom.ly +++ b/input/denneboom.ly @@ -7,7 +7,7 @@ copyright = "public domain"; \include "paper20.ly" -\version "1.3.4"; +\version "1.3.42"; oden = \lyrics{ O | diff --git a/input/example-3.ly b/input/example-3.ly index 86fc80ba98..025a3a7bf7 100644 --- a/input/example-3.ly +++ b/input/example-3.ly @@ -1,4 +1,4 @@ -\version "1.3.4"; +\version "1.3.42"; one = \notes\relative c{ c'' d e f diff --git a/input/just-friends.ly b/input/just-friends.ly index f7e1ec8c2a..96ae93f9ba 100644 --- a/input/just-friends.ly +++ b/input/just-friends.ly @@ -56,4 +56,4 @@ of a certain tune (Jazz, Real Book, for example), like } } -\version "1.3.4"; +\version "1.3.42"; diff --git a/input/praeludium-fuga-E.ly b/input/praeludium-fuga-E.ly index 58d5cf7c5a..fee4e0cb9b 100644 --- a/input/praeludium-fuga-E.ly +++ b/input/praeludium-fuga-E.ly @@ -22,7 +22,7 @@ * organ staff... %} -\version "1.3.4"; +\version "1.3.42"; diff --git a/input/rhythm.ly b/input/rhythm.ly index 607044a99b..05ace2961e 100644 --- a/input/rhythm.ly +++ b/input/rhythm.ly @@ -7,7 +7,7 @@ TestedFeatures = "multiple meters, beaming, unsynced bars, userdefd engravers"; -\version "1.3.4"; +\version "1.3.42"; ritme = \notes\transpose c'' { \time 4/4; diff --git a/input/star-spangled-banner.ly b/input/star-spangled-banner.ly index 87bbd5595c..e485996a03 100644 --- a/input/star-spangled-banner.ly +++ b/input/star-spangled-banner.ly @@ -179,4 +179,4 @@ handLyrics = \notes \context GrandStaff < } -\version "1.3.4"; +\version "1.3.42"; diff --git a/input/test/ped.ly b/input/test/ped.ly deleted file mode 100644 index 40410a32f6..0000000000 --- a/input/test/ped.ly +++ /dev/null @@ -1,14 +0,0 @@ -\score{ -\context Staff \notes\relative c'{ -c\sustaindown d e f\sustainup g\sustaindown b c -c,\sustainup\sustaindown d e f \sustainup g\sustaindown b c -\property Staff.stopStartSustain = #"-P" -\property Staff.startSustain = #"P" -c,\sustainup\sustaindown d e f \sustainup g\sustaindown b c -} -\paper{ -} -\midi{ -\tempo 4 = 60; -} -} diff --git a/input/test/pedal.ly b/input/test/pedal.ly deleted file mode 100644 index cd7398265c..0000000000 --- a/input/test/pedal.ly +++ /dev/null @@ -1,14 +0,0 @@ -\score{ -\context Staff \notes\relative c{ -c\sustaindown d e f\sustainup g\sustaindown b c -c,\sustainup\sustaindown d e f \sustainup g\sustaindown b c -\property Staff.stopStartSustain = #"-P" -\property Staff.startSustain = #"P" -c,\sustainup\sustaindown d e f \sustainup g\sustaindown b c -} -\paper{ -} -\midi{ -\tempo 4 = 60; -} -} diff --git a/input/test/repeat-unfold.ly b/input/test/repeat-unfold.ly index 95faea394e..8d62f8991c 100644 --- a/input/test/repeat-unfold.ly +++ b/input/test/repeat-unfold.ly @@ -1,5 +1,7 @@ -\score { \notes\relative c'' { +\score { + + \context Voice \notes\relative c'' { \repeat unfold 3 { c^"3x 0a" d } % less alts than body \repeat unfold 4 { c^"4x 0a" d } \alternative { e f } diff --git a/input/test/staff-margin.ly b/input/test/staff-margin.ly index 7a79729642..290fd256b4 100644 --- a/input/test/staff-margin.ly +++ b/input/test/staff-margin.ly @@ -17,7 +17,7 @@ linewidth=-1.0; } %\translator { \StaffContext \consists "Instrument_name_engraver"; } %\translator { \PianoStaffContext \consists "Instrument_name_engraver"; } -\translator { \StaffContext \consists "New_staff_margin_engraver"; } -\translator { \PianoStaffContext \consists "New_staff_margin_engraver"; } +\translator { \StaffContext \consists "Instrument_name_engraver"; } +\translator { \PianoStaffContext \consists "Instrument_name_engraver"; } }} diff --git a/input/twinkle-pop.ly b/input/twinkle-pop.ly index bacc0ab2b4..2930e6ca21 100644 --- a/input/twinkle-pop.ly +++ b/input/twinkle-pop.ly @@ -7,7 +7,7 @@ enteredby = "HWN, chords by Johan Vromans"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; melodie = \notes\relative c'' { \clef "violin"; diff --git a/input/twinkle.ly b/input/twinkle.ly index a59b7d52ea..af10d1800c 100644 --- a/input/twinkle.ly +++ b/input/twinkle.ly @@ -20,7 +20,7 @@ Tested Features: lyrics, interleaving lyrics and staffs, repeats, auto beaming, adding lyrics to notes, hyphens %} -\version "1.3.4"; +\version "1.3.42"; melody = \notes \relative c'' { \clef violin; diff --git a/lily/axis-group-engraver.cc b/lily/axis-group-engraver.cc index 5da70fe929..a674757cbe 100644 --- a/lily/axis-group-engraver.cc +++ b/lily/axis-group-engraver.cc @@ -77,7 +77,8 @@ Axis_group_engraver::process_acknowledged () { Score_element *par = elts_[i]->parent_l (Y_AXIS); - if (!par || !Axis_group_interface (par).has_interface_b ()) + if ((!par || !Axis_group_interface (par).has_interface_b ()) + && ! elts_[i]->empty_b (Y_AXIS)) Axis_group_interface (staffline_p_).add_element (elts_[i]); } elts_.clear (); diff --git a/lily/axis-group-interface.cc b/lily/axis-group-interface.cc index c22bbeedb0..a9d868a3a9 100644 --- a/lily/axis-group-interface.cc +++ b/lily/axis-group-interface.cc @@ -25,6 +25,8 @@ Axis_group_interface (Score_element*s) void Axis_group_interface::add_element (Score_element *e) { + + // ugh. used_b_ should be junked. elt_l_->used_b_ = true; e->used_b_ = true; @@ -37,7 +39,6 @@ Axis_group_interface::add_element (Score_element *e) } Group_interface (elt_l_).add_element (e); - elt_l_->add_dependency (e); } @@ -106,9 +107,9 @@ Axis_group_interface::set_axes (Axis a1, Axis a2) elt_l_->set_elt_property ("axes", ax); if (a1 != X_AXIS && a2 != X_AXIS) - elt_l_->set_empty (X_AXIS); + elt_l_->set_extent_callback (0, X_AXIS); if (a1 != Y_AXIS && a2 != Y_AXIS) - elt_l_->set_empty (Y_AXIS); + elt_l_->set_extent_callback (0, Y_AXIS); elt_l_->dim_cache_[a1]->set_extent_callback (Axis_group_interface::group_extent_callback); elt_l_->dim_cache_[a2]->set_extent_callback (Axis_group_interface::group_extent_callback); @@ -137,7 +138,7 @@ bool Axis_group_interface::has_interface_b () { SCM memq = scm_memq (ly_symbol2scm ("Axis_group"), - elt_l_->get_elt_property ("interfaces")); + elt_l_->get_elt_property ("interfaces")); return (memq != SCM_BOOL_F); } diff --git a/lily/bar.cc b/lily/bar.cc index 299c5e9b3d..99f65c026e 100644 --- a/lily/bar.cc +++ b/lily/bar.cc @@ -144,7 +144,7 @@ Bar::before_line_breaking () if (!gh_string_p (g)) { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); + set_extent_callback (0, X_AXIS); } else set_elt_property ("glyph", g); diff --git a/lily/beam.cc b/lily/beam.cc index 39edb511db..027a08d70f 100644 --- a/lily/beam.cc +++ b/lily/beam.cc @@ -13,11 +13,13 @@ * less hairy code * move paper vars to scm + + remove *-hs variables. + */ #include // tanh. - #include "directional-element-interface.hh" #include "beaming.hh" #include "dimensions.hh" @@ -32,11 +34,13 @@ #include "staff-symbol-referencer.hh" #include "cross-staff.hh" - Beam::Beam () { Group_interface g (this, "stems"); g.set_interface (); + + set_elt_property ("height", gh_int2scm (0)); // ugh. + set_elt_property ("y-position" ,gh_int2scm (0)); } void @@ -269,7 +273,7 @@ Beam::after_line_breaking () { /* first, calculate y, dy */ Real y, dy; - calc_position_and_height (&y, &dy); + calc_default_position_and_height (&y, &dy); if (visible_stem_count ()) { if (suspect_slope_b (y, dy)) @@ -337,9 +341,10 @@ Beam::after_line_breaking () See Documentation/tex/fonts.doc */ void -Beam::calc_position_and_height (Real* y, Real* dy) const +Beam::calc_default_position_and_height (Real* y, Real* dy) const { - *y = *dy = 0; + *y = 0; + *dy = 0; if (visible_stem_count () <= 1) return; diff --git a/lily/break-algorithm.cc b/lily/break-algorithm.cc index 84a57b811a..3337bff317 100644 --- a/lily/break-algorithm.cc +++ b/lily/break-algorithm.cc @@ -16,15 +16,15 @@ #include "cpu-timer.hh" #include "command-request.hh" #include "simple-spacer.hh" - - - +#include "group-interface.hh" Array Break_algorithm::find_break_indices () const { - Link_array all (pscore_l_->col_l_arr_); + Link_array all = pscore_l_->line_l_->column_l_arr (); + + Array retval; for (int i=0; i < all.size (); i++) @@ -42,7 +42,8 @@ Break_algorithm::find_break_indices () const Link_array Break_algorithm::find_breaks () const { - Link_array all (pscore_l_->col_l_arr_); + Link_array all = pscore_l_->line_l_->column_l_arr (); + Link_array retval; for (int i=0; i < all.size (); i++) @@ -94,22 +95,6 @@ Break_algorithm::set_pscore (Paper_score*s) { pscore_l_ = s; linewidth_f_ = s->paper_l_->get_var("linewidth"); - do_set_pscore (); -} - - - -void -Break_algorithm::problem_OK () const -{ - if (pscore_l_->col_l_arr_.empty ()) - error (_("score does not have any columns")); - OK (); -} - -void -Break_algorithm::OK () const -{ } Array @@ -120,8 +105,3 @@ Break_algorithm::solve () const return h; } -void -Break_algorithm::do_set_pscore () -{ - -} diff --git a/lily/clef-item.cc b/lily/clef-item.cc index a7c9661293..af14a41828 100644 --- a/lily/clef-item.cc +++ b/lily/clef-item.cc @@ -6,7 +6,7 @@ (c) 1997--2000 Han-Wen Nienhuys */ -#include + #include "clef-item.hh" #include "string.hh" #include "molecule.hh" @@ -17,6 +17,7 @@ #include "dimension-cache.hh" #include "side-position-interface.hh" #include "warn.hh" +#include "line-of-score.hh" void Clef_item::before_line_breaking () @@ -46,7 +47,7 @@ Clef_item::before_line_breaking () if (style == "transparent") // UGH. JUNKME { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); + set_extent_callback (0, X_AXIS); } } @@ -65,7 +66,7 @@ Clef_item::do_add_processing () Side_position_interface spi (g); spi.set_axis (Y_AXIS); - pscore_l_->typeset_element (g); + pscore_l_->line_l_->typeset_element (g); spi.add_support (this); g->set_elt_property ("text", ly_str02scm ( "8")); diff --git a/lily/dots.cc b/lily/dots.cc index 7846e2d367..5fa59bdd50 100644 --- a/lily/dots.cc +++ b/lily/dots.cc @@ -25,8 +25,8 @@ Dots::after_line_breaking () if (!gh_number_p (d) || !gh_scm2int (d)) { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } else { diff --git a/lily/gourlay-breaking.cc b/lily/gourlay-breaking.cc index beb260f3f5..0425c8a118 100644 --- a/lily/gourlay-breaking.cc +++ b/lily/gourlay-breaking.cc @@ -14,8 +14,7 @@ #include "paper-score.hh" #include "paper-def.hh" #include "simple-spacer.hh" - -#include "killing-cons.tcc" +#include "line-of-score.hh" /// How often to print operator pacification marks? const int HAPPY_DOTS_I = 3; @@ -47,12 +46,17 @@ struct Break_node { /** This algorithms is adapted from the OSU Tech report on breaking lines. + + this function is longish, but not very complicated. + */ Array Gourlay_breaking::do_solve () const { Array optimal_paths; - Link_array all = pscore_l_->col_l_arr_ ; + Link_array all = + pscore_l_->line_l_->column_l_arr (); + Array breaks = find_break_indices (); optimal_paths.set_size (breaks.size ()); @@ -163,14 +167,8 @@ Gourlay_breaking::do_solve () const Gourlay_breaking::Gourlay_breaking () { energy_bound_f_ = infinity_f; - max_measures_i_ = INT_MAX; } -void -Gourlay_breaking::do_set_pscore () -{ - max_measures_i_ =int (rint (pscore_l_->paper_l_->get_var ("gourlay_maxmeasures"))); -} /* diff --git a/lily/hara-kiri-vertical-group-spanner.cc b/lily/hara-kiri-vertical-group-spanner.cc index 9f09ea2d90..12d5093c07 100644 --- a/lily/hara-kiri-vertical-group-spanner.cc +++ b/lily/hara-kiri-vertical-group-spanner.cc @@ -42,12 +42,12 @@ Hara_kiri_group_spanner::after_line_breaking () if ( line_l () != s->line_l ()) programming_error ("Killing other children too"); s->set_elt_property ("transparent", SCM_BOOL_T); - s->set_empty (X_AXIS); - s->set_empty (Y_AXIS); + s->set_extent_callback (0, X_AXIS); + s->set_extent_callback (0, Y_AXIS); } - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } diff --git a/lily/include/audio-column.hh b/lily/include/audio-column.hh index 8b6791933e..5b6f8d4d8a 100644 --- a/lily/include/audio-column.hh +++ b/lily/include/audio-column.hh @@ -19,19 +19,19 @@ class Audio_column : public Audio_element { public: - Audio_column (Moment at_mom); + Audio_column (Moment at_mom); - void add_audio_item (Audio_item* i_l); - Moment at_mom() const; - void print() const; + void add_audio_item (Audio_item* i_l); + Moment at_mom() const; + void print() const; - Link_array audio_item_l_arr_; - Performance * performance_l_; + Link_array audio_item_l_arr_; + Performance * performance_l_; private: - Audio_column (Audio_column const&); + Audio_column (Audio_column const&); - Moment at_mom_; + Moment at_mom_; }; diff --git a/lily/include/axis-group-item.hh b/lily/include/axis-group-item.hh index e69de29bb2..09c7cfafd0 100644 --- a/lily/include/axis-group-item.hh +++ b/lily/include/axis-group-item.hh @@ -0,0 +1 @@ +#error diff --git a/lily/include/axis-group-spanner.hh b/lily/include/axis-group-spanner.hh index e69de29bb2..65296f8106 100644 --- a/lily/include/axis-group-spanner.hh +++ b/lily/include/axis-group-spanner.hh @@ -0,0 +1,2 @@ + +#error diff --git a/lily/include/beam.hh b/lily/include/beam.hh index 54f6d04bdc..768d07aaa7 100644 --- a/lily/include/beam.hh +++ b/lily/include/beam.hh @@ -56,7 +56,7 @@ private: void auto_knees (); bool auto_knee (String gap_str, bool interstaff_b); void set_stem_shorten (); - void calc_position_and_height (Real* y, Real* dy) const; + void calc_default_position_and_height (Real* y, Real* dy) const; bool suspect_slope_b (Real y, Real dy) const; Real calc_slope_damping_f (Real dy) const; Real calc_stem_y_f (Stem* s, Real y, Real dy) const; diff --git a/lily/include/break-algorithm.hh b/lily/include/break-algorithm.hh index 99bba1a2c5..00da3940ce 100644 --- a/lily/include/break-algorithm.hh +++ b/lily/include/break-algorithm.hh @@ -44,16 +44,12 @@ protected: Simple_spacer* generate_spacing_problem (Link_array, Interval) const; virtual Array do_solve() const=0; - virtual void do_set_pscore(); public: Simple_spacer* (*get_line_spacer)(); Break_algorithm(); void set_pscore (Paper_score*); - /// check if the spacing/breaking problem is well-stated - void problem_OK() const; - void OK() const; Array solve() const; }; diff --git a/lily/include/gourlay-breaking.hh b/lily/include/gourlay-breaking.hh index 9f00295076..6baa4780d7 100644 --- a/lily/include/gourlay-breaking.hh +++ b/lily/include/gourlay-breaking.hh @@ -19,9 +19,6 @@ struct Gourlay_breaking : public Break_algorithm { Real energy_bound_f_ ; - /// maximum number of measures in a line - int max_measures_i_; - void do_set_pscore(); Array do_solve() const; Gourlay_breaking(); Real combine_demerits (Column_x_positions const&,Column_x_positions const&) const; diff --git a/lily/include/line-of-score.hh b/lily/include/line-of-score.hh index f9031a2f50..1e81b087f9 100644 --- a/lily/include/line-of-score.hh +++ b/lily/include/line-of-score.hh @@ -7,6 +7,7 @@ #ifndef SCORELINE_HH #define SCORELINE_HH +#include "protected-scm.hh" #include "column-x-positions.hh" #include "spanner.hh" @@ -30,7 +31,8 @@ public: void output_all (); int rank_i_; - + + Protected_scm output_; Line_of_score(); /// is #c# contained in #*this#? @@ -39,10 +41,18 @@ public: static int compare (Line_of_score* const &,Line_of_score* const &); void break_into_pieces (Array const&); - void output_lines (); - void output_line (bool last_line); - void add_column (Paper_column*); + + SCM output_lines (); + + + Link_array broken_col_range (Item const*, Item const*) const; + Link_array column_l_arr () const; + void add_column (Paper_column*); + void typeset_element (Score_element*); + void output_molecule (SCM, Offset); + void output_scheme (SCM); + void pre_processing (); protected: VIRTUAL_COPY_CONS(Score_element); }; diff --git a/lily/include/notename-table.hh b/lily/include/notename-table.hh index e69de29bb2..8b13789179 100644 --- a/lily/include/notename-table.hh +++ b/lily/include/notename-table.hh @@ -0,0 +1 @@ + diff --git a/lily/include/paper-column.hh b/lily/include/paper-column.hh index e0510bc7f8..796781a2b2 100644 --- a/lily/include/paper-column.hh +++ b/lily/include/paper-column.hh @@ -31,6 +31,11 @@ class Paper_column : public Item { public: VIRTUAL_COPY_CONS(Score_element); + + /* + ugh. + */ + Drul_array > minimal_dists_arr_drul_; Drul_array > spring_arr_drul_; @@ -41,11 +46,9 @@ public: virtual Paper_column * column_l () const; virtual Line_of_score *line_l () const; - /// if lines are broken then this column is in #line# Line_of_score *line_l_; - /// which one (left =0) int rank_i() const; @@ -65,10 +68,6 @@ private: int rank_i_; }; - - -// #include "compare.hh" -// INSTANTIATE_COMPARE(Paper_column &, Paper_column::compare); #endif // P_COL_HH diff --git a/lily/include/paper-outputter.hh b/lily/include/paper-outputter.hh index 3a1d343c27..73ad6aecf0 100644 --- a/lily/include/paper-outputter.hh +++ b/lily/include/paper-outputter.hh @@ -16,11 +16,6 @@ #include "lily-guile.hh" #include "protected-scm.hh" -// huh? -#ifdef __powerpc__ -#include "protected-scm.hh" -#endif - /** Abstract interface for a Score_element to output itself. */ @@ -40,13 +35,8 @@ public: void output_font_def (int i, String str); void output_font_switch (int i); void output_header (); - void output_molecule (SCM expr, Offset, char const *); void output_comment (String s); void output_scheme (SCM scm); - - void start_line (Real height); - void stop_line (); - void stop_last_line (); }; #endif // PAPER_OUTPUTTER_HH diff --git a/lily/include/paper-score.hh b/lily/include/paper-score.hh index e6d757fcfb..bca0642c61 100644 --- a/lily/include/paper-score.hh +++ b/lily/include/paper-score.hh @@ -15,6 +15,7 @@ #include "lily-proto.hh" #include "music-output.hh" #include "lily-guile.hh" +#include "protected-scm.hh" /** all stuff which goes onto paper. notes, signs, symbols in a score #Paper_score# contains the items, the columns. @@ -27,23 +28,11 @@ class Paper_score : public Music_output public: Paper_def *paper_l_; - /// the columns, ordered left to right - /* - UGH. MOVE INTO LINE_OF_SCORE ?! - */ - Link_array col_l_arr_; - Paper_outputter *outputter_l_; Line_of_score * line_l_; Paper_score (); - void fixup_refpoints (); - - - /// add to bottom of pcols - void add_column (Paper_column*); - /** @return index of argument. */ @@ -52,16 +41,8 @@ public: Link_array broken_col_range (Item const*,Item const*) const; - /* STANDARD ROUTINES */ - void print() const; - - void typeset_element (Score_element*); - void typeset_broken_spanner (Spanner*); - /// add a Spanner - void typeset_unbroken_spanner (Spanner*); - + void typeset_line (Line_of_score*); - virtual ~Paper_score(); protected: /* MAIN ROUTINES */ virtual void process(); @@ -69,7 +50,6 @@ protected: private: /// before calc_breaking void preprocess(); - void calc_idealspacing(); /// calculate where the lines are to be broken, and use results Array calc_breaking(); diff --git a/lily/include/priority-halign-engraver.hh b/lily/include/priority-halign-engraver.hh index e69de29bb2..09c7cfafd0 100644 --- a/lily/include/priority-halign-engraver.hh +++ b/lily/include/priority-halign-engraver.hh @@ -0,0 +1 @@ +#error diff --git a/lily/include/rhythmic-head.hh b/lily/include/rhythmic-head.hh index bb34f17efe..2435085d57 100644 --- a/lily/include/rhythmic-head.hh +++ b/lily/include/rhythmic-head.hh @@ -12,12 +12,6 @@ #include "item.hh" -/* - Why don't I have a - VIRTUAL_COPY_CONS (Score_element); - see also note-head, rest. - ? -*/ class Rhythmic_head : public Item { diff --git a/lily/include/score-element.hh b/lily/include/score-element.hh index f181878735..768152545e 100644 --- a/lily/include/score-element.hh +++ b/lily/include/score-element.hh @@ -151,6 +151,10 @@ public: /// do calculations before determining horizontal spacing virtual void before_line_breaking (); + /// do calculations after determining horizontal spacing + virtual void after_line_breaking (); + virtual void output_processing (); + static Interval preset_extent (Dimension_cache const*); static Interval molecule_extent (Dimension_cache const*); @@ -162,8 +166,6 @@ protected: be handled by GUILE gc. */ virtual ~Score_element (); - virtual void output_processing (); - /// do printing of derived info. virtual void do_print () const; /// generate the molecule @@ -171,14 +173,13 @@ protected: ///executed directly after the item is added to the Paper_score virtual void do_add_processing (); - /// do calculations after determining horizontal spacing - virtual void after_line_breaking (); static Interval dim_cache_callback (Dimension_cache const*); + public: static SCM ly_set_elt_property (SCM, SCM,SCM); static SCM ly_get_elt_property (SCM, SCM); - + virtual void handle_broken_dependencies (); virtual void handle_prebroken_dependencies (); @@ -200,6 +201,7 @@ public: char const * name () const; /** Set empty in direction A. + JUNKME */ void set_empty (Axis a); bool empty_b (Axis a) const; @@ -221,6 +223,8 @@ public: bool has_offset_callback_b (Offset_cache_callback, Axis)const; void add_offset_callback (Offset_cache_callback, Axis); + void set_extent_callback (Dim_cache_callback , Axis); + /** Set the parent refpoint of THIS to E */ diff --git a/lily/item.cc b/lily/item.cc index 0458144c35..1f7950658c 100644 --- a/lily/item.cc +++ b/lily/item.cc @@ -13,6 +13,7 @@ #include "paper-column.hh" #include "spanner.hh" #include "lily-guile.hh" +#include "line-of-score.hh" Item::Item () { @@ -57,7 +58,7 @@ Item::copy_breakable_items() { Score_element * dolly = clone(); Item * item_p = dynamic_cast(dolly); - pscore_l_->typeset_element (item_p); + pscore_l_->line_l_->typeset_element (item_p); new_copies[i] =item_p; } while (flip(&i) != LEFT); @@ -84,8 +85,8 @@ Item::try_visibility_lambda () if (empty) { - set_empty (X_AXIS); - set_empty ( Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } if (trans) set_elt_property ("transparent", SCM_BOOL_T); diff --git a/lily/lexer.ll b/lily/lexer.ll index 23692d60d7..1f75b5d39b 100644 --- a/lily/lexer.ll +++ b/lily/lexer.ll @@ -25,6 +25,7 @@ #include #include +#include "notename-table.hh" #include "lily-guile.hh" #include "string.hh" #include "string-convert.hh" diff --git a/lily/line-of-score.cc b/lily/line-of-score.cc index 4d8f3b7429..b87c716dd0 100644 --- a/lily/line-of-score.cc +++ b/lily/line-of-score.cc @@ -16,20 +16,42 @@ #include "paper-score.hh" #include "string.hh" #include "warn.hh" - +#include "dimensions.hh" Line_of_score::Line_of_score() { set_elt_property ("columns", SCM_EOL); + set_elt_property ("all-elements", SCM_EOL); + Axis_group_interface (this).set_interface (); Axis_group_interface (this).set_axes (Y_AXIS,X_AXIS); } - void +Line_of_score::typeset_element (Score_element * elem_p) +{ + elem_p->pscore_l_ = pscore_l_; + Group_interface (this, "all-elements").add_element (elem_p); + scm_unprotect_object (elem_p->self_scm_); +} + +SCM Line_of_score::output_lines () { + for (SCM s = get_elt_property ("all-elements"); + gh_pair_p (s); s = gh_cdr (s)) + { + unsmob_element (gh_car (s))->do_break_processing (); + } + + for (SCM s = get_elt_property ("all-elements"); + gh_pair_p (s); s = gh_cdr (s)) + { + unsmob_element (gh_car (s))->handle_broken_dependencies (); + } + handle_broken_dependencies (); + for (int i=0; i < broken_into_l_arr_.size (); i++) { Line_of_score *line_l = dynamic_cast (broken_into_l_arr_[i]); @@ -37,9 +59,16 @@ Line_of_score::output_lines () progress_indication ("["); line_l->post_processing (); progress_indication (to_str (i)); - line_l->output_line (i + 1 == broken_into_l_arr_.size ()); progress_indication ("]"); } + + SCM list = SCM_EOL; + for (int i=broken_into_l_arr_.size (); i--;) + { + Line_of_score * l = dynamic_cast (broken_into_l_arr_[i]); + list = gh_cons (gh_cdr (l->output_), list); + } + return list; } // const? @@ -51,7 +80,8 @@ Line_of_score::break_into_pieces (Array const &breaking) Line_of_score *line_l = dynamic_cast (clone()); line_l->rank_i_ = i; Link_array c (breaking[i].cols_); - pscore_l_->typeset_element (line_l); + pscore_l_->typeset_line (line_l); + line_l->set_bound(LEFT,c[0]); line_l->set_bound(RIGHT,c.top ()); for (int j=0; j < c.size(); j++) @@ -64,30 +94,66 @@ Line_of_score::break_into_pieces (Array const &breaking) } } + void -Line_of_score::add_column (Paper_column*p) +Line_of_score::output_molecule (SCM expr, Offset o) { - set_elt_property ("columns", - gh_cons (p->self_scm_, get_elt_property ("columns"))); - Axis_group_interface (this).add_element (p); + SCM offset_sym = ly_symbol2scm ("translate-molecule"); + SCM combine_sym = ly_symbol2scm ("combine-molecule"); +enter: + + if (!gh_pair_p (expr)) + return; + + SCM head =gh_car (expr); + if (head == offset_sym) + { + o += ly_scm2offset (gh_cadr (expr)); + expr = gh_caddr (expr); + goto enter; + } + else if (head == combine_sym) + { + output_molecule (gh_cadr (expr), o); + expr = gh_caddr (expr); + goto enter; // tail recursion + } + else + { + output_scheme (gh_list (ly_symbol2scm ("placebox"), + gh_double2scm (o[X_AXIS]), + gh_double2scm (o[Y_AXIS]), + expr, + SCM_UNDEFINED)); + } } +void +Line_of_score::output_scheme (SCM s) +{ + gh_set_cdr_x (output_, gh_cons (s, gh_cdr (output_))); +} void -Line_of_score::output_line (bool last_line) +Line_of_score::add_column (Paper_column*p) { - Interval i(extent(Y_AXIS)); - if (i.empty_b()) - programming_error ("Huh? Empty Line_of_score?"); - else - translate_axis (- i[MAX], Y_AXIS); - - pscore_l_->outputter_l_->start_line (i.length ()); - output_all (); - if (last_line) - pscore_l_->outputter_l_->stop_last_line(); - else - pscore_l_->outputter_l_->stop_line (); + SCM cs = get_elt_property ("columns"); + Score_element * prev = gh_pair_p (cs) ? unsmob_element (gh_car (cs)) : 0; + int rank = prev ? dynamic_cast (prev)->rank_i () + 1 : 0; + + p->set_rank (rank); + set_elt_property ("columns", gh_cons (p->self_scm_, cs)); + + Axis_group_interface (this).add_element (p); + typeset_element (p); +} + +Link_array +Line_of_score::column_l_arr ()const +{ + return Group_interface__extract_elements (this, + (Paper_column*) 0, "columns"); + } int @@ -96,10 +162,75 @@ Line_of_score::compare (Line_of_score* const &p1,Line_of_score* const &p2) return p1->rank_i_ - p2->rank_i_; } + +void +fixup_refpoints (SCM s) +{ + for (; gh_pair_p (s); s = gh_cdr (s)) + { + Score_element * se = unsmob_element (gh_car (s)); + if (se) + { + se->fixup_refpoint (); + if (!dynamic_cast (se) && !se->parent_l (Y_AXIS)) + { + programming_error ("No parent!"); + } + } + } +} + + +void +Line_of_score::pre_processing () +{ + for (SCM s = get_elt_property ("all-elements"); gh_pair_p (s); s = gh_cdr (s)) + unsmob_element (gh_car (s))->do_breakable_col_processing (); + + fixup_refpoints (get_elt_property ("all-elements")); + + for (SCM s = get_elt_property ("all-elements"); gh_pair_p (s); s = gh_cdr (s)) + { + Score_element* sc = unsmob_element (gh_car (s)); + sc->calculate_dependencies (PRECALCED, PRECALCING, &Score_element::before_line_breaking); + } + + progress_indication ("\n" + _ ("Calculating column positions...") + " " ); + for (SCM s = get_elt_property ("all-elements"); gh_pair_p (s); s = gh_cdr (s)) + unsmob_element (gh_car (s))->do_space_processing (); +} + void Line_of_score::post_processing () { - calculate_dependencies (POSTCALCED, POSTCALCING, &Score_element::after_line_breaking); + fixup_refpoints (get_elt_property ("all-elements")); + for (SCM s = get_elt_property ("all-elements"); + gh_pair_p (s); s = gh_cdr (s)) + { + Score_element* sc = unsmob_element (gh_car (s)); + sc->calculate_dependencies (POSTCALCED, POSTCALCING, &Score_element::after_line_breaking); + } + + Interval i(extent(Y_AXIS)); + if (i.empty_b()) + programming_error ("Huh? Empty Line_of_score?"); + else + translate_axis (- i[MAX], Y_AXIS); + + Real height = i.length (); + if (height > 50 CM) + { + programming_error ("Improbable system height"); + height = 50 CM; + } + + output_ = gh_cons (SCM_EOL, SCM_EOL); + output_scheme (gh_list (ly_symbol2scm ("stop-line"), SCM_UNDEFINED)); + for (SCM s = get_elt_property ("all-elements"); gh_pair_p (s); s = gh_cdr (s)) + unsmob_element (gh_car (s))->output_processing (); + output_scheme (gh_list (ly_symbol2scm ("start-line"), + gh_double2scm (height), + SCM_UNDEFINED)); } void @@ -108,6 +239,34 @@ Line_of_score::output_all () calculate_dependencies (BREWED, BREWING, &Score_element::output_processing); } +Link_array +Line_of_score::broken_col_range (Item const*l, Item const*r) const +{ + Link_array ret; + + l = l->column_l (); + r = r->column_l (); + SCM s = get_elt_property ("columns"); + + while (gh_car (s) != r->self_scm_) + s = gh_cdr (s); + + + s = gh_cdr (s); + + while (gh_car (s) != l->self_scm_) + { + Paper_column *c + = dynamic_cast (unsmob_element (gh_car (s))); + if (c->breakable_b () && !c->line_l_) + ret.push (c); + + s = gh_cdr (s); + } + + ret.reverse (); + return ret; +} diff --git a/lily/lookup.cc b/lily/lookup.cc index 166af27043..8be036fa78 100644 --- a/lily/lookup.cc +++ b/lily/lookup.cc @@ -365,11 +365,11 @@ Lookup::accordion (SCM s, Real staff_space) const if (sym == "Discant") { - Molecule r = afm_find("accordion-accDiscant"); + Molecule r = afm_find("scripts-accDiscant"); m.add_molecule(r); if (reg.left_str(1) == "F") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 2.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); @@ -397,27 +397,27 @@ Lookup::accordion (SCM s, Real staff_space) const } if (eflag & 0x02) { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 1.5 PT, Y_AXIS); m.add_molecule(d); } if (eflag & 0x04) { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 1.5 PT, Y_AXIS); d.translate_axis(0.8 * staff_space PT, X_AXIS); m.add_molecule(d); } if (eflag & 0x01) { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 1.5 PT, Y_AXIS); d.translate_axis(-0.8 * staff_space PT, X_AXIS); m.add_molecule(d); } if (reg.left_str(2) == "SS") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(0.5 * staff_space PT, Y_AXIS); d.translate_axis(0.4 * staff_space PT, X_AXIS); m.add_molecule(d); @@ -427,7 +427,7 @@ Lookup::accordion (SCM s, Real staff_space) const } if (reg.left_str(1) == "S") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(0.5 * staff_space PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); @@ -435,29 +435,29 @@ Lookup::accordion (SCM s, Real staff_space) const } else if (sym == "Freebase") { - Molecule r = afm_find("accordion-accFreebase"); + Molecule r = afm_find("scripts-accFreebase"); m.add_molecule(r); if (reg.left_str(1) == "F") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 1.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); } if (reg == "E") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 0.5 PT, Y_AXIS); m.add_molecule(d); } } else if (sym == "Bayanbase") { - Molecule r = afm_find("accordion-accBayanbase"); + Molecule r = afm_find("scripts-accBayanbase"); m.add_molecule(r); if (reg.left_str(1) == "T") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 2.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); @@ -465,14 +465,14 @@ Lookup::accordion (SCM s, Real staff_space) const /* include 4' reed just for completeness. You don't want to use this. */ if (reg.left_str(1) == "F") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 1.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); } if (reg.left_str(2) == "EE") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 0.5 PT, Y_AXIS); d.translate_axis(0.4 * staff_space PT, X_AXIS); m.add_molecule(d); @@ -482,7 +482,7 @@ Lookup::accordion (SCM s, Real staff_space) const } if (reg.left_str(1) == "E") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 0.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); @@ -490,25 +490,25 @@ Lookup::accordion (SCM s, Real staff_space) const } else if (sym == "Stdbase") { - Molecule r = afm_find("accordion-accStdbase"); + Molecule r = afm_find("scripts-accStdbase"); m.add_molecule(r); if (reg.left_str(1) == "T") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 3.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); } if (reg.left_str(1) == "F") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 2.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); } if (reg.left_str(1) == "M") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 2 PT, Y_AXIS); d.translate_axis(staff_space PT, X_AXIS); m.add_molecule(d); @@ -516,14 +516,14 @@ Lookup::accordion (SCM s, Real staff_space) const } if (reg.left_str(1) == "E") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 1.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); } if (reg.left_str(1) == "S") { - Molecule d = afm_find("accordion-accDot"); + Molecule d = afm_find("scripts-accDot"); d.translate_axis(staff_space * 0.5 PT, Y_AXIS); m.add_molecule(d); reg = reg.right_str(reg.length_i()-1); @@ -533,22 +533,22 @@ Lookup::accordion (SCM s, Real staff_space) const for the rectangle */ else if (sym == "SB") { - Molecule r = afm_find("accordion-accSB"); + Molecule r = afm_find("scripts-accSB"); m.add_molecule(r); } else if (sym == "BB") { - Molecule r = afm_find("accordion-accBB"); + Molecule r = afm_find("scripts-accBB"); m.add_molecule(r); } else if (sym == "OldEE") { - Molecule r = afm_find("accordion-accOldEE"); + Molecule r = afm_find("scripts-accOldEE"); m.add_molecule(r); } else if (sym == "OldEES") { - Molecule r = afm_find("accordion-accOldEES"); + Molecule r = afm_find("scripts-accOldEES"); m.add_molecule(r); } return m; diff --git a/lily/new-span-bar-engraver.cc b/lily/new-span-bar-engraver.cc index e69de29bb2..8b13789179 100644 --- a/lily/new-span-bar-engraver.cc +++ b/lily/new-span-bar-engraver.cc @@ -0,0 +1 @@ + diff --git a/lily/notename-table.cc b/lily/notename-table.cc index e69de29bb2..8b13789179 100644 --- a/lily/notename-table.cc +++ b/lily/notename-table.cc @@ -0,0 +1 @@ + diff --git a/lily/paper-outputter.cc b/lily/paper-outputter.cc index 584347bae9..1d5ee856a1 100644 --- a/lily/paper-outputter.cc +++ b/lily/paper-outputter.cc @@ -28,6 +28,10 @@ #include "lily-version.hh" +/* + Ugh, this is messy. + */ + Paper_outputter::Paper_outputter () { molecules_ = gh_cons (SCM_EOL, SCM_EOL); @@ -75,46 +79,7 @@ Paper_outputter::output_header () output_scheme (scm); } -void -Paper_outputter::output_molecule (SCM expr, Offset o, char const *nm) -{ -#if 0 - if (flower_dstream) - { - output_comment (nm); - } -#endif - - SCM offset_sym = ly_symbol2scm ("translate-molecule"); - SCM combine_sym = ly_symbol2scm ("combine-molecule"); -enter: - - if (!gh_pair_p (expr)) - return; - - SCM head =gh_car (expr); - if (head == offset_sym) - { - o += ly_scm2offset (gh_cadr (expr)); - expr = gh_caddr (expr); - goto enter; - } - else if (head == combine_sym) - { - output_molecule (gh_cadr (expr), o, nm); - expr = gh_caddr (expr); - goto enter; // tail recursion - } - else - { - output_scheme (gh_list (ly_symbol2scm ("placebox"), - gh_double2scm (o[X_AXIS]), - gh_double2scm (o[Y_AXIS]), - expr, - SCM_UNDEFINED)); - } -} void Paper_outputter::output_comment (String str) @@ -251,19 +216,7 @@ Paper_outputter::output_version () output_String_def ( "LilyPondVersion", version_str ()); } -void -Paper_outputter::start_line (Real height) -{ - if (height > 50 CM) - { - programming_error ("Improbable system height"); - height = 50 CM; - } - SCM scm = gh_list (ly_symbol2scm ("start-line"), - gh_double2scm (height), - SCM_UNDEFINED); - output_scheme (scm); -} + void Paper_outputter::output_font_def (int i, String str) @@ -316,20 +269,5 @@ Paper_outputter::output_int_def (String k, int v) -void -Paper_outputter::stop_line () -{ - SCM scm = gh_list (ly_symbol2scm ("stop-line"), SCM_UNDEFINED); - output_scheme (scm); -} - -void -Paper_outputter::stop_last_line () -{ - SCM scm = gh_list (ly_symbol2scm ("stop-last-line"), SCM_UNDEFINED); - output_scheme (scm); - scm = gh_list (ly_symbol2scm ("end-output"), SCM_UNDEFINED); - output_scheme (scm); -} diff --git a/lily/paper-score.cc b/lily/paper-score.cc index 247b5fecad..941cfe71ab 100644 --- a/lily/paper-score.cc +++ b/lily/paper-score.cc @@ -27,68 +27,22 @@ Paper_score::Paper_score () { paper_l_ =0; outputter_l_ =0; - Line_of_score * line_p = new Line_of_score; - line_p->pscore_l_ = this; - element_smob_list_ = scm_protect_object (gh_cons (line_p->self_scm_, SCM_EOL)); - line_l_ = line_p; -} - -Paper_score::Paper_score (Paper_score const &s) - : Music_output (s) -{ - assert (false); -} - -Paper_score::~Paper_score () -{ - scm_unprotect_object (element_smob_list_); + line_l_ = new Line_of_score; + element_smob_list_ = SCM_EOL; + typeset_line (line_l_); } void -Paper_score::typeset_element (Score_element * elem_p) +Paper_score::typeset_line (Line_of_score *l) { - elem_p->pscore_l_ = this; - - gh_set_cdr_x(element_smob_list_, - gh_cons (elem_p->self_scm_, gh_cdr (element_smob_list_))); - elem_p->set_elt_property ("full-name", - gh_str02scm((char*)elem_p->name())); - - scm_unprotect_object (elem_p->self_scm_); -} - -void -Paper_score::add_column (Paper_column *p) -{ - p->set_rank (col_l_arr_.size ()); - col_l_arr_.push (p); - typeset_element(p); + line_l_->pscore_l_ = this; + element_smob_list_ = gh_cons (l->self_scm_, element_smob_list_); } -void -Paper_score::print () const -{ -#ifndef NPRINT - if (!flower_dstream) - return ; - - DEBUG_OUT << "Paper_score { "; - DEBUG_OUT << "\n elements: "; - - for (SCM p = gh_cdr (element_smob_list_); - p != SCM_EOL; - p = gh_cdr(p)) - gh_display (gh_car (p)); - DEBUG_OUT << "}\n"; -#endif -} - -int -Paper_score::find_col_idx (Paper_column const *c) const +Paper_score::Paper_score (Paper_score const &s) + : Music_output (s) { - Paper_column const *what = c; - - return col_l_arr_.find_i ((Paper_column*)what); + assert (false); } Array @@ -107,45 +61,28 @@ Paper_score::calc_breaking () +/* + urg. clean me + */ void Paper_score::process () { - print (); progress_indication (_ ("Preprocessing elements...") + " "); - /* Be sure to set breakability on first & last column. */ - col_l_arr_[0]->set_elt_property ("breakable", SCM_BOOL_T); - col_l_arr_.top ()->set_elt_property ("breakable", SCM_BOOL_T); - - for (SCM s = element_smob_list_; gh_pair_p (s); s = gh_cdr (s)) - unsmob_element (gh_car (s))->do_breakable_col_processing (); - - fixup_refpoints (); - - for (SCM s = element_smob_list_; gh_pair_p (s); s = gh_cdr (s)) - { - Score_element* sc = unsmob_element (gh_car (s)); - sc->calculate_dependencies (PRECALCED, PRECALCING, &Score_element::before_line_breaking); - } - - progress_indication ("\n" + _ ("Calculating column positions...") + " " ); - for (SCM s = element_smob_list_; gh_pair_p (s); s = gh_cdr (s)) - unsmob_element (gh_car (s))->do_space_processing (); + Link_array pc (line_l_->column_l_arr ()); + + pc[0]->set_elt_property ("breakable", SCM_BOOL_T); + pc.top ()->set_elt_property ("breakable", SCM_BOOL_T); + line_l_->pre_processing (); + Array breaking = calc_breaking (); line_l_->break_into_pieces (breaking); - for (SCM s = element_smob_list_; gh_pair_p (s); s = gh_cdr (s)) - { - unsmob_element (gh_car (s))->do_break_processing (); - } - for (SCM s = element_smob_list_; gh_pair_p (s); s = gh_cdr (s)) - { - unsmob_element (gh_car (s))->handle_broken_dependencies (); - } + SCM lines = line_l_->output_lines (); outputter_l_ = new Paper_outputter ; outputter_l_->output_header (); @@ -161,38 +98,28 @@ Paper_score::process () if (paper_l_->scope_p_) outputter_l_->output_scope (paper_l_->scope_p_, "mudelapaper"); - - SCM scm = gh_list (ly_symbol2scm ("experimental-on"), SCM_UNDEFINED); - outputter_l_->output_scheme (scm); + + SCM scm; + if(experimental_features_global_b) + { + SCM scm = gh_list (ly_symbol2scm ("experimental-on"), SCM_UNDEFINED); + outputter_l_->output_scheme (scm); + } scm = gh_list (ly_symbol2scm ("header-end"), SCM_UNDEFINED); outputter_l_->output_scheme (scm); + + SCM font_names = ly_quote_scm (all_fonts_global_p->font_descriptions ()); + outputter_l_->output_scheme (gh_list (ly_symbol2scm ("define-fonts"), + font_names, + SCM_UNDEFINED)); + + for (SCM i = lines ; gh_pair_p (i); i = gh_cdr (i)) + for (SCM j = gh_car (i) ; gh_pair_p (j); j = gh_cdr (j)) + outputter_l_->output_scheme (gh_car (j)); + scm = gh_list (ly_symbol2scm ("end-output"), SCM_UNDEFINED); + outputter_l_->output_scheme (scm); - /* - This is tricky: we have to put the font definitions before the - actual output, but we don't know all fonts in advanced: generating - the output might trigger loading of a new font. So we store the - place to insert the font definitions, generate the output and then - insert the definitions - - */ - SCM before_output = outputter_l_->last_cons_; - fixup_refpoints (); - - /* - TODO: change this, so that each element ouputs its molecules into - its line, and then output all lines one by one; then we can do - - foreach element: output - */ - line_l_->output_lines (); - - SCM font_names = ly_quote_scm (all_fonts_global_p->font_descriptions ()); - gh_set_cdr_x (before_output, - gh_cons (gh_list (ly_symbol2scm ("define-fonts"), - font_names, - SCM_UNDEFINED), - gh_cdr (before_output))); Paper_stream* psp = paper_l_->paper_stream_p (); outputter_l_->dump_onto (psp); @@ -201,52 +128,4 @@ Paper_score::process () delete outputter_l_; outputter_l_ = 0; delete psp; - -} - -Link_array -Paper_score::broken_col_range (Item const*l, Item const*r) const -{ - Link_array ret; - - l = l->column_l (); - r = r->column_l (); - - int start = l - ? find_col_idx (dynamic_cast ((Item*)l))+1 - : 0; - - int stop = r - ? find_col_idx (dynamic_cast((Item*)r)) - : col_l_arr_.size (); - - while (start < stop) - { - Paper_column *c = col_l_arr_[start]; - if (c->breakable_b () && !c->line_l_) - ret.push (c); - start++; - } - - return ret; -} - - -void -Paper_score::fixup_refpoints () -{ - for (SCM s = element_smob_list_; gh_pair_p (s); s = gh_cdr (s)) - { - SCM e = gh_car (s); - if (SMOB_IS_TYPE_B(Score_element, e)) - { - Score_element * se = unsmob_element (e); - se->fixup_refpoint (); - - if (!dynamic_cast (se) && !se->parent_l (Y_AXIS)) - { - programming_error ("No parent!"); - } - } - } } diff --git a/lily/piano-pedal-engraver.cc b/lily/piano-pedal-engraver.cc deleted file mode 100644 index 6d0327ddc3..0000000000 --- a/lily/piano-pedal-engraver.cc +++ /dev/null @@ -1,246 +0,0 @@ -/* - piano-pedal-engraver.cc -- implement Piano_pedal_engraver - - source file of the GNU LilyPond music typesetter - - (c) 2000 Jan Nieuwenhuizen - - */ - -#include "engraver.hh" -#include "musical-request.hh" -#include "score-element.hh" -#include "item.hh" -#include "lookup.hh" -#include "lily-guile.hh" -#include "note-head.hh" -#include "stem.hh" -#include "side-position-interface.hh" -#include "staff-symbol-referencer.hh" - - -/* - TODO: - sostenuto - una-chorda / tre-corde - */ - - -/* - Urg. - This is almost text - Problem is: - * we have no kerning - * symbols are at wrong place in font -*/ - -class Sustain_pedal : public Item -{ -public: - VIRTUAL_COPY_CONS (Score_element); - -protected: - virtual Molecule do_brew_molecule () const; - virtual void after_line_breaking (); -}; - -void -Sustain_pedal::after_line_breaking () -{ - Side_position_interface i (this); - Direction d = i.get_direction (); - i.set_direction (d); -} - -Molecule -Sustain_pedal::do_brew_molecule () const -{ - Molecule mol; - SCM glyph = get_elt_property ("glyph"); - if (glyph == SCM_UNDEFINED) - return mol; - String text = ly_scm2string (glyph); - - for (int i = 0; i < text.length_i (); i++) - { - // leuke koor dump door tiepo, snapnie helemaal: - //String idx = ("pedal-") + text[i]; - // urg, Byte* ?? - // braak: waarom vindt String het zo moeilijk om - // String + char te doen? - //String idx = "pedal-" + String (&text.byte_C ()[i], 1); - String idx = String ("pedal-") + String (&text.byte_C ()[i], 1); - Molecule m = lookup_l ()->afm_find (idx); - if (m.empty_b ()) - continue; - Real kern = 0; - if (i) - { - SCM s = scm_eval (gh_list (ly_symbol2scm ("pedal-kerning"), - ly_str02scm (String (&text.byte_C ()[i - 1], 1).ch_C ()), - ly_str02scm (String (&text.byte_C ()[i], 1).ch_C ()), - SCM_UNDEFINED)); - if (gh_number_p (s)) - { - Staff_symbol_referencer_interface st (this); - Real staff_space = st.staff_space (); - kern = gh_scm2double (s) * staff_space; - } - } - mol.add_at_edge (X_AXIS, RIGHT, m, kern); - } - - return mol; -} - -/** - engrave Piano pedals - */ -class Piano_pedal_engraver : public Engraver -{ -public: - VIRTUAL_COPY_CONS (Translator); - Piano_pedal_engraver (); - -protected: - virtual bool do_try_music (Music*); - virtual void do_process_music (); - virtual void do_pre_move_processing (); - virtual void do_post_move_processing (); - virtual void acknowledge_element (Score_element_info); - -private: - Span_req* sustain_start_req_l_; - Drul_array sustain_req_l_drul_; - Sustain_pedal* sustain_p_; -}; - -ADD_THIS_TRANSLATOR(Piano_pedal_engraver); - -Piano_pedal_engraver::Piano_pedal_engraver () -{ - sustain_p_ = 0; - sustain_req_l_drul_[START] = 0; - sustain_req_l_drul_[STOP] = 0; - sustain_start_req_l_ = 0; -} - -/* - Urg: Code dup - I'm a script - */ -void -Piano_pedal_engraver::acknowledge_element (Score_element_info i) -{ - if (sustain_p_) - { - if (Note_head* n = dynamic_cast (i.elem_l_)) - { - Side_position_interface st (sustain_p_); - st.add_support (n); - if (st.get_axis( ) == X_AXIS - && !sustain_p_->parent_l (Y_AXIS)) - sustain_p_->set_parent (n, Y_AXIS); - } - if (Stem* s = dynamic_cast (i.elem_l_)) - { - Side_position_interface st (sustain_p_); - st.add_support (s); - } - } -} - -bool -Piano_pedal_engraver::do_try_music (Music *m) -{ - if (Span_req * s = dynamic_cast(m)) - { - if (s->span_type_str_ == "sustain") - { - sustain_req_l_drul_[s->span_dir_] = s; - return true; - } - } - return false; -} - -void -Piano_pedal_engraver::do_process_music () -{ - SCM s = SCM_UNDEFINED; - if (sustain_req_l_drul_[STOP] && sustain_req_l_drul_[START]) - { - if (!sustain_start_req_l_) - { - sustain_req_l_drul_[STOP]->warning (_ ("can't find start of piano_pedal")); - } - else - { - s = get_property ("stopStartSustain"); - if (!gh_string_p (s)) - s = ly_str02scm ("*Ped."); - } - sustain_start_req_l_ = sustain_req_l_drul_[START]; - } - else if (sustain_req_l_drul_[STOP]) - { - if (!sustain_start_req_l_) - { - sustain_req_l_drul_[STOP]->warning (_ ("can't find start of piano_pedal")); - } - else - { - s = get_property ("stopSustain"); - if (!gh_string_p (s)) - s = ly_str02scm ("*"); - } - sustain_start_req_l_ = 0; - } - else if (sustain_req_l_drul_[START]) - { - sustain_start_req_l_ = sustain_req_l_drul_[START]; - s = get_property ("startSustain"); - if (!gh_string_p (s)) - s = ly_str02scm ("Ped."); - } - if (s != SCM_UNDEFINED) - { - sustain_p_ = new Sustain_pedal; - sustain_p_->set_elt_property ("glyph", s); - - - Side_position_interface si (sustain_p_); - si.set_axis (Y_AXIS); - - /* Hmm, - If set to empty, it can't be centred - Howto centre non-fat text? - sustain_p_->set_empty (X_AXIS); - */ - sustain_p_->set_elt_property ("self-alignment-X", gh_int2scm (0)); - sustain_p_->add_offset_callback (Side_position_interface::aligned_on_self, X_AXIS); - sustain_p_->add_offset_callback (Side_position_interface::centered_on_parent, X_AXIS); - announce_element (Score_element_info (sustain_p_, - sustain_req_l_drul_[START] - ? sustain_req_l_drul_[START] - : sustain_req_l_drul_[STOP])); - } -} - -void -Piano_pedal_engraver::do_pre_move_processing () -{ - if (sustain_p_) - { - side_position (sustain_p_).add_staff_support (); - typeset_element (sustain_p_); - } - sustain_p_ = 0; -} - -void -Piano_pedal_engraver::do_post_move_processing () -{ - sustain_req_l_drul_[STOP] = 0; - sustain_req_l_drul_[START] = 0; -} diff --git a/lily/piano-pedal-performer.cc b/lily/piano-pedal-performer.cc index 444028b8de..f5cfd90895 100644 --- a/lily/piano-pedal-performer.cc +++ b/lily/piano-pedal-performer.cc @@ -15,7 +15,7 @@ /* TODO: sostenuto - una-chorda / tre-corde + una-chorda ? */ /** @@ -36,27 +36,27 @@ protected: private: Link_array audio_p_arr_; - Span_req* sustain_start_req_l_; - Drul_array sustain_req_l_drul_; + Span_req* span_start_req_l_; + Drul_array span_req_l_drul_; }; ADD_THIS_TRANSLATOR (Piano_pedal_performer); Piano_pedal_performer::Piano_pedal_performer () { - sustain_req_l_drul_[START] = 0; - sustain_req_l_drul_[STOP] = 0; - sustain_start_req_l_ = 0; + span_req_l_drul_[START] = 0; + span_req_l_drul_[STOP] = 0; + span_start_req_l_ = 0; } void Piano_pedal_performer::do_process_music () { - if (sustain_req_l_drul_[STOP]) + if (span_req_l_drul_[STOP]) { - if (!sustain_start_req_l_) + if (!span_start_req_l_) { - sustain_req_l_drul_[STOP]->warning (_ ("can't find start of piano_pedal")); + span_req_l_drul_[STOP]->warning (_ ("can't find start of piano_pedal")); } else { @@ -64,12 +64,12 @@ Piano_pedal_performer::do_process_music () p->type_b_ = false; audio_p_arr_.push (p); } - sustain_start_req_l_ = 0; + span_start_req_l_ = 0; } - if (sustain_req_l_drul_[START]) + if (span_req_l_drul_[START]) { - sustain_start_req_l_ = sustain_req_l_drul_[START]; + span_start_req_l_ = span_req_l_drul_[START]; Audio_piano_pedal* p = new Audio_piano_pedal; p->type_b_ = true; audio_p_arr_.push (p); @@ -87,8 +87,8 @@ Piano_pedal_performer::do_pre_move_processing () void Piano_pedal_performer::do_post_move_processing () { - sustain_req_l_drul_[STOP] = 0; - sustain_req_l_drul_[START] = 0; + span_req_l_drul_[STOP] = 0; + span_req_l_drul_[START] = 0; } bool @@ -96,9 +96,9 @@ Piano_pedal_performer::do_try_music (Music* r) { if (Span_req * s = dynamic_cast(r)) { - if (s->span_type_str_ == "sustain") + if (s-> span_type_str_ == "sustain") { - sustain_req_l_drul_[s->span_dir_] = s; + span_req_l_drul_[s->span_dir_] = s; return true; } } diff --git a/lily/rest-collision.cc b/lily/rest-collision.cc index f551d0d253..df842f8f33 100644 --- a/lily/rest-collision.cc +++ b/lily/rest-collision.cc @@ -193,7 +193,7 @@ Rest_collision::Rest_collision() set_elt_property ("rests", SCM_EOL); set_elt_property ("notes", SCM_EOL); set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } diff --git a/lily/score-element.cc b/lily/score-element.cc index 868cc82aff..adede15101 100644 --- a/lily/score-element.cc +++ b/lily/score-element.cc @@ -260,10 +260,9 @@ Score_element::calculate_dependencies (int final, int busy, void Score_element::output_processing () { - if (to_boolean (get_elt_property ("transparent"))) + if (to_boolean (get_elt_property ("transparent"))) return; - Molecule m (do_brew_molecule ()); Offset o (relative_coordinate (0, X_AXIS), relative_coordinate (0, Y_AXIS)); @@ -275,7 +274,7 @@ Score_element::output_processing () o[Y_AXIS] += il * gh_scm2double (gh_cdr (s)); } - pscore_l_->outputter_l_->output_molecule (m.expr_, o, classname(this)); + line_l ()->output_molecule (m.expr_, o); } /* @@ -499,12 +498,6 @@ Score_element::common_refpoint (Score_element const* s, Axis a) const return dim ? dim->element_l () : 0; } -void -Score_element::set_empty (Axis a) -{ - dim_cache_[a]->extent_callback_l_ =0; -} - bool Score_element::empty_b (Axis a)const { @@ -523,7 +516,6 @@ Score_element::extent (Axis a) const SCM extra = get_elt_property (a == X_AXIS ? "extra-extent-X" : "extra-extent-Y"); - /* signs ? */ @@ -541,7 +533,6 @@ Score_element::extent (Axis a) const { ext.unite (Interval (s * gh_scm2double (gh_car (extra)), s * gh_scm2double (gh_cdr (extra)))); - } return ext; @@ -590,6 +581,13 @@ Score_element::has_offset_callback_b (Offset_cache_callback cb, Axis a)const return false; } +void +Score_element::set_extent_callback (Dim_cache_callback dc, Axis a) +{ + dim_cache_[a]->extent_callback_l_ = dc ; +} + + void Score_element::set_parent (Score_element *g, Axis a) { diff --git a/lily/score-engraver.cc b/lily/score-engraver.cc index bb6f642427..7b7dbe428a 100644 --- a/lily/score-engraver.cc +++ b/lily/score-engraver.cc @@ -92,7 +92,7 @@ void Score_engraver::announce_element (Score_element_info info) { announce_info_arr_.push (info); - pscore_p_->typeset_element (info.elem_l_); + pscore_p_->line_l_->typeset_element (info.elem_l_); } /* All elements are propagated to the top upon announcement. If @@ -185,8 +185,8 @@ Score_engraver::set_columns (Paper_column *new_command_l, { if ((*current[i])->linked_b()) { - pscore_p_->add_column ((*current[i])); scoreline_l_->add_column ((*current[i])); + } else { diff --git a/lily/script.cc b/lily/script.cc index 879881583a..3e78d6acd8 100644 --- a/lily/script.cc +++ b/lily/script.cc @@ -29,7 +29,7 @@ Script::get_molecule(Direction d) const } else if (key == ly_symbol2scm ("accordion")) { - return lookup_l ()->accordion (s, paper_l()->get_var("interline")); + return lookup_l ()->accordion (gh_cdr (s), paper_l()->get_var("interline")); } else assert (false); diff --git a/lily/single-malt-grouping-item.cc b/lily/single-malt-grouping-item.cc index 54cce29996..b03d4c59be 100644 --- a/lily/single-malt-grouping-item.cc +++ b/lily/single-malt-grouping-item.cc @@ -17,8 +17,8 @@ Single_malt_grouping_item ::Single_malt_grouping_item() set_elt_property ("elements", SCM_EOL); // this is weird! , but needed! - set_empty (X_AXIS); - set_empty ( Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } diff --git a/lily/slur.cc b/lily/slur.cc index a5e4140275..9b16216728 100644 --- a/lily/slur.cc +++ b/lily/slur.cc @@ -371,8 +371,8 @@ Slur::set_extremities () if (!encompass_arr.size ()) { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); return; } @@ -546,6 +546,7 @@ Slur::get_encompass_offset_arr () const Group_interface__extract_elements (this, (Note_column*)0, "note-columns"); Array offset_arr; + #if 0 /* check non-disturbed slur @@ -603,9 +604,9 @@ Slur::get_rods () const { Array a; Rod r; + r.item_l_drul_[LEFT] = get_bound (LEFT); r.item_l_drul_[RIGHT] = get_bound (RIGHT); - r.distance_f_ = paper_l ()->get_var ("slur_x_minimum"); a.push (r); @@ -683,6 +684,14 @@ Slur::get_curve () const { Bezier b; int i = 0; + + if (!directional_element (this).get ()) + ((Slur*)this)->set_extremities (); + + if (!gh_pair_p (get_elt_property ("control-points"))) + ((Slur*)this)->set_control_points (); + + for (SCM s= get_elt_property ("control-points"); s != SCM_EOL; s = gh_cdr (s)) { b.control_[i] = ly_scm2offset (gh_car (s)); diff --git a/lily/spacing-spanner.cc b/lily/spacing-spanner.cc index edd41f5ae6..712ff4dd4d 100644 --- a/lily/spacing-spanner.cc +++ b/lily/spacing-spanner.cc @@ -18,8 +18,8 @@ Spacing_spanner::Spacing_spanner () { - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); set_elt_property ("transparent", SCM_BOOL_T); } diff --git a/lily/span-bar-engraver.cc b/lily/span-bar-engraver.cc index e8d771e263..10d2c345a8 100644 --- a/lily/span-bar-engraver.cc +++ b/lily/span-bar-engraver.cc @@ -60,6 +60,7 @@ Span_bar_engraver::acknowledge_element (Score_element_info i) { spanbar_p_ = get_span_bar_p(); spanbar_p_->set_parent (bar_l_arr_[0], Y_AXIS); + spanbar_p_->set_parent (bar_l_arr_[0], X_AXIS); /* UGH. UGH UUHGK GUHG G diff --git a/lily/span-bar.cc b/lily/span-bar.cc index 494a90b2ff..13e2491f97 100644 --- a/lily/span-bar.cc +++ b/lily/span-bar.cc @@ -59,38 +59,38 @@ void Span_bar::evaluate_empty () { if (!gh_pair_p (get_elt_property ("elements"))) - { - set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); - } + { + set_elt_property ("transparent", SCM_BOOL_T); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); + } SCM gl = get_elt_property ("glyph"); if (!gh_string_p (gl)) { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } else { String type_str = ly_scm2string (gl); if (type_str == "|:") - { - type_str= ".|"; - } - else if (type_str== ":|") - { - type_str= "|."; - } - else if (type_str== ":|:") - { - type_str= ".|."; - } + { + type_str= ".|"; + } + else if (type_str== ":|") + { + type_str= "|."; + } + else if (type_str== ":|:") + { + type_str= ".|."; + } } /* uhh. should do something with type_str ?!! - */ + */ } Interval @@ -103,19 +103,22 @@ Span_bar::get_spanned_interval () const Real Span_bar::get_bar_size () const { - Interval iv (get_spanned_interval ()); - if (iv.empty_b ()) - { - programming_error("Huh? My children deflated (FIXME)"); - iv = Interval (0,0); - } - return iv.length (); + Interval iv (get_spanned_interval ()); + if (iv.empty_b ()) + { + programming_error("Huh? My children deflated (FIXME)"); + iv = Interval (0,0); + } + return iv.length (); } Span_bar::Span_bar () { group (this).set_interface (); dim_cache_[X_AXIS]->set_extent_callback (width_callback); - dim_cache_[Y_AXIS]->set_extent_callback (Axis_group_interface::group_extent_callback); + + // dim_cache_[Y_AXIS]->set_extent_callback (Axis_group_interface::group_extent_callback); + + dim_cache_[Y_AXIS]->set_extent_callback (0); } diff --git a/lily/span-score-bar-engraver.cc b/lily/span-score-bar-engraver.cc index e69de29bb2..8b13789179 100644 --- a/lily/span-score-bar-engraver.cc +++ b/lily/span-score-bar-engraver.cc @@ -0,0 +1 @@ + diff --git a/lily/spanner.cc b/lily/spanner.cc index 7b6a4d0f08..9a8ed71038 100644 --- a/lily/spanner.cc +++ b/lily/spanner.cc @@ -64,19 +64,22 @@ Spanner::do_break_processing () do { Item* bound = left->find_broken_piece (d); - Spanner * span_p = dynamic_cast( clone ()); - span_p->set_bound (LEFT, bound); - span_p->set_bound (RIGHT, bound); + if (bound->line_l ()) + { + Spanner * span_p = dynamic_cast( clone ()); + span_p->set_bound (LEFT, bound); + span_p->set_bound (RIGHT, bound); - assert (span_p->line_l ()); - pscore_l_->typeset_element (span_p); - broken_into_l_arr_.push (span_p); + assert (span_p->line_l ()); + span_p->line_l ()->typeset_element (span_p); + broken_into_l_arr_.push (span_p); + } } while ((flip(&d))!= LEFT); } else { - Link_array break_points = pscore_l_->broken_col_range (left,right); + Link_array break_points = pscore_l_->line_l_->broken_col_range (left,right); break_points.insert (left,0); break_points.push (right); @@ -100,8 +103,12 @@ Spanner::do_break_processing () Spanner *span_p = dynamic_cast(clone ()); span_p->set_bound(LEFT,bounds[LEFT]); span_p->set_bound(RIGHT,bounds[RIGHT]); - - pscore_l_->typeset_element (span_p); + + + assert (bounds[LEFT]->line_l () == + bounds[RIGHT]->line_l ()); + + bounds[LEFT]->line_l ()->typeset_element (span_p); broken_into_l_arr_.push (span_p); } } diff --git a/lily/stem.cc b/lily/stem.cc index 54f9c0e9cd..22344c6099 100644 --- a/lily/stem.cc +++ b/lily/stem.cc @@ -385,8 +385,8 @@ Stem::before_line_breaking () if (invisible_b ()) { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (Y_AXIS); - set_empty (X_AXIS); + set_extent_callback (0, Y_AXIS); + set_extent_callback (0, X_AXIS); } set_spacing_hints (); diff --git a/lily/system-start-delimiter.cc b/lily/system-start-delimiter.cc index bc94277443..130a6328fc 100644 --- a/lily/system-start-delimiter.cc +++ b/lily/system-start-delimiter.cc @@ -41,7 +41,8 @@ System_start_delimiter::staff_bracket (Real height) const System_start_delimiter::System_start_delimiter () { - set_empty (Y_AXIS); + set_extent_callback (0, Y_AXIS); + Group_interface (this).set_interface(); } Molecule @@ -64,8 +65,8 @@ System_start_delimiter::do_brew_molecule ()const { System_start_delimiter * me = (System_start_delimiter*)this; me->set_elt_property ("transparent", SCM_BOOL_T); - me->set_empty (X_AXIS); - me->set_empty (Y_AXIS); + me->set_extent_callback (0, X_AXIS); + me->set_extent_callback (0, Y_AXIS); return m; } diff --git a/lily/text-engraver.cc b/lily/text-engraver.cc index 97b7a18a24..0f222daab1 100644 --- a/lily/text-engraver.cc +++ b/lily/text-engraver.cc @@ -104,7 +104,7 @@ Text_engraver::do_process_music () SCM empty = get_property ("textNonEmpty"); if (!to_boolean (empty)) - text->set_empty (X_AXIS); + text->set_extent_callback (0, X_AXIS); announce_element (Score_element_info (text, r)); texts_.push (text); diff --git a/lily/tie-column.cc b/lily/tie-column.cc index 78d6b487c3..78f398d1e0 100644 --- a/lily/tie-column.cc +++ b/lily/tie-column.cc @@ -16,8 +16,8 @@ Tie_column::Tie_column () { set_elt_property ("ties", SCM_EOL); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); set_elt_property ("transparent", SCM_BOOL_T); } diff --git a/lily/tie.cc b/lily/tie.cc index 6735059d29..2b0e032b7c 100644 --- a/lily/tie.cc +++ b/lily/tie.cc @@ -98,8 +98,8 @@ Tie::after_line_breaking () { programming_error ("Tie without heads."); set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); return; } diff --git a/lily/tuplet-spanner.cc b/lily/tuplet-spanner.cc index 1669899c18..bfe7fb2c2d 100644 --- a/lily/tuplet-spanner.cc +++ b/lily/tuplet-spanner.cc @@ -25,7 +25,10 @@ Tuplet_spanner::Tuplet_spanner () { set_elt_property ("beams", SCM_EOL); - set_elt_property ("columns", SCM_EOL); + set_elt_property ("columns", SCM_EOL); + + // ugh. + set_elt_property ("delta-y", gh_int2scm (0)); } /* @@ -197,11 +200,11 @@ Tuplet_spanner::after_line_breaking () if (!column_arr.size ()) { set_elt_property ("transparent", SCM_BOOL_T); - set_empty (X_AXIS); - set_empty (Y_AXIS); + set_extent_callback (0, X_AXIS); + set_extent_callback (0, Y_AXIS); } - Direction d = directional_element (this).get (); + Direction d = directional_element (this).get (); if (!d) { d = get_default_dir (); @@ -210,8 +213,7 @@ Tuplet_spanner::after_line_breaking () } Real dy, offset; -calc_position_and_height (&offset,&dy); - // calc_position (&offset, dy); + calc_position_and_height (&offset,&dy); set_elt_property ("delta-y", gh_double2scm (dy)); diff --git a/lily/vertical-align-engraver.cc b/lily/vertical-align-engraver.cc index d16bdd161b..9718a8a53b 100644 --- a/lily/vertical-align-engraver.cc +++ b/lily/vertical-align-engraver.cc @@ -86,21 +86,6 @@ Vertical_align_engraver::acknowledge_element (Score_element_info i) { Align_interface(valign_p_).add_element (i.elem_l_); } - -#if 1 // - /* - should junk this, but (crossstaff?) Beam doesn't have a clue yet - ... */ - - /* - Add make sure spanbars (whose size depends on vertical alignment) - depend on the vertical alignment element - */ - else if (dynamic_cast(i.elem_l_) && i.origin_trans_l_arr (this).size ()) - { - i.elem_l_->add_dependency (valign_p_); - } -#endif } diff --git a/ly/engraver.ly b/ly/engraver.ly index 2859461903..68a8c9df2e 100644 --- a/ly/engraver.ly +++ b/ly/engraver.ly @@ -144,7 +144,6 @@ VoiceContext = \translator { \consists "Melisma_engraver"; textScriptPadding = #3.0 \consists "Text_engraver"; - \consists "Piano_pedal_engraver"; \consists "Script_engraver"; \consists "Script_column_engraver"; \consists "Rhythmic_column_engraver"; diff --git a/make/out/lilypond.lsm b/make/out/lilypond.lsm index ae9f3ce4f1..a21fbd7c0b 100644 --- a/make/out/lilypond.lsm +++ b/make/out/lilypond.lsm @@ -1,15 +1,15 @@ Begin3 Title: LilyPond -Version: 1.3.43 -Entered-date: 10APR00 +Version: 1.3.44 +Entered-date: 12APR00 Description: Keywords: music notation typesetting midi fonts engraving Author: hanwen@cs.uu.nl (Han-Wen Nienhuys) janneke@gnu.org (Jan Nieuwenhuizen) Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys) Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert - 1000k lilypond-1.3.43.tar.gz + 1000k lilypond-1.3.44.tar.gz Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/ - 1000k lilypond-1.3.43.tar.gz + 1000k lilypond-1.3.44.tar.gz Copying-policy: GPL End diff --git a/make/out/lilypond.spec b/make/out/lilypond.spec index 1cc5b17848..2fe5d2fcb8 100644 --- a/make/out/lilypond.spec +++ b/make/out/lilypond.spec @@ -1,9 +1,9 @@ Name: lilypond -Version: 1.3.43 +Version: 1.3.44 Release: 1 Copyright: GPL Group: Applications/Publishing -Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.43.tar.gz +Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.44.tar.gz Summary: A program for printing sheet music. URL: http://www.cs.uu.nl/~hanwen/lilypond # Icon: lilypond-icon.gif diff --git a/mf/GNUmakefile b/mf/GNUmakefile index 2cbdcded23..4549535290 100644 --- a/mf/GNUmakefile +++ b/mf/GNUmakefile @@ -3,18 +3,14 @@ depth = .. STEPMAKE_TEMPLATES=metafont metapost asciifont install install-out -include $(depth)/make/stepmake.make AF_FILES = $(wildcard *.af) EXTRA_DIST_FILES += README feta.tex -# don't try to make fonts from test files -TEST_FILES = $(wildcard *test*.mf) -FET_FILES = $(filter-out $(TEST_FILES),$(wildcard feta[0-9]*.mf)) -FONT_FILES = $(filter-out $(TEST_FILES),$(wildcard feta*[0-9].mf)) - -XPM_FONTS = feta20 feta-nummer10 feta-braces20 +FET_FILES = $(wildcard feta[0-9]*.mf) +FONT_FILES = $(wildcard feta*[0-9].mf) +XPM_FONTS = feta20 LOG_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.log)) TEXTABLES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.tex)) @@ -22,11 +18,6 @@ AFM_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.afm) $(AF_FILES:.af=.afm)) TFM_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.tfm)) PFA_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.pfa)) -foo: - @echo fof: $(FONT_FILES) - @echo fef: $(FET_FILES) - @echo tfm: $(TFM_FILES) - # Make tfm files first, log files last, # so that normally log files aren't made twice ALL_GEN_FILES= $(TFM_FILES) $(TEXTABLES) $(AFM_FILES) $(TFM_FILES) $(PFA_FILES) $(LOG_FILES) @@ -51,7 +42,9 @@ INSTALLATION_OUT_FILES3=$(TFM_FILES) INSTALLATION_OUT_DIR4=$(datadir)/pfa INSTALLATION_OUT_FILES4=$(PFA_FILES) + export MFINPUTS:=.:$(MFINPUTS) +include $(depth)/make/stepmake.make default: $(ALL_GEN_FILES) diff --git a/mf/feta-accordion.mf b/mf/feta-accordion.mf index c06618dc37..e08c90bf00 100644 --- a/mf/feta-accordion.mf +++ b/mf/feta-accordion.mf @@ -1,7 +1,5 @@ % -*- Fundamental -*- -fet_begingroup("accordion") - accreg_dot_size# := .5staff_space#; accreg_linethickness# := 1.3stafflinethickness#; @@ -152,28 +150,16 @@ def def_some_vars = enddef; def print_penpos (suffix $)= - message "z"&str $ &"l = ("&decimal x.$.l&", "&decimal y.$.l&"); z"&str $ &"r = ("&decimal x.$.r&", "&decimal y.$.r&");"; + message str $ &": ("&decimal x.$.l&", "&decimal y.$.l&"); ("&decimal x.$.r&", "&decimal y.$.r&");"; enddef; -%fet_beginchar("accTEST", "accTEST", "accTEST") -% set_char_box(.4staffsize#, .4staffsize#, 0, 2.4staff_space#); -% def_some_vars; -% penlabels(10, 11, 12, 13, 14); -% penstroke z10e--z11e{right}..z12e..z13e{left}--z14e; -%fet_endchar; - fet_beginchar("accSB", "accSB", "accSB") set_char_box(.4staffsize#, .4staffsize#, 0, 2.4staff_space#); def_some_vars; def_B(.35width, .7height); - %print_penpos (10); - %print_penpos (11); - %print_penpos (12); - %print_penpos (13); - %print_penpos (14); - penlabels(10, 11, 12, 13, 14); penstroke z10e--z11e{right}..z12e..z13e{left}--z14e; + penlabels(10, 11, 12, 13, 14); penstroke z13e{right}..z15e{up}..z16e{left}--z17e; penstroke z18e--z19e; @@ -297,5 +283,3 @@ fet_beginchar("accOldEES", "accOldEES", "accOldEES") currentpicture := currentpicture shifted (-w/2, -shy*h); currentpicture := currentpicture shifted (0, r); fet_endchar; - -fet_endgroup("accordion") diff --git a/mf/feta-generic.mf b/mf/feta-generic.mf index 4d01e53bf7..94c8c67611 100644 --- a/mf/feta-generic.mf +++ b/mf/feta-generic.mf @@ -22,7 +22,8 @@ make_pen_stack; make_picture_stack; input feta-params; -font_x_height staff_space#; + + if test = 0: input feta-eindelijk; @@ -33,17 +34,13 @@ if test = 0: input feta-banier; input feta-klef; input feta-timesig; - input feta-pendaal; - input feta-accordion; else: % input feta-bolletjes; % input feta-banier; % input feta-eindelijk; % input feta-klef; % input feta-toevallig; -% input feta-schrift; + input feta-schrift; % input feta-haak; % input feta-timesig; - input feta-pendaal; -% input feta-accordion; fi diff --git a/mf/feta-macros.mf b/mf/feta-macros.mf index 814c82a16d..47e415c70d 100644 --- a/mf/feta-macros.mf +++ b/mf/feta-macros.mf @@ -214,11 +214,7 @@ def draw_bulb(expr turndir, zl, zr, bulb_rad, radius_factor)= save rad, ang; ang = angle(zr-zl); - - % don't get near infinity - %z0 = zr + bulb_rad * (zl-zr)/length(zr -zl); - z0 = zr + bulb_rad /length(zr -zl) * (zl-zr); - + z0 = zr + bulb_rad * (zl-zr)/length(zr -zl); rad = bulb_rad; z1 = z0 + radius_factor* rad * dir(ang + turndir* 100); diff --git a/mf/feta-nummer-generic.mf b/mf/feta-nummer-generic.mf index c171f9b42d..cdd56736c3 100644 --- a/mf/feta-nummer-generic.mf +++ b/mf/feta-nummer-generic.mf @@ -5,16 +5,14 @@ test:=0; input feta-autometric; input feta-macros; -input feta-params; -%blot_diameter# = .4pt#; +blot_diameter# = .4pt#; fet_beginfont("feta-nummer", size); mode_setup; height#:=designsize; -font_x_height height#; save b,h; 4h+b=1.15; 10h+b=1; fatten:=designsize*h+b; diff --git a/mf/feta-nummer.mf b/mf/feta-nummer.mf index a7664589ef..b66cc177a5 100644 --- a/mf/feta-nummer.mf +++ b/mf/feta-nummer.mf @@ -6,7 +6,7 @@ % % (c) 1997--2000 Jan Nieuwenhuizen -fet_begingroup("number") +fet_begingroup("nummer") define_pixels(height,thick,thick,thin,hair,flare); define_pixels(foot_top,foot_width); @@ -85,8 +85,7 @@ save dot_diam; dot_diam# = 7/8flare#; define_pixels(dot_diam); - -code := 43; % , = 44 +code := 43; % urg fet_beginchar("Numeral comma", ",", "comma") @@ -122,7 +121,7 @@ fet_endchar; % skip slash -code := 47; % 0 = 48 +code := 47; fet_beginchar("Numeral 0", "0", "zero") % set_char_box(0, 4/5height#*widen, 0, height#); @@ -417,5 +416,5 @@ fet_beginchar("Numeral 9", "9", "nine") currentpicture := currentpicture shifted (w,h); fet_endchar; -fet_endgroup("number") +fet_endgroup("nummer") diff --git a/mf/feta-params.mf b/mf/feta-params.mf index 702604002a..21b365958f 100644 --- a/mf/feta-params.mf +++ b/mf/feta-params.mf @@ -4,7 +4,7 @@ stafflines = 5; staff_space#:=staffsize#/(stafflines-1); % URG! -%font_x_height staff_space# ; +font_x_height staff_space# ; % % [D.K.Roush & J.S.Gourlay] say this should be 0.072 @@ -39,10 +39,4 @@ overdone_heads = 0.0; % numeric blot_diameter; blot_diameter# = .4pt#; -if (blot_diameter# * hppp) < 1: - blot_diameter# := 1/hppp; -fi -if (blot_diameter# * vppp) < 1: - blot_diameter# := 1/vppp; -fi define_pixels(blot_diameter); diff --git a/mf/feta-pendaal.mf b/mf/feta-pendaal.mf deleted file mode 100644 index 2cdbddc0a0..0000000000 --- a/mf/feta-pendaal.mf +++ /dev/null @@ -1,262 +0,0 @@ -% feta-pendaal.mf -- piano pedal markings -% -% part of LilyPond's pretty-but-neat music font -% -% source file of the Feta (not the Font-En-Tja) music font -% -% (c) 2000 Jan Nieuwenhuizen -% -% Voor Cup - -% Kerning -% -% Pe = -0.034 pedalh == -0.07 staff-space -% ed = -0.27 pedalh == -0.53 staff-space - -fet_begingroup("pedal") - -pedalpha = 40; -pedbeta = 25; - -penh#=0.7stafflinethickness#; -penw#=4penh#; -%penw#=penh#; -define_pixels (penh,penw); - -pedalh# = 2staff_space#; -pedalbh# = 4/7pedalh#; -define_pixels (pedalh,pedalbh); - -% code values for own pedal font commented out -% code := 41; % * = 42 - -def draw_asterisk_bulb (expr w, h, i) = - begingroup; - clearxy; - save bulb, p; - path p; - bulb = 4/3penw; - - pickup pencircle scaled penh; - penpos 1 (bulb, 180); - penpos 2 (bulb, 0); - penpos 3 (penh, 0); - penpos 4 (penw, 0); - - z0 = (1/2w, h - 1/2w); - z1 = (1/2w, h-1/2bulb); - z2 = z1; - z3 = (x1, y1-penw); - z4 = (x1, y3-2penh); - - penlabels (1,2,3,4); -% penstroke z1e{up}..z2e{down}..z3e{down}..z4e; - p = z1l{up}..z2l{down}..z3l{down}..z4l..z4r - ..z3r{up}..z2r{up}..z1r{down}..cycle; - p := p rotatedaround (z0, 360/8i); - fill p; - endgroup; - enddef; - -fet_beginchar("Pedal asterisk", "*", "pedal-asterisk") - set_char_box(0, 7/9pedalh#, 0, pedalh#); - z0 = (1/2w, h - 1/2w); - for i = 0 upto 7: - draw_asterisk_bulb (w, h, i); - pickup pencircle scaled penw; - undraw z0; - endfor -fet_endchar; - -% skip + and , - -% code := 44; % - = 45 - -fet_beginchar("Pedal dash", "-", "pedal-dash") - set_char_box(0, 3penw#, 0, pedalbh#); - pickup pencircle scaled penh; - - penpos 1 (penw, 60); - penpos 2 (penw, 60); - z1l = (0, 2/3h - 1/2penw); - z2r = (w, y1l + 1.2penw); - penlabels (1,2); - penstroke z1e{dir 40}..tension 1.2 ..z2e{dir 40}; -fet_endchar; - -fet_beginchar("Pedal dot", ".", "pedal-dot") - set_char_box(0, penw#, 0, penw#); - pickup pencircle scaled penw; - draw (1/2penw,1/2penw); -fet_endchar; - -% code := 79; % P = 80 - -fet_beginchar("Pedal P", "P", "pedal-P") - set_char_box(0, 5/6pedalh#, 0, pedalh#); - pickup pencircle scaled penh; - - penpos 1 (penh, 0); - penpos 2 (penw, 55); - penpos 3 (penw, pedalpha); - penpos 4 (1.2penh, -pedalpha); - penpos 5 (penh, -pedalpha); - penpos 6 (penh, 180-pedalpha); - penpos 7 (2penh, 180-pedalpha); - penpos 8 (penh, 90); - penpos 9 (4/3penw,50); - penpos 10 (1.4penw,50); - penpos 11 (penh, 90+pedalpha); - - z1r = (0.6w, h); - x2l = x1l - penw; - y2 = 0.7h; - x3r = x2l + 2penw; - y3r = 0.4h; - z4l = z5r + 1/4(z3r - z5r); - x5 = 1/4w; - y5r = 0; - z6 = z5; - z7 = z6r + 1/3(z8r - z6r); - z8r = z5r + 3/5(z3r - z5r); - x9l = x10l - penh; - y9l = 1/4penh; - x10l = w - tand (90-pedalpha)*y11l; - y10l = 1/4penh; - x11l = w; - y11 = 1/5h; - - penlabels (1,2,3,4,5,6,7,8,9,10,11); - penstroke z1e..tension 2.5 .. z2e.. tension 1.5 .. z3e ..tension 2.5 - ..z4e..tension 1.5 - ..z5e..z6e..tension 1.5 - ..z7e..tension 1.5 - ..z8e{right}..tension 1.5 - ..z9e{dir -pedalpha} - ..z10e..tension 2.5..z11e; - - penpos 12 (penh, 0); - penpos 13 (penw, -90-pedbeta); - penpos 14 (penh, 90); - penpos 15 (penw, -90+pedbeta); - penpos 16 (penh, 180+pedbeta); - z12 = (5/9x1, y2); - z13l = (1/2x12r, y15r); - z14r = z1r; - z15l = (1/2[x16,w], y2l + 0.5penw); - x16 = 1/4[x1, w]; - y16r = y2r; - - penlabels (12,13,14,15,16); - penstroke z12e{down}..tension 1.1 - ..z13e{dir (180-pedbeta)}..tension 1.1 - ..z14e{right}..tension 1.1 - ..z15e{dir (180+pedbeta)}..tension 1.1 - ..z16e{dir (90+pedbeta)}; -fet_endchar; - - -% code := 99; % d = 100 - -if 0 = 1: - -fet_beginchar("Pedal d", "d", "pedal-d") - set_char_box(2/9pedalh#, 4/9pedalh#, 0, 7/8pedalh#); - pickup pencircle scaled penh; - - penpos 1 (penh, -70); - penpos 2 (3/4penw, 0); - penpos 3 (2penh, 90); - penpos 4 (penw, 190); - penpos 5 (penh, -10-90); - - z1l = (1/2w, pedalbh); - z2l = (0, 1/2pedalbh); - z3l = (1/2w, 0); - z4 = (w - 1/2penw, 1/2pedalbh + penh); - x5r = -b; - y5l = h; - - penlabels (1,2,3,4,5); - - penstroke z1e{dir (-70-90)}..tension 1.1 - ..z2e{down}..tension 1.1 - ..z3e{right}..tension 1.1 - ..z4e{dir (90+10)}..tension 1.1 - ..z5e{dir (180-10)}; -fet_endchar; - -else: - -fet_beginchar("Pedal d", "d", "pedal-d") - set_char_box(0, 2/3pedalh#, 0, 7/8pedalh#); - pickup pencircle scaled penh; - - penpos 1 (penh, -70); - penpos 2 (3/4penw, 0); - penpos 3 (2penh, 90); - penpos 4 (penw, 190); - penpos 5 (penh, -10-90); - - z1l = (2/3w, pedalbh); - z2l = (1/3w, 1/2pedalbh); - z3l = (x1l, 0); - z4 = (w - 1/2penw, 1/2pedalbh + penh); - x5r = 0; - y5l = h; - - penlabels (1,2,3,4,5); - - penstroke z1e{dir (-70-90)}..tension 1.1 - ..z2e{down}..tension 1.1 - ..z3e{right}..tension 1.1 - ..z4e{dir (90+10)}..tension 1.1 - ..z5e{dir (180-10)}; -fet_endchar; - -fi - -fet_beginchar("Pedal e", "e", "pedal-e") - set_char_box(0, 2/5pedalh#, 0, pedalbh#); - pickup pencircle scaled penh; - - penpos 1 (penh, pedalpha-90); - penpos 2 (penh, pedalpha-90); - penpos 3 (3/5penw, pedalpha); - penpos 4 (1.2penh, 90+pedalpha); - penpos 5 (2/3penw, 180); - penpos 6 (penw, 180+pedalpha); - penpos 7 (2/3penw, -90-20); - penpos 8 (penh, pedalpha-90); - - z1l = (0, 1/5pedalh); - z2 = z1 + dir pedalpha * penw; - z3 = (3/5w, 8/9h); - - z4 = (2/9w, y3); - - x5r = 0; - y5 = y2; - - x6 = 3/8w; - y6r = 1/2penh; - - z7l = (x6l+penh, y6l); - - x8r = w; - y8 = 1/5pedalh; - - penlabels (1,2,3,4,5,6,7,8); - penstroke z1e{dir pedalpha} - ..z2e{dir pedalpha}.. tension 1.1 - %urg - ..z3e..tension 1.05 - ..z4e..tension 1.1 - ..z5e..tension 1.5 - ..z6e{dir -pedalpha}..tension 1.1 - ..z7e.. tension 2.5 - ..z8e; -fet_endchar; - -fet_endgroup("pedal") - diff --git a/mf/feta-schrift.mf b/mf/feta-schrift.mf index 481e378e50..b72653b4ad 100644 --- a/mf/feta-schrift.mf +++ b/mf/feta-schrift.mf @@ -699,6 +699,7 @@ fet_beginchar("Coda", "coda", "coda") fet_endchar; input feta-slag; +input feta-accordion; fet_endgroup("scripts"); diff --git a/mf/feta-test11.mf b/mf/feta-test11.mf deleted file mode 100644 index eaaa862fc5..0000000000 --- a/mf/feta-test11.mf +++ /dev/null @@ -1,21 +0,0 @@ -% feta-test16 -% part of LilyPond's pretty-but-neat music font - -input feta-autometric; -fet_beginfont("feta-test", 23); -staffsize#:=23pt#; -test:=1; - -% smoked cheese -% test := -1; - - -% dem piksels. -%test := 1; - -input feta-generic; - -fet_endfont("feta"); - -end. - diff --git a/mf/feta-test13.mf b/mf/feta-test13.mf index ce1e04cf85..3d2ed3cea2 100644 --- a/mf/feta-test13.mf +++ b/mf/feta-test13.mf @@ -2,8 +2,8 @@ % part of LilyPond's pretty-but-neat music font input feta-autometric; -fet_beginfont("feta-test", 13); -staffsize#:=13pt#; +fet_beginfont("feta-test", 16); +staffsize#:=16pt#; test:=1; % smoked cheese diff --git a/mf/feta-test23.mf b/mf/feta-test23.mf deleted file mode 100644 index e4656d6d26..0000000000 --- a/mf/feta-test23.mf +++ /dev/null @@ -1,22 +0,0 @@ -% feta-test23 -% part of LilyPond's pretty-but-neat music font - - -input feta-autometric; -fet_beginfont("feta-test", 23); -staffsize#:=23pt#; -test:=1; - -% smoked cheese -% test := -1; - - -% dem piksels. -%test := 1; - -input feta-generic; - -fet_endfont("feta"); - -end. - diff --git a/mf/feta-test26.mf b/mf/feta-test26.mf index 212d63fa4a..e51a6ce12a 100644 --- a/mf/feta-test26.mf +++ b/mf/feta-test26.mf @@ -2,7 +2,7 @@ % part of LilyPond's pretty-but-neat music font input feta-autometric; -fet_beginfont("feta-test", 26); +fet_beginfont("feta-test", 16); staffsize#:=26pt#; test:=1; diff --git a/mutopia/Coriolan/bassi-part.ly b/mutopia/Coriolan/bassi-part.ly index 2f78af2aa7..2e432c85c3 100644 --- a/mutopia/Coriolan/bassi-part.ly +++ b/mutopia/Coriolan/bassi-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "violoncello.ly" diff --git a/mutopia/Coriolan/clarinetti-part.ly b/mutopia/Coriolan/clarinetti-part.ly index 232a85cbc5..ddac5c36aa 100644 --- a/mutopia/Coriolan/clarinetti-part.ly +++ b/mutopia/Coriolan/clarinetti-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "clarinetti.ly" diff --git a/mutopia/Coriolan/clarinetti.ly b/mutopia/Coriolan/clarinetti.ly index 6b7a39c243..5e1a2db34a 100644 --- a/mutopia/Coriolan/clarinetti.ly +++ b/mutopia/Coriolan/clarinetti.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "clarinetto-1.ly" \include "clarinetto-2.ly" diff --git a/mutopia/Coriolan/clarinetto-1.ly b/mutopia/Coriolan/clarinetto-1.ly index 33ba9491ef..8e55f54f4b 100644 --- a/mutopia/Coriolan/clarinetto-1.ly +++ b/mutopia/Coriolan/clarinetto-1.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; clarinetto1 = \notes \relative c { R1 *2 | diff --git a/mutopia/Coriolan/clarinetto-2.ly b/mutopia/Coriolan/clarinetto-2.ly index acfad81c95..5699d11076 100644 --- a/mutopia/Coriolan/clarinetto-2.ly +++ b/mutopia/Coriolan/clarinetto-2.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; clarinetto2 = \notes \relative c { R1*2 bes''4-.\ff r r2 | diff --git a/mutopia/Coriolan/contrabasso-part.ly b/mutopia/Coriolan/contrabasso-part.ly index 6f0efdd471..35e2ab0045 100644 --- a/mutopia/Coriolan/contrabasso-part.ly +++ b/mutopia/Coriolan/contrabasso-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "contrabasso.ly" diff --git a/mutopia/Coriolan/contrabasso.ly b/mutopia/Coriolan/contrabasso.ly index eeb66e6349..6001098b52 100644 --- a/mutopia/Coriolan/contrabasso.ly +++ b/mutopia/Coriolan/contrabasso.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; contrabasso = \notes \relative c { % \translator Staff=violoncello diff --git a/mutopia/Coriolan/coriolan.ly b/mutopia/Coriolan/coriolan.ly index 453fc314a5..67d127646d 100644 --- a/mutopia/Coriolan/coriolan.ly +++ b/mutopia/Coriolan/coriolan.ly @@ -8,7 +8,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "paper16.ly" diff --git a/mutopia/Coriolan/corni-part.ly b/mutopia/Coriolan/corni-part.ly index b3bd30b812..404e0178e5 100644 --- a/mutopia/Coriolan/corni-part.ly +++ b/mutopia/Coriolan/corni-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "corni.ly" diff --git a/mutopia/Coriolan/corni.ly b/mutopia/Coriolan/corni.ly index 165fb0af94..470f00c463 100644 --- a/mutopia/Coriolan/corni.ly +++ b/mutopia/Coriolan/corni.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "corno-1.ly" \include "corno-2.ly" diff --git a/mutopia/Coriolan/corno-1.ly b/mutopia/Coriolan/corno-1.ly index efaf24e060..1313558389 100644 --- a/mutopia/Coriolan/corno-1.ly +++ b/mutopia/Coriolan/corno-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; corno1 = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/corno-2.ly b/mutopia/Coriolan/corno-2.ly index 71b0d44526..f04d8fdb93 100644 --- a/mutopia/Coriolan/corno-2.ly +++ b/mutopia/Coriolan/corno-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; corno2 = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/fagotti-part.ly b/mutopia/Coriolan/fagotti-part.ly index 9f1ccb09ed..d9228f5b10 100644 --- a/mutopia/Coriolan/fagotti-part.ly +++ b/mutopia/Coriolan/fagotti-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "fagotti.ly" diff --git a/mutopia/Coriolan/fagotti.ly b/mutopia/Coriolan/fagotti.ly index f6d6995a17..5e10487759 100644 --- a/mutopia/Coriolan/fagotti.ly +++ b/mutopia/Coriolan/fagotti.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "fagotto-1.ly" \include "fagotto-2.ly" diff --git a/mutopia/Coriolan/fagotto-1.ly b/mutopia/Coriolan/fagotto-1.ly index 05de181984..30d77e9953 100644 --- a/mutopia/Coriolan/fagotto-1.ly +++ b/mutopia/Coriolan/fagotto-1.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; fagotto1 = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/fagotto-2.ly b/mutopia/Coriolan/fagotto-2.ly index 165e89d3be..54b9a9d5ea 100644 --- a/mutopia/Coriolan/fagotto-2.ly +++ b/mutopia/Coriolan/fagotto-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; fagotto2 = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/flauti-part.ly b/mutopia/Coriolan/flauti-part.ly index b364324e80..5b93e92dd4 100644 --- a/mutopia/Coriolan/flauti-part.ly +++ b/mutopia/Coriolan/flauti-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "flauti.ly" diff --git a/mutopia/Coriolan/flauti.ly b/mutopia/Coriolan/flauti.ly index efd4afb595..4e3e991a65 100644 --- a/mutopia/Coriolan/flauti.ly +++ b/mutopia/Coriolan/flauti.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "flauto-1.ly" \include "flauto-2.ly" diff --git a/mutopia/Coriolan/flauto-1.ly b/mutopia/Coriolan/flauto-1.ly index fb64ff1d5f..589c0e53d8 100644 --- a/mutopia/Coriolan/flauto-1.ly +++ b/mutopia/Coriolan/flauto-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; flauto1 = \notes \relative c { R1 *2 | diff --git a/mutopia/Coriolan/flauto-2.ly b/mutopia/Coriolan/flauto-2.ly index f1b70a133a..bb150d5b87 100644 --- a/mutopia/Coriolan/flauto-2.ly +++ b/mutopia/Coriolan/flauto-2.ly @@ -6,7 +6,7 @@ composer = "Ludwig van Beethoven (1770-1827)"; enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; flauto2 = \notes \relative c { R1 *2 | as'''4-.\ff r r2 | diff --git a/mutopia/Coriolan/global.ly b/mutopia/Coriolan/global.ly index 7bc4c0f93d..3c1799526a 100644 --- a/mutopia/Coriolan/global.ly +++ b/mutopia/Coriolan/global.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; global = \notes { \time 4/4; diff --git a/mutopia/Coriolan/oboe-1.ly b/mutopia/Coriolan/oboe-1.ly index d652792f9f..ab1ede99f1 100644 --- a/mutopia/Coriolan/oboe-1.ly +++ b/mutopia/Coriolan/oboe-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; oboe1 = \notes \relative c'' { R1*2 | diff --git a/mutopia/Coriolan/oboe-2.ly b/mutopia/Coriolan/oboe-2.ly index 32870617b3..dead69de2e 100644 --- a/mutopia/Coriolan/oboe-2.ly +++ b/mutopia/Coriolan/oboe-2.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; oboe2 = \notes \relative c{ R1*2| diff --git a/mutopia/Coriolan/oboi-part.ly b/mutopia/Coriolan/oboi-part.ly index 7cdaf531c7..27dd5295fe 100644 --- a/mutopia/Coriolan/oboi-part.ly +++ b/mutopia/Coriolan/oboi-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "oboi.ly" diff --git a/mutopia/Coriolan/oboi.ly b/mutopia/Coriolan/oboi.ly index e85361f99f..75f4c8962b 100644 --- a/mutopia/Coriolan/oboi.ly +++ b/mutopia/Coriolan/oboi.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "oboe-1.ly" \include "oboe-2.ly" diff --git a/mutopia/Coriolan/timpani-part.ly b/mutopia/Coriolan/timpani-part.ly index 4c853c9567..ac21d1281a 100644 --- a/mutopia/Coriolan/timpani-part.ly +++ b/mutopia/Coriolan/timpani-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "timpani.ly" diff --git a/mutopia/Coriolan/timpani.ly b/mutopia/Coriolan/timpani.ly index bd5acb4455..576e6da21e 100644 --- a/mutopia/Coriolan/timpani.ly +++ b/mutopia/Coriolan/timpani.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; timpani = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/trombe-part.ly b/mutopia/Coriolan/trombe-part.ly index 0a6dd05dda..6bd558eecd 100644 --- a/mutopia/Coriolan/trombe-part.ly +++ b/mutopia/Coriolan/trombe-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "trombe.ly" diff --git a/mutopia/Coriolan/trombe.ly b/mutopia/Coriolan/trombe.ly index 1d6d6f2f77..34fd0f5680 100644 --- a/mutopia/Coriolan/trombe.ly +++ b/mutopia/Coriolan/trombe.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "trombo-1.ly" \include "trombo-2.ly" diff --git a/mutopia/Coriolan/trombo-1.ly b/mutopia/Coriolan/trombo-1.ly index a3c1300de7..6770593652 100644 --- a/mutopia/Coriolan/trombo-1.ly +++ b/mutopia/Coriolan/trombo-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; trombo1 = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/trombo-2.ly b/mutopia/Coriolan/trombo-2.ly index 658fb7a8bf..65801e02d4 100644 --- a/mutopia/Coriolan/trombo-2.ly +++ b/mutopia/Coriolan/trombo-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; trombo2 = \notes \relative c { R1*2 | diff --git a/mutopia/Coriolan/viola-1.ly b/mutopia/Coriolan/viola-1.ly index d288e3212a..fa89bff6e4 100644 --- a/mutopia/Coriolan/viola-1.ly +++ b/mutopia/Coriolan/viola-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; viola1 = \notes \relative c { c'1\ff ~ | diff --git a/mutopia/Coriolan/viola-2.ly b/mutopia/Coriolan/viola-2.ly index e2dd6f56d3..d9be550c73 100644 --- a/mutopia/Coriolan/viola-2.ly +++ b/mutopia/Coriolan/viola-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; viola2 = \notes \relative c { % starts on (actualy, most part is on) same staff as viola1 diff --git a/mutopia/Coriolan/viola-part.ly b/mutopia/Coriolan/viola-part.ly index 3e8ccbcbef..fc9712f64d 100644 --- a/mutopia/Coriolan/viola-part.ly +++ b/mutopia/Coriolan/viola-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "viola-1.ly" diff --git a/mutopia/Coriolan/violino-1-part.ly b/mutopia/Coriolan/violino-1-part.ly index 1a1dc9deaa..dead91e2c4 100644 --- a/mutopia/Coriolan/violino-1-part.ly +++ b/mutopia/Coriolan/violino-1-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "violino-1.ly" diff --git a/mutopia/Coriolan/violino-1.ly b/mutopia/Coriolan/violino-1.ly index a088719548..fe8bcc17a2 100644 --- a/mutopia/Coriolan/violino-1.ly +++ b/mutopia/Coriolan/violino-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; violino1 = \notes \relative c { c'1\ff ~ | diff --git a/mutopia/Coriolan/violino-2-part.ly b/mutopia/Coriolan/violino-2-part.ly index 73ca4ce661..717263d665 100644 --- a/mutopia/Coriolan/violino-2-part.ly +++ b/mutopia/Coriolan/violino-2-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "violino-2.ly" diff --git a/mutopia/Coriolan/violino-2.ly b/mutopia/Coriolan/violino-2.ly index be10cbd5e4..c2ed90d964 100644 --- a/mutopia/Coriolan/violino-2.ly +++ b/mutopia/Coriolan/violino-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; violino2 = \notes \relative c { c'1\ff ~ | diff --git a/mutopia/Coriolan/violoncello-part.ly b/mutopia/Coriolan/violoncello-part.ly index bdfec72a64..5f9bf94ae7 100644 --- a/mutopia/Coriolan/violoncello-part.ly +++ b/mutopia/Coriolan/violoncello-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "global.ly" \include "violoncello.ly" diff --git a/mutopia/Coriolan/violoncello.ly b/mutopia/Coriolan/violoncello.ly index 7609b49090..56a09f2345 100644 --- a/mutopia/Coriolan/violoncello.ly +++ b/mutopia/Coriolan/violoncello.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; violoncello = \notes \relative c { c1\ff ~ | diff --git a/mutopia/D.Zipoli/verso_2.ly b/mutopia/D.Zipoli/verso_2.ly index b865ab858a..13df9f73f7 100644 --- a/mutopia/D.Zipoli/verso_2.ly +++ b/mutopia/D.Zipoli/verso_2.ly @@ -17,7 +17,7 @@ title = "Verso II"; under the Gnu Public Licence. %} -\version "1.3.4"; +\version "1.3.42"; $voice_one = \notes \relative c' { a'2 bes4. [c16 bes] | a4 d ~ d c ~ | c b ~ [b8 a] a4 ~| diff --git a/mutopia/E.Satie/gnossienne-4.ly b/mutopia/E.Satie/gnossienne-4.ly index 4d4b75c0cc..71fb470337 100644 --- a/mutopia/E.Satie/gnossienne-4.ly +++ b/mutopia/E.Satie/gnossienne-4.ly @@ -11,7 +11,7 @@ Tested Features: cross staff auto beams and slurs, grace notes, no bars %} -\version "1.3.5"; +\version "1.3.42"; global = \notes { \key a \minor; diff --git a/mutopia/E.Satie/petite-ouverture-a-danser.ly b/mutopia/E.Satie/petite-ouverture-a-danser.ly index 240a44542b..e542fcf9c1 100644 --- a/mutopia/E.Satie/petite-ouverture-a-danser.ly +++ b/mutopia/E.Satie/petite-ouverture-a-danser.ly @@ -12,7 +12,7 @@ Tested Features: %} -\version "1.3.5"; +\version "1.3.42"; \include "nederlands.ly" diff --git a/mutopia/F.Schubert/standchen-16.ly b/mutopia/F.Schubert/standchen-16.ly index 31e896e01d..803a7d9484 100644 --- a/mutopia/F.Schubert/standchen-16.ly +++ b/mutopia/F.Schubert/standchen-16.ly @@ -9,6 +9,6 @@ description = "A schubert song in 16 pt"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; \include "standchen.ly" diff --git a/mutopia/F.Schubert/standchen-20.ly b/mutopia/F.Schubert/standchen-20.ly index 221c232bfc..2431ec2414 100644 --- a/mutopia/F.Schubert/standchen-20.ly +++ b/mutopia/F.Schubert/standchen-20.ly @@ -10,7 +10,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.3.4"; +\version "1.3.42"; % fool make-website % \include "standchen.ly"; diff --git a/mutopia/F.Schubert/standchen.ly b/mutopia/F.Schubert/standchen.ly index ebf68cfbf4..1e334f5783 100644 --- a/mutopia/F.Schubert/standchen.ly +++ b/mutopia/F.Schubert/standchen.ly @@ -41,7 +41,7 @@ multiple \paper{}s in one \score Note: Original key f. %} -\version "1.3.4"; +\version "1.3.42"; vocalVerse = \notes\relative c''{ \property Voice.dynamicDirection=\up diff --git a/mutopia/Hymns/diademata.ly b/mutopia/Hymns/diademata.ly index 265a65cac4..8928666b3f 100644 --- a/mutopia/Hymns/diademata.ly +++ b/mutopia/Hymns/diademata.ly @@ -7,7 +7,7 @@ metre = "6 6. 8 6. D"; } -\version "1.3.4"; +\version "1.3.42"; sop=\notes \transpose c''{ ees2 ees4 ees4 g2 g2 | c'1. diff --git a/mutopia/Hymns/laudatedom.ly b/mutopia/Hymns/laudatedom.ly index b997362317..589c8b63b4 100644 --- a/mutopia/Hymns/laudatedom.ly +++ b/mutopia/Hymns/laudatedom.ly @@ -4,7 +4,7 @@ composer = "Parry"; metre = "10 10 . 11 11"; } -\version "1.3.4"; +\version "1.3.42"; sop = \notes \transpose c''{ f4 | d' bes c' | f2 \bar "||"; diff --git a/mutopia/Hymns/maccabaeus.ly b/mutopia/Hymns/maccabaeus.ly index 364f3ec108..4e0aea2199 100644 --- a/mutopia/Hymns/maccabaeus.ly +++ b/mutopia/Hymns/maccabaeus.ly @@ -7,7 +7,7 @@ title = "Maccabaeus"; metre = "10 11. 11 11. and refrain"; } -\version "1.3.4"; +\version "1.3.42"; sop=\notes \relative c'' { b2 gis4. a8 |b2 e,2 | diff --git a/mutopia/Hymns/ode.ly b/mutopia/Hymns/ode.ly index 693a4caf3e..fc4735dcd7 100644 --- a/mutopia/Hymns/ode.ly +++ b/mutopia/Hymns/ode.ly @@ -7,7 +7,7 @@ metre = "8 7 8 7 D"; } -\version "1.3.4"; +\version "1.3.42"; sop=\notes \relative c'' { b4 b c d | d c b a | g g a b | b4. a8 a2 | diff --git a/mutopia/Hymns/stille.ly b/mutopia/Hymns/stille.ly index 0341e3484b..0b41a2d486 100644 --- a/mutopia/Hymns/stille.ly +++ b/mutopia/Hymns/stille.ly @@ -8,7 +8,7 @@ } -\version "1.3.4"; +\version "1.3.42"; %{ Note: there are other verses, but the three here seem to be diff --git a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly index e0591c715b..d1ac8a9ec5 100644 --- a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly +++ b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly @@ -4,7 +4,7 @@ piece = "Allemande"; } -\version "1.3.4"; +\version "1.3.42"; global = \notes{ \time 4/4; diff --git a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly index d4ee80c115..ca85c32dde 100644 --- a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly +++ b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly @@ -10,7 +10,7 @@ %% %% Noe liknende skjer også i mellom andre og tredje stemme i takt 28 -\version "1.3.4"; +\version "1.3.42"; global = \notes{ \time 2/4; diff --git a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly index 79617ee877..037146d7b5 100644 --- a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly +++ b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly @@ -10,7 +10,7 @@ copyright = "Public Domain"; } -\version "1.3.4"; +\version "1.3.42"; global = \notes { \time 4/4; diff --git a/mutopia/J.S.Bach/Duette/global-i.ly b/mutopia/J.S.Bach/Duette/global-i.ly index db61c1a7f1..3f8948524f 100644 --- a/mutopia/J.S.Bach/Duette/global-i.ly +++ b/mutopia/J.S.Bach/Duette/global-i.ly @@ -1,4 +1,4 @@ -\version "1.3.5"; +\version "1.3.42"; $global_i = \notes{ \time 12/8; diff --git a/mutopia/J.S.Bach/Duette/global-ii.ly b/mutopia/J.S.Bach/Duette/global-ii.ly index e83492890a..4c1f3080aa 100644 --- a/mutopia/J.S.Bach/Duette/global-ii.ly +++ b/mutopia/J.S.Bach/Duette/global-ii.ly @@ -1,4 +1,4 @@ -\version "1.3.5"; +\version "1.3.42"; $global_ii = \notes{ \time 4/4; diff --git a/mutopia/J.S.Bach/Duette/viola-i.ly b/mutopia/J.S.Bach/Duette/viola-i.ly index 72c59dec06..552deed2f0 100644 --- a/mutopia/J.S.Bach/Duette/viola-i.ly +++ b/mutopia/J.S.Bach/Duette/viola-i.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; \include "global-i.ly" \include "violoncello-i.ly"; diff --git a/mutopia/J.S.Bach/Duette/viola-ii.ly b/mutopia/J.S.Bach/Duette/viola-ii.ly index 6e4fd42104..868bcf2475 100644 --- a/mutopia/J.S.Bach/Duette/viola-ii.ly +++ b/mutopia/J.S.Bach/Duette/viola-ii.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; \include "global-ii.ly" \include "violoncello-ii.ly"; diff --git a/mutopia/J.S.Bach/Duette/viola-part.ly b/mutopia/J.S.Bach/Duette/viola-part.ly index 2f6c10bfb4..2181cdf549 100644 --- a/mutopia/J.S.Bach/Duette/viola-part.ly +++ b/mutopia/J.S.Bach/Duette/viola-part.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; % { diff --git a/mutopia/J.S.Bach/Duette/violino-i.ly b/mutopia/J.S.Bach/Duette/violino-i.ly index 5242d77007..396a043f4c 100644 --- a/mutopia/J.S.Bach/Duette/violino-i.ly +++ b/mutopia/J.S.Bach/Duette/violino-i.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; $violino_i = \notes\relative c'' { \property Voice.beamAutoEnd = "3/8" diff --git a/mutopia/J.S.Bach/Duette/violino-ii.ly b/mutopia/J.S.Bach/Duette/violino-ii.ly index 9a9fed15f4..5cfc445189 100644 --- a/mutopia/J.S.Bach/Duette/violino-ii.ly +++ b/mutopia/J.S.Bach/Duette/violino-ii.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; $violino_ii = \notes\relative c''{ R1*8 | @@ -101,4 +101,4 @@ $violino_ii_staff = \context Staff = violino < \$violino_ii \$global_ii > -\version "1.3.5"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Duette/violino-part.ly b/mutopia/J.S.Bach/Duette/violino-part.ly index 798567be9b..c2e417bd0e 100644 --- a/mutopia/J.S.Bach/Duette/violino-part.ly +++ b/mutopia/J.S.Bach/Duette/violino-part.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; % { diff --git a/mutopia/J.S.Bach/Duette/violino-viola.ly b/mutopia/J.S.Bach/Duette/violino-viola.ly index 54adae15c8..1d8068455e 100644 --- a/mutopia/J.S.Bach/Duette/violino-viola.ly +++ b/mutopia/J.S.Bach/Duette/violino-viola.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; % { \include "violino-i.ly"; diff --git a/mutopia/J.S.Bach/Duette/violino-violoncello.ly b/mutopia/J.S.Bach/Duette/violino-violoncello.ly index a48730fc5e..e194b469ad 100644 --- a/mutopia/J.S.Bach/Duette/violino-violoncello.ly +++ b/mutopia/J.S.Bach/Duette/violino-violoncello.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; % { \include "violino-i.ly"; diff --git a/mutopia/J.S.Bach/Duette/violoncello-i.ly b/mutopia/J.S.Bach/Duette/violoncello-i.ly index a37c92ff3b..6a420c3e0b 100644 --- a/mutopia/J.S.Bach/Duette/violoncello-i.ly +++ b/mutopia/J.S.Bach/Duette/violoncello-i.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; $violoncello_i = \notes\relative c{ \property Voice.beamAutoEnd = "3/8" diff --git a/mutopia/J.S.Bach/Duette/violoncello-ii.ly b/mutopia/J.S.Bach/Duette/violoncello-ii.ly index c6c786d631..191e097e7e 100644 --- a/mutopia/J.S.Bach/Duette/violoncello-ii.ly +++ b/mutopia/J.S.Bach/Duette/violoncello-ii.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; $violoncello_ii = \notes\relative c{ r2 a'2|c e,| f8(e)d2 e8()fis| g a bes2 a8()gis| diff --git a/mutopia/J.S.Bach/Duette/violoncello-part.ly b/mutopia/J.S.Bach/Duette/violoncello-part.ly index 2d24632ce6..b290408a20 100644 --- a/mutopia/J.S.Bach/Duette/violoncello-part.ly +++ b/mutopia/J.S.Bach/Duette/violoncello-part.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.3.5"; +\version "1.3.42"; % { diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly index 2df908e8c8..7d0341b60d 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly @@ -44,7 +44,7 @@ Lemoine puts fermatas on ending bar lines everywhere. -\version "1.3.4"; +\version "1.3.42"; lowstaff = \translator "Staff" = "lower" diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly index 4495fb290d..599c21b2d1 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly @@ -42,7 +42,7 @@ Old versions of LilyPond include this prelude with dynamics and fingerings. -\version "1.3.4"; +\version "1.3.42"; upper = \context Staff \notes\relative c{ \context Voice=i \property Voice . textStyle = "italic" diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly index bf6d499d25..0e5eed7da5 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly @@ -45,7 +45,7 @@ note, some have dotted half notes. %} -\version "1.3.4"; +\version "1.3.42"; upper = \notes \transpose c'' { diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly index bdc0b6e3c1..7c09bc86c7 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly @@ -31,7 +31,7 @@ } -\version "1.3.4"; +\version "1.3.42"; upper = \context Staff \notes\relative c \context Voice=i { diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly index f807964bd8..fe112bdd32 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly @@ -31,7 +31,7 @@ } -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly index b2a4e655ab..1fead8ac0b 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly @@ -1,6 +1,6 @@ -\version "1.3.4"; +\version "1.3.42"; \include "allemande-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly index ce797d3dbd..1076affa1d 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly @@ -99,4 +99,4 @@ allemande = \context Staff \notes< > -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly index f152601f4e..0e1ffaa596 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly @@ -1,5 +1,5 @@ -\version "1.3.4"; +\version "1.3.42"; \include "allemande-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly index 216cd0176a..e4aeb50c91 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly @@ -1,5 +1,5 @@ -\version "1.3.4"; +\version "1.3.42"; \include "courante-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly index e7abdfe37a..a3fcd4d70b 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly @@ -88,4 +88,4 @@ courante = \context Staff \notes< \$courante_b > -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly index 75d83d657c..3b901141ef 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "courante-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly index 840b9f02cf..0c58fe97f2 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "gigue-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly index 630b9b0a6d..fd68404719 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly @@ -102,4 +102,4 @@ gigue = \notes< \$gigue_b > -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly index ee57409f0a..777524b132 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly @@ -1,6 +1,6 @@ -\version "1.3.4"; +\version "1.3.42"; \include "gigue-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly index 7b4de133ec..d656bbc05c 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "menuetto-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly index 07e1531223..2fa2d5dc0e 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly @@ -148,4 +148,4 @@ menuetto_ii = \context Staff\notes \relative c { d2. } -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly index 48f12f5270..3c166c43bb 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "menuetto-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly index 88d0f2158e..3679938668 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "prelude-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly index 1b9fd3ef76..833c019696 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly @@ -194,4 +194,4 @@ prelude = \context Staff \notes< \$prelude_b > -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly index de544f4f9c..9de8497143 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "prelude-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly index 5949715a51..d3e8a6b449 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly @@ -1,7 +1,7 @@ -\version "1.3.4"; +\version "1.3.42"; \include "sarabande-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly index 8a6f7eae16..714a945536 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly @@ -89,4 +89,4 @@ sarabande = \context Staff \notes< \$sarabande_b > -\version "1.3.4"; +\version "1.3.42"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly index 111625d701..63a0fcd712 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly @@ -1,4 +1,4 @@ -\version "1.3.4"; +\version "1.3.42"; \include "sarabande-urtext.ly"; diff --git a/mutopia/J.S.Bach/wtk1-fugue1.ly b/mutopia/J.S.Bach/wtk1-fugue1.ly index f18a619e85..47a19d4b23 100644 --- a/mutopia/J.S.Bach/wtk1-fugue1.ly +++ b/mutopia/J.S.Bach/wtk1-fugue1.ly @@ -19,7 +19,7 @@ enteredby = "Shay Rojansky"; %{ TODO: use autobeaming. %} -\version "1.3.4"; +\version "1.3.42"; tenor = diff --git a/mutopia/J.S.Bach/wtk1-fugue2.ly b/mutopia/J.S.Bach/wtk1-fugue2.ly index 74133ef99d..abf6daf7c9 100644 --- a/mutopia/J.S.Bach/wtk1-fugue2.ly +++ b/mutopia/J.S.Bach/wtk1-fugue2.ly @@ -21,7 +21,7 @@ % It would be nice to squeeze this onto two pages, but I am not sure % if it would work with US paper. -\version "1.3.4"; +\version "1.3.42"; dux = \context Voice=two \notes \relative c''{ diff --git a/mutopia/J.S.Bach/wtk1-prelude1.ly b/mutopia/J.S.Bach/wtk1-prelude1.ly index 6c4a53559e..c4562082b2 100644 --- a/mutopia/J.S.Bach/wtk1-prelude1.ly +++ b/mutopia/J.S.Bach/wtk1-prelude1.ly @@ -15,7 +15,7 @@ enteredby = "Shay Rojansky"; lastupdated = "1999/Oct/14"; } -\version "1.3.4"; +\version "1.3.42"; % should do programmable input. soprane = diff --git a/mutopia/gallina.ly b/mutopia/gallina.ly index c0ad2ad5a7..567669efb3 100644 --- a/mutopia/gallina.ly +++ b/mutopia/gallina.ly @@ -45,7 +45,7 @@ Voice engraver by uncommenting the lines in the paper definition below. --MB %} -\version "1.3.4"; +\version "1.3.42"; global = \notes { \property StaffGroup.timeSignatureStyle = "old" diff --git a/scm/generic-property.scm b/scm/generic-property.scm index adbf00a735..554408caff 100644 --- a/scm/generic-property.scm +++ b/scm/generic-property.scm @@ -67,11 +67,6 @@ ) )) -(define generic-sustain-pedal-properties - (cons "Sustain_pedal" (list - (list 'textScriptPadding number? 'padding) - (list 'sustainPedalPadding number? 'padding)))) - (define generic-crescendo-properties (cons "Crescendo" (list (list 'verticalDirection dir? 'direction) @@ -203,7 +198,6 @@ generic-slur-properties generic-beam-properties generic-text-properties - generic-sustain-pedal-properties generic-note-column-properties generic-script-properties generic-All-properties diff --git a/scm/paper.scm b/scm/paper.scm index c5bdbbeba4..a615f9564f 100644 --- a/scm/paper.scm +++ b/scm/paper.scm @@ -137,19 +137,3 @@ (beta (/ (* pi r-0) (* 2.0 h-inf)))) (* alpha (atan (* beta b))))) -;; see mf/feta-pendaal.mf -(define pedal-kerning-alist '()) -(set! pedal-kerning-alist - (append - '( - (("P" . "e") . -0.07) - (("e" . "d") . -0.53) - (("*" . "P") . 0.2) - ) - pedal-kerning-alist)) - -(define (pedal-kerning l r) - (let ((entry (assoc (cons l r) pedal-kerning-alist))) - (if entry - (cdr entry)))) - diff --git a/stepmake/stepmake/metafont-vars.make b/stepmake/stepmake/metafont-vars.make index 96af147311..7beeca4110 100644 --- a/stepmake/stepmake/metafont-vars.make +++ b/stepmake/stepmake/metafont-vars.make @@ -1,5 +1,6 @@ MF_FILES := $(wildcard *.mf) +FONT_FILES = $(wildcard *[0-9].mf) EXTRA_DIST_FILES += $(MF_FILES) MF_TFM_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.tfm)) MF_DVI_FILES = $(addprefix $(outdir)/, $(FONT_FILES:.mf=.dvi)) diff --git a/tex/p.tex b/tex/p.tex deleted file mode 100644 index 2f6169490e..0000000000 --- a/tex/p.tex +++ /dev/null @@ -1,39 +0,0 @@ -% pedal.tex - -\hsize = 296mm -\vsize = 210mm - -% fix chord.cc::banter_str before removing these -\def\fetdef#1#2{% - \def#1{\hbox{\char#2}}} - -\fetdef\pedalasterisk{101} -\fetdef\pedaldash{102} -\fetdef\pedaldot{103} -\fetdef\pedalP{104} -\fetdef\pedald{105} -\fetdef\pedale{106} - -%\font\fetatwentysixfontt=feta26 scaled \magstep 4 -%\font\fetatwentysixfontt=feta26 scaled 18842 -\font\fetatwentysixfontt=feta26 scaled 2407 -\magnification \magstep 4 - -\def\fetafont{\fetatwentysixfontt} - -\baselineskip 12mm - -\vbox{ -\kern 50mm - -\hbox{ -\fetatwentysixfontt -\hbox { \pedalP\kern-0.06ex\pedale\kern -0.55ex\pedald\pedaldot} -\kern 100mm -\pedalasterisk -} -} - -\end - -%\endinput diff --git a/tex/pedal.tex b/tex/pedal.tex deleted file mode 100644 index a4c7616ed5..0000000000 --- a/tex/pedal.tex +++ /dev/null @@ -1,62 +0,0 @@ -% pedal.tex - -% fix chord.cc::banter_str before removing these -\def\fetdef#1#2{% - \def#1{\hbox{\char#2}}} - -\fetdef\pedalasterisk{101} -\fetdef\pedaldash{102} -\fetdef\pedaldot{103} -\fetdef\pedalP{104} -\fetdef\pedald{105} -\fetdef\pedale{106} - - -\font\fetaelevenfont=feta11 -\font\fetathirteenfont=feta13 -\font\fetasixteenfont=feta16 -\font\fetatwentyfont=feta20 -\font\fetatwentythreefont=feta23 -\font\fetatwentysixfont=feta26 - -\font\fetaelevenfontt=feta11 scaled \magstep 4 -\font\fetathirteenfontt=feta13 scaled \magstep 4 -\font\fetasixteenfontt=feta16 scaled \magstep 4 -\font\fetatwentyfontt=feta20 scaled \magstep 4 -\font\fetatwentythreefontt=feta23 scaled \magstep 4 -\font\fetatwentysixfontt=feta26 scaled \magstep 4 - -\def\fetafont{\fetasixteenfont} - -\def\test{ -\hbox { -\hbox { \pedalP\kern-0.05ex\pedale\kern -0.6ex\pedald\pedaldot} -\kern 1ex -\pedalasterisk -\kern 1ex -\hbox {\pedaldash\pedalP} -} -} - -\magnification \magstep 4 -\baselineskip 12mm - -\vbox{ -\fetaelevenfont \test -\fetathirteenfont \test -\fetasixteenfont \test -\fetatwentyfont \test -\fetatwentythreefont \test -\fetatwentysixfont \test - -%\fetaelevenfontt \test -%\fetathirteenfontt \test -\fetasixteenfontt \test -\fetatwentyfontt \test -\fetatwentythreefontt \test -\fetatwentysixfontt \test -} - -\end - -%\endinput