Re: Unconventional score and unwanted stray staff lines

2019-12-01 Thread David Bellows
Hey Thomas,

> Maybe throw \RemoveEmptyStaves away.

That works for this example but when I incorporate that back into the
original issue 
(https://lists.gnu.org/archive/html/lilypond-user/2019-05/msg00263.html)
it results in the stray staves being printed which is what lead to
this whole problem in the first place.

Because these examples are all part of the same music generating
algorithm, I don't think I'm going to be able to come up with a rule
for when to include \RemoveEmptyStaves and when not to.

On Sun, Dec 1, 2019 at 1:20 AM Thomas Morley  wrote:
>
> Am Sa., 30. Nov. 2019 um 23:19 Uhr schrieb David Bellows
> :
> >
> > Hello everyone, I started this thread back in May and as far as I can
> > tell the main problem has not been added to the tracker.
>
> Yep.
>
>
> > As I was playing around with my software (summary: a program that
> > generates music and then automatically generates Lilypond files where
> > the Lilypond file is compiled without any human interaction so it has
> > to be able to handle some crazy, crazy stuff), I discovered a
> > situation that is not properly handled by the workaround. I fear that
> > fixing this will require a workaround for the workaround which feels
> > like a bad thing. But since I don't understand what's going on and I
> > don't understand the relationship between the minimal working examples
> > supplied by others and my original example, I have no idea if the new
> > problem is part of the original issue, part of the workaround, an
> > entirely separate issue that happens to be rearing its ugly head here.
> >
> > As you'll see, the problem is incorporating a score that is
> > entirely/mostly rests into the previous workaround. Problems result.
> >
> > So, I'm not sure what my next step should be.
> >
> > Anyway, I've attached a Lilypond file. There are three different ways
> > to compile it, you just comment out the options you don't want. I've
> > attached the three resulting pdfs. I apologize for any extraneous code
> > and the way it is structured as I've kept it as close to my original
> > form as possible.
> >
> > Thanks for any additional help,
> > Dave Bellows
>
> Your first example is ok. there's no need for a line-break.
> Same for the second one: You use \RemoveEmptyStaves, thus the second
> line of rests is deleted.
> Consequently your third example (with notes) works as expected.
>
> Maybe throw \RemoveEmptyStaves away.
>
>
> Cheers,
>   Harm



Re: Unconventional score and unwanted stray staff lines

2019-12-01 Thread Thomas Morley
Am Sa., 30. Nov. 2019 um 23:19 Uhr schrieb David Bellows
:
>
> Hello everyone, I started this thread back in May and as far as I can
> tell the main problem has not been added to the tracker.

Yep.


> As I was playing around with my software (summary: a program that
> generates music and then automatically generates Lilypond files where
> the Lilypond file is compiled without any human interaction so it has
> to be able to handle some crazy, crazy stuff), I discovered a
> situation that is not properly handled by the workaround. I fear that
> fixing this will require a workaround for the workaround which feels
> like a bad thing. But since I don't understand what's going on and I
> don't understand the relationship between the minimal working examples
> supplied by others and my original example, I have no idea if the new
> problem is part of the original issue, part of the workaround, an
> entirely separate issue that happens to be rearing its ugly head here.
>
> As you'll see, the problem is incorporating a score that is
> entirely/mostly rests into the previous workaround. Problems result.
>
> So, I'm not sure what my next step should be.
>
> Anyway, I've attached a Lilypond file. There are three different ways
> to compile it, you just comment out the options you don't want. I've
> attached the three resulting pdfs. I apologize for any extraneous code
> and the way it is structured as I've kept it as close to my original
> form as possible.
>
> Thanks for any additional help,
> Dave Bellows

Your first example is ok. there's no need for a line-break.
Same for the second one: You use \RemoveEmptyStaves, thus the second
line of rests is deleted.
Consequently your third example (with notes) works as expected.

Maybe throw \RemoveEmptyStaves away.


Cheers,
  Harm



Re: Unconventional score and unwanted stray staff lines

2019-11-30 Thread David Bellows
Sorry Flaming Hakama by Elaine,

> Very unclear what the original issue is.  If by "workarounds" you mean the 
> context definitions that remove various engravers, then it is unclear what 
> you expect to print if you remove everything.

I was making a dumb assumption that the history of this entire thread
would be present and would provide the necessary context. My initial
email starts here:
https://lists.gnu.org/archive/html/lilypond-user/2019-05/msg00263.html
The main workaround, if I remember correctly, is the use of \stopStaff
to prevent empty staves from printing past the final bar line.

> As best I can gather, it seems like you want to print rests, with no 
> barlines, and with line breaks.

Actually, I want all the rests with bar lines and with line breaks.
The context where this fails is where I use the various engravers
which implement different features making the process more flexible.
See that first email I linked to above and the attached bad_test.pdf
and bad_test.ly lilypond files for examples of things going wrong.

In the examples I supplied in my previous email, everything works as
it should when printing notes but runs into problems when printing
rests. The last email of the original thread back in May ended with
someone needing to submit an official bug report but I don't think
this happened. I'm hoping that whatever bug might be causing this
will, when fixed, take care of this problem with the rests.

So I guess I was looking for an update with regard to that bug and it
being submitted to the tracker. And hoping that the situation with the
rests doesn't add any difficulties to resolving that bug.

Dave


On Sat, Nov 30, 2019 at 6:03 PM Flaming Hakama by Elaine
 wrote:
>
>
>
>> -- Forwarded message --
>> From: David Bellows 
>> To:
>> Cc: lilypond-user Mailinglist 
>> Bcc:
>> Date: Sat, 30 Nov 2019 14:18:48 -0800
>> Subject: Re: Unconventional score and unwanted stray staff lines
>
>
>>
>> As I was playing around with my software (summary: a program that
>> generates music and then automatically generates Lilypond files where
>> the Lilypond file is compiled without any human interaction so it has
>> to be able to handle some crazy, crazy stuff), I discovered a
>> situation that is not properly handled by the workaround.
>
>
>> As you'll see, the problem is incorporating a score that is
>> entirely/mostly rests into the previous workaround. Problems result.
>
>
> Very unclear what the original issue is.  If by "workarounds" you mean the 
> context definitions that remove various engravers, then it is unclear what 
> you expect to print if you remove everything.
>
>> So, I'm not sure what my next step should be.
>
>
> Describe more clearly what you are trying to achieve.
>
>>
>> Anyway, I've attached a Lilypond file. There are three different ways
>> to compile it, you just comment out the options you don't want.
>
>
> Better to have one file per use case.
>
>> Thanks for any additional help,
>> Dave Bellows
>
>
>
> Just guessing about what you are trying to achieve.  As best I can gather, it 
> seems like you want to print rests, with no barlines, and with line breaks.  
> Here is one way to achieve this.  Not sure what the point of \stopStaff is, 
> but it works with that command.
>
>
> \version "2.19.83"
>
> \header{
> title = "19 rests: prints all rests and line breaks, and uses empty 
> barlines rather than removing the barline engraver."
> }
>
> voice_one_one = {
> r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" \break
> r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" \break
> r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar 
> ""
> \bar "|."
> \stopStaff
> }
>
> \score {
> <<
> \new PianoStaff  <<
> \new Staff = "upper" <<
> \clef "treble"
> \voice_one_one
> >>
> >>
> >>
> }
>
>
> HTH,
>
> Elaine Alt
> 415 . 341 .4954   "Confusion is 
> highly underrated"
> ela...@flaminghakama.com
> Producer ~ Composer ~ Instrumentalist ~ Educator
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-



Re: Unconventional score and unwanted stray staff lines

2019-11-30 Thread Flaming Hakama by Elaine
-- Forwarded message --
> From: David Bellows 
> To:
> Cc: lilypond-user Mailinglist 
> Bcc:
> Date: Sat, 30 Nov 2019 14:18:48 -0800
> Subject: Re: Unconventional score and unwanted stray staff lines
>


> As I was playing around with my software (summary: a program that
> generates music and then automatically generates Lilypond files where
> the Lilypond file is compiled without any human interaction so it has
> to be able to handle some crazy, crazy stuff), I discovered a
> situation that is not properly handled by the workaround.


As you'll see, the problem is incorporating a score that is
> entirely/mostly rests into the previous workaround. Problems result.
>

Very unclear what the original issue is.  If by "workarounds" you mean the
context definitions that remove various engravers, then it is unclear what
you expect to print if you remove everything.

So, I'm not sure what my next step should be.
>

Describe more clearly what you are trying to achieve.


> Anyway, I've attached a Lilypond file. There are three different ways
> to compile it, you just comment out the options you don't want.


Better to have one file per use case.

Thanks for any additional help,
> Dave Bellows
>


Just guessing about what you are trying to achieve.  As best I can gather,
it seems like you want to print rests, with no barlines, and with line
breaks.  Here is one way to achieve this.  Not sure what the point of
\stopStaff is, but it works with that command.


\version "2.19.83"

\header{
title = "19 rests: prints all rests and line breaks, and uses empty
barlines rather than removing the barline engraver."
}

voice_one_one = {
r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar ""
\break
r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar ""
\break
r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1 \bar "" r1
\bar ""
\bar "|."
\stopStaff
}

\score {
<<
\new PianoStaff  <<
\new Staff = "upper" <<
\clef "treble"
\voice_one_one
>>
>>
>>
}


HTH,

Elaine Alt
415 . 341 .4954   "*Confusion is
highly underrated*"
ela...@flaminghakama.com
Producer ~ Composer ~ Instrumentalist ~ Educator
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread Thomas Morley
Am Di., 21. Mai 2019 um 22:46 Uhr schrieb Leo Correia de Verdier
:
>
> A quite minimal could look like:
>
> \version "2.19.82"
>
> \score {
>   << \new Staff {e'2.}
>  \new Staff {g'4. f'4}
>  \new Staff {a'1} >>
>
>   \layout {
> \context {
>   \Voice
>   \remove "Note_heads_engraver"
>   \consists "Completion_heads_engraver"
>   completionUnit = #(ly:make-moment 2/4)}
>   }
> }

Thanks for it.
And indeed \noBeam is not sufficient. \stopStaff is the preferable workaround.

Now ready to be entered on the tracker.
Any takers?


Cheers,
  Harm

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


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread Leo Correia de Verdier
A quite minimal could look like:

\version "2.19.82" 

\score { 
  << \new Staff {e'2.}
 \new Staff {g'4. f'4}
 \new Staff {a'1} >>
  
  \layout {
\context { 
  \Voice
  \remove "Note_heads_engraver"
  \consists "Completion_heads_engraver" 
  completionUnit = #(ly:make-moment 2/4)}
  } 
}
> 21 maj 2019 kl. 22:08 skrev David Bellows :
> 
> Thomas,
> 
>> Main thing here is
>> \stopStaff
> 
> Ok, so \noStaff seems to fix my problem without the need for anything
> else. I'll need to test it a lot more but perhaps that will get me
> through until/unless this problem gets solved within Lilypond. Thanks
> for that! I search and search the documentation and the mail list but
> sometimes that one command I really need escapes me.
> 
>> Could you please provide a minimal where it does not?
> 
> I don't know how to make a truly minimal example but I have stripped
> out all the unnecessary bits and attached it and the pdf it produces.
> Sorry it's not as minimal as it should be -- I often don't understand
> what's going on in my own Lilypond files.
> 
> \noBeam fixes the problem with notes that would be beamed unless that
> note is tied to a previous one. You can see this in Piano 1 and 6.
> 
> Dave
> 
> On Tue, May 21, 2019 at 12:12 PM Thomas Morley  
> wrote:
>> 
>> Am Di., 21. Mai 2019 um 18:03 Uhr schrieb David Bellows 
>> :
>>> 
>>> Hi Thomas,
>>> 
>>> Thanks for jumping in!
>> 
>> Well, without Urs' minimal I wouldn't have. Thanks Urs!
>> 
 At least in the minimal one can workaround with inserting \noBeam:
>>> 
>>> It works in some cases but not when that last pitch it tied to
>>> previous notes (see attached pdf).
>> 
>> Here it works with \noBeam:
>>  <<
>>\new Staff { c'1 c'1 }
>>\new Staff { c'1 c'4~ c'16 \noBeam }
 
>> 
>> Could you please provide a minimal where it does not?
>> 
>>> Karim provided a workaround:
>>> 
>>> \once \set Staff.whichBar = "|." \override Staff.Clef.stencil=##f \set
>>> PianoStaff.shortInstrumentName = #"" \stopStaff
>> 
>> Main thing here is
>>  \stopStaff
>> 
>> The other settings may have more to do with a personal workflow, I suppose.
>> 
>> Cheers,
>>  Harm
> ___
> 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: Unconventional score and unwanted stray staff lines

2019-05-21 Thread David Bellows
Thomas,

> Main thing here is
>  \stopStaff

Ok, so \noStaff seems to fix my problem without the need for anything
else. I'll need to test it a lot more but perhaps that will get me
through until/unless this problem gets solved within Lilypond. Thanks
for that! I search and search the documentation and the mail list but
sometimes that one command I really need escapes me.

> Could you please provide a minimal where it does not?

I don't know how to make a truly minimal example but I have stripped
out all the unnecessary bits and attached it and the pdf it produces.
Sorry it's not as minimal as it should be -- I often don't understand
what's going on in my own Lilypond files.

\noBeam fixes the problem with notes that would be beamed unless that
note is tied to a previous one. You can see this in Piano 1 and 6.

Dave

On Tue, May 21, 2019 at 12:12 PM Thomas Morley  wrote:
>
> Am Di., 21. Mai 2019 um 18:03 Uhr schrieb David Bellows 
> :
> >
> > Hi Thomas,
> >
> > Thanks for jumping in!
>
> Well, without Urs' minimal I wouldn't have. Thanks Urs!
>
> > > At least in the minimal one can workaround with inserting \noBeam:
> >
> > It works in some cases but not when that last pitch it tied to
> > previous notes (see attached pdf).
>
> Here it works with \noBeam:
>   <<
> \new Staff { c'1 c'1 }
> \new Staff { c'1 c'4~ c'16 \noBeam }
>   >>
>
> Could you please provide a minimal where it does not?
>
> > Karim provided a workaround:
> >
> > \once \set Staff.whichBar = "|." \override Staff.Clef.stencil=##f \set
> > PianoStaff.shortInstrumentName = #"" \stopStaff
>
> Main thing here is
>   \stopStaff
>
> The other settings may have more to do with a personal workflow, I suppose.
>
> Cheers,
>   Harm


test.pdf
Description: Adobe PDF document
\version "2.19.83" 

\language "english"

scoreinfo = {\time 4/4 \tempo "andante" 4 = 90}

voice_one_one = {\key c \major r64 r128 r4 r4 \noBeam \bar "|."  }

voice_two_one = {\key c \major e,,64\mp cs128\ppp g4 gs4\fff \noBeam \bar "|."  }

voice_one_two = {\key c \major r1 fs'''4\ppp fs''4\p r64 \noBeam  \bar "|."  }

voice_two_two = {\key c \major d,1\ppp r4 r4 g64\pp \noBeam \bar "|."  }

voice_one_three = {\key c \major r4. r1 g'1.\pp ds'8\ppp \noBeam \bar "|."  }

voice_two_three = {\key c \major e4.\mp r1 r1. r8 \noBeam \bar "|."  }

voice_one_four = {\key c \major cs''2\mf e'''2.\p as''2\ f''64\mp \noBeam \bar "|."  }

voice_two_four = {\key c \major r2 r2. r2 r64 \noBeam \bar "|."  }

voice_one_five = {\key c \major cs128\mf r32 r2 gs4\mp \noBeam \bar "|."  }

voice_two_five = {\key c \major r128 r32 as2\ r4 \noBeam \bar "|."  }

voice_one_six = {\key c \major r1 a'''64\f r32 r2.. \noBeam \bar "|."  }

voice_two_six = {\key c \major a1\mp r64 f,,32\ c,2..\fff \noBeam \bar "|."  }

\paper {#(set-paper-size "letter") short-indent = 5\mm}

\score { << 
  \new PianoStaff \with { instrumentName = #"Piano 1" shortInstrumentName = #"Pn 1" } << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble" \voice_one_one >> 
\new Staff = "lower" << 
  \scoreinfo \clef bass \voice_two_one >> 
 >>

  \new PianoStaff \with { instrumentName = #"Piano 2" shortInstrumentName = #"Pn 2" } << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble" \voice_one_two >> 
\new Staff = "lower" << 
  \scoreinfo \clef bass \voice_two_two >> 
 >>

  \new PianoStaff \with { instrumentName = #"Piano 3" shortInstrumentName = #"Pn 3" } << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble" \voice_one_three >> 
\new Staff = "lower" << 
  \scoreinfo \clef bass \voice_two_three >> 
 >>

  \new PianoStaff \with { instrumentName = #"Piano 4" shortInstrumentName = #"Pn 4" } << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble" \voice_one_four >> 
\new Staff = "lower" << 
  \scoreinfo \clef bass \voice_two_four >> 
 >>

  \new PianoStaff \with { instrumentName = #"Piano 5" shortInstrumentName = #"Pn 5" } << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble" \voice_one_five >> 
\new Staff = "lower" << 
  \scoreinfo \clef bass \voice_two_five >> 
 >>

  \new PianoStaff \with { instrumentName = #"Piano 6" shortInstrumentName = #"Pn 6" } << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble" \voice_one_six >> 
\new Staff = "lower" << 
  \scoreinfo \clef bass \voice_two_six >> 
 >>

>> 
  \layout{ragged-bottom = ##t  
\context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver"}
\context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver" }
\context { \Voice \remove "Note_heads_engraver" \consists "Completion_heads_engraver" \remove "Rest_engraver" \consists "Completion_rest_engraver" completionUnit = #(ly:make-moment 2/4)}} 
}___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread Thomas Morley
Am Di., 21. Mai 2019 um 18:03 Uhr schrieb David Bellows :
>
> Hi Thomas,
>
> Thanks for jumping in!

Well, without Urs' minimal I wouldn't have. Thanks Urs!

> > At least in the minimal one can workaround with inserting \noBeam:
>
> It works in some cases but not when that last pitch it tied to
> previous notes (see attached pdf).

Here it works with \noBeam:
  <<
\new Staff { c'1 c'1 }
\new Staff { c'1 c'4~ c'16 \noBeam }
  >>

Could you please provide a minimal where it does not?

> Karim provided a workaround:
>
> \once \set Staff.whichBar = "|." \override Staff.Clef.stencil=##f \set
> PianoStaff.shortInstrumentName = #"" \stopStaff

Main thing here is
  \stopStaff

The other settings may have more to do with a personal workflow, I suppose.

Cheers,
  Harm

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


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread David Bellows
Hi Thomas,

Thanks for jumping in!

> At least in the minimal one can workaround with inserting \noBeam:

It works in some cases but not when that last pitch it tied to
previous notes (see attached pdf). When they are not tied this works
well. In my use-case, I have Lilypond break notes up automatically
across beams and according to the beat using all kinds of durations so
this sort of thing happens a lot in the scores I generate.

Karim provided a workaround:

\once \set Staff.whichBar = "|." \override Staff.Clef.stencil=##f \set
PianoStaff.shortInstrumentName = #"" \stopStaff

along with: with \context {\Staff \RemoveEmptyStaves}

This seems to work in all my tests but I was hoping for cleaner
Lilypond files since my users will have access to them.

Dave

On Tue, May 21, 2019 at 2:56 AM Thomas Morley  wrote:
>
> Am Di., 21. Mai 2019 um 11:27 Uhr schrieb Urs Liska :
> >
> >
> >
> > Am 21. Mai 2019 10:49:01 MESZ schrieb Thomas Morley 
> > :
> > >Am Di., 21. Mai 2019 um 02:32 Uhr schrieb Thomas Morley
> > >:
> > >>
> > >> Am So., 19. Mai 2019 um 20:32 Uhr schrieb Urs Liska
> > >:
> > >>
> > >> > The staves that continue to be printed appear to only happen when
> > >the
> > >> > last note in that staff is an actual printed note. If it's a rest
> > >or a
> > >> > space then the extra staves are not printed. Further
> > >experimentation
> > >> > and it looks like the extra staves are only printed if the final
> > >note
> > >> > is less than a quarter note (!).
> > >> [..]
> > >> > Maybe something to do with the time signature as well?
> > >> >
> > >> > This looks like a bug maybe?
> > >> >
> > >> > I could confirm that behaviour with the following MWE:
> > >> >
> > >> > \version "2.21.0"
> > >> >
> > >> > \score {
> > >> >   <<
> > >> > \new Staff { c'1 c'1 }
> > >> > \new Staff { c'1 c'4 c'16 }
> > >> > \new Staff { c'1 c'8 }
> > >> > \new Staff { c'1 c'4 }
> > >> > \new Staff { c'1 c'4. }
> > >> >   >>
> > >> > }
> > >> >
> > >> > I too find this surprising. I suggest you ask on lilypond-user
> > >whether this is a bug or intended behaviour. If it is intended (due to
> > >some engraving convention for example) it might be made configurable.
> > >>
> > >> Looks like a bug to me.
> > >>
> > >> First bad commit:
> > >>
> > >> commit 9ff88d127acb371435a96e04cba7f0e3f525496d
> > >> Author: Keith OHara 
> > >> Date:   Sat Aug 6 12:05:59 2011 -0700
> > >>
> > >> auto-beam-engraver: keep a Context_handle to starting Staff
> > >>
> > >> Which is in version 2.15.9
> > >>
> > >> cc-ing Keith
> > >>
> > >>
> > >> Cheers,
> > >>   Harm
> > >
> > >At least in the minimal one can workaround with inserting \noBeam:
> > >
> > >\score {
> > >  <<
> > >\new Staff { c'1 c'1 }
> > >\new Staff { c'1 c'4 c'16 \noBeam }
> > >\new Staff { c'1 c'8 \noBeam }
> > >\new Staff { c'1 c'4 }
> > >\new Staff { c'1 c'4. }
> > >  >>
> > >}
> > >
> >
> > Which might even be a pointer to the underlying trigger.
> >
> > Urs
> >
> > >Cheers,
> > >  Harm
>
> Finally I found it on the tracker:
> https://sourceforge.net/p/testlilyissues/issues/1800/
> Review at Rietveld:
> https://codereview.appspot.com/4830064
>
> And indeed
>
> <<
>   \new Voice {
> c8 c c
> \change Staff = "down"
> c
>   }
>   \context Staff = "down" s2
> >>
>
> segfaults without the patch
>
>
> Cheers,
>   Harm
>
> ___
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user


Piano_Simple_Melody.pdf
Description: Adobe PDF document
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread Thomas Morley
Am Di., 21. Mai 2019 um 11:27 Uhr schrieb Urs Liska :
>
>
>
> Am 21. Mai 2019 10:49:01 MESZ schrieb Thomas Morley 
> :
> >Am Di., 21. Mai 2019 um 02:32 Uhr schrieb Thomas Morley
> >:
> >>
> >> Am So., 19. Mai 2019 um 20:32 Uhr schrieb Urs Liska
> >:
> >>
> >> > The staves that continue to be printed appear to only happen when
> >the
> >> > last note in that staff is an actual printed note. If it's a rest
> >or a
> >> > space then the extra staves are not printed. Further
> >experimentation
> >> > and it looks like the extra staves are only printed if the final
> >note
> >> > is less than a quarter note (!).
> >> [..]
> >> > Maybe something to do with the time signature as well?
> >> >
> >> > This looks like a bug maybe?
> >> >
> >> > I could confirm that behaviour with the following MWE:
> >> >
> >> > \version "2.21.0"
> >> >
> >> > \score {
> >> >   <<
> >> > \new Staff { c'1 c'1 }
> >> > \new Staff { c'1 c'4 c'16 }
> >> > \new Staff { c'1 c'8 }
> >> > \new Staff { c'1 c'4 }
> >> > \new Staff { c'1 c'4. }
> >> >   >>
> >> > }
> >> >
> >> > I too find this surprising. I suggest you ask on lilypond-user
> >whether this is a bug or intended behaviour. If it is intended (due to
> >some engraving convention for example) it might be made configurable.
> >>
> >> Looks like a bug to me.
> >>
> >> First bad commit:
> >>
> >> commit 9ff88d127acb371435a96e04cba7f0e3f525496d
> >> Author: Keith OHara 
> >> Date:   Sat Aug 6 12:05:59 2011 -0700
> >>
> >> auto-beam-engraver: keep a Context_handle to starting Staff
> >>
> >> Which is in version 2.15.9
> >>
> >> cc-ing Keith
> >>
> >>
> >> Cheers,
> >>   Harm
> >
> >At least in the minimal one can workaround with inserting \noBeam:
> >
> >\score {
> >  <<
> >\new Staff { c'1 c'1 }
> >\new Staff { c'1 c'4 c'16 \noBeam }
> >\new Staff { c'1 c'8 \noBeam }
> >\new Staff { c'1 c'4 }
> >\new Staff { c'1 c'4. }
> >  >>
> >}
> >
>
> Which might even be a pointer to the underlying trigger.
>
> Urs
>
> >Cheers,
> >  Harm

Finally I found it on the tracker:
https://sourceforge.net/p/testlilyissues/issues/1800/
Review at Rietveld:
https://codereview.appspot.com/4830064

And indeed

<<
  \new Voice {
c8 c c
\change Staff = "down"
c
  }
  \context Staff = "down" s2
>>

segfaults without the patch


Cheers,
  Harm

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


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread Urs Liska



Am 21. Mai 2019 10:49:01 MESZ schrieb Thomas Morley :
>Am Di., 21. Mai 2019 um 02:32 Uhr schrieb Thomas Morley
>:
>>
>> Am So., 19. Mai 2019 um 20:32 Uhr schrieb Urs Liska
>:
>>
>> > The staves that continue to be printed appear to only happen when
>the
>> > last note in that staff is an actual printed note. If it's a rest
>or a
>> > space then the extra staves are not printed. Further
>experimentation
>> > and it looks like the extra staves are only printed if the final
>note
>> > is less than a quarter note (!).
>> [..]
>> > Maybe something to do with the time signature as well?
>> >
>> > This looks like a bug maybe?
>> >
>> > I could confirm that behaviour with the following MWE:
>> >
>> > \version "2.21.0"
>> >
>> > \score {
>> >   <<
>> > \new Staff { c'1 c'1 }
>> > \new Staff { c'1 c'4 c'16 }
>> > \new Staff { c'1 c'8 }
>> > \new Staff { c'1 c'4 }
>> > \new Staff { c'1 c'4. }
>> >   >>
>> > }
>> >
>> > I too find this surprising. I suggest you ask on lilypond-user
>whether this is a bug or intended behaviour. If it is intended (due to
>some engraving convention for example) it might be made configurable.
>>
>> Looks like a bug to me.
>>
>> First bad commit:
>>
>> commit 9ff88d127acb371435a96e04cba7f0e3f525496d
>> Author: Keith OHara 
>> Date:   Sat Aug 6 12:05:59 2011 -0700
>>
>> auto-beam-engraver: keep a Context_handle to starting Staff
>>
>> Which is in version 2.15.9
>>
>> cc-ing Keith
>>
>>
>> Cheers,
>>   Harm
>
>At least in the minimal one can workaround with inserting \noBeam:
>
>\score {
>  <<
>\new Staff { c'1 c'1 }
>\new Staff { c'1 c'4 c'16 \noBeam }
>\new Staff { c'1 c'8 \noBeam }
>\new Staff { c'1 c'4 }
>\new Staff { c'1 c'4. }
>  >>
>}
>

Which might even be a pointer to the underlying trigger.

Urs

>Cheers,
>  Harm

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


Re: Unconventional score and unwanted stray staff lines

2019-05-21 Thread Thomas Morley
Am Di., 21. Mai 2019 um 02:32 Uhr schrieb Thomas Morley
:
>
> Am So., 19. Mai 2019 um 20:32 Uhr schrieb Urs Liska :
>
> > The staves that continue to be printed appear to only happen when the
> > last note in that staff is an actual printed note. If it's a rest or a
> > space then the extra staves are not printed. Further experimentation
> > and it looks like the extra staves are only printed if the final note
> > is less than a quarter note (!).
> [..]
> > Maybe something to do with the time signature as well?
> >
> > This looks like a bug maybe?
> >
> > I could confirm that behaviour with the following MWE:
> >
> > \version "2.21.0"
> >
> > \score {
> >   <<
> > \new Staff { c'1 c'1 }
> > \new Staff { c'1 c'4 c'16 }
> > \new Staff { c'1 c'8 }
> > \new Staff { c'1 c'4 }
> > \new Staff { c'1 c'4. }
> >   >>
> > }
> >
> > I too find this surprising. I suggest you ask on lilypond-user whether this 
> > is a bug or intended behaviour. If it is intended (due to some engraving 
> > convention for example) it might be made configurable.
>
> Looks like a bug to me.
>
> First bad commit:
>
> commit 9ff88d127acb371435a96e04cba7f0e3f525496d
> Author: Keith OHara 
> Date:   Sat Aug 6 12:05:59 2011 -0700
>
> auto-beam-engraver: keep a Context_handle to starting Staff
>
> Which is in version 2.15.9
>
> cc-ing Keith
>
>
> Cheers,
>   Harm

At least in the minimal one can workaround with inserting \noBeam:

\score {
  <<
\new Staff { c'1 c'1 }
\new Staff { c'1 c'4 c'16 \noBeam }
\new Staff { c'1 c'8 \noBeam }
\new Staff { c'1 c'4 }
\new Staff { c'1 c'4. }
  >>
}

Cheers,
  Harm

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


Re: Unconventional score and unwanted stray staff lines

2019-05-20 Thread Thomas Morley
Am So., 19. Mai 2019 um 20:32 Uhr schrieb Urs Liska :

> The staves that continue to be printed appear to only happen when the
> last note in that staff is an actual printed note. If it's a rest or a
> space then the extra staves are not printed. Further experimentation
> and it looks like the extra staves are only printed if the final note
> is less than a quarter note (!).
[..]
> Maybe something to do with the time signature as well?
>
> This looks like a bug maybe?
>
> I could confirm that behaviour with the following MWE:
>
> \version "2.21.0"
>
> \score {
>   <<
> \new Staff { c'1 c'1 }
> \new Staff { c'1 c'4 c'16 }
> \new Staff { c'1 c'8 }
> \new Staff { c'1 c'4 }
> \new Staff { c'1 c'4. }
>   >>
> }
>
> I too find this surprising. I suggest you ask on lilypond-user whether this 
> is a bug or intended behaviour. If it is intended (due to some engraving 
> convention for example) it might be made configurable.

Looks like a bug to me.

First bad commit:

commit 9ff88d127acb371435a96e04cba7f0e3f525496d
Author: Keith OHara 
Date:   Sat Aug 6 12:05:59 2011 -0700

auto-beam-engraver: keep a Context_handle to starting Staff

Which is in version 2.15.9

cc-ing Keith


Cheers,
  Harm

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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hey Mark,

> You are asking a computer (Lilypond) to look good when "one never knows 
> what's going to happen."

> IMHO, the two are mutually exclusive.

One of the big reasons I chose Lilypond for this project is how good a
job it does at making things look good by default without human
intervention. Obviously I have to experiment a lot with options and
how I handle things but so far it's doing really well. And even when
something is less than ideal on a particular run -- since the notes
being generated are random --, the results are still generally
acceptable. Lilypond really is a pretty terrific program.

On Sun, May 19, 2019 at 2:39 PM Mark Stephen Mrotek
 wrote:
>
> Dave,
>
> You are asking a computer (Lilypond) to look good when "one never knows 
> what's going to happen."
>
> IMHO, the two are mutually exclusive.
>
> Mark
>
> -Original Message-
> From: David Bellows [mailto:davebell...@gmail.com]
> Sent: Sunday, May 19, 2019 1:23 PM
> To: Mark Stephen Mrotek 
> Cc: lilypond-user 
> Subject: Re: Unconventional score and unwanted stray staff lines
>
> Hey Mark,
>
> This music is generated algorithmically and there are a lot of options for 
> the user to choose from, so one never knows what's going to happen. I need 
> for Lilypond to do its usual thing and look perfect without any additional 
> user interaction.
>
> For example, I left out of these examples the scheme code that automatically 
> adds ottava markings based on the instrument and so on.
>
> Dave
>
> On Sun, May 19, 2019 at 10:35 AM Mark Stephen Mrotek  
> wrote:
> >
> > David,
> >
> > My experience is transcribing 18th and 19th century piano scores.
> > I do get "run-off" staves.
> > This is usually the result of incorrect mensuration of a note or notes.
> >
> > You piece still has some sort of vertical simultaneity.
> > Perhaps you could start with a temporary time signature, just to see if 
> > voices align.
> > Then remove it for publication.
> >
> > Mark
> >
> > -Original Message-
> > From: David Bellows [mailto:davebell...@gmail.com]
> > Sent: Saturday, May 18, 2019 10:46 PM
> > To: Mark Stephen Mrotek 
> > Cc: lilypond-user 
> > Subject: Re: Unconventional score and unwanted stray staff lines
> >
> > Hey Mark,
> >
> > > Maybe use bar checks?
> >
> > Given that a lot of the music isn't generated to fit any particular time 
> > signature (ie, the bar lines are often there just to break things up to 
> > ease reading), I would get tons of bar check errors. Plus, keeping track of 
> > when bars should be inserted in my software seems like it would be a huge 
> > chore. Is this something you think would solve the problem?
> >
> > On Sat, May 18, 2019 at 10:25 PM Mark Stephen Mrotek  
> > wrote:
> > >
> > > David
> > >
> > > Maybe use bar checks?
> > >
> > > Mark
> > >
> > > -Original Message-
> > > From: lilypond-user
> > > [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On
> > > Behalf Of David Bellows
> > > Sent: Saturday, May 18, 2019 3:59 PM
> > > To: lilypond-user 
> > > Subject: Unconventional score and unwanted stray staff lines
> > >
> > > Hello everyone,
> > >
> > > I tried to keep the examples minimal but I also needed to show the full 
> > > extent of what is going on.
> > >
> > > Attached are two Lilypond files and pdfs showing an unconventional score. 
> > > Each part has the same number of notes but since the durations are 
> > > random, each part ends at its own time.
> > >
> > > badtest.ly and badtest.pdf show the default behavior. When a part ends, 
> > > one of its staves continues on till the last part ends. I don't want this 
> > > behavior.
> > >
> > > test.ly and test.pdf do a better job of showing what happens with the 
> > > workaround hack of adding s128 at the end of each part. The problem with 
> > > that -- and I didn't include examples -- is that if all the durations are 
> > > the same and end at a natural bar line, an extra empty measure is added 
> > > at the end of each part. I can't check for this occurrence ahead of time 
> > > in my own software as it would be insane to keep track of all of that.
> > >
> > > You'll notice a lot of context commands all of which I think are 
> > > necessary to get everything else to look as it should.
> > >
> > > So I'm hoping someone has an idea about what's going on here and how
> > > to prevent those extra staves like in test.pdf
> > >
> > > Also, these Lilypond files are generated automatically by another program 
> > > I've created so the layout of the Lilypond file can't really be changed 
> > > without a massive amount of work. Hopefully a solution won't require 
> > > something like that.
> > >
> >
>

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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hey Kieren,

> If the algorithm uses a random number generator to determine which output to 
> give, “one never knows what’s going to happen”, but it would still be easy 
> for Lilypond to make the result "look good".

Yep, that's it exactly. I do spend a lot of time generating a lot of
different runs with different parameters and such looking for weird
gotchas and then coming up with general solutions when those things
happen. So far the results are really good which is a testament to
Lilypond's quality. The final result will be online and there will be
no chance for the user to fix the Lilypond file so I need to make sure
things look as good as possible.

Dave

On Sun, May 19, 2019 at 2:50 PM Kieren MacMillan
 wrote:
>
> Hi Mark,
>
> > You are asking a computer (Lilypond) to look good when "one never knows 
> > what's going to happen."
> > IMHO, the two are mutually exclusive.
>
> Doesn’t that depends ultimately upon the precise algorithms (and thus output) 
> involved? I mean, I could code an algorithm that outputs either
>
>   { c'1 }
>
> or
>
>   { c''1 }
>
> with no other possibility. If the algorithm uses a random number generator to 
> determine which output to give, “one never knows what’s going to happen”, but 
> it would still be easy for Lilypond to make the result "look good".
>
> Obviously this is a vast simplification of the actual situation under 
> discussion… My point is simply that the two constraints, while potentially 
> difficult to satisfy simultaneously, aren’t [literally] mutually exclusive.
>
> Cheers,
> Kieren.
> 
>
> Kieren MacMillan, composer
> ‣ website: www.kierenmacmillan.info
> ‣ email: i...@kierenmacmillan.info
>

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


RE: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Mark Stephen Mrotek
Kieren,

Thank you for the correction.

Mark

-Original Message-
From: Kieren MacMillan [mailto:kieren_macmil...@sympatico.ca] 
Sent: Sunday, May 19, 2019 2:50 PM
To: Mark Stephen Mrotek 
Cc: David Bellows ; Lilypond-User Mailing List 

Subject: Re: Unconventional score and unwanted stray staff lines

Hi Mark,

> You are asking a computer (Lilypond) to look good when "one never knows 
> what's going to happen."
> IMHO, the two are mutually exclusive.

Doesn’t that depends ultimately upon the precise algorithms (and thus output) 
involved? I mean, I could code an algorithm that outputs either

  { c'1 }

or

  { c''1 }

with no other possibility. If the algorithm uses a random number generator to 
determine which output to give, “one never knows what’s going to happen”, but 
it would still be easy for Lilypond to make the result "look good".

Obviously this is a vast simplification of the actual situation under 
discussion… My point is simply that the two constraints, while potentially 
difficult to satisfy simultaneously, aren’t [literally] mutually exclusive.

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Kieren MacMillan
Hi Mark,

> You are asking a computer (Lilypond) to look good when "one never knows 
> what's going to happen."
> IMHO, the two are mutually exclusive.

Doesn’t that depends ultimately upon the precise algorithms (and thus output) 
involved? I mean, I could code an algorithm that outputs either

  { c'1 }

or

  { c''1 }

with no other possibility. If the algorithm uses a random number generator to 
determine which output to give, “one never knows what’s going to happen”, but 
it would still be easy for Lilypond to make the result "look good".

Obviously this is a vast simplification of the actual situation under 
discussion… My point is simply that the two constraints, while potentially 
difficult to satisfy simultaneously, aren’t [literally] mutually exclusive.

Cheers,
Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


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


RE: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Mark Stephen Mrotek
Dave,

You are asking a computer (Lilypond) to look good when "one never knows what's 
going to happen."

IMHO, the two are mutually exclusive.

Mark

-Original Message-
From: David Bellows [mailto:davebell...@gmail.com] 
Sent: Sunday, May 19, 2019 1:23 PM
To: Mark Stephen Mrotek 
Cc: lilypond-user 
Subject: Re: Unconventional score and unwanted stray staff lines

Hey Mark,

This music is generated algorithmically and there are a lot of options for the 
user to choose from, so one never knows what's going to happen. I need for 
Lilypond to do its usual thing and look perfect without any additional user 
interaction.

For example, I left out of these examples the scheme code that automatically 
adds ottava markings based on the instrument and so on.

Dave

On Sun, May 19, 2019 at 10:35 AM Mark Stephen Mrotek  
wrote:
>
> David,
>
> My experience is transcribing 18th and 19th century piano scores.
> I do get "run-off" staves.
> This is usually the result of incorrect mensuration of a note or notes.
>
> You piece still has some sort of vertical simultaneity.
> Perhaps you could start with a temporary time signature, just to see if 
> voices align.
> Then remove it for publication.
>
> Mark
>
> -Original Message-
> From: David Bellows [mailto:davebell...@gmail.com]
> Sent: Saturday, May 18, 2019 10:46 PM
> To: Mark Stephen Mrotek 
> Cc: lilypond-user 
> Subject: Re: Unconventional score and unwanted stray staff lines
>
> Hey Mark,
>
> > Maybe use bar checks?
>
> Given that a lot of the music isn't generated to fit any particular time 
> signature (ie, the bar lines are often there just to break things up to ease 
> reading), I would get tons of bar check errors. Plus, keeping track of when 
> bars should be inserted in my software seems like it would be a huge chore. 
> Is this something you think would solve the problem?
>
> On Sat, May 18, 2019 at 10:25 PM Mark Stephen Mrotek  
> wrote:
> >
> > David
> >
> > Maybe use bar checks?
> >
> > Mark
> >
> > -Original Message-
> > From: lilypond-user
> > [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On 
> > Behalf Of David Bellows
> > Sent: Saturday, May 18, 2019 3:59 PM
> > To: lilypond-user 
> > Subject: Unconventional score and unwanted stray staff lines
> >
> > Hello everyone,
> >
> > I tried to keep the examples minimal but I also needed to show the full 
> > extent of what is going on.
> >
> > Attached are two Lilypond files and pdfs showing an unconventional score. 
> > Each part has the same number of notes but since the durations are random, 
> > each part ends at its own time.
> >
> > badtest.ly and badtest.pdf show the default behavior. When a part ends, one 
> > of its staves continues on till the last part ends. I don't want this 
> > behavior.
> >
> > test.ly and test.pdf do a better job of showing what happens with the 
> > workaround hack of adding s128 at the end of each part. The problem with 
> > that -- and I didn't include examples -- is that if all the durations are 
> > the same and end at a natural bar line, an extra empty measure is added at 
> > the end of each part. I can't check for this occurrence ahead of time in my 
> > own software as it would be insane to keep track of all of that.
> >
> > You'll notice a lot of context commands all of which I think are necessary 
> > to get everything else to look as it should.
> >
> > So I'm hoping someone has an idea about what's going on here and how 
> > to prevent those extra staves like in test.pdf
> >
> > Also, these Lilypond files are generated automatically by another program 
> > I've created so the layout of the Lilypond file can't really be changed 
> > without a massive amount of work. Hopefully a solution won't require 
> > something like that.
> >
>


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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Urs Liska


Am 19.05.19 um 22:27 schrieb David Bellows:

Hey Urs,


I too find this surprising. I suggest you ask on lilypond-user whether this is 
a bug or intended behaviour. If it is intended (due to some engraving 
convention for example) it might be made configurable.

I first posted this to lilypond-user. I don't know if I need to repost
with a clearer explanation and examples?


I'd say yes, repost it to the other list, showing a MWE without any 
“distractions” that clearly shows the specific behaviour, but out of 
your original context. It is a separate question from your original 
interest in achieving a certain goal, and by submitting the bug report 
(or request for clarification) beyond what you need to achieve in the 
concrete use case you are providing the community a certain favor.


Best
Urs


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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hey Mark,

This music is generated algorithmically and there are a lot of options
for the user to choose from, so one never knows what's going to
happen. I need for Lilypond to do its usual thing and look perfect
without any additional user interaction.

For example, I left out of these examples the scheme code that
automatically adds ottava markings based on the instrument and so on.

Dave

On Sun, May 19, 2019 at 10:35 AM Mark Stephen Mrotek
 wrote:
>
> David,
>
> My experience is transcribing 18th and 19th century piano scores.
> I do get "run-off" staves.
> This is usually the result of incorrect mensuration of a note or notes.
>
> You piece still has some sort of vertical simultaneity.
> Perhaps you could start with a temporary time signature, just to see if 
> voices align.
> Then remove it for publication.
>
> Mark
>
> -Original Message-
> From: David Bellows [mailto:davebell...@gmail.com]
> Sent: Saturday, May 18, 2019 10:46 PM
> To: Mark Stephen Mrotek 
> Cc: lilypond-user 
> Subject: Re: Unconventional score and unwanted stray staff lines
>
> Hey Mark,
>
> > Maybe use bar checks?
>
> Given that a lot of the music isn't generated to fit any particular time 
> signature (ie, the bar lines are often there just to break things up to ease 
> reading), I would get tons of bar check errors. Plus, keeping track of when 
> bars should be inserted in my software seems like it would be a huge chore. 
> Is this something you think would solve the problem?
>
> On Sat, May 18, 2019 at 10:25 PM Mark Stephen Mrotek  
> wrote:
> >
> > David
> >
> > Maybe use bar checks?
> >
> > Mark
> >
> > -Original Message-
> > From: lilypond-user
> > [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf
> > Of David Bellows
> > Sent: Saturday, May 18, 2019 3:59 PM
> > To: lilypond-user 
> > Subject: Unconventional score and unwanted stray staff lines
> >
> > Hello everyone,
> >
> > I tried to keep the examples minimal but I also needed to show the full 
> > extent of what is going on.
> >
> > Attached are two Lilypond files and pdfs showing an unconventional score. 
> > Each part has the same number of notes but since the durations are random, 
> > each part ends at its own time.
> >
> > badtest.ly and badtest.pdf show the default behavior. When a part ends, one 
> > of its staves continues on till the last part ends. I don't want this 
> > behavior.
> >
> > test.ly and test.pdf do a better job of showing what happens with the 
> > workaround hack of adding s128 at the end of each part. The problem with 
> > that -- and I didn't include examples -- is that if all the durations are 
> > the same and end at a natural bar line, an extra empty measure is added at 
> > the end of each part. I can't check for this occurrence ahead of time in my 
> > own software as it would be insane to keep track of all of that.
> >
> > You'll notice a lot of context commands all of which I think are necessary 
> > to get everything else to look as it should.
> >
> > So I'm hoping someone has an idea about what's going on here and how
> > to prevent those extra staves like in test.pdf
> >
> > Also, these Lilypond files are generated automatically by another program 
> > I've created so the layout of the Lilypond file can't really be changed 
> > without a massive amount of work. Hopefully a solution won't require 
> > something like that.
> >
>

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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hey Urs,

> I too find this surprising. I suggest you ask on lilypond-user whether this 
> is a bug or intended behaviour. If it is intended (due to some engraving 
> convention for example) it might be made configurable.

I first posted this to lilypond-user. I don't know if I need to repost
with a clearer explanation and examples?

Karim provided a work-around that seems to solve the problem but it
does add mysterious stuff to the Lilypond file. I don't anticipate too
many users needing to look at the Lilypond code that is generated for
their music but for the sake of those few who do, I do try to keep
things clean. (I probably need to add comments to the Lilypond
generating file as it is.)

Dave

On Sun, May 19, 2019 at 11:32 AM Urs Liska  wrote:
>
>
> Am 19.05.19 um 17:56 schrieb David Bellows:
>
> Hey Aaron,
>
> Before I respond to the rest of your email, I think it's worth going
> over something I didn't emphasize enough in my first email. I've
> attached a new pdf with instrument labels this time to make it easier
> to follow.
>
> The staves that continue to be printed appear to only happen when the
> last note in that staff is an actual printed note. If it's a rest or a
> space then the extra staves are not printed. Further experimentation
> and it looks like the extra staves are only printed if the final note
> is less than a quarter note (!). You can see this in two spots with
> Piano 4 and Piano 5 on page 3. I've attached the .ly file as well.
> Maybe something to do with the time signature as well?
>
> This looks like a bug maybe?
>
> I could confirm that behaviour with the following MWE:
>
> \version "2.21.0"
>
> \score {
>   <<
> \new Staff { c'1 c'1 }
> \new Staff { c'1 c'4 c'16 }
> \new Staff { c'1 c'8 }
> \new Staff { c'1 c'4 }
> \new Staff { c'1 c'4. }
>   >>
> }
>
> I too find this surprising. I suggest you ask on lilypond-user whether this 
> is a bug or intended behaviour. If it is intended (due to some engraving 
> convention for example) it might be made configurable.
>
> ___
> 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: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Urs Liska


Am 19.05.19 um 17:56 schrieb David Bellows:

Hey Aaron,

Before I respond to the rest of your email, I think it's worth going
over something I didn't emphasize enough in my first email. I've
attached a new pdf with instrument labels this time to make it easier
to follow.

The staves that continue to be printed appear to only happen when the
last note in that staff is an actual printed note. If it's a rest or a
space then the extra staves are not printed. Further experimentation
and it looks like the extra staves are only printed if the final note
is less than a quarter note (!). You can see this in two spots with
Piano 4 and Piano 5 on page 3. I've attached the .ly file as well.
Maybe something to do with the time signature as well?

This looks like a bug maybe?


I could confirm that behaviour with the following MWE:

\version "2.21.0"

\score {
  <<
\new Staff { c'1 c'1 }
\new Staff { c'1 c'4 c'16 }
\new Staff { c'1 c'8 }
\new Staff { c'1 c'4 }
\new Staff { c'1 c'4. }
  >>
}

I too find this surprising. I suggest you ask on lilypond-user whether 
this is a bug or intended behaviour. If it is intended (due to some 
engraving convention for example) it might be made configurable.


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


RE: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Mark Stephen Mrotek
David, 

My experience is transcribing 18th and 19th century piano scores.
I do get "run-off" staves. 
This is usually the result of incorrect mensuration of a note or notes.

You piece still has some sort of vertical simultaneity.
Perhaps you could start with a temporary time signature, just to see if voices 
align.
Then remove it for publication.

Mark

-Original Message-
From: David Bellows [mailto:davebell...@gmail.com] 
Sent: Saturday, May 18, 2019 10:46 PM
To: Mark Stephen Mrotek 
Cc: lilypond-user 
Subject: Re: Unconventional score and unwanted stray staff lines

Hey Mark,

> Maybe use bar checks?

Given that a lot of the music isn't generated to fit any particular time 
signature (ie, the bar lines are often there just to break things up to ease 
reading), I would get tons of bar check errors. Plus, keeping track of when 
bars should be inserted in my software seems like it would be a huge chore. Is 
this something you think would solve the problem?

On Sat, May 18, 2019 at 10:25 PM Mark Stephen Mrotek  
wrote:
>
> David
>
> Maybe use bar checks?
>
> Mark
>
> -Original Message-
> From: lilypond-user 
> [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf 
> Of David Bellows
> Sent: Saturday, May 18, 2019 3:59 PM
> To: lilypond-user 
> Subject: Unconventional score and unwanted stray staff lines
>
> Hello everyone,
>
> I tried to keep the examples minimal but I also needed to show the full 
> extent of what is going on.
>
> Attached are two Lilypond files and pdfs showing an unconventional score. 
> Each part has the same number of notes but since the durations are random, 
> each part ends at its own time.
>
> badtest.ly and badtest.pdf show the default behavior. When a part ends, one 
> of its staves continues on till the last part ends. I don't want this 
> behavior.
>
> test.ly and test.pdf do a better job of showing what happens with the 
> workaround hack of adding s128 at the end of each part. The problem with that 
> -- and I didn't include examples -- is that if all the durations are the same 
> and end at a natural bar line, an extra empty measure is added at the end of 
> each part. I can't check for this occurrence ahead of time in my own software 
> as it would be insane to keep track of all of that.
>
> You'll notice a lot of context commands all of which I think are necessary to 
> get everything else to look as it should.
>
> So I'm hoping someone has an idea about what's going on here and how 
> to prevent those extra staves like in test.pdf
>
> Also, these Lilypond files are generated automatically by another program 
> I've created so the layout of the Lilypond file can't really be changed 
> without a massive amount of work. Hopefully a solution won't require 
> something like that.
>


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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hi Karim,

> My workaround was to put at each end of a part where this occurs, this

That does work! Thank you very much for this!

If you can search my emails to the list today about the issue, I
include more information about when this issue occurs in my scores.
The only staves that continue to be created are the ones where the
final note is an actual printed note. If the final note of a staff is
a rest or space then the extra staves are not printed. Also, it
appears that the problem only occurs if the final note is less than a
quarter note, but I haven't tested that thoroughly.

In other words, at least in my case, this appears to be a bug?

Thanks again for your help on this. If this is a bug that isn't going
to be fixed anytime soon then your solution does the trick.

On Sun, May 19, 2019 at 7:47 AM Karim Haddad  wrote:
>
> Dear David,
>
> Lately I had a similar issue with a multi-tempi and multi-metered ensemble 
> score.
> However the strayed clefs and staves where not on all instruments. I suspect 
> it does have to do with internal timing lilypond calculations.
> My workaround was to put at each end of a part where this occurs, this :
>
> %here is the closing bar :
> \once \set Staff.whichBar = "|."
> % these are to stop the running staff and "phantom" clef and instrument name 
> going on  :
>
> \override Staff.Clef.stencil=##f
> \set Staff.shortInstrumentName = #""
> \stopStaff
>
> Hope this helps.
>
> Best
> Karim
>
> On Sun, May 19, 2019 at 09:04:47AM -0400, lilypond-user-requ...@gnu.org wrote:
> >
> > Message: 2
> > Date: Sat, 18 May 2019 20:09:10 -0700
> > From: David Bellows 
> > To: Andrew Bernard 
> > Cc: lilypond-user Mailinglist 
> > Subject: Re: Unconventional score and unwanted stray staff lines
> > Message-ID:
> >   
> > Content-Type: text/plain; charset="UTF-8"
> >
> > Hi Andrew,
> >
> > > adding \stopStaff at the end of the sections - does this do what you want?
> >
> > That gets me really close except ...
> >
> > > There seems to be some stray clefs in this, but I am sure you can tidy 
> > > this up.
> >
> > I have no idea where those stray clefs are coming from. In the first
> > pdfs I sent they didn't show up. However, the one bass clef I see in
> > these new versions does correspond to where a bass clef was in the
> > original pdfs I sent. As in the stray bass clef is where a stray empty
> > staff was originally. I'm guessing it's related.
> >
> > > I can't quite grasp what your score is. Is it for five pianos, as all the 
> > > piano staves are grouped into one system? ... I assume this is 
> > > algorithmically generated music?
> >
> > The piece is really for any number of instruments but all of one kind.
> > Like 20 violins or, as in this example, 5 pianos. And yes, the music
> > is generated algorithmically. This particular example just uses the
> > most basic function for generating pitches, durations and dynamics
> > without trying to make it sound good.
> >
> > So what you have here are five different "melodies" generated for five
> > different pianos that all get played at the same time. I think the way
> > I have it grouped makes the most sense but I'm always open to
> > suggestions. I haven't put in the instrument labels yet and I left off
> > the title stuff.
> >
> > On Sat, May 18, 2019 at 7:36 PM Andrew Bernard  
> > wrote:
> > >
> > > Hi David,
> > >
> > > I can't quite grasp what your score is. Is it for five pianos, as all the 
> > > piano staves are grouped into one system?
> > >
> > > Anyway, adding \stopStaff at the end of the sections - does this do what 
> > > you want? There seems to be some stray clefs in this, but I am sure you 
> > > can tidy this up. I assume this is algorithmically generated music?
> > >
> > > Andrew
> > >
> >
> >
> >
> webpage : http://karim.haddad.free.fr

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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hey Andrew,

I did receive your other email. I guess the one emailed directly to me
got through. I haven't had time to go through everything you wrote yet
but I would be interested in seeing that part of the Lilypond file.
I'm hoping my problem doesn't require a complex solution since all I'm
trying to do is end a staff where it's supposed to end and I'm not
worried about making them all line up.

Anyway, if you can find it, check out the last email I sent to the
list where I point out what might be a bug in Lilypond. The extra
staves only occur if the final not is an actual printed note. For
staves that end in a rest or space, no more extra staves are created.
What's more, the behavior only seems to happen if the duration is less
than a quarter note.

Thanks for your help on this, hopefully I'm getting closer to a solution.

Dave

On Sun, May 19, 2019 at 8:48 AM Andrew Bernard  wrote:
>
> Hi David,
>
> Interesting, I emailed the following to the list but for the first time ever 
> it was rejected by the list moderator (person or software?) for being too 
> large, yet it is not. Anyway, I mention here Karim Haddid's help for me, and 
> sure enough, he has also posted. I'll copy the text ere, and send the PDF to 
> you personally off list to avoid this strange problem.
>
> 
>
> Hi David,
>
> Currently I do not have a lot of time to look into your problem, but this 
> does remind me of work I have done for my current String Quartet engraving. 
> It's a New Complexity composition by a colleague (all 300 pages of it) and 
> some parts are in polymeter and in different tempos. Here attached is an 
> extract of one of those sections, which demonstrates a system comprised of 
> four instruments with staves that end at different positions - two duos. This 
> reminded me of your score.
>
> If of interest, I can send you the code for this privately.
>
> You can find out about how this is done in the NR under the polymeter 
> section. It involves a subtle use of scaled durations. I must also 
> acknowledge Karim Haddid who helped me very much achieving this result. I 
> will say in advance that setting up the proportional ratios for this section 
> involved a large amount of thinking (and headache tablets).
>
> 
>
>
> Andrew
>
>
>

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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread David Bellows
Hey Aaron,

Before I respond to the rest of your email, I think it's worth going
over something I didn't emphasize enough in my first email. I've
attached a new pdf with instrument labels this time to make it easier
to follow.

The staves that continue to be printed appear to only happen when the
last note in that staff is an actual printed note. If it's a rest or a
space then the extra staves are not printed. Further experimentation
and it looks like the extra staves are only printed if the final note
is less than a quarter note (!). You can see this in two spots with
Piano 4 and Piano 5 on page 3. I've attached the .ly file as well.
Maybe something to do with the time signature as well?

This looks like a bug maybe?

> I would have thought it fairly trivial* to keep track of bar lines.  You
need only add up the durations of the notes you have emitted ...  Of
course, you might have notes that overlap the bar line,
and perhaps you are leveraging LilyPond's ability to automatically split
notes  For the purposes of inserting bar checks, you
would skip it since the next note does not start the measure.

I've thought more about it and perhaps it would be fairly easy. I do,
as you mentioned here, use Lilypond's feature to automatically split
notes across bar lines. Skipping where there isn't  natural bar line
seems doable. But I guess my question is whether this would actually
help the situation?

> One thing to consider: if your music is really fluid, perhaps writing
things with \cadenzaOn makes sense.  Here there are no measures, and you
can emit bar lines whenever you see fit.

I use the bar lines mainly for aesthetic reasons. The software will
eventually be online and civilians will be able to use it to generate
audio files and sheet music (and lots of other stuff). I want the
evenly spaced bar lines because I think it looks cooler. And for
algorithms where everything fits neatly into measures then doing this
the default Lilypond way works (ie, I don't want to have to have too
create and maintain too many different printing options).

I think easier for me is to give the user the option to use the "s128"
option before the ending bar line if the printing looks funky and by
default not use it for the algorithms that are designed to fit neatly.

> Then again, it is entirely possible that your intentionally misaligned 
> systems are just
running afoul of some limitation of LilyPond.  I certainly have never
tried pushing this aspect of the software.

That could be.

On Sun, May 19, 2019 at 6:06 AM Aaron Hill  wrote:
>
> On 2019-05-18 10:46 pm, David Bellows wrote:
> >> Maybe use bar checks?
> >
> > Given that a lot of the music isn't generated to fit any particular
> > time signature (ie, the bar lines are often there just to break things
> > up to ease reading), I would get tons of bar check errors. Plus,
> > keeping track of when bars should be inserted in my software seems
> > like it would be a huge chore. Is this something you think would solve
> > the problem?
>
> I would have thought it fairly trivial* to keep track of bar lines.  You
> need only add up the durations of the notes you have emitted and, when
> the running count equals a whole measure, you know there is spot for a
> bar check.  Of course, you might have notes that overlap the bar line,
> and perhaps you are leveraging LilyPond's ability to automatically split
> notes.  In this case, you would see that the durations exceed a whole
> measure by some fraction.  For the purposes of inserting bar checks, you
> would skip it since the next note does not start the measure.
>
> (* Let's assume that 1/128 notes are the shortest duration your program
> generates.  Then each instance of that duration could simply add one to
> a counter.  1/64 notes add two; 1/32 add four; etc.  Depending on how
> many 1/128 notes make up the desired length of a measure, you subtract
> that amount from the running total when it is equal or greater.  And
> anytime the counter is zero, you emit a bar check before the next note.
> Of course the amounts to add get a little more interesting with tuplets
> and unusually scaled durations.  A more general-purpose rational
> representation could be useful.)
>
> I have not checked exactly, but perhaps your final measures on each line
> are not precisely aligned to a whole measure.  You can of course say
> \bar "|." early, but maybe you need to use \partial on the final measure
> as well.  Granted, this would require that your software cache notes
> before writing them so you can tell if you are going to have a short
> measure.
>
> One thing to consider: if your music is really fluid, perhaps writing
> things with \cadenzaOn makes sense.  Here there are no measures, and you
> can emit bar lines whenever you see fit.  (In fact, you *have* to emit
> bar lines if you want the music to be able to break across a lines.)
> But I am unsure if this is strictly speaking necessary to get your setup
> working.
>
> \stopStaff should be 

Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Andrew Bernard
Hi David,

Interesting, I emailed the following to the list but for the first time
ever it was rejected by the list moderator (person or software?) for being
too large, yet it is not. Anyway, I mention here Karim Haddid's help for
me, and sure enough, he has also posted. I'll copy the text ere, and send
the PDF to you personally off list to avoid this strange problem.



Hi David,

Currently I do not have a lot of time to look into your problem, but this
does remind me of work I have done for my current String Quartet engraving.
It's a New Complexity composition by a colleague (all 300 pages of it) and
some parts are in polymeter and in different tempos. Here attached is an
extract of one of those sections, which demonstrates a system comprised of
four instruments with staves that end at different positions - two duos.
This reminded me of your score.

If of interest, I can send you the code for this privately.

You can find out about how this is done in the NR under the polymeter
section. It involves a subtle use of scaled durations. I must also
acknowledge Karim Haddid who helped me very much achieving this result. I
will say in advance that setting up the proportional ratios for this
section involved a large amount of thinking (and headache tablets).




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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Karim Haddad
Dear David,

Lately I had a similar issue with a multi-tempi and multi-metered ensemble 
score.
However the strayed clefs and staves where not on all instruments. I suspect it 
does have to do with internal timing lilypond calculations.
My workaround was to put at each end of a part where this occurs, this :

%here is the closing bar :
\once \set Staff.whichBar = "|."
% these are to stop the running staff and "phantom" clef and instrument name 
going on  :

\override Staff.Clef.stencil=##f
\set Staff.shortInstrumentName = #""
\stopStaff

Hope this helps.

Best
Karim

On Sun, May 19, 2019 at 09:04:47AM -0400, lilypond-user-requ...@gnu.org wrote:
> 
> Message: 2
> Date: Sat, 18 May 2019 20:09:10 -0700
> From: David Bellows 
> To: Andrew Bernard 
> Cc: lilypond-user Mailinglist 
> Subject: Re: Unconventional score and unwanted stray staff lines
> Message-ID:
>   
> Content-Type: text/plain; charset="UTF-8"
> 
> Hi Andrew,
> 
> > adding \stopStaff at the end of the sections - does this do what you want?
> 
> That gets me really close except ...
> 
> > There seems to be some stray clefs in this, but I am sure you can tidy this 
> > up.
> 
> I have no idea where those stray clefs are coming from. In the first
> pdfs I sent they didn't show up. However, the one bass clef I see in
> these new versions does correspond to where a bass clef was in the
> original pdfs I sent. As in the stray bass clef is where a stray empty
> staff was originally. I'm guessing it's related.
> 
> > I can't quite grasp what your score is. Is it for five pianos, as all the 
> > piano staves are grouped into one system? ... I assume this is 
> > algorithmically generated music?
> 
> The piece is really for any number of instruments but all of one kind.
> Like 20 violins or, as in this example, 5 pianos. And yes, the music
> is generated algorithmically. This particular example just uses the
> most basic function for generating pitches, durations and dynamics
> without trying to make it sound good.
> 
> So what you have here are five different "melodies" generated for five
> different pianos that all get played at the same time. I think the way
> I have it grouped makes the most sense but I'm always open to
> suggestions. I haven't put in the instrument labels yet and I left off
> the title stuff.
> 
> On Sat, May 18, 2019 at 7:36 PM Andrew Bernard  
> wrote:
> >
> > Hi David,
> >
> > I can't quite grasp what your score is. Is it for five pianos, as all the 
> > piano staves are grouped into one system?
> >
> > Anyway, adding \stopStaff at the end of the sections - does this do what 
> > you want? There seems to be some stray clefs in this, but I am sure you can 
> > tidy this up. I assume this is algorithmically generated music?
> >
> > Andrew
> >
> 
> 
> 
webpage : http://karim.haddad.free.fr

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


Re: Unconventional score and unwanted stray staff lines

2019-05-19 Thread Aaron Hill

On 2019-05-18 10:46 pm, David Bellows wrote:

Maybe use bar checks?


Given that a lot of the music isn't generated to fit any particular
time signature (ie, the bar lines are often there just to break things
up to ease reading), I would get tons of bar check errors. Plus,
keeping track of when bars should be inserted in my software seems
like it would be a huge chore. Is this something you think would solve
the problem?


I would have thought it fairly trivial* to keep track of bar lines.  You 
need only add up the durations of the notes you have emitted and, when 
the running count equals a whole measure, you know there is spot for a 
bar check.  Of course, you might have notes that overlap the bar line, 
and perhaps you are leveraging LilyPond's ability to automatically split 
notes.  In this case, you would see that the durations exceed a whole 
measure by some fraction.  For the purposes of inserting bar checks, you 
would skip it since the next note does not start the measure.


(* Let's assume that 1/128 notes are the shortest duration your program 
generates.  Then each instance of that duration could simply add one to 
a counter.  1/64 notes add two; 1/32 add four; etc.  Depending on how 
many 1/128 notes make up the desired length of a measure, you subtract 
that amount from the running total when it is equal or greater.  And 
anytime the counter is zero, you emit a bar check before the next note.  
Of course the amounts to add get a little more interesting with tuplets 
and unusually scaled durations.  A more general-purpose rational 
representation could be useful.)


I have not checked exactly, but perhaps your final measures on each line 
are not precisely aligned to a whole measure.  You can of course say 
\bar "|." early, but maybe you need to use \partial on the final measure 
as well.  Granted, this would require that your software cache notes 
before writing them so you can tell if you are going to have a short 
measure.


One thing to consider: if your music is really fluid, perhaps writing 
things with \cadenzaOn makes sense.  Here there are no measures, and you 
can emit bar lines whenever you see fit.  (In fact, you *have* to emit 
bar lines if you want the music to be able to break across a lines.)  
But I am unsure if this is strictly speaking necessary to get your setup 
working.


\stopStaff should be helpful to ensure that the StaffSymbol does not run 
past a point; but maybe you need to play around with break-alignment to 
resolve the issue of those pesky extra clefs showing up.  Then again, it 
is entirely possible that your intentionally misaligned systems are just 
running afoul of some limitation of LilyPond.  I certainly have never 
tried pushing this aspect of the software.



-- Aaron Hill

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


Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread David Bellows
Hey Mark,

> Maybe use bar checks?

Given that a lot of the music isn't generated to fit any particular
time signature (ie, the bar lines are often there just to break things
up to ease reading), I would get tons of bar check errors. Plus,
keeping track of when bars should be inserted in my software seems
like it would be a huge chore. Is this something you think would solve
the problem?

On Sat, May 18, 2019 at 10:25 PM Mark Stephen Mrotek
 wrote:
>
> David
>
> Maybe use bar checks?
>
> Mark
>
> -Original Message-
> From: lilypond-user 
> [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf Of 
> David Bellows
> Sent: Saturday, May 18, 2019 3:59 PM
> To: lilypond-user 
> Subject: Unconventional score and unwanted stray staff lines
>
> Hello everyone,
>
> I tried to keep the examples minimal but I also needed to show the full 
> extent of what is going on.
>
> Attached are two Lilypond files and pdfs showing an unconventional score. 
> Each part has the same number of notes but since the durations are random, 
> each part ends at its own time.
>
> badtest.ly and badtest.pdf show the default behavior. When a part ends, one 
> of its staves continues on till the last part ends. I don't want this 
> behavior.
>
> test.ly and test.pdf do a better job of showing what happens with the 
> workaround hack of adding s128 at the end of each part. The problem with that 
> -- and I didn't include examples -- is that if all the durations are the same 
> and end at a natural bar line, an extra empty measure is added at the end of 
> each part. I can't check for this occurrence ahead of time in my own software 
> as it would be insane to keep track of all of that.
>
> You'll notice a lot of context commands all of which I think are necessary to 
> get everything else to look as it should.
>
> So I'm hoping someone has an idea about what's going on here and how to 
> prevent those extra staves like in test.pdf
>
> Also, these Lilypond files are generated automatically by another program 
> I've created so the layout of the Lilypond file can't really be changed 
> without a massive amount of work. Hopefully a solution won't require 
> something like that.
>

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


RE: Unconventional score and unwanted stray staff lines

2019-05-18 Thread Mark Stephen Mrotek
David

Maybe use bar checks?

Mark

-Original Message-
From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] 
On Behalf Of David Bellows
Sent: Saturday, May 18, 2019 3:59 PM
To: lilypond-user 
Subject: Unconventional score and unwanted stray staff lines

Hello everyone,

I tried to keep the examples minimal but I also needed to show the full extent 
of what is going on.

Attached are two Lilypond files and pdfs showing an unconventional score. Each 
part has the same number of notes but since the durations are random, each part 
ends at its own time.

badtest.ly and badtest.pdf show the default behavior. When a part ends, one of 
its staves continues on till the last part ends. I don't want this behavior.

test.ly and test.pdf do a better job of showing what happens with the 
workaround hack of adding s128 at the end of each part. The problem with that 
-- and I didn't include examples -- is that if all the durations are the same 
and end at a natural bar line, an extra empty measure is added at the end of 
each part. I can't check for this occurrence ahead of time in my own software 
as it would be insane to keep track of all of that.

You'll notice a lot of context commands all of which I think are necessary to 
get everything else to look as it should.

So I'm hoping someone has an idea about what's going on here and how to prevent 
those extra staves like in test.pdf

Also, these Lilypond files are generated automatically by another program I've 
created so the layout of the Lilypond file can't really be changed without a 
massive amount of work. Hopefully a solution won't require something like that.


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


Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread David Bellows
Hi Andrew,

> adding \stopStaff at the end of the sections - does this do what you want?

That gets me really close except ...

> There seems to be some stray clefs in this, but I am sure you can tidy this 
> up.

I have no idea where those stray clefs are coming from. In the first
pdfs I sent they didn't show up. However, the one bass clef I see in
these new versions does correspond to where a bass clef was in the
original pdfs I sent. As in the stray bass clef is where a stray empty
staff was originally. I'm guessing it's related.

> I can't quite grasp what your score is. Is it for five pianos, as all the 
> piano staves are grouped into one system? ... I assume this is 
> algorithmically generated music?

The piece is really for any number of instruments but all of one kind.
Like 20 violins or, as in this example, 5 pianos. And yes, the music
is generated algorithmically. This particular example just uses the
most basic function for generating pitches, durations and dynamics
without trying to make it sound good.

So what you have here are five different "melodies" generated for five
different pianos that all get played at the same time. I think the way
I have it grouped makes the most sense but I'm always open to
suggestions. I haven't put in the instrument labels yet and I left off
the title stuff.

On Sat, May 18, 2019 at 7:36 PM Andrew Bernard  wrote:
>
> Hi David,
>
> I can't quite grasp what your score is. Is it for five pianos, as all the 
> piano staves are grouped into one system?
>
> Anyway, adding \stopStaff at the end of the sections - does this do what you 
> want? There seems to be some stray clefs in this, but I am sure you can tidy 
> this up. I assume this is algorithmically generated music?
>
> Andrew
>

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


Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread Andrew Bernard
Hi David,

I can't quite grasp what your score is. Is it for five pianos, as all the
piano staves are grouped into one system?

Anyway, adding \stopStaff at the end of the sections - does this do what
you want? There seems to be some stray clefs in this, but I am sure you can
tidy this up. I assume this is algorithmically generated music?

Andrew
\version "2.19.83"
\language "english"
%\pointAndClickOff

scoreinfo = {\time 4/4 \tempo "andante" 4 = 90}

voice_oneone = {\key c \major r64 r128 r4 r4 ds''1\p fs'64\ g4.\pp cs64\fff fs1\ gs2\pp c'32\fff r32%{%} \bar "|."}

voice_twoone = {\key c \major e,,64\mp cs128\ppp g4 gs4\fff r1 r64 r4. r64 r1 r2 r32 b,,32\p%{%} \bar "|."
\stopStaff
}

voice_onetwo = {\key c \major r1 fs'''4\ppp fs''4\p r64 r1. e\breve\ppp r1 r2.. d''4.\f r4 gs8\mf r2...%{%} \bar "|."}

voice_twotwo = {\key c \major d,1\ppp r4 r4 g64\pp g,,1.\mp r\breve d1\p e,2..\p r4. d,4\fff r8 a,2...\p%{%} \bar "|."}

voice_onethree = {\key c \major r4. r1 g'1.\pp ds'8\ppp r2... r1. cs'4.\fff r8 r4. fs'''2.\mf r128 as''64\ff%{%} \bar "|."
\stopStaff}

voice_twothree = {\key c \major e4.\mp r1 r1. r8 e,2... r1. r4. r8 e4.\f r2. r128 r64%{%} \bar "|."}

voice_onefour = {\key c \major cs''2\mf e'''2.\p as''2\ f''64\mp r32 a1.\ a'''4.\ppp a'''2\p r8 fs''2\ e'1\ff cs8\p%{%} \bar "|."
\stopStaff
}

voice_twofour = {\key c \major r2 r2. r2 r64 b,32\ r1. r4. r2 g8\ r2 r1 r8%{%} \bar "|."}

voice_onefive = {\key c \major cs128\mf r32 r2 gs4\mp r4.. r8 r8 f'''4\p r4.. r64 gs'''\breve\p cs'''4\mf%{%} \bar "|."}

voice_twofive = {\key c \major r128 r32 as2 r4 gs4..\ff as,,,8\mf b,,,8\fff r4 r4.. c64\p r\breve r4%{%} \bar "|."}

\paper {#(set-paper-size "letter") }

\score {
  <<
\new PianoStaff <<
  \new Staff = "upper" <<
\scoreinfo \clef "treble"  \voice_oneone
  >>
  \new Staff = "lower" << \scoreinfo\clef bass  \voice_twoone >>

>>
\new PianoStaff <<
  \new Staff = "upper" <<
\scoreinfo \clef "treble"  \voice_onetwo
  >>
  \new Staff = "lower" << \scoreinfo\clef bass  \voice_twotwo >>

>>
\new PianoStaff <<
  \new Staff = "upper" <<
\scoreinfo \clef "treble"  \voice_onethree
  >>
  \new Staff = "lower" << \scoreinfo\clef bass  \voice_twothree >>

>>
\new PianoStaff <<
  \new Staff = "upper" <<
\scoreinfo \clef "treble"  \voice_onefour
  >>
  \new Staff = "lower" << \scoreinfo\clef bass  \voice_twofour >>

>>
\new PianoStaff <<
  \new Staff = "upper" <<
\scoreinfo \clef "treble"  \voice_onefive
  >>
  \new Staff = "lower" << \scoreinfo\clef bass  \voice_twofive >>

>>
  >>
  \layout{
ragged-bottom = ##t
\context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver"}
\context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver"}
\context { \Voice \remove "Note_heads_engraver" \consists "Completion_heads_engraver" \remove "Rest_engraver" \consists "Completion_rest_engraver" completionUnit = #(ly:make-moment 2/4)}
  }
}___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread David Bellows
Andrew,

> These both complie.

That's a relief! I changed the formatting in the master program that
generates these Lilypond files to be more sane. Spaces instead of
tabs.


On Sat, May 18, 2019 at 7:25 PM Andrew Bernard  wrote:
>
> These both complie.
>
> Andrew
>
>
> On Sun, 19 May 2019 at 12:09, David Bellows  wrote:
>>
>> Hey Andrew,
>>
>> Hmm, I'm running Kubuntu 19.04. You wouldn't think there'd be that
>> much difference between the two? I also wouldn't think there would be
>> anything we could do in our Lilypond files to cause Ghostscript
>> problems for one file but not another.
>>

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


Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread Andrew Bernard
These both complie.

Andrew


On Sun, 19 May 2019 at 12:09, David Bellows  wrote:

> Hey Andrew,
>
> Hmm, I'm running Kubuntu 19.04. You wouldn't think there'd be that
> much difference between the two? I also wouldn't think there would be
> anything we could do in our Lilypond files to cause Ghostscript
> problems for one file but not another.
>
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread David Bellows
Hey Andrew,

Hmm, I'm running Kubuntu 19.04. You wouldn't think there'd be that
much difference between the two? I also wouldn't think there would be
anything we could do in our Lilypond files to cause Ghostscript
problems for one file but not another.

I do wonder if maybe there's a spacing/indention issue? I've attached
less indented versions of both files -- maybe that'll help?

On Sat, May 18, 2019 at 6:07 PM Andrew Bernard  wrote:
>
> Hi David,
>
> I think this may be easy to fix but neither of your examples compiles for me 
> on Ubuntu 19.04 with Lilypond 2.19.83. Ghostscript crashes. I don't have this 
> problem with other scores.
>
> Andrew
>
>
> On Sun, 19 May 2019 at 09:14, David Bellows  wrote:
>>
>>
>> I tried to keep the examples minimal but I also needed to show the
>> full extent of what is going on.
>>
\version "2.19.83" 
\language "english"
\pointAndClickOff

scoreinfo = {\time 4/4 \tempo "andante" 4 = 90}

voice_oneone = {\key c \major r64 r128 r4 r4 ds''1\p fs'64\ g4.\pp cs64\fff fs1\ gs2\pp c'32\fff r32%{%} \bar "|."}

voice_twoone = {\key c \major e,,64\mp cs128\ppp g4 gs4\fff r1 r64 r4. r64 r1 r2 r32 b,,32\p%{%} \bar "|."}

voice_onetwo = {\key c \major r1 fs'''4\ppp fs''4\p r64 r1. e\breve\ppp r1 r2.. d''4.\f r4 gs8\mf r2...%{%} \bar "|."}

voice_twotwo = {\key c \major d,1\ppp r4 r4 g64\pp g,,1.\mp r\breve d1\p e,2..\p r4. d,4\fff r8 a,2...\p%{%} \bar "|."}

voice_onethree = {\key c \major r4. r1 g'1.\pp ds'8\ppp r2... r1. cs'4.\fff r8 r4. fs'''2.\mf r128 as''64\ff%{%} \bar "|."}

voice_twothree = {\key c \major e4.\mp r1 r1. r8 e,2... r1. r4. r8 e4.\f r2. r128 r64%{%} \bar "|."}

voice_onefour = {\key c \major cs''2\mf e'''2.\p as''2\ f''64\mp r32 a1.\ a'''4.\ppp a'''2\p r8 fs''2\ e'1\ff cs8\p%{%} \bar "|."}

voice_twofour = {\key c \major r2 r2. r2 r64 b,32\ r1. r4. r2 g8\ r2 r1 r8%{%} \bar "|."}

voice_onefive = {\key c \major cs128\mf r32 r2 gs4\mp r4.. r8 r8 f'''4\p r4.. r64 gs'''\breve\p cs'''4\mf%{%} \bar "|."}

voice_twofive = {\key c \major r128 r32 as2 r4 gs4..\ff as,,,8\mf b,,,8\fff r4 r4.. c64\p r\breve r4%{%} \bar "|."}

\paper {#(set-paper-size "letter") }

\score { << 
  \new PianoStaff << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble"  \voice_oneone >> 
\new Staff = "lower" << \scoreinfo\clef bass  \voice_twoone >> 

  >>
  \new PianoStaff << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble"  \voice_onetwo >> 
\new Staff = "lower" << \scoreinfo\clef bass  \voice_twotwo >> 

  >>
  \new PianoStaff << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble"  \voice_onethree >> 
\new Staff = "lower" << \scoreinfo\clef bass  \voice_twothree >> 

  >>
  \new PianoStaff << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble"  \voice_onefour >> 
\new Staff = "lower" << \scoreinfo\clef bass  \voice_twofour >> 

  >>
  \new PianoStaff << 
\new Staff = "upper" << 
  \scoreinfo \clef "treble"  \voice_onefive >> 
\new Staff = "lower" << \scoreinfo\clef bass  \voice_twofive >> 

  >>			>> 
	 \layout{ragged-bottom = ##t  
		 \context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver"}
		 \context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver"}
		 \context { \Voice \remove "Note_heads_engraver" \consists "Completion_heads_engraver" \remove "Rest_engraver" \consists "Completion_rest_engraver" completionUnit = #(ly:make-moment 2/4)}} 
   }\version "2.19.83" 

\language "english"
\pointAndClickOff

scoreinfo = {\time 4/4 \tempo "andante" 4 = 90}

voice_oneone = {\key c \major r64 r128 r4 r4 ds''1\p fs'64\ g4.\pp cs64\fff fs1\ gs2\pp c'32\fff r32 s128 \bar "|."}

voice_twoone = {\key c \major e,,64\mp cs128\ppp g4 gs4\fff r1 r64 r4. r64 r1 r2 r32 b,,32\p s128 \bar "|."}

voice_onetwo = {\key c \major r1 fs'''4\ppp fs''4\p r64 r1. e\breve\ppp r1 r2.. d''4.\f r4 gs8\mf r2... s128 \bar "|."}

voice_twotwo = {\key c \major d,1\ppp r4 r4 g64\pp g,,1.\mp r\breve d1\p e,2..\p r4. d,4\fff r8 a,2...\p s128 \bar "|."}

voice_onethree = {\key c \major r4. r1 g'1.\pp ds'8\ppp r2... r1. cs'4.\fff r8 r4. fs'''2.\mf r128 as''64\ff s128 \bar "|."}

voice_twothree = {\key c \major e4.\mp r1 r1. r8 e,2... r1. r4. r8 e4.\f r2. r128 r64 s128 \bar "|."}

voice_onefour = {\key c \major cs''2\mf e'''2.\p as''2\ f''64\mp r32 a1.\ a'''4.\ppp a'''2\p r8 fs''2\ e'1\ff cs8\p s128 \bar "|."}

voice_twofour = {\key c \major r2 r2. r2 r64 b,32\ r1. r4. r2 g8\ r2 r1 r8 s128 \bar "|."}

voice_onefive = {\key c \major cs128\mf r32 r2 gs4\mp r4.. r8 r8 f'''4\p r4.. r64 gs'''\breve\p cs'''4\mf s128 \bar "|."}

voice_twofive = {\key c \major r128 r32 as2 r4 gs4..\ff as,,,8\mf b,,,8\fff r4 r4.. c64\p r\breve r4 s128 \bar "|."}

\paper {#(set-paper-size "letter") }

\score { << 
  \new PianoStaff 

Re: Unconventional score and unwanted stray staff lines

2019-05-18 Thread Andrew Bernard
Hi David,

I think this may be easy to fix but neither of your examples compiles for
me on Ubuntu 19.04 with Lilypond 2.19.83. Ghostscript crashes. I don't have
this problem with other scores.

Andrew


On Sun, 19 May 2019 at 09:14, David Bellows  wrote:

>
> I tried to keep the examples minimal but I also needed to show the
> full extent of what is going on.
>
>
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user