]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 1.3.62 release/1.3.62
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 21 Jun 2000 14:36:07 +0000 (16:36 +0200)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 21 Jun 2000 14:36:07 +0000 (16:36 +0200)
======

* Made callbacks from Score_element::before_line_breaking() and
Score_element::after_line_breaking()

* Fixed website; backlinks should work again.

* Removed --ignore-version option. Added --verbose option.

1.3

108 files changed:
CHANGES
Documentation/header.html.in
Documentation/topdocs/INSTALL.texi
Documentation/user/tutorial.itely
INSTALL.txt
VERSION
buildscripts/ps-to-gifs.sh [changed mode: 0644->0755]
flower/include/pointer.hh
input/bugs/dots.fly
input/bugs/dots.ly [new file with mode: 0644]
input/bugs/dotted-collision.ly [new file with mode: 0644]
lily/align-note-column-engraver.cc
lily/all-font-metrics.cc
lily/bar.cc
lily/beam.cc
lily/break-align-item.cc
lily/breathing-sign.cc
lily/chord-name.cc
lily/chord.cc
lily/clef-item.cc
lily/collision.cc
lily/crescendo.cc
lily/dot-column.cc
lily/dots.cc
lily/grace-align-item.cc
lily/hara-kiri-engraver.cc
lily/hyphen-spanner.cc
lily/includable-lexer.cc
lily/include/bar.hh
lily/include/beam.hh
lily/include/break-align-item.hh
lily/include/breathing-sign.hh
lily/include/chord-name.hh
lily/include/clef-item.hh
lily/include/collision.hh
lily/include/crescendo.hh
lily/include/dot-column.hh
lily/include/dots.hh
lily/include/extender-spanner.hh
lily/include/grace-align-item.hh
lily/include/hyphen-spanner.hh
lily/include/key-item.hh
lily/include/local-key-item.hh
lily/include/main.hh
lily/include/molecule.hh
lily/include/multi-measure-rest.hh
lily/include/note-column.hh
lily/include/note-head.hh
lily/include/rest-collision.hh
lily/include/rest.hh
lily/include/rhythmic-head.hh
lily/include/score-element.hh
lily/include/script-column.hh
lily/include/script.hh
lily/include/slur.hh
lily/include/span-bar.hh
lily/include/staff-symbol.hh
lily/include/stem-tremolo.hh
lily/include/stem.hh
lily/include/system-start-delimiter.hh
lily/include/tie-column.hh
lily/include/tie.hh
lily/include/time-signature.hh
lily/include/tuplet-spanner.hh
lily/include/volta-spanner.hh
lily/key-item.cc
lily/lexer.ll
lily/lily-guile.cc
lily/line-of-score.cc
lily/local-key-item.cc
lily/lyric-extender.cc
lily/main.cc
lily/multi-measure-rest.cc
lily/my-lily-parser.cc
lily/note-column.cc
lily/note-head.cc
lily/paper-score.cc
lily/performance.cc
lily/rest-collision.cc
lily/rest.cc
lily/rhythmic-head.cc
lily/score-element.cc
lily/score.cc
lily/scores.cc
lily/script-column.cc
lily/script.cc
lily/slur.cc
lily/span-bar-engraver.cc
lily/span-bar.cc
lily/staff-symbol.cc
lily/stem-tremolo.cc
lily/stem.cc
lily/sustain-pedal.cc
lily/system-start-delimiter.cc
lily/text-item.cc
lily/tie-column.cc
lily/tie.cc
lily/time-signature.cc
lily/tuplet-spanner.cc
lily/volta-spanner.cc
ly/engraver.ly
ly/part-paper.ly
make/out/lilypond.lsm
make/out/lilypond.spec
mf/feta-toevallig.mf
po/lilypond.pot
po/nl.po
scripts/abc2ly.py

diff --git a/CHANGES b/CHANGES
index 5ac9585f13d512d0df03331698fbd97b203bd5a7..9d3aa6b1705c27ba2b4ea16392cf0110c0fdf703 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,18 +1,15 @@
-1.3.61.jcn2
-===========
-
-* Included dutch po-update based on submitted 1.3.57 nl.po
+1.3.62
+======
 
 
-* Added "Development" link to website, now that "Home" is a relative link.
+* Made callbacks from Score_element::before_line_breaking() and
+Score_element::after_line_breaking()
 
 
-1.3.60.jcn2
-===========
+* Fixed website; backlinks should work again.
 
 
-* Did som more webpage hacking and made some make website fixes, back links
-  should work again.
+* Removed --ignore-version option. Added --verbose option.
 
 
-1.3.60.jcn1
-===========
+1.3.61
+======
 
 * Webpage hacking
 
 
 * Webpage hacking
 
index 5bc712509ff6cddff974519c06916c2961dece92..22300ddee0333614c4b779173d1471f0bc331de2 100644 (file)
@@ -37,7 +37,6 @@ which substitutes some @AT_VARIABLES@ as well.
     <table align=left>
       <tr><td bgcolor="#e8e8ff"><a href="@INDEX@"><b>Home</b></a></td></tr>
       <tr><td><font size=-1>
     <table align=left>
       <tr><td bgcolor="#e8e8ff"><a href="@INDEX@"><b>Home</b></a></td></tr>
       <tr><td><font size=-1>
-        <a href="http://www.cs.uu.nl/~hanwen/lilypond">Development</a><br>
         <a href="http://appel.dyndns.org/lilypond">Hacking</a><br>
         <a href="http://www.gnu.org">GNU Project</a><br>
         <a href="http://www2.iro.umontreal.ca/~pinard/po/registry.cgi?domain=lilypond">Translations</a><br>
         <a href="http://appel.dyndns.org/lilypond">Hacking</a><br>
         <a href="http://www.gnu.org">GNU Project</a><br>
         <a href="http://www2.iro.umontreal.ca/~pinard/po/registry.cgi?domain=lilypond">Translations</a><br>
