\startStaff after clef change in other staff

2019-07-30 Thread mason
When a staff that has previously been stopped with \stopStaff is
restarted with \startStaff on the first beat of a measure, and this
coincides with a clef change in another staff, the first staff begins at
the clef instead of the barline.

%%% begin MWE %%%

\version "2.21.0"

\score {
  <<
\new Staff \relative c' {
  c4 c c c |
  \stopStaff
  s1 |
  \startStaff
  c4 c c c |
}
\new Staff \relative c' {
  c4 c c c |
  c4 c c c |
  \clef "bass" c4 c c c |
}
  >>
}

%%% end MWE %%%

This might be desirable in general, but in the context of my score
(not necessarily in this MWE) it looks odd. Is there a way to override
this behavior so that the staff begins on the barline?

Thanks,

Mason


signature.asc
Description: PGP signature
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \startStaff after clef change in other staff

2019-07-30 Thread Pierre Perol-Schneider
Hi Mason,
I couldn't find the correct incantation to modify the StaffSymbol and/or
the BreakAlignment properties...
So here's a hacky way, HTH:

\version "2.21.0"

\score {
  <<
\new Staff \relative c' {
  c4 c c c |
  \stopStaff
  s1
  \startStaff
  c4 c c c |
}
\new Staff \relative c' {
  c4 c c c |
  c4 c c
  \once\textLengthOn
  c
  -\tweak extra-offset #'(1.9 . -1.5) % <= to be set manually
  ^\markup\with-dimensions #'(0 . 4) #'(0 . 0)\musicglyph
#"clefs.F_change" |
  \once\override Staff.Clef.stencil = ##f
  \clef "bass" c4 c c c |
}
  >>
}

Cheers,
Pierre

Le mer. 31 juil. 2019 à 00:53,  a écrit :

> When a staff that has previously been stopped with \stopStaff is
> restarted with \startStaff on the first beat of a measure, and this
> coincides with a clef change in another staff, the first staff begins at
> the clef instead of the barline.
>
> %%% begin MWE %%%
>
> \version "2.21.0"
>
> \score {
>   <<
> \new Staff \relative c' {
>   c4 c c c |
>   \stopStaff
>   s1 |
>   \startStaff
>   c4 c c c |
> }
> \new Staff \relative c' {
>   c4 c c c |
>   c4 c c c |
>   \clef "bass" c4 c c c |
> }
>   >>
> }
>
> %%% end MWE %%%
>
> This might be desirable in general, but in the context of my score
> (not necessarily in this MWE) it looks odd. Is there a way to override
> this behavior so that the staff begins on the barline?
>
> Thanks,
>
> Mason
> ___
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \startStaff after clef change in other staff

2019-07-30 Thread Pierre Perol-Schneider
Better output with: -\tweak extra-offset #'(1.9 . -1.55) % <= to be set
manually
PPS

Le mer. 31 juil. 2019 à 08:42, Pierre Perol-Schneider <
pierre.schneider.pa...@gmail.com> a écrit :

> Hi Mason,
> I couldn't find the correct incantation to modify the StaffSymbol and/or
> the BreakAlignment properties...
> So here's a hacky way, HTH:
>
> \version "2.21.0"
>
> \score {
>   <<
> \new Staff \relative c' {
>   c4 c c c |
>   \stopStaff
>   s1
>   \startStaff
>   c4 c c c |
> }
> \new Staff \relative c' {
>   c4 c c c |
>   c4 c c
>   \once\textLengthOn
>   c
>   -\tweak extra-offset #'(1.9 . -1.5) % <= to be set manually
>   ^\markup\with-dimensions #'(0 . 4) #'(0 . 0)\musicglyph
> #"clefs.F_change" |
>   \once\override Staff.Clef.stencil = ##f
>   \clef "bass" c4 c c c |
> }
>   >>
> }
>
> Cheers,
> Pierre
>
> Le mer. 31 juil. 2019 à 00:53,  a écrit :
>
>> When a staff that has previously been stopped with \stopStaff is
>> restarted with \startStaff on the first beat of a measure, and this
>> coincides with a clef change in another staff, the first staff begins at
>> the clef instead of the barline.
>>
>> %%% begin MWE %%%
>>
>> \version "2.21.0"
>>
>> \score {
>>   <<
>> \new Staff \relative c' {
>>   c4 c c c |
>>   \stopStaff
>>   s1 |
>>   \startStaff
>>   c4 c c c |
>> }
>> \new Staff \relative c' {
>>   c4 c c c |
>>   c4 c c c |
>>   \clef "bass" c4 c c c |
>> }
>>   >>
>> }
>>
>> %%% end MWE %%%
>>
>> This might be desirable in general, but in the context of my score
>> (not necessarily in this MWE) it looks odd. Is there a way to override
>> this behavior so that the staff begins on the barline?
>>
>> Thanks,
>>
>> Mason
>> ___
>> lilypond-user mailing list
>> lilypond-user@gnu.org
>> https://lists.gnu.org/mailman/listinfo/lilypond-user
>>
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \startStaff after clef change in other staff

