]> 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
 ============
 
-* 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).
 
-* 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).
 
@@ -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.
 
+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
 ============
 
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
-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
-     (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!
index f606b266829ce904aaed1a575157cf31d1136114..955435ac637eb84a617c048f6c78c6f4320e792d 100644 (file)
@@ -121,6 +121,7 @@ can enter and edit them in manageable chunks.
 * Defining pitch names::        
 * Durations::                   
 * Notes::                       
+* Note head tweaks::            
 * Rests::                       
 * Skip::                        
 @end menu
@@ -338,6 +339,43 @@ question mark `@code{?}' after the pitch.
 @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
@@ -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.
 
-Currently, brackets are not supported, only text markings (ie. Ped*
+Currently, brackets are not supported, only text markings (ie. *Ped
 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  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
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'
-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.
 
-   Add this to your .emacs.el:
+   Add this to your ~/.emacs or ~/.emacs.el:
          (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!
 ------------------------------------------------------------------
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
-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.
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),
index 0ce6460c08cd3c0760110578ff1a446b68d3fe7e..379d5666637ffc4e7953c0d4f800a3466e9dae33 100644 (file)
@@ -1,3 +1,3 @@
 (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)))
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 | 
-  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
     (
-     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;
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);
 
+  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   
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*) ;
+  DECLARE_SCHEME_CALLBACK(brew_ez_molecule, (SCM ));
   static bool has_interface (Grob*);
+  
 };
 #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"));
 }
+
+
+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>
 */
+#include <ctype.h>
 
 #include "rhythmic-head.hh"
 #include "paper-def.hh"
@@ -93,8 +94,18 @@ Note_heads_engraver::create_grobs ()
          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);
     }
index cad76eb68d3e730c94f46ae87e5eece4c380edc2..32dc7fc492ecd0715393856670d21c9730714b72 100644 (file)
@@ -659,7 +659,7 @@ Alternative_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 ())
index 8c0c48fcf85db4c5a4dc69ec4bfb4aa8167c49c4..c71b63ba58e9fec989323fd8a54ca3e547b5f388 100644 (file)
@@ -439,4 +439,9 @@ ScoreContext = \translator {
 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
-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
-       1000k lilypond-1.3.132.tar.gz 
+       1000k lilypond-1.3.133.tar.gz 
 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
index db222e14efb48b0d1825dd0a44bf96119ef10f3f..9af8e61b1b2a6943b9b9c60f553e25dae9164100 100644 (file)
@@ -1,11 +1,11 @@
 %define info yes
 
 Name: lilypond
-Version: 1.3.132
+Version: 1.3.133
 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
index b80308eb625f31e9be904b70bc19a2511a5a03e2..d4442ecb39176ef2320d77399a105af4c018b4d8 100644 (file)
@@ -191,6 +191,26 @@ lilypondpaperoutputscale lilypondpaperoutputscale scale
   (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) "")
@@ -228,6 +248,7 @@ lilypondpaperoutputscale lilypondpaperoutputscale scale
            (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)
@@ -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 'ez-ball) ez-ball)    
        ((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>
 
 
+
+;;
+;; todo: this dispatch is totally LAME
 (define (tex-scm action-name)
   (define (unknown) 
     "%\n\\unknown%\n")
@@ -63,6 +67,8 @@
      (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 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)