]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 1.3.133 release/1.3.133
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 27 Feb 2001 19:49:07 +0000 (20:49 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 27 Feb 2001 19:49:07 +0000 (20:49 +0100)
============

* Tied notes at a linebreak repeat their accidental.

* Removed some cruft from lily/include/.

* Bugfix: tied notes in chords sometimes got stuck in MIDI output
(thanks Mats).

* Added some example bug files, taken from Coriolan

* a2-engraver: \property noDirection: don't force direction when part-combining (for StaffCombining).

* text-spanner: don't repeat edge text for broken edge.

* Coriolan fixes, titling, font setting, header info, cello octave
(yes, notated different from bass; all agree) at end.

1.3.132.h

27 files changed:
CHANGES
Documentation/topdocs/FAQ.texi
Documentation/user/refman.itely
FAQ.txt
VERSION
debian/changelog
debian/emacsen-startup
input/regression/easy-notation.ly [new file with mode: 0644]
input/trip.ly
lily/break-align-item.cc
lily/include/bar-req-collector-engraver.hh [deleted file]
lily/include/hara-kiri-engraver.hh [deleted file]
lily/include/hara-kiri-line-group-engraver.hh [deleted file]
lily/include/note-head.hh
lily/include/separating-line-group-engraver.hh [deleted file]
lily/include/span-score-bar-engraver.hh [deleted file]
lily/include/swallow-engraver.hh [deleted file]
lily/include/tie-engraver.hh [deleted file]
lily/include/tuplet-engraver.hh [deleted file]
lily/note-head.cc
lily/note-heads-engraver.cc
lily/parser.yy
ly/engraver.ly
make/out/lilypond.lsm
make/out/lilypond.spec
scm/ps.scm
scm/tex.scm

diff --git a/CHANGES b/CHANGES
index 8a8a97caae517f9e06d5639bd77ab9ba18fb2e1b..0e693bb843b3582db6f077cf2e965110b4dc7b6b 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,25 +1,14 @@
 1.3.132.jcn3
 ============
 
 1.3.132.jcn3
 ============
 
-* Another attempt af fixing accidentals, still no luck.
-
-1.3.132.jcn2
-============
-
-* Attempt at fixing input/bugs/tie-break-accidental.ly, but no luck.
-See comments in Local_key_engraver.
+* Tied notes at a linebreak repeat their accidental.
 
 * Removed some cruft from lily/include/.
 
 * Bugfix: tied notes in chords sometimes got stuck in MIDI output
 (thanks Mats).
 
 
 * Removed some cruft from lily/include/.
 
 * Bugfix: tied notes in chords sometimes got stuck in MIDI output
 (thanks Mats).
 
-* Added some example bug files, taken from Coriolan; esp. see
-input/bugs/tie-break-accidental.ly, I've seen so much discussion on
-this, would have thought we had this right by now.
-
-1.3.132.jcn1
-============
+* Added some example bug files, taken from Coriolan
 
 * a2-engraver: \property noDirection: don't force direction when part-combining (for StaffCombining).
 
 
 * a2-engraver: \property noDirection: don't force direction when part-combining (for StaffCombining).
 
@@ -28,6 +17,17 @@ this, would have thought we had this right by now.
 * Coriolan fixes, titling, font setting, header info, cello octave
 (yes, notated different from bass; all agree) at end.
 
 * Coriolan fixes, titling, font setting, header info, cello octave
 (yes, notated different from bass; all agree) at end.
 
+1.3.132.hwn1
+============
+
+* Allow declared repeat variant string
+
+* Bugfix: break alignment at right edge.
+
+* Easy-notation: letters in circular note heads.  
+
+* Debian patch by Anthony Fok.
+
 1.3.131.jcn2
 ============
 
 1.3.131.jcn2
 ============
 
index 080ee097ede9302f8f573133cee2e246bc9878bc..1f7d909a996f63d300a187d4b702f12b6dd13662 100644 (file)
@@ -62,15 +62,19 @@ yourself:
 
 Yes.  It is included with the source archive as
 @file{lilypond-mode.el} and @file{lilypond-font-lock.el}.  If you have
 
 Yes.  It is included with the source archive as
 @file{lilypond-mode.el} and @file{lilypond-font-lock.el}.  If you have
-an RPM or .deb it is in @file{/usr/share/doc/lilypond-X/}.  You have
-to install it yourself.
+an RPM, it is in @file{/usr/share/doc/lilypond-X/}.  You have to install
+it yourself.
 
 
-Add this to your .emacs.el:
+Add this to your ~/.emacs or ~/.emacs.el:
 @example 
     (load-library "lilypond-mode.el")
     (setq auto-mode-alist
 @example 
     (load-library "lilypond-mode.el")
     (setq auto-mode-alist
-     (append '(("\\.ly$" . LilyPond-mode) auto-mode-alist)))
-@end example 
+      (cons '("\\.ly$" . LilyPond-mode) auto-mode-alist))
+    (add-hook 'LilyPond-mode-hook (lambda () (turn-on-font-lock)))
+@end example
+
+If you have the latest LilyPond-1.3.x Debian package, LilyPond-mode
+is automatically loaded, so you need not modify your ~/.emacs file.
 
 
 @subsection I downloaded the windows32 port, and it doesn't match the website!
 
 
 @subsection I downloaded the windows32 port, and it doesn't match the website!
index f606b266829ce904aaed1a575157cf31d1136114..955435ac637eb84a617c048f6c78c6f4320e792d 100644 (file)
@@ -121,6 +121,7 @@ can enter and edit them in manageable chunks.
 * Defining pitch names::        
 * Durations::                   
 * Notes::                       
 * Defining pitch names::        
 * Durations::                   
 * Notes::                       
+* Note head tweaks::            
 * Rests::                       
 * Skip::                        
 @end menu
 * Rests::                       
 * Skip::                        
 @end menu
@@ -338,6 +339,43 @@ question mark `@code{?}' after the pitch.
 @end lilypond
 
 
 @end lilypond
 
 
+@node Note head tweaks
+@subsection Note head tweaks
+
+[TODO]
+
+The note head style can be adjusted with  the @code{style} property of
+@code{NoteHead}.
+
+@lilypond[fragment,singleline,relative,verbatim]
+c'4
+\property Voice.NoteHead \set #'style = #'cross
+c'4
+@end lilypond
+
+[discuss more options]
+
+@cindex easy notation
+@cindex Hal Leonard
+
+A entirely different type of note head is the "easyplay" note head: a
+note head that includes a note name.  It is used in some publications by
+the Hal-Leonard Corporation (a music publishing company).
+
+@lilypond[singleline,verbatim]
+\score {
+        \notes { c'2 e'4 f' | g'1 }
+        \paper { \translator { \EasyNotation } } 
+}
+@end lilypond
+
+Note that @code{EasyNotation} overrides a @code{Score} context.  You
+probably will want to print it with magnification to make it better
+readable.
+
+Limitations: The staff-lines show through the letters.
+
+
 @c .  {Rests}
 @node  Rests
 @subsection Rests
 @c .  {Rests}
 @node  Rests
 @subsection Rests
@@ -1593,7 +1631,7 @@ The symbols that are printed can be modified by setting pedalXStrings,
 where one of the pedal types. Refer to the generaetd documentation for
 more information.
 
 where one of the pedal types. Refer to the generaetd documentation for
 more information.
 
-Currently, brackets are not supported, only text markings (ie. Ped*
+Currently, brackets are not supported, only text markings (ie. *Ped
 style).
 
 
 style).
 
 
@@ -2753,7 +2791,7 @@ where each of the items is one of
   @item  An assignment.  The assignment must be terminated by a
        semicolon.  
 
   @item  An assignment.  The assignment must be terminated by a
        semicolon.  
 
-  @item  A context definition.  See Section @ref{Notation contexts} for
+  @item  A context definition.  See Section @ref{Notation Contexts} for
        more information on context definitions.
 
   @item  \stylesheet  declaration.  Its syntax is
        more information on context definitions.
 
   @item  \stylesheet  declaration.  Its syntax is
diff --git a/FAQ.txt b/FAQ.txt
index eee25e0582897c0bd5dcbc9bc8c7b991ca7981e2..74053fd0d6b543de250b2550c85bd3796ed4ac93 100644 (file)
--- a/FAQ.txt
+++ b/FAQ.txt
@@ -48,13 +48,17 @@ Is there an emacs mode?
 -----------------------
 
    Yes.  It is included with the source archive as `lilypond-mode.el'
 -----------------------
 
    Yes.  It is included with the source archive as `lilypond-mode.el'
-and `lilypond-font-lock.el'.  If you have an RPM or .deb it is in
+and `lilypond-font-lock.el'.  If you have an RPM, it is in
 `/usr/share/doc/lilypond-X/'.  You have to install it yourself.
 
 `/usr/share/doc/lilypond-X/'.  You have to install it yourself.
 
-   Add this to your .emacs.el:
+   Add this to your ~/.emacs or ~/.emacs.el:
          (load-library "lilypond-mode.el")
          (setq auto-mode-alist
          (load-library "lilypond-mode.el")
          (setq auto-mode-alist
-          (append '(("\\.ly$" . LilyPond-mode) auto-mode-alist)))
+           (cons '("\\.ly$" . LilyPond-mode) auto-mode-alist))
+         (add-hook 'LilyPond-mode-hook (lambda () (turn-on-font-lock)))
+
+   If you have the latest LilyPond-1.3.x Debian package, LilyPond-mode
+is automatically loaded, so you need not modify your ~/.emacs file.
 
 I downloaded the windows32 port, and it doesn't match the website!
 ------------------------------------------------------------------
 
 I downloaded the windows32 port, and it doesn't match the website!
 ------------------------------------------------------------------
diff --git a/VERSION b/VERSION
index 298e8f0c5a9f51adb423da6f9486a577aec7027f..39268623d48817d504f624b31746ecff59a7d2e8 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=132
-MY_PATCH_LEVEL=jcn4
+PATCH_LEVEL=133
+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.
index 215774e68d3c143773cbbdf4c1d66f266850323b..ff69e33e536e92746c009c5b503309decfb98860 100644 (file)
@@ -1,3 +1,13 @@
+lilypond1.3 (1.3.132-1) unstable; urgency=medium
+
+  * New upstream version.
+  * Oops, in 1.3.129-1, the "(setq auto-mode-alist (append ..." line in
+    /etc/emacs/site-start.d/50lilypond1.3.el (debian/emacsen-startup)
+    and in FAQ.txt was buggy.  Thanks to Erik Demaine for the bug report.
+    Closes: Bug#86685.
+
+ -- Anthony Fok <foka@debian.org>  Sun, 25 Feb 2001 20:27:09 -0700
+
 lilypond1.3 (1.3.129-1) unstable; urgency=low
 
   * In memory of Werner Icking + (August 26, 1943 - February 8, 2001),
 lilypond1.3 (1.3.129-1) unstable; urgency=low
 
   * In memory of Werner Icking + (August 26, 1943 - February 8, 2001),
index 0ce6460c08cd3c0760110578ff1a446b68d3fe7e..379d5666637ffc4e7953c0d4f800a3466e9dae33 100644 (file)
@@ -1,3 +1,3 @@
 (autoload 'LilyPond-mode "lilypond-mode" nil t)
 (autoload 'LilyPond-mode "lilypond-mode" nil t)
-(setq auto-mode-alist (append '(("\\.ly$" . LilyPond-mode) auto-mode-alist)))
+(setq auto-mode-alist (cons '("\\.ly$" . LilyPond-mode) auto-mode-alist))
 (add-hook 'LilyPond-mode-hook (lambda () (turn-on-font-lock)))
 (add-hook 'LilyPond-mode-hook (lambda () (turn-on-font-lock)))
diff --git a/input/regression/easy-notation.ly b/input/regression/easy-notation.ly
new file mode 100644 (file)
index 0000000..fc5a8f6
--- /dev/null
@@ -0,0 +1,8 @@
+\header {
+texidoc  = " Ez-notation prints names in note heads."
+}
+
+\score {
+        \notes { c'2 e'4 f' | g'1 }
+        \paper { \translator { \EasyNotation } } 
+}
index f69c193fea19ee550c5f7219c1fc5f918cfe1907..53b5cb9cded928c3cb5c7224c7c3f1b3a2fac9b3 100644 (file)
@@ -196,11 +196,16 @@ fugaIIPedal =  \notes \relative c {
 
   %13
   r4 fis,4-\ltoe e4.-\lheel e'8-\rheel | 
 
   %13
   r4 fis,4-\ltoe e4.-\lheel e'8-\rheel | 
-  fis4.-\rtoe fis8-\rtoe fis4-\rtoe [e8-\ltoe a-\rtoe] | 
+% tie accs: 2nd should get no acc
+f4-\rtoe~ f8
+fis8-\rtoe fis4-\rtoe [e8-\ltoe a-\rtoe] | 
   dis,4-\ltoe gis-\rtoe [cis,8-\ltoe
     (
   dis,4-\ltoe gis-\rtoe [cis,8-\ltoe
     (
-     b!-\lheel ais-\rtoe gis-\ltoe ~ ] |
-      gis8  r4.
+     b!-\lheel ais-\rtoe g-\ltoe ~ ] |
+
+% tie should generate acc.
+\break
+      g  r4.
     )
       c2^^^-^\f 
  \time 3/4;
     )
       c2^^^-^\f 
  \time 3/4;
index 4318f0b78d534e5e058987f08e5cf276494c7043..74dab15ca4e0de6977ba657690a6084de823ce66 100644 (file)
@@ -170,6 +170,11 @@ Break_align_interface::do_alignment (Grob *me)
   scm_set_car_x (first_pair, gh_double2scm (-dists[0]));
   elems[0]->set_grob_property ("minimum-space", first_pair);
 
   scm_set_car_x (first_pair, gh_double2scm (-dists[0]));
   elems[0]->set_grob_property ("minimum-space", first_pair);
 
+  Direction bsd = item->break_status_dir();
+  if (bsd == LEFT)
+    {
+      me->set_grob_property ("self-alignment-X", gh_int2scm (RIGHT));
+    }
 
   /*
     Force callbacks for alignment to be called   
 
   /*
     Force callbacks for alignment to be called   
diff --git a/lily/include/bar-req-collector-engraver.hh b/lily/include/bar-req-collector-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lily/include/hara-kiri-engraver.hh b/lily/include/hara-kiri-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lily/include/hara-kiri-line-group-engraver.hh b/lily/include/hara-kiri-line-group-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
index 9c77a239557e1343dba843e1b7bd34edb2c1fffc..04283267e71cd347ab93d3a2017d6f96f57d0640 100644 (file)
@@ -22,7 +22,9 @@ class Note_head
 public:
   DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static Molecule ledger_line (Interval, Grob*) ;
 public:
   DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static Molecule ledger_line (Interval, Grob*) ;
+  DECLARE_SCHEME_CALLBACK(brew_ez_molecule, (SCM ));
   static bool has_interface (Grob*);
   static bool has_interface (Grob*);
+  
 };
 #endif // NOTEHEAD_HH
 
 };
 #endif // NOTEHEAD_HH
 
diff --git a/lily/include/separating-line-group-engraver.hh b/lily/include/separating-line-group-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lily/include/span-score-bar-engraver.hh b/lily/include/span-score-bar-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lily/include/swallow-engraver.hh b/lily/include/swallow-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lily/include/tie-engraver.hh b/lily/include/tie-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/lily/include/tuplet-engraver.hh b/lily/include/tuplet-engraver.hh
deleted file mode 100644 (file)
index e69de29..0000000
index c536b0f8cec9d6689a6d01f8a04cc8e5156b910c..0ccd6dd9811750dbca42c0d467e4f506a5384bff 100644 (file)
@@ -110,3 +110,24 @@ Note_head::has_interface (Grob*m)
 {
   return m&& m->has_interface (ly_symbol2scm ("note-head-interface"));
 }
 {
   return m&& m->has_interface (ly_symbol2scm ("note-head-interface"));
 }
+
+
+MAKE_SCHEME_CALLBACK(Note_head,brew_ez_molecule,1);
+
+SCM
+Note_head::brew_ez_molecule (SCM smob)
+{
+  Grob *me = unsmob_grob (smob);
+  int l = gh_scm2int (me->get_grob_property ("duration-log"));
+
+  int b = (l >= 2);
+  SCM at = gh_list (ly_symbol2scm ("ez-ball"),
+                   me->get_grob_property ("note-character"),
+                   gh_int2scm (b),
+                   gh_int2scm (1-b),
+                   SCM_UNDEFINED);
+  Box bx (Interval (0, 1.0), Interval (-0.5, 0.5));
+  Molecule m (bx, at);
+
+  return m.smobbed_copy ();
+}
index 5fc28bbddb684c16dff65fa138ac490851f35201..954798be267a476d5b51d32568bbdb9949617b0d 100644 (file)
@@ -3,6 +3,7 @@
 
   (c)  1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
   (c)  1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
+#include <ctype.h>
 
 #include "rhythmic-head.hh"
 #include "paper-def.hh"
 
 #include "rhythmic-head.hh"
 #include "paper-def.hh"
@@ -93,8 +94,18 @@ Note_heads_engraver::create_grobs ()
          dot_p_arr_.push (d);
        }
 
          dot_p_arr_.push (d);
        }
 
-      note_p->set_grob_property("staff-position",  gh_int2scm (unsmob_pitch (req->get_mus_property ("pitch"))->steps ()));
+      Pitch *pit =unsmob_pitch (req->get_mus_property ("pitch"));
+      note_p->set_grob_property("staff-position",  gh_int2scm (pit->steps ()));
 
 
+      if (to_boolean (get_property ("easyPlay")))
+       {
+         char s[2] = "a";
+         s[0] = (pit->notename_i_ + 2)%7 + 'a';
+
+         s[0] = toupper (s[0]);
+         note_p->set_grob_property ("note-character", ly_str02scm (s));
+       }
+      
       announce_grob (note_p,req);
       note_p_arr_.push (note_p);
     }
       announce_grob (note_p,req);
       note_p_arr_.push (note_p);
     }
index cad76eb68d3e730c94f46ae87e5eece4c380edc2..32dc7fc492ecd0715393856670d21c9730714b72 100644 (file)
@@ -659,7 +659,7 @@ Alternative_music:
 
 
 Repeated_music:
 
 
 Repeated_music:
-       REPEAT STRING bare_unsigned Music Alternative_music
+       REPEAT string bare_unsigned Music Alternative_music
        {
                Music_sequence* alts = dynamic_cast <Music_sequence*> ($5);
                if (alts && $3 < alts->length_i ())
        {
                Music_sequence* alts = dynamic_cast <Music_sequence*> ($5);
                if (alts && $3 < alts->length_i ())
index 8c0c48fcf85db4c5a4dc69ec4bfb4aa8167c49c4..c71b63ba58e9fec989323fd8a54ca3e547b5f388 100644 (file)
@@ -439,4 +439,9 @@ ScoreContext = \translator {
 OrchestralScoreContext= \translator {
        \ScoreContext
 }
 OrchestralScoreContext= \translator {
        \ScoreContext
 }
+EasyNotation =  \translator {
+       \ScoreContext
+       NoteHead \override #'molecule-callback = #Note_head::brew_ez_molecule
+       easyPlay = ##t
+}
 
 
index cebdb1a2820b68fb02311efeab04f9979993cbd4..f2ab5bc8003def6163a9a4e6b299229c7e3ee0da 100644 (file)
@@ -1,15 +1,15 @@
 Begin3
 Title: LilyPond
 Begin3
 Title: LilyPond
-Version: 1.3.132
-Entered-date: 26FEB01
+Version: 1.3.133
+Entered-date: 27FEB01
 Description: @BLURB@
 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: @BLURB@
 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.132.tar.gz 
+       1000k lilypond-1.3.133.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.132.tar.gz 
+       1000k lilypond-1.3.133.tar.gz 
 Copying-policy: GPL
 End
 Copying-policy: GPL
 End
index db222e14efb48b0d1825dd0a44bf96119ef10f3f..9af8e61b1b2a6943b9b9c60f553e25dae9164100 100644 (file)
@@ -1,11 +1,11 @@
 %define info yes
 
 Name: lilypond
 %define info yes
 
 Name: lilypond
-Version: 1.3.132
+Version: 1.3.133
 Release: 1
 License: GPL
 Group: Applications/Publishing
 Release: 1
 License: GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.132.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.133.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 b80308eb625f31e9be904b70bc19a2511a5a03e2..d4442ecb39176ef2320d77399a105af4c018b4d8 100644 (file)
@@ -191,6 +191,26 @@ lilypondpaperoutputscale lilypondpaperoutputscale scale
   (define (unknown) 
     "\n unknown\n")
 
   (define (unknown) 
     "\n unknown\n")
 
+;; note heads with letters.
+  (define (ez-ball ch letter-col ball-col)
+    (string-append "
+/Helvetica-Bold findfont
+0.7 scalefont 
+setfont 
+0.1 setlinewidth  
+ 0 0 moveto
+0 setgray
+0.5 0 0.5 0 360  arc
+closepath "
+                  (if (equal? ball-col 0) " fill " " stroke ")
+                  (number->string letter-col)
+                  "
+setgray
+% 0.25 is empiric centering. Change to taste
+0.25 -0.25 moveto
+ (" ch ") show
+showpage ")
+    )
 
   (define (define-origin a b c ) "")
   (define (no-origin) "")
 
   (define (define-origin a b c ) "")
   (define (no-origin) "")
@@ -228,6 +248,7 @@ lilypondpaperoutputscale lilypondpaperoutputscale scale
            (define text ,text)
            (define no-origin ,no-origin)
            (define define-origin ,define-origin)
            (define text ,text)
            (define no-origin ,no-origin)
            (define define-origin ,define-origin)
+           (define ez-ball ,ez-ball)
            ))
        ((eq? action-name 'tuplet) tuplet)
        ((eq? action-name 'beam) beam)
            ))
        ((eq? action-name 'tuplet) tuplet)
        ((eq? action-name 'beam) beam)
@@ -240,6 +261,7 @@ lilypondpaperoutputscale lilypondpaperoutputscale scale
        ((eq? action-name 'decrescendo) decrescendo)
        ((eq? action-name 'experimental-on) experimental-on)
        ((eq? action-name 'filledbox) filledbox)
        ((eq? action-name 'decrescendo) decrescendo)
        ((eq? action-name 'experimental-on) experimental-on)
        ((eq? action-name 'filledbox) filledbox)
+       ((eq? action-name 'ez-ball) ez-ball)    
        ((eq? action-name 'select-font) select-font)
        ((eq? action-name 'volta) volta)
        (else (error "unknown tag -- PS-SCM " action-name))
        ((eq? action-name 'select-font) select-font)
        ((eq? action-name 'volta) volta)
        (else (error "unknown tag -- PS-SCM " action-name))
index 7da4ad9a04929bc86b2524bac916563b0011d941..499b2efdd3545d1486ffe259189896a51669e686 100644 (file)
@@ -6,6 +6,10 @@
 ;;; Han-Wen Nienhuys <hanwen@cs.uu.nl>
 
 
 ;;; Han-Wen Nienhuys <hanwen@cs.uu.nl>
 
 
+
+;;
+;; todo: this dispatch is totally LAME
 (define (tex-scm action-name)
   (define (unknown) 
     "%\n\\unknown%\n")
 (define (tex-scm action-name)
   (define (unknown) 
     "%\n\\unknown%\n")
@@ -63,6 +67,8 @@
      (number->string (inexact->exact (* 1000  (cdr name-mag))))
      "\n"))
 
      (number->string (inexact->exact (* 1000  (cdr name-mag))))
      "\n"))
 
+  (define (ez-ball c l b)
+    (embedded-ps ((ps-scm 'ez-ball) c  l b)))
   (define (embedded-ps s)
     (string-append "\\embeddedps{" s "}"))
 
   (define (embedded-ps s)
     (string-append "\\embeddedps{" s "}"))
 
            (define font-switch ,font-switch)
            (define header-end ,header-end)
            (define lily-def ,lily-def)
            (define font-switch ,font-switch)
            (define header-end ,header-end)
            (define lily-def ,lily-def)
+           (define ez-ball ,ez-ball)
            (define header ,header) 
            (define invoke-char ,invoke-char) 
            (define invoke-dim1 ,invoke-dim1)
            (define header ,header) 
            (define invoke-char ,invoke-char) 
            (define invoke-dim1 ,invoke-dim1)