X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdefine-grobs.scm;h=a31b95dda69e128893d6229ff2a39f16a2bfcbe4;hb=87eedcd59f4082cb0841528ad5bc82cb1d1191e3;hp=6080fb021b1939c369318b67ddb1e839d824ead1;hpb=38cb4178d57c3d964f5e4187be34d7372b4a646b;p=lilypond.git diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index 6080fb021b..a31b95dda6 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -20,10 +20,10 @@ (Accidental . ( (avoid-slur . inside) + (glyph-name-alist . ,standard-alteration-glyph-name-alist) + (alteration . ,accidental-interface::calc-alteration) (stencil . ,ly:accidental-interface::print) - (stencils . ,ly:accidental-interface::calc-stencils) - (after-line-breaking - . ,ly:accidental-interface::after-line-breaking) + (Y-extent . ,ly:accidental-interface::height) (meta . ((class . Item) (interfaces . (accidental-interface font-interface)))))) @@ -31,10 +31,10 @@ . ( (avoid-slur . inside) (parenthesized . #t) + (glyph-name-alist . ,standard-alteration-glyph-name-alist) + (alteration . ,accidental-interface::calc-alteration) (stencil . ,ly:accidental-interface::print) - (stencils . ,ly:accidental-interface::calc-stencils) - (after-line-breaking - . ,ly:accidental-interface::after-line-breaking) + (Y-extent . ,ly:accidental-interface::height) (meta . ((class . Item) (interfaces . (accidental-interface font-interface)))))) @@ -43,18 +43,20 @@ (AccidentalSuggestion . ( (stencil . ,ly:accidental-interface::print) + (Y-extent . ,ly:accidental-interface::height) (X-offset . ,(ly:make-simple-closure `(,+ ,(ly:make-simple-closure (list ly:self-alignment-interface::centered-on-x-parent)) ,(ly:make-simple-closure (list ly:self-alignment-interface::x-aligned-on-self))))) (self-alignment-X . ,CENTER) (font-size . -2) + (glyph-name-alist . ,standard-alteration-glyph-name-alist) + (alteration . ,accidental-interface::calc-alteration) (Y-offset . ,ly:side-position-interface::y-aligned-side) (direction . ,UP) (staff-padding . 0.25) (outside-staff-priority . 0) (script-priority . 0) - (stencils . ,ly:accidental-interface::calc-stencils) (side-axis . ,X) (meta . ((class . Item) (interfaces . (side-position-interface @@ -117,12 +119,11 @@ (X-offset . ,ly:side-position-interface::x-aligned-side) (direction . ,LEFT) (stencil . ,ly:accidental-interface::print) - (stencils . ,ly:accidental-interface::calc-stencils) - - (after-line-breaking . ,ly:accidental-interface::after-line-breaking) + (Y-extent . ,ly:accidental-interface::height) + (glyph-name-alist . ,standard-alteration-glyph-name-alist) (side-axis . ,X) (meta . ((class . Item) - (interfaces . (item-interface + (interfaces . ( accidental-interface break-aligned-interface side-position-interface @@ -174,8 +175,6 @@ (layer . 0) (break-visibility . ,all-visible) (non-musical . #t) - (extra-spacing-width . (-0.3 . 0.3)) - (stencil . ,ly:bar-line::print) (glyph-name . ,bar-line::calc-glyph-name) (bar-size . ,ly:bar-line::calc-bar-size) @@ -187,7 +186,7 @@ (key-signature . (extra-space . 1.0)) (key-cancellation . (extra-space . 1.0)) (first-note . (fixed-space . 1.3)) - (next-note . (semi-fixed-space . 1.3)) + (next-note . (semi-fixed-space . 0.9)) (right-edge . (extra-space . 0.0)))) ;; @@ -320,7 +319,8 @@ (beaming . ,ly:beam::calc-beaming) (stencil . ,ly:beam::print) (clip-edges . #t) - + + (details . ((hint-direction-penalty . 20))) ;; TODO: should be in SLT. (thickness . 0.48) ; in staff-space (neutral-direction . ,DOWN) @@ -346,7 +346,9 @@ ;; only for debugging. (font-family . roman) (meta . ((class . Spanner) + (object-callbacks . ((normal-stems . ,ly:beam::calc-normal-stems))) (interfaces . (staff-symbol-referencer-interface + unbreakable-spanner-interface beam-interface)))))) (BendAfter @@ -487,7 +489,7 @@ rhythmic-grob-interface text-interface chord-name-interface - item-interface)))))) + )))))) (CombineTextScript . ( @@ -543,6 +545,7 @@ . ( (stencil . ,ly:dots::print) (dot-count . ,dots::calc-dot-count) + (staff-position . ,dots::calc-staff-position) (meta . ((class . Item) (interfaces . (font-interface staff-symbol-referencer-interface @@ -662,7 +665,6 @@ (self-alignment-X . 0) (self-alignment-Y . 0) (script-priority . 100) - (stencil . ,ly:text-interface::print) (direction . ,ly:script-interface::calc-direction) (text . ,fingering::calc-text) @@ -675,7 +677,7 @@ text-interface side-position-interface self-alignment-interface - item-interface)))))) + )))))) (FretBoard . ((stencil . ,fret-board::calc-stencil) (finger-code . below-string) @@ -695,6 +697,7 @@ (after-line-breaking . ,ly:line-spanner::after-line-breaking) (meta . ((class . Spanner) (interfaces . (line-interface + unbreakable-spanner-interface line-spanner-interface)))))) (GraceSpacing @@ -704,7 +707,7 @@ (shortest-duration-space . 1.6) (meta . ((class . Spanner) (interfaces . (grace-spacing-interface - spacing-interface + spacing-options-interface spanner-interface)))))) (GridPoint @@ -795,6 +798,7 @@ (KeyCancellation . ( (stencil . ,ly:key-signature-interface::print) + (glyph-name-alist . ,cancellation-glyph-name-alist) (space-alist . ( (time-signature . (extra-space . 1.25)) (staff-bar . (extra-space . 0.6)) @@ -814,6 +818,7 @@ . ( (stencil . ,ly:key-signature-interface::print) (avoid-slur . inside) + (glyph-name-alist . ,standard-alteration-glyph-name-alist) (space-alist . ( (time-signature . (extra-space . 1.15)) (staff-bar . (extra-space . 1.1)) @@ -943,7 +948,7 @@ (X-extent . #f) (meta . ((class . Spanner) (interfaces . (spanner-interface - lyric-hyphen-interface spacing-interface)) + lyric-hyphen-interface )) )) )) @@ -982,7 +987,7 @@ . ( (neutral-direction . ,DOWN) (meta . ((class . Item) - (interfaces . (melody-spanner-interface spacing-interface)))))) + (interfaces . (melody-spanner-interface )))))) (MensuralLigature . ( (thickness . 1.4) @@ -1130,7 +1135,7 @@ ;; If you ever change this back, please document! --hwn (knee-spacing-correction . 1.0) (meta . ((class . Item) - (interfaces . (spacing-interface + (interfaces . ( note-spacing-interface)))))) (NoteName @@ -1368,7 +1373,6 @@ ;; padding set in script definitions. (staff-padding . 0.25) - ;; (script-priority . 0) priorities for scripts, see script.scm (X-offset . ,ly:self-alignment-interface::centered-on-x-parent) (Y-offset . ,ly:side-position-interface::y-aligned-side) (side-axis . ,Y) @@ -1399,7 +1403,7 @@ (Y-extent . ,ly:axis-group-interface::height) (skylines . ,ly:separation-item::calc-skylines) (meta . ((class . Item) - (interfaces . (spacing-interface + (interfaces . ( separation-item-interface)))))) (SeparatingGroupSpanner @@ -1407,7 +1411,7 @@ (springs-and-rods . ,ly:separating-group-spanner::set-spacing-rods) (meta . ((class . Spanner) (interfaces . (only-prebreak-interface - spacing-interface + separating-group-spanner-interface)))))) (Slur @@ -1465,7 +1469,7 @@ (base-shortest-duration . ,(ly:make-moment 3 16)) (meta . ((class . Spanner) - (interfaces . (spacing-interface + (interfaces . ( spacing-options-interface spacing-spanner-interface)))))) @@ -1515,8 +1519,7 @@ (non-musical . #t) (stem-spacing-correction . 0.4) (meta . ((class . Item) - (interfaces . (spacing-interface - staff-spacing-interface)))))) + (interfaces . (staff-spacing-interface)))))) (StaffSymbol @@ -1611,7 +1614,7 @@ text-interface side-position-interface self-alignment-interface - item-interface)))))) + )))))) (StrokeFinger . ( @@ -1632,7 +1635,7 @@ text-interface side-position-interface self-alignment-interface - item-interface)))))) + )))))) (SustainPedal @@ -1673,6 +1676,7 @@ (X-extent . ,ly:axis-group-interface::width) (Y-extent . ,ly:axis-group-interface::height) (skylines . ,ly:axis-group-interface::calc-skylines) + (max-stretch . ,ly:axis-group-interface::calc-max-stretch) (skyline-horizontal-padding . 1.0) (meta . ((class . System) (interfaces . (system-interface @@ -1814,14 +1818,17 @@ (stem-gap . 0.35) (height-limit . 1.0) (horizontal-distance-penalty-factor . 10) - (min-length-penalty-factor . 20) + (same-dir-as-stem-penalty . 8) + (min-length-penalty-factor . 26) (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) + (vertical-distance-penalty-factor . 7) (outer-tie-vertical-gap . 0.25) (multi-tie-region-size . 1) + (single-tie-region-size . 4) (between-length-limit . 1.0))) (thickness . 1.2) @@ -1881,10 +1888,11 @@ (font-size . -4) (side-axis . ,X) (stencil . ,ly:accidental-interface::print) - (stencils . ,ly:accidental-interface::calc-stencils) + (Y-extent . ,ly:accidental-interface::height) + (glyph-name-alist . ,standard-alteration-glyph-name-alist) (meta . ((class . Item) - (interfaces . (item-interface - trill-pitch-accidental-interface + (interfaces . (trill-pitch-accidental-interface + accidental-interface side-position-interface font-interface)))))) @@ -1899,6 +1907,7 @@ (padding . 0.3) (meta . ((class . Item) (interfaces . (side-position-interface + parentheses-interface note-head-interface rhythmic-head-interface font-interface @@ -1911,8 +1920,7 @@ (Y-offset . ,ly:staff-symbol-referencer::callback) (font-size . -4) (meta . ((class . Item) - (interfaces . (item-interface - rhythmic-head-interface + (interfaces . (rhythmic-head-interface font-interface pitched-trill-interface ledgered-interface @@ -1995,7 +2003,9 @@ (stacking-dir . -1) (padding . 0.5) (skylines . ,ly:axis-group-interface::combine-skylines) + (max-stretch . ,ly:align-interface::calc-max-stretch) (meta . ((class . Spanner) + (object-callbacks . ((Y-common . ,ly:axis-group-interface::calc-y-common))) (interfaces . (align-interface axis-group-interface)))))) (VerticalAxisGroup @@ -2004,8 +2014,10 @@ (Y-offset . ,ly:hara-kiri-group-spanner::force-hara-kiri-callback) (Y-extent . ,ly:hara-kiri-group-spanner::y-extent) (X-extent . ,ly:axis-group-interface::width) - (skylines . ,ly:axis-group-interface::calc-skylines); + (skylines . ,ly:axis-group-interface::calc-skylines) + (max-stretch . ,ly:axis-group-interface::calc-max-stretch) (meta . ((class . Spanner) + (object-callbacks . ((X-common . ,ly:axis-group-interface::calc-x-common))) (interfaces . (axis-group-interface hara-kiri-group-spanner-interface vertically-spaceable-interface)))))) @@ -2075,6 +2087,8 @@ (cons 'spanner-interface ifaces-entry)))) (else (ly:warning "Unknown class ~a" class))) + + (set! ifaces-entry (uniq-list (sort ifaces-entry symbol