Re: `StaffGroup` prevents articulation shifted under time signature

2022-05-23 Thread Werner LEMBERG


> dynamicLengthOff = {
>   \override DynamicText.extra-spacing-width = #'(+inf.0 . -inf.0)
>   \override DynamicText.extra-spacing-height = #'(0 . 0)
> }

Nice idea, thanks!


Werner



Re: `StaffGroup` prevents articulation shifted under time signature

2022-05-23 Thread Werner LEMBERG
>> The following example
>>
>> ```
>> <<
>>\new Staff { f'1 }
>>\new Staff { f'1 \tweak X-offset #-5 \pp }
>> \new StaffGroup <<
>>\new Staff { f'1 }
>>\new Staff { f'1 \tweak X-offset #-5 \pp }
>> ```
>>
>> shows that I can't move the 'pp' to sit under the time signature if
>> I use `StaffGroup`.  How can I change this?  Within full scores it
>> is of great importance to retain this ability.
>
> The definition of StaffGroup in engraver-init.ly contains
>
>   %% The default for DynamicText.extra-spacing-width causes dynamics
>   %% to be placed across span bars, so switch it off:
>   \override DynamicText.extra-spacing-width = ##f

D'oh, I should have looked into this file.  Thanks!

This override causes too much collateral damage; I've thus just filed

  https://gitlab.com/lilypond/lilypond/-/issues/6350


Werner



Re: `StaffGroup` prevents articulation shifted under time signature

2022-05-23 Thread David Kastrup
Werner LEMBERG  writes:

> [LilyPond version 2.23.9]
>
> The following example
>
> ```
> <<
>   \new Staff { f'1 }
>   \new Staff { f'1 \tweak X-offset #-5 \pp }
>>>
>
> \new StaffGroup <<
>   \new Staff { f'1 }
>   \new Staff { f'1 \tweak X-offset #-5 \pp }
>>>
> ```
>
> shows that I can't move the 'pp' to sit under the time signature if I
> use `StaffGroup`.  How can I change this?  Within full scores it is of
> great importance to retain this ability.

In analogy to

textLengthOff = {
  \override TextScript.extra-spacing-width = #'(+inf.0 . -inf.0)
  \override TextScript.extra-spacing-height = #'(0 . 0)
}

you can do

dynamicLengthOff = {
  \override DynamicText.extra-spacing-width = #'(+inf.0 . -inf.0)
  \override DynamicText.extra-spacing-height = #'(0 . 0)
}


<<
  \new Staff { f'1 }
  \new Staff { f'1 \tweak X-offset #-5 \pp }
>>

\new StaffGroup \with \dynamicLengthOff <<
  \new Staff { f'1 }
  \new Staff { f'1 \tweak X-offset #-5 \pp }
>>

However, this will also stop the dynamics from avoiding interstaff
barlines, the reason for this setting.  The setting is already different
in ChoirStaff which does not have interstaff barlines.

-- 
David Kastrup


Re: `StaffGroup` prevents articulation shifted under time signature

2022-05-23 Thread Jean Abou Samra

Le 23/05/2022 à 12:32, Werner LEMBERG a écrit :

[LilyPond version 2.23.9]

The following example

```
<<
   \new Staff { f'1 }
   \new Staff { f'1 \tweak X-offset #-5 \pp }
\new StaffGroup <<
   \new Staff { f'1 }
   \new Staff { f'1 \tweak X-offset #-5 \pp }
```

shows that I can't move the 'pp' to sit under the time signature if I
use `StaffGroup`.  How can I change this?  Within full scores it is of
great importance to retain this ability.




The definition of StaffGroup in engraver-init.ly contains

  %% The default for DynamicText.extra-spacing-width causes dynamics to
  %% be placed across span bars, so switch it off:
  \override DynamicText.extra-spacing-width = ##f

so you need

\version "2.23.9"

<<
  \new Staff { f'1 }
  \new Staff { f'1 \tweak X-offset #-5 \pp }
>>

\new StaffGroup <<
  \new Staff { f'1 }
  \new Staff { f'1 \tweak X-offset #-5 \tweak extra-spacing-width 
#'(+inf.0 . -inf.0) \pp }

>>


to restore the default on that \pp.

Best,
Jean