index bca84206475b345267041bb302c91aa948831326..f7d9daed120f6beea0e43a3afa4d0f6ac7db6d94 100644 (file)
@@ -61,10 +61,13 @@ NT/95/98 as well.  See Section Windows NT/95,es.
 Check out
 @uref{ftp://ftp.python.org} or @uref{ftp://ftp.cwi.nl/pub/python}.
 
 Check out
 @uref{ftp://ftp.python.org} or @uref{ftp://ftp.cwi.nl/pub/python}.
 
-@item  GUILE 1.3.4,  check out @uref{http://www.gnu.org/software/guile/guile.html,http://www.gnu.org/software/guile/guile.html}.
+@item  GUILE 1.3.4 or newer,  check out
+@uref{http://www.gnu.org/software/guile/guile.html,http://www.gnu.org/software/guile/guile.html}.
+Version 1.4 is recommended for better performance.
 
 
-@item GNU make. 
-Check out @uref{ftp://ftp.gnu.org/gnu/make/,ftp://ftp.gnu.org/gnu/make/}.
+@item GNU Make. 
+Check out
+@uref{ftp://ftp.gnu.org/gnu/make/,ftp://ftp.gnu.org/gnu/make/}.
 
 @item Flex (version 2.5.4 or newer). 
 Check out @uref{ftp://ftp.gnu.org/gnu/flex/,ftp://ftp.gnu.org/gnu/flex/}.
 
 @item Flex (version 2.5.4 or newer). 
 Check out @uref{ftp://ftp.gnu.org/gnu/flex/,ftp://ftp.gnu.org/gnu/flex/}.
index 87993537ae4cb43baca46d8e375fc87a5f722299..f5da04c8c7b1e570dbc9dff7520b1da4e2bf47be 100644 (file)
@@ -707,7 +707,7 @@ Sammartini.  It was composed around 1740.
 
 @mudela[verbatim]
 
 
 @mudela[verbatim]
 
-\version "1.3.61";
+\version "1.3.60";
 \include "paper16.ly";
 
 viola = \notes \relative c' \context Voice = viola {
 \include "paper16.ly";
 
 viola = \notes \relative c' \context Voice = viola {
index 75215d77dc1070b9d090a0bb915b32fd79b13978..a5d6534d996aa533dbc0725626a69cfab7a0bec4 100644 (file)
@@ -53,11 +53,12 @@ Prerequisites
    * Python 1.5, Check out `ftp://ftp.python.org' or
      `ftp://ftp.cwi.nl/pub/python'.
 
    * Python 1.5, Check out `ftp://ftp.python.org' or
      `ftp://ftp.cwi.nl/pub/python'.
 
-   * GUILE 1.3.4,  check out
+   * GUILE 1.3.4 or newer,  check out
      http://www.gnu.org/software/guile/guile.html
      http://www.gnu.org/software/guile/guile.html
-     (http://www.gnu.org/software/guile/guile.html).
+     (http://www.gnu.org/software/guile/guile.html).  Version 1.4 is
+     recommended for better performance.
 
 
-   * GNU make.  Check out ftp://ftp.gnu.org/gnu/make/
+   * GNU Make.  Check out ftp://ftp.gnu.org/gnu/make/
      (ftp://ftp.gnu.org/gnu/make/).
 
    * Flex (version 2.5.4 or newer).  Check out
      (ftp://ftp.gnu.org/gnu/make/).
 
    * Flex (version 2.5.4 or newer).  Check out
diff --git a/VERSION b/VERSION
index d8db4f2a28e12a76bc271b21f8ce370a44c599fe..e2d5f09aafef7304dee4135c516c5e0e50eb8e59 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,8 +1,8 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=3
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=3
-PATCH_LEVEL=61
-MY_PATCH_LEVEL=jcn2
+PATCH_LEVEL=62
+MY_PATCH_LEVEL=
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
old mode 100644 (file)
new mode 100755 (executable)
index 726f3c7e34caedbbd8d37a82e4e85bba89cef49a..850ec183486e8f16bda41c6a433d7e44a46752dd 100644 (file)
@@ -10,6 +10,8 @@
 #ifndef POINTER_HH
 #define POINTER_HH
 
 #ifndef POINTER_HH
 #define POINTER_HH
 
+#error
+
 /** P<T> is a handy template to use iso T*. It inits to 0, deletes on
   destruction, deep copies upon copying
 
 /** P<T> is a handy template to use iso T*. It inits to 0, deletes on
   destruction, deep copies upon copying
 
index 4372115e2023a736d3671a4c868019c422cc14fe..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,2 +0,0 @@
-
-\context Voice { <f,4. c'' d e f>}
diff --git a/input/bugs/dots.ly b/input/bugs/dots.ly
new file mode 100644 (file)
index 0000000..6dfd11a
--- /dev/null
@@ -0,0 +1,3 @@
+\score {
+\notes\context Voice { <f,4. c'' d e f>}
+}
diff --git a/input/bugs/dotted-collision.ly b/input/bugs/dotted-collision.ly
new file mode 100644 (file)
index 0000000..e56cd2c
--- /dev/null
@@ -0,0 +1,58 @@
+\header{
+enteredby =  "Donat Wullschleger";
+}
+
+\version "1.3.59";
+
+\include "paper16.ly";
+\include "deutsch.ly";
+
+righthandfirstvoice =  \notes \relative c''
+ \context Voice = upper {
+  \key b \major;
+  \time 6/8;
+
+  r8. r8. r8. r8. |
+  r4. r4. |
+  r2. |
+
+  \bar "|.";
+}
+
+lefthandfirstvoice =  \notes \relative c
+   \context Voice = upper {
+  \voiceone
+  \key b \major;
+  \clef bass;
+
+  as4. [g8 a16 h c8] |
+  as4. [g8 a16 h c8] |
+  as4. [g8 a16 h c8] |
+}
+
+lefthandsecondvoice =  \notes \relative c
+   \context Voice = lower {
+  \voicetwo
+  r2. |
+  r4. r4. |
+  r8. r8. r8. r8. |
+}
+
+\score{ 
+ \context PianoStaff \notes <
+  \context Staff = top <
+  \righthandfirstvoice
+  >
+  \context Staff = bottom <
+  \lefthandfirstvoice
+  \lefthandsecondvoice
+  >
+  > 
+
+ \paper{
+  \translator{
+          \OrchestralScoreContext
+   }
+
+ }
+}
index c034b0df9cd2411f1c97ab1d98fafe1d3bcdff2b..74d165a141f7fb6270a374f4c846c34e8663302a 100644 (file)
@@ -45,7 +45,7 @@ Align_note_column_engraver::Align_note_column_engraver()
 void
 Align_note_column_engraver::do_creation_processing ()
 {
 void
 Align_note_column_engraver::do_creation_processing ()
 {
-  align_item_p_ = new Grace_align_item (SCM_EOL);
+  align_item_p_ = new Grace_align_item (get_property ("basicGraceAlignItemProperties"));
   Side_position_interface (align_item_p_).set_axis (X_AXIS);
   Side_position_interface (align_item_p_).set_direction (LEFT);
   
   Side_position_interface (align_item_p_).set_axis (X_AXIS);
   Side_position_interface (align_item_p_).set_direction (LEFT);
   
index eba97b0ec6b0d2819805cb80f90fa21228f6fd39..f8e2c0cee1ae37ed3c061af5ec6d3c97f769c445 100644 (file)
@@ -33,11 +33,15 @@ All_font_metrics::find_afm (String name)
       path = search_path_.find (path);
       if (path.empty_b ())
        return 0;
       path = search_path_.find (path);
       if (path.empty_b ())
        return 0;
-      progress_indication ("[" + path);
+
+      if (verbose_global_b)
+       progress_indication ("[" + path);
       Adobe_font_metric * afm_p = read_afm_file (path);
 
       afm_p->name_ = ly_symbol2scm (name.ch_C ());
       Adobe_font_metric * afm_p = read_afm_file (path);
 
       afm_p->name_ = ly_symbol2scm (name.ch_C ());
-      progress_indication ("]");
+
+      if (verbose_global_b)
+       progress_indication ("]");
 
       afm_p_dict_.set (sname,afm_p->self_scm_);
     }
 
       afm_p_dict_.set (sname,afm_p->self_scm_);
     }
@@ -76,10 +80,13 @@ All_font_metrics::find_tfm (String name)
       path = search_path_.find (path);
       if (path.empty_b ())
        return 0;
       path = search_path_.find (path);
       if (path.empty_b ())
        return 0;
-      progress_indication ("[" + path);
+      if (verbose_global_b)
+       progress_indication ("[" + path);
       Tex_font_metric  * tfm_p = Tex_font_metric_reader::read_file (path);
       tfm_p->name_ = ly_symbol2scm (name.ch_C( ));
       Tex_font_metric  * tfm_p = Tex_font_metric_reader::read_file (path);
       tfm_p->name_ = ly_symbol2scm (name.ch_C( ));
-      progress_indication ("]");
+
+      if (verbose_global_b)
+       progress_indication ("]");
 
       tfm_p_dict_.set (sname, tfm_p->self_scm_);
     }
 
       tfm_p_dict_.set (sname, tfm_p->self_scm_);
     }
@@ -119,8 +126,8 @@ All_font_metrics::find_font (String name)
   if (f)
     return f;
 
   if (f)
     return f;
 
-  non_fatal_error (_f ("can't find default font: `%s'", def_name.ch_C ()));
-  non_fatal_error (_f ("(search path: `%s')", search_path_.str ()));
+  error (_f ("can't find default font: `%s'", def_name.ch_C ()));
+  error (_f ("(search path: `%s')", search_path_.str ()));
   error (_ ("Giving up"));
 
   return 0;
   error (_ ("Giving up"));
 
   return 0;
index ea076435857e0096f56c8d37a1d758ac1c249185..8b9ecadc6069c728991e3d419cc7005caf880a2b 100644 (file)
@@ -33,7 +33,7 @@ Bar::get_bar_size () const
 
 
 SCM 
 
 
 SCM 
-Bar::scheme_molecule (SCM smob) 
+Bar::brew_molecule (SCM smob) 
 {
   Score_element * self = unsmob_element (smob);
   Bar * fly = dynamic_cast<Bar*> (self);
 {
   Score_element * self = unsmob_element (smob);
   Bar * fly = dynamic_cast<Bar*> (self);
@@ -46,7 +46,7 @@ Bar::scheme_molecule (SCM smob)
   return SCM_EOL;
 }
 
   return SCM_EOL;
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Bar);
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Bar,brew_molecule);
 
 Molecule
 Bar::compound_barline (String str, Real h) const
 
 Molecule
 Bar::compound_barline (String str, Real h) const
@@ -132,8 +132,9 @@ Bar::simple_barline (Real w, Real h) const
 }
 
 
 }
 
 
-void
-Bar::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Bar,before_line_breaking );
+SCM
+Bar::member_before_line_breaking  ()
 {
   SCM g = get_elt_property ("glyph");
   SCM orig = g;
 {
   SCM g = get_elt_property ("glyph");
   SCM orig = g;
@@ -162,6 +163,9 @@ Bar::before_line_breaking ()
     }
   else if (! gh_equal_p  (g, orig))
     set_elt_property ("glyph", g);
     }
   else if (! gh_equal_p  (g, orig))
     set_elt_property ("glyph", g);
+
+
+  return SCM_UNDEFINED;
 }
   
 
 }
   
 
index e131cbc17c176f47794847a9f7f1af67b28e4dd4..08173a742f8b9d194b0a1659810ddcd26bed85d4 100644 (file)
@@ -81,8 +81,9 @@ Beam::get_multiplicity () const
   [Alternatively, stems could set its own directions, according to
    their beam, during 'final-pre-processing'.]
  */
   [Alternatively, stems could set its own directions, according to
    their beam, during 'final-pre-processing'.]
  */
-void
-Beam::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Beam,before_line_breaking);
+SCM
+Beam::member_before_line_breaking ()
 {
   // Why?
   if (visible_stem_count () < 2)
 {
   // Why?
   if (visible_stem_count () < 2)
@@ -96,7 +97,9 @@ Beam::before_line_breaking ()
 
   auto_knees ();
   set_stem_directions ();
 
   auto_knees ();
   set_stem_directions ();
-  set_stem_shorten (); 
+  set_stem_shorten ();
+
+  return SCM_EOL;
 }
 
 /*
 }
 
 /*
@@ -267,8 +270,9 @@ Beam::set_stem_shorten ()
   Set elt properties height and y-position if not set.
   Adjust stem lengths to reach beam.
  */
   Set elt properties height and y-position if not set.
   Adjust stem lengths to reach beam.
  */
-void
-Beam::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Beam,after_line_breaking);
+SCM
+Beam::member_after_line_breaking ()
 {
   /* first, calculate y, dy */
   Real y, dy;
 {
   /* first, calculate y, dy */
   Real y, dy;
@@ -333,7 +337,10 @@ Beam::after_line_breaking ()
   // UGH. Y is not in staff position unit?
   // Ik dacht datwe daar juist van weg wilden?
   set_stem_length (y, dy);
   // UGH. Y is not in staff position unit?
   // Ik dacht datwe daar juist van weg wilden?
   set_stem_length (y, dy);
-  set_elt_property ("y-position", gh_double2scm (y)); 
+  set_elt_property ("y-position", gh_double2scm (y));
+
+
+  return SCM_UNDEFINED;
 }
 
 /*
 }
 
 /*
@@ -719,14 +726,13 @@ Beam::stem_beams (Stem *here, Stem *next, Stem *prev) const
   return leftbeams;
 }
 
   return leftbeams;
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS (Beam);
-
-Molecule 
-Beam::do_brew_molecule () const
+GLUE_SCORE_ELEMENT(Beam,brew_molecule);
+SCM
+Beam::member_brew_molecule () const
 {
   Molecule mol;
   if (!stem_count ())
 {
   Molecule mol;
   if (!stem_count ())
-    return mol;
+    return SCM_EOL;
   Real x0,dx;
   if (visible_stem_count ())
     {
   Real x0,dx;
   if (visible_stem_count ())
     {
@@ -757,7 +763,7 @@ Beam::do_brew_molecule () const
   mol.translate_axis (x0 
     - get_bound (LEFT)->relative_coordinate (0, X_AXIS), X_AXIS);
 
   mol.translate_axis (x0 
     - get_bound (LEFT)->relative_coordinate (0, X_AXIS), X_AXIS);
 
-  return mol;
+  return mol.create_scheme ();
 }
 
 int
 }
 
 int
index 6e5722ca1282658e9bf4bb6c39ae18758fd02c5a..bbea713e2bb8d1f711fad9d141242db4371b5c9a 100644 (file)
@@ -20,8 +20,9 @@
 #include "group-interface.hh"
 #include "align-interface.hh"
 
 #include "group-interface.hh"
 #include "align-interface.hh"
 
-void
-Break_align_item::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Break_align_item,before_line_breaking);
+SCM
+Break_align_item::member_before_line_breaking ()
 {
   if (break_status_dir() == LEFT)
     {
 {
   if (break_status_dir() == LEFT)
     {
@@ -48,7 +49,7 @@ Break_align_item::before_line_breaking ()
     }
   
   if (!elems.size ())
     }
   
   if (!elems.size ())
-    return;
+    return SCM_UNDEFINED;
 
   SCM symbol_list = SCM_EOL;
   Array<Real> dists;
 
   SCM symbol_list = SCM_EOL;
   Array<Real> dists;
@@ -168,7 +169,9 @@ Break_align_item::before_line_breaking ()
   column_l ()->set_elt_property ("stretch-distance",
                                 gh_cons (gh_double2scm (-dists[0]),
                                          gh_double2scm (stretch_distance)));
   column_l ()->set_elt_property ("stretch-distance",
                                 gh_cons (gh_double2scm (-dists[0]),
                                          gh_double2scm (stretch_distance)));
-                                
+
+
+  return SCM_UNDEFINED;
 }
 
 Break_align_item::Break_align_item (SCM s)
 }
 
 Break_align_item::Break_align_item (SCM s)
index a78e6106450d7bb521548a410d086b4667d42358..6c337642d1fa21efbb0ff64c57735a3e0f80265a 100644 (file)
@@ -28,10 +28,10 @@ Breathing_sign::Breathing_sign (SCM  s)
 
 
 
 
 
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Breathing_sign);
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Breathing_sign,brew_molecule);
 
 SCM 
 
 SCM 
-Breathing_sign::scheme_molecule (SCM smob)
+Breathing_sign::brew_molecule (SCM smob)
 {
   Score_element * sc = unsmob_element (smob);
   Staff_symbol_referencer_interface si (sc);
 {
   Score_element * sc = unsmob_element (smob);
   Staff_symbol_referencer_interface si (sc);
@@ -45,8 +45,9 @@ Breathing_sign::scheme_molecule (SCM smob)
   return sc->lookup_l()->filledbox(b).create_scheme ();
 }
 
   return sc->lookup_l()->filledbox(b).create_scheme ();
 }
 
-void
-Breathing_sign::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Breathing_sign,after_line_breaking);
+SCM
+Breathing_sign::member_after_line_breaking ()
 {
   Real space = staff_symbol_referencer (this).staff_space();
   Direction d = directional_element (this). get ();
 {
   Real space = staff_symbol_referencer (this).staff_space();
   Direction d = directional_element (this). get ();
@@ -57,5 +58,7 @@ Breathing_sign::after_line_breaking ()
     }
 
   translate_axis(2.0 * space * d, Y_AXIS);
     }
 
   translate_axis(2.0 * space * d, Y_AXIS);
+
+  return SCM_UNDEFINED;
 }
 
 }
 
index b2ed2442674dcb42b82a8ed34c22b8e6a6caab0e..0d4ff138499a7b2fe91603e5b84df0bfaa033951 100644 (file)
@@ -128,10 +128,10 @@ Chord_name::ly_text2molecule (SCM text) const
   return mol;
 }
 
   return mol;
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Chord_name);
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Chord_name,brew_molecule);
 
 SCM
 
 SCM
-Chord_name::scheme_molecule (SCM smob) 
+Chord_name::brew_molecule (SCM smob) 
 {
   Score_element *sc = unsmob_element (smob);
   SCM style = sc->get_elt_property ("style");
 {
   Score_element *sc = unsmob_element (smob);
   SCM style = sc->get_elt_property ("style");
index 8fa7611e55d49aef2194a453789f8cc4d54ef736..2eb762b7786e075da698b1a4be1a1d3a127927f7 100644 (file)
@@ -49,7 +49,7 @@ to_chord (Musical_pitch tonic, Array<Musical_pitch>* add_arr_p, Array<Musical_pi
       int j = Chord::find_pitch_i (add_arr_p, (*add_arr_p)[i]);
       if ((j != -1) && (i != j))
         {
       int j = Chord::find_pitch_i (add_arr_p, (*add_arr_p)[i]);
       if ((j != -1) && (i != j))
         {
-           add_arr_p->get (i);
+         add_arr_p->get (i);
        } 
     }
 
        } 
     }
 
@@ -400,7 +400,7 @@ Chord::find_tonic_i (Array<Musical_pitch> const* pitch_arr_p)
     find tonic
     
     first try: base of longest line of thirds
     find tonic
     
     first try: base of longest line of thirds
-   */
+  */
   int tonic_i = 0;
   int longest_i = 0;
   for (int i = 0; i < pitch_arr_p->size (); i++)
   int tonic_i = 0;
   int longest_i = 0;
   for (int i = 0; i < pitch_arr_p->size (); i++)
@@ -437,7 +437,7 @@ Chord::find_tonic_i (Array<Musical_pitch> const* pitch_arr_p)
       {
        int gap = (*pitch_arr_p)[i].notename_i_
          - (*pitch_arr_p)[(i - 1 + pitch_arr_p->size ()) 
       {
        int gap = (*pitch_arr_p)[i].notename_i_
          - (*pitch_arr_p)[(i - 1 + pitch_arr_p->size ()) 
-         % pitch_arr_p->size ()].notename_i_;
+                         % pitch_arr_p->size ()].notename_i_;
        while (gap < 0)
          gap += 7;
        gap %= 7;
        while (gap < 0)
          gap += 7;
        gap %= 7;
index 64df471244c0e382e22044c2c403ef914670fd56..781522d697009792392ab1029d5e34dbcaa6d97a 100644 (file)
@@ -22,8 +22,9 @@ FIXME: should use symbol.
 
 FIXME: this should be schemified.
 */
 
 FIXME: this should be schemified.
 */
-void
-Clef_item::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Clef_item,before_line_breaking);
+SCM
+Clef_item::member_before_line_breaking ()
 {
   SCM style_sym =get_elt_property ("style");
   String style;
 {
   SCM style_sym =get_elt_property ("style");
   String style;
@@ -49,7 +50,7 @@ Clef_item::before_line_breaking ()
   else
     {
       suicide ();
   else
     {
       suicide ();
-      return;
+      return SCM_UNDEFINED;
     }
 
   // ugh.
     }
 
   // ugh.
@@ -59,6 +60,8 @@ Clef_item::before_line_breaking ()
       set_elt_property ("molecule-callback", SCM_BOOL_T);
       set_extent_callback (0, X_AXIS);
     }
       set_elt_property ("molecule-callback", SCM_BOOL_T);
       set_extent_callback (0, X_AXIS);
     }
+
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
index 52498e533a5d0195230756152dfeceb3d81b3a3b..4807e47b7adae1a4989262ea8cdfe7d30ad0d36c 100644 (file)
@@ -27,10 +27,12 @@ Collision::add_column (Note_column* ncol_l)
   add_dependency (ncol_l);
 }
 
   add_dependency (ncol_l);
 }
 
-void
-Collision::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Collision,before_line_breaking);
+SCM
+Collision::member_before_line_breaking ()
 {
   do_shifts();
 {
   do_shifts();
+      return SCM_UNDEFINED;
 }
 
 /*
 }
 
 /*
index d119ca9a04cf818ae9e70b370e11c56517aafd5a..7890d5cf0057c631b37ed5e8eaaa951be0650064 100644 (file)
@@ -24,9 +24,10 @@ Crescendo::Crescendo (SCM s)
 
 
 
 
 
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Crescendo)
-Molecule 
-Crescendo::do_brew_molecule () const
+GLUE_SCORE_ELEMENT(Crescendo,brew_molecule);
+
+SCM
+Crescendo::member_brew_molecule () const
 {
   Real absdyn_dim = paper_l ()-> get_var ("crescendo_shorten");
   Real extra_left =  get_broken_left_end_align ();
 {
   Real absdyn_dim = paper_l ()-> get_var ("crescendo_shorten");
   Real extra_left =  get_broken_left_end_align ();
@@ -38,9 +39,7 @@ Crescendo::do_brew_molecule () const
     {
       Crescendo * me = (Crescendo*)this;
       me->suicide ();
     {
       Crescendo * me = (Crescendo*)this;
       me->suicide ();
-      Molecule m;
-      
-      return m;
+      return SCM_EOL;
     }
   
   Direction gd = to_dir (dir);
     }
   
   Direction gd = to_dir (dir);
@@ -133,7 +132,7 @@ Crescendo::do_brew_molecule () const
   m.add_at_edge (X_AXIS, RIGHT, span, pad);
   m.translate_axis (extra_left, X_AXIS);
 
   m.add_at_edge (X_AXIS, RIGHT, span, pad);
   m.translate_axis (extra_left, X_AXIS);
 
-  return m;
+  return m.create_scheme ();
 }
 
 
 }
 
 
index 75b86cf65785a6b166e27ee89eb23204599ad78d..1caf93797849862849291611f95fec7c5be9508f 100644 (file)
@@ -74,14 +74,16 @@ Dot_column::Dot_column (SCM s)
 
    Should be smarter.
  */
 
    Should be smarter.
  */
-void
-Dot_column::after_line_breaking ()
+
+GLUE_SCORE_ELEMENT(Dot_column,after_line_breaking);
+SCM
+Dot_column::member_after_line_breaking ()
 {
   Link_array<Dots> dots = Pointer_group_interface__extract_elements (this, (Dots*)0 , "dots"); 
   dots.sort (Dot_column::compare);
   
   if (dots.size () < 2)
 {
   Link_array<Dots> dots = Pointer_group_interface__extract_elements (this, (Dots*)0 , "dots"); 
   dots.sort (Dot_column::compare);
   
   if (dots.size () < 2)
-    return;
+    return SCM_UNDEFINED;
   Slice s;
   s.set_empty ();
 
   Slice s;
   s.set_empty ();
 
@@ -101,7 +103,8 @@ Dot_column::after_line_breaking ()
     }
 
   if (!conflicts)
     }
 
   if (!conflicts)
-    return;
+  return SCM_UNDEFINED;
+
   
   int  middle = s.center ();
   /*
   
   int  middle = s.center ();
   /*
@@ -111,8 +114,10 @@ Dot_column::after_line_breaking ()
   if (!(pos % 2))
     pos ++;                    // center () rounds down.
 
   if (!(pos % 2))
     pos ++;                    // center () rounds down.
 
-  for (int i=0; i  <dots.size (); pos += 2, i++)
+  for (int i=0; i dots.size (); pos += 2, i++)
     {
       staff_symbol_referencer (dots[i]).set_position(pos);
     }
     {
       staff_symbol_referencer (dots[i]).set_position(pos);
     }
+
+  return SCM_UNDEFINED;
 }
 }
index c77175e0ad968b9a22c52e9c9a9f3fcdf3f66d4f..9dc8c8b75b97067de064041ef749d43c07caa2d3 100644 (file)
@@ -18,8 +18,9 @@ Dots::Dots (SCM s)
 {
 }
 
 {
 }
 
-void
-Dots::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Dots,after_line_breaking);
+SCM
+Dots::member_after_line_breaking ()
 {
   SCM d= get_elt_property ("dot-count");
   if (gh_number_p (d) && gh_scm2int (d))
 {
   SCM d= get_elt_property ("dot-count");
   if (gh_number_p (d) && gh_scm2int (d))
@@ -32,12 +33,15 @@ Dots::after_line_breaking ()
       if (!(p % 2))
        si.set_position (p  + directional_element (this).get ());
     }
       if (!(p % 2))
        si.set_position (p  + directional_element (this).get ());
     }
+
+    return SCM_UNDEFINED;
+
 }
 
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Dots);
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Dots,brew_molecule);
 
 SCM  
 
 SCM  
-Dots::scheme_molecule (SCM d)
+Dots::brew_molecule (SCM d)
 {
   Score_element *sc = unsmob_element (d);
   Molecule mol (sc->lookup_l ()->blank (Box (Interval (0,0),
 {
   Score_element *sc = unsmob_element (d);
   Molecule mol (sc->lookup_l ()->blank (Box (Interval (0,0),
index 654f44139edaa4c3ed7c5235c88f11cd18775faa..e4467a9e3fe1bb0a6fe6d2af12f18fcdf9362cac 100644 (file)
@@ -24,8 +24,9 @@ Grace_align_item::Grace_align_item (SCM s)
 /*
   TODO: cfg-able
  */
 /*
   TODO: cfg-able
  */
-void
-Grace_align_item::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Grace_align_item,before_line_breaking);
+SCM
+Grace_align_item::member_before_line_breaking ()
 {
   Real nhw = // lookup_l ()->notehead (2, "")..extent (X_AXIS).length();
     paper_l ()->get_var ("quartwidth");
 {
   Real nhw = // lookup_l ()->notehead (2, "")..extent (X_AXIS).length();
     paper_l ()->get_var ("quartwidth");
@@ -34,6 +35,9 @@ Grace_align_item::before_line_breaking ()
                    gh_cons (gh_double2scm (nhw* 1.5),
                             gh_double2scm (infinity_f)));
   column_l ()->set_elt_property ("contains-grace", SCM_BOOL_T);
                    gh_cons (gh_double2scm (nhw* 1.5),
                             gh_double2scm (infinity_f)));
   column_l ()->set_elt_property ("contains-grace", SCM_BOOL_T);
+
+  return SCM_UNDEFINED;
+
 }
 
 
 }
 
 
index cab10f8cb34090c6555cd6f3aeb1be508f070bca..10eca4fe1d181149ce7e4a2bfe090d67811b7e17 100644 (file)
@@ -6,14 +6,14 @@
   (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
   (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
-#include "hara-kiri-vertical-group-spanner.hh"
+#include "hara-kiri-group-spanner.hh"
 #include "hara-kiri-engraver.hh"
 #include "rhythmic-head.hh"
 
 Spanner*
 Hara_kiri_engraver::get_spanner_p () const
 {
 #include "hara-kiri-engraver.hh"
 #include "rhythmic-head.hh"
 
 Spanner*
 Hara_kiri_engraver::get_spanner_p () const
 {
-  return new Hara_kiri_group_spanner (SCM_EOL);
+  return new Hara_kiri_group_spanner (get_property ("basicHaraKiriVerticalGroupspannerProperties"));
 }
 
 void
 }
 
 void
index 165c6c6b11b67220af834004f50ed99608c7e1d9..624f682be20234a3c1085a7c60e04e85ae908856 100644 (file)
 #include "spanner.hh"
 #include "item.hh"
 
 #include "spanner.hh"
 #include "item.hh"
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Hyphen_spanner)
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Hyphen_spanner,brew_molecule)
 
 SCM 
 
 SCM 
-Hyphen_spanner::scheme_molecule (SCM smob)
+Hyphen_spanner::brew_molecule (SCM smob)
 {
   Spanner * sp  =dynamic_cast<Spanner*> (unsmob_element (smob));
   Molecule  mol;
 {
   Spanner * sp  =dynamic_cast<Spanner*> (unsmob_element (smob));
   Molecule  mol;
index a73b2266b17664c92d0f26c1047b2d1f60032cd9..b4ee0f2821db88992d8eaa9e22994912dd884366 100644 (file)
@@ -14,6 +14,7 @@
 #include "source-file.hh"
 #include "source.hh"
 #include "debug.hh"
 #include "source-file.hh"
 #include "source.hh"
 #include "debug.hh"
+#include "main.hh"
 
 #ifndef YY_BUF_SIZE
 #define YY_BUF_SIZE 16384
 
 #ifndef YY_BUF_SIZE
 #define YY_BUF_SIZE 16384
@@ -57,7 +58,9 @@ Includable_lexer::new_input (String s, Sources  * global_sources)
   char_count_stack_.push (0);
   if (yy_current_buffer)
     state_stack_.push (yy_current_buffer);
   char_count_stack_.push (0);
   if (yy_current_buffer)
     state_stack_.push (yy_current_buffer);
-       progress_indication (String ("[") + s);
+
+  if (verbose_global_b)
+    progress_indication (String ("[") + s);
        
   include_stack_.push (sl);
 
        
   include_stack_.push (sl);
 
@@ -81,7 +84,9 @@ Includable_lexer::new_input (String name, String data, Sources* sources)
   char_count_stack_.push (0);
   if (yy_current_buffer)
     state_stack_.push (yy_current_buffer);
   char_count_stack_.push (0);
   if (yy_current_buffer)
     state_stack_.push (yy_current_buffer);
-       progress_indication (String ("[") + name);
+
+  if (verbose_global_b)
+    progress_indication (String ("[") + name);
   include_stack_.push (file);
 
   yy_switch_to_buffer (yy_create_buffer (file->istream_l (), YY_BUF_SIZE));
   include_stack_.push (file);
 
   yy_switch_to_buffer (yy_create_buffer (file->istream_l (), YY_BUF_SIZE));
@@ -94,7 +99,8 @@ Includable_lexer::close_input ()
 {
   include_stack_.pop ();
   char_count_stack_.pop ();
 {
   include_stack_.pop ();
   char_count_stack_.pop ();
-  progress_indication ("]");
+  if (verbose_global_b)
+    progress_indication ("]");
   yy_delete_buffer (yy_current_buffer);
   yy_current_buffer = 0;
   if (state_stack_.empty ())
   yy_delete_buffer (yy_current_buffer);
   yy_current_buffer = 0;
   if (state_stack_.empty ())
index 8d408c04b9313e6aac495d77c82ad15f93ff7cf4..92c03f20d87315213a08479af22c0ae6ddb230d5 100644 (file)
@@ -18,11 +18,12 @@ public:
 
   Molecule compound_barline (String, Real height) const;
   Molecule simple_barline (Real wid, Real height) const;      
 
   Molecule compound_barline (String, Real height) const;
   Molecule simple_barline (Real wid, Real height) const;      
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
 
   
 
-protected:
-  virtual void before_line_breaking ();
+public:
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
 
   virtual Real get_bar_size () const;
 };
 
   virtual Real get_bar_size () const;
 };
index 9021a08ab05374486082dde59ea481e77e797bd9..d14801e370a24fc9c0fdcc6266761e40c74ea014 100644 (file)
@@ -26,7 +26,7 @@
 class Beam : public Spanner
 {
 public:
 class Beam : public Spanner
 {
 public:
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
 
   int stem_count () const;
   
 
   int stem_count () const;
@@ -45,11 +45,13 @@ public:
 
   int get_multiplicity () const;
 
 
   int get_multiplicity () const;
 
-protected:
+public:
  
  
-  virtual void before_line_breaking ();
-  virtual void after_line_breaking ();
-  Molecule do_brew_molecule () const;
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
+  SCM member_brew_molecule () const;
 
   Molecule stem_beams (Stem *here, Stem *next, Stem *prev) const;
 private:
 
   Molecule stem_beams (Stem *here, Stem *next, Stem *prev) const;
 private:
index 6ba3cc1b7a8a4c90c10e63b24efb05039c7477f2..0a4a42b59749cffe94e3b152f12928b45191394b 100644 (file)
 
 class Break_align_item : public Item
 {
 
 class Break_align_item : public Item
 {
-protected:
-  virtual void before_line_breaking ();
 public:
 public:
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+
   Break_align_item (SCM s);
   VIRTUAL_COPY_CONS(Score_element);
 };
   Break_align_item (SCM s);
   VIRTUAL_COPY_CONS(Score_element);
 };
index 6ecf02e263908594fe8dc83e4c9bf914994b9bcf..dd495b1db866198b6b1ebb6d31033dce867b3b84 100644 (file)
 class Breathing_sign : public Item
 {
 public:
 class Breathing_sign : public Item
 {
 public:
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
   VIRTUAL_COPY_CONS(Score_element);
   Breathing_sign (SCM s);
   
   VIRTUAL_COPY_CONS(Score_element);
   Breathing_sign (SCM s);
-protected:
-  virtual void after_line_breaking ();
-  Molecule do_brew_molecule () const;
+public:
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
+  SCM member_brew_molecule () const;
 };
 
 #endif // BREATHING_SIGN_HH
 };
 
 #endif // BREATHING_SIGN_HH
index d89e81c2e3e543745ae9dd0c72c517b07efe3892..fae9d217b0a8c67cb07e7b37b7b3779e3ca56f14 100644 (file)
 class Chord_name : public Item
 {
 public:
 class Chord_name : public Item
 {
 public:
-   static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
   
-VIRTUAL_COPY_CONS (Score_element);
+  VIRTUAL_COPY_CONS (Score_element);
   Molecule ly_word2molecule (SCM scm, Real* x) const;
   Molecule ly_text2molecule (SCM scm) const;
   Chord_name(SCM s);
   Molecule ly_word2molecule (SCM scm, Real* x) const;
   Molecule ly_text2molecule (SCM scm) const;
   Chord_name(SCM s);
-protected:
-  Molecule do_brew_molecule () const;
+public:
+  SCM member_brew_molecule () const;
 
 };
 
 
 };
 
index 75aad9b0d83ea5036d3721ec25a87fdb80b8d8ce..e14276ba6783cab7ab058c920c15e743012a53b6 100644 (file)
  */
 class Clef_item : public Item
 {
  */
 class Clef_item : public Item
 {
-protected:
-  virtual void before_line_breaking ();
 public:
 public:
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+
   VIRTUAL_COPY_CONS(Score_element);
   Clef_item (SCM);
 };
   VIRTUAL_COPY_CONS(Score_element);
   Clef_item (SCM);
 };
index 4cb199385686502cff424b420d957762860d50f8..e1297545da24326e47ed29099e664ed146522557 100644 (file)
 */
 class Collision : public Item
 {
 */
 class Collision : public Item
 {
-protected:
+public:
   SCM automatic_shift ();
   SCM forced_shift ();
   void do_shifts ();  
   SCM automatic_shift ();
   SCM forced_shift ();
   void do_shifts ();  
-  virtual void before_line_breaking ();
-public:
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+
     
   void add_column (Note_column*ncol_l);
   Collision(SCM);
     
   void add_column (Note_column*ncol_l);
   Collision(SCM);
index a9d45763207e63a8879ba50cce90a27bed7122d7..e45ef61ffdb6b3914e92339e2c8910aeeef93d71 100644 (file)
  */
 class Crescendo : public Spanner {
 public:
  */
 class Crescendo : public Spanner {
 public:
-   static SCM scheme_molecule (SCM);
+   static SCM brew_molecule (SCM);
   
   
-Crescendo(SCM);
-protected:
+  Crescendo(SCM);
+
   VIRTUAL_COPY_CONS(Score_element);
   VIRTUAL_COPY_CONS(Score_element);
-  Molecule do_brew_molecule() const;
+  SCM member_brew_molecule() const;
     
 private:
   Molecule get_symbol() const;
     
 private:
   Molecule get_symbol() const;
index 9fd7150b82bc2abfcf9775f7a907b85791d029ab..c91d05d3d45089830abd5d1e88f7607b0af425cd 100644 (file)
@@ -25,7 +25,8 @@ public:
   void add_head (Rhythmic_head*);
   Dot_column (SCM);
 
   void add_head (Rhythmic_head*);
   Dot_column (SCM);
 
-protected:
-  virtual void after_line_breaking ();
+
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
 };
 #endif // DOT_COLUMN_HH
 };
 #endif // DOT_COLUMN_HH
index ace3555c6c4195efc227638f145f30a50512fda7..f816cc2a247d49f649c950623f9ddb39a30cdabf 100644 (file)
   */
 class Dots :  public Item
 {
   */
 class Dots :  public Item
 {
-protected:
-  Molecule do_brew_molecule () const;
-  virtual void after_line_breaking ();
 public:
 public:
-   static SCM scheme_molecule (SCM);
-  
+  SCM member_brew_molecule () const;
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
+  static SCM brew_molecule (SCM);
 
   Dots (SCM);
 };
 
   Dots (SCM);
 };
index 0fe3b35b66276d242ba285b816aa985cbede090b..5d7e4c4af93115f68463e4d58fc4e3d6862a1b7e 100644 (file)
@@ -33,7 +33,7 @@ public:
   Spanner*elt_l_;
   Lyric_extender (Spanner*);
   void set_textitem (Direction, Item*);
   Spanner*elt_l_;
   Lyric_extender (Spanner*);
   void set_textitem (Direction, Item*);
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
 };
 
 #endif // EXTENDER_SPANNER_HH
 };
 
 #endif // EXTENDER_SPANNER_HH
index b4f9e94e99de3adebeff72287b445dbd30618061..301178afd3481e458d91274afd663c0876bedda2 100644 (file)
@@ -18,9 +18,10 @@ class Grace_align_item : public Item
 public:
   VIRTUAL_COPY_CONS (Score_element);
   Grace_align_item (SCM);
 public:
   VIRTUAL_COPY_CONS (Score_element);
   Grace_align_item (SCM);
-protected:
+
   virtual void do_add_processing ();
   virtual void do_add_processing ();
-  virtual void before_line_breaking ();
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
 };
 #endif /* GRACE_ALIGN_ITEM_HH */
 
 };
 #endif /* GRACE_ALIGN_ITEM_HH */
 
index f1ef2ea45d4a04a6454fbc9c498154e8e234a5aa..c185c64e962f76d21fd1d8e5109486943b3d8846 100644 (file)
@@ -24,7 +24,7 @@ public:
   Spanner* elt_l_;
   Hyphen_spanner  (Spanner*);
   void set_textitem (Direction, Item*);
   Spanner* elt_l_;
   Hyphen_spanner  (Spanner*);
   void set_textitem (Direction, Item*);
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
 };
 
 #endif // HYPHEN_SPANNER_HH
 };
 
 #endif // HYPHEN_SPANNER_HH
index 8743259021623add22abd8b23e5bfb9427932728..756a2b013988a96ebfd95a408ead2dce78511e54 100644 (file)
@@ -29,11 +29,11 @@ class Key_item :public  Item
 public:
   VIRTUAL_COPY_CONS(Score_element);
   Key_item (SCM);
 public:
   VIRTUAL_COPY_CONS(Score_element);
   Key_item (SCM);
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
 
   
 
-protected:
-  Molecule do_brew_molecule() const;
+
+  SCM member_brew_molecule() const;
 };
 
 #endif // KEYITEM_HH
 };
 
 #endif // KEYITEM_HH
index ccedf0f9b7e7fa222d1bf8248678b6a41d2827a9..0006c857bc16c47e2b0b82bcd59e1b71781ae9ba 100644 (file)
@@ -41,12 +41,13 @@ class Local_key_item : public Item
   Molecule accidental (int,bool,bool) const;
 public:
   Local_key_item (SCM );
   Molecule accidental (int,bool,bool) const;
 public:
   Local_key_item (SCM );
-   static SCM scheme_molecule (SCM);
+   static SCM brew_molecule (SCM);
   
   void add_pitch (Musical_pitch, bool cautionary, bool natural);
   
   void add_pitch (Musical_pitch, bool cautionary, bool natural);
-protected:
-  virtual void before_line_breaking ();
-  Molecule do_brew_molecule() const;
+
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+  SCM member_brew_molecule() const;
 };
 
 #endif // LOCALKEYITEM_HH
 };
 
 #endif // LOCALKEYITEM_HH
index 0d7b4ffa1c6aed20e83fc44c446e224724e886bd..1adae59d0eb123ab01f9f686c433bd83b7fa2275 100644 (file)
@@ -29,7 +29,7 @@ extern int exit_status_i_;
 extern bool experimental_features_global_b;
 extern char const* output_global_ch;
 extern bool dependency_global_b;
 extern bool experimental_features_global_b;
 extern char const* output_global_ch;
 extern bool dependency_global_b;
-extern bool version_ignore_global_b;
+extern bool verbose_global_b;
 
 
 extern Array<String> get_inclusion_names ();
 
 
 extern Array<String> get_inclusion_names ();
index b8153c72a09e96d65ea15338814706af3df5fd41..548085bcff912bfc8228d17e1b1b8a9c183c7506 100644 (file)
@@ -80,7 +80,7 @@ public:
 
 SCM fontify_atom (Font_metric*, SCM atom);
 
 
 SCM fontify_atom (Font_metric*, SCM atom);
 
-Molecule create_molecule (SCM scheme_molecule);
+Molecule create_molecule (SCM brew_molecule);
 
 
 
 
 
 
index 4349b8d3cf48a6012db42c883382a2dac7ff26fd..50ab957bb359c47bcca821949b48cc7c246fdc01 100644 (file)
@@ -17,17 +17,18 @@ class Multi_measure_rest : public Spanner
 {
 public:
   Multi_measure_rest (SCM);
 {
 public:
   Multi_measure_rest (SCM);
- static SCM scheme_molecule (SCM);
+ static SCM brew_molecule (SCM);
   
 
   void add_column (Item*);
   Molecule compound_rest (int)const;
   
 
   void add_column (Item*);
   Molecule compound_rest (int)const;
-protected:
-  Molecule do_brew_molecule () const;
+
+  SCM member_brew_molecule () const;
   VIRTUAL_COPY_CONS (Score_element);
 
   virtual void do_add_processing ();
   VIRTUAL_COPY_CONS (Score_element);
 
   virtual void do_add_processing ();
-  virtual void after_line_breaking ();
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
   virtual Array<Rod> get_rods () const;
 };
 
   virtual Array<Rod> get_rods () const;
 };
 
index 88c2c3601627add17fb4d1e24c5384407a9bddac..c8cf7959e9f2bdd5158a9dfc104e51f1cdaae944 100644 (file)
@@ -17,9 +17,9 @@
 */
 class Note_column : public Item
 {
 */
 class Note_column : public Item
 {
-protected:
-  virtual void after_line_breaking () ;
 public:
 public:
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
   static int shift_compare (Note_column *const &, Note_column*const&);
   
   /** The relative position of the "voice" containing this
   static int shift_compare (Note_column *const &, Note_column*const&);
   
   /** The relative position of the "voice" containing this
index eb86e467704e599f415578b4d287edeeef5c1962..272ed3da9521488112f45ba36e758a74ea0ac40f 100644 (file)
@@ -23,14 +23,15 @@ class Note_head : public Rhythmic_head
 {
 public:
   static int compare (Note_head * const &a, Note_head *const &b) ;
 {
 public:
   static int compare (Note_head * const &a, Note_head *const &b) ;
- static SCM scheme_molecule (SCM);
+ static SCM brew_molecule (SCM);
   
 
   Molecule ledger_line (Interval) const;
   Note_head (SCM);
   
 
   Molecule ledger_line (Interval) const;
   Note_head (SCM);
-protected:
-  virtual void before_line_breaking ();
-  Molecule do_brew_molecule() const;
+
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+  SCM member_brew_molecule() const;
 };
 #endif // NOTEHEAD_HH
 
 };
 #endif // NOTEHEAD_HH
 
index d6f26fa718f32bc5ec803a784246b7512d7558bc..550ed5e0f45a844239b64c0bb44dee5f913cc2f0 100644 (file)
@@ -19,7 +19,8 @@ public:
   Interval rest_dim () const;
     
   Rest_collision(SCM);
   Interval rest_dim () const;
     
   Rest_collision(SCM);
-protected:
-  virtual void before_line_breaking ();
+
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
 };
 #endif // REST_COLLISION_HH
 };
 #endif // REST_COLLISION_HH
index 1977bd67388559ed925fc8c9116004d32b163f55..db36065f0ce919bbaca019f445d17540b321f2de 100644 (file)
  */
 class  Rest : public Rhythmic_head
 {
  */
 class  Rest : public Rhythmic_head
 {
-protected:
-  virtual void after_line_breaking ();
-  Molecule do_brew_molecule () const;
 public:
 public:
-   static SCM scheme_molecule (SCM);
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
+  SCM member_brew_molecule () const;
+
+   static SCM brew_molecule (SCM);
   
 Rest (SCM s);
 };
   
 Rest (SCM s);
 };
index b9fc4415b60c01a7051a956c80e1630650ab5d3c..8145bd911827b9611d598fb4d520ecc73007145f 100644 (file)
@@ -34,8 +34,9 @@ public:
   Stem * stem_l () const;
   Dots * dots_l () const;
   int dot_count () const;
   Stem * stem_l () const;
   Dots * dots_l () const;
   int dot_count () const;
-protected:
-  virtual void after_line_breaking ();
+
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
   Rhythmic_head (SCM s);
 };
 
   Rhythmic_head (SCM s);
 };
 
index 2ded67f8cc51fa228fd41fe17b408b9bff2c9ae9..32398bb089d909ab9fb9d321f03ce60b109698d5 100644 (file)
@@ -152,7 +152,7 @@ public:
 
      #funcptr# is the function to call to update this element.
    */
 
      #funcptr# is the function to call to update this element.
    */
-  void calculate_dependencies (int final, int busy, Score_element_method_pointer funcptr);
+  void calculate_dependencies (int final, int busy, SCM funcname);
 
 
   static SCM handle_broken_smobs (SCM, SCM criterion);
 
 
   static SCM handle_broken_smobs (SCM, SCM criterion);
@@ -163,10 +163,6 @@ public:
   virtual void do_space_processing ();
   virtual void discretionary_processing ();
   virtual void do_derived_mark ();
   virtual void do_space_processing ();
   virtual void discretionary_processing ();
   virtual void do_derived_mark ();
-  /// do calculations before determining horizontal spacing
-  virtual void before_line_breaking ();
-  /// do calculations after determining horizontal spacing
-  virtual void after_line_breaking ();
 
   Molecule get_molecule () const;
   void suicide ();
 
   Molecule get_molecule () const;
   void suicide ();
@@ -176,7 +172,6 @@ public:
   static Interval molecule_extent (Score_element const*,Axis);
 
 protected:
   static Interval molecule_extent (Score_element const*,Axis);
 
 protected:
-
   /**
     Junk score element. This is protected because this is supposed to
     be handled by GUILE gc.  */
   /**
     Junk score element. This is protected because this is supposed to
     be handled by GUILE gc.  */
@@ -184,14 +179,14 @@ protected:
   
   ///executed directly after the item is added to the Paper_score
   virtual void do_add_processing ();
   
   ///executed directly after the item is added to the Paper_score
   virtual void do_add_processing ();
-  Molecule do_brew_molecule ()const;
-  
   static Interval dim_cache_callback (Dimension_cache const*);
   
 public:
   static Interval dim_cache_callback (Dimension_cache const*);
   
 public:
+  SCM member_brew_molecule ()const;
+  
   static SCM ly_set_elt_property (SCM, SCM,SCM);
   static SCM ly_get_elt_property (SCM, SCM);  
   static SCM ly_set_elt_property (SCM, SCM,SCM);
   static SCM ly_get_elt_property (SCM, SCM);  
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   virtual void handle_broken_dependencies ();
   virtual void handle_prebroken_dependencies ();
 
   virtual void handle_broken_dependencies ();
   virtual void handle_prebroken_dependencies ();
 
@@ -245,26 +240,24 @@ public:
 
 Score_element * unsmob_element (SCM);
 
 
 Score_element * unsmob_element (SCM);
 
-#define MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(TYPE)                          \
+#define MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(TYPE, FUNC) \
 void                                                           \
 void                                                           \
-TYPE ## __init_functions ()                                    \
+TYPE ## _ ## FUNC ## _init_functions ()                                        \
 {                                                              \
 {                                                              \
-  scm_make_gsubr (#TYPE "::scheme_molecule", 1, 0, 0,          \
-  (SCM(*)(...))TYPE::scheme_molecule);                                 \
+  scm_make_gsubr (#TYPE "::" #FUNC, 1, 0, 0,           \
+  (SCM(*)(...))TYPE :: FUNC);                          \
 }                                                              \
                                                                \
 }                                                              \
                                                                \
-ADD_SCM_INIT_FUNC(TYPE ## _molecule, TYPE ## __init_functions);        \
+ADD_SCM_INIT_FUNC(TYPE ## _ ## FUNC ## _scelt, TYPE ## _ ## FUNC ## _init_functions);  \
 
 
-#define MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(TYPE)                              \
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(TYPE);\
-SCM                                                            \
-TYPE::scheme_molecule (SCM smob)                               \
-{                                                              \
+#define GLUE_SCORE_ELEMENT(TYPE, FUNC) \
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(TYPE,FUNC);\
+SCM \
+TYPE::FUNC (SCM smob) \
+{  \
   TYPE * b = dynamic_cast<TYPE*> (unsmob_element (smob));      \
   TYPE * b = dynamic_cast<TYPE*> (unsmob_element (smob));      \
-  return b ?  b->do_brew_molecule ().create_scheme () : SCM_EOL; \
-}                                                              \
-                                                               \
-
+  return b ?   b->member_ ## FUNC () : SCM_UNDEFINED; \
+}  \
 
 
 #endif // STAFFELEM_HH
 
 
 #endif // STAFFELEM_HH
index d79e25f3f8071bfb2391d76e4855e09400307283..9c580c50833b3699d43b068c5363e73a81e3022c 100644 (file)
@@ -17,8 +17,9 @@ class Script_column : public Item
 public:
   Script_column(SCM);
   void add_staff_sided (Item*);
 public:
   Script_column(SCM);
   void add_staff_sided (Item*);
-protected:
-  virtual void before_line_breaking ();
+
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
 };
 
 
 };
 
 
index 0204e811120f6318855f94d5e8eec0c385ba7476..4d7bc39cfd0e30b9d85a7fa08631ebe4b80fb715 100644 (file)
@@ -23,13 +23,15 @@ class Script : public Item
   Molecule get_molecule (Direction d) const;
 public:
   Script (SCM);
   Molecule get_molecule (Direction d) const;
 public:
   Script (SCM);
-   static SCM scheme_molecule (SCM);
+   static SCM brew_molecule (SCM);
   
 
   
 
-protected:
-  virtual void before_line_breaking ();
-  virtual void after_line_breaking ();
-  Molecule do_brew_molecule () const;
+
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
+  SCM member_brew_molecule () const;
 };
 
 #endif /* Stem_SCRIPT_HH */
 };
 
 #endif /* Stem_SCRIPT_HH */
index cefb249d732cc3b2284752af228e3a886881d96b..654bc45685dec606e24036afc8f73c3d4db4ca50 100644 (file)
@@ -20,12 +20,9 @@ public:
   VIRTUAL_COPY_CONS(Score_element);
 
   void add_column (Note_column*);
   VIRTUAL_COPY_CONS(Score_element);
 
   void add_column (Note_column*);
- static SCM scheme_molecule (SCM);
+ static SCM brew_molecule (SCM);
   
   
-
-
-protected:
-  Molecule do_brew_molecule () const;
+  SCM member_brew_molecule () const;
   virtual Array<Offset> get_encompass_offset_arr () const;
   Bezier get_curve () const;
 
   virtual Array<Offset> get_encompass_offset_arr () const;
   Bezier get_curve () const;
 
@@ -36,7 +33,8 @@ protected:
   Drul_array<Real> dx_f_drul_;
 
   virtual Direction get_default_dir () const;
   Drul_array<Real> dx_f_drul_;
 
   virtual Direction get_default_dir () const;
-  virtual void after_line_breaking ();
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
   virtual void do_add_processing ();
   Array<Rod> get_rods () const;
 
   virtual void do_add_processing ();
   Array<Rod> get_rods () const;
 
index 17886676cdf2fb56bf0b5f55779fb2b8ee060f65..9ccb4d65b37e571d17cce28aee606001240e1f89 100644 (file)
@@ -29,14 +29,15 @@ public:
     
   VIRTUAL_COPY_CONS(Score_element);
   void add_bar (Score_element*);
     
   VIRTUAL_COPY_CONS(Score_element);
   void add_bar (Score_element*);
-protected:
   void evaluate_empty ();
 
   static Interval width_callback(Score_element const*, Axis) ;
   
   virtual Real get_bar_size () const;
   void evaluate_empty ();
 
   static Interval width_callback(Score_element const*, Axis) ;
   
   virtual Real get_bar_size () const;
-  virtual void before_line_breaking ();
-  virtual void after_line_breaking ();
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
 };
 
 #endif // SPAN_BAR_HH
 };
 
 #endif // SPAN_BAR_HH
