lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: slur corehack


From: Flaming Hakama by Elaine
Subject: Re: slur corehack
Date: Tue, 24 May 2016 17:15:59 -0700


> It seems like the state of the art is to tweak each slur individually
> using \shape to specify displacements from current control points.

\shape is a very nice tool.
This advantage inherits a disadvantage as well: other possibilities to
tweak a slur are more and more forgotten.

I am not suggesting that anything should happen to the \shape command.
For things like the S-shaped curves, this is necessary.

I'm just observing that \shape only affects one curve at a time,
and is not ideal for affecting global curve styles.

And I suspect that most people would get better mileage out of
fist setting good default values, then tweaking individual curves.

In fact, \shape should play nice with setting different defaults, no?
I would assume that \shape tweaks would be relative any new "house" styles applied.

 
> But on the other hand, is there a code-based way to do this?
> (If so, this ought to go in the docs tout suite!)

The values in define-grobs.scm are the default-values for the
properties of the grob.
Each one can be changed using tweak or override.

/tweak and /override are documented.

I would say that, on the contrary, \tweak and \override are not documented.
At least, not well enough to be useful for use with slurs.

In the case of slurs, searching for "lilypond slurs tweak", the documentation that comes up describes how to tweak slurs relative to text, not how to tweak the actual curves themselves. 
http://lilypond.org/doc/v2.19/Documentation/learning/outside_002dstaff-objects

The override page doesn't even mention slurs:
http://lilypond.org/doc/v2.19/Documentation/notation/the-override-command

 
Though, I doubt your proposal has a chance to be implemented, look at :

\layout {
  \override Slur.height-limit = 5.6
  \override Slur.minimum-length = 2.3
  \override Slur.ratio = 0.36
}

{
    c''1( d''1)
    \break
    R1
}

The Slur is far too high

I was not suggesting that my defaults were appropriate for the lilypond distro.

Rather, I am suggesting that the approach of changing all slurs' default values should be described in addition to (and probably ahead of) the approach of changing a single curve's control points.

Which is why I was curious if anyone had another example of highly-tweaked curves (without setting different defaults), since I'd like to see how flexible this approach is.

 
> There are other things I'd like to change by default,
> especially the x locations of the center two control points,
> which are too close together.

Higher values for hight-limit will result in closer inner control-points.

> Also, when slurs and ties continue over the break, they are too short.

It's too late to think more about control-points/after-line-break
right now, need to find some sleep.
It would be a good idea to provide some examples, though.

Cheers,
  Harm

I can follow up with some better direct comparisons.

For now, here are some proof-of concept intermediate versions from the piece that spurred me to try this approach.

My "default" uses a mix-n-match font set, so this not totally lilypond default, but the slur values discussed above are default.
http://flaminghakama.com/portfolio/piano-trio/pdf/annes-eyes-Lead-default.pdf

Here is an intermediate version that is too curvy (height-limit too high), but was still an improvement over the default (in my opinion):
http://flaminghakama.com/portfolio/piano-trio/pdf/annes-eyes-Lead-ratio-42-height-limit-7.pdf

My final version is not ideal to compare since the line breaking is vastly different.


David Elaine Alt
415 . 341 .4954                                           "Confusion is highly underrated"
address@hidden
self-immolation.info
skype: flaming_hakama
Producer ~ Composer ~ Instrumentalist
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


reply via email to

[Prev in Thread] Current Thread [Next in Thread]