Re: shifting accidentals horizontally

2023-06-12 Thread Werner LEMBERG
> @Werner I’ve added a small fix concerning the case when there is no > NoteCollision grob (in which case this should not be relevant in the > first place). Thanks a lot! I think this would be a great snippet for the LSR. Note, however, that there are alignment problems with other staves, see

Re: shifting accidentals horizontally

2023-06-12 Thread Werner LEMBERG
> Even though I can imagine this happening, I don't recall seeing it > as a pianist. Even if you tweak it to swap the note columns, I > think it will still be a bit confusing. As Damian has observed, there are plenty of examples in Bartók's piano sonata. Other, similar situations can be found

Re: shifting accidentals horizontally

2023-06-12 Thread Damian leGassick
> Even though I can imagine this happening, I don't recall seeing > it as a pianist. Even if you tweak it to swap the note columns, > I think it will still be a bit confusing. > > There are two obvious fixes: if you are the composer, you could > consider changing the B♭ into an A♯. And the

Re: shifting accidentals horizontally

2023-06-12 Thread Valentin Petzel
Hello Jean, I think a possible case would be something like the appended case, so if we have some sort of superimposed patterns. @Werner I’ve added a small fix concerning the case when there is no NoteCollision grob (in which case this should not be relevant in the first place). Cheers,

Re: shifting accidentals horizontally

2023-06-12 Thread Jean Abou Samra
Le lundi 12 juin 2023 à 17:02 +, Werner LEMBERG a écrit : > Please consider the example code below.  The first line shows > LilyPond's default, the second line shows what I need.  As can be > seen, the solution in the second line is imperfect – I just did the > most basic changes to

Re: shifting accidentals horizontally

2023-06-12 Thread Valentin Petzel
Hello Werner, I’ve tried something using an engraver that sends of accidentals from the given context to a separate AccidentalPlacement grob: % #(define (which lst) (define (impl lst count) (if (null? lst) #f (if (car lst) count (impl (cdr

Re: shifting accidentals horizontally

2023-06-12 Thread Werner LEMBERG
> Not the answer to the Lilypond question, but as a reference of > comparison, here is what Dorico does in this situation by default, > and I believe this to be correct standard practice. Well, it can't be generalized – sometimes LilyPond's default is the right choice. However, it would be nice

Re: shifting accidentals horizontally

2023-06-12 Thread Andrew Bernard
Not the answer to the Lilypond question, but as a reference of comparison, here is what Dorico does in this situation by default, and I believe this to be correct standard practice. Andrew

shifting accidentals horizontally

2023-06-12 Thread Werner LEMBERG
Please consider the example code below. The first line shows LilyPond's default, the second line shows what I need. As can be seen, the solution in the second line is imperfect – I just did the most basic changes to demonstrate what I want, namely the down-stemmed note to be positioned after

Re: How to generate \scaleDurations values procedurally

2023-06-12 Thread Jean Abou Samra
Le lundi 12 juin 2023 à 13:49 +0200, Lib Lists a écrit : > > Dear Jean, fantastic, thank you so much! And all clear. > > Concerning the staff size and page layout, I think I've found > something that is not clear to me from the documentation. When > reducing the staff size to accommodate all the

Re: How to generate \scaleDurations values procedurally

2023-06-12 Thread Lib Lists
On Mon, 12 Jun 2023 at 12:44, Jean Abou Samra wrote: > > [Adding back the list] Oops, thank you! > > Le lundi 12 juin 2023 à 12:23 +0200, Lib Lists a écrit : > > > On Mon, 12 Jun 2023 at 10:58, Jean Abou Samra > > <[j...@abou-samra.fr](mailto:j...@abou-samra.fr)> wrote: > > Dear Jean, all

Re: How to generate \scaleDurations values procedurally

2023-06-12 Thread Jean Abou Samra
[Adding back the list] Le lundi 12 juin 2023 à 12:23 +0200, Lib Lists a écrit : > On Mon, 12 Jun 2023 at 10:58, Jean Abou Samra > <[j...@abou-samra.fr](mailto:j...@abou-samra.fr)> wrote: > Dear Jean, all clear, thank you so much! I was exactly trying to > figure out the accidental issue and

Re: How to make a blank page

2023-06-12 Thread Valentin Petzel
Hello Silvain, it might help to understand that \pageBreak is not an instruction to insert a pageBreak. Think of \noPageBreak: This is a token that prevents a pageBreak to happen at the given place. Similarly \pageBreak is a token that enforces a pageBreak to happen at the given place (in

Re: How to generate \scaleDurations values procedurally

2023-06-12 Thread Valentin Petzel
Hello Lib, #(ly:music-transpose {\mus} i) does not make sense. \mus is Lilypond syntax, not scheme. Either do #{ \mus #} to parse this as Lilypond expression, or do mus (instead of { \mus }) to scope this as Scheme object. Also ly:music-transpose does take a pitch as second argument, so if

Re: How to generate \scaleDurations values procedurally

2023-06-12 Thread Jean Abou Samra
Le lundi 12 juin 2023 à 10:23 +0200, Lib Lists a écrit : > In your example, I changed the line: #{ \new Staff { \scaleDurations #(cons > 60 i) \mus } #}) > to this: #{ \new Staff { \scaleDurations #(cons 60 i)  #(ly:music-transpose > {\mus} i)  } #}) > but clearly there's something wrong,

Re: How to generate \scaleDurations values procedurally

2023-06-12 Thread Lib Lists
On Mon, 12 Jun 2023 at 00:08, Jean Abou Samra wrote: > > Le dimanche 11 juin 2023 à 23:55 +0200, Lib Lists a écrit : > > Hello, I'm (re)working on a series of pieces for player piano. I'd like to > find a way to generate all the \scaleDurations values so that I don't have to > type them by

Re: How to make a blank page

2023-06-12 Thread Silvain Dupertuis
I tried this trick, which seems to work : \markup " " \pageBreak produces a blank page It seems that there must be something on the page for \pageBreak to produce a page. Of course, there is also possibilities to add blank pages to a PDF document. Le 11.06.23 à 15:41, Paul McKay a écrit :