index 98478d5c36c904eef091539fe8558363ea2cdc10..79af611f13c2630efc8c41e58d7f831c44a85540 100644 (file)
@@ -22,12 +22,9 @@ public:
   int steps_i() const;
   int line_count () const;
   Staff_symbol (SCM s);
   int steps_i() const;
   int line_count () const;
   Staff_symbol (SCM s);
-   static SCM scheme_molecule (SCM);
-  
-
-protected:
+   static SCM brew_molecule (SCM);
   VIRTUAL_COPY_CONS(Score_element);
   VIRTUAL_COPY_CONS(Score_element);
-  Molecule do_brew_molecule() const;
+  SCM member_brew_molecule() const;
 
 };
 #endif // STAFFSYM_HH
 
 };
 #endif // STAFFSYM_HH
index 97cbd2c690c1fe5c504cd9a4a47a3b298f8e11cd..2cd904a6320dfd04866d74ba279c8d6224a8d794 100644 (file)
 
 
 class Stem_tremolo : public Item {
 
 
 class Stem_tremolo : public Item {
-protected:
+public:
   Stem * stem_l () const;
   Stem * stem_l () const;
-  Molecule do_brew_molecule () const;
+  SCM member_brew_molecule () const;
 
   static Interval dim_callback (Score_element*, Axis);
 
   static Interval dim_callback (Score_element*, Axis);
-public:
-   static SCM scheme_molecule (SCM);
-  
-Stem_tremolo (SCM);
+  static SCM brew_molecule (SCM);
+  Stem_tremolo (SCM);
   void set_stem (Stem *);
 };
 
   void set_stem (Stem *);
 };
 
index ea208ff7921dedb6965b5de86beba621efca11dd..24e0630c76d748a7937a238c3284d6da07e273c9 100644 (file)
@@ -43,7 +43,7 @@
 class Stem : public Item
 {
 public:
 class Stem : public Item
 {
 public:
- static SCM scheme_molecule (SCM);
+ static SCM brew_molecule (SCM);
   
 
 
   
 
 
@@ -82,7 +82,7 @@ public:
   /// heads that the stem encompasses (positions)
   Interval head_positions() const;
 
   /// heads that the stem encompasses (positions)
   Interval head_positions() const;
 
-protected:
+public:
   friend class Stem_tremolo;   // ugh.
   Real get_default_stem_end_position () const;
   void position_noteheads();
   friend class Stem_tremolo;   // ugh.
   Real get_default_stem_end_position () const;
   void position_noteheads();
@@ -91,9 +91,10 @@ protected:
   static Real off_callback (Score_element const*, Axis);
   Molecule flag () const;
 
   static Real off_callback (Score_element const*, Axis);
   Molecule flag () const;
 
-  virtual void before_line_breaking();
+  SCM member_before_line_breaking ();
+  static SCM before_line_breaking (SCM);
   static Interval dim_callback (Score_element const*,Axis);
   static Interval dim_callback (Score_element const*,Axis);
-  Molecule do_brew_molecule() const;
+  SCM member_brew_molecule() const;
 
   void set_spacing_hints () ;
 };
 
   void set_spacing_hints () ;
 };
index 61d23efdb19080b625eaacee26b06a84e4ec1f30..659b166514e3723c1fc2c45aaff646e1b32d7c49 100644 (file)
@@ -19,11 +19,12 @@ class System_start_delimiter : public Spanner
 {
 public:
   System_start_delimiter (SCM);
 {
 public:
   System_start_delimiter (SCM);
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
   VIRTUAL_COPY_CONS (Score_element);
   
   VIRTUAL_COPY_CONS (Score_element);
-protected:
-  virtual void after_line_breaking();
+
+  virtual SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
   
   Molecule staff_bracket (Real) const;
   Molecule staff_brace (Real) const;
   
   Molecule staff_bracket (Real) const;
   Molecule staff_brace (Real) const;
index 6dfe54d82b30e85c8f2af2d528d99da3027882de..d4ff9f41e7d41986c7f8dc4a4edefe7011301944 100644 (file)
@@ -19,8 +19,9 @@ public:
   VIRTUAL_COPY_CONS (Score_element);
   void add_tie (Tie*);
   Tie_column (SCM s);
   VIRTUAL_COPY_CONS (Score_element);
   void add_tie (Tie*);
   Tie_column (SCM s);
-protected:
-  virtual void after_line_breaking ();
+
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
   void set_directions ();
 };
 
   void set_directions ();
 };
 
index e45a456b997d07bbee7c588fc11a2148dfb42c30..bf6f386fc4f86293723845660f7197faca006c10 100644 (file)
@@ -25,13 +25,13 @@ public:
 
   Note_head* head (Direction) const;
   Real position_f () const;
 
   Note_head* head (Direction) const;
   Real position_f () const;
-   static SCM scheme_molecule (SCM);
+   static SCM brew_molecule (SCM);
   
 
   virtual Direction get_default_dir() const;
 
   
 
   virtual Direction get_default_dir() const;
 
-protected:
-  Molecule do_brew_molecule () const;
+
+  SCM member_brew_molecule () const;
   virtual Array<Offset> get_encompass_offset_arr () const;
   Bezier get_curve () const;
 
   virtual Array<Offset> get_encompass_offset_arr () const;
   Bezier get_curve () const;
 
@@ -42,7 +42,8 @@ protected:
   Drul_array<Real> dx_f_drul_;
 
   virtual void do_add_processing ();
   Drul_array<Real> dx_f_drul_;
 
   virtual void do_add_processing ();