2019-07-31 Thread Simon Albrecht

On 31.07.19 08:42, Pierre Perol-Schneider wrote:

\once\override Staff.Clef.stencil = ##f



AKA \once\omit Staff.Clef ;-)

Best, Simon


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


Re: \startStaff after clef change in other staff

2019-07-31 Thread Pierre Perol-Schneider
Yep thank you Simon.
This morning I came up to those 2 options, but couldn't go further:

\version "2.21.0"
% Option 1:
\score {
  <<
\new Staff \relative c' {
  c4 c c c |
  \stopStaff
  s1 |
  \startStaff
  c4 c c c |
}
\new Staff \relative c' {
  c4 c c c |
  c4 c c c |
  \once\override Score.BreakAlignment.break-align-orders =
#(make-vector 3 '(staff-bar clef))
  \clef "bass" c4 c c c |
}
  >>
}

% Option 2:
\score {
  <<
\new Staff \relative c' {
  c4 c c c |
  \stopStaff
  s1 |
  \startStaff
  c4 c c c |
}
\new Staff \relative c' {
  c4 c c c |
  c4 c c c |
  \clef "bass" c4 c c c |
}
  >>
  \layout {
\context {
  \Score
  \remove Break_align_engraver
}
\context {
  \Staff
  \consists Break_align_engraver
}
  }
}

Do you have any idea for improvement?
Cheers,
Pierre

Le mer. 31 juil. 2019 à 14:48, Simon Albrecht  a
écrit :

> On 31.07.19 08:42, Pierre Perol-Schneider wrote:
> > \once\override Staff.Clef.stencil = ##f
>
>
> AKA \once\omit Staff.Clef ;-)
>
> Best, Simon
>
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \startStaff after clef change in other staff

2019-07-31 Thread mason
On 07/31, Pierre Perol-Schneider wrote:
> \version "2.21.0"
> % Option 1:
> \score {
>   <<
> \new Staff \relative c' {
>   c4 c c c |
>   \stopStaff
>   s1 |
>   \startStaff
>   c4 c c c |
> }
> \new Staff \relative c' {
>   c4 c c c |
>   c4 c c c |
>   \once\override Score.BreakAlignment.break-align-orders =
> #(make-vector 3 '(staff-bar clef))
>   \clef "bass" c4 c c c |
> }
>   >>
> }
> 
> % Option 2:
> \score {
>   <<
> \new Staff \relative c' {
>   c4 c c c |
>   \stopStaff
>   s1 |
>   \startStaff
>   c4 c c c |
> }
> \new Staff \relative c' {
>   c4 c c c |
>   c4 c c c |
>   \clef "bass" c4 c c c |
> }
>   >>
>   \layout {
> \context {
>   \Score
>   \remove Break_align_engraver
> }
> \context {
>   \Staff
>   \consists Break_align_engraver
> }
>   }
> }

Thanks Pierre,

Both of these approaches seem promising. I like that neither requires
manual tweaking, and I like that the Option 2 seems to not be specific
to clefs, which is good since there are also some places where grace
notes have a similar effect. However, the version in your earlier email
does produce a better result, in that it changes where the staff begins
as opposed to moving the barlines. I'll play around with these. Thanks.

Mason


signature.asc
Description: PGP signature
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user