From: fred Date: Tue, 26 Mar 2002 22:14:41 +0000 (+0000) Subject: lilypond-1.1.52 X-Git-Tag: release/1.5.59~2309 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=1880d06f80d2b34771d1389dce11f83cdf7be8d3;p=lilypond.git lilypond-1.1.52 --- diff --git a/ANNOUNCEMENT-1.0 b/ANNOUNCEMENT-1.0 deleted file mode 100644 index 33190c9cf2..0000000000 --- a/ANNOUNCEMENT-1.0 +++ /dev/null @@ -1,102 +0,0 @@ -Keywords: midi notation music typesetting gnu font engraving -Subject: GNU LilyPond 1.0 released - The Music Typesetter - -GNU LilyPond - The Music Typesetter - - -WHAT IS LilyPond? - -LilyPond is the GNU Project music typesetter. This program can print -beautiful sheet music from a music definition file. It can also play -performances to a MIDI file. - - -WHAT'S NEW SINCE VERSION 0.1? - -* LilyPond now includes a completely new music font: the Feta font. - We were quite disappointed with available music fonts, so we rolled - our own. We did our best to copy the best symbol designs available, - and we think that we've succeeded in doing so. We're proud of the - result, and we hope you agree, so go check it out! - -* More elegant output due to - - * more sophisticated beam/slur formatting - * better spacing - * better line breaking - * better font design - * PostScript output for variable symbols - -* Lots of bugfixes - -* More robust, flexible and tweakable design - -* Better MIDI file importing - -* Easier to use due to better shell scripts and input format -enhancements - -* MusixTeX is not needed anymore - -* Faster - - - -FEATURES - -* Multiple staffs, polyphonic music (more voices on one staff), -Polymetric music. - -* Support for full orchestral score: Hara_kiri systems (lines with -only rests are automatically skipped), multi-measure rests, bar -numbering, brackets at the left. - -* Optimal beam slopes, slur/notehead collision resolution, dashed -slurs. Formatting parameters are runtime tunable - -* Very beautiful symbols. Variable size symbols generated on the fly -as embedded postscript. - -* MIDI output - -* Optimal linebreaking, manual intervention possible. Linelength is -settable per line. - -* Readable yet very fast to type input language. With configurable -note names and identifiers. Comes with an emacs-mode - -* With lots of examples (among others a fragment of Van Beethoven's -Coriolan, J.S.Bach Cello Suite II, F. Schubert "Leise flehen meine -Lieder") - -* Runs on UNIX and Windows-32. - -* Easy generation of titling. - -* WWW browsable documentation. - -* Support for Urtext: separation of modern and original interpretation. - -* Polyphonic music (with automatic collision resolution) - -* Spacing and collision resolution of accidentals and syllables is -done automatically - -* Internationalisation support (Italian, Dutch) - -* Multiple font sizes within one piece - -* Integration with LaTeX and YODL - - -MORE INFO - -Sources for this project are on - - ftp://pcnov095.win.tue.nl/pub/lilypond/ (Europe) - ftp://ftp.gnu.org/pub/gnu/ - -More detailed info and examples can be found on the webpage at - - http://www.cs.uu.nl/~hanwen/lilypond/index.html - diff --git a/NEWS b/NEWS index dffc1bfbdd..95b2f1cbca 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,36 @@ +pl 51.uu2 + - grace note flags, move Lookup::flag into Stem + - faq updates: doc++, Matt's page + - fixes for doc++. + - bartype string uses "brace" and "bracket" iso. "{" and "[" + - some of assert()s replaced by programming_error () + +pl 51.mb1 + - N.W.Gade: added real grace notes + - feta-banier.mf: added grace note flag + +pl 51.uu1 + - use weAreGraceContext \property to determine self_grace_b_ + - made more engravers grace aware. + +pl 50.jcn2 + - filed egcs bug report for powerpc. + - removed unnecessary #ifdef powerpc + - grace and other fixes for auto-beamer + - grace and other fixes for (beam-)stem-lengths + - input/test/bugs/hairy-grace.ly (urg) + - input/test/bugs/grace-accidents.ly (urg) + - input/test/bugs/grace-grace.ly (core) + - fixes: gnossienne-4.ly + +pl 50.hwn2 + - Timing_translator: add proccing moments to nearest global translator, +not to top global translator. + - cadenza.ly: grace notes. + - bf: auto staff switching +************ +pl 51 pl 50.hwn1 - grace notes: * Grace_iterator @@ -1229,7 +1261,7 @@ pl5.jcn4 pl5.jcn3 - website fixes -pl5.jcn2 +opl5.jcn2 - extender-*, see input/test/extender.ly - bf: half-beam length (urg) - fixes: standchen, star @@ -1459,7 +1491,7 @@ pl 17.jcn3 - tex output support - all output through scheme - option: f, output-format=X - - geile placebox +o - geile placebox - mf/mfplain.ini pl 17.jcn2 diff --git a/VERSION b/VERSION index c6ae35befa..2284fb9a18 100644 --- a/VERSION +++ b/VERSION @@ -1,7 +1,7 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=1 -PATCH_LEVEL=51 +PATCH_LEVEL=52 MY_PATCH_LEVEL= # use the above to send patches: MY_PATCH_LEVEL is always empty for a diff --git a/input/test/grace.ly b/input/test/grace.ly index fecf639c71..47e235cb33 100644 --- a/input/test/grace.ly +++ b/input/test/grace.ly @@ -3,6 +3,6 @@ \grace c8 c4 \grace { [c32 c32] } c4 \grace { [b32 ( c32] } c4 - \grace c16 [c8 c8] + \grace c8 [c8 c8] } } diff --git a/lily/stem-engraver.cc b/lily/stem-engraver.cc index a78be1a199..296422cfea 100644 --- a/lily/stem-engraver.cc +++ b/lily/stem-engraver.cc @@ -124,6 +124,12 @@ Stem_engraver::do_pre_move_processing() stem_p_->set_elt_property (length_scm_sym, gh_double2scm (prop.to_f ())); } + prop = get_property ("stemStyle", 0); + if (prop.to_bool ()) + { + stem_p_->set_elt_property (style_scm_sym, gh_str02scm (prop.ch_C())); + } + typeset_element(stem_p_); stem_p_ = 0; } diff --git a/lily/stem.cc b/lily/stem.cc index 1adaafbfb1..7f5129763f 100644 --- a/lily/stem.cc +++ b/lily/stem.cc @@ -173,8 +173,11 @@ Stem::set_default_stemlen () } else length_f = paper_l ()->get_var ("stem_length0"); - - Real shorten_f = paper_l ()->get_var ("forced_stem_shorten0"); + + bool grace_b = get_elt_property (grace_scm_sym) != SCM_BOOL_F; + String type_str = grace_b ? "grace_" : ""; + + Real shorten_f = paper_l ()->get_var (type_str + "forced_stem_shorten0"); if (!dir_) dir_ = get_default_dir (); @@ -195,7 +198,7 @@ Stem::set_default_stemlen () set_stemend ((dir_ > 0) ? head_positions()[BIGGER] + length_f: head_positions()[SMALLER] - length_f); - if (dir_ * stem_end_f () < 0) + if (!grace_b && (dir_ * stem_end_f () < 0)) set_stemend (0); } @@ -284,6 +287,20 @@ Stem::set_spacing_hints () } } +Molecule +Stem::flag () const +{ + String style; + SCM st = get_elt_property (style_scm_sym); + if ( st != SCM_BOOL_F) + { + st = SCM_CDR(st); + style = ly_scm2string (st); + } + + char c = (dir_ == UP) ? 'u' : 'd'; + return lookup_l ()->afm_find (String ("flags-") + to_str (c) + to_str (flag_i_) + style); +} Interval Stem::do_width () const @@ -293,7 +310,7 @@ Stem::do_width () const ; // TODO! else { - r = lookup_l ()->flag (flag_i_, dir_).dim_.x (); + r = flag ().dim_.x (); r += note_delta_f (); } return r; @@ -326,7 +343,7 @@ Stem::do_brew_molecule_p () const if (!beam_l_ && abs (flag_i_) > 2) { - Molecule fl = lookup_l ()->flag (flag_i_, dir_); + Molecule fl = flag (); fl.translate_axis(stem_y[dir_]*dy, Y_AXIS); mol_p->add_molecule (fl); } diff --git a/mf/feta-banier.mf b/mf/feta-banier.mf index 8a3c2823f2..91ccd66bf5 100644 --- a/mf/feta-banier.mf +++ b/mf/feta-banier.mf @@ -142,7 +142,6 @@ fet_beginchar("16th Flag (up)", "u4", "sixteenthflag") define_pixels(flare, hip_width, hip_thickness, flagspace, foot_depth, foot_thickness); - draw_flag((stemthickness/2,- flagspace), flare, (hip_width, foot_depth), hip_depth_ratio,foot_width_ratio, hip_thickness, foot_thickness); @@ -231,6 +230,34 @@ fet_beginchar("64th Flag (up)", "u6", "sixtyfourthflag") draw (0, 0) .. (0,-2 interline); fet_endchar; +fet_beginchar("grace 8th Flag (up)", "u3grace", "graceeighthflag") + save flare, + hip_depth_ratio, hip_width, + foot_depth, foot_width_ratio; + + flare# = 1.0 interline#; + hip_depth_ratio = .72; + foot_width_ratio = .8; + hip_width# = upflag_width# - hip_thickness#/2; + + foot_depth# = 3 interline#; + + set_char_box(hip_width# * hip_depth_ratio, + hip_width# + stemthickness#/2 + right_upflag_space#, + foot_depth# + foot_thickness#/2, stemthickness#/2) + + define_pixels(flare, hip_width, hip_thickness, + foot_depth, foot_thickness); + draw_flag((stemthickness/2,0), flare, + (hip_width, foot_depth), + hip_depth_ratio, foot_width_ratio, hip_thickness, foot_thickness); + + pickup pencircle scaled stemthickness; + draw (0, 0) .. (0,-2 interline); + draw (-b ,-foot_depth * hip_depth_ratio) .. + (w, -flare); +fet_endchar; + fet_beginchar("8th (down)", "d3", "deighthflag") save flare, hip_depth_ratio, hip_width, @@ -382,4 +409,41 @@ fet_beginchar("64th (down)", "d6", "dsixtyfourthflag") draw (0, 0) .. (0,-2 interline); y_mirror_char; fet_endchar; + + +fet_beginchar("grace 8th (down)", "d3grace", "dgraceeighthflag") + save flare, + hip_depth_ratio, hip_width, + foot_depth, foot_width_ratio; + save flagspace, total_depth, flag_count; + + flag_count = 1; + flare# = .99 interline#; + flagspace# = .9 interline#; + hip_depth_ratio = .72 ; + hip_width# = downflag_width# - hip_thickness#/2; + total_depth# = 2.85 interline#; + (flag_count-1) * flagspace# + foot_depth# = total_depth#; + + foot_width_ratio = .8; + + set_char_box(hip_width# * hip_depth_ratio, + hip_width# + stemthickness#/2 + right_downflag_space#, + total_depth# + foot_thickness#/2, stemthickness#/2) + + define_pixels(flare, hip_width, hip_thickness, + flagspace, + foot_depth, foot_thickness); + + draw_flag((stemthickness/2,- (flag_count-1) *flagspace), flare, + (hip_width, foot_depth), + hip_depth_ratio,foot_width_ratio, hip_thickness, foot_thickness); + + + pickup pencircle scaled stemthickness; + draw (0, 0) .. (0,-2 interline); + draw (-b, -foot_depth * hip_depth_ratio) .. (w,-flare); + y_mirror_char; +fet_endchar; + fet_endgroup("flags"); diff --git a/mf/feta-generic.mf b/mf/feta-generic.mf index 9c88e2d9b6..ad64170dff 100644 --- a/mf/feta-generic.mf +++ b/mf/feta-generic.mf @@ -40,7 +40,7 @@ else: % input feta-eindelijk; % input feta-klef; % input feta-toevallig; - input feta-schrift; +% input feta-schrift; % input feta-haak; % input feta-timesig; fi diff --git a/mutopia/W.A.Mozart/cadenza.ly b/mutopia/W.A.Mozart/cadenza.ly index ba73aee319..6b4c9079e6 100644 --- a/mutopia/W.A.Mozart/cadenza.ly +++ b/mutopia/W.A.Mozart/cadenza.ly @@ -41,7 +41,7 @@ cad = \notes \relative c' { \bar "" ; r8 a [b cis] -% \grace e16 + \grace { e8( } [d16 cis d e] f4 ~ [f16 e d c] b4-\turn @@ -54,13 +54,13 @@ cad = \notes \relative c' { [g8.(_"a tempo" e16 g8. )e16] a4. g8 [f8 e8 d8 c8] g2 d'2-\trill -% \grace { [c32 d] } + \grace { [c32 d] } c4 } } \score { \notes { \cad } - \paper { - } - \midi { \tempo 4 = 90; } +% \midi { \tempo 4 = 90; } + \paper { casting_algorithm = \Wordwrap;} + }