From 3afb90fb1ddf95d6644b8c225c5dd46dd0ecd02e Mon Sep 17 00:00:00 2001 From: hanwen Date: Sun, 18 Jul 2004 21:31:54 +0000 Subject: [PATCH] new file. --- Documentation/user/notation.itely | 48 ++++++++++++--------------------------- input/regression/new-slur.ly | 7 ------ input/regression/slur-script.ly | 19 ++++++++++++++++ scm/define-grob-properties.scm | 2 ++ 4 files changed, 35 insertions(+), 41 deletions(-) create mode 100644 input/regression/slur-script.ly diff --git a/Documentation/user/notation.itely b/Documentation/user/notation.itely index 730fcfdb1b..ebd2d1fdd3 100644 --- a/Documentation/user/notation.itely +++ b/Documentation/user/notation.itely @@ -1753,36 +1753,23 @@ f( g)( a) a8 b( a4 g2 f4) 2( 2) @end lilypond +The direction of a slur can be set with the +generic commands -@c TODO: should explain that ^( and _( set directions -@c should set attachments with ^ and _ ? +@example + \override Slur #'direction = #UP + \slurUp % shortcut for the previous line +@end example -Slurs avoid crossing stems, and are generally attached to note heads. -However, in some situations with beams, slurs may be attached to stem -ends. If you want to override this layout you can do this through the -object property @code{attachment} of @internalsref{Slur}. Its value -is a pair of symbols, specifying the attachment type of the left and -right end points +@noindent +However, there is a convenient shorthand for forcing slur +directions. By adding @code{_} or @code{^} before the opening +parentheses, the direction is also set. For example, -@lilypond[quote,fragment,relative=1,verbatim] -\slurUp -\override Stem #'length = #5.5 -g'8(g g4) -\override Slur #'attachment = #'(stem . stem) -g8( g g4) +@lilypond[relative=2,fragment] + c4_( c) c^( c) @end lilypond - -If a slur would strike through a stem or beam, the slur will be moved -away upward or downward. If this happens, attaching the slur to the -stems might look better - -@lilypond[quote,fragment,relative=1,verbatim] -\stemUp \slurUp -d32( d'4 d8..) -\override Slur #'attachment = #'(stem . stem) -d,32( d'4 d8..) -@end lilypond - + @refcommands @@ -1802,12 +1789,6 @@ d,32( d'4 d8..) Program reference: @seeinternals{Slur}, and @internalsref{SlurEvent}. -@refbugs - -Producing nice slurs is a difficult problem, and LilyPond -uses a simple, empiric method to produce slurs. In some cases, its -results are ugly. - @cindex Adjusting slurs @@ -1850,8 +1831,7 @@ Program reference: see also @internalsref{PhrasingSlur}, and @refbugs -Phrasing slurs have the same limitations in their formatting as normal -slurs. Putting phrasing slurs over rests leads to spurious warnings. +Putting phrasing slurs over rests leads to spurious warnings. @node Breath marks @subsection Breath marks diff --git a/input/regression/new-slur.ly b/input/regression/new-slur.ly index bb269d732b..e9062571e0 100644 --- a/input/regression/new-slur.ly +++ b/input/regression/new-slur.ly @@ -40,13 +40,6 @@ c,^( c'' c) c,,^( c'') c,,^( c') - \once \override Script #'padding = #1.2 - b-.8( b-. - \once \override Script #'padding = #1.2 - - b-.) - b-.( b-. - b-.) s4 | b='2( a4) s4 | b='4.( c8) s2 diff --git a/input/regression/slur-script.ly b/input/regression/slur-script.ly new file mode 100644 index 0000000000..03dddb7e74 --- /dev/null +++ b/input/regression/slur-script.ly @@ -0,0 +1,19 @@ + +\header { + + texidoc = "Slurs avoid collisions with scripts. If you want to +have a different configuration, the scripts must be moved manually." + + } + +\version "2.3.7" +\paper { raggedright = ##t } +{ + \once \override Script #'padding = #1.2 + b8-.( b-. + \once \override Script #'padding = #1.2 + + b-.) + b-.( b-. + b-.) +} diff --git a/scm/define-grob-properties.scm b/scm/define-grob-properties.scm index 33bf3a7f71..bee48e758b 100644 --- a/scm/define-grob-properties.scm +++ b/scm/define-grob-properties.scm @@ -559,6 +559,8 @@ column as start/begin point. Only columns that have grobs or act as bounds are s paper-columns or note-column objects.") (conditional-elements ,grob-list? "Internal use only") (dependencies ,grob-list? "list of score-grob pointers that indicate who to compute first for certain global passes.") + (encompass-objects ,grob-list? "Objects that a slur should avoid +in addition to notes and stems.") (elements ,grob-list? "list of grobs, type depending on the Grob where this is set in.") (heads ,grob-list? "List of note heads.") (items-worth-living ,grob-list? "A list of interesting items. If -- 2.11.4.GIT