-  virtual void after_line_breaking ();
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
 
   virtual Array<Rod> get_rods () const;
 
 
   virtual Array<Rod> get_rods () const;
 
index ea338b29a45511c3f38547b5faa7a3320799ec20..80a08ac7a61bba9c8b36caf7e1b1dd90b53c9019 100644 (file)
@@ -23,11 +23,11 @@ class Time_signature: public Item
   Molecule special_time_signature (String,int,int) const;
   Molecule time_signature (int, int)const;
   
   Molecule special_time_signature (String,int,int) const;
   Molecule time_signature (int, int)const;
   
-protected:
-  Molecule do_brew_molecule() const;
 public:
 public:
+  SCM member_brew_molecule() const;
+
   Time_signature (SCM);
   Time_signature (SCM);
- static SCM scheme_molecule (SCM);
+ static SCM brew_molecule (SCM);
   
 
   /*
   
 
   /*
index ca725e5d401d0b1ac45a58ea6cbc3f871c5f8cae..42019434b7ca9fa573f543db5b46a75bf595e8cd 100644 (file)
@@ -7,7 +7,6 @@
 #ifndef Tuplet_spanner_HH
 #define Tuplet_spanner_HH
 
 #ifndef Tuplet_spanner_HH
 #define Tuplet_spanner_HH
 
-#include "pointer.hh"
 #include "spanner.hh"
 
 /** supportable plet: triplets, eentweetjes, ottava, etc.
 #include "spanner.hh"
 
 /** supportable plet: triplets, eentweetjes, ottava, etc.
@@ -21,19 +20,21 @@ class Tuplet_spanner : public Spanner
 {
 public:
   Tuplet_spanner (SCM);
 {
 public:
   Tuplet_spanner (SCM);
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   
 
   void add_column (Note_column*);
   void add_beam (Beam*);
   
 
   void add_column (Note_column*);
   void add_beam (Beam*);
-protected:
+
   void calc_dy (Real *) const;
   void calc_position_and_height (Real*,Real *dy)const;
   
   void calc_dy (Real *) const;
   void calc_position_and_height (Real*,Real *dy)const;
   
-  Molecule do_brew_molecule () const;
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
+  SCM member_brew_molecule () const;
   VIRTUAL_COPY_CONS(Score_element);
   VIRTUAL_COPY_CONS(Score_element);
+
   virtual void do_add_processing ();
   virtual void do_add_processing ();
-  virtual void after_line_breaking ();
   virtual Direction get_default_dir () const;
 };
 
   virtual Direction get_default_dir () const;
 };
 
index 40c2195a44f803a364cc9f0878435542828ffd7d..ede918a767e5ed8c8044eba767c7a4e6b2a09a77 100644 (file)
@@ -8,7 +8,6 @@
 #define VOLTA_SPANNER_HH
 
 
 #define VOLTA_SPANNER_HH
 
 
-#include "pointer.hh"
 #include "spanner.hh"
 
 /** Volta bracket with number */
 #include "spanner.hh"
 
 /** Volta bracket with number */
@@ -17,16 +16,16 @@ class Volta_spanner : public Spanner
 {
 public:
   Volta_spanner (SCM);
 {
 public:
   Volta_spanner (SCM);
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
   void add_column (Note_column*);
   void add_bar (Bar*);
  
   void add_column (Note_column*);
   void add_bar (Bar*);
  
-protected:
-  Molecule do_brew_molecule () const;
+  SCM member_brew_molecule () const;
   VIRTUAL_COPY_CONS (Score_element);
 
   virtual void do_add_processing ();
   VIRTUAL_COPY_CONS (Score_element);
 
   virtual void do_add_processing ();
-  virtual void after_line_breaking ();
+  SCM member_after_line_breaking ();
+  static SCM after_line_breaking (SCM);
 };
 
 #endif // VOLTA_SPANNER_HH
 };
 
 #endif // VOLTA_SPANNER_HH
index 46ad565f5044ef075a3e8623470e1f0e835f1fde..77a9e104188d80a4a0fe205d451429205e527693 100644 (file)
@@ -74,14 +74,13 @@ Key_item::calculate_position(SCM pair) const
   }
 }
 
   }
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Key_item)
-
 /*
   TODO
   - space the `natural' signs wider
  */
 /*
   TODO
   - space the `natural' signs wider
  */
-Molecule 
-Key_item::do_brew_molecule () const
+GLUE_SCORE_ELEMENT(Key_item,brew_molecule);
+SCM
+Key_item::member_brew_molecule () const
 {
   Molecule mol;
 
 {
   Molecule mol;
 
@@ -134,12 +133,9 @@ Key_item::do_brew_molecule () const
               mol.add_at_edge (X_AXIS, LEFT, m,0);     
             }
         }
               mol.add_at_edge (X_AXIS, LEFT, m,0);     
             }
         }
-
-
     }
     }
 
 
-  return mol;
+  return mol.create_scheme();
 }
 
 
 }
 
 
index 44209d00e3df2d37f24e78104b88e96aa81f25f2..7178826d35fb44977c709f744847bbb84d0acf39 100644 (file)
@@ -586,9 +586,9 @@ valid_version_b (String s)
   Mudela_version ver (s);
   if (!((ver >= oldest_version) && (ver <= current)))
        {       
   Mudela_version ver (s);
   if (!((ver >= oldest_version) && (ver <= current)))
        {       
-               error (_f ("incorrect mudela version: %s (%s, %s)", ver.str (), oldest_version.str (), current.str ()));
-               if (!version_ignore_global_b)
-                       return false;
+               non_fatal_error (_f ("incorrect mudela version: %s (%s, %s)", ver.str (), oldest_version.str (), current.str ()));
+               non_fatal_error (_("Consider converting the input with the convert-mudela script")); 
+               return false;
     }
   return true;
 }
     }
   return true;
 }
index 5c9c793c9e57a100ac407933ebe2e9ee40a1700b..e40605572296fb36da5a90be2842a53091de9b6e 100644 (file)
@@ -108,12 +108,8 @@ ly_symbol2string (SCM s)
 }
 
 
 }
 
 
-/**
-   Read a file, and shove it down GUILE.  GUILE also has file read
-   functions, but you can't fiddle with the path of those.
- */
-void
-read_lily_scm_file (String fn)
+String
+gulp_file_to_string (String fn)
 {
   String s = global_path.find (fn);
   if (s == "")
 {
   String s = global_path.find (fn);
   if (s == "")
@@ -123,39 +119,35 @@ read_lily_scm_file (String fn)
       e += _f ("(load path: `%s')", global_path.str ());
       error (e);
     }
       e += _f ("(load path: `%s')", global_path.str ());
       error (e);
     }
-  else
-    progress_indication ("[" + s);
+  else if (verbose_global_b)
+    progress_indication ("[" + s );
 
 
   Simple_file_storage f(s);
 
 
   Simple_file_storage f(s);
-  
-  gh_eval_str ((char *) f.ch_C());
-  progress_indication ("]");
+  String result (f.ch_C());
+  if (verbose_global_b)
+    progress_indication ("]");
+  return result;
 }
 
 }
 
-
 SCM
 SCM
-ly_gulp_file (SCM name)
+ly_gulp_file (SCM fn)
 {
 {
-  String fn (ly_scm2string (name));
- String s = global_path.find (fn);
-  if (s == "")
-    {
-      String e = _f ("can't find file: `%s'", fn);
-      e += " ";
-      e += _f ("(load path: `%s')", global_path.str ());
-      error (e);
-    }
-  else
-    progress_indication ("[" + s );
+  return ly_str02scm (gulp_file_to_string (ly_scm2string (fn)).ch_C());
+}
 
 
 
 
-  Simple_file_storage f(s);
-  SCM result = ly_str02scm (f.ch_C());
-  progress_indication ("]");
-  return result;
+/**
+   Read a file, and shove it down GUILE.  GUILE also has file read
+   functions, but you can't fiddle with the path of those.
+ */
+void
+read_lily_scm_file (String fn)
+{
+  gh_eval_str ((char *) gulp_file_to_string (fn).ch_C());
 }
 
 }
 
+
 void
 ly_display_scm (SCM s)
 {
 void
 ly_display_scm (SCM s)
 {
index 110aea1c93deb2df52859bd7945df9a67d6207c3..62bd6a153d0b2ac5acc8711f8c0bb1f6a5b39441 100644 (file)
@@ -83,17 +83,24 @@ Line_of_score::output_lines ()
       unsmob_element (gh_car (s))->handle_broken_dependencies ();
     }
   handle_broken_dependencies ();
       unsmob_element (gh_car (s))->handle_broken_dependencies ();
     }
   handle_broken_dependencies ();
-  progress_indication ( _f("Element count %d.",  count + element_count()));
+
+  if (verbose_global_b)
+    progress_indication ( _f("Element count %d.",  count + element_count()));
 
   
   for (int i=0; i < broken_into_l_arr_.size (); i++)
     {
       Line_of_score *line_l = dynamic_cast<Line_of_score*> (broken_into_l_arr_[i]);
 
 
   
   for (int i=0; i < broken_into_l_arr_.size (); i++)
     {
       Line_of_score *line_l = dynamic_cast<Line_of_score*> (broken_into_l_arr_[i]);
 
-      progress_indication ("[");
+      if (verbose_global_b)
+       progress_indication ("[");
       line_l->post_processing ();
       line_l->post_processing ();
-      progress_indication (to_str (i));
-      progress_indication ("]");
+
+      if (verbose_global_b)
+       {
+         progress_indication (to_str (i));
+         progress_indication ("]");
+       }
     }
 }
 
     }
 }
 
@@ -200,7 +207,8 @@ Line_of_score::pre_processing ()
   for (SCM s = get_elt_pointer ("all-elements"); gh_pair_p (s); s = gh_cdr (s))
     unsmob_element (gh_car (s))->discretionary_processing ();
 
   for (SCM s = get_elt_pointer ("all-elements"); gh_pair_p (s); s = gh_cdr (s))
     unsmob_element (gh_car (s))->discretionary_processing ();
 
-  progress_indication ( _f("Element count %d ",  element_count ()));
+  if(verbose_global_b)
+    progress_indication ( _f("Element count %d ",  element_count ()));
 
   
   for (SCM s = get_elt_pointer ("all-elements"); gh_pair_p (s); s = gh_cdr (s))
 
   
   for (SCM s = get_elt_pointer ("all-elements"); gh_pair_p (s); s = gh_cdr (s))
@@ -211,7 +219,7 @@ Line_of_score::pre_processing ()
   for (SCM s = get_elt_pointer ("all-elements"); gh_pair_p (s); s = gh_cdr (s))
     {
       Score_element* sc = unsmob_element (gh_car (s));
   for (SCM s = get_elt_pointer ("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);
+      sc->calculate_dependencies (PRECALCED, PRECALCING, ly_symbol2scm ("before-line-breaking-callback"));
     }
   
   progress_indication ("\n" + _ ("Calculating column positions...") + " " );
     }
   
   progress_indication ("\n" + _ ("Calculating column positions...") + " " );
@@ -226,7 +234,8 @@ Line_of_score::post_processing ()
        gh_pair_p (s); s = gh_cdr (s))
     {
       Score_element* sc = unsmob_element (gh_car (s));
        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);
+      sc->calculate_dependencies (POSTCALCED, POSTCALCING,
+                                 ly_symbol2scm ("after-line-breaking-callback"));
     }
 
   Interval i(extent(Y_AXIS));
     }
 
   Interval i(extent(Y_AXIS));
index 4b77e00fd3e3fa82bf6778d8f52e01692dde5839..0c1ec92137f530c59e871a16897203a891785fc0 100644 (file)
@@ -14,7 +14,6 @@
 #include "note-head.hh"
 #include "misc.hh"
 
 #include "note-head.hh"
 #include "misc.hh"
 
-
 void
 Local_key_item::add_pitch (Musical_pitch p, bool cautionary, bool natural)
 {
 void
 Local_key_item::add_pitch (Musical_pitch p, bool cautionary, bool natural)
 {
@@ -30,12 +29,13 @@ Local_key_item::add_pitch (Musical_pitch p, bool cautionary, bool natural)
   accidental_arr_.push (t);
 }
 
   accidental_arr_.push (t);
 }
 
+GLUE_SCORE_ELEMENT(Local_key_item,before_line_breaking);
 
 
-
-void
-Local_key_item::before_line_breaking ()
+SCM
+Local_key_item::member_before_line_breaking ()
 {
   accidental_arr_.sort (Local_key_cautionary_tuple::compare);
 {
   accidental_arr_.sort (Local_key_cautionary_tuple::compare);
+  return SCM_UNDEFINED;
 }
 
 Molecule
 }
 
 Molecule
@@ -61,9 +61,10 @@ Local_key_item::accidental (int j, bool cautionary, bool natural) const
 /*
   UGH. clean me up
  */
 /*
   UGH. clean me up
  */
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Local_key_item)
-Molecule 
-Local_key_item::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Local_key_item,brew_molecule);
+SCM
+Local_key_item::member_brew_molecule () const
 {
   Molecule mol;
   Staff_symbol_referencer_interface si (this);
 {
   Molecule mol;
   Staff_symbol_referencer_interface si (this);
@@ -134,7 +135,7 @@ Local_key_item::do_brew_molecule () const
       } while ( flip (&d)!= LEFT);
     }
 
       } while ( flip (&d)!= LEFT);
     }
 
-  return mol;
+  return mol.create_scheme();
 }
 
 Local_key_item::Local_key_item (SCM s)
 }
 
 Local_key_item::Local_key_item (SCM s)
index e20d7d1ea956c69d745591d48af29e0ff5c4d368..89f3eddf05ddf9891d88b4e4ee019a61a5c1fca9 100644 (file)
@@ -16,9 +16,9 @@
 #include "extender-spanner.hh"
 
 
 #include "extender-spanner.hh"
 
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Lyric_extender)
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Lyric_extender,brew_molecule)
 SCM 
 SCM 
-Lyric_extender::scheme_molecule (SCM smob) 
+Lyric_extender::brew_molecule (SCM smob) 
 {
   Spanner *sp = dynamic_cast<Spanner*> (unsmob_element (smob));
   
 {
   Spanner *sp = dynamic_cast<Spanner*> (unsmob_element (smob));
   
index 3f7a41e000b7b69187655b1d30b0f6454ed42a8e..d5752455707c7b65adade9bd7fbaa1c9014343de 100644 (file)
@@ -34,7 +34,7 @@
 #endif
 
 
 #endif
 
 
-bool version_ignore_global_b = false;
+bool verbose_global_b = false;
 bool no_paper_global_b = false;
 bool no_timestamps_global_b = false;
 bool find_old_relative_b = false;
 bool no_paper_global_b = false;
 bool no_timestamps_global_b = false;
 bool find_old_relative_b = false;
@@ -80,8 +80,8 @@ Long_option_init theopts[] = {
   {0, "safe", 's',  _i ("inhibit file output naming and exporting")},
   {0, "no-timestamps", 'T',  _i ("don't timestamp the output")},
   {0, "test", 't',  _i ("switch on experimental features")},
   {0, "safe", 's',  _i ("inhibit file output naming and exporting")},
   {0, "no-timestamps", 'T',  _i ("don't timestamp the output")},
   {0, "test", 't',  _i ("switch on experimental features")},
-  {0, "ignore-version", 'V',  _i ("ignore mudela version")},
   {0, "version", 'v',  _i ("print version number")},
   {0, "version", 'v',  _i ("print version number")},
+  {0, "verbose", 'V', _i("verbose")},
   {0, "warranty", 'w',  _i ("show warranty and copyright")},
   {0,0,0, 0}
 };
   {0, "warranty", 'w',  _i ("show warranty and copyright")},
   {0,0,0, 0}
 };
@@ -346,7 +346,7 @@ main (int argc, char **argv)
          exit (0);
          break;
        case 'V':
          exit (0);
          break;
        case 'V':
-         version_ignore_global_b = true;
+         verbose_global_b = true;
          break;
        case 's':
          safe_global_b = true;
          break;
        case 's':
          safe_global_b = true;
index eb12c9f9b21bc89b03ab0c1112f02c9c46fb8a65..bf8a009f4552bc2af8852edbc6b1fb06d26312db 100644 (file)
@@ -31,9 +31,11 @@ Multi_measure_rest::Multi_measure_rest (SCM s)
    [TODO]                                      17
  * variable-sized multi-measure rest symbol: |====| ??
 */
    [TODO]                                      17
  * variable-sized multi-measure rest symbol: |====| ??
 */
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Multi_measure_rest)
-Molecule 
-Multi_measure_rest::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Multi_measure_rest,brew_molecule);
+
+SCM
+Multi_measure_rest::member_brew_molecule () const
 {
   Real staff_space
     = staff_symbol_referencer (this).staff_space ();
 {
   Real staff_space
     = staff_symbol_referencer (this).staff_space ();
@@ -131,7 +133,7 @@ Multi_measure_rest::do_brew_molecule () const
       mol.add_molecule (s);
     }
   mol.translate_axis (x_off, X_AXIS);
       mol.add_molecule (s);
     }
   mol.translate_axis (x_off, X_AXIS);
-  return mol;
+  return mol.create_scheme();
 }
 
 /*
 }
 
 /*
@@ -152,14 +154,16 @@ Multi_measure_rest::do_add_processing ()
   // set columns to SCM_EOL?
 }
   
   // set columns to SCM_EOL?
 }
   
-void
-Multi_measure_rest::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Multi_measure_rest,after_line_breaking);
+SCM
+Multi_measure_rest::member_after_line_breaking ()
 {
   if (!gh_pair_p (get_elt_pointer ("columns")))
     {
       suicide ();
     }
 {
   if (!gh_pair_p (get_elt_pointer ("columns")))
     {
       suicide ();
     }
-     
+
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
index 65e3c69adc6c3ea1b11e35d7d4c506eacf6f0976..286c938429f2e6b81fff36cda7ae667bf45d48f2 100644 (file)
@@ -43,7 +43,6 @@ My_lily_parser::~My_lily_parser()
 void
 My_lily_parser::set_version_check (bool ig)
 {
 void
 My_lily_parser::set_version_check (bool ig)
 {
-  ignore_version_b_ = ig;
 }
 
 void
 }
 
 void
index 7c1dd5ae9cf481c0079d358102a42535ab487eec..db93c4370bd36a02172fef096482da15745cee8a 100644 (file)
@@ -149,15 +149,16 @@ Note_column::set_dotcol (Dot_column *d)
     rest -> stem -> beam -> interpolate_y_position ()
 */
 
     rest -> stem -> beam -> interpolate_y_position ()
 */
 
