From: Han-Wen Nienhuys Date: Mon, 19 Jan 2004 00:03:19 +0000 (+0000) Subject: release commit X-Git-Tag: release/2.1.23~210 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=d766d2b4b3881f9b067173f44b25b758431e1517;p=lilypond.git release commit --- diff --git a/ChangeLog b/ChangeLog index 5338b5cee4..115afe2bcb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2004-01-19 Han-Wen Nienhuys + + * scm/define-grobs.scm (all-grob-descriptions): larger font for + ChordName + + * scm/new-markup.scm (sub-markup): sup & super: make smaller in + relation to surroundings. + + * lily/tuplet-bracket.cc (calc_position_and_height): add staff + Y-extent to the note-extents: stay clear of the staff. + 2004-01-18 Han-Wen Nienhuys * Documentation/user/GNUmakefile diff --git a/Documentation/topdocs/NEWS.texi b/Documentation/topdocs/NEWS.texi index 1f69533e46..8e5633c2a0 100644 --- a/Documentation/topdocs/NEWS.texi +++ b/Documentation/topdocs/NEWS.texi @@ -17,6 +17,13 @@ Version 2.1.9 @end ignore @itemize @bullet + +@item Formatting of rehearsal marks has been improved. The @code{\mark} +command now only does automatic incrementing for marks specified as +integer. For example, @code{\mark #1} will print an A in the default +style. See @file{input/regression/rehearsal-mark-letter.ly}, +@file{input/regression/rehearsal-mark-number.ly}. + @item Formatting of ottava brackets has been much improved. @item Objects in the output can now be documented: the following fragment diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely index e31a01ee22..a474382d0a 100644 --- a/Documentation/user/refman.itely +++ b/Documentation/user/refman.itely @@ -31,6 +31,7 @@ somewhat familiar with using LilyPond. * Orchestral music:: * Ancient notation:: * Contemporary notation:: +* Special notation:: * Tuning output:: * Global layout:: * Sound:: @@ -57,7 +58,6 @@ such as stems, tuplets and ties. * Stems:: * Ties:: * Tuplets:: -* Easy Notation note heads:: @end menu @@ -510,40 +510,6 @@ tuplet brackets should be moved manually, which is demonstrated in - -@node Easy Notation note heads -@subsection Easy Notation note heads - -@cindex easy notation -@cindex Hal Leonard - -The `easy play' note head includes a note name inside the head. It is -used in music aimed at beginners: - -@lilypond[singleline,verbatim,26pt] -\score { - \notes { c'2 e'4 f' | g'1 } - \paper { \translator { \EasyNotation } } -} -@end lilypond - -The @code{EasyNotation} variable overrides a @internalsref{Score} context. -You probably will want to print it with magnification or a -large font size to make it more readable. To print with -magnification, you must create a DVI file (with @file{lilypond}) and -then enlarge it with something like @file{dvips -x 2000 file.dvi}. -See the @code{dvips} documentation for more details. To print with a -larger font, see @ref{Font Size}. - - -@cindex Xdvi -@cindex ghostscript - -If you view the result with Xdvi, then staff lines will show through -the letters. Printing the PostScript file obtained does produce the -correct result. - - @node Easier music entry @section Easier music entry @cindex Music entry @@ -7504,6 +7470,54 @@ The following are supported See @ref{Articulations} for general instructions how to apply scripts such as fermatas to a @code{\notes@{@}} block. + +@node Special notation +@section Special notation + +@menu +* Balloon help:: +* Easy Notation note heads:: +@end menu + +@node Balloon help +@subsection Balloon help + + + +@node Easy Notation note heads +@subsection Easy Notation note heads + +@cindex easy notation +@cindex Hal Leonard + +The `easy play' note head includes a note name inside the head. It is +used in music aimed at beginners: + +@lilypond[singleline,verbatim,26pt] +\score { + \notes { c'2 e'4 f' | g'1 } + \paper { \translator { \EasyNotation } } +} +@end lilypond + +The @code{EasyNotation} variable overrides a @internalsref{Score} context. +You probably will want to print it with magnification or a +large font size to make it more readable. To print with +magnification, you must create a DVI file (with @file{lilypond}) and +then enlarge it with something like @file{dvips -x 2000 file.dvi}. +See the @code{dvips} documentation for more details. To print with a +larger font, see @ref{Font Size}. + + +@cindex Xdvi +@cindex ghostscript + +If you view the result with Xdvi, then staff lines will show through +the letters. Printing the PostScript file obtained does produce the +correct result. + + + @node Tuning output @section Tuning output diff --git a/lily/include/music-iterator.hh b/lily/include/music-iterator.hh index e49777a659..98010ea9d0 100644 --- a/lily/include/music-iterator.hh +++ b/lily/include/music-iterator.hh @@ -90,7 +90,7 @@ public: */ static SCM get_static_get_iterator (Music * mus); void init_translator (Music *, Translator_group *); -void quit (); + void quit (); virtual Moment pending_moment () const; diff --git a/lily/thread-devnull-engraver.cc b/lily/thread-devnull-engraver.cc index 8480139e6a..442b9db1d4 100644 --- a/lily/thread-devnull-engraver.cc +++ b/lily/thread-devnull-engraver.cc @@ -27,12 +27,6 @@ Thread_devnull_engraver::acknowledge_grob (Grob_info i) { SCM s = get_property ("devNullThread"); -#if 0 - /* No need, next if will never be true */ - if (s == ly_symbol2scm ("never")) - return; -#endif - if (s == ly_symbol2scm ("always") || (s == SCM_EOL && to_boolean (get_property ("soloADue")) diff --git a/lily/tuplet-bracket.cc b/lily/tuplet-bracket.cc index 2c9705d0b4..7e589483ac 100644 --- a/lily/tuplet-bracket.cc +++ b/lily/tuplet-bracket.cc @@ -293,6 +293,11 @@ Tuplet_bracket::calc_position_and_height (Grob*me,Real *offset, Real * dy) SCM cols = me->get_grob_property ("note-columns"); Grob * commony = common_refpoint_of_list (cols, me, Y_AXIS); Grob * commonx = common_refpoint_of_list (cols, me, X_AXIS); + + Interval staff; + + if (Grob * st = Staff_symbol_referencer::get_staff_symbol (me)) + staff = st->extent (commony, Y_AXIS); Direction dir = get_grob_direction (me); @@ -309,8 +314,12 @@ Tuplet_bracket::calc_position_and_height (Grob*me,Real *offset, Real * dy) if (l < r) { - *dy = columns[r]->extent (commony, Y_AXIS) [dir] - - columns[l]->extent (commony, Y_AXIS) [dir] ; + Interval rv =columns[r]->extent (commony, Y_AXIS); + Interval lv =columns[l]->extent (commony, Y_AXIS); + rv.unite (staff); + lv.unite (staff); + + *dy = rv[dir] - lv[dir]; } else * dy = 0; @@ -329,15 +338,16 @@ Tuplet_bracket::calc_position_and_height (Grob*me,Real *offset, Real * dy) Real x1 = rgr->extent (commonx,X_AXIS)[RIGHT]; - /* - Slope. - */ + /* + Slope. + */ Real factor = columns.size () > 1 ? 1/ (x1 - x0) : 1.0; for (int i = 0; i < columns.size (); i++) { - Real notey = columns[i]->extent (commony, Y_AXIS)[dir] - - me->relative_coordinate (commony, Y_AXIS); + Interval note_ext =columns[i]->extent (commony, Y_AXIS); + note_ext.unite (staff); + Real notey = note_ext[dir] - me->relative_coordinate (commony, Y_AXIS); Real x = columns[i]->relative_coordinate (commonx, X_AXIS) - x0; Real tuplety = *dy * x * factor; @@ -425,7 +435,7 @@ Tuplet_bracket::after_line_breaking (SCM smob) } if (dynamic_cast (me)->broken_b ()) { - me->warning ("Tuplet_bracket was across linebreak. Farewell cruel world."); + me->warning (_("Killing tuplet bracket across linebreak.")); me->suicide(); return SCM_UNSPECIFIED; } diff --git a/lily/voice-devnull-engraver.cc b/lily/voice-devnull-engraver.cc index d7027086bf..81e99a03ad 100644 --- a/lily/voice-devnull-engraver.cc +++ b/lily/voice-devnull-engraver.cc @@ -44,12 +44,6 @@ Voice_devnull_engraver::try_music (Music *m) { SCM s = get_property ("devNullVoice"); -#if 0 - /* No need */ - if (gh_equal_p (s, ly_symbol2scm ("never"))) - return; -#endif - if (gh_equal_p (s, ly_symbol2scm ("always")) || (s == SCM_EOL && daddy_trans_->id_string_.left_string (3) == "two" @@ -92,30 +86,16 @@ void Voice_devnull_engraver::acknowledge_grob (Grob_info i) { SCM s = get_property ("devNullVoice"); -#if 0 - /* No need, next if will never be true */ - if (s == ly_symbol2scm ("never")) - return; -#endif -#if 0 /* We used to have have this until 1.5.68. Not sure about - soloADue requirement */ if (s == ly_symbol2scm ("always") || (s == SCM_EOL - && daddy_trans_->id_string_.left_string (3) == "two" - && (to_boolean (get_property ("unison")) - || to_boolean (get_property ("unisilence"))))) -#else - if (s == ly_symbol2scm ("always") - || (s == SCM_EOL - && to_boolean (get_property ("soloADue")) - && ((daddy_trans_->id_string_.left_string (3) == "two" - && (to_boolean (get_property ("unison")) - || to_boolean (get_property ("unisilence")))) + && to_boolean (get_property ("soloADue")) + && ((daddy_trans_->id_string_.left_string (3) == "two" + && (to_boolean (get_property ("unison")) + || to_boolean (get_property ("unisilence")))) - /* Maybe this should be optional? */ + /* Maybe this should be optional? */ || to_boolean (get_property ("othersolo"))))) -#endif for (char const **p = junk_interfaces; *p; p++) if (i.grob_->internal_has_interface (ly_symbol2scm (*p))) diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index c30a1637ac..18e30c6bf0 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -262,6 +262,7 @@ (after-line-breaking-callback . ,Chord_name::after_line_breaking) (word-space . 0.0) (font-family . sans) + (font-size . 1.5) (meta . ((interfaces . (font-interface rhythmic-grob-interface text-interface chord-name-interface item-interface )))) )) @@ -1153,7 +1154,7 @@ (TupletBracket . ( (gap . 2.0) - (padding . 0.9) + (padding . 1.1) (thickness . 1.6) (edge-height . (0.7 . 0.7)) (shorten-pair . (-0.2 . -0.2)) diff --git a/scm/new-markup.scm b/scm/new-markup.scm index 65e608c877..87432cf354 100644 --- a/scm/new-markup.scm +++ b/scm/new-markup.scm @@ -378,7 +378,8 @@ for DIR, you can obtain longer or shorter stems." "Syntax: \\super MARKUP. " (ly:molecule-translate-axis (interpret-markup paper - (cons '((font-size . -3)) props) (car rest)) + (cons `((font-size . + ,(- (chain-assoc-get 'font-size props 0) 3))) props) (car rest)) (* 0.5 (cdr (chain-assoc 'baseline-skip props))) Y) ) @@ -392,21 +393,22 @@ for DIR, you can obtain longer or shorter stems." (define-public (sub-markup paper props . rest) "Syntax: \\sub MARKUP." - (ly:molecule-translate-axis (interpret-markup - paper - (cons '((font-size . -3)) props) - (car rest)) - (* -0.5 (cdr (chain-assoc 'baseline-skip props))) - Y) - ) + (ly:molecule-translate-axis + (interpret-markup + paper + (cons `((font-size . + ,(- (chain-assoc-get 'font-size props 0) 3))) props) + (car rest)) + (* -0.5 (cdr (chain-assoc 'baseline-skip props))) + Y) ) (define-public (normal-size-sub-markup paper props . rest) - (ly:molecule-translate-axis (interpret-markup - paper - props (car rest)) - (* -0.5 (cdr (chain-assoc 'baseline-skip props))) - Y) - ) + (ly:molecule-translate-axis + (interpret-markup + paper + props (car rest)) + (* -0.5 (cdr (chain-assoc 'baseline-skip props))) + Y) ) (define-public (hbracket-markup paper props . rest) "Horizontal brackets around its single argument. Syntax \\hbracket MARKUP."