X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdefine-grobs.scm;h=6a871d11cd55075aac9a5b51599f6a7d7de43647;hb=4248f11e51e95dcf14ff67cda43be64c0ea53871;hp=4dedcc156e46a06d811b987a0cf3ff836b58fc60;hpb=31a6650e2b2a5c1cae3237ee47b80cd43d084d53;p=lilypond.git diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index 4dedcc156e..6a871d11cd 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -2,7 +2,7 @@ ;;;; ;;;; source file of the GNU LilyPond music typesetter ;;;; -;;;; (c) 1998--2005 Han-Wen Nienhuys +;;;; (c) 1998--2006 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen ;;;; distances are given in linethickness (thicknesses) and @@ -29,22 +29,23 @@ (meta . ((class . Item) (interfaces . (accidental-interface font-interface)))))) - + (AccidentalSuggestion . ( - (stencil . ,Accidental_interface::print) - - (X-offset-callbacks . (,Self_alignment_interface::centered_on_parent - ,Self_alignment_interface::aligned_on_self)) + (X-offset . ,(ly:make-simple-closure + `(,+ + ,(ly:make-simple-closure (list Self_alignment_interface::centered_on_x_parent)) + ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))))) (self-alignment-X . ,CENTER) (cautionary . #t) (cautionary-style . smaller) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) (cautionary-style . parentheses) (direction . ,UP) (staff-padding . 0.25) (script-priority . 0) + (side-axis . ,X) (meta . ((class . Item) (interfaces . (side-position-interface script-interface @@ -67,7 +68,6 @@ (Ambitus . ( (axes . (0 1)) - (X-extent . ,Axis_group_interface::width) (X-extent . ,Axis_group_interface::height) @@ -92,7 +92,7 @@ (join-heads . #t) (thickness . 2) - (X-offset-callbacks . (,Self_alignment_interface::centered_on_parent)) + (X-offset . ,Self_alignment_interface::centered_on_x_parent) (meta . ((class . Item) (interfaces . (ambitus-interface @@ -102,12 +102,13 @@ . ( (font-family . music) (padding . 0.5) - (X-offset-callbacks . (,Side_position_interface::aligned_side)) - (direction . -1) + (X-offset . ,Side_position_interface::x_aligned_side) + (direction . ,LEFT) (cautionary-style . parentheses) (stencil . ,Accidental_interface::print) (after-line-breaking . ,Accidental_interface::after_line_breaking) + (side-axis . ,X) (meta . ((class . Item) (interfaces . (item-interface @@ -123,7 +124,7 @@ (stencil . ,Note_head::print) (glyph-name . ,note-head::calc-glyph-name) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (Y-offset . ,Staff_symbol_referencer::callback) (meta . ((class . Item) (interfaces . (font-interface note-head-interface @@ -133,15 +134,13 @@ ledgered-interface)))))) (Arpeggio - . ( - - (X-extent . ,Arpeggio::width) + . ((X-extent . ,Arpeggio::width) (stencil . ,Arpeggio::print) - - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) - (X-offset-callbacks . (,Side_position_interface::aligned_side)) - (direction . -1) + (Y-offset . ,Staff_symbol_referencer::callback) + (X-offset . ,Side_position_interface::x_aligned_side) + (direction . ,LEFT) (padding . 0.5) + (side-axis . ,X) (staff-position . 0.0) (meta . ((class . Item) (interfaces . (arpeggio-interface @@ -187,17 +186,16 @@ (BarNumber . ( - (stencil . ,Text_interface::print) - ; (breakable . #t) (break-visibility . ,begin-of-line-visible) (padding . 1.0) - (direction . 1) + (direction . ,UP) (font-family . roman) (font-size . -2) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) (self-alignment-X . 1) (meta . @@ -210,26 +208,6 @@ )) (BassFigure - . ( - - (stencil . ,Text_interface::print) - - (Y-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) - (direction . 1) - (font-family . number) - - ;; We must do this, other BFs in - ;; layout16 become too small. - (font-size . -4) - (kern . 0.2) - (meta . ((class . Item) - (interfaces . (text-interface - rhythmic-grob-interface - bass-figure-interface - self-alignment-interface - font-interface)))))) - - (NewBassFigure . ( ; (stencil . ,Text_interface::print) @@ -253,7 +231,7 @@ (stencil . ,Figured_bass_continuation::print) - (Y-offset-callbacks . (,Figured_bass_continuation::center_on_figures)) + (Y-offset . ,Figured_bass_continuation::center_on_figures) (meta . ((class . Spanner) (interfaces . (figured-bass-continuation-interface)) )))) @@ -285,20 +263,27 @@ ;; todo: clean this up a bit: the list is getting ;; rather long. (gap . 0.8) - (position-callbacks . (,Beam::least_squares - ,Beam::check_concave - ,Beam::slope_damping - ,Beam::shift_region_to_valid - ,Beam::quanting)) - - (positions . ,Beam::calc_positions) + (positions . ,(ly:make-simple-closure + (ly:make-simple-closure + (list chain-grob-member-functions + `(,cons 0 0) + Beam::calc_least_squares_positions + Beam::slope_damping + Beam::shift_region_to_valid + Beam::quanting + )))) + + ;; this is a hack to set stem lengths, if positions is set. + (quantized-positions . ,Beam::set_stem_lengths) + (concaveness . ,Beam::calc_concaveness) (direction . ,Beam::calc_direction) + (shorten . ,Beam::calc_stem_shorten) + (beaming . ,Beam::calc_beaming) (stencil . ,Beam::print) - ;; TODO: should be in SLT. (thickness . 0.48) ; in staff-space - (neutral-direction . -1) + (neutral-direction . ,DOWN) ;; Whe have some unreferenced problems here. ;; @@ -390,6 +375,7 @@ (ambitus . (extra-space . 2.0)) (custos . (minimum-space . 1.0)) (key-signature . (minimum-space . 1.5)) + (time-signature . (minimum-space . 1.5)) (staff-bar . (minimum-space . 1.5)) (clef . (minimum-space . 2.0)) (first-note . (fixed-space . 1.0)) ;huh? @@ -398,7 +384,7 @@ (stencil . ,Text_interface::print) (text . ,(make-musicglyph-markup "scripts.rcomma")) - (Y-offset-callbacks . (,Breathing_sign::offset_callback)) + (Y-offset . ,Breathing_sign::offset_callback) (break-visibility . ,begin-of-line-invisible) (meta . ((class . Item) (interfaces . (break-aligned-interface @@ -418,13 +404,13 @@ (break-visibility . ,begin-of-line-visible) (space-alist . ((ambitus . (extra-space . 2.0)) (staff-bar . (extra-space . 0.7)) - (key-cancellation . (minimum-space . 4.0)) - (key-signature . (minimum-space . 4.0)) + (key-cancellation . (minimum-space . 3.5)) + (key-signature . (minimum-space . 3.5)) (time-signature . (minimum-space . 4.2)) (first-note . (minimum-fixed-space . 5.0)) (next-note . (extra-space . 0.5)) (right-edge . (extra-space . 0.5)))) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (Y-offset . ,Staff_symbol_referencer::callback) (meta . ((class . Item) (interfaces . (clef-interface staff-symbol-referencer-interface @@ -474,14 +460,15 @@ (stencil . ,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) + (Y-offset . ,Side_position_interface::y_aligned_side) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) + (direction . ,UP) (padding . 0.5) (staff-padding . 0.5) (script-priority . 200) ;; todo: add X self alignment? (baseline-skip . 2) + (side-axis . ,Y) (font-series . bold) (meta . ((class . Item) (interfaces . (text-script-interface @@ -498,8 +485,8 @@ (break-visibility . ,end-of-line-visible) (style . vaticana) - (neutral-direction . -1) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (neutral-direction . ,DOWN) + (Y-offset . ,Staff_symbol_referencer::callback) (space-alist . ( (first-note . (minimum-fixed-space . 0.0)) (right-edge . (extra-space . 0.1)))) @@ -518,7 +505,7 @@ (positioning-done . ,Dot_column::calc_positioning_done) (X-extent . ,Axis_group_interface::width) - (X-offset-callbacks . (,Dot_column::side_position)) + (X-offset . ,Dot_column::side_position) (meta . ((class . Item) (interfaces . (dot-column-interface axis-group-interface)))))) @@ -536,9 +523,7 @@ (DoublePercentRepeat . ( - (stencil . ,Percent_repeat_item_interface::double_percent) - (breakable . #t) (slope . 1.0) (font-encoding . fetaMusic) @@ -555,16 +540,16 @@ . ( (stencil . ,Text_interface::print) - - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self - ,Self_alignment_interface::centered_on_other_axis_parent)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset . ,(ly:make-simple-closure `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::centered_on_y_parent)) + ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))))) + (Y-offset . ,Side_position_interface::y_aligned_side) (font-encoding . fetaNumber) (self-alignment-X . 0) (font-size . -2) - (direction . 1) + (direction . ,UP) (padding . 0.2) (staff-padding . 0.25) + (side-axis . ,Y) (meta . ((class . Item) (interfaces . (side-position-interface self-alignment-interface @@ -574,13 +559,14 @@ (DynamicLineSpanner . ( (axes . (1)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) (staff-padding . 0.1) (padding . 0.6) (avoid-slur . outside) (slur-padding . 0.3) (minimum-space . 1.2) - (direction . -1) + (direction . ,DOWN) + (side-axis . ,Y) (Y-extent . ,Axis_group_interface::height) (X-extent . ,Axis_group_interface::width) @@ -600,13 +586,14 @@ (stencil . ,Text_interface::print) (direction . ,Script_interface::calc_direction) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) (self-alignment-X . 0) - (Y-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (Y-offset . ,Self_alignment_interface::y_aligned_on_self) (self-alignment-Y . 0) (font-series . bold) (font-encoding . fetaDynamic) (font-shape . italic) + (avoid-slur . around) (no-spacing-rods . #t) (script-priority . 100) (meta . ((class . Item) @@ -695,8 +682,9 @@ (stencil . ,Grid_line_interface::print) (self-alignment-X . ,CENTER) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self - ,Self_alignment_interface::centered_on_parent)) + (X-offset . ,(ly:make-simple-closure + `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::centered_on_x_parent)) + ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))))) (layer . 0) (meta . ((class . Item) (interfaces . (self-alignment-interface @@ -715,7 +703,7 @@ (minimum-length . 2.0) (bound-padding . 1.0) (self-alignment-Y . 0) - (Y-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (Y-offset . ,Self_alignment_interface::y_aligned_on_self) (meta . ((class . Spanner) (interfaces . (hairpin-interface line-interface @@ -726,13 +714,12 @@ (HorizontalBracket . ( (thickness . 1.0) - (stencil . ,Horizontal_bracket::print) - - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) (padding . 0.2) (staff-padding . 0.2) - (direction . -1) + (direction . ,DOWN) + (side-axis . ,Y) (bracket-flare . (0.5 . 0.5)) (meta . ((class . Spanner) (interfaces . (horizontal-bracket-interface @@ -742,21 +729,21 @@ (InstrumentName . ( (breakable . #t) - (Y-offset-callbacks . (,Self_alignment_interface::aligned_on_self - ,Side_position_interface::aligned_on_support_refpoints)) + (Y-offset . ,(ly:make-simple-closure `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::y_aligned_on_self)) + ,(ly:make-simple-closure (list Side_position_interface::y_aligned_on_support_refpoints))))) + ;; This direction is for aligned_on_support_refpoints ;; (?) --hwn - (direction . 0) + (direction . ,CENTER) (space-alist . ( (left-edge . (extra-space . 1.0)))) (self-alignment-Y . 0) - (stencil . ,Text_interface::print) - (break-align-symbol . instrument-name) (break-visibility . ,begin-of-line-visible) (baseline-skip . 2) + (side-axis . ,X) (meta . ((class . Item) (interfaces . (font-interface self-alignment-interface @@ -775,7 +762,7 @@ (key-signature . (extra-space . 0.5)) (right-edge . (extra-space . 0.5)) (first-note . (fixed-space . 2.5)))) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (Y-offset . ,Staff_symbol_referencer::callback) (break-align-symbol . key-cancellation) (break-visibility . ,begin-of-line-invisible) (breakable . #t) @@ -790,11 +777,11 @@ (stencil . ,Key_signature_interface::print) (space-alist . ( - (time-signature . (extra-space . 1.25)) + (time-signature . (extra-space . 1.15)) (staff-bar . (extra-space . 1.1)) (right-edge . (extra-space . 0.5)) (first-note . (fixed-space . 2.5)))) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (Y-offset . ,Staff_symbol_referencer::callback) (break-align-symbol . key-signature) (break-visibility . ,begin-of-line-visible) (breakable . #t) @@ -822,9 +809,7 @@ . ( (X-extent . #f) (Y-extent . #f) - (positioning-done . ,Laissez_vibrer_tie_column::calc_positioning_done) - (meta . ((class . Item) (interfaces . (laissez-vibrer-tie-column-interface)) )) @@ -871,16 +856,14 @@ ;; ugh. A ligature bracket is totally different from ;; a tuplet bracket. - (direction . ,Tuplet_bracket::calc_direction) - (positions . ,Tuplet_bracket::calc_positions) - (stencil . ,Tuplet_bracket::print) - - (direction . 1) - (gap . 0.0) (padding . 2.0) (thickness . 1.6) (edge-height . (0.7 . 0.7)) (shorten-pair . (-0.2 . -0.2)) + (direction . ,UP) + (positions . ,Tuplet_bracket::calc_positions) + (stencil . ,Tuplet_bracket::print) + (meta . ((class . Spanner) (interfaces . (tuplet-bracket-interface line-interface)))))) @@ -892,14 +875,16 @@ (dash-period . 10.0) (length . 0.66) (minimum-length . 0.3) + (minimum-distance . 0.1) (padding . 0.07) - ; (springs-and-rods . ,Hyphen_spanner::set_spacing_rods) - + (springs-and-rods . ,Hyphen_spanner::set_spacing_rods) + (stencil . ,Hyphen_spanner::print) (Y-extent . (0 . 0)) (meta . ((class . Spanner) (interfaces . (lyric-interface + font-interface lyric-hyphen-interface spanner-interface)))))) @@ -915,12 +900,23 @@ (interfaces . (lyric-interface lyric-extender-interface)))))) + (LyricSpace + . ((minimum-distance . 0.3) + (springs-and-rods . ,Hyphen_spanner::set_spacing_rods) + (padding . 0.0) + (Y-extent . #f) + (X-extent . #f) + (meta . ((class . Spanner) + (interfaces . (spanner-interface + lyric-hyphen-interface spacing-interface)) + )) + )) (LyricText . ( (stencil . ,Text_interface::print) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_parent)) + (X-offset . ,Self_alignment_interface::aligned_on_x_parent) (self-alignment-X . 0) (word-space . 0.6) (font-series . bold-narrow) @@ -932,6 +928,28 @@ text-interface font-interface)))))) + + (MeasureGrouping + . ( + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) + + (stencil . ,Measure_grouping::print) + + (padding . 2) + (direction . ,UP) + (thickness . 1) + (height . 2.0) + (staff-padding . 3) + (meta . ((class . Spanner) + (interfaces . (side-position-interface + measure-grouping-interface)))))) + + (MelodyItem + . ( + (neutral-direction . ,DOWN) + (meta . ((class . Item) + (interfaces . (melody-spanner-interface spacing-interface)))))) (MensuralLigature . ( (thickness . 1.4) @@ -947,36 +965,22 @@ (stencil . ,Text_interface::print) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - (direction . 1) + (Y-offset . ,Side_position_interface::y_aligned_side) + (direction . ,UP) (padding . 0.8) + (side-axis . ,Y) (meta . ((class . Item) (interfaces . (text-interface side-position-interface font-interface metronome-mark-interface)))))) - (MeasureGrouping - . ( - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - - (stencil . ,Measure_grouping::print) - - (padding . 2) - (direction . 1) - (thickness . 1) - (height . 2.0) - (staff-padding . 3) - (meta . ((class . Spanner) - (interfaces . (side-position-interface - measure-grouping-interface)))))) (MultiMeasureRest . ( - (stencil . ,Multi_measure_rest::print) - - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (springs-and-rods . ,Multi_measure_rest::set_spacing_rods) + (Y-offset . ,Staff_symbol_referencer::callback) (staff-position . 0) (expand-limit . 10) (thick-thickness . 6.6) @@ -994,11 +998,14 @@ . ( (springs-and-rods . ,Multi_measure_rest::set_spacing_rods) (stencil . ,Text_interface::print) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self - ,Self_alignment_interface::centered_on_other_axis_parent)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset . ,(ly:make-simple-closure + `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self)) + ,(ly:make-simple-closure (list Self_alignment_interface::x_centered_on_y_parent))))) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) + (self-alignment-X . 0) - (direction . 1) + (direction . ,UP) (padding . 0.4) (staff-padding . 0.4) (font-encoding . fetaNumber) @@ -1010,17 +1017,16 @@ text-interface)))) )) - (MultiMeasureRestText . ( - (stencil . ,Text_interface::print) - - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self - ,Self_alignment_interface::centered_on_other_axis_parent)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset . ,(ly:make-simple-closure + `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::x_centered_on_y_parent)) + ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))))) + + (Y-offset . ,Side_position_interface::y_aligned_side) (self-alignment-X . 0) - (direction . 1) + (direction . ,UP) (padding . 0.2) (staff-padding . 0.25) (meta . ((class . Spanner) @@ -1058,8 +1064,8 @@ (stencil . ,Note_head::print) (stem-attachment . ,Note_head::calc_stem_attachment) (glyph-name . ,note-head::calc-glyph-name) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) - (X-offset-callbacks . (,Note_head::stem_x_shift)) + (Y-offset . ,Staff_symbol_referencer::callback) + (X-offset . ,Note_head::stem_x_shift) (meta . ((class . Item) (interfaces . (rhythmic-grob-interface rhythmic-head-interface @@ -1094,9 +1100,11 @@ . ( (self-alignment-X . 0) (break-visibility . ,begin-of-line-visible) - (X-offset-callbacks . (,Self_alignment_interface::centered_on_parent - ,Self_alignment_interface::aligned_on_self)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset . ,(ly:make-simple-closure + `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self)) + ,(ly:make-simple-closure (list Self_alignment_interface::centered_on_x_parent))))) + + (Y-offset . ,Side_position_interface::y_aligned_side) (stencil . ,Text_interface::print) @@ -1115,7 +1123,7 @@ (OttavaBracket . ( - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) (stencil . ,Ottava_bracket::print) @@ -1126,7 +1134,7 @@ (minimum-length . 1.0) (dash-fraction . 0.3) (edge-height . (0 . 1.2)) - (direction . 1) + (direction . ,UP) (meta . ((class . Spanner) (interfaces . (ottava-bracket-interface horizontal-bracket-interface @@ -1152,7 +1160,7 @@ spaceable-grob-interface)))))) (PhrasingSlur - . ((slur-details . ,default-slur-details) + . ((details . ,default-slur-details) (control-points . ,Slur::calc_control_points) (direction . ,Slur::calc_direction) @@ -1201,14 +1209,13 @@ percent-repeat-interface)))))) (PercentRepeatCounter . ( - (stencil . ,Text_interface::print) - - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self - ,Self_alignment_interface::centered_on_other_axis_parent)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset . ,(ly:make-simple-closure + `(,+ ,(ly:make-simple-closure (list Self_alignment_interface::x_centered_on_y_parent)) + ,(ly:make-simple-closure (list Self_alignment_interface::x_aligned_on_self))))) + (Y-offset . ,Side_position_interface::y_aligned_side) (self-alignment-X . 0) - (direction . 1) + (direction . ,UP) (padding . 0.2) (staff-padding . 0.25) (font-size . -2) @@ -1228,7 +1235,7 @@ (style . line) (bound-padding . 1.0) - (direction . -1) + (direction . ,DOWN) (bracket-flare . (0.5 . 0.5)) (edge-height . (1.0 . 1.0)) (shorten-pair . (0.0 . 0.0)) @@ -1240,16 +1247,16 @@ (RehearsalMark . ( - (stencil . ,Text_interface::print) - - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) - - (after-line-breaking . ,shift-right-at-line-begin) - + (X-offset . ,(ly:make-simple-closure + `(,+ ,(ly:make-simple-closure + `(,Self_alignment_interface::x_aligned_on_self)) + ,(ly:make-simple-closure + `(,Self_alignment_interface::centered_on_x_parent))) + )) + (Y-offset . ,Side_position_interface::y_aligned_side) (self-alignment-X . 0) - (direction . 1) + (direction . ,UP) (breakable . #t) (font-size . 2) (baseline-skip . 2) @@ -1262,40 +1269,20 @@ mark-interface self-alignment-interface)))))) - (RemoveEmptyVerticalGroup - . ( - (Y-offset-callbacks . (,Hara_kiri_group_spanner::force_hara_kiri_callback)) - - (Y-extent . ,Hara_kiri_group_spanner::y_extent) - - (axes . (1)) - (meta . ((class . Spanner) - (interfaces . (axis-group-interface - vertically-spaceable-interface - hara-kiri-group-interface - spanner-interface)))))) (RepeatSlash . ( - (stencil . ,Percent_repeat_item_interface::beat_slash) - (thickness . 0.48) (slope . 1.7) (meta . ((class . Item) (interfaces . (percent-repeat-interface)))))) (Rest . ( - (stencil . ,Rest::print) (X-extent . ,Rest::width) (Y-extent . ,Rest::height) - - (Y-offset-callbacks . ( - ,Staff_symbol_referencer::callback - ,Rest::polyphonic_offset_callback - ,Rest::y_offset_callback - )) + (Y-offset . ,Rest::y_offset_callback) (minimum-distance . 0.25) (meta . ((class . Item) (interfaces . (font-interface @@ -1321,7 +1308,8 @@ (padding . 0.20) (staff-padding . 0.25) ;; (script-priority . 0) priorities for scripts, see script.scm - (X-offset-callbacks . (,Self_alignment_interface::centered_on_parent)) + (X-offset . , Self_alignment_interface::centered_on_x_parent) + (stencil . ,Script_interface::print) (direction . ,Script_interface::calc_direction) @@ -1359,7 +1347,7 @@ separation-spanner-interface)))))) (Slur - . ((slur-details . ,default-slur-details) + . ((details . ,default-slur-details) (control-points . ,Slur::calc_control_points) (direction . ,Slur::calc_direction) @@ -1379,7 +1367,7 @@ . ( (springs-and-rods . ,Spacing_spanner::set_springs) - + (average-spacing-wishes . #t) (grace-space-factor . 0.6) (shortest-duration-space . 2.0) (spacing-increment . 1.2) @@ -1421,7 +1409,8 @@ (font-series . bold) (padding . 1.0) - (X-offset-callbacks . (,Side_position_interface::aligned_side)) + (X-offset . ,Side_position_interface::x_aligned_side) + (side-axis . ,X) (direction . ,LEFT) (meta . ((class . Item) (interfaces . (side-position-interface @@ -1463,8 +1452,8 @@ (stencil . ,Text_interface::print) - (direction . 1) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (direction . ,RIGHT) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) (no-spacing-rods . #t) (padding . 0.0) ;; padding relative to SostenutoPedalLineSpanner (font-shape . italic) @@ -1480,11 +1469,12 @@ (X-extent . ,Axis_group_interface::height) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) (padding . 1.2) (minimum-space . 1.0) - (direction . -1) + (direction . ,DOWN) (meta . ((class . Spanner) (interfaces . (piano-pedal-interface axis-group-interface @@ -1492,9 +1482,8 @@ (StaffSymbol . ( - + (Y-extent . ,Staff_symbol::height) (stencil . ,Staff_symbol::print) - (line-count . 5) (ledger-line-thickness . (1.0 . 0.1)) (layer . 0) @@ -1504,6 +1493,7 @@ (Stem . ( (direction . ,Stem::calc_direction) + (default-direction . ,Stem::calc_default_direction) (stem-end-position . ,Stem::calc_stem_end_position) (stem-info . ,Stem::calc_stem_info) (positioning-done . ,Stem::calc_positioning_done) @@ -1544,13 +1534,13 @@ ;; default stem direction for note on middle line - (neutral-direction . -1) + (neutral-direction . ,DOWN) ;; We use the normal minima as minimum for the ideal lengths, ;; and the extreme minima as abolute minimum length. - (X-offset-callbacks . (,Stem::offset_callback)) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (X-offset . ,Stem::offset_callback) + (Y-offset . ,Staff_symbol_referencer::callback) (meta . ((class . Item) (interfaces . (stem-interface font-interface)))))) @@ -1570,9 +1560,9 @@ (no-spacing-rods . #t) (stencil . ,Sustain_pedal::print) (self-alignment-X . 0) - (direction . 1) + (direction . ,RIGHT) (padding . 0.0) ;; padding relative to SustainPedalLineSpanner - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) (meta . ((class . Item) (interfaces . (piano-pedal-interface text-spanner-interface @@ -1584,11 +1574,12 @@ . ( (axes . (1)) (X-extent . ,Axis_group_interface::height) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) (padding . 1.2) (staff-padding . 1.2) (minimum-space . 1.0) - (direction . -1) + (direction . ,DOWN) (meta . ((class . Spanner) (interfaces . (piano-pedal-interface axis-group-interface @@ -1605,48 +1596,72 @@ (SystemStartBrace . ( - (glyph . "brace") + (style . brace) + (padding . 0.3) (stencil . ,System_start_delimiter::print) (collapse-height . 5.0) + (X-offset . ,Side_position_interface::x_aligned_side) + (direction . ,LEFT) (font-encoding . fetaBraces) (Y-extent . #f) (meta . ((class . Spanner) (interfaces . (system-start-delimiter-interface + side-position-interface font-interface)))))) + (SystemStartSquare + . ( + (Y-extent . #f) + (X-offset . ,Side_position_interface::x_aligned_side) + (direction . ,LEFT) + (stencil . ,System_start_delimiter::print) + (style . line-bracket) + (thickness . 1.0) + (meta . ((class . Spanner) + (interfaces . (font-interface + side-position-interface + system-start-delimiter-interface)))))) (SystemStartBracket . ( (Y-extent . #f) - (X-offset-callbacks . (,(lambda (g a) -0.8))) + (padding . 0.8) + (X-offset . ,Side_position_interface::x_aligned_side) + (direction . ,LEFT) (stencil . ,System_start_delimiter::print) - (glyph . "bracket") + (style . bracket) (collapse-height . 5.0) (thickness . 0.45) (meta . ((class . Spanner) (interfaces . (font-interface + side-position-interface system-start-delimiter-interface)))))) (SystemStartBar . ( (Y-extent . #f) - (glyph . "bar-line") + (padding . 0.0) + (X-offset . ,Side_position_interface::x_aligned_side) + (direction . ,LEFT) + (style . bar-line) (thickness . 1.6) (stencil . ,System_start_delimiter::print) (meta . ((class . Spanner) - (interfaces . (system-start-delimiter-interface)))))) + (interfaces . (side-position-interface + system-start-delimiter-interface)))))) + (TabNoteHead . ( (stencil . ,Text_interface::print) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (Y-offset . ,Staff_symbol_referencer::callback) (font-size . -2) (stem-attachment . (1.0 . 1.35)) (font-series . bold) (meta . ((class . Item) (interfaces . (rhythmic-head-interface - font-interface + font-interface rhythmic-grob-interface note-head-interface staff-symbol-referencer-interface text-interface)))))) @@ -1654,8 +1669,8 @@ (TextScript . ( (no-spacing-rods . #t) - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) - (direction . -1) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) + (direction . ,DOWN) ;; sync with Fingering ? (padding . 0.5) @@ -1677,12 +1692,14 @@ (TextSpanner . ( (stencil . ,Text_spanner::print) + (Y-offset . ,Side_position_interface::y_aligned_side) (font-shape . italic) (style . dashed-line) (staff-padding . 0.8) (dash-fraction . 0.2) (dash-period . 3.0) - (direction . 1) + (side-axis . ,Y) + (direction . ,UP) (meta . ((class . Spanner) (interfaces . (text-spanner-interface side-position-interface @@ -1691,10 +1708,23 @@ (Tie . ( (control-points . ,Tie::calc_control_points) + (avoid-slur . inside) (direction . ,Tie::calc_direction) (stencil . ,Tie::print) - (details . ((ratio . 0.333) + (details . ( + ;; for a full list, see tie-helper.cc + (ratio . 0.333) + (center-staff-line-clearance . 0.6) + (tip-staff-line-clearance . 0.45) + (note-head-gap . 0.2) + (stem-gap . 0.35) (height-limit . 1.0) + (horizontal-distance-penalty-factor . 10) + (tie-tie-collision-distance . 0.45) + (tie-tie-collision-penalty . 25.0) + (intra-space-threshold . 1.25) + (outer-tie-vertical-distance-symmetry-penalty-factor . 10) + (outer-tie-length-symmetry-penalty-factor . 10) (between-length-limit . 1.0))) (thickness . 1.0) (meta . ((class . Spanner) @@ -1734,18 +1764,20 @@ (style . trill) (staff-padding . 1.0) (padding . 0.5) - (direction . 1) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (direction . ,UP) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) (meta . ((class . Spanner) (interfaces . (text-spanner-interface side-position-interface font-interface)))))) (TrillPitchAccidental - . ((X-offset-callbacks . (,Side_position_interface::aligned_side)) + . ((X-offset . ,Side_position_interface::x_aligned_side) (padding . 0.2) (direction . ,LEFT) (font-size . -4) + (side-axis . ,X) (stencil . ,Accidental_interface::print) (meta . ((class . Item) (interfaces . (item-interface @@ -1754,11 +1786,12 @@ font-interface)))))) (TrillPitchGroup - . ((X-offset-callbacks . (,Side_position_interface::aligned_side)) + . ((X-offset . ,Side_position_interface::x_aligned_side) (axes . (,X)) (font-size . -4) (stencil . ,parenthesize-elements) (direction . ,RIGHT) + (side-axis . ,X) (padding . 0.3) (meta . ((class . Item) (interfaces . (side-position-interface @@ -1772,7 +1805,7 @@ . ( (stencil . ,Note_head::print) (duration-log . 2) - (Y-offset-callbacks . (,Staff_symbol_referencer::callback)) + (Y-offset . ,Staff_symbol_referencer::callback) (font-size . -4) (meta . ((class . Item) (interfaces . (item-interface @@ -1788,26 +1821,37 @@ (thickness . 1.6) (edge-height . (0.7 . 0.7)) (shorten-pair . (-0.2 . -0.2)) + (staff-padding . 0.25) + (direction . ,Tuplet_bracket::calc_direction) (positions . ,Tuplet_bracket::calc_positions) + (connect-to-neighbor . ,Tuplet_bracket::calc_connect_to_neighbors) + (control-points . ,Tuplet_bracket::calc_control_points) (stencil . ,Tuplet_bracket::print) + + (meta . ((class . Spanner) + (interfaces . (line-interface + tuplet-bracket-interface)))))) + + (TupletNumber + . ( + (stencil . ,Tuplet_number::print) (font-shape . italic) (font-size . -2) + (avoid-slur . inside) (meta . ((class . Spanner) - (interfaces . (text-interface - line-interface - tuplet-bracket-interface + (interfaces . (text-interface tuplet-number-interface font-interface)))))) - + (UnaCordaPedal . ( (stencil . ,Text_interface::print) (font-shape . italic) (no-spacing-rods . #t) (self-alignment-X . 0) - (direction . 1) + (direction . ,RIGHT) (padding . 0.0) ;; padding relative to UnaCordaPedalLineSpanner - (X-offset-callbacks . (,Self_alignment_interface::aligned_on_self)) + (X-offset . ,Self_alignment_interface::x_aligned_on_self) (meta . ((class . Item) (interfaces . (text-interface self-alignment-interface @@ -1817,11 +1861,12 @@ . ( (axes . (1)) (X-extent . ,Axis_group_interface::height) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) (padding . 1.2) (staff-padding . 1.2) (minimum-space . 1.0) - (direction . -1) + (direction . ,DOWN) (meta . ((class . Spanner) (interfaces . (piano-pedal-interface axis-group-interface @@ -1850,23 +1895,26 @@ (VerticalAxisGroup . ( (axes . (1)) - (Y-extent . ,Axis_group_interface::height) + (Y-offset . ,Hara_kiri_group_spanner::force_hara_kiri_callback) + (Y-extent . ,Hara_kiri_group_spanner::y_extent) (X-extent . ,Axis_group_interface::width) (meta . ((class . Spanner) (interfaces . (axis-group-interface + hara-kiri-group-interface vertically-spaceable-interface)))))) (VocalName . ( (breakable . #t) - (Y-offset-callbacks . (,Side_position_interface::aligned_on_support_refpoints)) - (direction . 0) + (Y-offset . ,Side_position_interface::y_aligned_on_support_refpoints) + (direction . ,CENTER) (space-alist . ((left-edge . (extra-space . 1.0)))) (break-align-symbol . instrument-name) (stencil . ,Text_interface::print) (break-align-symbol . clef) (break-visibility . ,begin-of-line-visible) (baseline-skip . 2) + (side-axis . ,Y) (meta . ((class . Item) (interfaces . (font-interface self-alignment-interface @@ -1881,7 +1929,8 @@ (direction . ,UP) (padding . 1) (font-encoding . fetaNumber) - (Y-offset-callbacks . (,Side_position_interface::aligned_side)) + (Y-offset . ,Side_position_interface::y_aligned_side) + (side-axis . ,Y) (thickness . 1.6) ;; linethickness (edge-height . (2.0 . 2.0)) ;; staffspace; (minimum-space . 5)