]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.1.52
authorfred <fred>
Tue, 26 Mar 2002 22:14:41 +0000 (22:14 +0000)
committerfred <fred>
Tue, 26 Mar 2002 22:14:41 +0000 (22:14 +0000)
ANNOUNCEMENT-1.0 [deleted file]
NEWS
VERSION
input/test/grace.ly
lily/stem-engraver.cc
lily/stem.cc
mf/feta-banier.mf
mf/feta-generic.mf
mutopia/W.A.Mozart/cadenza.ly

diff --git a/ANNOUNCEMENT-1.0 b/ANNOUNCEMENT-1.0
deleted file mode 100644 (file)
index 33190c9..0000000
+++ /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 dffc1bfbdddc1e04ea5aed8547447970690045d5..95b2f1cbca56f32e565058f2ea42735599ec0dd0 100644 (file)
--- 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 c6ae35befa34bb7187c38b739275e2b8ddbe4616..2284fb9a188b02059e91ccfa67f8177d5b0ba574 100644 (file)
--- 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
index fecf639c71e1c6ed0650b32415ad4248e96ea19b..47e235cb33538a6404fef18ac8ca9937d20d8114 100644 (file)
@@ -3,6 +3,6 @@
        \grace c8 c4
        \grace { [c32 c32] } c4
         \grace { [b32 ( c32] } c4
-       \grace c16 [c8 c8]
+       \grace c8 [c8 c8]
 }
 }
index a78be1a19972565372ddded63e5d9c5f3ae9c7f6..296422cfea1d11d03fb87c75c8bfa80e3c078510 100644 (file)
@@ -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;
     }
index 1adaafbfb1b2c1dec77ee0c5cc41d14f00c803de..7f5129763f78f6cd537736444c1aaec9977894cd 100644 (file)
@@ -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);
     }
index 8a3c2823f26decdd5bcc73556d4c64603bb4c68b..91ccd66bf5ee080fb0c023718638866712d00b76 100644 (file)
@@ -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");
index 9c88e2d9b6b3bb55bdd26aac77e3bcc75b095437..ad64170dff288c119ba782e0ea9b26c9c94c71f9 100644 (file)
@@ -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
index ba73aee319b19b9fa35ccba00682735f836135f6..6b4c9079e62733b4237097024c7f6556f4d7d619 100644 (file)
@@ -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;}
+
 }