CVSROOT: /cvsroot/lilypond Module name: lilypond Branch: Changes by: Han-Wen Nienhuys <[EMAIL PROTECTED]> 05/07/08 17:53:41
Modified files: . : ChangeLog Documentation/user: advanced-notation.itely input/regression: whiteout.ly lily : arpeggio-engraver.cc axis-group-interface.cc font-interface.cc note-head.cc trill-spanner-engraver.cc lily/include : axis-group-interface.hh ly : Welcome_to_LilyPond.ly accordion-defs-init.ly catalan.ly chord-modifiers-init.ly declarations-init.ly deutsch.ly drumpitch-init.ly dynamic-scripts-init.ly english.ly engraver-init.ly espanol.ly generate-documentation.ly generate-interface-doc-init.ly grace-init.ly gregorian-init.ly init.ly italiano.ly midi-init.ly music-functions-init.ly nederlands.ly norsk.ly paper-defaults.ly params-init.ly performer-init.ly portugues.ly property-init.ly scale-definitions-init.ly script-init.ly spanners-init.ly suomi.ly svenska.ly vlaams.ly scm : define-grobs.scm define-markup-commands.scm define-music-properties.scm output-lib.scm safe-lily.scm translation-functions.scm Added files: input/regression: trill-spanner-pitched.ly lily : axis-group-interface-scheme.cc font-interface-scheme.cc pitched-trill-engraver.cc Log message: * scm/define-grobs.scm (all-grob-descriptions): reorganize in alphabetical order. * input/regression/trill-spanner-pitched.ly: new file. * lily/font-interface-scheme.cc (LY_DEFINE): function ly:grob-default-font (changed from get-default-font). * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file. * lily/note-head.cc (internal_print): if style is not a symbol, set style to 'default. (internal_print): no style suffix if glyph-name-procedure not set. Default to quarter head. * scm/define-grobs.scm (Module): new grob TrillPitchHead. * scm/define-music-properties.scm (all-music-properties): add trill-pitch. * ly/music-functions-init.ly: \pitchedTrill * lily/pitched-trill-engraver.cc (acknowledge_grob): new file. * ly/Welcome_to_LilyPond.ly: update to 2.6.0 * lily/trill-spanner-engraver.cc (finalize): rename req -> event * scm/define-markup-commands.scm (pad-markup): pad-markup command. CVSWeb URLs: http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ChangeLog.diff?tr1=1.3853&tr2=1.3854&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/Documentation/user/advanced-notation.itely.diff?tr1=1.37&tr2=1.38&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/input/regression/trill-spanner-pitched.ly?rev=1.1 http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/input/regression/whiteout.ly.diff?tr1=1.2&tr2=1.3&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/axis-group-interface-scheme.cc?rev=1.1 http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/font-interface-scheme.cc?rev=1.1 http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/pitched-trill-engraver.cc?rev=1.1 http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/arpeggio-engraver.cc.diff?tr1=1.31&tr2=1.32&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/axis-group-interface.cc.diff?tr1=1.60&tr2=1.61&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/font-interface.cc.diff?tr1=1.51&tr2=1.52&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/note-head.cc.diff?tr1=1.139&tr2=1.140&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/trill-spanner-engraver.cc.diff?tr1=1.7&tr2=1.8&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/include/axis-group-interface.hh.diff?tr1=1.21&tr2=1.22&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/Welcome_to_LilyPond.ly.diff?tr1=1.4&tr2=1.5&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/accordion-defs-init.ly.diff?tr1=1.21&tr2=1.22&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/catalan.ly.diff?tr1=1.34&tr2=1.35&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/chord-modifiers-init.ly.diff?tr1=1.41&tr2=1.42&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/declarations-init.ly.diff?tr1=1.87&tr2=1.88&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/deutsch.ly.diff?tr1=1.36&tr2=1.37&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/drumpitch-init.ly.diff?tr1=1.25&tr2=1.26&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/dynamic-scripts-init.ly.diff?tr1=1.25&tr2=1.26&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/english.ly.diff?tr1=1.33&tr2=1.34&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/engraver-init.ly.diff?tr1=1.236&tr2=1.237&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/espanol.ly.diff?tr1=1.21&tr2=1.22&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/generate-documentation.ly.diff?tr1=1.29&tr2=1.30&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/generate-interface-doc-init.ly.diff?tr1=1.20&tr2=1.21&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/grace-init.ly.diff?tr1=1.42&tr2=1.43&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/gregorian-init.ly.diff?tr1=1.33&tr2=1.34&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/init.ly.diff?tr1=1.76&tr2=1.77&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/italiano.ly.diff?tr1=1.35&tr2=1.36&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/midi-init.ly.diff?tr1=1.21&tr2=1.22&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/music-functions-init.ly.diff?tr1=1.26&tr2=1.27&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/nederlands.ly.diff?tr1=1.35&tr2=1.36&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/norsk.ly.diff?tr1=1.33&tr2=1.34&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/paper-defaults.ly.diff?tr1=1.13&tr2=1.14&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/params-init.ly.diff?tr1=1.48&tr2=1.49&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/performer-init.ly.diff?tr1=1.48&tr2=1.49&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/portugues.ly.diff?tr1=1.6&tr2=1.7&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/property-init.ly.diff?tr1=1.76&tr2=1.77&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/scale-definitions-init.ly.diff?tr1=1.22&tr2=1.23&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/script-init.ly.diff?tr1=1.34&tr2=1.35&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/spanners-init.ly.diff?tr1=1.41&tr2=1.42&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/suomi.ly.diff?tr1=1.21&tr2=1.22&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/svenska.ly.diff?tr1=1.33&tr2=1.34&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/vlaams.ly.diff?tr1=1.5&tr2=1.6&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/define-grobs.scm.diff?tr1=1.206&tr2=1.207&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/define-markup-commands.scm.diff?tr1=1.98&tr2=1.99&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/define-music-properties.scm.diff?tr1=1.37&tr2=1.38&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/output-lib.scm.diff?tr1=1.80&tr2=1.81&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/safe-lily.scm.diff?tr1=1.30&tr2=1.31&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/translation-functions.scm.diff?tr1=1.11&tr2=1.12&r1=text&r2=text Patches: Index: lilypond/ChangeLog diff -u lilypond/ChangeLog:1.3853 lilypond/ChangeLog:1.3854 --- lilypond/ChangeLog:1.3853 Fri Jul 8 11:37:28 2005 +++ lilypond/ChangeLog Fri Jul 8 17:53:39 2005 @@ -1,5 +1,34 @@ 2005-07-08 Han-Wen Nienhuys <[EMAIL PROTECTED]> + * scm/define-grobs.scm (all-grob-descriptions): reorganize in + alphabetical order. + + * input/regression/trill-spanner-pitched.ly: new file. + + * lily/font-interface-scheme.cc (LY_DEFINE): function + ly:grob-default-font (changed from get-default-font). + + * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file. + + * lily/note-head.cc (internal_print): if style is not a symbol, + set style to 'default. + (internal_print): no style suffix if glyph-name-procedure not + set. Default to quarter head. + + * scm/define-grobs.scm (Module): new grob TrillPitchHead. + + * scm/define-music-properties.scm (all-music-properties): add trill-pitch. + + * ly/music-functions-init.ly: \pitchedTrill + + * lily/pitched-trill-engraver.cc (acknowledge_grob): new file. + + * ly/Welcome_to_LilyPond.ly: update to 2.6.0 + + * lily/trill-spanner-engraver.cc (finalize): rename req -> event + + * scm/define-markup-commands.scm (pad-markup): pad-markup command. + * po/fr.po: update * po/de.po: update. Index: lilypond/Documentation/user/advanced-notation.itely diff -u lilypond/Documentation/user/advanced-notation.itely:1.37 lilypond/Documentation/user/advanced-notation.itely:1.38 --- lilypond/Documentation/user/advanced-notation.itely:1.37 Thu Jul 7 05:16:53 2005 +++ lilypond/Documentation/user/advanced-notation.itely Fri Jul 8 17:53:40 2005 @@ -1709,6 +1709,24 @@ Program reference: @internalsref{NoteHead}. [EMAIL PROTECTED] Pitched trills [EMAIL PROTECTED] Pitched trills + +Trills that should be executed on an explicitly specified pitch can be +typeset with the command @code{pitchedTrill}, + [EMAIL PROTECTED],verbatim] + \pitchedTrill c'4\startTrillSpan fis + f'\stopTrillSpan [EMAIL PROTECTED] lilypond + +The first argument is the main note. The absolute pitch of the second +is printed as a stemless note head in parentheses. + [EMAIL PROTECTED] + +Relative octave mode ignores the octave of the second argument of [EMAIL PROTECTED] @node Feathered beams @subsection Feathered beams Index: lilypond/input/regression/whiteout.ly diff -u lilypond/input/regression/whiteout.ly:1.2 lilypond/input/regression/whiteout.ly:1.3 --- lilypond/input/regression/whiteout.ly:1.2 Sun Jun 26 22:39:14 2005 +++ lilypond/input/regression/whiteout.ly Fri Jul 8 17:53:40 2005 @@ -14,5 +14,5 @@ { \override TextScript #'extra-offset = #'(2 . 4) - c'4-\markup { \whiteout foo } c + c'4-\markup { \whiteout \pad-markup #0.5 foo } c } Index: lilypond/lily/arpeggio-engraver.cc diff -u lilypond/lily/arpeggio-engraver.cc:1.31 lilypond/lily/arpeggio-engraver.cc:1.32 --- lilypond/lily/arpeggio-engraver.cc:1.31 Sun May 8 23:30:50 2005 +++ lilypond/lily/arpeggio-engraver.cc Fri Jul 8 17:53:40 2005 @@ -26,21 +26,21 @@ virtual bool try_music (Music *); private: Item *arpeggio_; - Music *arpeggio_req_; + Music *arpeggio_event_; }; Arpeggio_engraver::Arpeggio_engraver () { arpeggio_ = 0; - arpeggio_req_ = 0; + arpeggio_event_ = 0; } bool Arpeggio_engraver::try_music (Music *m) { - if (!arpeggio_req_) + if (!arpeggio_event_) { - arpeggio_req_ = m; + arpeggio_event_ = m; } return true; } @@ -78,9 +78,9 @@ void Arpeggio_engraver::process_music () { - if (arpeggio_req_) + if (arpeggio_event_) { - arpeggio_ = make_item ("Arpeggio", arpeggio_req_->self_scm ()); + arpeggio_ = make_item ("Arpeggio", arpeggio_event_->self_scm ()); } } @@ -88,11 +88,11 @@ Arpeggio_engraver::stop_translation_timestep () { arpeggio_ = 0; - arpeggio_req_ = 0; + arpeggio_event_ = 0; } ADD_TRANSLATOR (Arpeggio_engraver, - /* descr */ "Generate an Arpeggio from a Arpeggio_req", + /* descr */ "Generate an Arpeggio symbol", /* creats*/ "Arpeggio", /* accepts */ "arpeggio-event", /* acks */ "stem-interface rhythmic-head-interface note-column-interface", Index: lilypond/lily/axis-group-interface.cc diff -u lilypond/lily/axis-group-interface.cc:1.60 lilypond/lily/axis-group-interface.cc:1.61 --- lilypond/lily/axis-group-interface.cc:1.60 Wed Mar 16 19:19:15 2005 +++ lilypond/lily/axis-group-interface.cc Fri Jul 8 17:53:40 2005 @@ -7,12 +7,18 @@ */ #include "axis-group-interface.hh" + #include "hara-kiri-group-spanner.hh" +#include "warn.hh" void Axis_group_interface::add_element (Grob *me, Grob *e) { - for (SCM ax = me->get_property ("axes"); ax != SCM_EOL; ax = scm_cdr (ax)) + SCM axes = me->get_property ("axes"); + if (!scm_is_pair (axes)) + programming_error ("axes should be nonempty"); + + for (SCM ax = axes; ax != SCM_EOL; ax = scm_cdr (ax)) { Axis a = (Axis) scm_to_int (scm_car (ax)); @@ -40,7 +46,7 @@ } Interval -Axis_group_interface::relative_group_extent (Axis a, Grob *common, SCM elts) +Axis_group_interface::relative_group_extent (SCM elts, Grob *common, Axis a) { Interval r; for (SCM s = elts; scm_is_pair (s); s = scm_cdr (s)) @@ -53,6 +59,8 @@ return r; } + + MAKE_SCHEME_CALLBACK (Axis_group_interface, group_extent_callback, 2); SCM Axis_group_interface::group_extent_callback (SCM element_smob, SCM scm_axis) @@ -64,7 +72,7 @@ Grob *common = common_refpoint_of_list (elts, me, a); Real my_coord = me->relative_coordinate (common, a); - Interval r (relative_group_extent (a, common, elts)); + Interval r (relative_group_extent (elts, common, a)); return ly_interval2scm (r - my_coord); } Index: lilypond/lily/font-interface.cc diff -u lilypond/lily/font-interface.cc:1.51 lilypond/lily/font-interface.cc:1.52 --- lilypond/lily/font-interface.cc:1.51 Thu Mar 10 14:36:13 2005 +++ lilypond/lily/font-interface.cc Fri Jul 8 17:53:40 2005 @@ -29,16 +29,6 @@ return fm; } -LY_DEFINE (ly_font_interface_get_default_font, "ly:get-default-font", - 1, 0, 0, (SCM grob), - "Return the default font for grob @var{gr}.") -{ - Grob *gr = unsmob_grob (grob); - SCM_ASSERT_TYPE (gr, grob, SCM_ARG1, __FUNCTION__, "grob"); - - return Font_interface::get_default_font (gr)->self_scm (); -} - SCM Font_interface::music_font_alist_chain (Grob *g) { Index: lilypond/lily/include/axis-group-interface.hh diff -u lilypond/lily/include/axis-group-interface.hh:1.21 lilypond/lily/include/axis-group-interface.hh:1.22 --- lilypond/lily/include/axis-group-interface.hh:1.21 Wed Mar 16 19:19:15 2005 +++ lilypond/lily/include/axis-group-interface.hh Fri Jul 8 17:53:40 2005 @@ -16,7 +16,7 @@ struct Axis_group_interface { DECLARE_SCHEME_CALLBACK (group_extent_callback, (SCM smob, SCM axis)); - static Interval relative_group_extent (Axis, Grob *common, SCM list); + static Interval relative_group_extent (SCM list, Grob *common, Axis); static void add_element (Grob *me, Grob *); static void set_axes (Grob *, Axis, Axis); Index: lilypond/lily/note-head.cc diff -u lilypond/lily/note-head.cc:1.139 lilypond/lily/note-head.cc:1.140 --- lilypond/lily/note-head.cc:1.139 Sat May 28 13:43:23 2005 +++ lilypond/lily/note-head.cc Fri Jul 8 17:53:40 2005 @@ -35,13 +35,16 @@ SCM style = me->get_property ("style"); if (!scm_is_symbol (style)) { - return Stencil (); + style = ly_symbol2scm ("default"); } SCM log = scm_int2num (Note_head::get_balltype (me)); SCM proc = me->get_property ("glyph-name-procedure"); - SCM scm_font_char = scm_call_2 (proc, log, style); + String suffix = to_string (robust_scm2int (me->get_property ("duration-log"), 2)); + if (scm_procedure_p (proc) == SCM_BOOL_T) + suffix = ly_scm2string (scm_call_2 (proc, log, style)); + Font_metric *fm = Font_interface::get_default_font (me); Direction stem_dir = CENTER; @@ -56,11 +59,11 @@ String prefix = "noteheads."; String idx - = prefix + ((stem_dir == UP) ? "u" : "d") + ly_scm2string (scm_font_char); + = prefix + ((stem_dir == UP) ? "u" : "d") + suffix; out = fm->find_by_name (idx); if (out.is_empty ()) { - idx = prefix + "s" + ly_scm2string (scm_font_char); + idx = prefix + "s" + suffix; out = fm->find_by_name (idx); } Index: lilypond/lily/trill-spanner-engraver.cc diff -u lilypond/lily/trill-spanner-engraver.cc:1.7 lilypond/lily/trill-spanner-engraver.cc:1.8 --- lilypond/lily/trill-spanner-engraver.cc:1.7 Sun May 8 23:30:51 2005 +++ lilypond/lily/trill-spanner-engraver.cc Fri Jul 8 17:53:40 2005 @@ -31,18 +31,18 @@ private: Spanner *span_; Spanner *finished_; - Music *current_req_; - Drul_array<Music *> req_drul_; + Music *current_event_; + Drul_array<Music *> event_drul_; void typeset_all (); }; Trill_spanner_engraver::Trill_spanner_engraver () { finished_ = 0; - current_req_ = 0; + current_event_ = 0; span_ = 0; - req_drul_[START] = 0; - req_drul_[STOP] = 0; + event_drul_[START] = 0; + event_drul_[STOP] = 0; } bool @@ -51,7 +51,7 @@ if (m->is_mus_type ("trill-span-event")) { Direction d = to_dir (m->get_property ("span-direction")); - req_drul_[d] = m; + event_drul_[d] = m; return true; } @@ -61,32 +61,32 @@ void Trill_spanner_engraver::process_music () { - if (req_drul_[STOP]) + if (event_drul_[STOP]) { if (!span_) { - req_drul_[STOP]->origin ()->warning (_ ("can't find start of trill spanner")); + event_drul_[STOP]->origin ()->warning (_ ("can't find start of trill spanner")); } else { finished_ = span_; span_ = 0; - current_req_ = 0; + current_event_ = 0; } } - if (req_drul_[START]) + if (event_drul_[START]) { - if (current_req_) + if (current_event_) { - req_drul_[START]->origin ()->warning (_ ("already have a trill spanner")); + event_drul_[START]->origin ()->warning (_ ("already have a trill spanner")); } else { - current_req_ = req_drul_[START]; - span_ = make_spanner ("TrillSpanner", req_drul_[START]->self_scm ()); + current_event_ = event_drul_[START]; + span_ = make_spanner ("TrillSpanner", event_drul_[START]->self_scm ()); Side_position_interface::set_axis (span_, Y_AXIS); - req_drul_[START] = 0; + event_drul_[START] = 0; } } } @@ -129,8 +129,8 @@ } typeset_all (); - req_drul_[START] = 0; - req_drul_[STOP] = 0; + event_drul_[START] = 0; + event_drul_[STOP] = 0; } void @@ -139,7 +139,7 @@ typeset_all (); if (span_) { - current_req_->origin ()->warning (_ ("unterminated trill spanner")); + current_event_->origin ()->warning (_ ("unterminated trill spanner")); span_->suicide (); span_ = 0; } Index: lilypond/ly/Welcome_to_LilyPond.ly diff -u lilypond/ly/Welcome_to_LilyPond.ly:1.4 lilypond/ly/Welcome_to_LilyPond.ly:1.5 --- lilypond/ly/Welcome_to_LilyPond.ly:1.4 Tue May 24 21:38:29 2005 +++ lilypond/ly/Welcome_to_LilyPond.ly Fri Jul 8 17:53:40 2005 @@ -31,4 +31,4 @@ } -\version "2.5.25" % necessary for upgrading to future LilyPond versions. +\version "2.6.0" % necessary for upgrading to future LilyPond versions. Index: lilypond/ly/accordion-defs-init.ly diff -u lilypond/ly/accordion-defs-init.ly:1.21 lilypond/ly/accordion-defs-init.ly:1.22 --- lilypond/ly/accordion-defs-init.ly:1.21 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/accordion-defs-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" % Symbols needed to print accordion music % % 2' = T Index: lilypond/ly/catalan.ly diff -u lilypond/ly/catalan.ly:1.34 lilypond/ly/catalan.ly:1.35 --- lilypond/ly/catalan.ly:1.34 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/catalan.ly Fri Jul 8 17:53:41 2005 @@ -74,6 +74,6 @@ pitchnames = \pitchnamesCatalan -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/chord-modifiers-init.ly diff -u lilypond/ly/chord-modifiers-init.ly:1.41 lilypond/ly/chord-modifiers-init.ly:1.42 --- lilypond/ly/chord-modifiers-init.ly:1.41 Tue May 3 22:22:56 2005 +++ lilypond/ly/chord-modifiers-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" chordmodifiers = #default-chord-modifier-list Index: lilypond/ly/declarations-init.ly diff -u lilypond/ly/declarations-init.ly:1.87 lilypond/ly/declarations-init.ly:1.88 --- lilypond/ly/declarations-init.ly:1.87 Tue Jun 28 11:10:23 2005 +++ lilypond/ly/declarations-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" %% < 1.8 compatibility switch #(ly:set-option 'old-relative) Index: lilypond/ly/deutsch.ly diff -u lilypond/ly/deutsch.ly:1.36 lilypond/ly/deutsch.ly:1.37 --- lilypond/ly/deutsch.ly:1.36 Sat Mar 5 11:11:18 2005 +++ lilypond/ly/deutsch.ly Fri Jul 8 17:53:41 2005 @@ -63,6 +63,6 @@ pitchnames = \pitchnamesDeutsch -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/drumpitch-init.ly diff -u lilypond/ly/drumpitch-init.ly:1.25 lilypond/ly/drumpitch-init.ly:1.26 --- lilypond/ly/drumpitch-init.ly:1.25 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/drumpitch-init.ly Fri Jul 8 17:53:41 2005 @@ -1,5 +1,5 @@ -\version "2.4.0" +\version "2.6.0" drumPitchNames = #'((acousticbassdrum . acousticbassdrum) Index: lilypond/ly/dynamic-scripts-init.ly diff -u lilypond/ly/dynamic-scripts-init.ly:1.25 lilypond/ly/dynamic-scripts-init.ly:1.26 --- lilypond/ly/dynamic-scripts-init.ly:1.25 Mon Nov 22 10:12:50 2004 +++ lilypond/ly/dynamic-scripts-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" % % declare the standard dynamic identifiers. Index: lilypond/ly/english.ly diff -u lilypond/ly/english.ly:1.33 lilypond/ly/english.ly:1.34 --- lilypond/ly/english.ly:1.33 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/english.ly Fri Jul 8 17:53:41 2005 @@ -87,7 +87,7 @@ pitchnames = \pitchnamesEnglish -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/engraver-init.ly diff -u lilypond/ly/engraver-init.ly:1.236 lilypond/ly/engraver-init.ly:1.237 --- lilypond/ly/engraver-init.ly:1.236 Thu Jun 16 11:13:02 2005 +++ lilypond/ly/engraver-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.5.18" \context { \name Global @@ -169,7 +169,8 @@ localKeySignature = #'() \consists "Font_size_engraver" - + + \consists "Pitched_trill_engraver" \consists "Output_property_engraver" \consists "Arpeggio_engraver" \consists "Multi_measure_rest_engraver" Index: lilypond/ly/espanol.ly diff -u lilypond/ly/espanol.ly:1.21 lilypond/ly/espanol.ly:1.22 --- lilypond/ly/espanol.ly:1.21 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/espanol.ly Fri Jul 8 17:53:41 2005 @@ -8,7 +8,7 @@ %} -% contributed by Carlos García Suárez <<[EMAIL PROTECTED]>> +% contributed by Carlos GarcÃa Suárez <<[EMAIL PROTECTED]>> % For using "sostingut" notation, which is also correct @@ -58,6 +58,6 @@ pitchnames = \pitchnamesEspanol -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/generate-documentation.ly diff -u lilypond/ly/generate-documentation.ly:1.29 lilypond/ly/generate-documentation.ly:1.30 --- lilypond/ly/generate-documentation.ly:1.29 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/generate-documentation.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" % % Running LilyPond on this file generates the documentation Index: lilypond/ly/generate-interface-doc-init.ly diff -u lilypond/ly/generate-interface-doc-init.ly:1.20 lilypond/ly/generate-interface-doc-init.ly:1.21 --- lilypond/ly/generate-interface-doc-init.ly:1.20 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/generate-interface-doc-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" % % Running LilyPond on this file generates the short interface doc Index: lilypond/ly/grace-init.ly diff -u lilypond/ly/grace-init.ly:1.42 lilypond/ly/grace-init.ly:1.43 --- lilypond/ly/grace-init.ly:1.42 Sun Nov 28 17:33:34 2004 +++ lilypond/ly/grace-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" startGraceMusic = { Index: lilypond/ly/gregorian-init.ly diff -u lilypond/ly/gregorian-init.ly:1.33 lilypond/ly/gregorian-init.ly:1.34 --- lilypond/ly/gregorian-init.ly:1.33 Sat Feb 19 19:30:13 2005 +++ lilypond/ly/gregorian-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" %%%%%%%% %%%%%%%% shortcuts common for all styles of gregorian chant notation Index: lilypond/ly/init.ly diff -u lilypond/ly/init.ly:1.76 lilypond/ly/init.ly:1.77 --- lilypond/ly/init.ly:1.76 Thu Jun 9 14:09:33 2005 +++ lilypond/ly/init.ly Fri Jul 8 17:53:41 2005 @@ -7,7 +7,7 @@ #(define-public midi-debug #f) -\version "2.4.0" +\version "2.6.0" \include "declarations-init.ly" Index: lilypond/ly/italiano.ly diff -u lilypond/ly/italiano.ly:1.35 lilypond/ly/italiano.ly:1.36 --- lilypond/ly/italiano.ly:1.35 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/italiano.ly Fri Jul 8 17:53:41 2005 @@ -86,6 +86,6 @@ pitchnames = \pitchnamesItaliano -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/midi-init.ly diff -u lilypond/ly/midi-init.ly:1.21 lilypond/ly/midi-init.ly:1.22 --- lilypond/ly/midi-init.ly:1.21 Sat Oct 30 20:55:16 2004 +++ lilypond/ly/midi-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" \midi { \tempo 4=60 \include "performer-init.ly" Index: lilypond/ly/music-functions-init.ly diff -u lilypond/ly/music-functions-init.ly:1.26 lilypond/ly/music-functions-init.ly:1.27 --- lilypond/ly/music-functions-init.ly:1.26 Tue Jun 21 21:43:35 2005 +++ lilypond/ly/music-functions-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,6 @@ -\version "2.4.0" +% -*-Scheme-*- + +\version "2.6.0" applymusic = #(def-music-function (parser location func music) (procedure? ly:music?) @@ -106,6 +108,30 @@ +pitchedTrill = +#(def-music-function + (parser location main-note secondary-note) + (ly:music? ly:music?) + (let* + ((get-notes (lambda (ev-chord) + (filter + (lambda (m) (eq? 'NoteEvent (ly:music-property m 'name))) + (ly:music-property ev-chord 'elements)))) + (sec-note-events (get-notes secondary-note)) + (trill-events (filter (lambda (m) (memq 'trill-span-event (ly:music-property m 'types))) + (ly:music-property main-note 'elements))) + + (trill-pitch + (if (pair? sec-note-events) + (ly:music-property (car sec-note-events) 'pitch) + ))) + + (if (ly:pitch? trill-pitch) + (for-each (lambda (m) (ly:music-set-property! m 'trill-pitch trill-pitch)) + trill-events) + (ly:warning (_ "Second argument of \\pitchedTrill should be single note."))) + + main-note)) killCues = #(def-music-function Index: lilypond/ly/nederlands.ly diff -u lilypond/ly/nederlands.ly:1.35 lilypond/ly/nederlands.ly:1.36 --- lilypond/ly/nederlands.ly:1.35 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/nederlands.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" %{ common dutch names for notes. es means flat, is means sharp Index: lilypond/ly/norsk.ly diff -u lilypond/ly/norsk.ly:1.33 lilypond/ly/norsk.ly:1.34 --- lilypond/ly/norsk.ly:1.33 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/norsk.ly Fri Jul 8 17:53:41 2005 @@ -105,6 +105,6 @@ pitchnames =\pitchnamesNorsk -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/paper-defaults.ly diff -u lilypond/ly/paper-defaults.ly:1.13 lilypond/ly/paper-defaults.ly:1.14 --- lilypond/ly/paper-defaults.ly:1.13 Wed Mar 9 00:01:17 2005 +++ lilypond/ly/paper-defaults.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" \paper { Index: lilypond/ly/params-init.ly diff -u lilypond/ly/params-init.ly:1.48 lilypond/ly/params-init.ly:1.49 --- lilypond/ly/params-init.ly:1.48 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/params-init.ly Fri Jul 8 17:53:41 2005 @@ -1,2 +1,2 @@ -\version "2.4.0" +\version "2.6.0" Index: lilypond/ly/performer-init.ly diff -u lilypond/ly/performer-init.ly:1.48 lilypond/ly/performer-init.ly:1.49 --- lilypond/ly/performer-init.ly:1.48 Wed Apr 20 11:15:21 2005 +++ lilypond/ly/performer-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" % % setup for Request->Element conversion. Guru-only Index: lilypond/ly/portugues.ly diff -u lilypond/ly/portugues.ly:1.6 lilypond/ly/portugues.ly:1.7 --- lilypond/ly/portugues.ly:1.6 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/portugues.ly Fri Jul 8 17:53:41 2005 @@ -8,7 +8,7 @@ %} -% contributed by Pedro Kröger <<[EMAIL PROTECTED]>> +% contributed by Pedro Kröger <<[EMAIL PROTECTED]>> pitchnamesPortuguese = #`( @@ -86,6 +86,6 @@ pitchnames = \pitchnamesPortuguese -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/property-init.ly diff -u lilypond/ly/property-init.ly:1.76 lilypond/ly/property-init.ly:1.77 --- lilypond/ly/property-init.ly:1.76 Thu Jun 9 23:07:02 2005 +++ lilypond/ly/property-init.ly Fri Jul 8 17:53:41 2005 @@ -1,6 +1,6 @@ % property-init.ly -\version "2.4.0" +\version "2.6.0" stemUp = \override Stem #'direction = #1 stemDown = \override Stem #'direction = #-1 Index: lilypond/ly/scale-definitions-init.ly diff -u lilypond/ly/scale-definitions-init.ly:1.22 lilypond/ly/scale-definitions-init.ly:1.23 --- lilypond/ly/scale-definitions-init.ly:1.22 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/scale-definitions-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" major = #`( Index: lilypond/ly/script-init.ly diff -u lilypond/ly/script-init.ly:1.34 lilypond/ly/script-init.ly:1.35 --- lilypond/ly/script-init.ly:1.34 Wed Dec 1 12:06:32 2004 +++ lilypond/ly/script-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" % code char abbreviations Index: lilypond/ly/spanners-init.ly diff -u lilypond/ly/spanners-init.ly:1.41 lilypond/ly/spanners-init.ly:1.42 --- lilypond/ly/spanners-init.ly:1.41 Fri Jun 10 10:58:50 2005 +++ lilypond/ly/spanners-init.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" +\version "2.6.0" startGroup = #(make-span-event 'NoteGroupingEvent START) stopGroup = #(make-span-event 'NoteGroupingEvent STOP) Index: lilypond/ly/suomi.ly diff -u lilypond/ly/suomi.ly:1.21 lilypond/ly/suomi.ly:1.22 --- lilypond/ly/suomi.ly:1.21 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/suomi.ly Fri Jul 8 17:53:41 2005 @@ -48,6 +48,6 @@ pitchnames = \pitchnamesSuomi -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/svenska.ly diff -u lilypond/ly/svenska.ly:1.33 lilypond/ly/svenska.ly:1.34 --- lilypond/ly/svenska.ly:1.33 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/svenska.ly Fri Jul 8 17:53:41 2005 @@ -42,6 +42,6 @@ ) pitchnames = \pitchnamesSvenska -\version "2.4.0" +\version "2.6.0" #(ly:parser-set-note-names parser pitchnames) Index: lilypond/ly/vlaams.ly diff -u lilypond/ly/vlaams.ly:1.5 lilypond/ly/vlaams.ly:1.6 --- lilypond/ly/vlaams.ly:1.5 Sat Oct 30 20:55:17 2004 +++ lilypond/ly/vlaams.ly Fri Jul 8 17:53:41 2005 @@ -1,4 +1,4 @@ -\version "2.4.0" %hier stond 2.1.36, mocht ik dat wel veranderen? +\version "2.6.0" %hier stond 2.1.36, mocht ik dat wel veranderen? %{ Index: lilypond/scm/define-grobs.scm diff -u lilypond/scm/define-grobs.scm:1.206 lilypond/scm/define-grobs.scm:1.207 --- lilypond/scm/define-grobs.scm:1.206 Tue Jun 21 23:58:19 2005 +++ lilypond/scm/define-grobs.scm Fri Jul 8 17:53:41 2005 @@ -12,6 +12,9 @@ ;;;; WARNING: don't use anonymous functions for initialization. ;; TODO: junk the meta field in favor of something more compact? + +;;; todo:: reorder sensibly. + (define-public all-grob-descriptions `( (Accidental @@ -78,7 +81,6 @@ (AmbitusNoteHead . ( (duration-log . 2) - (style . default) (print-function . ,Note_head::print) (glyph-name-procedure . ,find-notehead-symbol) (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) @@ -318,6 +320,7 @@ (meta . ((interfaces . (cluster-interface spanner-interface)))) )) + (ChordName . ( (print-function . ,Text_interface::print) @@ -330,6 +333,24 @@ item-interface)))) )) + (CombineTextScript + . ( + (print-function . ,Text_interface::print) + (no-spacing-rods . #t) + (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (direction . 1) + (padding . 0.5) + (staff-padding . 0.5) + (script-priority . 200) + ;; todo: add X self alignment? + (baseline-skip . 2) + (font-series . bold) + (meta . ((interfaces . (text-script-interface + text-interface side-position-interface + font-interface item-interface )))) + )) + (Custos . ( (break-align-symbol . custos) @@ -427,28 +448,6 @@ (meta . ((interfaces . (dynamic-interface axis-group-interface side-position-interface spanner-interface)))))) - (LeftEdge - . ( - (break-align-symbol . left-edge) - (X-extent . (0 . 0)) - (breakable . #t) - (break-visibility . ,center-invisible) - (space-alist . ( - (custos . (extra-space . 0.0)) - (ambitus . (extra-space . 2.0)) - (time-signature . (extra-space . 0.0)) - (staff-bar . (extra-space . 0.0)) - (breathing-sign . (minimum-space . 0.0)) - (clef . (extra-space . 0.8)) - (first-note . (fixed-space . 1.0)) - (right-edge . (extra-space . 0.0)) - (key-signature . (extra-space . 0.0)) - (key-cancellation . (extra-space . 0.0)) - - )) - (meta . ((interfaces . (break-aligned-interface item-interface )))) - )) - (Fingering . ( (print-function . ,Text_interface::print) @@ -466,22 +465,6 @@ side-position-interface self-alignment-interface item-interface)))) )) - (StringNumber - . ( - (print-function . ,print-circled-text-callback) - (padding . 0.5) - (staff-padding . 0.5) - (self-alignment-X . 0) - (self-alignment-Y . 0) - (script-priority . 100) - (font-encoding . fetaNumber) - (font-size . -5) ; don't overlap when next to heads. - (meta . ((interfaces . (string-number-interface - font-interface text-script-interface text-interface - side-position-interface self-alignment-interface - item-interface)))) - )) - (Glissando . ( (style . line) @@ -565,23 +548,6 @@ break-aligned-interface item-interface )))) )) - (VocalName - . ( - (breakable . #t) - (Y-offset-callbacks . (,Side_position_interface::aligned_on_support_refpoints)) - (direction . 0) - (space-alist . ((left-edge . (extra-space . 1.0)) - )) - (break-align-symbol . instrument-name) - (print-function . ,Text_interface::print) - (break-align-symbol . clef) - (break-visibility . ,begin-of-line-visible) - (baseline-skip . 2) - (meta . ((interfaces . (font-interface - self-alignment-interface - side-position-interface text-interface - break-aligned-interface item-interface )))) - )) (KeyCancellation . ( (print-function . ,Key_signature_interface::print) @@ -630,6 +596,28 @@ (meta . ((interfaces . (spanner-interface ledger-line-interface)))) )) + (LeftEdge + . ( + (break-align-symbol . left-edge) + (X-extent . (0 . 0)) + (breakable . #t) + (break-visibility . ,center-invisible) + (space-alist . ( + (custos . (extra-space . 0.0)) + (ambitus . (extra-space . 2.0)) + (time-signature . (extra-space . 0.0)) + (staff-bar . (extra-space . 0.0)) + (breathing-sign . (minimum-space . 0.0)) + (clef . (extra-space . 0.8)) + (first-note . (fixed-space . 1.0)) + (right-edge . (extra-space . 0.0)) + (key-signature . (extra-space . 0.0)) + (key-cancellation . (extra-space . 0.0)) + + )) + (meta . ((interfaces . (break-aligned-interface item-interface )))) + )) + (LigatureBracket . ( (ligature-primitive-callback . ,Note_head::print) @@ -692,23 +680,6 @@ (meta . ((interfaces . (mensural-ligature-interface font-interface)))) )) - (RehearsalMark - . ( - (print-function . ,Text_interface::print) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (after-line-breaking-callback . ,shift-right-at-line-begin) - (self-alignment-X . 0) - (direction . 1) - (breakable . #t) - (font-size . 2) - (baseline-skip . 2) - (break-visibility . ,end-of-line-invisible) - (padding . 0.8) - (meta . ((interfaces . (text-interface - side-position-interface font-interface mark-interface - self-alignment-interface item-interface )))) - )) (MetronomeMark . ( (print-function . ,Text_interface::print) @@ -794,7 +765,6 @@ (NoteHead . ( - (style . default) (print-function . ,Note_head::print) (ligature-primitive-callback . ,Note_head::print) (glyph-name-procedure . ,find-notehead-symbol) @@ -817,17 +787,6 @@ (meta . ((interfaces . (spacing-interface note-spacing-interface item-interface )))) )) - (VoiceFollower - . ( - (style . line) - (gap . 0.5) - (breakable . #t) - (X-extent-callback . #f) - (Y-extent-callback . #f) - (print-function . ,Line_spanner::print) - (after-line-breaking-callback . ,Line_spanner::after_line_breaking) - (meta . ((interfaces . (line-spanner-interface line-interface spanner-interface)))) - )) (NoteName . ( @@ -853,6 +812,23 @@ (meta . ((interfaces . (text-interface self-alignment-interface side-position-interface font-interface item-interface )))) )) + (OttavaBracket + . ( + (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (print-function . ,Ottava_bracket::print) + (font-shape . italic) + (shorten-pair . (0.0 . -0.6)) + (staff-padding . 1.0) + (padding . 0.5) + (minimum-length . 1.0) + (dash-fraction . 0.3) + (edge-height . (0 . 1.2)) + (direction . 1) + (meta . ((interfaces . (ottava-bracket-interface + line-interface side-position-interface + font-interface text-interface spanner-interface)))) + )) + (PaperColumn . ( (axes . (0)) @@ -914,6 +890,24 @@ piano-pedal-interface piano-pedal-bracket-interface spanner-interface)))) )) + (RehearsalMark + . ( + (print-function . ,Text_interface::print) + (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (after-line-breaking-callback . ,shift-right-at-line-begin) + (self-alignment-X . 0) + (direction . 1) + (breakable . #t) + (font-size . 2) + (baseline-skip . 2) + (break-visibility . ,end-of-line-invisible) + (padding . 0.8) + (meta . ((interfaces . (text-interface + side-position-interface font-interface mark-interface + self-alignment-interface item-interface )))) + )) + (RemoveEmptyVerticalGroup . ( @@ -978,6 +972,20 @@ (meta . ((interfaces . (script-column-interface item-interface )))) )) + + (SeparationItem + . ( + (X-extent-callback . #f) + (Y-extent-callback . #f) + (meta . ((interfaces . (spacing-interface separation-item-interface item-interface )))) + )) + + (SeparatingGroupSpanner + . ( + (spacing-procedure . ,Separating_group_spanner::set_spacing_rods) + (meta . ((interfaces . (only-prebreak-interface spacing-interface separation-spanner-interface spanner-interface)))) + )) + (Slur . ((slur-details . ,default-slur-details) (print-function . ,Slur::print) @@ -1035,6 +1043,22 @@ stanza-number-interface text-interface font-interface item-interface )))) )) + (StringNumber + . ( + (print-function . ,print-circled-text-callback) + (padding . 0.5) + (staff-padding . 0.5) + (self-alignment-X . 0) + (self-alignment-Y . 0) + (script-priority . 100) + (font-encoding . fetaNumber) + (font-size . -5) ; don't overlap when next to heads. + (meta . ((interfaces . (string-number-interface + font-interface text-script-interface text-interface + side-position-interface self-alignment-interface + item-interface)))) + )) + (StaffSpacing . ( (breakable . #t) @@ -1137,19 +1161,6 @@ (meta . ((interfaces . (stem-tremolo-interface item-interface )))) )) - (SeparationItem - . ( - (X-extent-callback . #f) - (Y-extent-callback . #f) - (meta . ((interfaces . (spacing-interface separation-item-interface item-interface )))) - )) - - (SeparatingGroupSpanner - . ( - (spacing-procedure . ,Separating_group_spanner::set_spacing_rods) - (meta . ((interfaces . (only-prebreak-interface spacing-interface separation-spanner-interface spanner-interface)))) - )) - (SustainPedal . ( (no-spacing-rods . #t) @@ -1217,6 +1228,21 @@ (meta . ((interfaces . (system-start-delimiter-interface spanner-interface)))) )) + + (TabNoteHead + . ( + (print-function . ,Text_interface::print) + (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (stem-attachment-function . ,tablature-stem-attachment-function) + (font-series . bold) + (meta . ((interfaces + . (rhythmic-head-interface + font-interface + note-head-interface staff-symbol-referencer-interface + text-interface item-interface )))) + )) + + (TextScript . ( (print-function . ,Text_interface::print) @@ -1233,21 +1259,7 @@ text-interface side-position-interface font-interface item-interface )))) )) - (CombineTextScript - . ( - (print-function . ,Text_interface::print) - (no-spacing-rods . #t) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) - (direction . 1) - (padding . 0.5) - (staff-padding . 0.5) - (script-priority . 200) - ;; todo: add X self alignment? - (baseline-skip . 2) - (font-series . bold) - (meta . ((interfaces . (text-script-interface text-interface side-position-interface font-interface item-interface )))) - )) + (TextSpanner . ( (print-function . ,Text_spanner::print) @@ -1259,51 +1271,8 @@ (direction . 1) (meta . ((interfaces . (text-spanner-interface side-position-interface font-interface spanner-interface)))) )) - (TrillSpanner - . ( - (print-function . ,Dynamic_text_spanner::print) - (edge-text . ,(cons (make-musicglyph-markup "scripts.trill") - "")) - (style . trill) - (staff-padding . 1.0) - (padding . 0.5) - (direction . 1) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (meta . ((interfaces . (text-spanner-interface side-position-interface font-interface spanner-interface)))) - )) - - (OttavaBracket - . ( - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (print-function . ,Ottava_bracket::print) - (font-shape . italic) - (shorten-pair . (0.0 . -0.6)) - (staff-padding . 1.0) - (padding . 0.5) - (minimum-length . 1.0) - (dash-fraction . 0.3) - (edge-height . (0 . 1.2)) - (direction . 1) - (meta . ((interfaces . (ottava-bracket-interface - line-interface side-position-interface - font-interface text-interface spanner-interface)))) - )) - - (TabNoteHead - . ( - (style . default) - (print-function . ,Text_interface::print) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) - (stem-attachment-function . ,tablature-stem-attachment-function) - (font-series . bold) - (meta . ((interfaces - . (rhythmic-head-interface - font-interface - note-head-interface staff-symbol-referencer-interface - text-interface item-interface )))) - )) - + (Tie . ( (print-function . ,Tie::print) @@ -1343,6 +1312,48 @@ (meta . ((interfaces . (time-signature-interface break-aligned-interface font-interface item-interface )))) )) + + (TrillSpanner + . ( + (print-function . ,Dynamic_text_spanner::print) + (edge-text . ,(cons (make-musicglyph-markup "scripts.trill") + "")) + (style . trill) + (staff-padding . 1.0) + (padding . 0.5) + (direction . 1) + (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (meta . ((interfaces . (text-spanner-interface side-position-interface font-interface spanner-interface)))) + )) + + (TrillPitchAccidental + . ((X-offset-callbacks . (,Side_position_interface::aligned_side)) + (padding . 0.2) + (direction . ,LEFT) + (font-size . -4) + (print-function . ,Accidental_interface::print) + (meta . ((interfaces . (item-interface font-interface)))) + )) + + (TrillPitchGroup + . ((X-offset-callbacks . (,Side_position_interface::aligned_side)) + (axes . (,X)) + (font-size . -4) + (print-function . ,parenthesize-elements) + (direction . ,RIGHT) + (padding . 0.3) + (meta . ((interfaces . (font-interface item-interface axis-group-interface)))) + )) + + (TrillPitchHead + . ((print-function . ,Note_head::print) + (duration-log . 2) + (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (font-size . -4) + (meta . ((interfaces . (item-interface font-interface ledgered-interface staff-symbol-referencer-interface)))) + )) + + (TupletBracket . ( (padding . 1.1) @@ -1356,7 +1367,9 @@ ; (font-series . bold) (font-size . -2) - (meta . ((interfaces . (text-interface line-interface tuplet-bracket-interface font-interface spanner-interface)))) + (meta . ((interfaces . (text-interface line-interface + tuplet-bracket-interface + font-interface spanner-interface)))) )) (UnaCordaPedal @@ -1392,21 +1405,6 @@ (meta . ((interfaces . (vaticana-ligature-interface font-interface)))) )) - (VoltaBracket - . ( - (print-function . ,Volta_bracket_interface::print) - (direction . 1) - (padding . 1) - (font-encoding . fetaNumber) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (thickness . 1.6) ;; linethickness - (height . 2.0) ;; staffspace; - (minimum-space . 5) - (font-size . -4) - (meta . ((interfaces . (volta-bracket-interface - line-interface text-interface - side-position-interface font-interface spanner-interface)))) - )) (VerticalAlignment . ( @@ -1425,6 +1423,53 @@ (meta . ((interfaces . (axis-group-interface vertically-spaceable-interface spanner-interface)))) + )) + + (VocalName + . ( + (breakable . #t) + (Y-offset-callbacks . (,Side_position_interface::aligned_on_support_refpoints)) + (direction . 0) + (space-alist . ((left-edge . (extra-space . 1.0)) + )) + (break-align-symbol . instrument-name) + (print-function . ,Text_interface::print) + (break-align-symbol . clef) + (break-visibility . ,begin-of-line-visible) + (baseline-skip . 2) + (meta . ((interfaces . (font-interface + self-alignment-interface + side-position-interface text-interface + break-aligned-interface item-interface )))) + )) + + (VoltaBracket + . ( + (print-function . ,Volta_bracket_interface::print) + (direction . 1) + (padding . 1) + (font-encoding . fetaNumber) + (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (thickness . 1.6) ;; linethickness + (height . 2.0) ;; staffspace; + (minimum-space . 5) + (font-size . -4) + (meta . ((interfaces . (volta-bracket-interface + line-interface text-interface + side-position-interface font-interface spanner-interface)))) + )) + + + (VoiceFollower + . ( + (style . line) + (gap . 0.5) + (breakable . #t) + (X-extent-callback . #f) + (Y-extent-callback . #f) + (print-function . ,Line_spanner::print) + (after-line-breaking-callback . ,Line_spanner::after_line_breaking) + (meta . ((interfaces . (line-spanner-interface line-interface spanner-interface)))) )) )) Index: lilypond/scm/define-markup-commands.scm diff -u lilypond/scm/define-markup-commands.scm:1.98 lilypond/scm/define-markup-commands.scm:1.99 --- lilypond/scm/define-markup-commands.scm:1.98 Wed Jun 29 22:01:45 2005 +++ lilypond/scm/define-markup-commands.scm Fri Jul 8 17:53:41 2005 @@ -90,7 +90,6 @@ (cons (+ (- half) (car yext)) (+ half (cdr yext)))))) - (def-markup-command (box layout props arg) (markup?) "Draw a box round @var{arg}. Looks at @code{thickness}, @code{box-padding} and @code{font-size} properties to determine line @@ -102,8 +101,6 @@ (m (interpret-markup layout props arg))) (box-stencil m th pad))) - - (def-markup-command (filled-box layout props xext yext blot) (number-pair? number-pair? number?) "Draw a box with rounded corners of dimensions @var{xext} and @var{yext}." @@ -125,6 +122,19 @@ (ly:stencil-add white stil))) +(def-markup-command (pad-markup layout props padding arg) (number? markup?) + "Add space around a markup object." + + (let* + ((stil (interpret-markup layout props arg)) + (xext (ly:stencil-extent stil X)) + (yext (ly:stencil-extent stil Y))) + + (ly:make-stencil + (ly:stencil-expr stil) + (interval-widen xext padding) + (interval-widen yext padding)))) + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; space ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -159,7 +169,6 @@ (def-markup-command (stencil layout props stil) (ly:stencil?) "Stencil as markup" stil) - (define bbox-regexp (make-regexp "%%BoundingBox: ([0-9-]+) ([0-9-]+) ([0-9-]+) ([0-9-]+)")) Index: lilypond/scm/define-music-properties.scm diff -u lilypond/scm/define-music-properties.scm:1.37 lilypond/scm/define-music-properties.scm:1.38 --- lilypond/scm/define-music-properties.scm:1.37 Wed May 25 10:22:34 2005 +++ lilypond/scm/define-music-properties.scm Fri Jul 8 17:53:41 2005 @@ -43,11 +43,6 @@ (digit ,integer? "digit for fingering") (direction ,ly:dir? "Print this up or down?") (drum-type ,symbol? "Which percussion instrument to play this note on.") - (tags ,list? "List of symbols that for denoting extra details, -e.g. @code{\\tag #'part ...} could tag a piece of music as only being active in a part.") - (text-type ,symbol? "Particular type of text script (e.g. finger, dynamic).") - (tempo-unit ,ly:duration? "The unit for the metronome count.") - (tonic ,ly:pitch? "Base of the scale") (error-found ,boolean? "If true, a parsing error was found in this expression") (element ,ly:music? "The single child of a Music_wrapper music object, or the body of a repeat.") (elements ,ly:music-list? "A list of elements for sequential of simultaneous music, or the alternatives of repeated music. ") @@ -65,7 +60,7 @@ (numerator ,integer? "numerator of a time signature") (once ,boolean? "Apply this operation only during one time step?") (octavation ,integer? - "This pitch was octavated by how many octaves? + "This pitch was octavated by how many octaves? For chord inversions, this is negative.") (origin ,ly:input-location? "where was this piece of music defined?") (page-penalty ,number? "Penalty for page break hint.") @@ -93,8 +88,15 @@ initializer in @file{define-music-types.scm}.") (string-number ,integer? "The number of the string in a StringNumberEvent") (symbol ,symbol? "Grob name to perform an override/revert on.") + (tags ,list? "List of symbols that for denoting extra details, +e.g. @code{\\tag #'part ...} could tag a piece of music as only being active in a part.") + (text-type ,symbol? "Particular type of text script (e.g. finger, dynamic).") + (text ,markup? "markup expression to be printed") + (tempo-unit ,ly:duration? "The unit for the metronome count.") + (tonic ,ly:pitch? "Base of the scale") (tremolo-type ,integer? "") + (trill-pitch ,ly:pitch? "Pitch of other note of the trill.") (type ,symbol? "The type of this music object. Determines iteration in some cases.") (types ,list? "The types of this music object; determines by what engraver this music expression is processed.") Index: lilypond/scm/output-lib.scm diff -u lilypond/scm/output-lib.scm:1.80 lilypond/scm/output-lib.scm:1.81 --- lilypond/scm/output-lib.scm:1.80 Tue Jun 21 23:58:19 2005 +++ lilypond/scm/output-lib.scm Fri Jul 8 17:53:41 2005 @@ -282,3 +282,20 @@ (define-public darkcyan '(0.5 0.5 0.0)) (define-public darkmagenta '(0.5 0.0 0.5)) (define-public darkyellow '(0.0 0.5 0.5)) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Pitch Trill Heads + +(define (parenthesize-elements grob) + (let* + ((elts (ly:grob-property grob 'elements)) + (x-ext (ly:relative-group-extent elts grob X)) + (font (ly:grob-default-font grob)) + (lp (ly:font-get-glyph font "accidentals.leftparen")) + (rp (ly:font-get-glyph font "accidentals.rightparen")) + (padding 0.1)) + + (ly:stencil-add + (ly:stencil-translate-axis lp (- (car x-ext) padding) X) + (ly:stencil-translate-axis rp (+ (cdr x-ext) padding) X)) + )) Index: lilypond/scm/safe-lily.scm diff -u lilypond/scm/safe-lily.scm:1.30 lilypond/scm/safe-lily.scm:1.31 --- lilypond/scm/safe-lily.scm:1.30 Wed Jun 8 13:07:11 2005 +++ lilypond/scm/safe-lily.scm Fri Jul 8 17:53:41 2005 @@ -43,10 +43,10 @@ ly:format-output ly:get-all-function-documentation ly:get-all-translators - ly:get-default-font ly:get-glyph ly:get-option ly:grob-alist-chain + ly:grob-default-font ly:grob-extent ly:grob-original ly:grob-layout Index: lilypond/scm/translation-functions.scm diff -u lilypond/scm/translation-functions.scm:1.11 lilypond/scm/translation-functions.scm:1.12 --- lilypond/scm/translation-functions.scm:1.11 Fri Feb 4 13:48:10 2005 +++ lilypond/scm/translation-functions.scm Fri Jul 8 17:53:41 2005 @@ -52,3 +52,22 @@ (define-public (format-mark-box-barnumbers mark context) (make-bold-markup (make-box-markup (number->string (ly:context-property context 'currentBarNumber))))) + +(define-public (format-pitched-trill-head pitch do-print-accidental context) + (make-override-markup + '(word-space . 0.0) + (make-line-markup + (append + (list + (make-musicglyph-markup "accidentals.leftparen")) + (if do-print-accidental + (list (make-musicglyph-markup + (string-append "accidentals." + (number->string (ly:pitch-alteration pitch)))) + (make-hspace-markup 0.2)) + '()) + + (list + (make-musicglyph-markup "noteheads.s2") + (make-musicglyph-markup "accidentals.rightparen")) + )))) _______________________________________________ Lilypond-cvs mailing list Lilypond-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-cvs