]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 1.3.57 release/1.3.57
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 31 May 2000 08:26:37 +0000 (10:26 +0200)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 31 May 2000 08:26:37 +0000 (10:26 +0200)
======

* Fixed several forgotten molecule-callbacks

* Fixed first clef in score; now F clefs are also possible.

1.3.56.

15 files changed:
CHANGES
VERSION
lily/axis-group-engraver.cc
lily/line-group-group-engraver.cc
lily/line-of-score.cc
lily/local-key-engraver.cc
lily/multi-measure-rest-engraver.cc
lily/paper-column.cc
lily/staff-symbol-referencer.cc
lily/text-engraver.cc
ly/engraver.ly
make/out/lilypond.lsm
make/out/lilypond.spec
scm/lily.scm
stepmake/bin/add-html-footer.py

diff --git a/CHANGES b/CHANGES
index 5e1da30ae963f0341b810e77d180fb8a57a962bc..83a1f61af0deed8a54423ef53e8e6bc07ac26ae1 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,28 +1,30 @@
---- ../lilypond-1.3.56/CHANGES Mon May 29 00:12:41 2000
-++ b/CHANGES   Wed May 31 00:06:33 2000
-@@ -1,3 +1,10 @@
-1.3.56.mb1
-==========
+1.3.57
+======
+
+* Fixed several forgotten molecule-callbacks 
+
+* Fixed first clef in score; now F clefs are also possible.
 
+1.3.56.mb1
+=========
 * Updated FAQ with two useful GDB macros.
 
 * Several fixes in the documentation.
 
- 1.3.55.hwn1
- ===========
- 1.3.55.jcn1
+1.3.55.jcn1
 ===========
 
 * Made (dutch) po-update
 
-1.3.55.hwn1
+1.3.56
 ===========
 
 * Molecules are now generated via callbacks exclusively; most calls to
-set_elt_property ("transparent) have been replaced by suicide().
+set_elt_property ("transparent", SCM_BOOL_T) have been replaced by suicide().
 
-1.3.54.hwn2
-===========
+1.3.55
+======
 
 * Experimental property collapse for most score-elements.  (notable
 exceptions: Scripts, pedals). Change all Score_element constructors to
diff --git a/VERSION b/VERSION
index 79db5745d57982f490bf8c4032d2421edc14f1ae..27b50caab0a3cc54aa79cabdf5cb1fdd05a0a516 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,8 +1,8 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=3
-PATCH_LEVEL=56
-MY_PATCH_LEVEL=mb1
+PATCH_LEVEL=57
+MY_PATCH_LEVEL=
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
index 52fc80484a3bf0fd22c2c4b01b982149ea328833..6ffe752dda66415ca5c614e4d244c53309fa13ca 100644 (file)
@@ -24,7 +24,11 @@ Axis_group_engraver::do_creation_processing ()
   staffline_p_ = get_spanner_p ();
   Axis_group_interface (staffline_p_).set_interface ();
   Axis_group_interface (staffline_p_).set_axes (Y_AXIS, Y_AXIS);
-  staffline_p_->set_bound(LEFT,get_staff_info().command_pcol_l ());
+
+  Item *  it = get_staff_info().command_pcol_l ();
+  Pointer_group_interface (it, "bounded-by-me").add_element (staffline_p_);  
+  staffline_p_->set_bound(LEFT,it);
+
   announce_element (Score_element_info (staffline_p_, 0));
 }
 
@@ -57,8 +61,11 @@ Axis_group_engraver::do_removal_processing ()
       && gh_number_p (gh_cdr (dims)))
     staffline_p_->set_elt_property ("extra-extent-Y", dims);
 
-  
-  staffline_p_->set_bound(RIGHT,get_staff_info().command_pcol_l ());
+  Item *  it = get_staff_info().command_pcol_l ();
+
+  Pointer_group_interface (it, "bounded-by-me").add_element (staffline_p_);  
+  staffline_p_->set_bound(RIGHT,it);
+
   typeset_element (staffline_p_);
   staffline_p_ = 0;
 }