-void
-Note_column::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Note_column,after_line_breaking);
+SCM
+Note_column::member_after_line_breaking ()
 {
   if (!stem_l () || !rest_b ())
 {
   if (!stem_l () || !rest_b ())
-    return;
+    return SCM_UNDEFINED;
 
   Beam * b = stem_l ()->beam_l ();
   if (!b || !b->visible_stem_count ())
 
   Beam * b = stem_l ()->beam_l ();
   if (!b || !b->visible_stem_count ())
-    return;
+    return SCM_UNDEFINED;
   
   /* ugh. Should be done by beam.
      (what? should be done --jcn)
   
   /* ugh. Should be done by beam.
      (what? should be done --jcn)
@@ -204,6 +205,8 @@ Note_column::after_line_breaking ()
     discrete_dist = int (ceil (discrete_dist / 2.0)* 2.0);
 
   translate_rests (-d *  discrete_dist);
     discrete_dist = int (ceil (discrete_dist / 2.0)* 2.0);
 
   translate_rests (-d *  discrete_dist);
+
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
index 4f8934ab376d463608241169ba969e9adaee7650..4452ce905a9e5fad0e42da131457154410f86bb3 100644 (file)
@@ -52,8 +52,9 @@ Note_head::ledger_line (Interval xwid) const
 }
 
 
 }
 
 
-void
-Note_head::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Note_head,before_line_breaking);
+SCM
+Note_head::member_before_line_breaking ()
 {
   // 8 ball looks the same as 4 ball:
   
 {
   // 8 ball looks the same as 4 ball:
   
@@ -67,14 +68,16 @@ Note_head::before_line_breaking ()
       
       si.set_position(int (me.position_f ()));
     }
       
       si.set_position(int (me.position_f ()));
     }
+
+  return SCM_UNDEFINED;
 }
 
 
 
 }
 
 
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Note_head);
+GLUE_SCORE_ELEMENT(Note_head,brew_molecule);
 
 
-Molecule 
-Note_head::do_brew_molecule() const 
+SCM
+Note_head::member_brew_molecule () const 
 {
   Staff_symbol_referencer_interface si (this);
   
 {
   Staff_symbol_referencer_interface si (this);
   
@@ -117,7 +120,7 @@ Note_head::do_brew_molecule() const
          out.add_molecule (s);
        }
     }
          out.add_molecule (s);
        }
     }
-  return out;
+  return out.create_scheme();
 }
 
 
 }
 
 
index 7e3388fedff4fa427b54611369b2c62fd192edf1..c90f8ca0ff87c6e0dfb0eff8f199f55c46a4bba5 100644 (file)
@@ -67,7 +67,9 @@ Paper_score::calc_breaking ()
 void
 Paper_score::process ()
 {
 void
 Paper_score::process ()
 {
-  progress_indication ( _f("Element count %d ",  line_l_->element_count ()));
+  if (verbose_global_b)
+    progress_indication ( _f("Element count %d ",  line_l_->element_count ()));
+
   
   progress_indication (_ ("Preprocessing elements...") + " ");
 
   
   progress_indication (_ ("Preprocessing elements...") + " ");
 
index 84a8e64b4c5b9f1a92f5b0392abbef062d0ceda8..f6ff1cb5c7fc06874b385d269959f8fe74200e97 100644 (file)
@@ -52,7 +52,8 @@ Performance::output (Midi_stream& midi_stream)
   for (int i =0; i < audio_staff_l_arr_.size (); i++)
     {
       Audio_staff *s = audio_staff_l_arr_[i];
   for (int i =0; i < audio_staff_l_arr_.size (); i++)
     {
       Audio_staff *s = audio_staff_l_arr_[i];
-      progress_indication ("[" + to_str (i)) ;
+      if(verbose_global_b)
+       progress_indication ("[" + to_str (i)) ;
 
       /*
        Aargh, let's hear it for the MIDI standard.
 
       /*
        Aargh, let's hear it for the MIDI standard.
@@ -62,7 +63,8 @@ Performance::output (Midi_stream& midi_stream)
       if (channel == 9)
        channel++;
       s->output (midi_stream, channel++);
       if (channel == 9)
        channel++;
       s->output (midi_stream, channel++);
-      progress_indication ("]");
+      if(verbose_global_b)
+       progress_indication ("]");
     }
 }
 
     }
 }
 
index f5be97061c97cfda84d0da7690e0965a5fe141b3..f7474eccb33de0678df690d1ff6115eeb9f5ee9b 100644 (file)
@@ -60,8 +60,9 @@ col2rhythmic_head (Note_column* c)
   return dynamic_cast<Rhythmic_head*> (e);
 }
 
   return dynamic_cast<Rhythmic_head*> (e);
 }
 
-void
-Rest_collision::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Rest_collision,before_line_breaking);
+SCM
+Rest_collision::member_before_line_breaking ()
 {
   Link_array<Note_column> rest_l_arr =
     Pointer_group_interface__extract_elements (this, (Note_column*) 0, "rests");
 {
   Link_array<Note_column> rest_l_arr =
     Pointer_group_interface__extract_elements (this, (Note_column*) 0, "rests");
@@ -80,11 +81,11 @@ Rest_collision::before_line_breaking ()
 
   // no rests to collide
   if (!rest_l_arr.size())
 
   // no rests to collide
   if (!rest_l_arr.size())
-    return;
+    return SCM_UNDEFINED;
 
   // no partners to collide with
   if (rest_l_arr.size() + ncol_l_arr.size () < 2)
 
   // no partners to collide with
   if (rest_l_arr.size() + ncol_l_arr.size () < 2)
-    return;
+    return SCM_UNDEFINED;
 
   // meisjes met meisjes
   if (!ncol_l_arr.size()) 
 
   // meisjes met meisjes
   if (!ncol_l_arr.size()) 
@@ -145,7 +146,7 @@ Rest_collision::before_line_breaking ()
 
       Interval restdim = rcol->rest_dim ();
       if (restdim.empty_b ())
 
       Interval restdim = rcol->rest_dim ();
       if (restdim.empty_b ())
-       return;
+       return SCM_UNDEFINED;
       
       // staff ref'd?
       Real staff_space = paper_l()->get_var ("interline");
       
       // staff ref'd?
       Real staff_space = paper_l()->get_var ("interline");
@@ -188,6 +189,7 @@ Rest_collision::before_line_breaking ()
       
       rcol->translate_rests (dir * discrete_dist);
     }
       
       rcol->translate_rests (dir * discrete_dist);
     }
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
index 24bc4d084773f248b91bed8d829db87145badd26..9d9385f567e878fcc70980d604e9cda897886f09 100644 (file)
@@ -15,8 +15,9 @@
 #include "staff-symbol-referencer.hh"
 
 // -> offset callback
 #include "staff-symbol-referencer.hh"
 
 // -> offset callback
-void
-Rest::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Rest,after_line_breaking);
+SCM
+Rest::member_after_line_breaking ()
 {
   if (balltype_i () == 0)
     {
 {
   if (balltype_i () == 0)
     {
@@ -33,13 +34,15 @@ Rest::after_line_breaking ()
       staff_symbol_referencer (d)
        .set_position ((balltype_i () == 7) ? 4 : 3);
     }
       staff_symbol_referencer (d)
        .set_position ((balltype_i () == 7) ? 4 : 3);
     }
+
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Rest)
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Rest,brew_molecule)
 
 SCM 
 
 SCM 
-Rest::scheme_molecule (SCM smob) 
+Rest::brew_molecule (SCM smob) 
 {
   Score_element* sc = unsmob_element (smob);
   
 {
   Score_element* sc = unsmob_element (smob);
   
index 1b735cd5eed77d679ee4976ba0cb7d4e948e17ee..b6a83b6d438ca5a33b91d0ebaebff7874ba391f5 100644 (file)
@@ -47,8 +47,9 @@ Rhythmic_head::dot_count () const
     ? gh_scm2int (dots_l ()->get_elt_property ("dot-count")) : 0;
 }
   
     ? gh_scm2int (dots_l ()->get_elt_property ("dot-count")) : 0;
 }
   
-void
-Rhythmic_head::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Rhythmic_head,after_line_breaking);
+SCM
+Rhythmic_head::member_after_line_breaking ()
 {
   if (Dots *d = dots_l ())
     {
 {
   if (Dots *d = dots_l ())
     {
@@ -56,6 +57,8 @@ Rhythmic_head::after_line_breaking ()
       Staff_symbol_referencer_interface me (d);      
       si.set_position(int (me.position_f ()));
     }
       Staff_symbol_referencer_interface me (d);      
       si.set_position(int (me.position_f ()));
     }
+
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
index a0a13eb5afa1532809d992cea194c95c4d35125b..0761c5e51ec93857e7906091c4f9623fa011181d 100644 (file)
@@ -199,8 +199,7 @@ Score_element::add_processing()
 }
 
 void
 }
 
 void
-Score_element::calculate_dependencies (int final, int busy,
-                                      Score_element_method_pointer funcptr)
+Score_element::calculate_dependencies (int final, int busy, SCM funcname)
 {
   assert (status_i_ >=0);
 
 {
   assert (status_i_ >=0);
 
@@ -218,11 +217,17 @@ Score_element::calculate_dependencies (int final, int busy,
   for (SCM d=  get_elt_pointer ("dependencies"); gh_pair_p (d); d = gh_cdr (d))
     {
       unsmob_element (gh_car (d))
   for (SCM d=  get_elt_pointer ("dependencies"); gh_pair_p (d); d = gh_cdr (d))
     {
       unsmob_element (gh_car (d))
-       ->calculate_dependencies (final, busy, funcptr);
+       ->calculate_dependencies (final, busy, funcname);
     }
 
     }
 
-  (this->*funcptr)();
+  // ughugh.
+  String s = ly_symbol2string (funcname);
+  SCM proc = get_elt_property (s.ch_C());
+  if (gh_procedure_p (proc))
+    gh_call1 (proc, this->self_scm_);
+  
   status_i_= final;
   status_i_= final;
+
 }
 
 Molecule
 }
 
 Molecule
@@ -246,17 +251,6 @@ Score_element::do_break_processing()
 {
 }
 
 {
 }
 
-void
-Score_element::after_line_breaking ()
-{
-}
-
-
-void
-Score_element::before_line_breaking ()
-{
-}
-
 void
 Score_element::do_space_processing ()
 {
 void
 Score_element::do_space_processing ()
 {
@@ -268,13 +262,13 @@ Score_element::do_add_processing()
 }
 
 
 }
 
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Score_element)
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Score_element,brew_molecule)
 
 /*
   ugh.
  */  
 SCM
 
 /*
   ugh.
  */  
 SCM
-Score_element::scheme_molecule (SCM smob) 
+Score_element::brew_molecule (SCM smob) 
 {
   Score_element * sc = unsmob_element (smob);
   SCM glyph = sc->get_elt_property ("glyph");
 {
   Score_element * sc = unsmob_element (smob);
   SCM glyph = sc->get_elt_property ("glyph");
index e8fd342f353b89154accc5f214714ba856d9c7dc..b9027e9288c6ecff777a30c9b9f05412f5bf1b75 100644 (file)
@@ -94,7 +94,8 @@ Score::run_translator (Music_output_def *odef_l)
 
   Music_output * output = trans_p->get_output_p();
   delete trans_p;
 
   Music_output * output = trans_p->get_output_p();
   delete trans_p;
-  progress_indication (_f ("elapsed time: %.2f seconds",  timer.read ()));
+  if(verbose_global_b)
+    progress_indication (_f ("elapsed time: %.2f seconds",  timer.read ()));
 
   output->header_l_ = header_p_;
   output->origin_str_ =  location_str();
 
   output->header_l_ = header_p_;
   output->origin_str_ =  location_str();
index e0ff3ffc1878202f85bf7d2b5377aaf92d43c730..86c03032843b16604cffdfafbcc03581497f1379 100644 (file)
@@ -120,7 +120,8 @@ do_one_file (String init_str, String file_str)
   source_global_l->set_path (&global_path);
   {
     My_lily_parser parser (source_global_l);
   source_global_l->set_path (&global_path);
   {
     My_lily_parser parser (source_global_l);
-    parser.set_version_check (version_ignore_global_b);
+    parser.set_version_check (false);
+    cout << "\nNow processing `" << file_str << "'\n";
     parser.parse_file (init_str, file_str);
 
     if (parser.error_level_i_)
     parser.parse_file (init_str, file_str);
 
     if (parser.error_level_i_)
index c4123815d435e7080fe78dbb32fb2d043920886e..cc8cfcacb0b5d0d22ce005a1e644ef83c96322ee 100644 (file)
@@ -41,8 +41,9 @@ staff_side_compare (Item * const &i1,
   return gh_scm2int (p1) - gh_scm2int (p2);
 }
 
   return gh_scm2int (p1) - gh_scm2int (p2);
 }
 
-void
-Script_column::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Script_column,before_line_breaking);
+SCM
+Script_column::member_before_line_breaking ()
 {
   Drul_array<Link_array<Item> > arrs;
   Link_array<Item> staff_sided 
 {
   Drul_array<Link_array<Item> > arrs;
   Link_array<Item> staff_sided 
@@ -75,5 +76,7 @@ Script_column::before_line_breaking ()
       }
     
   } while (flip (&d) != DOWN);
       }
     
   } while (flip (&d) != DOWN);
+
+  return SCM_UNDEFINED;
 }
 
 }
 
index 6c51f6ac5e33ee339d7241847dec25fddc2402f1..326667e7b44cc99a6d380d756d3bc11bc1922e8b 100644 (file)
@@ -42,34 +42,42 @@ Script::get_molecule(Direction d) const
 }
 
 
 }
 
 
-void
-Script::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Script,before_line_breaking);
+SCM
+Script::member_before_line_breaking ()
 {
   /*
     center my self on the note head.
    */
   Score_element * e = parent_l(X_AXIS);
   translate_axis (e->extent (X_AXIS).center (), X_AXIS);
 {
   /*
     center my self on the note head.
    */
   Score_element * e = parent_l(X_AXIS);
   translate_axis (e->extent (X_AXIS).center (), X_AXIS);
+
+  return SCM_UNDEFINED;
 }
 
 }
 
-void
-Script::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Script,after_line_breaking);
+SCM
+Script::member_after_line_breaking ()
 {
   Side_position_interface i (this);
   Direction d =  i.get_direction ();
   i.set_direction (d);
 {
   Side_position_interface i (this);
   Direction d =  i.get_direction ();
   i.set_direction (d);
+
+  return SCM_UNDEFINED;
 }
 
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Script)
-Molecule 
-Script::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Script,brew_molecule);
+
+SCM
+Script::member_brew_molecule () const
 {
   Direction dir = DOWN;
   SCM d = get_elt_property ("direction");
   if (isdir_b (d))
     dir = to_dir (d);
   
 {
   Direction dir = DOWN;
   SCM d = get_elt_property ("direction");
   if (isdir_b (d))
     dir = to_dir (d);
   
-  return get_molecule (dir);
+  return get_molecule (dir).create_scheme();
 }
 
 
 }
 
 
index 118bae506c2f3998a1457942e1906a752a89fe0c..fd59628e5703066ceb55b88b747b067e9c95ad86 100644 (file)
@@ -341,11 +341,14 @@ Slur::encompass_offset (Note_column const* col) const
   return o;
 }
 
   return o;
 }
 
-void
-Slur::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Slur,after_line_breaking);
+
+SCM
+Slur::member_after_line_breaking ()
 {
   set_extremities ();
   set_control_points ();
 {
   set_extremities ();
   set_control_points ();
+  return SCM_UNDEFINED;
 } 
 
 /*
 } 
 
 /*
@@ -602,14 +605,12 @@ Slur::get_rods () const
 }
 
 
 }
 
 
-
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Slur);
-
 /*
   Ugh should have dash-length + dash-period
  */
 /*
   Ugh should have dash-length + dash-period
  */
-Molecule
-Slur::do_brew_molecule () const
+GLUE_SCORE_ELEMENT(Slur,brew_molecule);
+SCM
+Slur::member_brew_molecule () const
 {
   Real thick = paper_l ()->get_var ("slur_thickness");
   Bezier one = get_curve ();
 {
   Real thick = paper_l ()->get_var ("slur_thickness");
   Bezier one = get_curve ();
@@ -621,7 +622,7 @@ Slur::do_brew_molecule () const
   else
     a = lookup_l ()->slur (one, directional_element (this).get () * thick, thick);
 
   else
     a = lookup_l ()->slur (one, directional_element (this).get () * thick, thick);
 
-  return a;
+  return a.create_scheme();
 }
 
 void
 }
 
 void
index f2659b09230e6ad55c1202e5e994e141c27c44f5..17c713b453e5419ff37ba13e56e72270df4c3c88 100644 (file)
@@ -59,7 +59,11 @@ Span_bar_engraver::acknowledge_element (Score_element_info i)
 
       if (bar_l_arr_.size() >= 2 && !spanbar_p_) 
        {
 
       if (bar_l_arr_.size() >= 2 && !spanbar_p_) 
        {
-         spanbar_p_ = get_span_bar_p( bar_l_arr_[0]->property_alist_);
+         spanbar_p_ = get_span_bar_p (get_property ("basicSpanBarProperties"));
+         spanbar_p_->set_elt_property ("glyph", bar_l_arr_[0]->get_elt_property ("glyph"));
+         spanbar_p_->set_elt_property ("visibility-lambda",
+                                       bar_l_arr_[0]->get_elt_property ("visibility-lambda"));   
+                                       
          spanbar_p_->set_parent (bar_l_arr_[0], Y_AXIS);
          spanbar_p_->set_parent (bar_l_arr_[0], X_AXIS);
 
          spanbar_p_->set_parent (bar_l_arr_[0], Y_AXIS);
          spanbar_p_->set_parent (bar_l_arr_[0], X_AXIS);
 
index 415f1cac8b33d4c93b4d2ef3a83049a3577e9f10..91ab2a0ab291a43a9a41da542c970af3e5a4f682 100644 (file)
@@ -39,16 +39,20 @@ Span_bar::width_callback (Score_element const *se, Axis )
   return m.extent (X_AXIS);
 }
 
   return m.extent (X_AXIS);
 }
 
-void
-Span_bar::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Span_bar,before_line_breaking);
+SCM
+Span_bar::member_before_line_breaking ()
 {
 {
-  Bar::before_line_breaking ();
+  Bar::member_before_line_breaking ();
   
   evaluate_empty ();
   
   evaluate_empty ();
+
+  return SCM_UNDEFINED;
 }
 
 }
 
-void
-Span_bar::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Span_bar,after_line_breaking);
+SCM
+Span_bar::member_after_line_breaking ()
 {
   Interval i (get_spanned_interval ());
 
 {
   Interval i (get_spanned_interval ());
 
@@ -57,6 +61,7 @@ Span_bar::after_line_breaking ()
     we have to translate ourselves to be in the center of the 
     interval that we span.  */
   translate_axis (i.center (), Y_AXIS);
     we have to translate ourselves to be in the center of the 
     interval that we span.  */
   translate_axis (i.center (), Y_AXIS);
+  return SCM_UNDEFINED;
 }
 
 void
 }
 
 void
index b791b707fd91feb4310321e66b4202e93f6a183c..ae2167d98861ea3fc07ea8196aa61ed2d5d229f3 100644 (file)
 
 
 
 
 
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Staff_symbol)
-Molecule 
-Staff_symbol::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Staff_symbol,brew_molecule);
+
+SCM
+Staff_symbol::member_brew_molecule () const
 {
   Score_element * common
     = get_bound (LEFT)->common_refpoint (get_bound (RIGHT), X_AXIS);
 {
   Score_element * common
     = get_bound (LEFT)->common_refpoint (get_bound (RIGHT), X_AXIS);
@@ -43,7 +45,7 @@ Staff_symbol::do_brew_molecule () const
       m.add_molecule (a);
     }
 
       m.add_molecule (a);
     }
 
-  return m;
+  return m.create_scheme();
 }
 
 int
 }
 
 int
index ee39f337ad9d4200f86ecc67a1d558abcc461fde..a209a04a633e9d0e44ada2c213e802c58139faf1 100644 (file)
@@ -48,9 +48,10 @@ Stem_tremolo::dim_callback (Score_element * se, Axis )
 }
 
 
 }
 
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Stem_tremolo)
-Molecule 
-Stem_tremolo::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Stem_tremolo,brew_molecule);
+SCM
+Stem_tremolo::member_brew_molecule () const
 {
   Stem * stem = stem_l ();
   Beam * beam = stem->beam_l ();
 {
   Stem * stem = stem_l ();
   Beam * beam = stem->beam_l ();
@@ -128,7 +129,7 @@ Stem_tremolo::do_brew_molecule () const
                             whole_note_correction, dy));
     }
   
                             whole_note_correction, dy));
     }
   
-  return mol;
+  return mol.create_scheme();
 }
 
 
 }
 
 
index 1ca3d9b3ebcb4acac4b707b117d4424e8ac89ffa..e1b53608c82bf03420f1756dc4bc643e4319a36c 100644 (file)
@@ -377,8 +377,9 @@ Stem::position_noteheads ()
     }
 }
 
     }
 }
 
-void
-Stem::before_line_breaking ()
+GLUE_SCORE_ELEMENT(Stem,before_line_breaking);
+SCM
+Stem::member_before_line_breaking ()
 {
   stem_end_position ();        // ugh. Trigger direction calc.
   position_noteheads ();
 {
   stem_end_position ();        // ugh. Trigger direction calc.
   position_noteheads ();
@@ -390,6 +391,7 @@ Stem::before_line_breaking ()
     }
   
   set_spacing_hints ();
     }
   
   set_spacing_hints ();
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
@@ -455,9 +457,11 @@ Stem::dim_callback (Score_element const *se, Axis )
 
 const Real ANGLE = 20* (2.0*M_PI/360.0); // ugh! Should be settable.
 
 
 const Real ANGLE = 20* (2.0*M_PI/360.0); // ugh! Should be settable.
 
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Stem)
-Molecule 
-Stem::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Stem,brew_molecule);
+
+SCM
+Stem::member_brew_molecule () const
 {
   Molecule mol;
 
 {
   Molecule mol;
 
@@ -490,7 +494,7 @@ Stem::do_brew_molecule () const
       mol.add_molecule (fl);
     }
 
       mol.add_molecule (fl);
     }
 
-  return mol;
+  return mol.create_scheme();
 }
 
 Real
 }
 
 Real
index 1906eb29ac6199257786b91cee2978439553e652..77a3727ecfc6cb7ece257d2740a259ae0049c6f2 100644 (file)
 
   Properties:
 
 
   Properties:
 
-  glyph -- text string (TODO:   make one large glyph of the Ped symbol, removes need for do_brew_molecule ())
+  glyph -- text string (TODO:   make one large glyph of the Ped symbol, removes need for member_brew_molecule ())
 
 */
 
 struct Sustain_pedal
 {
 public:
 
 */
 
 struct Sustain_pedal
 {
 public:
-   static SCM scheme_molecule (SCM);
+   static SCM brew_molecule (SCM);
 };
 
 
 };
 
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Sustain_pedal);
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Sustain_pedal,brew_molecule);
 
 SCM
 
 SCM
-Sustain_pedal::scheme_molecule (SCM smob) 
+Sustain_pedal::brew_molecule (SCM smob) 
 {
   Score_element * e = unsmob_element (smob);
   
 {
   Score_element * e = unsmob_element (smob);
   
index 884f44e3139efe855669d64086a1d98607cc00fc..5be06b334ee7315995f45859eade2c84ffcaa918 100644 (file)
@@ -55,8 +55,9 @@ System_start_delimiter::simple_bar (Real h) const
   return lookup_l ()->filledbox (Box (Interval(0,w), Interval(-h/2, h/2)));
 }
 
   return lookup_l ()->filledbox (Box (Interval(0,w), Interval(-h/2, h/2)));
 }
 
-void
-System_start_delimiter::after_line_breaking ()
+GLUE_SCORE_ELEMENT(System_start_delimiter,after_line_breaking);
+SCM
+System_start_delimiter::member_after_line_breaking ()
 {
   SCM   gl = get_elt_property ("glyph");
   
 {
   SCM   gl = get_elt_property ("glyph");
   
@@ -64,12 +65,13 @@ System_start_delimiter::after_line_breaking ()
     {
       suicide ();
     }
     {
       suicide ();
     }
+  return SCM_UNDEFINED;
 }
 
 }
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(System_start_delimiter);
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(System_start_delimiter,brew_molecule);
 
 SCM
 
 SCM
-System_start_delimiter::scheme_molecule (SCM smob)
+System_start_delimiter::brew_molecule (SCM smob)
 {
   Score_element * sc = unsmob_element (smob);
 
 {
   Score_element * sc = unsmob_element (smob);
 
index ae3ea80b402c916e98cd0454450627f08533a833..777706f0bff1e0f9ae84995471be70aa3cd8d699 100644 (file)
 
 struct Text_item
 {
 
 struct Text_item
 {
-  static SCM scheme_molecule (SCM);
+  static SCM brew_molecule (SCM);
 };
 
 
 };
 
 
-MAKE_SCHEME_SCORE_ELEMENT_NON_DEFAULT_CALLBACKS(Text_item)
+MAKE_SCHEME_SCORE_ELEMENT_CALLBACK(Text_item,brew_molecule)
 
 SCM 
 
 SCM 
-Text_item::scheme_molecule (SCM sm) 
+Text_item::brew_molecule (SCM sm) 
 {
   Score_element * s = unsmob_element (sm);
   
 {
   Score_element * s = unsmob_element (sm);
   
index 5ef23866d270f7c4712c79d523f593cf51c07a41..08e242bb6180db35b2852b196d56b6e9b07fe608 100644 (file)
@@ -85,14 +85,15 @@ Tie_column::set_directions ()
       Direction d = (Direction) sign (p);
       if (!d)
        d = UP;
       Direction d = (Direction) sign (p);
       if (!d)
        d = UP;
-
       directional_element (s[i]).set (d);
     }
   
 }
 
       directional_element (s[i]).set (d);
     }
   
 }
 
