From 6512eebb8a3cf31bdd21f1250d1401c3ab9e0309 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Thu, 26 May 2005 00:09:54 +0000 Subject: [PATCH] * lily/font-config.cc (init_fontconfig): comment out FontConfig cache warning. * lily/tie.cc (print): support dotted ties. --- ChangeLog | 8 +++++++ Documentation/user/advanced-notation.itely | 6 +++--- Documentation/user/basic-notation.itely | 10 ++++----- input/regression/repeat-unfold-all.ly | 6 +++--- lily/event-chord-iterator.cc | 4 ++-- lily/font-config.cc | 6 ++++++ lily/include/event-chord-iterator.hh | 2 +- lily/tie.cc | 25 +++++++++++++++++----- scm/define-grobs.scm | 1 - 9 files changed, 48 insertions(+), 20 deletions(-) diff --git a/ChangeLog b/ChangeLog index 18940d7632..098ac4d879 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,15 @@ +2005-05-26 Han-Wen Nienhuys + + * lily/font-config.cc (init_fontconfig): comment out FontConfig + cache warning. + + * lily/tie.cc (print): support dotted ties. + 2005-05-25 Han-Wen Nienhuys * scm/define-grobs.scm (all-grob-descriptions): switch off debugging + (all-grob-descriptions): Arpeggio has Y-extent. * scm/define-music-properties.scm (all-music-properties): document length-callback and start-callback as "read-only". diff --git a/Documentation/user/advanced-notation.itely b/Documentation/user/advanced-notation.itely index ba312eb31b..66c1c4ece4 100644 --- a/Documentation/user/advanced-notation.itely +++ b/Documentation/user/advanced-notation.itely @@ -1537,7 +1537,7 @@ This notation can be created by setting a common time signature for each staff but replacing it manually using @code{timeSignatureFraction} to the desired fraction. Then the printed durations in each staff are scaled to the common time signature. -The latter is done with @code{\compressmusic}, which is similar to +The latter is done with @code{\compressMusic}, which is similar to @code{\times}, but does not create a tuplet bracket. @@ -1555,13 +1555,13 @@ multiplied by 3/5, so that 3/5 * 10/8 = 3/4. \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(9 . 8) - \compressmusic #'(2 . 3) + \compressMusic #'(2 . 3) \repeat unfold 6 { c8[ c c] } } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(10 . 8) - \compressmusic #'(3 . 5) { + \compressMusic #'(3 . 5) { \repeat unfold 2 { c8[ c c] } \repeat unfold 2 { c8[ c] } | c4. c4. \times 2/3 { c8 c c } c4 diff --git a/Documentation/user/basic-notation.itely b/Documentation/user/basic-notation.itely index e2a7ce5d3b..e047718541 100644 --- a/Documentation/user/basic-notation.itely +++ b/Documentation/user/basic-notation.itely @@ -2706,15 +2706,15 @@ example by setting @code{Score.measurePosition} or entering @subsection Repeats and MIDI @cindex expanding repeats -@cindex @code{\unfoldrepeats} +@cindex @code{\unfoldRepeats} With a little bit of tweaking, all types of repeats can be present in the MIDI output. This is achieved by applying the -@code{\unfoldrepeats} music function. This functions changes all +@code{\unfoldRepeats} music function. This functions changes all repeats to unfold repeats. @lilypond[quote,verbatim,fragment,linewidth=8.0\cm] -\unfoldrepeats { +\unfoldRepeats { \repeat tremolo 8 {c'32 e' } \repeat percent 4 { c''8 d'' } \repeat volta 2 {c'4 d' e' f'} @@ -2726,7 +2726,7 @@ repeats to unfold repeats. \bar "|." @end lilypond -When creating a score file using @code{\unfoldrepeats} for midi, then +When creating a score file using @code{\unfoldRepeats} for midi, then it is necessary to make two @code{\score} blocks. One for MIDI (with unfolded repeats) and one for notation (with volta, tremolo, and percent repeats). For example, @@ -2737,7 +2737,7 @@ percent repeats). For example, \layout @{ .. @} @} \score @{ - \unfoldrepeats @var{..music..} + \unfoldRepeats @var{..music..} \midi @{ .. @} @} @end example diff --git a/input/regression/repeat-unfold-all.ly b/input/regression/repeat-unfold-all.ly index e616615d85..2e414a8476 100644 --- a/input/regression/repeat-unfold-all.ly +++ b/input/regression/repeat-unfold-all.ly @@ -1,7 +1,7 @@ -\version "2.4.0" +\version "2.5.25" \header { texidoc = "Volta repeats may be unfolded through the music - function @code{\unfoldrepeats}." + function @code{\unfoldRepeats}." } @@ -13,6 +13,6 @@ nots = \relative c' { \context Voice { \nots \bar "||" - \unfoldrepeats \nots + \unfoldRepeats \nots } diff --git a/lily/event-chord-iterator.cc b/lily/event-chord-iterator.cc index 0271eca424..212dccc371 100644 --- a/lily/event-chord-iterator.cc +++ b/lily/event-chord-iterator.cc @@ -17,7 +17,7 @@ Event_chord_iterator::Event_chord_iterator () } Context * -Event_chord_iterator::get_req_translator () +Event_chord_iterator::get_bottom_context () { assert (get_outlet ()); if (get_outlet ()->is_bottom_context ()) @@ -31,7 +31,7 @@ void Event_chord_iterator::construct_children () { Simple_music_iterator::construct_children (); - get_req_translator (); + get_bottom_context (); } Event_chord * diff --git a/lily/font-config.cc b/lily/font-config.cc index 8a2303d52d..8954c809f4 100644 --- a/lily/font-config.cc +++ b/lily/font-config.cc @@ -27,11 +27,17 @@ init_fontconfig () FcConfig *fcc = FcConfigGetCurrent (); + +#if 0 + /* + Hmm. the cache is always out of date??! + */ FcChar8 *cache = FcConfigGetCache (fcc); if (!FcDirCacheValid (cache)) { warning (_ ("FontConfig cache out of date. Rebuilding may take some time.")); } +#endif Array dirs; struct stat statbuf; diff --git a/lily/include/event-chord-iterator.hh b/lily/include/event-chord-iterator.hh index e0f2635923..946e4bebb4 100644 --- a/lily/include/event-chord-iterator.hh +++ b/lily/include/event-chord-iterator.hh @@ -20,7 +20,7 @@ class Event_chord_iterator : public Simple_music_iterator /** Find a bottom notation context to deliver events to. */ - virtual Context *get_req_translator (); + virtual Context *get_bottom_context (); /* Since Event_chord_iterator has no list-cursor internally, we diff --git a/lily/tie.cc b/lily/tie.cc index 97866e4c1d..1899046dc0 100644 --- a/lily/tie.cc +++ b/lily/tie.cc @@ -346,13 +346,28 @@ Tie::print (SCM smob) i++; } - Stencil a = Lookup::slur (b, - get_grob_direction (me) * staff_thick, - thick); + Stencil a; + + SCM p = me->get_property ("dash-period"); + SCM f = me->get_property ("dash-fraction"); + if (scm_is_number (p) && scm_is_number (f)) + a = Lookup::dashed_slur (b, + thick, + robust_scm2double (p, 1.0), + robust_scm2double (f, 0)); + else + a = Lookup::slur (b, + get_grob_direction (me) * staff_thick, + thick); + return a.smobbed_copy (); } -ADD_INTERFACE (Tie, "tie-interface", +ADD_INTERFACE (Tie, + "tie-interface", "A tie connecting two noteheads.\n", - "y-offset staffline-clearance control-points head-pair details thickness x-gap direction minimum-length"); + + "y-offset dash-period dash-fraction " + "staffline-clearance control-points head-pair " + "details thickness x-gap direction minimum-length"); diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index 6c535a8c76..f8a92c1939 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -93,7 +93,6 @@ (Arpeggio . ( (X-extent-callback . ,Arpeggio::width_callback) - (Y-extent-callback . #f) (print-function . ,Arpeggio::print) (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) (X-offset-callbacks . (,Side_position_interface::aligned_side)) -- 2.39.2