index aa4b6e8c20c21a98bebe3efd754791d674af498d..202d8ff3287f7c81ad97d9d87ce9d2772e6cdc53 100644 (file)
@@ -34,8 +34,10 @@ void
 Line_group_engraver_group::do_removal_processing()
 {
   Engraver_group_engraver::do_removal_processing ();
+  Item *  it = get_staff_info().command_pcol_l ();
 
-  staffline_p_->set_bound(RIGHT,get_staff_info().command_pcol_l ());
+  Pointer_group_interface (it, "bounded-by-me").add_element (staffline_p_);  
+  staffline_p_->set_bound(RIGHT,it);
   Engraver_group_engraver::typeset_element (staffline_p_);
   staffline_p_ = 0;
 }
@@ -44,7 +46,9 @@ void
 Line_group_engraver_group::do_creation_processing()
 {
   create_line_spanner ();
-  staffline_p_->set_bound(LEFT,get_staff_info().command_pcol_l ());
+  Item *  it = get_staff_info().command_pcol_l ();  
+  staffline_p_->set_bound(LEFT,it);
+  Pointer_group_interface (it, "bounded-by-me").add_element (staffline_p_);
   
   Engraver::announce_element (Score_element_info (staffline_p_,0));
 }
index 1c8f59d34cf5692784c09edc4a2e74d5c852ed16..dc78eb09da95770d2acfbb9acd23f7754e53ec3a 100644 (file)
@@ -179,27 +179,6 @@ Line_of_score::add_column (Paper_column*p)
   typeset_element (p);
 }
 
-Link_array<Paper_column>
-Line_of_score::column_l_arr ()const
-{
-  Link_array<Paper_column> acs
-    = Pointer_group_interface__extract_elements (this, (Paper_column*) 0, "columns");
-  bool bfound = false;
-  for (int i= acs.size (); i -- ; )
-    {
-      bool brb = acs[i]->breakable_b();
-      bfound = bfound || brb;
-
-      /*
-       the last column should be breakable. Weed out any columns that
-       seem empty. We need to retain breakable columns, in case
-       someone forced a breakpoint.
-      */
-      if (!bfound || !acs[i]->used_b ())
-       acs.del (i);
-    }
-  return acs;
-}
 
 void
 fixup_refpoints (SCM s)
@@ -344,5 +323,28 @@ Line_of_score::broken_col_range (Item const*l, Item const*r) const
   return ret;
 }
 
