Re: Lilypond ignores some \shape commands in chords

2018-03-13 Thread Arle Lommel
This is helpful, and you solution works well. So your explanation is, I am 
certain, correct.

I *think* something else may be at work here as well. Compare the results of 
the following two examples (which I generated with ragged-right = ##t to make 
the images compact):

\version "2.18.2"
\relative c'' {
\tieUp
1
1 |
1 |
}



AND

\version "2.18.2"
\relative c'' {
\tieUp
1 \break
1 |
1 |
}


Adding the \break in a space that ought not to affect the tie switches which 
\shape is observed, but it switches which one “counts”. Maybe it is enough to 
document this issue and the solution and to mention that the case I submitted 
leads to essentially unpredictable results (OK, not entirely, but I think the 
predictability is low for most people).

But I do wonder what underlying behavior this case has hit upon and if it would 
rear its head elsewhere. Certainly, from a user perspective, it comes across as 
a head scratcher. I’m fine if this goes no further than a documentation fix, 
but if this represents something odd beneath the surface, it could be worth 
looking at.

-Arle


> The problem here is TieColumn being involved.
> TieColumn sets control-points for the containing ties and the values
> provided by \shape will be ignored more or less arbitrary.
> To prevent TieColumn doing so and have the shape-values accepted you
> need to set positioning-done #t at appropriate place _and_ set the
> direction of each containing tie. Which may be done by \tieUp for all
> or using direction-modifiers. _And_ apply \shape to all individual
> in-chord ties.
> 
> \relative c'' {
><
> cis!
>   -\shape #'((0 . 0.5) (0 . -2) (0 . 1) (0 . 0))
>   ^~
> e
>   -\shape #'((-2 . 0) (0 . 10) (0 . 10) (2 . 0))
>   ^~
>> 1 |
>\once \override TieColumn.positioning-done = ##t
>1 |
> }
> 
> \relative c'' {
>\tieUp
><
> cis!
>   -\shape #'(((0 . 0.5) (0 . -2) (0 . 1) (0 . 0))
>  ((0 . 0.5) (0 . -2) (0 . 1) (0 . 0)))
>   ~
> e
>   -\shape #'(((-2 . 0) (0 . 10) (0 . 10) (2 . 0))
>  ((-2 . 0) (0 . 2) (0 . 2) (2 . 0)))
>   ~
>> 1 |
>\break
>\once \override TieColumn.positioning-done = ##t
>1 |
> }
> 
> 
> Afair, it's a known limitation of \shape.
> So I tend to go for a documentation-issue here.
> 
> Other opinions?
> 
> 
> Cheers,
>  Harm

___
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond


Re: Lilypond ignores some \shape commands in chords

2018-03-12 Thread Thomas Morley
2018-03-12 20:12 GMT+01:00 Arle Lommel :
> % Cannot tweak both ties in a double tie.
> % Lilypond 2.18.2 simply ignores the second one.
> % This example has a deliberately bad example in
> % the second \shape command to make it obvious where it
> % is working or not, but *no* values change
> % the output from the system. The second \shape command
> % is completely ignored.
> %
> % There is some additional weirdness I will follow up with,
> % where, if you have a string of ties and you insert a \break
> % in the middle, it switches to ignoring the first one
> % and honoring the second one in a chord.
>
> \version "2.18.2"
> \relative c'' {
> \tieUp
>  e-\shape #'((0.0 . 5.0) (0.0 . 0.0) (0.0 . 0.0) (0.0 . 2.0))~>1 |
> 1 |
> }



The problem here is TieColumn being involved.
TieColumn sets control-points for the containing ties and the values
provided by \shape will be ignored more or less arbitrary.
To prevent TieColumn doing so and have the shape-values accepted you
need to set positioning-done #t at appropriate place _and_ set the
direction of each containing tie. Which may be done by \tieUp for all
or using direction-modifiers. _And_ apply \shape to all individual
in-chord ties.

\relative c'' {
<
 cis!
   -\shape #'((0 . 0.5) (0 . -2) (0 . 1) (0 . 0))
   ^~
 e
   -\shape #'((-2 . 0) (0 . 10) (0 . 10) (2 . 0))
   ^~
>1 |
\once \override TieColumn.positioning-done = ##t
1 |
}

\relative c'' {
\tieUp
<
 cis!
   -\shape #'(((0 . 0.5) (0 . -2) (0 . 1) (0 . 0))
  ((0 . 0.5) (0 . -2) (0 . 1) (0 . 0)))
   ~
 e
   -\shape #'(((-2 . 0) (0 . 10) (0 . 10) (2 . 0))
  ((-2 . 0) (0 . 2) (0 . 2) (2 . 0)))
   ~
>1 |
\break
\once \override TieColumn.positioning-done = ##t
1 |
}


Afair, it's a known limitation of \shape.
So I tend to go for a documentation-issue here.

Other opinions?


Cheers,
  Harm

___
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond


Lilypond ignores some \shape commands in chords

2018-03-12 Thread Arle Lommel
% Cannot tweak both ties in a double tie.
% Lilypond 2.18.2 simply ignores the second one.
% This example has a deliberately bad example in
% the second \shape command to make it obvious where it
% is working or not, but *no* values change
% the output from the system. The second \shape command
% is completely ignored.
%
% There is some additional weirdness I will follow up with,
% where, if you have a string of ties and you insert a \break
% in the middle, it switches to ignoring the first one
% and honoring the second one in a chord.

\version "2.18.2"
\relative c'' {
\tieUp
1 |
1 |
}
___
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond