]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 1.3.49 release/1.3.49
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Thu, 11 May 2000 14:31:37 +0000 (16:31 +0200)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Thu, 11 May 2000 14:31:37 +0000 (16:31 +0200)
==========

* Small fixes for \cresc and \endcresc

* Release properties of unbroken spanners & items after doing
handle_broken_smobs (); should conserve a little memory.

* Fixed handling of orphaned score-elements. Any element that does
not have its Line_of_score as a ancestor in both directions, is silently
removed from the output.  This guarantees that programming errors
don't result in coredumps from Dimension_cache::common_refpoint ():
element->line_l () is always a common reference point.

* Bugfix: set visibility-lambda of clef and octavation-8 explicitly
for default case.  Now the octavation 8 is not printed at every
barline.

1.3.48.

26 files changed:
CHANGES
Documentation/faq.texi
Documentation/topdocs/index.tely
VERSION
config.hh.in
configure
flower/include/libc-extension.hh
flower/libc-extension.cc
input/bugs/cm.ly [deleted file]
input/test/clefs.ly
lily/bezier.cc
lily/chord.cc
lily/clef-engraver.cc
lily/dynamic-engraver.cc
lily/line-of-score.cc
lily/score-element.cc
lily/spacing-spanner.cc
ly/deutsch.ly
ly/engraver.ly
ly/params.ly
ly/performer.ly
ly/spanners.ly
make/out/lilypond.lsm
make/out/lilypond.spec
scm/generic-property.scm.orig [deleted file]
scm/lily.scm

diff --git a/CHANGES b/CHANGES
index be6d5a4aa1acf2ed8aa22c6486fa8c543262e311..e5b73786ac5f4299077a5cef247da3a77b673086 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,15 +1,28 @@
---- ../lilypond-1.3.48/CHANGES Mon May  8 10:48:49 2000
-++ b/CHANGES   Wed May 10 21:46:32 2000
-@@ -1,3 +1,9 @@
+1.3.48.uu1
+==========
+
+* Small fixes for \cresc and \endcresc
+
+* Release properties of unbroken spanners & items after doing
+handle_broken_smobs (); should conserve a little memory.
+
+* Fixed handling of orphaned score-elements. Any element that does
+not have its Line_of_score as a ancestor in both directions, is silently
+removed from the output.  This guarantees that programming errors
+don't result in coredumps from Dimension_cache::common_refpoint ():
+element->line_l () is always a common reference point.
+
+* Bugfix: set visibility-lambda of clef and octavation-8 explicitly
+for default case.  Now the octavation 8 is not printed at every
+barline.
+
 1.3.48.mb1
 ===========
 
 * Changed noteHeadStyle properties to symbols, for example
   \property Voice.noteHeadStyle = #'cross
 
- 1.3.47.mb2
- ===========
- 1.3.47.jcn3
+1.3.47.jcn3
 ===========
 
 * Rewrite of chord-name production in scheme.  There are two major styles