-void
-Tie_column::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Tie_column,after_line_breaking);
+SCM
+Tie_column::member_after_line_breaking ()
 {
   set_directions ();
 {
   set_directions ();
+  return SCM_UNDEFINED;
 }
 }
index 90debb307901e5d70d1c30b79aa4c230155b5b9e..ed3d2be69b4e4cc189473831caa193496502680c 100644 (file)
@@ -92,14 +92,15 @@ Tie::do_add_processing()
   index_set_cell (get_elt_pointer ("heads"), RIGHT, new_head_drul[RIGHT]->self_scm_ );
 }
 
   index_set_cell (get_elt_pointer ("heads"), RIGHT, new_head_drul[RIGHT]->self_scm_ );
 }
 
-void
-Tie::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Tie,after_line_breaking);
+SCM
+Tie::member_after_line_breaking ()
 {
   if (!head (LEFT) && !head (RIGHT))
     {
       programming_error ("Tie without heads.");
       suicide ();
 {
   if (!head (LEFT) && !head (RIGHT))
     {
       programming_error ("Tie without heads.");
       suicide ();
-      return;
+      return SCM_UNDEFINED;
     }
 
   if (!directional_element (this).get ())
     }
 
   if (!directional_element (this).get ())
@@ -169,6 +170,8 @@ Tie::after_line_breaking ()
     }
   
   dy_f_drul_[LEFT] = dy_f_drul_[RIGHT] = y_f;
     }
   
   dy_f_drul_[LEFT] = dy_f_drul_[RIGHT] = y_f;
+
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
@@ -187,12 +190,10 @@ Tie::get_rods () const
   return a;
 }
 
   return a;
 }
 
+GLUE_SCORE_ELEMENT(Tie,brew_molecule);
 
 
-
-
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Tie)
-Molecule 
-Tie::do_brew_molecule () const
+SCM
+Tie::member_brew_molecule () const
 {
   Real thick = paper_l ()->get_var ("tie_thickness");
   Bezier one = get_curve ();
 {
   Real thick = paper_l ()->get_var ("tie_thickness");
   Bezier one = get_curve ();
@@ -204,7 +205,7 @@ Tie::do_brew_molecule () const
   else
     a = lookup_l ()->slur (one, directional_element (this).get () * thick, thick);
   
   else
     a = lookup_l ()->slur (one, directional_element (this).get () * thick, thick);
   
-  return a; 
+  return a.create_scheme()
 }
 
 
 }
 
 
index bbefb9dcfaf3e1f6dd7ad7a3b7017648e76e2e0d..50c45abd4c4dc0e812ee73779bd0de4a49bfbd6a 100644 (file)
@@ -20,9 +20,10 @@ Time_signature::Time_signature (SCM s)
 }
 
 // ugh.!
 }
 
 // ugh.!
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Time_signature)
-Molecule 
-Time_signature::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Time_signature,brew_molecule);
+SCM
+Time_signature::member_brew_molecule () const
 {
   SCM st = get_elt_property ("style");
 
 {
   SCM st = get_elt_property ("style");
 
@@ -41,15 +42,15 @@ Time_signature::do_brew_molecule () const
       String style (ly_scm2string (st));
       if (style[0]=='1')
        {
       String style (ly_scm2string (st));
       if (style[0]=='1')
        {
-         return time_signature (n, 0);
+         return time_signature (n, 0).create_scheme();
        }
       else
        {
        }
       else
        {
-         return special_time_signature (style, n, d);
+         return special_time_signature (style, n, d).create_scheme();
        }
     }
   else
        }
     }
   else
-    return     time_signature (n,d);
+    return time_signature (n,d).create_scheme();
 }
 
 Molecule
 }
 
 Molecule
index eeabe86e5b1f24f797a1645b6c36831bb8eb4cdc..5779209b150b1400c125ce706238c58829a9ae48 100644 (file)
@@ -35,9 +35,10 @@ Tuplet_spanner::Tuplet_spanner (SCM s)
 /*
   TODO. 
  */
 /*
   TODO. 
  */
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Tuplet_spanner)
-Molecule 
-Tuplet_spanner::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Tuplet_spanner,brew_molecule);
+SCM
+Tuplet_spanner::member_brew_molecule () const
 {
   Molecule  mol;
 
 {
   Molecule  mol;
 
@@ -111,7 +112,7 @@ Tuplet_spanner::do_brew_molecule () const
          mol.add_molecule (Molecule (b, at));
        }
     }
          mol.add_molecule (Molecule (b, at));
        }
     }
-  return mol;
+  return mol.create_scheme();
 }
   
 void
 }
   
 void
@@ -201,8 +202,9 @@ Tuplet_spanner::calc_dy (Real * dy) const
     - column_arr[0]->extent (Y_AXIS) [d];
 }
 
     - column_arr[0]->extent (Y_AXIS) [d];
 }
 
-void
-Tuplet_spanner::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Tuplet_spanner,after_line_breaking);
+SCM
+Tuplet_spanner::member_after_line_breaking ()
 {
   Link_array<Note_column> column_arr=
     Pointer_group_interface__extract_elements (this, (Note_column*)0, "columns");
 {
   Link_array<Note_column> column_arr=
     Pointer_group_interface__extract_elements (this, (Note_column*)0, "columns");
@@ -210,6 +212,7 @@ Tuplet_spanner::after_line_breaking ()
   if (!column_arr.size ())
     {
       suicide ();
   if (!column_arr.size ())
     {
       suicide ();
+      return SCM_UNDEFINED;
     }
 
   Direction d = directional_element (this).get ();
     }
 
   Direction d = directional_element (this).get ();
@@ -237,6 +240,7 @@ Tuplet_spanner::after_line_breaking ()
          && get_bound (RIGHT)->column_l () == beam_l->get_bound (RIGHT)->column_l ())
        set_elt_property ("parallel-beam", SCM_BOOL_T);
     }
          && get_bound (RIGHT)->column_l () == beam_l->get_bound (RIGHT)->column_l ())
        set_elt_property ("parallel-beam", SCM_BOOL_T);
     }
+  return SCM_UNDEFINED;
 }
 
 
 }
 
 
index 4f4880a716233f43d406632cba35c8ef5df45cf9..cb9400bbca44716b491eb1d7d45ca4b9f91b18a1 100644 (file)
@@ -41,9 +41,10 @@ Volta_spanner::Volta_spanner (SCM s)
   
   
 */
   
   
 */
-MAKE_SCHEME_SCORE_ELEMENT_CALLBACKS(Volta_spanner)
-Molecule 
-Volta_spanner::do_brew_molecule () const
+
+GLUE_SCORE_ELEMENT(Volta_spanner,brew_molecule);
+SCM
+Volta_spanner::member_brew_molecule () const
 {
   Molecule  mol;
 
 {
   Molecule  mol;
 
@@ -51,7 +52,7 @@ Volta_spanner::do_brew_molecule () const
     = Pointer_group_interface__extract_elements (this, (Bar*)0, "bars");
 
   if (!bar_arr.size ())
     = Pointer_group_interface__extract_elements (this, (Bar*)0, "bars");
 
   if (!bar_arr.size ())
-    return mol;
+    return mol.create_scheme();
 
   bool no_vertical_start = false;
   bool no_vertical_end = to_boolean (get_elt_property ("last-volta"));
 
   bool no_vertical_start = false;
   bool no_vertical_end = to_boolean (get_elt_property ("last-volta"));
@@ -94,13 +95,12 @@ Volta_spanner::do_brew_molecule () const
 
   mol.add_at_edge (X_AXIS, LEFT, num, - num.extent (X_AXIS).length ()
                   - staff_space);
 
   mol.add_at_edge (X_AXIS, LEFT, num, - num.extent (X_AXIS).length ()
                   - staff_space);
-  return mol;
+  return mol.create_scheme();
 }
   
 void
 Volta_spanner::do_add_processing ()
 {
 }
   
 void
 Volta_spanner::do_add_processing ()
 {
-
   Link_array<Bar> bar_arr
     = Pointer_group_interface__extract_elements (this, (Bar*)0, "bars");
 
   Link_array<Bar> bar_arr
     = Pointer_group_interface__extract_elements (this, (Bar*)0, "bars");
 
@@ -111,10 +111,12 @@ Volta_spanner::do_add_processing ()
     }
 }
 
     }
 }
 
-void
-Volta_spanner::after_line_breaking ()
+GLUE_SCORE_ELEMENT(Volta_spanner,after_line_breaking);
+SCM
+Volta_spanner::member_after_line_breaking ()
 {
   Side_position_interface (this).add_staff_support ();
 {
   Side_position_interface (this).add_staff_support ();
+  return SCM_UNDEFINED;
 }
   
 void
 }
   
 void
index 4445e4afa7fdb149692182383ef2576dacd01471..10a44a2db828259e985f42027e9e864b8d50c93a 100644 (file)
@@ -403,10 +403,10 @@ ScoreContext = \translator {
        
        basicBarProperties = #`(
                (break-align-symbol . Staff_bar)
        
        basicBarProperties = #`(
                (break-align-symbol . Staff_bar)
-               (molecule-callback . ,Bar::scheme_molecule)        
+               (molecule-callback . ,Bar::brew_molecule)          
                (visibility-lambda . ,begin-of-line-invisible)
                (breakable . #t)
                (visibility-lambda . ,begin-of-line-invisible)
                (breakable . #t)
-
+               (before-line-breaking-callback . ,Bar::before_line_breaking)
                ;;
                ;; Ross. page 151 lists other values, we opt for a leaner look
                ;; 
                ;;
                ;; Ross. page 151 lists other values, we opt for a leaner look
                ;; 
@@ -417,47 +417,56 @@ ScoreContext = \translator {
        )
 
        basicBarNumberProperties = #`(
        )
 
        basicBarNumberProperties = #`(
-               (molecule-callback . ,Text_item::scheme_molecule)
+               (molecule-callback . ,Text_item::brew_molecule)
                (breakable . #t)
                (visibility-lambda . ,begin-of-line-visible)
        )
 
        basicBeamProperties = #`(
                (breakable . #t)
                (visibility-lambda . ,begin-of-line-visible)
        )
 
        basicBeamProperties = #`(
-               (molecule-callback . ,Beam::scheme_molecule)
-               (beam-thickness . 0.42) ; interline!
+               (molecule-callback . ,Beam::brew_molecule)
+               (beam-thickness . 0.42) ; interline
+               (before-line-breaking-callback . ,Beam::before_line_breaking)
+               (after-line-breaking-callback . ,Beam::after_line_breaking)                             
        )
 
        basicBreakAlignProperties = #`(
                (breakable . #t)
        )
 
        basicBreakAlignProperties = #`(
                (breakable . #t)
-       )
+               (before-line-breaking-callback . ,Break_align_item::before_line_breaking)
+)
 
        
        basicBreathingSignProperties = #`(
                (break-align-symbol . Breathing_sign)
 
        
        basicBreathingSignProperties = #`(
                (break-align-symbol . Breathing_sign)
+               (after-line-breaking-callback . ,Breathing_sign::after_line_breaking)
                (breakable . #t )
                (breakable . #t )
-               (molecule-callback . ,Breathing_sign::scheme_molecule)
+               (molecule-callback . ,Breathing_sign::brew_molecule)
                (visibility-lambda . ,begin-of-line-invisible)
                (visibility-lambda . ,begin-of-line-invisible)
+
        )
         basicClefItemProperties = #`(
        )
         basicClefItemProperties = #`(
-          (molecule-callback . ,Score_element::scheme_molecule)
+          (molecule-callback . ,Score_element::brew_molecule)
+          (before-line-breaking-callback . ,Clef_item::before_line_breaking)
           (breakable . #t)
           (break-align-symbol . Clef_item)
           (visibility-lambda . ,begin-of-line-visible) 
         )
        basicSlurProperties = #`(
           (breakable . #t)
           (break-align-symbol . Clef_item)
           (visibility-lambda . ,begin-of-line-visible) 
         )
        basicSlurProperties = #`(
-               (molecule-callback . ,Slur::scheme_molecule)
+               (molecule-callback . ,Slur::brew_molecule)
+               (after-line-breaking-callback . ,Slur::after_line_breaking)
        )
        basicChordNameProperties = #`(
        )
        basicChordNameProperties = #`(
-               (molecule-callback . ,Chord_name::scheme_molecule)
+               (molecule-callback . ,Chord_name::brew_molecule)
        )
        basicCollisionProperties = #`(
                (axes 0 1)
        )
        basicCollisionProperties = #`(
                (axes 0 1)
+               (before-line-breaking-callback . ,Collision::before_line_breaking)
        )
        basicCrescendoProperties = #`(
        )
        basicCrescendoProperties = #`(
-               (molecule-callback . ,Crescendo::scheme_molecule)
+               (molecule-callback . ,Crescendo::brew_molecule)
        )
        basicDotsProperties = #`(
        )
        basicDotsProperties = #`(
-               (molecule-callback . ,Dots::scheme_molecule)
+               (molecule-callback . ,Dots::brew_molecule)
+               (after-line-breaking-callback . ,Dots::after_line_breaking)
                (dot-count . 1) 
        )
        basicDynamicLineSpannerProperties = #`(
                (dot-count . 1) 
        )
        basicDynamicLineSpannerProperties = #`(
@@ -465,7 +474,7 @@ ScoreContext = \translator {
        )
        basicDynamicTextProperties       = # `(
                (style . "dynamic")
        )
        basicDynamicTextProperties       = # `(
                (style . "dynamic")
-               (molecule-callback . ,Text_item::scheme_molecule)
+               (molecule-callback . ,Text_item::brew_molecule)
                (script-priority . 100)
                (self-alignment-Y . 0)
        )
                (script-priority . 100)
                (self-alignment-Y . 0)
        )
@@ -473,54 +482,62 @@ ScoreContext = \translator {
          (break-align-symbol . Left_edge_item)
          (breakable . #t)
        )
          (break-align-symbol . Left_edge_item)
          (breakable . #t)
        )
+       basicGraceAlignItemProperties = #`(
+               (axes . (0))
+               (before-line-breaking-callback . ,Grace_align_item::before_line_breaking)
+       )
+       basicHaraKiriVerticalGroupspannerProperties = #`(
+               (after-line-breaking-callback . ,Hara_kiri_group_spanner::after_line_breaking)
+       )
        basicHyphenSpannerProperties = #`(
        basicHyphenSpannerProperties = #`(
-       (thickness . 1.0)
-       (height . 0.4)
-       (minimum-length .  0.5) 
-               (molecule-callback . ,Hyphen_spanner::scheme_molecule)
+               (thickness . 1.0)
+               (height . 0.4)
+               (minimum-length .  0.5) 
+               (molecule-callback . ,Hyphen_spanner::brew_molecule)
        )
        basicKeyProperties = #`(
        )
        basicKeyProperties = #`(
-         (molecule-callback . ,Key_item::scheme_molecule)
+         (molecule-callback . ,Key_item::brew_molecule)
          (break-align-symbol . Key_item)
          (visibility-lambda . ,begin-of-line-visible)
          (breakable . #t)
          )     
        basicLocalKeyProperties = #`(
          (break-align-symbol . Key_item)
          (visibility-lambda . ,begin-of-line-visible)
          (breakable . #t)
          )     
        basicLocalKeyProperties = #`(
-               (molecule-callback . ,Local_key_item::scheme_molecule)
+               (molecule-callback . ,Local_key_item::brew_molecule)
                (left-padding . 0.2)
                (right-padding . 0.4)
        )
        basicLyricExtenderProperties = #`(
                (left-padding . 0.2)
                (right-padding . 0.4)
        )
        basicLyricExtenderProperties = #`(
-               (molecule-callback . ,Lyric_extender::scheme_molecule)
+               (molecule-callback . ,Lyric_extender::brew_molecule)
        )
        basicLyricTextProperties = #`(
        )
        basicLyricTextProperties = #`(
-               (molecule-callback . ,Text_item::scheme_molecule)
+               (molecule-callback . ,Text_item::brew_molecule)
                (non-rhythmic . #t)
        )
        basicMarkProperties = #`(
                (non-rhythmic . #t)
        )
        basicMarkProperties = #`(
-         (molecule-callback . ,Text_item::scheme_molecule)     
+         (molecule-callback . ,Text_item::brew_molecule)       
          (breakable . #t)
          (visibility-lambda . ,end-of-line-invisible)
        )
        basicMultiMeasureRestProperties = #`(
          (breakable . #t)
          (visibility-lambda . ,end-of-line-invisible)
        )
        basicMultiMeasureRestProperties = #`(
-               (molecule-callback . ,Multi_measure_rest::scheme_molecule)
+               (molecule-callback . ,Multi_measure_rest::brew_molecule)
                (staff-position . 0)
                (staff-position . 0)
+               (after-line-breaking-callback . ,Multi_measure_rest::after_line_breaking)
        )
        basicNoteColumnProperties = #`(
                (axes 0 1)
        )
        basicNoteHeadProperties = #`(
        )
        basicNoteColumnProperties = #`(
                (axes 0 1)
        )
        basicNoteHeadProperties = #`(
-               (molecule-callback . ,Note_head::scheme_molecule)
+               (molecule-callback . ,Note_head::brew_molecule)
        )
        basicOctavateEightProperties  = #`(
                (self-alignment-X . 0)
                (text . "8")
                (visibility-lambda . ,begin-of-line-visible) 
        )
        basicOctavateEightProperties  = #`(
                (self-alignment-X . 0)
                (text . "8")
                (visibility-lambda . ,begin-of-line-visible) 
-               (molecule-callback . ,Text_item::scheme_molecule)
+               (molecule-callback . ,Text_item::brew_molecule)
                (style . "italic")
        )
        basicPedalProperties = #`(
                (style . "italic")
        )
        basicPedalProperties = #`(
-               (molecule-callback . ,Text_item::scheme_molecule)
+               (molecule-callback . ,Text_item::brew_molecule)
                (style . "italic")
                (no-spacing-rods . #t)
                (self-alignment-X . 0)
                (style . "italic")
                (no-spacing-rods . #t)
                (self-alignment-X . 0)
@@ -528,25 +545,46 @@ ScoreContext = \translator {
        )
        basicTextProperties = #`( )
        basicRestProperties = #`( 
        )
        basicTextProperties = #`( )
        basicRestProperties = #`( 
-               (molecule-callback . ,Rest::scheme_molecule)
+               (molecule-callback . ,Rest::brew_molecule)
        )
        
        basicRestCollisionProperties = #`(
        )
        basicScriptProperties    = #`(
        )
        
        basicRestCollisionProperties = #`(
        )
        basicScriptProperties    = #`(
-               (molecule-callback . ,Script::scheme_molecule)
+               (molecule-callback . ,Script::brew_molecule)
        )
                
        basicSlurProperties = #`(
        )
                
        basicSlurProperties = #`(
-               (molecule-callback . ,Slur::scheme_molecule)
+               (molecule-callback . ,Slur::brew_molecule)
+               (after-line-breaking-callback . ,Rest::after_line_breaking) 
+       )
+       basicSpanBarProperties = #`(
+               (break-align-symbol . Staff_bar)
+               (molecule-callback . ,Bar::brew_molecule)
+               (visibility-lambda . ,begin-of-line-invisible)
+               (breakable . #t)
+               (before-line-breaking-callback . ,Span_bar::before_line_breaking)
+               (after-line-breaking-callback . ,Span_bar::after_line_breaking)
+
+               ;; ugh duplication! 
+               
+               ;;
+               ;; Ross. page 151 lists other values, we opt for a leaner look
+               ;; 
+               (kern . 3.0)
+               (thin-kern . 3.0)
+               (hair-thickness . 1.6)
+               (thick-thickness . 6.0)
+
        )
        basicSustainPedalProperties = #`(
                (no-spacing-rods . #t)
        )
        basicSustainPedalProperties = #`(
                (no-spacing-rods . #t)
-               (molecule-callback . ,Sustain_pedal::scheme_molecule)
+               (molecule-callback . ,Sustain_pedal::brew_molecule)
                (self-alignment-X . 0)
        )       
        basicSystemStartDelimiterProperties = #`(
                (self-alignment-X . 0)
        )       
        basicSystemStartDelimiterProperties = #`(
-               (molecule-callback . ,System_start_delimiter::scheme_molecule)
+               (molecule-callback . ,System_start_delimiter::brew_molecule)
+               (after-line-breaking-callback . ,System_start_delimiter::after_line_breaking) 
                (collapse-height . 1.0)
                (thickness . 1.6)
                (arch-height . 1.5)
                (collapse-height . 1.0)
                (thickness . 1.6)
                (arch-height . 1.5)
@@ -557,36 +595,39 @@ ScoreContext = \translator {
                (bracket-width . 2.0)
        )
        basicStemProperties = #`(
                (bracket-width . 2.0)
        )
        basicStemProperties = #`(
-               (molecule-callback . ,Stem::scheme_molecule)
+               (before-line-breaking-callback . ,Stem::before_line_breaking)
+               (molecule-callback . ,Stem::brew_molecule)
        )
        staffSymbolBasicProperties = #`(
        )
        staffSymbolBasicProperties = #`(
-               (molecule-callback . ,Staff_symbol::scheme_molecule)
+               (molecule-callback . ,Staff_symbol::brew_molecule)
                (staff-space . 1.0 )
                (line-count . 5 )
        )
        basicTextScriptProperties = #`(
                (staff-space . 1.0 )
                (line-count . 5 )
        )
        basicTextScriptProperties = #`(
