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).
* 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
============
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!
* Defining pitch names::
* Durations::
* Notes::
+* Note head tweaks::
* Rests::
* Skip::
@end menu
@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
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).
@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
-----------------------
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!
------------------------------------------------------------------
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.
+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),
(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)))
--- /dev/null
+\header {
+texidoc = " Ez-notation prints names in note heads."
+}
+
+\score {
+ \notes { c'2 e'4 f' | g'1 }
+ \paper { \translator { \EasyNotation } }
+}
%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;
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
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
{
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 ();
+}
(c) 1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
+#include <ctype.h>
#include "rhythmic-head.hh"
#include "paper-def.hh"
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);
}
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 ())
OrchestralScoreContext= \translator {
\ScoreContext
}
+EasyNotation = \translator {
+ \ScoreContext
+ NoteHead \override #'molecule-callback = #Note_head::brew_ez_molecule
+ easyPlay = ##t
+}
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
%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
(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 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 '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))
;;; Han-Wen Nienhuys <hanwen@cs.uu.nl>
+
+;;
+;; todo: this dispatch is totally LAME
+
(define (tex-scm action-name)
(define (unknown)
"%\n\\unknown%\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 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)