+/**
+   Return all columns, but filter out any unused columns , since they might
+   disrupt the spacing problem.
+ */
+Link_array<Paper_column>
+Line_of_score::column_l_arr ()const
+{
+  Link_array<Paper_column> acs
+    = Pointer_group_interface__extract_elements (this, (Paper_column*) 0, "columns");
+  bool bfound = false;
+  for (int i= acs.size (); i -- ; )
+    {
+      bool brb = acs[i]->breakable_b();
+      bfound = bfound || brb;
 
-
+      /*
+       the last column should be breakable. Weed out any columns that
+       seem empty. We need to retain breakable columns, in case
+       someone forced a breakpoint.
+      */
+      if (!bfound || !acs[i]->used_b ())
+       acs.del (i);
+    }
+  return acs;
+}
index 8a5678fe1b9cae4b971881092b096d4b8bbbbd22..192baaee47dc8da1c9ca03707469b510d7f437cf 100644 (file)
@@ -124,7 +124,7 @@ Local_key_engraver::process_acknowledged ()
            {
              if (!key_item_p_) 
                {
-                 key_item_p_ = new Local_key_item (SCM_EOL);
+                 key_item_p_ = new Local_key_item (get_property ("basicLocalKeyProperties"));
                  Side_position_interface (key_item_p_).set_axis (X_AXIS);
                  Side_position_interface (key_item_p_).set_direction (LEFT);
                  staff_symbol_referencer(key_item_p_).set_interface ();
index 5941e43ec82e5f479284ee7f6d5ca1fdb3120f70..943092d400093c1152ea9c7661775b07e77d10aa 100644 (file)
@@ -109,7 +109,7 @@ Multi_measure_rest_engraver::do_process_music ()
 
   if (busy_span_req_l_ && !mmrest_p_)
     {
-      mmrest_p_ = new Multi_measure_rest (SCM_EOL);
+      mmrest_p_ = new Multi_measure_rest (get_property ("basicMultiMeasureRestProperties"));
       Staff_symbol_referencer_interface si (mmrest_p_);
       si.set_interface ();
 
index f7db1474a2f5ac1bf1795b6c3def51dba66f4836..d38687e4f1e24b3a93208ed67cc7781ea6df97cb 100644 (file)
@@ -95,7 +95,7 @@ Paper_column::column_l () const
 }
 
 Paper_column::Paper_column (Moment w)
-  : Item (SCM_EOL)
+  : Item (SCM_EOL)             // guh.?
 {
   SCM when = (new Moment (w))->smobify_self ();
   scm_unprotect_object (when);
@@ -103,7 +103,7 @@ Paper_column::Paper_column (Moment w)
 
   Axis_group_interface (this).set_interface ();
   Axis_group_interface (this).set_axes (X_AXIS, X_AXIS);
-
+  set_elt_pointer ("bounded-by-me", SCM_EOL);
   line_l_=0;
   rank_i_ = -1;
 }
@@ -135,5 +135,7 @@ Paper_column::musical_b () const
 bool
 Paper_column::used_b ()const
 {
-  return gh_pair_p (get_elt_pointer ("elements")) ||  breakable_b ();
+  return gh_pair_p (get_elt_pointer ("elements")) ||  breakable_b ()
+    || gh_pair_p (get_elt_pointer ("bounded-by-me"))
+    ;
 }
index 9c52f04256b10584cdfd21d980ad4607b8804303..ba6d15a7d8b75a838164a87960442bcf0c85be49 100644 (file)
@@ -21,7 +21,9 @@ Staff_symbol_referencer_interface::Staff_symbol_referencer_interface (Score_elem
 void
 Staff_symbol_referencer_interface::set_interface ()
 {
-  elt_l_->set_elt_property ("staff-position", gh_double2scm (0.0));
+  if (!gh_number_p (elt_l_->get_elt_property ("staff-position")))
+      elt_l_->set_elt_property ("staff-position", gh_double2scm (0.0));
+      
   elt_l_->add_offset_callback (callback, Y_AXIS);
 }
 
index a3d72332f9f13b6ce1b623d8f9f6099d877cd14b..a0390bd6a2a92d2416afd5ae55fe4862ae21a0ad 100644 (file)
@@ -78,7 +78,7 @@ Text_engraver::do_process_music ()
     {
       Text_script_req * r = reqs_[i];
 
-      Text_item *text = new Text_item (SCM_EOL);
+      Text_item *text = new Text_item (get_property ("basicTextScriptProperties"));
       Side_position_interface stafy (text);
 
       SCM axisprop = get_property ("scriptHorizontal");
@@ -106,9 +106,9 @@ Text_engraver::do_process_music ()
        text->set_elt_property ("style", ly_str02scm (r->style_str_.ch_C()));
       
       SCM empty = get_property ("textNonEmpty");
-      if (!to_boolean (empty))
+      if (to_boolean (empty))
        {
-         text->set_elt_property ("no-spacing-rods" , SCM_BOOL_T);
+         text->set_elt_property ("no-spacing-rods" , SCM_BOOL_F);
          text->set_extent_callback (0, X_AXIS);
        }
       announce_element (Score_element_info (text, r));
index 9e6bbe3bdd6f4f86b71f4423463d96b0200cc1c4..ba8064a1040050db5a6067b634a0c9e5a5e7f62d 100644 (file)
@@ -465,6 +465,7 @@ ScoreContext = \translator {
                (molecule-callback . ,Lyric_extender::scheme_molecule)
        )
        basicLyricTextProperties = #`(
+               (molecule-callback . ,Text_item::scheme_molecule)
                (non-rhythmic . #t)
        )
        basicMarkProperties = #`(
@@ -472,16 +473,20 @@ ScoreContext = \translator {
          (breakable . #t)
          (visibility-lambda . ,end-of-line-invisible)
        )
+       basicMultiMeasureRestProperties = #`(
+               (molecule-callback . ,Multi_measure_rest::scheme_molecule)
+               (staff-position . 0)
+       )
        basicNoteColumnProperties = #`(
                (axes 0 1)
        )
        basicNoteHeadProperties = #`(
                (molecule-callback . ,Note_head::scheme_molecule)
        )
-
        basicOctavateEightProperties  = #`(
                (self-alignment-X . 0)
                (text . "8")
+               (visibility-lambda . ,begin-of-line-visible) 
                (molecule-callback . ,Text_item::scheme_molecule)
                (style . "italic")
        )
@@ -495,7 +500,7 @@ ScoreContext = \translator {
        basicScriptProperties    = #`(
                (molecule-callback . ,Script::scheme_molecule)
        )
-               
+               
        basicSlurProperties = #`(
                (molecule-callback . ,Slur::scheme_molecule)
        )
