X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdefine-grobs.scm;h=00394458fa71bf03d53db2b7697a8e32fa83ba11;hb=62c6679f1deeb3abebd40583416189582de03d2e;hp=a31b95dda69e128893d6229ff2a39f16a2bfcbe4;hpb=87eedcd59f4082cb0841528ad5bc82cb1d1191e3;p=lilypond.git diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index a31b95dda6..00394458fa 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -319,6 +319,7 @@ (beaming . ,ly:beam::calc-beaming) (stencil . ,ly:beam::print) (clip-edges . #t) + (cross-staff . ,ly:beam::cross-staff) (details . ((hint-direction-penalty . 20))) ;; TODO: should be in SLT. @@ -591,7 +592,6 @@ (Y-offset . ,ly: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 . ,DOWN) @@ -620,7 +620,6 @@ (font-series . bold) (font-encoding . fetaDynamic) (font-shape . italic) - (avoid-slur . around) (extra-spacing-width . (+inf.0 . -inf.0)) (outside-staff-priority . 250) (meta . ((class . Item) @@ -632,22 +631,42 @@ (DynamicTextSpanner . ( - (stencil . ,ly:dynamic-text-spanner::print) - ;; rather ugh with NCSB ;; (font-series . bold) (font-shape . italic) (style . dashed-line) + ;; make sure the spanner doesn't get too close to notes + (minimum-Y-extent . (-1 . 1)) + (bound-details . ((right . ((attach-dir . ,LEFT) + (Y . 0) + (padding . 0.75) + )) + (right-broken . ((attach-dir . ,RIGHT) + (padding . 0.0) + )) + + (left . ((attach-dir . ,LEFT) + (Y . 0) + (stencil-offset . (0 . -0.5)) + (padding . 0.5) + )) + (left-broken . ((attach-dir . ,RIGHT) + )) + )) + (stencil . ,ly:line-spanner::print) + (left-bound-info . ,ly:line-spanner::calc-left-bound-info-and-text) + (right-bound-info . ,ly:line-spanner::calc-right-bound-info) + ;; need to blend with dynamic texts. (font-size . 1) - (bound-padding . 0.75) (dash-fraction . 0.2) (dash-period . 3.0) (meta . ((class . Spanner) (interfaces . (font-interface text-interface line-spanner-interface + line-interface dynamic-interface dynamic-text-spanner-interface spanner-interface)))))) @@ -693,8 +712,16 @@ (zigzag-width . 0.75) (X-extent . #f) (Y-extent . #f) + (bound-details . ((right . ((attach-dir . ,CENTER) + (padding . 1.5) + )) + (left . ((attach-dir . ,CENTER) + (padding . 1.5) + )) + )) (stencil . ,ly:line-spanner::print) - (after-line-breaking . ,ly:line-spanner::after-line-breaking) + (left-bound-info . ,ly:line-spanner::calc-left-bound-info) + (right-bound-info . ,ly:line-spanner::calc-right-bound-info) (meta . ((class . Spanner) (interfaces . (line-interface unbreakable-spanner-interface @@ -1229,6 +1256,7 @@ (minimum-length . 1.5) (height-limit . 2.0) (ratio . 0.333) + (cross-staff . ,ly:slur::cross-staff) (meta . ((class . Spanner) (interfaces . (slur-interface)))))) @@ -1427,6 +1455,7 @@ (height-limit . 2.0) (ratio . 0.25) (avoid-slur . inside) + (cross-staff . ,ly:slur::cross-staff) (meta . ((class . Spanner) (interfaces . (slur-interface)))))) @@ -1547,6 +1576,7 @@ (Y-extent . ,ly:stem::height) (length . ,ly:stem::calc-length) (thickness . 1.3) + (cross-staff . ,ly:stem::cross-staff) (details . ( ;; 3.5 (or 3 measured from note head) is standard length @@ -1648,8 +1678,6 @@ (X-offset . ,ly:self-alignment-interface::x-aligned-on-self) (meta . ((class . Item) (interfaces . (piano-pedal-interface - text-spanner-interface - line-spanner-interface text-interface self-alignment-interface piano-pedal-script-interface @@ -1785,7 +1813,6 @@ (TextSpanner . ( - (stencil . ,ly:text-spanner::print) (Y-offset . ,ly:side-position-interface::y-aligned-side) (font-shape . italic) (style . dashed-line) @@ -1795,9 +1822,21 @@ (side-axis . ,Y) (direction . ,UP) (outside-staff-priority . 350) + + (left-bound-info . ,ly:line-spanner::calc-left-bound-info) + (right-bound-info . ,ly:line-spanner::calc-right-bound-info) + (bound-details . ((left . ((Y . 0) + (padding . 0.25) + (attach-dir . ,LEFT) + )) + (right . ((Y . 0) + (padding . 0.25) + )) + )) + (stencil . ,ly:line-spanner::print) + (meta . ((class . Spanner) - (interfaces . (text-spanner-interface - line-spanner-interface + (interfaces . (line-spanner-interface side-position-interface font-interface)))))) @@ -1865,9 +1904,21 @@ (TrillSpanner . ( - (stencil . ,ly:dynamic-text-spanner::print) - (edge-text . ,(cons (make-musicglyph-markup "scripts.trill") - "")) + (left-bound-info . ,ly:line-spanner::calc-left-bound-info) + (right-bound-info . ,ly:line-spanner::calc-right-bound-info) + + (bound-details . ((left . ((text . ,(make-translate-scaled-markup + '(0.5 . -0.6) + (make-musicglyph-markup "scripts.trill"))) + (Y . 0) + (padding . 0.25) + (attach-dir . ,LEFT) + )) + (right . ((Y . 0))) + )) + + (stencil . ,ly:line-spanner::print) + (style . trill) (staff-padding . 1.0) (padding . 0.5) @@ -1876,8 +1927,9 @@ (side-axis . ,Y) (outside-staff-priority . 50) (meta . ((class . Spanner) - (interfaces . (text-spanner-interface - line-spanner-interface + (interfaces . (line-spanner-interface + line-interface + trill-spanner-interface side-position-interface font-interface)))))) @@ -1938,6 +1990,7 @@ (connect-to-neighbor . ,ly:tuplet-bracket::calc-connect-to-neighbors) (control-points . ,ly:tuplet-bracket::calc-control-points) (stencil . ,ly:tuplet-bracket::print) + (cross-staff . ,ly:tuplet-bracket::cross-staff) (meta . ((class . Spanner) (interfaces . (line-interface @@ -1950,6 +2003,7 @@ (font-shape . italic) (font-size . -2) (avoid-slur . inside) + (cross-staff . ,ly:tuplet-number::cross-staff) (meta . ((class . Spanner) (interfaces . (text-interface tuplet-number-interface font-interface)))))) @@ -2014,7 +2068,7 @@ (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:hara-kiri-group-spanner::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))) @@ -2053,8 +2107,16 @@ (non-musical . #t) (X-extent . #f) (Y-extent . #f) + (bound-details . ((right . ((attach-dir . ,CENTER) + (padding . 1.5) + )) + (left . ((attach-dir . ,CENTER) + (padding . 1.5) + )) + )) (stencil . ,ly:line-spanner::print) - (after-line-breaking . ,ly:line-spanner::after-line-breaking) + (left-bound-info . ,ly:line-spanner::calc-left-bound-info) + (right-bound-info . ,ly:line-spanner::calc-right-bound-info) (meta . ((class . Spanner) (interfaces . (line-spanner-interface line-interface))))