@@ -31,9 +44,8 @@
 
 * Added `Mark' interface to text-items that are marks (thanks, HW).
 
-1.3.46.jcn2
-===========
-
+1.3.48
+======
 1.3.47.mb2
 ===========
 
@@ -46,9 +58,6 @@
   "harmonic" and added "baroque" (normal note shapes except for 
   brevis and longa which are square).
 
-1.3.47.mb1
-===========
-
 * Simplified ly2dvi using the power of the geometry package.
 
 * Improved heuristic size calculation of TeX macros. Handles e.g.
@@ -59,6 +68,8 @@
 
 * Bugfix: don't hang on zero-duration.
 
+* Various glossary updates (thanks, Christian)
+
 1.3.47
 ======
 
index 03b04ab6e967ae39d8e1518f55ddddd568f31500..5934078e7f8ee6317bc3e50573451548ba0ca699 100644 (file)
@@ -308,6 +308,27 @@ tagline="Typeset by GNU LilyPond"
  
 @end example 
 
+@subsubsection Can I make blank manuscript paper with LilyPond?
+
+Theoretically, yes but it is easier to do with TeX:
+
+@example
+\def\foo{\hbox{\vrule width 15.0cm height 0.5pt depth 0.0pt}
+\nointerlineskip
+\vskip 5pt\nointerlineskip}
+\def\musicline{\vbox {
+     \foo\foo\foo\foo\foo
+}\par}
+
+\musicline
+\musicline
+\musicline
+\musicline
+\bye
+
+@end  example
+
+
 @node Development, Running, How do I -, FAQ - GNU LilyPond FAQs
 @section Development
 
index a989d8ad21785e51189761c10b2cdd952d4789a1..d8b387b2af70921102029a3472e89eee436e9c46 100644 (file)
@@ -101,8 +101,8 @@ by Scarlatti}. Jeff Covey, guitar player and overall nice guy, is
 putting @uref{http://www4.smart.net/~jcovey/scores/,guitar music} on the
 net. The @uref{http://sca.uwaterloo.ca/Mutopia/,Mutopia project} is a
 large archive of public domain sheet music under construction. Dirk
-Latterman also put some works <a
-href=http://www.alqualonde.de/lilypond.html>on the web</a>
+Latterman also put some works
+@uref{http://www.alqualonde.de/lilypond.html,on the web}.
 
 @html
 <a name="download">
diff --git a/VERSION b/VERSION
index 991b5d3fa34b785a5b47b70070f865df2094bac9..028fbbdc14bf5b71dbc1c5eda2ba28f505388014 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,8 +1,8 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=3
-PATCH_LEVEL=48
-MY_PATCH_LEVEL=mb1
+PATCH_LEVEL=49
+MY_PATCH_LEVEL=
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
index 833c0eec00263f59c307176068da3c0a3ad76042..65772eaae94d6669c176eb4d5af061a013292243 100644 (file)
@@ -24,6 +24,9 @@
 /* define if you have isinf */
 #define HAVE_ISINF 0
 
+/* define if you have isinf */
+#define HAVE_ISINF 0
+
 /* define if explicit instantiation is needed */
 #undef NEED_EXPLICIT_INSTANTIATION
 
index a2f17f4bb3c0ae5e618438571d3d51bea4f977ab..cf3ea5b4d9864034a3553386e4d3eb38071c16d6 100755 (executable)
--- a/configure
+++ b/configure
@@ -2903,7 +2903,7 @@ fi
 
 fi
 
-for ac_func in memmem snprintf vsnprintf gettext
+for ac_func in memmem snprintf vsnprintf gettext isinf
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
 echo "configure:2910: checking for $ac_func" >&5
index 06485629e78fd8c1408526a5c7e990fa4702d962..5d63e995d5046c7cda09962a045b407599dbfa24 100644 (file)
@@ -32,6 +32,11 @@ int vsnprintf (char *str, size_t, char const *format, va_list args);
 #endif
 
 
+#if !HAVE_ISINF                        // BSD extension 
+int isinf (double x);
+
+#endif
+
 Byte *memrchr (Byte const * p, int n, char c);
 Byte *strrev (Byte* byte_l, int length_i);
 
index a06704b1823d9c7f5dfb3dfc523f747e93b20955..3986cc8ad0128dbec3a168a090589823385be6f5 100644 (file)
@@ -141,3 +141,12 @@ vsnprintf (char *str, size_t, char const *format, va_list args)
 }
 #endif
 
+
+#if !HAVE_ISINF
+int
+isinf (double x)
+{
+  return x && ( x == x/ 2) ;
+}
+
+#endif
diff --git a/input/bugs/cm.ly b/input/bugs/cm.ly
deleted file mode 100644 (file)
index 02e8320..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-flauti = \notes \relative c' {
-  c1 
-  \break c
-}
-
-
-timpani = \notes \relative c' {
-  c1 c
-}
-
-
-
-\score {
-  < 
-    \context StaffGroup ="legni" < 
-      \context Staff ="flauti" \flauti
-    >
-    \context StaffGroup ="timpani" <
-    \notes { 
-       c1
-    }
-    >
-  >
-
-}
-
index 227b8a931a0875820da3b9294a4a901cd0548d77..364547fed3bc8fe098863cedb3e281f5cb4333dd 100644 (file)
@@ -11,8 +11,8 @@
          \clef "tenor";c'1^"{tenor}" \bar "||";
          \clef "baritone";c'1^"{baritone}" \bar "||";
          \clef "varbaritone";c'1^"{varbaritone}" \bar "||";
-         \clef "G_8";c'1^"{sub 8?}" \bar "||";
-         \clef "G^8";c'1^"{sup 8?}" \bar "||";
+         \clef "G_8";c'1^"{sub 8?}" c'1 \bar "||";
+         \clef "G^8";c'1^"{sup 8?}" c'1 \bar "||";
          \clef "bass";c'1^"{bass}" \bar "||";
          \clef "subbass";c'1^"{subbass}" \bar "||";
        \property Staff.clefStyle="transparent"
index 6f2c011692a1d553f1d5f3869bf9cebfb441e8a2..0ced85b84069fbd472c1e933b6e17ae7dede373a 100644 (file)
@@ -9,13 +9,6 @@
 #include <math.h>
 #include "config.h"
 
-/* 
-  IS_INF tests its floating point number for infiniteness 
-  Ripped from guile's number.c.  Solaris has no isinf ().
-  */
-#if ! HAVE_ISINF
-    #define isinf(x) ((x) == (x) / 2)
-#endif
 
 #include "bezier.hh"
 #include "polynomial.hh"
index 8a524f0110d163dd30079599c04e6820aa8e8dc9..cd4e3e0d876187b2122d50fcf837b39207cc60b6 100644 (file)
@@ -231,6 +231,10 @@ Chord::Chord (Chord const& chord)
 }
   
 
+/*
+  JUNKME. 
+  do something smarter.
+ */
 Array<Musical_pitch>
 Chord::base_arr (Musical_pitch p)
 {
index 8df115231cec6fcfe66261b1edde1a880eed94a3..de2cb687c75b2e73412a4b44a137886a7ad55ae5 100644 (file)
@@ -224,6 +224,14 @@ Clef_engraver::do_pre_move_processing()
          if (octavate_p_)
            octavate_p_->set_elt_property("visibility-lambda", all);
        }
+      else
+       {
+         SCM beg = scm_eval (ly_symbol2scm ("begin-of-line-visible"));
+
+         clef_p_->set_elt_property ("visibility-lambda", beg);
+         if (octavate_p_)
+           octavate_p_->set_elt_property ("visibility-lambda", beg);
+       }
       typeset_element (clef_p_);
       clef_p_ =0;
 
index 7ca99417dd0cf0c46f2eb405dad0f227223696a2..019ef105db37ec8af9743e597e07154bab966aca 100644 (file)
@@ -322,6 +322,11 @@ Dynamic_engraver::do_process_music ()
            }
 
          s = get_property (span_req_l_drul_[START]->span_type_str_ + "Spanner");
+
+
+         /*
+           TODO: Use symbols.
+          */
          if (gh_string_p (s)) //&& ly_scm2string (s) != "hairpin")
            {
              cresc_p_->set_elt_property ("spanner", s);
index b87c716dd086aaa5a41ff215da1ebb28e5377943..18596d017d1f91842977635a3902bab13413a6ec 100644 (file)
@@ -27,6 +27,9 @@ Line_of_score::Line_of_score()
   Axis_group_interface (this).set_axes (Y_AXIS,X_AXIS);
 }
 
+/*
+  Ugh.  this is grossly hairy.
+ */
 
 void
 Line_of_score::typeset_element (Score_element * elem_p)
@@ -45,6 +48,29 @@ Line_of_score::output_lines ()
       unsmob_element (gh_car (s))->do_break_processing ();
     }
 
+  /*
+    fixups must be done in broken line_of_scores, because new elements are put over there. 
+   */
+  for (int i=0; i < broken_into_l_arr_.size (); i++)
+    {
+      Score_element *se = broken_into_l_arr_[i];
+
+      for (SCM s = se->get_elt_property ("all-elements");
+          gh_pair_p (s); s = gh_cdr (s))
+       {
+         unsmob_element (gh_car (s))->fixup_refpoint ();
+       }
+    }
+  
+  /*
+    needed for doing items.
+   */
+  for (SCM s = get_elt_property ("all-elements");
+       gh_pair_p (s); s = gh_cdr (s))
+    {
+      unsmob_element (gh_car (s))->fixup_refpoint ();
+    }
+  
   for (SCM s = get_elt_property ("all-elements");
        gh_pair_p (s); s = gh_cdr (s))
     {
@@ -203,7 +229,6 @@ Line_of_score::pre_processing ()
 void
 Line_of_score::post_processing ()
 {
-  fixup_refpoints (get_elt_property ("all-elements"));
   for (SCM s = get_elt_property ("all-elements");
        gh_pair_p (s); s = gh_cdr (s))
     {
index adede15101459055bd2fb31ff965e027a0e1eb97..c8307754ce4d79021aa0f7c3f27e1172f5631219 100644 (file)
@@ -247,7 +247,7 @@ Score_element::calculate_dependencies (int final, int busy,
   
   status_i_= busy;
 
-  for (SCM d=  get_elt_property ("dependencies"); d != SCM_EOL; d = gh_cdr (d))
+  for (SCM d=  get_elt_property ("dependencies"); gh_pair_p (d); d = gh_cdr (d))
     {
       unsmob_element (gh_car (d))
        ->calculate_dependencies (final, busy, funcptr);
@@ -377,17 +377,22 @@ Score_element::handle_broken_smobs (SCM src, SCM criterion)
        }
       else
        {
-         Score_element * ln = unsmob_element ( criterion);
-         Line_of_score * line = dynamic_cast<Line_of_score*> (ln);
-         Score_element * br =0;
-         Line_of_score * dep_line = sc->line_l ();
+
+         Line_of_score * line = dynamic_cast<Line_of_score*> (unsmob_element ( criterion));
+        Line_of_score * dep_line = sc->line_l ();
          if (dep_line != line)
            {
-             br = sc->find_broken_piece (line);
+           Score_element * br = sc->find_broken_piece (line);
              return  (br) ?  br->self_scm_ : SCM_UNDEFINED;
            }
          if (!dep_line)
            return SCM_UNDEFINED;
+
+         if (!sc->common_refpoint (line, X_AXIS)
+             || !sc->common_refpoint (line, Y_AXIS))
+           {
+             return SCM_UNDEFINED;
+           }
        }
     }
   else if (gh_pair_p (src))
@@ -438,10 +443,28 @@ Score_element::handle_broken_dependencies()
        }
     }
 
+
   Line_of_score *line = line_l();
-  element_property_alist_
-    = handle_broken_smobs (element_property_alist_,
-                          line ? line->self_scm_ : SCM_UNDEFINED);
+
+  if (line && common_refpoint (line, X_AXIS) && common_refpoint (line, Y_AXIS))
+    {
+      element_property_alist_
+       = handle_broken_smobs (element_property_alist_,
+                              line ? line->self_scm_ : SCM_UNDEFINED);
+    }
+  else
+    {
+      /*
+       This element is `invalid'; it has been removed from all dependencies, so
+       let's junk the element itself.
+
+      */
+      element_property_alist_ = SCM_EOL;
+      set_extent_callback (0, Y_AXIS);
+      set_extent_callback (0, X_AXIS);
+    }
+
+
 }
 
 
