X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdefine-grobs.scm;h=9526c160b4cb31a70226a87352b1933ff997debf;hb=49e3b76f06c1ca1afdfc2289c46e78788711ac38;hp=8b32b4c6b956659a4ebf36f6de73b39253e73f38;hpb=0a029b8dccc5d0253a849f915584e12a58f9335e;p=lilypond.git diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index 8b32b4c6b9..9526c160b4 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--2006 Han-Wen Nienhuys +;;;; (c) 1998--2007 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen ;;;; distances are given in line-thickness (thicknesses) and @@ -24,6 +24,7 @@ (alteration . ,accidental-interface::calc-alteration) (stencil . ,ly:accidental-interface::print) (Y-extent . ,ly:accidental-interface::height) + (X-extent . ,ly:accidental-interface::width) (meta . ((class . Item) (interfaces . (accidental-interface font-interface)))))) @@ -46,8 +47,10 @@ (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))))) + ,(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) @@ -149,6 +152,7 @@ (Y-offset . ,ly:staff-symbol-referencer::callback) (X-offset . ,ly:side-position-interface::x-aligned-side) (direction . ,LEFT) + (positions . ,ly:arpeggio::calc-positions) (padding . 0.5) (script-priority . 0) (side-axis . ,X) @@ -175,11 +179,13 @@ (glyph . "|") (gap . 0.4) (layer . 0) - (break-visibility . ,all-visible) + (break-visibility . ,bar-line::calc-break-visibility) (non-musical . #t) (stencil . ,ly:bar-line::print) (glyph-name . ,bar-line::calc-glyph-name) (bar-size . ,ly:bar-line::calc-bar-size) + (bar-extent . ,ly:bar-line::calc-bar-extent) + (allow-span-bar . #t) (space-alist . ( (time-signature . (extra-space . 0.75)) @@ -216,6 +222,7 @@ (font-size . -2) (Y-offset . ,ly:side-position-interface::y-aligned-side) (side-axis . ,Y) + (outside-staff-priority . 100) (X-offset . ,(ly:make-simple-closure `(,+ ,(ly:make-simple-closure @@ -226,7 +233,7 @@ (self-alignment-X . 1) ;; want the bar number before the clef at line start. - (break-align-symbol . left-edge) + (break-align-symbols . (left-edge staff-bar)) (meta . ((class . Item) (interfaces . (side-position-interface @@ -292,6 +299,7 @@ (axes . (,Y)) (Y-extent . ,ly:axis-group-interface::height) (vertical-skylines . ,ly:axis-group-interface::calc-skylines) + (adjacent-pure-heights . ,ly:axis-group-interface::adjacent-pure-heights) (meta . ((class . Spanner) (interfaces . (axis-group-interface )))))) @@ -411,7 +419,8 @@ . ( (axes . (0)) (X-extent . ,ly:axis-group-interface::width) - (break-align-anchor . ,ly:break-aligned-interface::calc-anchor) + (break-align-anchor . ,ly:break-aligned-interface::calc-average-anchor) + (break-visibility . ,ly:break-aligned-interface::calc-break-visibility) (meta . ((class . Item) (interfaces . (break-aligned-interface axis-group-interface)))))) @@ -447,6 +456,7 @@ (avoid-slur . inside) (font-family . music) (break-align-symbol . clef) + (break-align-anchor . ,ly:break-aligned-interface::calc-extent-aligned-anchor) (break-visibility . ,begin-of-line-visible) (space-alist . ((ambitus . (extra-space . 2.0)) (staff-bar . (extra-space . 0.7)) @@ -600,6 +610,7 @@ (outside-staff-priority . 250) (Y-extent . ,ly:axis-group-interface::height) (X-extent . ,ly:axis-group-interface::width) + (cross-staff . ,ly:side-position-interface::calc-cross-staff) (meta . ((class . Spanner) (interfaces . (axis-group-interface dynamic-interface @@ -822,8 +833,7 @@ (direction . ,UP) (self-alignment-X . ,CENTER) (meta . ((class . Item) - (interfaces . (system-start-text-interface - side-position-interface + (interfaces . (side-position-interface font-interface)))))) (KeyCancellation @@ -857,6 +867,7 @@ (first-note . (fixed-space . 2.5)))) (Y-offset . ,ly:staff-symbol-referencer::callback) (break-align-symbol . key-signature) + (break-align-anchor . ,ly:break-aligned-interface::calc-extent-aligned-anchor) (break-visibility . ,begin-of-line-visible) (non-musical . #t) (meta . ((class . Item) @@ -905,6 +916,7 @@ (LeftEdge . ( (break-align-symbol . left-edge) + (break-align-anchor . ,ly:break-aligned-interface::calc-extent-aligned-anchor) (X-extent . (0 . 0)) (non-musical . #t) (break-visibility . ,center-invisible) @@ -992,6 +1004,7 @@ (word-space . 0.6) (font-series . bold-narrow) (font-size . 1.0) + (extra-spacing-width . (0.0 . 0.0)) (meta . ((class . Item) (interfaces . (rhythmic-grob-interface lyric-syllable-interface @@ -1096,6 +1109,7 @@ (direction . ,UP) (padding . 0.2) (staff-padding . 0.25) + (outside-staff-priority . 450) (meta . ((class . Spanner) (interfaces . (side-position-interface multi-measure-interface @@ -1109,6 +1123,7 @@ (axes . (0)) (before-line-breaking . ,ly:paper-column::before-line-breaking) (X-extent . ,ly:axis-group-interface::width) + (horizontal-skylines . ,ly:separation-item::calc-skylines) ;; (stencil . ,ly:paper-column::print) (non-musical . #t) @@ -1121,6 +1136,7 @@ (meta . ((class . Paper_column) (interfaces . (paper-column-interface axis-group-interface + separation-item-interface spaceable-grob-interface)))))) (NoteCollision @@ -1138,8 +1154,10 @@ (axes . (0 1)) (X-extent . ,ly:axis-group-interface::width) (Y-extent . ,ly:axis-group-interface::height) + (horizontal-skylines . ,ly:separation-item::calc-skylines) (meta . ((class . Item) (interfaces . (axis-group-interface + separation-item-interface note-column-interface)))))) (NoteHead @@ -1162,11 +1180,12 @@ . ( (stem-spacing-correction . 0.5) (same-direction-correction . 0.25) + (space-to-barline . #t) ;; Changed this from 0.75. ;; If you ever change this back, please document! --hwn (knee-spacing-correction . 1.0) (meta . ((class . Item) - (interfaces . ( + (interfaces . (spacing-interface note-spacing-interface)))))) (NoteName @@ -1205,6 +1224,7 @@ (staff-padding . 1.0) (padding . 0.5) (minimum-length . 1.0) + (style . dashed-line) (dash-fraction . 0.3) (edge-height . (0 . 1.2)) (direction . ,UP) @@ -1222,6 +1242,7 @@ (axes . (0)) (allow-loose-spacing . #t) (before-line-breaking . ,ly:paper-column::before-line-breaking) + (horizontal-skylines . ,ly:separation-item::calc-skylines) ;; (stencil . ,ly:paper-column::print) (X-extent . ,ly:axis-group-interface::width) @@ -1229,6 +1250,7 @@ ;; (font-size . -6) (font-name . "sans") (Y-extent . #f) (meta . ((class . Paper_column) (interfaces . (paper-column-interface + separation-item-interface axis-group-interface spaceable-grob-interface)))))) @@ -1324,13 +1346,14 @@ (list ly:self-alignment-interface::x-aligned-on-self))))) (Y-offset . ,ly:side-position-interface::y-aligned-side) + (extra-spacing-width . (+inf.0 . -inf.0)) (self-alignment-X . 0) (direction . ,UP) (non-musical . #t) (font-size . 2) (baseline-skip . 2) (break-visibility . ,end-of-line-invisible) - (break-align-symbol . clef) + (break-align-symbols . (staff-bar clef)) (padding . 0.8) (outside-staff-priority . 1500) (meta . ((class . Item) @@ -1441,14 +1464,6 @@ (interfaces . ( separation-item-interface)))))) - (SeparatingGroupSpanner - . ( - (springs-and-rods . ,ly:separating-group-spanner::set-spacing-rods) - (meta . ((class . Spanner) - (interfaces . (only-prebreak-interface - - separating-group-spanner-interface)))))) - (Slur . ((details . ,default-slur-details) (control-points . ,ly:slur::calc-control-points) @@ -1512,14 +1527,16 @@ (SpanBar . ( (break-align-symbol . staff-bar) - (Y-extent . ()) + (Y-extent . ,ly:axis-group-interface::height) (layer . 0) (non-musical . #t) (stencil . ,ly:span-bar::print) (bar-size . ,ly:span-bar::calc-bar-size) + (bar-extent . ,ly:axis-group-interface::height) (X-extent . ,ly:span-bar::width) (glyph-name . ,ly:span-bar::calc-glyph-name) (before-line-breaking . ,ly:span-bar::before-line-breaking) + (allow-span-bar . #t) ;; ugh duplication! @@ -1555,7 +1572,8 @@ (non-musical . #t) (stem-spacing-correction . 0.4) (meta . ((class . Item) - (interfaces . (staff-spacing-interface)))))) + (interfaces . (spacing-interface + staff-spacing-interface)))))) (StaffSymbol @@ -1712,7 +1730,6 @@ (Y-extent . ,ly:axis-group-interface::height) (vertical-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 axis-group-interface)))))) @@ -1769,6 +1786,7 @@ (X-offset . ,ly:side-position-interface::x-aligned-side) (direction . ,LEFT) (style . bar-line) + (collapse-height . 5.0) (thickness . 1.6) (stencil . ,ly:system-start-delimiter::print) (meta . ((class . Spanner) @@ -1812,6 +1830,7 @@ (avoid-slur . around) (slur-padding . 0.5) (script-priority . 200) + (cross-staff . ,ly:script-interface::calc-cross-staff) ;; todo: add X self alignment? (meta . ((class . Item) (interfaces . (text-script-interface @@ -1897,6 +1916,8 @@ . ( (stencil . ,ly:time-signature::print) (break-align-symbol . time-signature) + (break-align-anchor + . ,ly:break-aligned-interface::calc-extent-aligned-anchor) (break-visibility . ,all-visible) (avoid-slur . inside) (space-alist . ( @@ -1916,12 +1937,14 @@ (right-bound-info . ,ly:line-spanner::calc-right-bound-info) (bound-details . ((left . ((text . ,(make-translate-scaled-markup - '(0.5 . -0.6) + '(0.0 . -1.0) (make-musicglyph-markup "scripts.trill"))) (Y . 0) - (padding . 0.25) + (stencil-offset . (-0.5 . 0)) + (padding . 1.5) (attach-dir . ,LEFT) )) + (left-broken . ((end-on-note . #t))) (right . ((Y . 0))) )) @@ -2065,7 +2088,7 @@ (stacking-dir . -1) (padding . 0.5) (vertical-skylines . ,ly:axis-group-interface::combine-skylines) - (max-stretch . ,ly:align-interface::calc-max-stretch) + (max-stretch . 0) (meta . ((class . Spanner) (object-callbacks . ((Y-common . ,ly:axis-group-interface::calc-y-common))) (interfaces . (align-interface @@ -2079,6 +2102,7 @@ (vertical-skylines . ,ly:hara-kiri-group-spanner::calc-skylines) (max-stretch . ,ly:axis-group-interface::calc-max-stretch) (stencil . ,ly:axis-group-interface::print) + (adjacent-pure-heights . ,ly:axis-group-interface::adjacent-pure-heights) (meta . ((class . Spanner) (object-callbacks . ((X-common . ,ly:axis-group-interface::calc-x-common))) (interfaces . (axis-group-interface @@ -2089,17 +2113,11 @@ (VoltaBracket . ( (stencil . ,ly:volta-bracket-interface::print) - (direction . ,UP) - (padding . 1) (font-encoding . fetaNumber) - (minimum-Y-extent . (0 . 2)) - (Y-offset . ,ly:side-position-interface::y-aligned-side) - (side-axis . ,Y) (thickness . 1.6) ;; line-thickness (edge-height . (2.0 . 2.0)) ;; staff-space; - (minimum-space . 5) (font-size . -4) - (outside-staff-priority . 100) + (direction . ,UP) (meta . ((class . Spanner) (interfaces . (volta-bracket-interface horizontal-bracket-interface @@ -2109,6 +2127,21 @@ font-interface))) ))) + (VoltaBracketSpanner + . ( + (axes . (1)) + (side-axis . ,Y) + (direction . ,UP) + (padding . 1) + (Y-offset . ,ly:side-position-interface::y-aligned-side) + (outside-staff-priority . 100) + (Y-extent . ,ly:axis-group-interface::height) + (X-extent . ,ly:axis-group-interface::width) + (no-alignment . ,#t) + (meta . ((class . Spanner) + (interfaces . (side-position-interface + axis-group-interface))) + ))) (VoiceFollower . ( @@ -2222,6 +2255,7 @@ (define pure-functions (list + parenthesize-elements ly:staff-symbol-referencer::callback ly:staff-symbol::height))