Re: Multiple instances of same articulation/bowing on one note

2023-01-31 Thread Ahanu Banerjee
I suppose there are different definitions for what a "bug" is. I said it
was not one because it is obviously intended behavior—I figured my use case
is a bit unusual so was not surprised by this. But if it can be treated as
a bug and additional functionality can be added in a future version, that
would be great!

Jean, thanks for the workaround. I could certainly not have come up with
that myself. I'll give it a try tomorrow.

-Ahanu

On Tue, Jan 31, 2023, 22:07 Jean Abou Samra  wrote:

> On 01/02/2023 03:51, Ahanu Banerjee wrote:
> > It's obviously not a bug. Jean, thanks for pointing out where the
> relevant instruction is.
> >
> > What would be the easiest way to modify this behavior for a single
> score?
>
>
> It's a bit of a weird thing to do, but you could consider
>
> \version "2.24.0"
>
> allowMultipleArticulations =
> #(define-music-function (mus) (ly:music?)
>(let ((syms '()))
>  (for-each
>   (lambda (art)
> (let* ((sym (ly:music-property art 'articulation-type))
>(fresh (make-symbol "unique-articulation")))
>   (set! syms (acons fresh sym syms))
>   (ly:music-set-property! art 'articulation-type fresh)))
>   (extract-typed-music mus 'articulation-event))
>  #{
>\context Bottom \applyContext
>  #(lambda (context)
> (let* ((defs (ly:context-property context 'scriptDefinitions))
>(defs-hash ((@ (ice-9 hash-table) alist->hashq-table)
>defs))
>(new-defs (append (map (lambda (p)
> (cons (car p)
>   (hashq-ref defs-hash
> (cdr p
>   syms)
>  defs)))
>   (ly:context-set-property! context 'scriptDefinitions
> new-defs)))
>#mus
>  #}))
>
> \language "english"
>
> \allowMultipleArticulations
> { g8 g_\upbow ^\upbow g g % fails
>   g8 g_\upbow ^\downbow g g % works
> }
>
>
>
> If you have several voices, you must apply the function to each of them
> separately.
>
> Jean
>
>
>


Re: Multiple instances of same articulation/bowing on one note

2023-01-31 Thread Ahanu Banerjee
It's obviously not a bug. Jean, thanks for pointing out where the relevant
instruction is.

What would be the easiest way to modify this behavior for a single score?

Thanks,
-Ahanu

On Tue, Jan 31, 2023, 21:37 Jean Abou Samra  wrote:

> On 01/02/2023 03:34, kie...@kierenmacmillan.info wrote:
> > Hi Ahanu,
> >
> >> g_\upbow ^\upbow g g % fails
> >
> > I would personally consider that a bug!
>
> script-engraver.cc:
>
> void
> Script_engraver::listen_articulation (Stream_event *ev)
> {
>   /* Discard double articulations for part-combining.  */
>   for (vsize i = 0; i < scripts_.size (); i++)
> if (scm_is_eq (get_property (scripts_[i].event_, "articulation-type"),
>get_property (ev, "articulation-type")))
>   return;
>
>
> Umm...
>
>
>


Re: Multiple instances of same articulation/bowing on one note

2023-01-31 Thread Ahanu Banerjee
That's certainly an interesting approach. Reminds me of the old SCORE
system. But unless I misunderstood your suggestion, it becomes rather
inconvenient and inefficient for larger scores, particularly if changes
have to be made to the notes later down the line, i.e., having to modify
multiple sets of music just to change a few notes..

On Tue, Jan 31, 2023, 21:42 Michael Werner  wrote:

> Hi Ahanu,
>
> I would split things out into some variables, and put the articulations
> into separate contexts. I find it makes things much easier to keep track
> of. For example:
>
> \version "2.24.0"
> \language "english"
>
> music = { g8 g g g }
> upArticulation = { g8 g-\upbow g g }
> downArticulation = { g8 g-\upbow g g }
>
> <<
> \new Dynamics
> \upArticulation
> \new Staff
> \music
> \new Dynamics
> \downArticulation
> >>
>
> In a Dynamics context the entered music gives the durations, but the note
> heads aren't printed. So once the music is entered and checked, it can just
> be pasted into a new variable and the articulations added as needed.
>
> On Tue, Jan 31, 2023 at 9:22 PM Ahanu Banerjee 
> wrote:
>
>> I'm trying to put the same articulation both above and below one note.
>> (My document has one set of bowings above the staff and an alternate set
>> below the staff, and occasionally they both need the same marking.)
>>
>> The workaround I currently have is creating a second voice, which is a
>> bit of a pain. Are there better solutions? Code below.
>>
>> \version "2.24.0"
>> \language "english"
>> { g8 g_\upbow ^\upbow g g % fails
>>   g8 g_\upbow ^\downbow g g % works
>>   % desired output:
>>   << { g8 g_\upbow g g } \\ { s s ^\upbow } >> }
>>
>> Thanks,
>> -Ahanu
>>
>


Multiple instances of same articulation/bowing on one note

2023-01-31 Thread Ahanu Banerjee
I'm trying to put the same articulation both above and below one note. (My
document has one set of bowings above the staff and an alternate set below
the staff, and occasionally they both need the same marking.)

The workaround I currently have is creating a second voice, which is a bit
of a pain. Are there better solutions? Code below.

\version "2.24.0"
\language "english"
{ g8 g_\upbow ^\upbow g g % fails
  g8 g_\upbow ^\downbow g g % works
  % desired output:
  << { g8 g_\upbow g g } \\ { s s ^\upbow } >> }

Thanks,
-Ahanu


\stopStaff \startStaff spacing & line continuity

2023-01-31 Thread Ahanu Banerjee
I am trying to modify the color of the ledger lines for a single note. My
understanding is that I need to use \stopStaff and \startStaff for this.
However, doing so causes the staff lines to be discontinuous. This rounds
the ends of the staff lines surrounding the point at which the staff is
stopped and causes adjacent notes to have increased horizontal spacing. How
can this be avoided?

See code below.

\version "2.24.0"
\language "english"
{ g8 \stopStaff \startStaff
  \once \override Staff.LedgerLineSpanner.color = green
  g \stopStaff \startStaff g g }

Thanks,
-Ahanu


Re: Setting default arguments for music function?

2023-01-31 Thread Ahanu Banerjee
Fantastic! Thanks again.

On Tue, Jan 31, 2023 at 7:28 PM Jean Abou Samra  wrote:

> On 01/02/2023 01:23, Ahanu Banerjee wrote:
> > Is it possible to have one of the arguments rely on a property of
> another argument?
> >
> > In my example, I want the default value for "parenColor" to be the same
> as the color of the "parenItem":
> >
> > \version "2.24"
> > \language "english"
> > altParen = #(define-music-function
> >  (parenColor parenSize parenItem)
> >  ( (color? "black") (number? -4) ly:music?)
> >#{
> >  \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
> #parenColor \parenthesize #parenItem
> >#})
> > { c \altParen -\tweak color "green" \upbow }
>
>
> Well, the color you want to access isn't a property of parentItem.
> parenItem is just a bit of music. Rather, it is a property of the
> grob that will eventually be caused by the music parentItem. So,
> in the music function, the color is not available. However, what
> you can do is writing a callback which runs waay later in the process,
> and can access it. Cf.
>
>
> https://extending-lilypond.readthedocs.io/en/latest/extending/backend.html#understanding-callbacks
>
> \version "2.24.0"
>
> \language "english"
>
> #(define (color-from-host grob)
>(ly:grob-property (ly:grob-object grob 'sticky-host) 'color))
>
> altParen = #(define-music-function
>  (parenColor parenSize parenItem)
>  ( (color? color-from-host) (number? -4) ly:music?)
>#{
>  \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
> #parenColor \parenthesize #parenItem
>#})
> { c \altParen -\tweak color "green" \upbow }
>
>
>
> Actually, because this is a common pattern for grobs like parentheses
> which attach to another grob, there is a shortcut:
>
> \version "2.24.0"
>
> \language "english"
>
> altParen = #(define-music-function
>  (parenColor parenSize parenItem)
>  ( (color? (sticky-grob-interface::inherit-property 'color)) (number?
> -4) ly:music?)
>#{
>  \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
> #parenColor \parenthesize #parenItem
>#})
> { c \altParen -\tweak color "green" \upbow }
>
>
>
> Jean
>
>
>


Re: Setting default arguments for music function?

2023-01-31 Thread Ahanu Banerjee
Is it possible to have one of the arguments rely on a property of another
argument?

In my example, I want the default value for "parenColor" to be the same as
the color of the "parenItem":

\version "2.24"
\language "english"
altParen = #(define-music-function
 (parenColor parenSize parenItem)
 ( (color? "black") (number? -4) ly:music?)
   #{
 \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
#parenColor \parenthesize #parenItem
   #})
{ c \altParen -\tweak color "green" \upbow }

Thanks,
-Ahanu

On Tue, Jan 31, 2023 at 7:10 PM Ahanu Banerjee 
wrote:

> Thanks! I had no idea that that resource existed.
> Appreciate all your help.
>
> -Ahanu
>
> On Tue, Jan 31, 2023 at 7:08 PM Jean Abou Samra 
> wrote:
>
>> On 01/02/2023 01:04, Ahanu Banerjee wrote:
>> > Is it possible to specify default values for a function to use when
>> arguments are missing? In the example below, I want the default font size
>> to be -4 and the default color to be blue without having to specify it each
>> time, but I also want the ability to change those values in rare cases.
>> >
>> > \version "2.24"
>> > \language "english"
>> > altParen = #(define-music-function
>> >  (parenColor parenSize parenItem)
>> >  (color? number? ly:music?)
>> >#{
>> >  \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
>> #parenColor \parenthesize #parenItem
>> >#})
>> > { c \altParen "blue" #-4 \upbow }
>>
>>
>> Perhaps read this:
>>
>>
>> https://extending-lilypond.readthedocs.io/en/latest/extending/music.html#optional-arguments
>>
>> Best,
>> Jean
>>
>>
>>


Re: Setting default arguments for music function?

2023-01-31 Thread Ahanu Banerjee
Thanks! I had no idea that that resource existed.
Appreciate all your help.

-Ahanu

On Tue, Jan 31, 2023 at 7:08 PM Jean Abou Samra  wrote:

> On 01/02/2023 01:04, Ahanu Banerjee wrote:
> > Is it possible to specify default values for a function to use when
> arguments are missing? In the example below, I want the default font size
> to be -4 and the default color to be blue without having to specify it each
> time, but I also want the ability to change those values in rare cases.
> >
> > \version "2.24"
> > \language "english"
> > altParen = #(define-music-function
> >  (parenColor parenSize parenItem)
> >  (color? number? ly:music?)
> >#{
> >  \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
> #parenColor \parenthesize #parenItem
> >#})
> > { c \altParen "blue" #-4 \upbow }
>
>
> Perhaps read this:
>
>
> https://extending-lilypond.readthedocs.io/en/latest/extending/music.html#optional-arguments
>
> Best,
> Jean
>
>
>


Setting default arguments for music function?

2023-01-31 Thread Ahanu Banerjee
Is it possible to specify default values for a function to use when
arguments are missing? In the example below, I want the default font size
to be -4 and the default color to be blue without having to specify it each
time, but I also want the ability to change those values in rare cases.

\version "2.24"
\language "english"
altParen = #(define-music-function
 (parenColor parenSize parenItem)
 (color? number? ly:music?)
   #{
 \tweak Parentheses.font-size #parenSize \tweak Parentheses.color
#parenColor \parenthesize #parenItem
   #})
{ c \altParen "blue" #-4 \upbow }

Thanks,
-Ahanu


Re: Tweak Slur direction "neutral"

2023-01-30 Thread Ahanu Banerjee
Perhaps the documentation could be amended to clarify how neutral direction
is handled for slurs? There are two documentation pages here that mention
slur orientation but don't describe the calculation that occurs in
\slurNeutral:
https://lilypond.org/doc/v2.24/Documentation/notation/direction-and-placement#the-direction-property
https://lilypond.org/doc/v2.24/Documentation/learning/within_002dstaff-objects#the-direction-property

Also, the documentation in the second link states "The value 0 may also be
used in some cases. It is simply treated as meaning UP for slurs, but for
some objects it means ‘center’." This doesn't seem accurate, as \override
Slur.direction = 0 results in an error, not a slur with direction UP.

On Sun, Jan 29, 2023 at 8:40 PM Ahanu Banerjee 
wrote:

> Thank you so much!
>
> -Ahanu
>
> On Sun, Jan 29, 2023, 20:36 Jean Abou Samra  wrote:
>
>> On 30/01/2023 02:20, Ahanu Banerjee wrote:
>> > When I attempt to change the "direction" property of a slur, whether
>> that is with \tweak or \override, I cannot set the direction to neutral
>> (0). UP (1) and DOWN (-1) work fine, but when setting to 0, I get the
>> following error:
>> >
>> > "Assertion failed: d, file
>> /home/lily/lilypond-2.24.0/release/binaries/mingw/lilypond/lilypond-2.24.0/flower/include/drul-array.hh,
>> line 56
>> > Exited with return code 3."
>> >
>> > This is necessary for a function I am creating; Slur.direction has
>> already been set to UP or DOWN earlier in the document, and I need to
>> temporarily set it to neutral while also changing its color. (\once
>> \slurNeutral is not practical here)
>> >
>> > Below is example code that generates the error:
>> >
>> > \version "2.24"
>> > \language "english"
>> > { c' d' \tweak Slur.direction #0 ( e' ) c' }
>> >
>> > Any suggestions?
>>
>>
>> You can see with
>>
>> \void \displayLilyMusic \slurNeutral
>>
>>
>> that \slurNeutral is not equivalent to \override Slur.direction = #0,
>> but \revert Slur.direction, which reverts Slur.direction to its default
>> value #ly:slur::calc-direction. So you want
>>
>> \version "2.24.0"
>>
>>
>> \language "english"
>> { c' d' \tweak Slur.direction #ly:slur::calc-direction ( e' ) c' }
>>
>>
>> Jean
>>
>>


Re: Tweak Slur direction "neutral"

2023-01-29 Thread Ahanu Banerjee
Thank you so much!

-Ahanu

On Sun, Jan 29, 2023, 20:36 Jean Abou Samra  wrote:

> On 30/01/2023 02:20, Ahanu Banerjee wrote:
> > When I attempt to change the "direction" property of a slur, whether
> that is with \tweak or \override, I cannot set the direction to neutral
> (0). UP (1) and DOWN (-1) work fine, but when setting to 0, I get the
> following error:
> >
> > "Assertion failed: d, file
> /home/lily/lilypond-2.24.0/release/binaries/mingw/lilypond/lilypond-2.24.0/flower/include/drul-array.hh,
> line 56
> > Exited with return code 3."
> >
> > This is necessary for a function I am creating; Slur.direction has
> already been set to UP or DOWN earlier in the document, and I need to
> temporarily set it to neutral while also changing its color. (\once
> \slurNeutral is not practical here)
> >
> > Below is example code that generates the error:
> >
> > \version "2.24"
> > \language "english"
> > { c' d' \tweak Slur.direction #0 ( e' ) c' }
> >
> > Any suggestions?
>
>
> You can see with
>
> \void \displayLilyMusic \slurNeutral
>
>
> that \slurNeutral is not equivalent to \override Slur.direction = #0,
> but \revert Slur.direction, which reverts Slur.direction to its default
> value #ly:slur::calc-direction. So you want
>
> \version "2.24.0"
>
>
> \language "english"
> { c' d' \tweak Slur.direction #ly:slur::calc-direction ( e' ) c' }
>
>
> Jean
>
>


Tweak Slur direction "neutral"

2023-01-29 Thread Ahanu Banerjee
When I attempt to change the "direction" property of a slur, whether that
is with \tweak or \override, I cannot set the direction to neutral (0). UP
(1) and DOWN (-1) work fine, but when setting to 0, I get the following
error:

"Assertion failed: d, file
/home/lily/lilypond-2.24.0/release/binaries/mingw/lilypond/lilypond-2.24.0/flower/include/drul-array.hh,
line 56
Exited with return code 3."

This is necessary for a function I am creating; Slur.direction has already
been set to UP or DOWN earlier in the document, and I need to temporarily
set it to neutral while also changing its color. (\once \slurNeutral is not
practical here)

Below is example code that generates the error:

\version "2.24"
\language "english"
{ c' d' \tweak Slur.direction #0 ( e' ) c' }

Any suggestions?

Thanks,
-Ahanu


Re: Define "tweak" function

2023-01-29 Thread Ahanu Banerjee
Never mind, it appears that adding "\etc" does what I am trying to do:

makeRed = -\tweak color "red" \etc

On Sun, Jan 29, 2023 at 5:53 PM Ahanu Banerjee 
wrote:

> Thanks for the quick reply. I am looking to create a function that can
> apply to more than one type of object, in this instance, slurs,
> articulations, and possibly fingerings. All the examples I have seen
> require specifying the object. Is it possible to have a function behave
> like "-\tweak" that acts on the object that follows it regardless of type?
>
> On Sun, Jan 29, 2023 at 5:49 PM Jean Abou Samra 
> wrote:
>
>> On 29/01/2023 23:45, Ahanu Banerjee wrote:
>> > How can I define a function that applies one or more tweaks to the
>> object that comes after it?
>> >
>> > example: I want the following expression to be a function called
>> "\makeRed":
>> > -\tweak color "red"
>> >
>> > so that I can type \makeRed \downbow instead of -\tweak color "red"
>> \downbow
>>
>> You will find examples here:
>>
>>
>> https://lilypond.org/doc/v2.24/Documentation/notation/substitution-function-examples
>>
>> Jean
>>
>>
>>


Re: Define "tweak" function

2023-01-29 Thread Ahanu Banerjee
Thanks for the quick reply. I am looking to create a function that can
apply to more than one type of object, in this instance, slurs,
articulations, and possibly fingerings. All the examples I have seen
require specifying the object. Is it possible to have a function behave
like "-\tweak" that acts on the object that follows it regardless of type?

On Sun, Jan 29, 2023 at 5:49 PM Jean Abou Samra  wrote:

> On 29/01/2023 23:45, Ahanu Banerjee wrote:
> > How can I define a function that applies one or more tweaks to the
> object that comes after it?
> >
> > example: I want the following expression to be a function called
> "\makeRed":
> > -\tweak color "red"
> >
> > so that I can type \makeRed \downbow instead of -\tweak color "red"
> \downbow
>
> You will find examples here:
>
>
> https://lilypond.org/doc/v2.24/Documentation/notation/substitution-function-examples
>
> Jean
>
>
>


Define "tweak" function

2023-01-29 Thread Ahanu Banerjee
How can I define a function that applies one or more tweaks to the object
that comes after it?

example: I want the following expression to be a function called "\makeRed":
-\tweak color "red"

so that I can type \makeRed \downbow instead of -\tweak color "red" \downbow

Thanks,
-Ahanu


Re: Unexpected placement of accidental

2023-01-05 Thread Ahanu Banerjee
Thank you!

-Ahanu

On Thu, Jan 5, 2023, 04:26 Jean Abou Samra  wrote:

> Le 05/01/2023 à 10:17, Ahanu Banerjee a écrit :
> > If I wanted to override the position of this single accidental, how
> > might I do so?
>
> Use extra-offset.
>
> \version "2.24.0"
>
> \language "english"
> \relative {
>\clef bass
>\key a \major
><
>  \tweak Accidental.extra-offset #'(-0.35 . 0) f,
>  \tweak Accidental.extra-offset #'(0.9 . 0) c'
>  a' f'> s4*3
> }
>
>
> If you prefer the values to be relative to the note head (instead of
> relative to the default position), you have to put
>
> \once \override Staff.AccidentalPlacement.positioning-done = ##t
>
> before the chord (but then you need to place *all* the accidentals in
> the chord manually).
>
>


Re: Unexpected placement of accidental

2023-01-05 Thread Ahanu Banerjee
Thanks for the clarification. I went back to Gould and indeed found a
reference to octave accidentals (page 90). It seems to be more a suggestion
than a rule. (I don't have other engraving texts on hand, but as a cellist,
the spacing struck me as jarring. Perhaps it is useful for keyboardists?)

The source material I am copying keeps the C-natural accidental closer to
the stem, like the second chord from my example, and I have seen other
hand-engraved scores do this as well, for the sake of prioritizing
horizontal space.

If I wanted to override the position of this single accidental, how might I
do so?

Cheers,
-Ahanu

On Thu, Jan 5, 2023, 03:46 Jean Abou Samra  wrote:

> Le 05/01/2023 à 07:26, Ahanu Banerjee a écrit :
> > Hello,
> >
> > Please see the example below. I tried running it in 2.22 and 2.23 as
> > well, and got the same result. Am I missing an obvious reason that the
> > c-natural accidental is placed so far to the left?
> >
> > \version "2.24.0"
> > \language "english"
> > \relative {
> >   \clef bass
> >   \key a \major
> >   % unexpected placement of "c-natural" accidental
> >s4*3
> >   % expected placement shown here
> >   \break 
> > }
>
>
>
> According to classical engraving rules, accidentals for notes of the
> same pitch at different octaves should be placed at the same horizontal
> position. In the first case, there are accidentals for two F notes,
> which must be aligned. If the C note's natural were placed as close
> as possible to its note head, the two F naturals would need to be
> placed farther, which would look bad for the higher F, and LilyPond
> basically favors the F naturals because there are two of them.
>
> The same effect is at play in the second example: the C notes
> get the priority for being placed closer to the note heads because
> there are two of them.
>
> Best,
> Jean
>
>


Unexpected placement of accidental

2023-01-04 Thread Ahanu Banerjee
Hello,

Please see the example below. I tried running it in 2.22 and 2.23 as well,
and got the same result. Am I missing an obvious reason that the c-natural
accidental is placed so far to the left?

\version "2.24.0"
\language "english"
\relative {
  \clef bass
  \key a \major
  % unexpected placement of "c-natural" accidental
   s4*3
  % expected placement shown here
  \break 
}

Thanks,
-Ahanu


Re: Simultaneous ottava and non-ottava voices

2022-07-01 Thread Ahanu Banerjee
Thank you!

-Ahanu

On Fri, Jul 1, 2022, 04:00 Paul Hodges  wrote:

> The ottava bracket needs both ends defined to appear, so the ottava
> command and its cancellation should be at the start and end of the music to
> be affected, like this:
>
>   << { \ottava 1 \repeat unfold 4 c'' \ottava 0 } \\ { \repeat unfold 4
> d,, } >>
>
> However, the command is acted on at the staff level, so both voices are
> affected as you have observed.  This is changed not by what you have tried
> doing, but by removing the engraver from the staff context and inserting it
> in the voice context so that only the voice containing the commands is
> affected, like so:
>
> \layout {
>   \context {
> \Staff
> \remove Ottava_spanner_engraver
>   }
>   \context {
> \Voice
> \consists Ottava_spanner_engraver
>   }
> }
>
> See the first snippet at
> https://lilypond.org/doc/v2.23/Documentation/snippets/tweaks-and-overrides
>
> Paul
>
>
> * From: * Ahanu Banerjee 
> * To: * lilypond-user 
> * Sent: * 01/07/2022 0:24
> * Subject: * Simultaneous ottava and non-ottava voices
>
> Hi,
>
> Is it possible to have two voices in one measure, on one staff, with one
> voice as "Ottava 1" and the other as "Ottava 0"? (I realise this notation
> may seem unclear, but I have a specific use case.)
>
> If I try the following, each ottava overrides the other:
>
> \version "2.23.10"
> \relative c' {
>   << { \ottava 1 \repeat unfold 4 c'' } \\ { \ottava 0 \repeat unfold 4
> d,, } >>
> }
>
> Thanks,
> -Ahanu
>
>


Re: Override multiple properties in one statement?

2022-06-30 Thread Ahanu Banerjee
Thanks; I think you are right about it being convoluted, and I will just
continue using explicit \tweak and \override statements.

Cheers,
-Ahanu

On Thu, Jun 30, 2022 at 4:18 PM Jean Abou Samra  wrote:

>
>
> Le 30/06/2022 à 22:04, Ahanu Banerjee a écrit :
> > Hello,
> >
> > Is it possible to override or tweak multiple properties of one object
> > at once, using one statement? i.e., without typing "\tweak" or
> > "\override" multiple times?  (Of course, defining a new function
> > consisting of multiple statements is possible, but it's not practical
> > when there are many combinations of properties to change throughout a
> > document.)
> >
> > For example:
> >
> > \version "2.23.10"
> > { c
> >   -\tweak outside-staff-priority #'()
> >   -\tweak whiteout ##t
> >   -\tweak Y-offset #0.25
> >   -\tweak X-offset #1.5
> >   ^\markup "text" }
>
>
> You could use
>
> \version "2.23.10"
>
> alistPropertyTweak =
> #(define-music-function (tweaks item) (alist? symbol-list-or-music?)
> (fold (lambda (pair previous)
> (once (propertyTweak (car pair)
>  (cdr pair)
>  previous)))
>   item
>   tweaks))
>
> { c'1 \alistPropertyTweak #'((outside-staff-priority . ())
> (whiteout . #t)
> (Y-offset . 0.25)
> (X-offset . 1.5))
>  ^"text"
>\once \alistPropertyTweak #'((outside-staff-priority . ())
> (whiteout . #t)
> (Y-offset . 0.25)
> (X-offset . 1.5))
>  TextScript
>c'^"text"
> }
>
>
> On the other hand, this may not necessarily be overly
> practical because in order to write any values in LilyPond
> syntax, you have to replace the quote ' with a backquote
> ` and use ,#{ #} to write LilyPond code. For example:
>
> {
>c'\alistPropertyTweak #`((text . ,#{ \markup \bold "a" #}))
>  ^"b"
> }
>
>
> Compare with
>
> {
>c'\tweak text \markup \bold "a" ^"b"
> }
>
>
> Ultimately, I think it is wiser to use \tweak or \override
> explicitly. That's of course up to you though. By the way,
> in Frescobaldi, you have an interface for defining snippets
> that are convenient to insert, in Tools > Coding > Fragments.
>
> Best,
> Jean
>
>
>
>
>


Simultaneous ottava and non-ottava voices

2022-06-30 Thread Ahanu Banerjee
Hi,

Is it possible to have two voices in one measure, on one staff, with one
voice as "Ottava 1" and the other as "Ottava 0"? (I realise this notation
may seem unclear, but I have a specific use case.)

If I try the following, each ottava overrides the other:

\version "2.23.10"
\relative c' {
  << { \ottava 1 \repeat unfold 4 c'' } \\ { \ottava 0 \repeat unfold 4 d,,
} >>
}

Thanks,
-Ahanu


Override multiple properties in one statement?

2022-06-30 Thread Ahanu Banerjee
Hello,

Is it possible to override or tweak multiple properties of one object at
once, using one statement? i.e., without typing "\tweak" or "\override"
multiple times?  (Of course, defining a new function consisting of multiple
statements is possible, but it's not practical when there are many
combinations of properties to change throughout a document.)

For example:

\version "2.23.10"
{ c
  -\tweak outside-staff-priority #'()
  -\tweak whiteout ##t
  -\tweak Y-offset #0.25
  -\tweak X-offset #1.5
  ^\markup "text" }

Thanks,
-Ahanu


Re: Override NoteHead glyph

2022-06-22 Thread Ahanu Banerjee
Perfect; thank you!

On Wed, Jun 22, 2022, 15:32 Aaron Hill  wrote:

> On 2022-06-22 12:19 pm, Ahanu Banerjee wrote:
> > Hello,
> >
> > I am trying to create noteheads (without stems) that have a duration
> > longer
> > than a quarter note (crotchet) but are filled-in. They are meant to
> > represent the notes that will be heard when a harmonic is played. I am
> > not
> > sure how to do this; one workaround is to use a quarter note value and
> > a
> > spacer rest, but this results in too much empty space. I tried
> > \override
> > NoteHead.glyph-name = #'"noteheads.s2", but that did not work.
> >
> > Example below (the notes are arbitrary):
> >
> > \version "2.23.7"
> > \relative c''
> > { << { \override Parentheses.font-size = #-1.5 \omit Flag \omit Stem
> >\teeny \tweak X-offset #0.2
> >
> > %% the higher voice should have filled-in noteheads
> >
> ><\parenthesize d \parenthesize f>2 } \\
> >  { 2 } >>  }
>
> You can scale the duration of any note so as to preserve its normal
> appearance but take up the required length:
>
> 
> \fixed c' { b4*2 a | b4*3 a4 | b4*4 | a1 }
> 
>
>
> -- Aaron Hill
>


Override NoteHead glyph

2022-06-22 Thread Ahanu Banerjee
Hello,

I am trying to create noteheads (without stems) that have a duration longer
than a quarter note (crotchet) but are filled-in. They are meant to
represent the notes that will be heard when a harmonic is played. I am not
sure how to do this; one workaround is to use a quarter note value and a
spacer rest, but this results in too much empty space. I tried \override
NoteHead.glyph-name = #'"noteheads.s2", but that did not work.

Example below (the notes are arbitrary):

\version "2.23.7"
\relative c''
{ << { \override Parentheses.font-size = #-1.5 \omit Flag \omit Stem
   \teeny \tweak X-offset #0.2

%% the higher voice should have filled-in noteheads

   <\parenthesize d \parenthesize f>2 } \\
 { 2 } >>  }

Thanks,
-Ahanu


Re: Exited with return code -1073741819

2022-06-15 Thread Ahanu Banerjee
Of course; just wanted to track progress and see if you still needed access
to a windows install to debug. Many thanks!

On Wed, Jun 15, 2022, 01:19 Jean Abou Samra  wrote:

> Le 15/06/2022 à 06:10, Ahanu Banerjee a écrit :
> > Hi, has an issue been created for this problem? I don't see one in
> gitlab.
>
>
> https://gitlab.com/lilypond/lilypond/-/issues/6361
>
>
> > Any progress in identifying the cause?
>
>
> It happens that yes, but I would like to remind that everyone in this
> project is a volunteer and thus you shouldn't expect fixes within days.
> 2.23 is a unstable release series after all. If things do not work,
> please downgrade to 2.22.
>
> Thanks,
> Jean
>
>


Re: Exited with return code -1073741819

2022-06-14 Thread Ahanu Banerjee
Hi, has an issue been created for this problem? I don't see one in gitlab.
Any progress in identifying the cause?

Thanks,

-Ahanu


On Fri, Jun 10, 2022 at 7:52 AM David Kastrup  wrote:

> Paul Hodges  writes:
>
> > From:   Paul Hodges 
> >
> > From: David Kastrup 
> > Try deleting
> >
> > C:/Program Files/lilypond-2.23.6/lib/guile/2.2/ccache/ice-9/eval.go
> >
> > which sounds like an outdated compilation cache (though I have no idea
> > why).
> >
> > That fixed it.
> >
> > Actually, it fixed the compiled cache error, but I still have
> >
> >
> >
> > ERROR: In procedure apply-smob/1:
> > Wrong number of arguments to #
> > Exited with return code 1.
> >
> > The reason I didn't realise before is that the run that I had done
> > after deleting the cache  spent a long time twiddling its thumbs with
> > Frescobaldi's progress bar at 100% before giving the -1073741819
> > error.  It would appear that the -1073741819 error was triggered
> > before the code giving this boot-closure error.
>
> Ok, it was worth a try.  With a mismatch of that precompiled file (for
> whatever reason) to the version of Guile, this would have been a
> possible cause for the problem.
>
> --
> David Kastrup
>


Re: Exited with return code -1073741819

2022-06-10 Thread Ahanu Banerjee
Sorry for the extra emails.

With all the engravers removed, as previously stated, it proceeds to
"Preprocessing graphical elements..." before giving code -1073741819.

The following engravers, when individually enabled (i.e., commenting out
the single "\remove" line), cause the problem to occur during "Interpreting
music..." prior to "Preprocessing graphical objects...":

Score:
System_start_delimiter_engraver
Spacing_engraver
Vertical_align_engraver

Staff
Ledger_line_engraver
Staff_symbol_engraver
Figured_bass_engraver

None of the engravers in Voice cause the problem, even when they are all
enabled.
If I enable all the engravers under Staff except the 3 that cause the
problem individually, I still get -1073741819.

That's all the testing I can do tonight, as it's late here. I'd be happy to
continue tomorrow.

Cheers,
-Ahanu


On Fri, Jun 10, 2022 at 2:06 AM Ahanu Banerjee  wrote:

> System_start_delimiter_engraver causes it to fail earlier, during
> "Interpreting music...".
>
> -Ahanu
>
>
> On Fri, Jun 10, 2022 at 2:01 AM Ahanu Banerjee  wrote:
>
>> In 2.23.9, using the code you (Jean) pasted in your last email, I get the
>> following output:
>>
>> Starting lilypond.exe 2.23.9 [Untitled]...
>> Processing `C:/Users/[...]/document.ly'
>> Parsing...
>> Interpreting music...
>> Preprocessing graphical objects...
>> Exited with return code -1073741819.
>>
>> On Fri, Jun 10, 2022 at 1:57 AM Ahanu Banerjee 
>> wrote:
>>
>>> I will give it a try.
>>>
>>> -Ahanu
>>>
>>> On Fri, Jun 10, 2022, 01:31 Jean Abou Samra  wrote:
>>>
>>>> Le 10/06/2022 à 02:17, Ahanu Banerjee a écrit :
>>>> > I was unable to get 2.2.6 (mingw) to run at all on my machine, but
>>>> > 2.23.8 and 2.23.9 have the issue.  It seems to be worse with 2.23.9.
>>>> > So far, I have only experienced it once with 2.23.7.
>>>> >
>>>> > I haven't identified any specific functions that trigger it. Even the
>>>> > following example has caused the issue, though not consistently:
>>>> >
>>>> > \version "2.23.9"
>>>> >
>>>> > { \repeat unfold 3000 a16 }
>>>> >
>>>> > This triggers it fairly consistently in 2.23.9, but not in 2.23.7:
>>>> >
>>>> > \version "2.23.7"
>>>> > { \repeat unfold 3000 c'8-3\flageolet_\markup "x" }
>>>> >
>>>>
>>>>
>>>>
>>>> OK, bear with me. There's one thing you can do to help. The error occurs
>>>> in "Processing music", right? Try compiling this:
>>>>
>>>> \version "2.23.9"
>>>>
>>>> \layout {
>>>>\context {
>>>>  \Score
>>>>  \remove Mark_tracking_translator
>>>>  \remove Paper_column_engraver
>>>>  \remove Repeat_acknowledge_engraver
>>>>  \remove Staff_collecting_engraver
>>>>  \remove Timing_translator
>>>>  \remove Output_property_engraver
>>>>  \remove Tweak_engraver
>>>>  \remove Spanner_tracking_engraver
>>>>  \remove System_start_delimiter_engraver
>>>>  \remove Mark_engraver
>>>>  \remove Jump_engraver
>>>>  \remove Volta_engraver
>>>>  \remove Metronome_mark_engraver
>>>>  \remove Break_align_engraver
>>>>  \remove Spacing_engraver
>>>>  \remove Grace_spacing_engraver
>>>>  \remove Vertical_align_engraver
>>>>  \remove Stanza_number_align_engraver
>>>>  \remove Bar_number_engraver
>>>>  \remove Parenthesis_engraver
>>>>  \remove Concurrent_hairpin_engraver
>>>>  \remove Beam_collision_engraver
>>>>  \remove Footnote_engraver
>>>>  \remove Centered_bar_number_align_engraver
>>>>  \remove Show_control_points_engraver
>>>>}
>>>>\context {
>>>>  \Staff
>>>>  \remove Output_property_engraver
>>>>  \remove Skip_typesetting_engraver
>>>>  \remove Bar_engraver
>>>>  \remove Pure_from_neighbor_engraver
>>>>  \remove Font_size_engraver
>>>>  \remove Separating_line_group_engraver
>>>>  \remove Dot_column_engraver
>>>>  \remove Staff_collecting_engraver
>>>>  \remove Ottava_spanner_engr

Re: Exited with return code -1073741819

2022-06-10 Thread Ahanu Banerjee
System_start_delimiter_engraver causes it to fail earlier, during
"Interpreting music...".

-Ahanu


On Fri, Jun 10, 2022 at 2:01 AM Ahanu Banerjee  wrote:

> In 2.23.9, using the code you (Jean) pasted in your last email, I get the
> following output:
>
> Starting lilypond.exe 2.23.9 [Untitled]...
> Processing `C:/Users/[...]/document.ly'
> Parsing...
> Interpreting music...
> Preprocessing graphical objects...
> Exited with return code -1073741819.
>
> On Fri, Jun 10, 2022 at 1:57 AM Ahanu Banerjee  wrote:
>
>> I will give it a try.
>>
>> -Ahanu
>>
>> On Fri, Jun 10, 2022, 01:31 Jean Abou Samra  wrote:
>>
>>> Le 10/06/2022 à 02:17, Ahanu Banerjee a écrit :
>>> > I was unable to get 2.2.6 (mingw) to run at all on my machine, but
>>> > 2.23.8 and 2.23.9 have the issue.  It seems to be worse with 2.23.9.
>>> > So far, I have only experienced it once with 2.23.7.
>>> >
>>> > I haven't identified any specific functions that trigger it. Even the
>>> > following example has caused the issue, though not consistently:
>>> >
>>> > \version "2.23.9"
>>> >
>>> > { \repeat unfold 3000 a16 }
>>> >
>>> > This triggers it fairly consistently in 2.23.9, but not in 2.23.7:
>>> >
>>> > \version "2.23.7"
>>> > { \repeat unfold 3000 c'8-3\flageolet_\markup "x" }
>>> >
>>>
>>>
>>>
>>> OK, bear with me. There's one thing you can do to help. The error occurs
>>> in "Processing music", right? Try compiling this:
>>>
>>> \version "2.23.9"
>>>
>>> \layout {
>>>\context {
>>>  \Score
>>>  \remove Mark_tracking_translator
>>>  \remove Paper_column_engraver
>>>  \remove Repeat_acknowledge_engraver
>>>  \remove Staff_collecting_engraver
>>>  \remove Timing_translator
>>>  \remove Output_property_engraver
>>>  \remove Tweak_engraver
>>>  \remove Spanner_tracking_engraver
>>>  \remove System_start_delimiter_engraver
>>>  \remove Mark_engraver
>>>  \remove Jump_engraver
>>>  \remove Volta_engraver
>>>  \remove Metronome_mark_engraver
>>>  \remove Break_align_engraver
>>>  \remove Spacing_engraver
>>>  \remove Grace_spacing_engraver
>>>  \remove Vertical_align_engraver
>>>  \remove Stanza_number_align_engraver
>>>  \remove Bar_number_engraver
>>>  \remove Parenthesis_engraver
>>>  \remove Concurrent_hairpin_engraver
>>>  \remove Beam_collision_engraver
>>>  \remove Footnote_engraver
>>>  \remove Centered_bar_number_align_engraver
>>>  \remove Show_control_points_engraver
>>>}
>>>\context {
>>>  \Staff
>>>  \remove Output_property_engraver
>>>  \remove Skip_typesetting_engraver
>>>  \remove Bar_engraver
>>>  \remove Pure_from_neighbor_engraver
>>>  \remove Font_size_engraver
>>>  \remove Separating_line_group_engraver
>>>  \remove Dot_column_engraver
>>>  \remove Staff_collecting_engraver
>>>  \remove Ottava_spanner_engraver
>>>  \remove Clef_engraver
>>>  \remove Key_engraver
>>>  \remove Time_signature_engraver
>>>  \remove Ledger_line_engraver
>>>  \remove Staff_symbol_engraver
>>>  \remove Collision_engraver
>>>  \remove Grob_pq_engraver
>>>  \remove Rest_collision_engraver
>>>  \remove Accidental_engraver
>>>  \remove Piano_pedal_engraver
>>>  \remove Piano_pedal_align_engraver
>>>  \remove Instrument_name_engraver
>>>  \remove Axis_group_engraver
>>>  \remove Figured_bass_engraver
>>>  \remove Figured_bass_position_engraver
>>>  \remove Script_row_engraver
>>>  \remove Cue_clef_engraver
>>>  \remove Fingering_column_engraver
>>>  \remove Merge_mmrest_numbers_engraver
>>>  \remove Alteration_glyph_engraver
>>>}
>>>\context {
>>>\Voice
>>>  \remove Grace_engraver
>>>  \remove Font_size_engraver
>>>  \remove Pitched_trill_engraver
>>>  \remove Output_property_engraver
>>>  \remove Arpeggio_engraver
>>>  \remove Multi_measure_rest_engrav

Re: Exited with return code -1073741819

2022-06-10 Thread Ahanu Banerjee
In 2.23.9, using the code you (Jean) pasted in your last email, I get the
following output:

Starting lilypond.exe 2.23.9 [Untitled]...
Processing `C:/Users/[...]/document.ly'
Parsing...
Interpreting music...
Preprocessing graphical objects...
Exited with return code -1073741819.

On Fri, Jun 10, 2022 at 1:57 AM Ahanu Banerjee  wrote:

> I will give it a try.
>
> -Ahanu
>
> On Fri, Jun 10, 2022, 01:31 Jean Abou Samra  wrote:
>
>> Le 10/06/2022 à 02:17, Ahanu Banerjee a écrit :
>> > I was unable to get 2.2.6 (mingw) to run at all on my machine, but
>> > 2.23.8 and 2.23.9 have the issue.  It seems to be worse with 2.23.9.
>> > So far, I have only experienced it once with 2.23.7.
>> >
>> > I haven't identified any specific functions that trigger it. Even the
>> > following example has caused the issue, though not consistently:
>> >
>> > \version "2.23.9"
>> >
>> > { \repeat unfold 3000 a16 }
>> >
>> > This triggers it fairly consistently in 2.23.9, but not in 2.23.7:
>> >
>> > \version "2.23.7"
>> > { \repeat unfold 3000 c'8-3\flageolet_\markup "x" }
>> >
>>
>>
>>
>> OK, bear with me. There's one thing you can do to help. The error occurs
>> in "Processing music", right? Try compiling this:
>>
>> \version "2.23.9"
>>
>> \layout {
>>\context {
>>  \Score
>>  \remove Mark_tracking_translator
>>  \remove Paper_column_engraver
>>  \remove Repeat_acknowledge_engraver
>>  \remove Staff_collecting_engraver
>>  \remove Timing_translator
>>  \remove Output_property_engraver
>>  \remove Tweak_engraver
>>  \remove Spanner_tracking_engraver
>>  \remove System_start_delimiter_engraver
>>  \remove Mark_engraver
>>  \remove Jump_engraver
>>  \remove Volta_engraver
>>  \remove Metronome_mark_engraver
>>  \remove Break_align_engraver
>>  \remove Spacing_engraver
>>  \remove Grace_spacing_engraver
>>  \remove Vertical_align_engraver
>>  \remove Stanza_number_align_engraver
>>  \remove Bar_number_engraver
>>  \remove Parenthesis_engraver
>>  \remove Concurrent_hairpin_engraver
>>  \remove Beam_collision_engraver
>>  \remove Footnote_engraver
>>  \remove Centered_bar_number_align_engraver
>>  \remove Show_control_points_engraver
>>}
>>\context {
>>  \Staff
>>  \remove Output_property_engraver
>>  \remove Skip_typesetting_engraver
>>  \remove Bar_engraver
>>  \remove Pure_from_neighbor_engraver
>>  \remove Font_size_engraver
>>  \remove Separating_line_group_engraver
>>  \remove Dot_column_engraver
>>  \remove Staff_collecting_engraver
>>  \remove Ottava_spanner_engraver
>>  \remove Clef_engraver
>>  \remove Key_engraver
>>  \remove Time_signature_engraver
>>  \remove Ledger_line_engraver
>>  \remove Staff_symbol_engraver
>>  \remove Collision_engraver
>>  \remove Grob_pq_engraver
>>  \remove Rest_collision_engraver
>>  \remove Accidental_engraver
>>  \remove Piano_pedal_engraver
>>  \remove Piano_pedal_align_engraver
>>  \remove Instrument_name_engraver
>>  \remove Axis_group_engraver
>>  \remove Figured_bass_engraver
>>  \remove Figured_bass_position_engraver
>>  \remove Script_row_engraver
>>  \remove Cue_clef_engraver
>>  \remove Fingering_column_engraver
>>  \remove Merge_mmrest_numbers_engraver
>>  \remove Alteration_glyph_engraver
>>}
>>\context {
>>\Voice
>>  \remove Grace_engraver
>>  \remove Font_size_engraver
>>  \remove Pitched_trill_engraver
>>  \remove Output_property_engraver
>>  \remove Arpeggio_engraver
>>  \remove Multi_measure_rest_engraver
>>  \remove Text_spanner_engraver
>>  \remove Trill_spanner_engraver
>>  \remove Grob_pq_engraver
>>  \remove Forbid_line_break_engraver
>>  \remove Laissez_vibrer_engraver
>>  \remove Repeat_tie_engraver
>>  \remove Note_head_line_engraver
>>  \remove Glissando_engraver
>>  \remove Ligature_bracket_engraver
>>  \remove Breathing_sign_engraver
>>  \remove Note_heads_engraver
>>  \remove Dots_engraver
>>  \remove Rest_engraver
>>  \remove Stem_engraver
>>  \remove Beam_engraver

Re: Exited with return code -1073741819

2022-06-09 Thread Ahanu Banerjee
I will give it a try.

-Ahanu

On Fri, Jun 10, 2022, 01:31 Jean Abou Samra  wrote:

> Le 10/06/2022 à 02:17, Ahanu Banerjee a écrit :
> > I was unable to get 2.2.6 (mingw) to run at all on my machine, but
> > 2.23.8 and 2.23.9 have the issue.  It seems to be worse with 2.23.9.
> > So far, I have only experienced it once with 2.23.7.
> >
> > I haven't identified any specific functions that trigger it. Even the
> > following example has caused the issue, though not consistently:
> >
> > \version "2.23.9"
> >
> > { \repeat unfold 3000 a16 }
> >
> > This triggers it fairly consistently in 2.23.9, but not in 2.23.7:
> >
> > \version "2.23.7"
> > { \repeat unfold 3000 c'8-3\flageolet_\markup "x" }
> >
>
>
>
> OK, bear with me. There's one thing you can do to help. The error occurs
> in "Processing music", right? Try compiling this:
>
> \version "2.23.9"
>
> \layout {
>\context {
>  \Score
>  \remove Mark_tracking_translator
>  \remove Paper_column_engraver
>  \remove Repeat_acknowledge_engraver
>  \remove Staff_collecting_engraver
>  \remove Timing_translator
>  \remove Output_property_engraver
>  \remove Tweak_engraver
>  \remove Spanner_tracking_engraver
>  \remove System_start_delimiter_engraver
>  \remove Mark_engraver
>  \remove Jump_engraver
>  \remove Volta_engraver
>  \remove Metronome_mark_engraver
>  \remove Break_align_engraver
>  \remove Spacing_engraver
>  \remove Grace_spacing_engraver
>  \remove Vertical_align_engraver
>  \remove Stanza_number_align_engraver
>  \remove Bar_number_engraver
>  \remove Parenthesis_engraver
>  \remove Concurrent_hairpin_engraver
>  \remove Beam_collision_engraver
>  \remove Footnote_engraver
>  \remove Centered_bar_number_align_engraver
>  \remove Show_control_points_engraver
>}
>\context {
>  \Staff
>  \remove Output_property_engraver
>  \remove Skip_typesetting_engraver
>  \remove Bar_engraver
>  \remove Pure_from_neighbor_engraver
>  \remove Font_size_engraver
>  \remove Separating_line_group_engraver
>  \remove Dot_column_engraver
>  \remove Staff_collecting_engraver
>  \remove Ottava_spanner_engraver
>  \remove Clef_engraver
>  \remove Key_engraver
>  \remove Time_signature_engraver
>  \remove Ledger_line_engraver
>  \remove Staff_symbol_engraver
>  \remove Collision_engraver
>  \remove Grob_pq_engraver
>  \remove Rest_collision_engraver
>  \remove Accidental_engraver
>  \remove Piano_pedal_engraver
>  \remove Piano_pedal_align_engraver
>  \remove Instrument_name_engraver
>  \remove Axis_group_engraver
>  \remove Figured_bass_engraver
>  \remove Figured_bass_position_engraver
>  \remove Script_row_engraver
>  \remove Cue_clef_engraver
>  \remove Fingering_column_engraver
>  \remove Merge_mmrest_numbers_engraver
>  \remove Alteration_glyph_engraver
>}
>\context {
>\Voice
>  \remove Grace_engraver
>  \remove Font_size_engraver
>  \remove Pitched_trill_engraver
>  \remove Output_property_engraver
>  \remove Arpeggio_engraver
>  \remove Multi_measure_rest_engraver
>  \remove Text_spanner_engraver
>  \remove Trill_spanner_engraver
>  \remove Grob_pq_engraver
>  \remove Forbid_line_break_engraver
>  \remove Laissez_vibrer_engraver
>  \remove Repeat_tie_engraver
>  \remove Note_head_line_engraver
>  \remove Glissando_engraver
>  \remove Ligature_bracket_engraver
>  \remove Breathing_sign_engraver
>  \remove Note_heads_engraver
>  \remove Dots_engraver
>  \remove Rest_engraver
>  \remove Stem_engraver
>  \remove Beam_engraver
>  \remove Grace_beam_engraver
>  \remove Auto_beam_engraver
>  \remove Grace_auto_beam_engraver
>  \remove New_fingering_engraver
>  \remove Chord_tremolo_engraver
>  \remove Double_percent_repeat_engraver
>  \remove Percent_repeat_engraver
>  \remove Slash_repeat_engraver
>  \remove Part_combine_engraver
>  \remove Text_engraver
>  \remove Dynamic_engraver
>  \remove Dynamic_align_engraver
>  \remove Fingering_engraver
>  \remove Bend_engraver
>  \remove Finger_glide_engraver
>  \remove Script_engraver
>  \remove Script_column_engraver
>  \remove Rhythmic_column_engraver
>  \remove Note_spacing_engraver
>  \remove Spanner_break_forbid_engraver

Re: Terminate one-note hairpin at end of note

2022-06-09 Thread Ahanu Banerjee
I should have scrolled further down in the documentation. This works:

\override Hairpin.endpoint-alignments = #`(,LEFT . ,LEFT)

-Ahanu


On Thu, Jun 9, 2022 at 8:21 PM Ahanu Banerjee  wrote:

> Hi,
>
> shorten-pair works, but I was hoping there would be an easier solution
> that automatically places the endpoint and doesn't require trial and error.
>
> Thanks,
> -Ahanu
>
>
> On Thu, Jun 9, 2022 at 7:51 PM Kieren MacMillan <
> kie...@kierenmacmillan.info> wrote:
>
>> Hi Ahanu,
>>
>> > Is there a clean way to terminate a hairpin at the end of the same note
>> it begins with, i.e., at the left side of the next note?
>>
>> Maybe shorten-pair?
>>
>> %%%  SNIPPET BEGINS
>> \version "2.23.4"
>>
>> \layout { ragged-right = ##f }
>>
>> {
>>   % default output
>>   \after 2 \! c'2\> 4 4 |
>>   %desired output
>>   2\> 4\hide\p 4 |
>>   %alternatively, this works:
>>   \after 4. \! 2\> 4 4 |
>>
>>   \break
>>   c'2-\tweak shorten-pair #'(0 . 1.5) \> 4\! 4 |
>> }
>> %%%  SNIPPET ENDS
>>
>> There are other ways, if this doesn’t suit.
>>
>> Cheers,
>> Kieren.
>
>


Re: Terminate one-note hairpin at end of note

2022-06-09 Thread Ahanu Banerjee
Hi,

shorten-pair works, but I was hoping there would be an easier solution that
automatically places the endpoint and doesn't require trial and error.

Thanks,
-Ahanu


On Thu, Jun 9, 2022 at 7:51 PM Kieren MacMillan 
wrote:

> Hi Ahanu,
>
> > Is there a clean way to terminate a hairpin at the end of the same note
> it begins with, i.e., at the left side of the next note?
>
> Maybe shorten-pair?
>
> %%%  SNIPPET BEGINS
> \version "2.23.4"
>
> \layout { ragged-right = ##f }
>
> {
>   % default output
>   \after 2 \! c'2\> 4 4 |
>   %desired output
>   2\> 4\hide\p 4 |
>   %alternatively, this works:
>   \after 4. \! 2\> 4 4 |
>
>   \break
>   c'2-\tweak shorten-pair #'(0 . 1.5) \> 4\! 4 |
> }
> %%%  SNIPPET ENDS
>
> There are other ways, if this doesn’t suit.
>
> Cheers,
> Kieren.


Re: Exited with return code -1073741819

2022-06-09 Thread Ahanu Banerjee
I was unable to get 2.2.6 (mingw) to run at all on my machine, but 2.23.8
and 2.23.9 have the issue.  It seems to be worse with 2.23.9. So far, I
have only experienced it once with 2.23.7.

I haven't identified any specific functions that trigger it. Even the
following example has caused the issue, though not consistently:

\version "2.23.9"

{ \repeat unfold 3000 a16 }

This triggers it fairly consistently in 2.23.9, but not in 2.23.7:

\version "2.23.7"
{ \repeat unfold 3000 c'8-3\flageolet_\markup "x" }


-Ahanu


On Thu, Jun 9, 2022 at 7:35 PM Paul Hodges  wrote:

> It's late now, so I'll leave that till tomorrow.
>
> But I found the mingw installer for 2.23.6 instead, and using that I
> cannot invoke the crash at issue.  So from my tests the problem first
> arises with 2.23.7.
>
> Paul
>
>
> * From: * David Kastrup 
> * To: * Paul Hodges 
> * Cc: * Jean Abou Samra , Lily Pond <
> lilypond-user@gnu.org>, Ahanu Banerjee 
> * Sent: * 10/06/2022 0:30
> * Subject: * Re: Exited with return code -1073741819
>
> Paul Hodges  writes:
>
> > From:   Jean Abou Samra 
> > Please try the bisection between versions as suggested in my first
> > email. That would be very helpful.
> >
> > 2.23.7, 8, 9 all give the error at random intervals.
> >
> >
> > I can't test 2.23.6 because it gives me the error:
> >
> >
> >
> > ;;; note: source file C:/Program
> Files/lilypond-2.23.6/share/guile/2.2/ice-9/eval.scm
> > ;;;   newer than compiled C:/Program
> > Files/lilypond-2.23.6/lib/guile/2.2/ccache/ice-9/eval.go
>
> Try deleting
>
> C:/Program Files/lilypond-2.23.6/lib/guile/2.2/ccache/ice-9/eval.go
>
> which sounds like an outdated compilation cache (though I have no idea
> why).
>
> --
> David Kastrup
>
>


Terminate one-note hairpin at end of note

2022-06-09 Thread Ahanu Banerjee
Hello,

Is there a clean way to terminate a hairpin at the end of the same note it
begins with, i.e., at the left side of the next note? I tried using the new
"\after" construction, but that only works if I set it to an arbitrary note
value less than the full value of the note beginning the hairpin.

\version "2.23.9"
{ % default output
  \after 2 \! c'2\> 4 4 |
  %desired output
  2\> 4\hide\p 4 |
  %alternatively, this works:
  \after 4. \! 2\> 4 4 |
}


Thanks,
-Ahanu


Exited with return code -1073741819

2022-06-09 Thread Ahanu Banerjee
Hello,

On Windows 11, I have been using 2.22 with no problems, but 2.23.x
frequently hangs after "Interpreting music..." and says "Exited with return
code -1073741819". Running lilypond again will sometimes work and sometimes
returns the same error. I have not been able to identify a pattern other
than that larger files have this problem more frequently.

I understand this is an access violation code, 0xC005, but I have no
idea what's causing it. I don't have third-party antivirus software
installed. I recently switched to Windows from Mac OS, so I'm totally
inexperienced here.

Any tips for troubleshooting?

Thanks,
-Ahanu


TextScript inside staff

2022-06-08 Thread Ahanu Banerjee
Hello,

I'm looking for a way to put markup text, anchored to a note, inside the
staff. The only way I have found so far is using extra-offset, which
results in spacing issues around the text's original position. Is there
another way?

Example:

\version "2.23.8"
{ \stemUp e'' -\tweak extra-offset #'(0 . 2.75) -\tweak whiteout ##t
_\markup "II" }


Thanks,
-Ahanu


Re: issues with "afterGrace" since 2.20

2022-05-29 Thread Ahanu Banerjee
Thanks, everyone, for the detailed explanations and the proposed solution!

-Ahanu


On Sat, May 28, 2022 at 7:28 AM David Kastrup  wrote:

> Lukas-Fabian Moser  writes:
>
> > Hi Ahanu,
> >
> >> In lilypond 2.20.0, I was able to use "afterGrace" like this:
> >>
> >> \version "2.20.0"
> >> \language "english"
> >> \relative c' { d2 \afterGrace 4 { cs16 d } }
> >>
> >> However, this now presents an error: "warning: \afterGrace exceeds
> >> duration of main argument". Running ly-convert does not fix it.
> >>
> >> If I change "\aftergrace 4" to "\aftergrace d4", it works
> >> fine. However, I have multiple documents written with the
> >> aforementioned syntax, and it would take a long time to fix them
> >> manually. Any suggestions?
> >
> > Actually, the example you posted gives a different warning because you
> > reduced it "too much".
> >
> > Here's what happens: \afterGrace accepts an optional argument
> > indicating the amount of time (as a fraction of the main note) after
> > which the grace should appear.
> >
> > In 2.20, this was defined via:
> >
> > #(define-music-function (fraction main grace) ((fraction?) ly:music?
> >  ly:music?) ...
> >
> > LilyPond now sees that 4 is not a fraction?, hence assumes no
> > "fraction" was given, and interprets 4 as ly:music? yielding the
> > "main" note. Then, { cs16 d } becomes the "grace" part, as intended by
> > you.
> >
> > In 2.22, the definition was changed to:
> >
> > #(define-music-function (fraction main grace) ((scale?) ly:music?
> >  ly:music?) ...
> >
> > Now scale? is defined (in c++.scm) as
> >
> > (define-public (scale? x)
> >   (or (and (rational? x) (exact? x) (not (negative? x)))
> >   (fraction? x)
> >   (and (ly:moment? x) (scale? (ly:moment-main x)
> >
> > meaning: A scale? can be
> > - a fraction?
> > - an non-negative exact rational number
> > - a LilyPond moment whose main part is in turn a scale?.
> >
> > This is fulfilled by 4, hence in your call to \afterGrace 4  { cs16 d },
> > ... 4 is taken to be the afterGrace "fraction" (and in recent
> > versions, there is the warning, added by me, that this fraction is
> > larger than 1)
> > ... { cs16 d } is taken to be the "main" note
> > ... whatever comes after is taken to be the "main" note (since in your
> > minimal example, nothing comes after this, compilation fails
> > completely).
> >
> > I'm not sure about David Kastrup's rationale for allowing a scale? as
> > an afterGraceFraction, but if anybody is aware about the implications
> > his changes might have for LilyPond's syntax, it's him.
> > https://gitlab.com/lilypond/lilypond/-/issues/5327
> >
> https://gitlab.com/lilypond/lilypond/-/commit/027538606b016afb643555d654cefaee94dfb424
>
> The respective commit is
>
> commit 027538606b016afb643555d654cefaee94dfb424
> Author: David Kastrup 
> Date:   Wed May 23 19:08:31 2018 +0200
>
> Issue 5327/4: Let \afterGrace and \scaleDurations take a scale
>
> That's more versatile than allowing just a fraction as a pair
> as previously.
>
> "More versatile" means that you previously could use 3/4 but could not
> use #3/4 or the equivalent ##e.75 .  Those are acceptable as scale
> factors for durations like 1 * ##e.75 (and naturally also 1 * 4) so it
> seemed like it would make for a more natural specification of the
> (optional) scale factor to allow the predicate scale? here as well.
>
> It does have semantic conflict with the 2.20(?) feature of having
> isolated durations register as notes.
>
> Which was accepted as a music function argument only with
>
> commit 1d9fc4b1512eb69a28677890dc26658c3552c6cd
> Author: David Kastrup 
> Date:   Thu Feb 25 19:36:20 2016 +0100
>
> Issue 4779: Accept isolated durations as music function arguments
>
> (later than the original feature) because I was queasy about the
> implications but it appeared that it was more confusing when this did
> not work.
>
> So it's a case of an emergent ambiguity that seemed like the lesser
> drawback and compatibility/coherence headache compared to not going
> ahead.
>
> For the optional argument of \afterGrace, there would be some incentive
> in case of a duration to interpret it as a duration rather than as a
> scale factor.  That would, however, make this different from either what
> \afterGraceFraction accepts, or what its name insinuates.  Also it would
> make the predicate scale? be an inadequate description of what the
> argument's type is which would functionally be
> non-duration-scale-or-duration? which of course has the exact same
> implementation.
>
> In short, a maze of conflicting considerations in the context of
> creating versatile and uniform behavior leading to a so-so outcome.
>
> --
> David Kastrup
>


Re: fermata inside staff with textScript

2022-05-27 Thread Ahanu Banerjee
Thank you!

-Ahanu

On Fri, May 27, 2022, 18:32 Jean Abou Samra  wrote:

>
>
> Le 27/05/2022 à 23:45, Ahanu Banerjee a écrit :
> > Hello,
> >
> > I am having trouble getting a fermata to appear inside the staff when
> > textScript (markup) is specified on the same side of the staff as the
> > fermata. (This is needed for a multi-voice context with tight
> > spacing.) Changing outside-staff-priority did not help. Is there an
> > easy fix?
> >
> >
> > \version "2.23.8"
> > \relative c'' { \stemDown
> > % inverted fermata appears below textScript
> > a'_\markup "text" -\tweak Y-offset #0 _\fermata s4
> > %expected fermata placement
> > a -\tweak Y-offset #0 _\fermata }
> >
> >
> > Thanks,
> > -Ahanu
>
>
> You need to remove the script-priority in order to turn off the
> collision resolution between the two scripts.
>
> \version "2.23.9"
>
> \relative c'' {
>\stemDown
>a'_\markup "text" -\tweak script-priority ##f \tweak Y-offset 0
> _\fermata
> }
>
>
> Best,
> Jean
>
>


issues with "afterGrace" since 2.20

2022-05-27 Thread Ahanu Banerjee
Hello,

In lilypond 2.20.0, I was able to use "afterGrace" like this:

\version "2.20.0"
\language "english"
\relative c' { d2 \afterGrace 4 { cs16 d } }

However, this now presents an error: "warning: \afterGrace exceeds duration
of main argument". Running ly-convert does not fix it.

If I change "\aftergrace 4" to "\aftergrace d4", it works fine. However, I
have multiple documents written with the aforementioned syntax, and it
would take a long time to fix them manually. Any suggestions?

Thanks,
-Ahanu


fermata inside staff with textScript

2022-05-27 Thread Ahanu Banerjee
Hello,

I am having trouble getting a fermata to appear inside the staff when
textScript (markup) is specified on the same side of the staff as the
fermata. (This is needed for a multi-voice context with tight spacing.)
Changing outside-staff-priority did not help. Is there an easy fix?


\version "2.23.8"
\relative c'' { \stemDown
% inverted fermata appears below textScript
a'_\markup "text" -\tweak Y-offset #0 _\fermata s4
%expected fermata placement
a -\tweak Y-offset #0 _\fermata }


Thanks,
-Ahanu


Re: TupletNumber placement with fingering

2022-05-19 Thread Ahanu Banerjee
No, there was a reason I needed the fingerings on either side of the staff
(in my use case, sometimes there is an alternate fingering).

Thanks,

On Thu, May 19, 2022, 10:00 Mark Stephen Mrotek 
wrote:

> Anahu,
>
>
>
> Is this acceptable?
>
>
>
> \version "2.22.2"
>
> \relative c
>
> {\tuplet 3/2 { g''8_4 g g } \tuplet 3/2 { c^4 c c } }
>
>
>
> Mark
>
>
>
> *From:* lilypond-user [mailto:lilypond-user-bounces+carsonmark=
> ca.rr@gnu.org] *On Behalf Of *Ahanu Banerjee
> *Sent:* Wednesday, May 18, 2022 8:54 PM
> *To:* Lily Pond 
> *Subject:* TupletNumber placement with fingering
>
>
>
> Hello,
>
>
>
> When I have a beamed tuplet (without a bracket) and a fingering on one
> note, the TupletNumber moves outward from the staff despite there being no
> possibility of a collison. In normal usage, TupletNumber should stay as
> close as possible to the beam.
>
>
>
> Example:
>
>
>
> \version "2.22.2"
>
> \relative c
>
> {\tuplet 3/2 { g''8-4 g g } \tuplet 3/2 { c_4 c c } }
>
>
>
> Is this the expected behaviour? The fix I have found is increasing the
> value of Fingering.outside-staff-priority. Is that the best solution?
>
>
>
> Thank you!
>


TupletNumber placement with fingering

2022-05-18 Thread Ahanu Banerjee
Hello,

When I have a beamed tuplet (without a bracket) and a fingering on one
note, the TupletNumber moves outward from the staff despite there being no
possibility of a collison. In normal usage, TupletNumber should stay as
close as possible to the beam.

Example:

\version "2.22.2"
\relative c
{\tuplet 3/2 { g''8-4 g g } \tuplet 3/2 { c_4 c c } }

Is this the expected behaviour? The fix I have found is increasing the
value of Fingering.outside-staff-priority. Is that the best solution?

Thank you!


Multiple identical articulations on one note

2021-12-13 Thread Ahanu Banerjee
Hello,

What is the easiest way to put multiple identical articulations on one
note? I am trying to put a tenuto marking both above and below the same
note in a passage.

(Context: this is for a cello; the main bowing is above the notes, and
there is an alternative bowing below the notes.)

Thanks,
-Ahanu


Crescendo after custom dynamic marking

2021-12-12 Thread Ahanu Banerjee
Hello,

When creating a crescendo following a custom dynamic marking (e.g., piano
subito), I am having trouble moving the start of the spanner to a point
following the dynamic markup.

What would be the best way of doing this? Example below. Thanks!

\version "2.20.0"
{ d'16_\markup { \dynamic p \italic "subito" } \cresc \repeat unfold 14
d'16 d'\f | }

-Ahanu


Re: Altering beamed stem lengths

2021-12-11 Thread Ahanu Banerjee
Thank you, Aaron; that is exactly what I was looking for.

Cheers,
-Ahanu

On Sat, Dec 11, 2021, 23:42 Aaron Hill  wrote:

> On 2021-12-11 8:29 pm, Ahanu Banerjee wrote:
> > Hello,
> >
> > I am working with 2 simultaneous voices, and I want to increase the
> > distance between the beamed stems of one voice and the noteheads of the
> > other voice. Is there some way to set a minimum distance between the
> > beams
> > and noteheads, i.e., "padding"? I don't want to manually override
> > Stem.details.beamed-lengths or Beam.positions each time.
> >
> > Here is an example:
> >
> > \version "2.20.0"
> > %normal output%
> > << { g'8 [ s e' s f' s d' ] } \\ { \repeat unfold 4 { s b'8 } } >>
> > %desired output%
> > << { \override Beam.positions = #'(2.2 . 1.8)
> >  g'8 [ s e' s f' s d' ] } \\ { \repeat unfold 4 { s b'8 } } >>
>
> This seems to get pretty close to what you want:
>
> 
> << { g'8 -\tweak details.collision-padding 1 [ s e' s f' s d' ] } \\ {
> \repeat unfold 4 { s b'8 } } >>
> 
>
>
> -- Aaron Hill
>


Altering beamed stem lengths

2021-12-11 Thread Ahanu Banerjee
Hello,

I am working with 2 simultaneous voices, and I want to increase the
distance between the beamed stems of one voice and the noteheads of the
other voice. Is there some way to set a minimum distance between the beams
and noteheads, i.e., "padding"? I don't want to manually override
Stem.details.beamed-lengths or Beam.positions each time.

Here is an example:

\version "2.20.0"
%normal output%
<< { g'8 [ s e' s f' s d' ] } \\ { \repeat unfold 4 { s b'8 } } >>
%desired output%
<< { \override Beam.positions = #'(2.2 . 1.8)
 g'8 [ s e' s f' s d' ] } \\ { \repeat unfold 4 { s b'8 } } >>


Thanks,
-Ahanu


Re: Tempo marking with 2 notes

2021-05-11 Thread Ahanu Banerjee
Indeed, I had missed that portion of the documentation.. I was able to
adapt it and make it work.

Thank you!
-Ahanu

On Mon, May 10, 2021, 22:13 Peter Chubb 
wrote:

> >>>>> "Ahanu" == Ahanu Banerjee  writes:
>
>
> Ahanu> Can anyone provide a simple way to make a tempo marking like
> Ahanu> this: "♩= 텞 " ?
>
> Something like this?
>
> \version "2.22.0"
>
> \score {
>   \new Staff { \time 3/4 r2.^
>\markup {
>\note {2.} #UP
>=
>\note {2} #UP
>  }
>|
>\time 2/4 r2
>  }
> }
>
> See http://lilypond.org/doc/v2.22/Documentation/notation/music for the
> markup syntax.  Earlier versions used #"2." instead of {2.} for the
> durations.
>
> Peter C
>
>


Re: Horizontal beam parallel to staff

2021-05-11 Thread Ahanu Banerjee
Thank you both, very helpful!

Cheers,
-Ahanu

On Tue, May 11, 2021, 01:02 Aaron Hill  wrote:

> On 2021-05-10 9:10 pm, Pierre Perol-Schneider wrote:
> > Hi Ahanu,
> > How about:
> >
> > \version "2.20.0"
> > {
> >   %\override Beam.damping = #5
> >   \override Beam.positions = #'(5 . 5)
> >   g''8 b b c'' c'' b b g''
> > }
>
> And for an automated approach:
>
> 
> \version "2.22.0"
>
> #(define NEAR -1)
> #(define FAR 1)
> flattenPositions =
> #(define-scheme-function
>(rel-pos) (number?)
>(grob-transformer 'positions
> (lambda (grob orig)
>  (let* ((dir (ly:grob-property grob 'direction))
> (ys (ordered-cons (car orig) (cdr orig)))
> (y (interval-index ys (* dir rel-pos
>   (cons y y)
>
> {
>\override Beam.positions = \flattenPositions #NEAR
>g''8 b b c'' a' b'' b'' d'
>\override Beam.positions = \flattenPositions #CENTER
>g''8 b b c'' a' b'' b'' d'
>\override Beam.positions = \flattenPositions #(* 2 FAR)
>g''8 b b c'' a' b'' b'' d'
> }
> 
>
>
> -- Aaron Hill
>


Horizontal beam parallel to staff

2021-05-10 Thread Ahanu Banerjee
I know it is not standard practice, but I am looking for a way to make
beams parallel to staff despite the noteheads on either side of the beam
having different vertical positions on the staff.

Setting beam damping to a high value reduces the slope substantially, but
it doesn't go to zero. Can someone suggest a way to do this?

\version "2.20.0"
{ \override Beam.damping = #5
  g''8 b b c'' c'' b b g'' }


Thanks,
-Ahanu


Re: Tempo marking with 2 notes

2021-05-10 Thread Ahanu Banerjee
Please disregard, I missed the answer in the documentation.. thanks

On Mon, May 10, 2021 at 9:41 PM Ahanu Banerjee 
wrote:

> Hello,
>
> Can anyone provide a simple way to make a tempo marking like this: "♩= 텞
> " ?
>
> Thanks,
> -Ahanu
>


Tempo marking with 2 notes

2021-05-10 Thread Ahanu Banerjee
Hello,

Can anyone provide a simple way to make a tempo marking like this: "♩= 텞 "
?

Thanks,
-Ahanu


Re: repeat barline after fine double-barline

2021-05-01 Thread Ahanu Banerjee
Good points, Aaron, thank you.

-Ahanu

On Sat, May 1, 2021, 22:35 Aaron Hill  wrote:

> On 2021-05-01 5:56 pm, Ahanu Banerjee wrote:
> > Here you go:
> >
> > \version "2.20.0"
> > { \defineBarLine "xyz" #'("|." ".|:" "")
> >   \repeat unfold 7 c'
> >   c'-\tweak X-offset #5 _\markup \bold \italic "Fine"
> >   \bar "xyz" \break
> >   \repeat unfold 7 c' c'_\markup \bold \italic "D.C. al Fine"
> >   \bar ":|." }
>
> To follow convention, you could name the custom bar ".|:-|.".
>
> Also, you probably want to specify the spanning type as well:
>
> 
> \defineBarLine ".|:-|." #'("|." ".|:" ".|")
> 
>
> That makes it more closely match the existing ".|:-||" as defined in
> bar-line.scm:
>
> 
> (define-bar-line ".|:-||" "||" ".|:" ".|")
> 
>
>
> -- Aaron Hill
>


Re: repeat barline after fine double-barline

2021-05-01 Thread Ahanu Banerjee
Here you go:

\version "2.20.0"
{ \defineBarLine "xyz" #'("|." ".|:" "")
  \repeat unfold 7 c'
  c'-\tweak X-offset #5 _\markup \bold \italic "Fine"
  \bar "xyz" \break
  \repeat unfold 7 c' c'_\markup \bold \italic "D.C. al Fine"
  \bar ":|." }

-Ahanu


On Sat, May 1, 2021 at 8:50 PM Kenneth Wolcott 
wrote:

> Hi Ahanu;
>
>   Please post the working code snippet so that I can learn from your
> trial and error and perhaps improve my engravings as a result.
>
> Thanks,
> Ken Wolcott
>
> On Sat, May 1, 2021 at 5:44 PM Ahanu Banerjee  wrote:
> >
> > [SOLVED]
> >
> > I was able to figure it out using \defineBarLine.
> >
> > Thanks,
> > -Ahanu
> >
> >
> > On Sat, May 1, 2021 at 8:29 PM Ahanu Banerjee 
> wrote:
> >>
> >> The "Fine" would occur at the line break, thus requiring "|." at the
> end of the first line and ".|:" at the beginning of the next line.
> >>
> >> Thanks,
> >> -Ahanu
> >>
> >> On Sat, May 1, 2021, 20:26 Mark Stephen Mrotek 
> wrote:
> >>>
> >>> Ahanu,
> >>>
> >>>
> >>>
> >>> Where is the “Fine”?
> >>>
> >>>
> >>>
> >>> Mark
> >>>
> >>>
> >>>
> >>> From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=
> ca.rr@gnu.org] On Behalf Of Ahanu Banerjee
> >>> Sent: Saturday, May 1, 2021 3:29 PM
> >>> To: lilypond-user@gnu.org
> >>> Subject: repeat barline after fine double-barline
> >>>
> >>>
> >>>
> >>> Hi,
> >>>
> >>> As per the subject line, I am trying to get a "repeat" (".|:") barline
> after a "Fine", which has a bold double-barline ("|.") at the end of a line.
> >>>
> >>> The closest I have found in documentation is ".|:-||", which yields
> "||", not "|.", at the line break.
> >>>
> >>>
> >>>
> >>> Example:
> >>>
> >>> \version "2.20.0"
> >>>
> >>> { \repeat unfold 8 c' \bar ".|:-||" \break
> >>>
> >>>   \repeat unfold 8 c' \bar ":|." }
> >>>
> >>>
> >>>
> >>> Any suggestions would be appreciated.
> >>>
> >>>
> >>>
> >>> Cheers,
> >>>
> >>> -Ahanu
>


Re: repeat barline after fine double-barline

2021-05-01 Thread Ahanu Banerjee
[SOLVED]

I was able to figure it out using \defineBarLine.

Thanks,
-Ahanu


On Sat, May 1, 2021 at 8:29 PM Ahanu Banerjee  wrote:

> The "Fine" would occur at the line break, thus requiring "|." at the end
> of the first line and ".|:" at the beginning of the next line.
>
> Thanks,
> -Ahanu
>
> On Sat, May 1, 2021, 20:26 Mark Stephen Mrotek 
> wrote:
>
>> Ahanu,
>>
>>
>>
>> Where is the “Fine”?
>>
>>
>>
>> Mark
>>
>>
>>
>> *From:* lilypond-user [mailto:lilypond-user-bounces+carsonmark=
>> ca.rr@gnu.org] *On Behalf Of *Ahanu Banerjee
>> *Sent:* Saturday, May 1, 2021 3:29 PM
>> *To:* lilypond-user@gnu.org
>> *Subject:* repeat barline after fine double-barline
>>
>>
>>
>> Hi,
>>
>> As per the subject line, I am trying to get a "repeat" (".|:") barline
>> after a "Fine", which has a bold double-barline ("|.") at the end of a line.
>>
>> The closest I have found in documentation is ".|:-||", which yields "||",
>> not "|.", at the line break.
>>
>>
>>
>> Example:
>>
>> \version "2.20.0"
>>
>> { \repeat unfold 8 c' \bar ".|:-||" \break
>>
>>   \repeat unfold 8 c' \bar ":|." }
>>
>>
>>
>> Any suggestions would be appreciated.
>>
>>
>>
>> Cheers,
>>
>> -Ahanu
>>
>


Re: repeat barline after fine double-barline

2021-05-01 Thread Ahanu Banerjee
The "Fine" would occur at the line break, thus requiring "|." at the end of
the first line and ".|:" at the beginning of the next line.

Thanks,
-Ahanu

On Sat, May 1, 2021, 20:26 Mark Stephen Mrotek  wrote:

> Ahanu,
>
>
>
> Where is the “Fine”?
>
>
>
> Mark
>
>
>
> *From:* lilypond-user [mailto:lilypond-user-bounces+carsonmark=
> ca.rr@gnu.org] *On Behalf Of *Ahanu Banerjee
> *Sent:* Saturday, May 1, 2021 3:29 PM
> *To:* lilypond-user@gnu.org
> *Subject:* repeat barline after fine double-barline
>
>
>
> Hi,
>
> As per the subject line, I am trying to get a "repeat" (".|:") barline
> after a "Fine", which has a bold double-barline ("|.") at the end of a line.
>
> The closest I have found in documentation is ".|:-||", which yields "||",
> not "|.", at the line break.
>
>
>
> Example:
>
> \version "2.20.0"
>
> { \repeat unfold 8 c' \bar ".|:-||" \break
>
>   \repeat unfold 8 c' \bar ":|." }
>
>
>
> Any suggestions would be appreciated.
>
>
>
> Cheers,
>
> -Ahanu
>


repeat barline after fine double-barline

2021-05-01 Thread Ahanu Banerjee
Hi,

As per the subject line, I am trying to get a "repeat" (".|:") barline
after a "Fine", which has a bold double-barline ("|.") at the end of a line.

The closest I have found in documentation is ".|:-||", which yields "||",
not "|.", at the line break.

Example:

\version "2.20.0"
{ \repeat unfold 8 c' \bar ".|:-||" \break
  \repeat unfold 8 c' \bar ":|." }


Any suggestions would be appreciated.

Cheers,
-Ahanu


Re: StaffGroup starting with grace note

2021-02-14 Thread Ahanu Banerjee
I feel so silly for not trying that before. Spent an hour troubleshooting
before emailing. THANK YOU!!

-Ahanu


On Sun, Feb 14, 2021 at 5:27 PM Carl Sorensen  wrote:

> Simply add a grace spacer to the other staff.
>
>
>
>
>
>
>
> *From: *lilypond-user  gmail@gnu.org> on behalf of Ahanu Banerjee 
> *Date: *Sunday, February 14, 2021 at 3:27 PM
> *To: *"lilypond-user@gnu.org" 
> *Subject: *StaffGroup starting with grace note
>
>
>
> Hi,
>
>
>
> I am having an issue creating a new StaffGroup where one staff begins with
> a grace note. The key signature for the other staff ends up shifted to the
> right and collides with the time signature. Please advise how to fix.
> Thanks!!
>
>
>
> \version "2.20.0"
> \language "english"
>   \new StaffGroup <<
> \new Staff = "Top" {
>   \key ef \major
> g'1
> }
>  \new Staff = "Bottom" {
>\clef bass
>\key ef \major
>\acciaccatura 8
>g1 |
> }
>   >>
>
>
>
> -Ahanu
>


StaffGroup starting with grace note

2021-02-14 Thread Ahanu Banerjee
Hi,

I am having an issue creating a new StaffGroup where one staff begins with
a grace note. The key signature for the other staff ends up shifted to the
right and collides with the time signature. Please advise how to fix.
Thanks!!

\version "2.20.0"
\language "english"
  \new StaffGroup <<
\new Staff = "Top" {
  \key ef \major
g'1
}
 \new Staff = "Bottom" {
   \clef bass
   \key ef \major
   \acciaccatura 8
   g1 |
}
  >>


-Ahanu


Re: Text beside staff

2021-01-03 Thread Ahanu Banerjee
Thanks all, instrumentName seems to be the best solution!

-Ahanu


On Sun, Jan 3, 2021 at 5:00 PM Ahanu Banerjee  wrote:

> Hi,
>
> I'm typesetting a book of études. I am currently putting the number of the
> etude (1-2 digits) in the header as a title, but I would like to put it to
> the left of the first staff, in the indented white space. It should be
> center-aligned between the left margin and the first staff, and vertically
> centered about the staff.
>
> Can someone provide a tidy way to do this?
>
> Thank you!!
>
> \version "2.20.0"
> \header {
>   title = "1"
>   subtitle = "A female deer"
> }
>
> {\repeat unfold 16 c' \break
> \repeat unfold 20 c'}
>


Text beside staff

2021-01-03 Thread Ahanu Banerjee
Hi,

I'm typesetting a book of études. I am currently putting the number of the
etude (1-2 digits) in the header as a title, but I would like to put it to
the left of the first staff, in the indented white space. It should be
center-aligned between the left margin and the first staff, and vertically
centered about the staff.

Can someone provide a tidy way to do this?

Thank you!!

\version "2.20.0"
\header {
  title = "1"
  subtitle = "A female deer"
}

{\repeat unfold 16 c' \break
\repeat unfold 20 c'}


Dynamic text vertical positioning issue

2020-12-20 Thread Ahanu Banerjee
In the following example, dynamic text does not vertically reposition when
"+" marking (i.e., left-hand pizzicato) is given vertical offset. Please
advise if I have missed an obvious solution. Thanks!

\version "2.20.0"
{
  % dynamic text has wrong vertical position:
  \stemDown e'-\tweak extra-offset #'(0.3 . 1.5) _+ \p
  % expected behaviour:
  e'_1\p
}


Re: line-breaking issue

2020-08-09 Thread Ahanu Banerjee
I tried playing around with base-shortest-duration earlier, and it didn't
help. Pasted Kevin's text to make sure, and nothing changed.

-Ahanu


On Sun, Aug 9, 2020 at 3:48 AM Kevin Barry  wrote:

> Hi Ahanu,
>
> It might help if you add this:
> \layout {
>   \context {
> \Score
> \override SpacingSpanner.base-shortest-duration = #(ly:make-moment
> 1/32)
>   }
> }
> It might make LilyPond more willing to squash sixteenths closer together
> than it would normally like.
>
> Kevin
>
> On Sun, 2020-08-09 at 02:48 -0400, Ahanu Banerjee wrote:
> > I tried setting systems-per-page to 10. It gave the same error as
> > setting system-count to 20, and ran off the page.
>
> 3 measures per line is less than ideal, but it's readable. I'm
> typesetting an etude book and am trying to avoid having fold-out pages
> as much as possible.
>
>
> On Sun, Aug 9, 2020, 02:41 Hwaen Ch'uqi  wrote:
> Greetings Ahanu,
>
> What happens if you set the systems-per-page variable to 10 instead
> of
> using system-count = 20? Does the music then spill over onto a third
> page? Just from experience, it seems that 48 sixteenth-notes per
> line
> would get rather cramped, no? I usually use 32-40 16ths per line as
> my
> guide.
>
> Hwaen Ch'uqi
>
>
> On 8/9/20, Ahanu Banerjee  wrote:
> > Hello,
> >
> > An étude I'm typesetting needs to fit on 2 pages with reasonable
> vertical
> > space. Normally, I'd just set system-count in \paper (in this
> case, 20
> > systems in 2 US letter pages), but this time it says "warning:
> cannot find
> > line breaking that satisfies constraints" and just runs off the
> page. If I
> > don't set system-count, it gives me 25 cramped systems on 2 pages.
> >
> > The piece is almost entirely sixteenth notes in 4/4. Some systems
> fill with
> > 3 bars, others with 2, and I can't figure out why. Ideally, most
> would have
> > 3 bars, but manual line breaks won't fix it. I've checked for
> rhythmic
> > errors (every measure has a barcheck) and didn't find any. I don't
> want to
> > decrease the font size.
> >
> > Unfortunately, I can't come up with a tiny example to demonstrate
> this
> > behaviour. If anyone has suggestions or someone would be willing
> to look
> > over my file, I'd really appreciate it.
> >
> > Cheers,
> > -Ahanu
> >
>
>


Re: line-breaking issue

2020-08-09 Thread Ahanu Banerjee
I tried setting systems-per-page to 10. It gave the same error as setting
system-count to 20, and ran off the page.

3 measures per line is less than ideal, but it's readable. I'm typesetting
an etude book and am trying to avoid having fold-out pages as much as
possible.


On Sun, Aug 9, 2020, 02:41 Hwaen Ch'uqi  wrote:

> Greetings Ahanu,
>
> What happens if you set the systems-per-page variable to 10 instead of
> using system-count = 20? Does the music then spill over onto a third
> page? Just from experience, it seems that 48 sixteenth-notes per line
> would get rather cramped, no? I usually use 32-40 16ths per line as my
> guide.
>
> Hwaen Ch'uqi
>
>
> On 8/9/20, Ahanu Banerjee  wrote:
> > Hello,
> >
> > An étude I'm typesetting needs to fit on 2 pages with reasonable vertical
> > space. Normally, I'd just set system-count in \paper (in this case, 20
> > systems in 2 US letter pages), but this time it says "warning: cannot
> find
> > line breaking that satisfies constraints" and just runs off the page. If
> I
> > don't set system-count, it gives me 25 cramped systems on 2 pages.
> >
> > The piece is almost entirely sixteenth notes in 4/4. Some systems fill
> with
> > 3 bars, others with 2, and I can't figure out why. Ideally, most would
> have
> > 3 bars, but manual line breaks won't fix it. I've checked for rhythmic
> > errors (every measure has a barcheck) and didn't find any. I don't want
> to
> > decrease the font size.
> >
> > Unfortunately, I can't come up with a tiny example to demonstrate this
> > behaviour. If anyone has suggestions or someone would be willing to look
> > over my file, I'd really appreciate it.
> >
> > Cheers,
> > -Ahanu
> >
>


line-breaking issue

2020-08-08 Thread Ahanu Banerjee
Hello,

An étude I'm typesetting needs to fit on 2 pages with reasonable vertical
space. Normally, I'd just set system-count in \paper (in this case, 20
systems in 2 US letter pages), but this time it says "warning: cannot find
line breaking that satisfies constraints" and just runs off the page. If I
don't set system-count, it gives me 25 cramped systems on 2 pages.

The piece is almost entirely sixteenth notes in 4/4. Some systems fill with
3 bars, others with 2, and I can't figure out why. Ideally, most would have
3 bars, but manual line breaks won't fix it. I've checked for rhythmic
errors (every measure has a barcheck) and didn't find any. I don't want to
decrease the font size.

Unfortunately, I can't come up with a tiny example to demonstrate this
behaviour. If anyone has suggestions or someone would be willing to look
over my file, I'd really appreciate it.

Cheers,
-Ahanu