@@ -609,10 +632,6 @@ Score_element::fixup_refpoint ()
        {
          Score_element * newparent = parent->find_broken_piece (line_l ());
          set_parent (newparent, ax);
-         if (!newparent)
-           {
-             programming_error ("Orphaned score-element.");
-           }
        }
 
       if (Item * i  = dynamic_cast<Item*> (this))
index 712ff4dd4dfd3be922ec3b4b0a845a76f5904e66..4379429a68ea939ddcf704961502c8a5cd54d9ed 100644 (file)
@@ -258,13 +258,13 @@ Spacing_spanner::note_spacing (Paper_column *lc, Paper_column *rc, Moment shorte
    This should be more advanced, since relative heights of the note
    heads also influence required correction.
 
-   Also might not work correctly ico. multi voices or staff changing voices
+   Also might not work correctly in case of multi voices or staff
+   changing voices
 
    TODO: lookup correction distances?  More advanced correction?
    Possibly turn this off?
 
-   This routine reads the DIR_LIST property of both its L and R arguments.
-*/
+   This routine reads the DIR-LIST property of both its L and R arguments.  */
 Real
 Spacing_spanner::stem_dir_correction (Paper_column*l, Paper_column*r) const
 {
index f39aa16a3318c2b37449f262077eaa853adcc0b6..04effbdb3d82ad82a629afbd2194aef1d56f9f76 100644 (file)
@@ -47,6 +47,6 @@
 )
 
 
-}
+
 
 \version "1.3.42";