-               (molecule-callback . ,Text_item::scheme_molecule)
+               (molecule-callback . ,Text_item::brew_molecule)
                (no-spacing-rods . #t)
        )
        basicTimeSignatureProperties = #`(
                (no-spacing-rods . #t)
        )
        basicTimeSignatureProperties = #`(
-               (molecule-callback . ,Time_signature::scheme_molecule)
+               (molecule-callback . ,Time_signature::brew_molecule)
                (break-align-symbol . Time_signature)
                (visibility-lambda . ,all-visible)
                (breakable . #t)
        )
        basicTieProperties = #`(
                (break-align-symbol . Time_signature)
                (visibility-lambda . ,all-visible)
                (breakable . #t)
        )
        basicTieProperties = #`(
-               (molecule-callback . ,Tie::scheme_molecule)
+               (molecule-callback . ,Tie::brew_molecule)
+               (after-line-breaking-callback . ,System_start_delimiter::after_line_breaking)           
        )
        basicTieColumnProperties = #`(
        )
        basicTieColumnProperties = #`(
-               
+               (after-line-breaking-callback .,Tie_engraver::after_line_breaking)
        )
        basicTupletSpannerProperties = #`(
                (number-gap . 2.0)   
        )
        basicTupletSpannerProperties = #`(
                (number-gap . 2.0)   
-               (thick . 1.0) 
-               (molecule-callback . ,Tuplet_spanner::scheme_molecule)
+               (thick . 1.0)
+               (after-line-breaking-callback . ,Tuplet_spanner::after_line_breaking)
+               (molecule-callback . ,Tuplet_spanner::brew_molecule)
        )       
        basicStemTremoloProperties = #`(
        )       
        basicStemTremoloProperties = #`(
-               (molecule-callback . ,Stem_tremolo::scheme_molecule)
+               (molecule-callback . ,Stem_tremolo::brew_molecule)
                (beam-width . 4.0) ; interline!
                (beam-thickness . 0.42) ; interline!            
        )
                (beam-width . 4.0) ; interline!
                (beam-thickness . 0.42) ; interline!            
        )
@@ -596,7 +637,7 @@ ScoreContext = \translator {
        )
        basicInstrumentNameProperties = #`(
                (breakable . #t)
        )
        basicInstrumentNameProperties = #`(
                (breakable . #t)
-               (molecule-callback . ,Text_item::scheme_molecule)               
+               (molecule-callback . ,Text_item::brew_molecule)         
                (break-align-symbol . Instrument_name)
                (visibility-lambda . ,begin-of-line-visible)
        )
                (break-align-symbol . Instrument_name)
                (visibility-lambda . ,begin-of-line-visible)
        )
@@ -604,7 +645,8 @@ ScoreContext = \translator {
                (axes 1)
        )
        basicVoltaSpannerProperties = #`(
                (axes 1)
        )
        basicVoltaSpannerProperties = #`(
-               (molecule-callback . ,Volta_spanner::scheme_molecule)
+               (molecule-callback . ,Volta_spanner::brew_molecule)
+               (after-line-breaking-callback . ,Volta_spanner::after_line_breaking) 
        )
        
        \accepts "Staff";
        )
        
        \accepts "Staff";