@@ -508,10 +513,14 @@ ScoreContext = \translator {
                (molecule-callback . ,Stem::scheme_molecule)
        )
        staffSymbolBasicProperties = #`(
-          (molecule-callback . ,Staff_symbol::scheme_molecule)
-          (staff-space . 1.0 )
-          (line-count . 5 )
-        )
+               (molecule-callback . ,Staff_symbol::scheme_molecule)
+               (staff-space . 1.0 )
+               (line-count . 5 )
+       )
+       basicTextScriptProperties = #`(
+               (molecule-callback . ,Text_item::scheme_molecule)
+               (no-spacing-rods . #t)
+       )
        basicTimeSignatureProperties = #`(
                (molecule-callback . ,Time_signature::scheme_molecule)
                (break-align-symbol . Time_signature)
@@ -538,7 +547,7 @@ ScoreContext = \translator {
        )
        basicInstrumentNameProperties = #`(
                (breakable . #t)
-               (molecule-callback . Text_item::scheme_molecule)                
+               (molecule-callback . ,Text_item::scheme_molecule)               
                (break-align-symbol . Instrument_name)
                (visibility-lambda . ,begin-of-line-visible)
        )
index 6f2f1bdd76298a1e304140518c0052b10e4c8dc4..048670decd77535f2e102abdf6352bb8aec6e323 100644 (file)
@@ -1,15 +1,15 @@
 Begin3
 Title: LilyPond
-Version: 1.3.56
-Entered-date: 29MAY00
+Version: 1.3.57
+Entered-date: 31MAY00
 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.56.tar.gz 
+       1000k lilypond-1.3.57.tar.gz 
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
-       1000k lilypond-1.3.56.tar.gz 
+       1000k lilypond-1.3.57.tar.gz 
 Copying-policy: GPL
 End
index e8efa1de87fa7c6e89b08e79693d04f5cadb0e50..bf7ae4cd460e9fd07a5a113fa094cfc4d99572e7 100644 (file)
@@ -1,9 +1,9 @@
 Name: lilypond
-Version: 1.3.56
+Version: 1.3.57
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.56.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.57.tar.gz
 Summary: A program for printing sheet music.
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 # Icon: lilypond-icon.gif
index ec316ecff81ade53fb0c36f21003ccef7e381b46..62417660b10a5bf8dc8651b908e595467e435e9c 100644 (file)
     (string-append "% " s))
   
   (define (end-output) 
-    "\n\\EndLilyPondOutput")
+    (string-append "\n\\EndLilyPondOutput"
+                  ; Put GC stats here.
+                  ))
   
   (define (experimental-on)
     "")
        content))
 
 ;; urg: Use when standalone, do:
-;; (define (ly-gulp-file name) (scm-gulp-file name))
+;; (define ly-gulp-file scm-gulp-file)
 (define (scm-gulp-file name)
   (set! %load-path 
        (cons (string-append (getenv 'LILYPONDPREFIX) "/ly")
index 153cc4a48d7d1b9560a96c92127395ab30766d35..705ed904a05f76f3ffbe7d99db2110813624d934 100644 (file)
@@ -42,7 +42,7 @@ of %s
 
 builtstr = r"""<hr><font size=-1>
 This page was built from %s-%s by 
-<address><br>%s &lt<a href=\"mailto:%s\">%s</a>&gt,  %s.</address><p></font>"""
+<address><br>%s &lt<a href="mailto:%s">%s</a>&gt,  %s.</address><p></font>"""
 
 package_name = ''