index d51ddb210e1aded0868f05a1f06c693473a6936d..68e35d82bcab51af7ae7f162972d9c4b1206d71f 100644 (file)
@@ -103,7 +103,7 @@ RhythmicStaffContext=\translator{
 
        Generic_property_list = #generic-staff-properties
        
-       barSize = #'staff-height
+       barSize =   4.0 * \interline ; 
        \consists "Pitch_squash_engraver";
        \consists "Separating_line_group_engraver";     
        \name RhythmicStaff;
index e0382e13e8f8a301342a74c74190fe8f2edcc40a..6b0629c7ce0038b844a09c3b5fe4697067698051 100644 (file)
@@ -73,7 +73,7 @@ arithmetic_basicspace = 2.0;
 #'Stem_tremolo::beam-width = 1.5 * \quartwidth ; 
 
 #'Left_edge_item::visibility-lambda = #begin-of-line-visible
-#'Clef_item::visibility-lambda = #begin-of-line-visible
+
 #'Key_item::visibility-lambda = #begin-of-line-visible
 #'Breathing_sign::visibility-lambda = #begin-of-line-invisible
 
index 3337c51cc821c1ed66703adbce4fcc819e51d4dc..90eddae484739cbbd762436e1609a7844632877c 100644 (file)
@@ -17,6 +17,10 @@ StaffContext = \translator {
        dynamicStyle = #"dynamic"
 };
 \translator { \StaffContext }
+\translator { \StaffContext
+  \name RhythmicStaff;
+}
+
 
 VoiceContext = \translator {
        \type "Performer_group_performer";
@@ -57,6 +61,7 @@ GraceContext = \translator {
 GrandStaffContext = \translator {
        \type "Performer_group_performer";
        \name GrandStaff;
+       \accepts RhythmicStaff;
        \accepts Staff;
 };
 \translator { \GrandStaffContext }
@@ -117,6 +122,7 @@ ScoreContext = \translator {
        \accepts Lyrics; 
        \accepts StaffGroup;
        \accepts ChoirStaff;
+       \accepts RhythmicStaff;
        \accepts ChordNames;
        \consists "Swallow_performer";
 };
index 8af8a2e57df47f07a3fba56f31b6eb92ff92028e..331f11c75fa8837190a1a6b476ae6363324fa21c 100644 (file)
@@ -6,23 +6,25 @@ decr = \spanrequest  \start "decrescendo"
 rc = \spanrequest   \stop "crescendo"
 rced = \spanrequest \stop "decrescendo"
 
-%% urg, these don't work yet.
-%% must set manually
-xcresc = {
-%\spanrequest \start "crescendo"
-\property Voice.crescendoText = "cresc."
-\property Voice.crescendoSpanner = "dashed"
+cresc = \notes {
+  \commandspanrequest \start "crescendo" ;
+  \property Voice.crescendoText = "cresc."
+  \property Voice.crescendoSpanner = "dashed-line"
 }
 
-xendcresc = {
-%\spanrequest \start "crescendo"
+endcresc = \notes {
+\commandspanrequest \stop "crescendo"; 
 \property Voice.crescendoText = ##f
 \property Voice.crescendoSpanner = ##f
 }
 
+%{
+
 cresc = \spanrequest \start "crescendo"
 endcresc = \spanrequest \stop "crescendo"
 
+%}
+
 % better name sustainstart/stop? 
 sustaindown = \spanrequest \start "Sustain"
 sustainup = \spanrequest \stop "Sustain"
index 4fbde8dde52af3b46c1b3a5596a8f38faecd96f2..eb1af95717eef09d4f1ab9b9e027edcaee32dc28 100644 (file)
@@ -1,15 +1,15 @@
 Begin3
 Title: LilyPond
-Version: 1.3.48
-Entered-date: 08MAY00
+Version: 1.3.49
+Entered-date: 11MAY00
 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.48.tar.gz 
+       1000k lilypond-1.3.49.tar.gz 
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
-       1000k lilypond-1.3.48.tar.gz 
+       1000k lilypond-1.3.49.tar.gz 
 Copying-policy: GPL
 End
index 0d1645f4f459272e7bb916c7d257fb87e71e4d42..ec14eb22b0a7e465be55b40f0d68dcc1b89d739f 100644 (file)
@@ -1,9 +1,9 @@
 Name: lilypond
-Version: 1.3.48
+Version: 1.3.49
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.48.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.49.tar.gz
 Summary: A program for printing sheet music.
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 # Icon: lilypond-icon.gif
diff --git a/scm/generic-property.scm.orig b/scm/generic-property.scm.orig
deleted file mode 100644 (file)
index 1506982..0000000
+++ /dev/null
@@ -1,255 +0,0 @@
-
-;
-; Format: 
-; (cons "Type name"
-;    (list PROPERTYDESCRIPTIONS))
-; 
-; where
-; PROPERTYDESCRIPTION
-; is
-;
-;  (list 'translatorPropertySymbol type-predicate backend-property-symbol)
-;
-; Descriptions earlier in the list take precedence over later descriptions.
-;
-
-
-(define generic-beam-properties
-  (cons "Beam"
-       (list
-        (list 'beamSlopeDamping number? 'damping)
-        (list 'autoKneeGap number? 'auto-knee-gap)
-        (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
-        (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
-        (list 'beamHeight number? 'height-hs)
-        (list 'beamVerticalPosition number? 'y-position-hs)
-        )
-       )
-  )
-
-
-(define generic-stem-properties
-  (cons "Stem"
-       (list
-        (list 'stemVerticalDirection dir? 'direction)
-        (list 'verticalDirection dir? 'direction)       
-        (list 'stemLength number? 'length)
-        (list 'flagStyle string? 'flag-style)
-        (list 'stemCentered boolean? 'stem-centered)
-        (list 'noStemExtend boolean? 'no-stem-extend)
-        (list 'stemShorten number? 'shorten)
-        ))
-  )
-
-(define generic-dot-properties
-  (cons "Dots" (list
-               (list 'dotDirection dir? 'direction)
-               (list 'verticalDirection dir? 'direction)
-               )
-       ))
-
-(define generic-script-properties
-  (cons "Script" (list
-                 (list 'articulationScriptVerticalDirection dir? 'direction)
-                 (list 'articulationScriptPadding number? 'padding)
-
-                 ))
-  )
-
-
-
-(define generic-text-properties
-  (cons "Text_item" (list
-                    (list 'textStyle string? 'style)
-                    (list 'textScriptPadding number? 'padding)
-                    (list 'textVerticalAlignment dir? 'self-alignment-Y)
-                    (list 'textHorizontalAlignment dir? 'self-alignment-X)
-                    (list 'textScriptWordSpace number? 'word-space)
-                    )
-       ))
-
-(define generic-sustain-pedal-properties
-  (cons "Sustain_pedal" (list
-                        (list 'textScriptPadding number? 'padding)
-                        (list 'sustainPedalPadding number? 'padding))))
-
-(define generic-chord-name-properties
-  (cons "Chord_name" (list
-                     (list 'textScriptWordSpace number? 'word-space)
-                     (list 'chordNameWordSpace number? 'word-space)
-                     (list 'chordNameStyle string? 'style))))
-
-(define generic-crescendo-properties
-  (cons "Crescendo" (list
-                    (list 'dynamicDirection dir? 'direction)
-                    (list 'verticalDirection dir? 'direction)
-                    (list 'dynamicPadding number? 'padding) 
-                    (list 'dynamicMinimumSpace number? 'minimum-space) 
-                    )))
-  
-(define generic-dynamic-line-spanner-properties
-  (cons "Dynamic_line_spanner" (list
-                    (list 'dynamicDirection dir? 'direction)
-                    (list 'verticalDirection dir? 'direction)
-                    (list 'dynamicPadding number? 'padding) 
-                    (list 'dynamicMinimumSpace number? 'minimum-space) 
-                    )))
-  
-(define generic-volta-spanner-properties
-  (cons "Volta_spanner" (list
-                    (list 'voltaVerticalDirection dir? 'direction)
-                    (list 'voltaPadding number? 'padding) 
-                    (list 'voltaMinimumSpace number? 'minimum-space) 
-                    )))
-  
-(define generic-bar-properties
-  (cons "Staff_bar" (list
-                    (list 'barSize number? 'bar-size))
-       )
-  )    
-
-; don't do this yet. Depends on whennn the staff is really announced
-(define generic-staff-symbol-properties
-  (cons "Staff_symbol" (list
-                       )
-       )
-  )
-
-(define generic-breathing-sign-properties
-  (cons "Breathing_sign"
-       (list
-        (list 'breathingSignVerticalDirection dir? 'direction)
-        (list 'verticalDirection dir? 'direction)
-        )))
-
-(define generic-clef-properties
-  (cons "Clef_item"
-       (list
-        (list 'clefStyle string? 'style))
-       )
-  )
-
-(define generic-All-properties
-  (cons "all"  (list (list 'fontSize number? 'fontsize))))
-
-(define generic-rest-properties
-  (cons "Rest" (list (list 'restStyle string? 'reststyle))))
-
-(define generic-rest-collision-properties
-  (cons "Rest_collision" (list (list 'maximumRestCount number? 'maximum-rest-count))))
-
-(define generic-tie-properties
-  (cons "Tie" (list
-              (list 'tieVerticalDirection dir? 'direction)
-              (list 'verticalDirection dir? 'direction)
-(list 'tieDash number? 'dashed)
-  )))
-
-(define generic-tie-column-properties
-  (cons "Tie_column" (list
-                     (list 'tieVerticalDirection dir? 'direction)
-                     (list 'verticalDirection dir? 'direction)
-  )))
-
-(define generic-note-column-properties
-  (cons "Note_column"
-       (list
-        (list 'horizontalNoteShift number? 'horizontal-shift)
-        (list 'forceHorizontalShift number? 'force-hshift)
-        )))
-
-(define generic-collision-properties
-  (cons "Collision"
-       (list
-        (list 'collisionMergeDotted boolean? 'merge-differently-dotted)
-        )
-       )
-  )
-  
-(define generic-slur-properties
-  (cons "Slur"
-       (list
-        (list 'slurVerticalDirection dir? 'direction)
-        (list 'verticalDirection dir? 'direction)       
-        (list 'slurDash number? 'dashed))))
-
-(define generic-timesig-properties
-  (cons "Time_signature"
-       (list
-        (list 'timeSignatureStyle string? 'style))))
-
-(define (symbol-or-boolean? s)
-  (or (boolean? s) (symbol? s)))
-
-(define generic-tuplet-spanner-properties
-  (cons "Tuplet_spanner"
-       (list
-        (list 'tupletNumberVisibility symbol-or-boolean? 'tuplet-number-visibility)
-        (list 'tupletBracketVisibility symbol-or-boolean? 'tuplet-bracket-visibility)
-       ))
-)
-
-
-
-
-
-;;;;;;;;;;
-;; don't forget to add these to the Generic_property_list property in
-;; engraver.ly
-
-(define generic-voice-properties
-  (list
-   generic-stem-properties
-   generic-breathing-sign-properties
-   generic-crescendo-properties
-   generic-dynamic-line-spanner-properties
-   generic-tie-properties
-   generic-tie-column-properties   
-   generic-tuplet-spanner-properties
-   generic-rest-properties
-   generic-slur-properties
-   generic-beam-properties
-   generic-text-properties
-   generic-sustain-pedal-properties
-   generic-note-column-properties
-   generic-script-properties
-   generic-All-properties
-   ))
-
-(define generic-grace-properties generic-voice-properties)
-(define generic-staff-properties
-  (list
-   generic-text-properties   
-   generic-bar-properties
-   generic-timesig-properties
-   generic-clef-properties
-   generic-collision-properties
-   generic-sustain-pedal-properties
-   generic-rest-collision-properties
-   generic-volta-spanner-properties
-;   generic-staff-symbol-properties
-   generic-All-properties      
-   )
-  )
-(define generic-grand-staff-properties
-  (list
-   generic-text-properties   
-   generic-bar-properties
-   ))
-
-(define generic-thread-properties
-  (list generic-All-properties
-       generic-dot-properties
-       )
-
-  )
-   
-(define generic-lyrics-properties
-  (list generic-text-properties
-  )
-)
-
-(define generic-chord-staff-properties
-  (list generic-chord-name-properties
-  )
-)
index e7da9d43a9e12134c1cdeedbc5eb4fe49a637e26..d2e5b83c01b3613a4d0fdc89a6cde5d3b3d2f7c8 100644 (file)
    ((Instrument_name Left_edge_item) . (extra-space 1.0))
    ((Left_edge_item Clef_item) . (extra-space 1.0))
    ((none Left_edge_item) . (extra-space 0.0))
-   ((Left_edge_item Staff_bar) . (extra-space 0.0))        
+   ((Left_edge_item Staff_bar) . (extra-space 0.0))
 ;   ((none Left_edge_item) . (extra-space -15.0))
 ;   ((none Left_edge_item) . (extra-space -15.0))
    ((none Clef_item) . (minimum-space 1.0))