index 162984e5b305cf748348141122ad33b6cf376f4a..2d3f1eb094fc62c9936eb661f4a4f1e8778016d2 100644 (file)
@@ -1,9 +1,9 @@
+
+% JUNKME
 %part-paper.ly
 
 \paper {
        \translator { \OrchestralPartStaffContext }
 %part-paper.ly
 
 \paper {
        \translator { \OrchestralPartStaffContext }
-       \translator { \ScoreContext skipBars = 1; }
-       % for simple testing only!
-%      castingalgorithm = \Wordwrap; % lots faster on my 486 -- jcn
+       \translator { \ScoreContext skipBars = ##t; }
 }
 
 }
 
index 70160c080fbab77ed066240d7d2b86f2a3768691..080f6468fd2bc71920d82aff8c6f7134223c1b02 100644 (file)
@@ -1,15 +1,15 @@
 Begin3
 Title: LilyPond
 Begin3
 Title: LilyPond
-Version: 1.3.61
-Entered-date: 18JUN00
+Version: 1.3.62
+Entered-date: 21JUN00
 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
 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.61.tar.gz 
+       1000k lilypond-1.3.62.tar.gz 
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
-       1000k lilypond-1.3.61.tar.gz 
+       1000k lilypond-1.3.62.tar.gz 
 Copying-policy: GPL
 End
 Copying-policy: GPL
 End
index 1caf25c93d3e754abe368bb98b3a5717dd8b5aa6..920a5e0ec7527b6cfd16e14152c8705433bf6cd2 100644 (file)
@@ -1,9 +1,9 @@
 Name: lilypond
 Name: lilypond
-Version: 1.3.61
+Version: 1.3.62
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.61.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.62.tar.gz
 Summary: A program for printing sheet music.
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 # Icon: lilypond-icon.gif
 Summary: A program for printing sheet music.
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 # Icon: lilypond-icon.gif
index 22d6b3b9b930d01af57bb02fe1fea0aad4d86113..b3d77bb10857baf751e1a3c9ce2a1d2700d982a0 100644 (file)
@@ -270,11 +270,11 @@ def draw_paren =
        .. simple_serif(z1r, z1l, 90) .. z2l{down} -- cycle;
 enddef;
   
        .. simple_serif(z1r, z1l, 90) .. z2l{down} -- cycle;
 enddef;
   
-fet_beginchar("Right paranthesis", ")", "rightparen")
+fet_beginchar("Right parenthesis", ")", "rightparen")
        draw_paren;
 fet_endchar;
 
        draw_paren;
 fet_endchar;
 
-fet_beginchar("Left paranthesis", "(", "leftparen")
+fet_beginchar("Left parenthesis", "(", "leftparen")
        draw_paren;
         currentpicture := currentpicture xscaled -1;
         set_char_box(charwd, charbp, chardp, charht);
        draw_paren;
         currentpicture := currentpicture xscaled -1;
         set_char_box(charwd, charbp, chardp, charht);
index e93d45d142c59f107122b8056fe5ad327b130231..30fd6bfd6b026397cc88aa2d91097c3b84aae282 100644 (file)
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2000-06-21 16:48+0200\n"
+"POT-Creation-Date: 2000-06-09 02:01+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -22,7 +22,7 @@ msgstr ""
 msgid "warning: "
 msgstr ""
 
 msgid "warning: "
 msgstr ""
 
-#: dstream.cc:187
+#: dstream.cc:184
 msgid "not enough fields in Dstream init"
 msgstr ""
 
 msgid "not enough fields in Dstream init"
 msgstr ""
 
@@ -249,11 +249,11 @@ msgstr ""
 msgid "unterminated (de)crescendo"
 msgstr ""
 
 msgid "unterminated (de)crescendo"
 msgstr ""
 
-#: extender-engraver.cc:97
+#: extender-engraver.cc:96
 msgid "unterminated extender"
 msgstr ""
 
 msgid "unterminated extender"
 msgstr ""
 
-#: extender-engraver.cc:109
+#: extender-engraver.cc:108
 msgid "Nothing to connect extender to on the left.  Ignoring extender request."
 msgstr ""
 
 msgid "Nothing to connect extender to on the left.  Ignoring extender request."
 msgstr ""
 
@@ -273,15 +273,15 @@ msgstr ""
 msgid "Unattached grace notes.  Attaching to last musical column."
 msgstr ""
 
 msgid "Unattached grace notes.  Attaching to last musical column."
 msgstr ""
 
-#: hyphen-engraver.cc:91
+#: hyphen-engraver.cc:59
 msgid "unterminated hyphen"
 msgstr ""
 
 msgid "unterminated hyphen"
 msgstr ""
 
-#: hyphen-engraver.cc:103
+#: hyphen-engraver.cc:71
 msgid "Nothing to connect hyphen to on the left.  Ignoring hyphen request."
 msgstr ""
 
 msgid "Nothing to connect hyphen to on the left.  Ignoring hyphen request."
 msgstr ""
 
-#: identifier.cc:47
+#: identifier.cc:44
 #, c-format
 msgid "wrong identifier type, expected: `%s'"
 msgstr ""
 #, c-format
 msgid "wrong identifier type, expected: `%s'"
 msgstr ""
@@ -292,7 +292,15 @@ msgstr ""
 msgid "can't find file: `%s'"
 msgstr ""
 
 msgid "can't find file: `%s'"
 msgstr ""
 
-#: key-engraver.cc:92 key-performer.cc:54
+#: key-def.cc:31
+msgid "No key name, assuming `C'"
+msgstr ""
+
+#: key-def.cc:92
+msgid "Don't know how handle empty keys"
+msgstr ""
+
+#: key-engraver.cc:74 key-performer.cc:65
 msgid "FIXME: key change merge"
 msgstr ""
 
 msgid "FIXME: key change merge"
 msgstr ""
 
@@ -301,20 +309,30 @@ msgstr ""
 msgid "(load path: `%s')"
 msgstr ""
 
 msgid "(load path: `%s')"
 msgstr ""
 
-#: line-of-score.cc:86
+#: line-of-score.cc:90
 #, c-format
 msgid "Element count %d."
 msgstr ""
 
 #, c-format
 msgid "Element count %d."
 msgstr ""
 
-#: line-of-score.cc:203 paper-score.cc:70
+#: line-of-score.cc:207 paper-score.cc:70
 #, c-format
 msgid "Element count %d "
 msgstr ""
 
 #, c-format
 msgid "Element count %d "
 msgstr ""
 
-#: line-of-score.cc:217
+#: line-of-score.cc:221
 msgid "Calculating column positions..."
 msgstr ""
 
 msgid "Calculating column positions..."
 msgstr ""
 
+#: local-key-engraver.cc:82
+msgid "out of tune:"
+msgstr ""
+
+#: local-key-engraver.cc:83 time-signature-engraver.cc:29
+#: translator-group.cc:416 translator-group.cc:425
+#, c-format
+msgid "can't find: `%s'"
+msgstr ""
+
 #: lookup.cc:58
 msgid "Aborting"
 msgstr ""
 #: lookup.cc:58
 msgid "Aborting"
 msgstr ""
@@ -469,16 +487,16 @@ msgstr ""
 msgid "no such instrument: `%s'"
 msgstr ""
 
 msgid "no such instrument: `%s'"
 msgstr ""
 
-#: midi-item.cc:366
+#: midi-item.cc:365
 #, c-format
 msgid "unconventional key: flats: %d, sharps: %d"
 msgstr ""
 
 #, c-format
 msgid "unconventional key: flats: %d, sharps: %d"
 msgstr ""
 
-#: midi-item.cc:413
+#: midi-item.cc:410
 msgid "silly duration"
 msgstr ""
 
 msgid "silly duration"
 msgstr ""
 
-#: midi-item.cc:426
+#: midi-item.cc:423
 msgid "silly pitch"
 msgstr ""
 
 msgid "silly pitch"
 msgstr ""
 
@@ -486,11 +504,11 @@ msgstr ""
 msgid "Error syncing file (disk full?)"
 msgstr ""
 
 msgid "Error syncing file (disk full?)"
 msgstr ""
 
-#: music-output-def.cc:50
+#: music-output-def.cc:57
 msgid "Interpretation context with empty type"
 msgstr ""
 
 msgid "Interpretation context with empty type"
 msgstr ""
 
-#: music-output-def.cc:77
+#: music-output-def.cc:87
 #, c-format
 msgid "can't find `%s' context"
 msgstr ""
 #, c-format
 msgid "can't find `%s' context"
 msgstr ""
@@ -500,12 +518,12 @@ msgstr ""
 msgid "Transposition by %s makes accidental larger than two"
 msgstr ""
 
 msgid "Transposition by %s makes accidental larger than two"
 msgstr ""
 
-#: my-lily-lexer.cc:118
+#: my-lily-lexer.cc:129
 #, c-format
 msgid "Identifier name is a keyword: `%s'"
 msgstr ""
 
 #, c-format
 msgid "Identifier name is a keyword: `%s'"
 msgstr ""
 
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:148
 #, c-format
 msgid "error at EOF: %s"
 msgstr ""
 #, c-format
 msgid "error at EOF: %s"
 msgstr ""
@@ -518,16 +536,21 @@ msgstr ""
 msgid "Braces don't match"
 msgstr ""
 
 msgid "Braces don't match"
 msgstr ""
 
-#: paper-def.cc:85
+#: paper-def.cc:70
+#, c-format
+msgid "unknown paper variable: `%s'"
+msgstr ""
+
+#: paper-def.cc:74
 msgid "not a real variable"
 msgstr ""
 
 msgid "not a real variable"
 msgstr ""
 
-#: paper-def.cc:174
+#: paper-def.cc:165
 #, c-format
 msgid "paper output to %s..."
 msgstr ""
 
 #, c-format
 msgid "paper output to %s..."
 msgstr ""
 
-#: mudela-stream.cc:93 paper-outputter.cc:91 performance.cc:95
+#: mudela-stream.cc:93 paper-outputter.cc:92 performance.cc:95
 msgid ", at "
 msgstr ""
 
 msgid ", at "
 msgstr ""
 
@@ -715,12 +738,6 @@ msgstr ""
 msgid "lost in time:"
 msgstr ""
 
 msgid "lost in time:"
 msgstr ""
 
-#: time-signature-engraver.cc:29 translator-group.cc:417
-#: translator-group.cc:426
-#, c-format
-msgid "can't find: `%s'"
-msgstr ""
-
 #: timing-translator.cc:36
 msgid "conflicting timing request"
 msgstr ""
 #: timing-translator.cc:36
 msgid "conflicting timing request"
 msgstr ""
@@ -739,21 +756,21 @@ msgstr ""
 msgid "unknown translator: `%s'"
 msgstr ""
 
 msgid "unknown translator: `%s'"
 msgstr ""
 
-#: translator-group.cc:80 translator-group.cc:93
+#: translator-group.cc:81 translator-group.cc:94
 msgid "Program has no such type"
 msgstr ""
 
 msgid "Program has no such type"
 msgstr ""
 
-#: translator-group.cc:84 translator-group.cc:99
+#: translator-group.cc:85 translator-group.cc:100
 #, c-format
 msgid "Already contains: `%s'"
 msgstr ""
 
 #, c-format
 msgid "Already contains: `%s'"
 msgstr ""
 
-#: translator-group.cc:211
+#: translator-group.cc:210
 #, c-format
 msgid "can't find or create `%s' called `%s'"
 msgstr ""
 
 #, c-format
 msgid "can't find or create `%s' called `%s'"
 msgstr ""
 
-#: translator-group.cc:323
+#: translator-group.cc:322
 #, c-format
 msgid "can't find or create: `%s'"
 msgstr ""
 #, c-format
 msgid "can't find or create: `%s'"
 msgstr ""
@@ -767,68 +784,52 @@ msgstr ""
 msgid "Oldest supported input version: %s"
 msgstr ""
 
 msgid "Oldest supported input version: %s"
 msgstr ""
 
-#: parser.yy:418
+#: parser.yy:427
 msgid "Need a translator group for a context"
 msgstr ""
 
 msgid "Need a translator group for a context"
 msgstr ""
 
-#: parser.yy:433
+#: parser.yy:448
 msgid "Wrong type for property value"
 msgstr ""
 
 msgid "Wrong type for property value"
 msgstr ""
 
-#: parser.yy:607
+#: parser.yy:694
 msgid "More alternatives than repeats.  Junking excess alternatives."
 msgstr ""
 
 msgid "More alternatives than repeats.  Junking excess alternatives."
 msgstr ""
 
-#: parser.yy:652
+#: parser.yy:739
 msgid "Second argument must be a symbol"
 msgstr ""
 
 msgid "Second argument must be a symbol"
 msgstr ""
 
-#: parser.yy:657
+#: parser.yy:744
 msgid "First argument must be a procedure taking 1 argument"
 msgstr ""
 
 msgid "First argument must be a procedure taking 1 argument"
 msgstr ""
 
-#: parser.yy:957
-msgid "Expecting string as script definition"
-msgstr ""
-
-#: parser.yy:967
+#: parser.yy:1069
 msgid "Can't specify direction for this request"
 msgstr ""
 
 msgid "Can't specify direction for this request"
 msgstr ""
 
-#: parser.yy:1059
+#: parser.yy:1170
 #, c-format
 msgid "Expecting %d arguments"
 msgstr ""
 
 #, c-format
 msgid "Expecting %d arguments"
 msgstr ""
 
-#: parser.yy:1075
-msgid "Must have 2 arguments for duration"
-msgstr ""
-
-#: parser.yy:1082 parser.yy:1090 parser.yy:1331
+#: parser.yy:1193 parser.yy:1201 parser.yy:1443
 msgid "Have to be in Lyric mode for lyrics"
 msgstr ""
 
 msgid "Have to be in Lyric mode for lyrics"
 msgstr ""
 
-#: parser.yy:1231 parser.yy:1251
+#: parser.yy:1342 parser.yy:1362
 #, c-format
 msgid "not a duration: %d"
 msgstr ""
 
 #, c-format
 msgid "not a duration: %d"
 msgstr ""
 
-#: parser.yy:1260
+#: parser.yy:1371
 msgid "Have to be in Note mode for notes"
 msgstr ""
 
 msgid "Have to be in Note mode for notes"
 msgstr ""
 
-#: parser.yy:1347
+#: parser.yy:1459
 msgid "Have to be in Chord mode for chords"
 msgstr ""
 
 msgid "Have to be in Chord mode for chords"
 msgstr ""
 
-#: parser.yy:1508 parser.yy:1526
-msgid "need integer number arg"
-msgstr ""
-
-#: parser.yy:1512
-msgid "Must be positive integer"
-msgstr ""
-
 #: lexer.ll:158
 msgid "EOF found inside a comment"
 msgstr ""
 #: lexer.ll:158
 msgid "EOF found inside a comment"
 msgstr ""
@@ -837,36 +838,36 @@ msgstr ""
 msgid "\\maininput disallowed outside init files"
 msgstr ""
 
 msgid "\\maininput disallowed outside init files"
 msgstr ""
 
-#: lexer.ll:196
+#: lexer.ll:202
 #, c-format
 #, c-format
-msgid "wrong or undefined identifier: `%s'"
+msgid "undefined identifier: `%s'"
 msgstr ""
 
 #. backup rule
 msgstr ""
 
 #. backup rule
-#: lexer.ll:201
+#: lexer.ll:207
 msgid "Missing end quote"
 msgstr ""
 
 #. backup rule
 msgid "Missing end quote"
 msgstr ""
 
 #. backup rule
-#: lexer.ll:223 lexer.ll:227
+#: lexer.ll:229 lexer.ll:233
 msgid "white expected"
 msgstr ""
 
 msgid "white expected"
 msgstr ""
 
-#: lexer.ll:235
+#: lexer.ll:241
 msgid "Can't evaluate Scheme in safe mode"
 msgstr ""
 
 msgid "Can't evaluate Scheme in safe mode"
 msgstr ""
 
-#: lexer.ll:431
+#: lexer.ll:436
 #, c-format
 msgid "invalid character: `%c'"
 msgstr ""
 
 #, c-format
 msgid "invalid character: `%c'"
 msgstr ""
 
-#: lexer.ll:503
+#: lexer.ll:494
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr ""
 
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr ""
 
-#: lexer.ll:589
+#: lexer.ll:580
 #, c-format
 msgid "incorrect mudela version: %s (%s, %s)"
 msgstr ""
 #, c-format
 msgid "incorrect mudela version: %s (%s, %s)"
 msgstr ""
index 3138baa043f54333a3562c90b50f962a66451ca0..ed02b27e723861916f23935d20486ca9e33a08df 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,22 +1,11 @@
 # nl.po -- GNU LilyPond's dutch language file
 # nl.po -- GNU LilyPond's dutch language file
-# Copyright (C) 1998, 1999, 2000 Jan Nieuwenhuizen <janneke@gnu.org>, Han-Wen Nienhuys <hanwen@cs.uu.nl>.
-# Jan Nieuwenhuizen <janneke@gnu.org>, 1998.
-# Han-Wen Nienhuys <hanwen@cs.uu.nl>, 1998.
-#
-# Don't change the format of the first three lines,
-# the TP robot wants them like this (I hope).
-# Of course, Han-Wen <hanwen@cs.uu.nl> also was FIRST AUTHOR.
+# Jan Nieuwenhuizen <janneke@gnu.org>
+# Han-Wen Nienhuys <hanwen@cs.uu.nl>, 1998, 1999, 2000.
 #
 msgid ""
 msgstr ""
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 1.3.59\n"
-"POT-Creation-Date: 2000-06-21 16:48+0200\n"
-"PO-Revision-Date: 2000-06-09 02:23+0200\n"
-"Last-Translator: Jan Nieuwenhuizen <janneke@gnu.org>\n"
-"Language-Team: Dutch <nl@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=8859-1\n"
-"Content-Transfer-Encoding: 8bit\n"
+"POT-Creation-Date: 2000-06-09 02:01+0200\n"
+"Content-Type: text/plain; charset=\n"
 "Date: 1998-05-26 11:26:28+0200\n"
 "From:  <janneke@gnu.org>\n"
 "Xgettext-Options: --c++ --default-domain=lilypond --join --output-dir=../po "
 "Date: 1998-05-26 11:26:28+0200\n"
 "From:  <janneke@gnu.org>\n"
 "Xgettext-Options: --c++ --default-domain=lilypond --join --output-dir=../po "
@@ -31,7 +20,7 @@ msgstr "EOF in een string"
 msgid "warning: "
 msgstr "waarschuwing: "
 
 msgid "warning: "
 msgstr "waarschuwing: "
 
-#: dstream.cc:187
+#: dstream.cc:184
 msgid "not enough fields in Dstream init"
 msgstr "onvoldoende velden in Dstream init"
 
 msgid "not enough fields in Dstream init"
 msgstr "onvoldoende velden in Dstream init"
 
@@ -168,7 +157,6 @@ msgid "weird beam vertical offset"
 msgstr "rare verticale waardestreep verplaatsing"
 
 #: break-align-item.cc:87
 msgstr "rare verticale waardestreep verplaatsing"
 
 #: break-align-item.cc:87
-#, c-format
 msgid "unknown spacing pair `%s', `%s'"
 msgstr "onbekend ruimte paar `%s', `%s'"
 
 msgid "unknown spacing pair `%s', `%s'"
 msgstr "onbekend ruimte paar `%s', `%s'"
 
@@ -260,11 +248,11 @@ msgstr "heb al een decrescendo"
 msgid "unterminated (de)crescendo"
 msgstr "onbeëindigd (de)crescendo"
 
 msgid "unterminated (de)crescendo"
 msgstr "onbeëindigd (de)crescendo"
 
-#: extender-engraver.cc:97
+#: extender-engraver.cc:96
 msgid "unterminated extender"
 msgstr "onbeëindigde extender"
 
 msgid "unterminated extender"
 msgstr "onbeëindigde extender"
 
-#: extender-engraver.cc:109
+#: extender-engraver.cc:108
 msgid "Nothing to connect extender to on the left.  Ignoring extender request."
 msgstr ""
 "Niets om extender aan linkerkant aan vast te maken.  Negeer extender verzoek."
 msgid "Nothing to connect extender to on the left.  Ignoring extender request."
 msgstr ""
 "Niets om extender aan linkerkant aan vast te maken.  Negeer extender verzoek."
@@ -285,19 +273,19 @@ msgstr "geen Grace context voor handen"
 msgid "Unattached grace notes.  Attaching to last musical column."
 msgstr "Losse grace noten.  Maak ze vast aan vorige muziekale kolom."
 
 msgid "Unattached grace notes.  Attaching to last musical column."
 msgstr "Losse grace noten.  Maak ze vast aan vorige muziekale kolom."
 
-#: hyphen-engraver.cc:91
+#: hyphen-engraver.cc:59
 msgid "unterminated hyphen"
 msgstr "onafgesloten waardestreep"
 
 msgid "unterminated hyphen"
 msgstr "onafgesloten waardestreep"
 
-#: hyphen-engraver.cc:103
+#: hyphen-engraver.cc:71
 msgid "Nothing to connect hyphen to on the left.  Ignoring hyphen request."
 msgstr ""
 "Niets om streepje aan linkerkant aan vast te maken.  Negeer streepje verzoek."
 
 msgid "Nothing to connect hyphen to on the left.  Ignoring hyphen request."
 msgstr ""
 "Niets om streepje aan linkerkant aan vast te maken.  Negeer streepje verzoek."
 
-#: identifier.cc:47
+#: identifier.cc:44
 #, c-format
 msgid "wrong identifier type, expected: `%s'"
 #, c-format
 msgid "wrong identifier type, expected: `%s'"
-msgstr "verkeerd type identifier, verwachtte: `%s'"
+msgstr "Verkeerd type identifier: "
 
 #: includable-lexer.cc:47 lily-guile.cc:121 lily-guile.cc:144
 #: midi-score-parser.cc:24 scores.cc:108 scores.cc:114
 
 #: includable-lexer.cc:47 lily-guile.cc:121 lily-guile.cc:144
 #: midi-score-parser.cc:24 scores.cc:108 scores.cc:114
@@ -305,7 +293,15 @@ msgstr "verkeerd type identifier, verwachtte: `%s'"
 msgid "can't find file: `%s'"
 msgstr "kan bestand niet vinden: `%s'"
 
 msgid "can't find file: `%s'"
 msgstr "kan bestand niet vinden: `%s'"
 
-#: key-engraver.cc:92 key-performer.cc:54
+#: key-def.cc:31
+msgid "No key name, assuming `C'"
+msgstr "Geen toonsoort, ga uit van `C'"
+
+#: key-def.cc:92
+msgid "Don't know how handle empty keys"
+msgstr "Weet niet hoe lege toonsoorten te behandelen"
+
+#: key-engraver.cc:74 key-performer.cc:65
 msgid "FIXME: key change merge"
 msgstr "MAAKME: toonsoort sleutel samenvoeging"
 
 msgid "FIXME: key change merge"
 msgstr "MAAKME: toonsoort sleutel samenvoeging"
 
@@ -314,20 +310,30 @@ msgstr "MAAKME: toonsoort sleutel samenvoeging"
 msgid "(load path: `%s')"
 msgstr "(zoekpad: `%s')"
 
 msgid "(load path: `%s')"
 msgstr "(zoekpad: `%s')"
 
-#: line-of-score.cc:86
+#: line-of-score.cc:90
 #, c-format
 msgid "Element count %d."
 msgstr "Aantal elementen: %d."
 
 #, c-format
 msgid "Element count %d."
 msgstr "Aantal elementen: %d."
 
-#: line-of-score.cc:203 paper-score.cc:70
+#: line-of-score.cc:207 paper-score.cc:70
 #, c-format
 msgid "Element count %d "
 msgstr "Aantal elementen: %d."
 
 #, c-format
 msgid "Element count %d "
 msgstr "Aantal elementen: %d."
 
-#: line-of-score.cc:217
+#: line-of-score.cc:221
 msgid "Calculating column positions..."
 msgstr "Berekenen van kolomposities..."
 
 msgid "Calculating column positions..."
 msgstr "Berekenen van kolomposities..."
 
+#: local-key-engraver.cc:82
+msgid "out of tune:"
+msgstr "vals:"
+
+#: local-key-engraver.cc:83 time-signature-engraver.cc:29
+#: translator-group.cc:416 translator-group.cc:425
+#, c-format
+msgid "can't find: `%s'"
+msgstr "kan niet vinden: `%s'"
+
 #: lookup.cc:58
 msgid "Aborting"
 msgstr "Breek af"
 #: lookup.cc:58
 msgid "Aborting"
 msgstr "Breek af"
@@ -504,16 +510,16 @@ msgstr ""
 msgid "no such instrument: `%s'"
 msgstr "geen dergelijk instrument: `%s'"
 
 msgid "no such instrument: `%s'"
 msgstr "geen dergelijk instrument: `%s'"
 
-#: midi-item.cc:366
+#: midi-item.cc:365
 #, c-format
 msgid "unconventional key: flats: %d, sharps: %d"
 msgstr "vreemde toonsoort: %d mollen, %d kruizen"
 
 #, c-format
 msgid "unconventional key: flats: %d, sharps: %d"
 msgstr "vreemde toonsoort: %d mollen, %d kruizen"
 
-#: midi-item.cc:413
+#: midi-item.cc:410
 msgid "silly duration"
 msgstr "rare duur"
 
 msgid "silly duration"
 msgstr "rare duur"
 
-#: midi-item.cc:426
+#: midi-item.cc:423
 msgid "silly pitch"
 msgstr "rare toonhoogte"
 
 msgid "silly pitch"
 msgstr "rare toonhoogte"
 
@@ -521,11 +527,11 @@ msgstr "rare toonhoogte"
 msgid "Error syncing file (disk full?)"
 msgstr "Fout by synchroniseren van bestand (disk vol?)"
 
 msgid "Error syncing file (disk full?)"
 msgstr "Fout by synchroniseren van bestand (disk vol?)"
 
-#: music-output-def.cc:50
+#: music-output-def.cc:57
 msgid "Interpretation context with empty type"
 msgstr "Vertolk context met leeg type"
 
 msgid "Interpretation context with empty type"
 msgstr "Vertolk context met leeg type"
 
-#: music-output-def.cc:77
+#: music-output-def.cc:87
 #, c-format
 msgid "can't find `%s' context"
 msgstr "kan `%s' context niet vinden"
 #, c-format
 msgid "can't find `%s' context"
 msgstr "kan `%s' context niet vinden"
@@ -535,12 +541,12 @@ msgstr "kan `%s' context niet vinden"
 msgid "Transposition by %s makes accidental larger than two"
 msgstr "Transponering van %s geeft tripel kruizen/mollen"
 
 msgid "Transposition by %s makes accidental larger than two"
 msgstr "Transponering van %s geeft tripel kruizen/mollen"
 
-#: my-lily-lexer.cc:118
+#: my-lily-lexer.cc:129
 #, c-format
 msgid "Identifier name is a keyword: `%s'"
 msgstr "Identifier naam is een sleutelwoord: `%s'"
 
 #, c-format
 msgid "Identifier name is a keyword: `%s'"
 msgstr "Identifier naam is een sleutelwoord: `%s'"
 
-#: my-lily-lexer.cc:137
+#: my-lily-lexer.cc:148
 #, c-format
 msgid "error at EOF: %s"
 msgstr "fout bij EOF: %s"
 #, c-format
 msgid "error at EOF: %s"
 msgstr "fout bij EOF: %s"
@@ -553,16 +559,21 @@ msgstr "Ontleden..."
 msgid "Braces don't match"
 msgstr "Haakjes paren niet"
 
 msgid "Braces don't match"
 msgstr "Haakjes paren niet"
 
-#: paper-def.cc:85
+#: paper-def.cc:70
+#, c-format
+msgid "unknown paper variable: `%s'"
+msgstr "onbekende papier veranderlijke: `%s'"
+
+#: paper-def.cc:74
 msgid "not a real variable"
 msgstr "niet een reële veranderlijke"
 
 msgid "not a real variable"
 msgstr "niet een reële veranderlijke"
 
-#: paper-def.cc:174
+#: paper-def.cc:165
 #, c-format
 msgid "paper output to %s..."
 msgstr "papier uitvoer naar %s..."
 
 #, c-format
 msgid "paper output to %s..."
 msgstr "papier uitvoer naar %s..."
 
-#: mudela-stream.cc:93 paper-outputter.cc:91 performance.cc:95
+#: mudela-stream.cc:93 paper-outputter.cc:92 performance.cc:95
 msgid ", at "
 msgstr ", bij "
 
 msgid ", at "
 msgstr ", bij "
 
@@ -733,7 +744,7 @@ msgstr ""
 #: tfm.cc:70
 #, c-format
 msgid "can't find ascii character: `%d'"
 #: tfm.cc:70
 #, c-format
 msgid "can't find ascii character: `%d'"
-msgstr "kan ascii teken niet vinden: `%d'"
+msgstr "kan teken niet vinden: `%s'"
 
 #: tie-engraver.cc:195 tie-performer.cc:109
 msgid "No ties were created!"
 
 #: tie-engraver.cc:195 tie-performer.cc:109
 msgid "No ties were created!"
@@ -751,12 +762,6 @@ msgstr "niemand om een x-ool start haak af te drukken"
 msgid "lost in time:"
 msgstr "verdwaald in de tijd:"
 
 msgid "lost in time:"
 msgstr "verdwaald in de tijd:"
 
-#: time-signature-engraver.cc:29 translator-group.cc:417
-#: translator-group.cc:426
-#, c-format
-msgid "can't find: `%s'"
-msgstr "kan niet vinden: `%s'"
-
 #: timing-translator.cc:36
 msgid "conflicting timing request"
 msgstr "strijdig timing verzoek"
 #: timing-translator.cc:36
 msgid "conflicting timing request"
 msgstr "strijdig timing verzoek"
@@ -775,21 +780,21 @@ msgstr "maatstreep controle gefaald op: %s"
 msgid "unknown translator: `%s'"
 msgstr "onbekende papier varanderlijke: `%s'"
 
 msgid "unknown translator: `%s'"
 msgstr "onbekende papier varanderlijke: `%s'"
 
-#: translator-group.cc:80 translator-group.cc:93
+#: translator-group.cc:81 translator-group.cc:94
 msgid "Program has no such type"
 msgstr "Programma heeft geen dergelijk type"
 
 msgid "Program has no such type"
 msgstr "Programma heeft geen dergelijk type"
 
-#: translator-group.cc:84 translator-group.cc:99
+#: translator-group.cc:85 translator-group.cc:100
 #, c-format
 msgid "Already contains: `%s'"
 msgstr "Bevat reeds: `%s'"
 
 #, c-format
 msgid "Already contains: `%s'"
 msgstr "Bevat reeds: `%s'"
 
-#: translator-group.cc:211
+#: translator-group.cc:210
 #, c-format
 msgid "can't find or create `%s' called `%s'"
 msgstr "kan niet vinden of scheppen `%s' genaamd `%s'"
 
 #, c-format
 msgid "can't find or create `%s' called `%s'"
 msgstr "kan niet vinden of scheppen `%s' genaamd `%s'"
 
-#: translator-group.cc:323
+#: translator-group.cc:322
 #, c-format
 msgid "can't find or create: `%s'"
 msgstr "kan niet vinden of scheppen: `%s'"
 #, c-format
 msgid "can't find or create: `%s'"
 msgstr "kan niet vinden of scheppen: `%s'"
@@ -803,69 +808,53 @@ msgstr "niemand om een volta haak af te drukken"
 msgid "Oldest supported input version: %s"
 msgstr "Oudst ondersteunde invoerversie: %s"
 
 msgid "Oldest supported input version: %s"
 msgstr "Oudst ondersteunde invoerversie: %s"
 
-#: parser.yy:418
+#: parser.yy:427
 msgid "Need a translator group for a context"
 msgstr "Heb een translator groep nodig voor een context"
 
 msgid "Need a translator group for a context"
 msgstr "Heb een translator groep nodig voor een context"
 
-#: parser.yy:433
+#: parser.yy:448
 msgid "Wrong type for property value"
 msgstr "Verkeerd type voor property waarde"
 
 msgid "Wrong type for property value"
 msgstr "Verkeerd type voor property waarde"
 
-#: parser.yy:607
+#: parser.yy:694
 msgid "More alternatives than repeats.  Junking excess alternatives."
 msgstr ""
 "Meer alternatieven dan herhalingen.  Schroot overvloedige alternatieven."
 
 msgid "More alternatives than repeats.  Junking excess alternatives."
 msgstr ""
 "Meer alternatieven dan herhalingen.  Schroot overvloedige alternatieven."
 
-#: parser.yy:652
+#: parser.yy:739
 msgid "Second argument must be a symbol"
 msgstr "Tweede argument moet een symbool zijn"
 
 msgid "Second argument must be a symbol"
 msgstr "Tweede argument moet een symbool zijn"
 
-#: parser.yy:657
+#: parser.yy:744
 msgid "First argument must be a procedure taking 1 argument"
 msgstr "Eerste argument moet een procedure zijn met 1 argument"
 
 msgid "First argument must be a procedure taking 1 argument"
 msgstr "Eerste argument moet een procedure zijn met 1 argument"
 
-#: parser.yy:957
-msgid "Expecting string as script definition"
-msgstr "Verwacht string voor script definitie"
-
-#: parser.yy:967
+#: parser.yy:1069
 msgid "Can't specify direction for this request"
 msgstr "Kan richting voor dit verzoek niet specificeren"
 
 msgid "Can't specify direction for this request"
 msgstr "Kan richting voor dit verzoek niet specificeren"
 
-#: parser.yy:1059
+#: parser.yy:1170
 #, c-format
 msgid "Expecting %d arguments"
 msgstr "Verwacht %d argumenten"
 
 #, c-format
 msgid "Expecting %d arguments"
 msgstr "Verwacht %d argumenten"
 
-#: parser.yy:1075
-msgid "Must have 2 arguments for duration"
-msgstr "Moet 2 argumenten hebben voor duur"
-
-#: parser.yy:1082 parser.yy:1090 parser.yy:1331
+#: parser.yy:1193 parser.yy:1201 parser.yy:1443
 msgid "Have to be in Lyric mode for lyrics"
 msgstr "Moet in Lyric modus zijn voor liedteksten"
 
 msgid "Have to be in Lyric mode for lyrics"
 msgstr "Moet in Lyric modus zijn voor liedteksten"
 
-#: parser.yy:1231 parser.yy:1251
+#: parser.yy:1342 parser.yy:1362
 #, c-format
 msgid "not a duration: %d"
 msgstr "geen duur: %d"
 
 #, c-format
 msgid "not a duration: %d"
 msgstr "geen duur: %d"
 
-#: parser.yy:1260
+#: parser.yy:1371
 msgid "Have to be in Note mode for notes"
 msgstr "Moet in Note modus zijn voor noten"
 
 msgid "Have to be in Note mode for notes"
 msgstr "Moet in Note modus zijn voor noten"
 
-#: parser.yy:1347
+#: parser.yy:1459
 msgid "Have to be in Chord mode for chords"
 msgstr "Moet in Chord modus zijn voor accoorden"
 
 msgid "Have to be in Chord mode for chords"
 msgstr "Moet in Chord modus zijn voor accoorden"
 
-#: parser.yy:1508 parser.yy:1526
-msgid "need integer number arg"
-msgstr "heb integer getal arg nogig"
-
-#: parser.yy:1512
-msgid "Must be positive integer"
-msgstr "Moet positieve integer zijn"
-
 #: lexer.ll:158
 msgid "EOF found inside a comment"
 msgstr "EOF gevonden in een kommentaar"
 #: lexer.ll:158
 msgid "EOF found inside a comment"
 msgstr "EOF gevonden in een kommentaar"
@@ -874,35 +863,36 @@ msgstr "EOF gevonden in een kommentaar"
 msgid "\\maininput disallowed outside init files"
 msgstr "\\maininput niet toegestaan buiten init bestanden"
 
 msgid "\\maininput disallowed outside init files"
 msgstr "\\maininput niet toegestaan buiten init bestanden"
 
-#: lexer.ll:196
-msgid "wrong or undefined identifier: `%s'"
-msgstr "verkeerde of ongedefiniëerde identifier: `%s'"
+#: lexer.ll:202
+#, c-format
+msgid "undefined identifier: `%s'"
+msgstr "ongedefiniëerde idendifier: `%s'"
 
 #. backup rule
 
 #. backup rule
-#: lexer.ll:201
+#: lexer.ll:207
 msgid "Missing end quote"
 msgstr "Aanhalingsteken sluiten mist"
 
 #. backup rule
 msgid "Missing end quote"
 msgstr "Aanhalingsteken sluiten mist"
 
 #. backup rule
-#: lexer.ll:223 lexer.ll:227
+#: lexer.ll:229 lexer.ll:233
 msgid "white expected"
 msgstr "wit verwacht"
 
 msgid "white expected"
 msgstr "wit verwacht"
 
-#: lexer.ll:235
+#: lexer.ll:241
 msgid "Can't evaluate Scheme in safe mode"
 msgstr "Kan Scheme niet evalueren in veilige modus"
 
 msgid "Can't evaluate Scheme in safe mode"
 msgstr "Kan Scheme niet evalueren in veilige modus"
 
-#: lexer.ll:431
+#: lexer.ll:436
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "ongeldig teken: `%c'"
 
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "ongeldig teken: `%c'"
 
-#: lexer.ll:503
+#: lexer.ll:494
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "onbekende ontsnapte string: `\\%s'"
 
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "onbekende ontsnapte string: `\\%s'"
 
-#: lexer.ll:589
+#: lexer.ll:580
 #, c-format
 msgid "incorrect mudela version: %s (%s, %s)"
 msgstr "verkeerde mudela versie: %s (%s, %s)"
 #, c-format
 msgid "incorrect mudela version: %s (%s, %s)"
 msgstr "verkeerde mudela versie: %s (%s, %s)"
@@ -1075,6 +1065,39 @@ msgid "% Automatically generated"
 msgstr "% Automatisch gegenereerd"
 
 #: mudela-stream.cc:97
 msgstr "% Automatisch gegenereerd"
 
 #: mudela-stream.cc:97
+#, c-format
 msgid "% from input file: "
 msgstr "% van invoerbestand: "
 
 msgid "% from input file: "
 msgstr "% van invoerbestand: "
 
+#~ msgid "Don't have that many octaves (%s)"
+#~ msgstr "Zoveel oktaven heb ik niet (%s)"
+
+#~ msgid "underdone accidentals (%s)"
+#~ msgstr "onderdreven aantal kruizen/mollen (%s)"
+
+#~ msgid "overdone accidentals (%s)"
+#~ msgstr "overdreven aantal kruizen/mollen (%s)"
+
+#~ msgid "score does not have any columns"
+#~ msgstr "partituur heeft geen enkele kolom"
+
+#~ msgid "can't find start of chord tremolo"
+#~ msgstr "kan start van akkoordtremolo niet vinden"
+
+#~ msgid "already have a chord tremolo"
+#~ msgstr "heb al een akkoordtremolo"
+
+#~ msgid "redeclaration of `\\%s'"
+#~ msgstr "`herdeclaratie van `\\%s'"
+
+#~ msgid "Must set spring between differing columns"
+#~ msgstr "Moet veertje zetten tussen verschillende kolommen"
+
+#~ msgid "Will ignore \\relative for transposed music"
+#~ msgstr "Zal \\relative negeren voor getransponeerde muziek"
+
+#~ msgid "More than one music block"
+#~ msgstr "Meer dan een muziekblok"
+
+#~ msgid "can't put stem tremolo on tuplet"
+#~ msgstr "kan stoktremolo niet op n-ool zetten"
index 9dcba7c6861b06cf914b5f1483e80e998c734e7c..e592f9f38fa5756dd878f11216be5d63d047cf2e 100644 (file)
@@ -512,7 +512,7 @@ def try_parse_header_line (ln, state):
                                m = re.match ('^([^ \t]*) *(.*)$', a) # seperate clef info
                                if m:
                                        __main__.global_key  =compute_key (m.group(1))# ugh.
                                m = re.match ('^([^ \t]*) *(.*)$', a) # seperate clef info
                                if m:
                                        __main__.global_key  =compute_key (m.group(1))# ugh.
-                                       voices_append ('\\key %s \\major;' % lily_key(m.group(1)))
+                                       voices_append ('\\key %s;' % lily_key(m.group(1)))
                                        check_clef(m.group(2))
                                else:
                                        __main__.global_key  =compute_key (a)# ugh.
                                        check_clef(m.group(2))
                                else:
                                        __main__.global_key  =compute_key (a)# ugh.