Re: Slurs with "afterGrace"

2022-02-06 Thread Rip _Mus
Good morning,
try:

\afterGrace g4( { a16 g16) }

The slur event must be attached directly after the note.

Rip_mus

Il dom 6 feb 2022, 08:59 Alasdair McAndrew  ha scritto:

> This works:
> g4( \grace {a16 g16})
>
> making a slur which includes the grace notes.  But in order to get the
> right spacing and barring (I need grace notes to occur before the bar
> line,
> rather than after), I need to use "afterGrace":
>
> \afterGrace g4 {a16 g16}
>
> However, if I attempt to include a slur:
>
> \afterGrace g4( {a16 g16} )
>
> I get a warning about an "Unattached SlurEvent".  Lilypond makes a good
> guess at what I want and bungs a slur in anyway - but what does this
> warning mean, and how can I avoid it?  Thank you!
>
> Alasdair
> --
> 0432 854 858
> https://numbersandshapes.net
>
>


Re: Slurs with "afterGrace"

2022-02-06 Thread Alasdair McAndrew
Thank you very much!  (But in Australia, where I am, it is early evening).  
I did try that, but the difficulty is that I already have a symbol 
attached to the note (which I should have included in my example):



\afterGrace g4-+( {a16 g16} )


I've tried moving the beginning of the slur to directly after the note:


\afterGrace g4(-+ {a16 g16} )


but this is no good either.  I'm sorry not to have included this clearly 
important detail in my first post.



Alasdair




On Sunday 06 February 2022 19:31:32 (+11:00), Rip _Mus wrote:


Good morning,
try:


\afterGrace g4( { a16 g16) }


The slur event must be attached directly after the note.


Rip_mus


Il dom 6 feb 2022, 08:59 Alasdair McAndrew  ha scritto:

This works:
g4( \grace {a16 g16})

making a slur which includes the grace notes.  But in order to get the
right spacing and barring (I need grace notes to occur before the bar line,
rather than after), I need to use "afterGrace":

\afterGrace g4 {a16 g16}

However, if I attempt to include a slur:

\afterGrace g4( {a16 g16} )

I get a warning about an "Unattached SlurEvent".  Lilypond makes a good
guess at what I want and bungs a slur in anyway - but what does this
warning mean, and how can I avoid it?  Thank you!

Alasdair
--
0432 854 858
https://numbersandshapes.net



--
0432 854 858
https://numbersandshapes.net

Bar numbers on lines beginning with a partial measure

2022-02-06 Thread Aaron Hill
I have for quite some time just relied on the default behavior where bar 
numbers are printed only for the first measure in each line (save the 
very first measure).  This works reasonably well as my musicians are 
able to locate measures by number fairly quickly.  However, there is an 
issue when I opt to split measures over a line break.  (This practice is 
quite common in hymnals, though I find it equally effective for modern 
music to avoid having pickup/trailing notes/lyrics straddling a line 
break.)  When the first measure on a line is a partial measure, no bar 
number is shown.  This means some lines in my lead sheets have no bar 
number for reference.  In some cases, I end up with no automatic bar 
numbers at all.


(Some code for context/reference...)


midMeasureBreak = { \bar "" \break }
forceBarNumber =
\once \override Score.BarNumber
  .break-visibility = #all-visible

{ R1*4 \break
  R1*4 r2 r4 \midMeasureBreak r4
  R1*4 r2 r4 \midMeasureBreak r4
  \forceBarNumber
  R1*4 \bar "|." }


As can be see above, I can manually override the bar number visibility, 
but it is not very elegant.  If I opt to reflow music, I would have to 
revisit the bar numbers to make sure only the ones I want are there.  It 
would be very nice if LilyPond could treat the first full measure as the 
effective first measure on the line w.r.t. break visibility settings.


Has anyone else encountered this and come up with a solution?  If not, I 
will dig around the existing engraver logic and see about submitting a 
patch should folks find the updated behavior desirable.



-- Aaron Hill



Re: Bar numbers on lines beginning with a partial measure

2022-02-06 Thread Jean Abou Samra


> Le 6 févr. 2022 à 10:16, Aaron Hill  a écrit :
> 
> I have for quite some time just relied on the default behavior where bar 
> numbers are printed only for the first measure in each line (save the very 
> first measure).  This works reasonably well as my musicians are able to 
> locate measures by number fairly quickly.  However, there is an issue when I 
> opt to split measures over a line break.  (This practice is quite common in 
> hymnals, though I find it equally effective for modern music to avoid having 
> pickup/trailing notes/lyrics straddling a line break.)  When the first 
> measure on a line is a partial measure, no bar number is shown.  This means 
> some lines in my lead sheets have no bar number for reference.  In some 
> cases, I end up with no automatic bar numbers at all.
> 
> (Some code for context/reference...)
> 
> 
> midMeasureBreak = { \bar "" \break }
> forceBarNumber =
> \once \override Score.BarNumber
>  .break-visibility = #all-visible
> 
> { R1*4 \break
>  R1*4 r2 r4 \midMeasureBreak r4
>  R1*4 r2 r4 \midMeasureBreak r4
>  \forceBarNumber
>  R1*4 \bar "|." }
> 
> 
> As can be see above, I can manually override the bar number visibility, but 
> it is not very elegant.  If I opt to reflow music, I would have to revisit 
> the bar numbers to make sure only the ones I want are there.  It would be 
> very nice if LilyPond could treat the first full measure as the effective 
> first measure on the line w.r.t. break visibility settings.
> 
> Has anyone else encountered this and come up with a solution?  If not, I will 
> dig around the existing engraver logic and see about submitting a patch 
> should folks find the updated behavior desirable.


Are you aware of the options to print a parenthesized bar number at the start 
of the line if it's the continuation of a measure? See 
input/regression/bar-number-visibility-* (sadly missing documentation at the 
moment). I don't have an opinion on whether that is better practice or not than 
what you suggest. It is, at any rate, what Gould recommends (Behind Bars p. 
490).

Best,
Jean




Re: Slurs with "afterGrace"

2022-02-06 Thread Alasdair McAndrew
Thank you!  I would never have thought of putting the ending slur inside 
the grace note braces - but it works perfectly.  
Again, thanks.


Alasdair

On Sunday 06 February 2022 20:53:12 (+11:00), Richard Shann wrote:

>
>
> \afterGrace g4(-+ {a16 g16)} }
>
> Richard
>
> On Sun, 2022-02-06 at 09:13 +, Alasdair McAndrew wrote:
> > Thank you very much!  (But in Australia, where I am, it is early
> > evening).   I did try that, but the difficulty is that I already have
> > a symbol attached to the note (which I should have included in my
> > example):
> >
> > \afterGrace g4-+( {a16 g16} )
> >
> > I've tried moving the beginning of the slur to directly after the
> > note:
> >
> > \afterGrace g4(-+ {a16 g16} )
> >
> > but this is no good either.  I'm sorry not to have included this
> > clearly important detail in my first post.
> >
> > Alasdair
> >
> >
> >
> > On Sunday 06 February 2022 19:31:32 (+11:00), Rip _Mus wrote:
> >
> > > Good morning,
> > > try:
> > >
> > > \afterGrace g4( { a16 g16) }
> > >
> > > The slur event must be attached directly after the note.
> > >
> > > Rip_mus
> > >
> > > Il dom 6 feb 2022, 08:59 Alasdair McAndrew  ha
> > > scritto:
> > > > This works:
> > > > g4( \grace {a16 g16})
> > > >
> > > > making a slur which includes the grace notes.  But in order to
> > > > get the
> > > > right spacing and barring (I need grace notes to occur before the
> > > > bar line,
> > > > rather than after), I need to use "afterGrace":
> > > >
> > > > \afterGrace g4 {a16 g16}
> > > >
> > > > However, if I attempt to include a slur:
> > > >
> > > > \afterGrace g4( {a16 g16} )
> > > >
> > > > I get a warning about an "Unattached SlurEvent".  Lilypond makes
> > > > a good
> > > > guess at what I want and bungs a slur in anyway - but what does
> > > > this
> > > > warning mean, and how can I avoid it?  Thank you!
> > > >
> > > > Alasdair
>
>
>
--
0432 854 858
https://numbersandshapes.net



Re: Slurs with "afterGrace"

2022-02-06 Thread Richard Shann
On Sun, 2022-02-06 at 10:00 +, Alasdair McAndrew wrote:
> Thank you!  I would never have thought of putting the ending slur
> inside 
> the grace note braces - but it works perfectly. 

well I got there because it said the error was in column 30, i.e. the
closing ) and I suspected that those are supposed to postfixed to the
note where the slur ends, not a sequence { } of notes.

Richard

>  
> Again, thanks.
> 
> Alasdair
> 
> On Sunday 06 February 2022 20:53:12 (+11:00), Richard Shann wrote:
> 
>  >
>  >
>  > \afterGrace g4(-+ {a16 g16)} }
>  >
>  > Richard
>  >
>  > On Sun, 2022-02-06 at 09:13 +, Alasdair McAndrew wrote:
>  > > Thank you very much!  (But in Australia, where I am, it is early
>  > > evening).   I did try that, but the difficulty is that I already
> have
>  > > a symbol attached to the note (which I should have included in
> my
>  > > example):
>  > >
>  > > \afterGrace g4-+( {a16 g16} )
>  > >
>  > > I've tried moving the beginning of the slur to directly after
> the
>  > > note:
>  > >
>  > > \afterGrace g4(-+ {a16 g16} )
>  > >
>  > > but this is no good either.  I'm sorry not to have included this
>  > > clearly important detail in my first post.
>  > >
>  > > Alasdair
>  > >
>  > >
>  > >
>  > > On Sunday 06 February 2022 19:31:32 (+11:00), Rip _Mus wrote:
>  > >
>  > > > Good morning,
>  > > > try:
>  > > >
>  > > > \afterGrace g4( { a16 g16) }
>  > > >
>  > > > The slur event must be attached directly after the note.
>  > > >
>  > > > Rip_mus
>  > > >
>  > > > Il dom 6 feb 2022, 08:59 Alasdair McAndrew 
> ha
>  > > > scritto:
>  > > > > This works:
>  > > > > g4( \grace {a16 g16})
>  > > > >
>  > > > > making a slur which includes the grace notes.  But in order
> to
>  > > > > get the
>  > > > > right spacing and barring (I need grace notes to occur
> before the
>  > > > > bar line,
>  > > > > rather than after), I need to use "afterGrace":
>  > > > >
>  > > > > \afterGrace g4 {a16 g16}
>  > > > >
>  > > > > However, if I attempt to include a slur:
>  > > > >
>  > > > > \afterGrace g4( {a16 g16} )
>  > > > >
>  > > > > I get a warning about an "Unattached SlurEvent".  Lilypond
> makes
>  > > > > a good
>  > > > > guess at what I want and bungs a slur in anyway - but what
> does
>  > > > > this
>  > > > > warning mean, and how can I avoid it?  Thank you!
>  > > > >
>  > > > > Alasdair
>  >
>  >
>  >





Re: Slurs with "afterGrace"

2022-02-06 Thread Rip _Mus
Sorry for the hour!

It's a matter of parenthesis order and spaces:

\relative c' {
\afterGrace g4-+( { a16 g16) }
}

This works for me

Il dom 6 feb 2022, 10:13 Alasdair McAndrew  ha scritto:

> Thank you very much!  (But in Australia, where I am, it is early
> evening).   I did try that, but the difficulty is that I already have a
> symbol attached to the note (which I should have included in my example):
>
> \afterGrace g4-+( {a16 g16} )
>
> I've tried moving the beginning of the slur to directly after the note:
>
> \afterGrace g4(-+ {a16 g16} )
>
> but this is no good either.  I'm sorry not to have included this clearly
> important detail in my first post.
>
> Alasdair
>
>
>
> On Sunday 06 February 2022 19:31:32 (+11:00), Rip _Mus wrote:
>
> Good morning,
> try:
>
> \afterGrace g4( { a16 g16) }
>
> The slur event must be attached directly after the note.
>
> Rip_mus
>
> Il dom 6 feb 2022, 08:59 Alasdair McAndrew  ha scritto:
>
>> This works:
>> g4( \grace {a16 g16})
>>
>> making a slur which includes the grace notes.  But in order to get the
>> right spacing and barring (I need grace notes to occur before the bar
>> line,
>> rather than after), I need to use "afterGrace":
>>
>> \afterGrace g4 {a16 g16}
>>
>> However, if I attempt to include a slur:
>>
>> \afterGrace g4( {a16 g16} )
>>
>> I get a warning about an "Unattached SlurEvent".  Lilypond makes a good
>> guess at what I want and bungs a slur in anyway - but what does this
>> warning mean, and how can I avoid it?  Thank you!
>>
>> Alasdair
>> --
>> 0432 854 858
>> https://numbersandshapes.net
>>
>>
> --
> 0432 854 858
> https://numbersandshapes.net
>


Re: Slurs with "afterGrace"

2022-02-06 Thread Richard Shann



\afterGrace g4(-+ {a16 g16)}   }

Richard

On Sun, 2022-02-06 at 09:13 +, Alasdair McAndrew wrote:
> Thank you very much!  (But in Australia, where I am, it is early
> evening).   I did try that, but the difficulty is that I already have
> a symbol attached to the note (which I should have included in my
> example):
> 
> \afterGrace g4-+( {a16 g16} )
> 
> I've tried moving the beginning of the slur to directly after the
> note:
> 
> \afterGrace g4(-+ {a16 g16} )
> 
> but this is no good either.  I'm sorry not to have included this
> clearly important detail in my first post.
> 
> Alasdair
> 
> 
> 
> On Sunday 06 February 2022 19:31:32 (+11:00), Rip _Mus wrote:
> 
> > Good morning,
> > try:
> > 
> > \afterGrace g4( { a16 g16) }
> > 
> > The slur event must be attached directly after the note.
> > 
> > Rip_mus
> > 
> > Il dom 6 feb 2022, 08:59 Alasdair McAndrew  ha
> > scritto:
> > > This works:
> > > g4( \grace {a16 g16})
> > > 
> > > making a slur which includes the grace notes.  But in order to
> > > get the 
> > > right spacing and barring (I need grace notes to occur before the
> > > bar line, 
> > > rather than after), I need to use "afterGrace":
> > > 
> > > \afterGrace g4 {a16 g16}
> > > 
> > > However, if I attempt to include a slur:
> > > 
> > > \afterGrace g4( {a16 g16} )
> > > 
> > > I get a warning about an "Unattached SlurEvent".  Lilypond makes
> > > a good 
> > > guess at what I want and bungs a slur in anyway - but what does
> > > this 
> > > warning mean, and how can I avoid it?  Thank you!
> > > 
> > > Alasdair





Dal segno?

2022-02-06 Thread Alasdair McAndrew
When I search on "da capo", "dal segno" I get a huge amount of explanatory 
material in the Lilypond glossary, but I can't find examples of their use, 
or a description of their symbols.  I'm sure it's there somewhere ... but 
so far I can't find where.

How do I insert a "DC al fine" or "Dal Segno" or similar in a score?

Thank you all,
Alasdair

--
0432 854 858
https://numbersandshapes.net



Re: Bar numbers on lines beginning with a partial measure

2022-02-06 Thread Aaron Hill

On 2022-02-06 1:37 am, Jean Abou Samra wrote:

Are you aware of the options to print a parenthesized bar number at
the start of the line if it's the continuation of a measure? See
input/regression/bar-number-visibility-* (sadly missing documentation
at the moment). I don't have an opinion on whether that is better
practice or not than what you suggest. It is, at any rate, what Gould
recommends (Behind Bars p. 490).


Thanks, Jean.  first-bar-number-invisible-save-broken-bars is one of the 
undocumented options that seems almost perfect.


At first glance, though, the parenthesized numbers stand out too much.  
Thankfully, the parenthesization logic is within 
robust-bar-number-function, which is easily adaptable as Scheme code.  
Some quick testing with the \parenthesize markup command looks better 
than relying on the glyphs of the number font which are a little too 
wide.



;; ...preamble from robust-bar-number-function...
  (let*
   ((number-and-power (get-number-and-power 0 0))
(begin-measure (= 0 (ly:moment-main-numerator measure-pos)))
(text (string-append (number->string barnum)
   (make-letter "" (car number-and-power) (cdr 
number-and-power)

  (if begin-measure text
   (markup #:override '(line-thickness . 0.05)
   #:override '(padding . 0.05)
   #:override '(width . 0.2)
   #:parenthesize #:smaller text


I will have to try this for awhile to see if I like it better than 
labelling the first full measure.  It is interesting that all bar 
numbers would be consistently aligned on the left margin, so that might 
prove useful.



-- Aaron Hill



Re: Bar numbers on lines beginning with a partial measure

2022-02-06 Thread Valentin Petzel
Hello Jean,

in my opinion even if Gould did not specify this it is the most obvious 
solution to this, that is, the one solution everyone would come up with 
immediately.

Thus I think this would be a sensible default. Is there any good reason against 
using this by default?

Best,
Valentin

06.02.2022 10:38:27 Jean Abou Samra :

> 
>> Le 6 févr. 2022 à 10:16, Aaron Hill  a écrit :
>> 
>> I have for quite some time just relied on the default behavior where bar 
>> numbers are printed only for the first measure in each line (save the very 
>> first measure).  This works reasonably well as my musicians are able to 
>> locate measures by number fairly quickly.  However, there is an issue when I 
>> opt to split measures over a line break.  (This practice is quite common in 
>> hymnals, though I find it equally effective for modern music to avoid having 
>> pickup/trailing notes/lyrics straddling a line break.)  When the first 
>> measure on a line is a partial measure, no bar number is shown.  This means 
>> some lines in my lead sheets have no bar number for reference.  In some 
>> cases, I end up with no automatic bar numbers at all.
>> 
>> (Some code for context/reference...)
>> 
>> 
>> midMeasureBreak = { \bar "" \break }
>> forceBarNumber =
>> \once \override Score.BarNumber
>> .break-visibility = #all-visible
>> 
>> { R1*4 \break
>> R1*4 r2 r4 \midMeasureBreak r4
>> R1*4 r2 r4 \midMeasureBreak r4
>> \forceBarNumber
>> R1*4 \bar "|." }
>> 
>> 
>> As can be see above, I can manually override the bar number visibility, but 
>> it is not very elegant.  If I opt to reflow music, I would have to revisit 
>> the bar numbers to make sure only the ones I want are there.  It would be 
>> very nice if LilyPond could treat the first full measure as the effective 
>> first measure on the line w.r.t. break visibility settings.
>> 
>> Has anyone else encountered this and come up with a solution?  If not, I 
>> will dig around the existing engraver logic and see about submitting a patch 
>> should folks find the updated behavior desirable.
> 
> 
> Are you aware of the options to print a parenthesized bar number at the start 
> of the line if it's the continuation of a measure? See 
> input/regression/bar-number-visibility-* (sadly missing documentation at the 
> moment). I don't have an opinion on whether that is better practice or not 
> than what you suggest. It is, at any rate, what Gould recommends (Behind Bars 
> p. 490).
> 
> Best,
> Jean



Re: Bar numbers on lines beginning with a partial measure

2022-02-06 Thread Jean Abou Samra



> Le 6 févr. 2022 à 11:54, Valentin Petzel  a écrit :
> 
> Thus I think this would be a sensible default. Is there any good reason 
> against using this by default?



I wondered about that as well when I split the barNumberVisibility test and 
submitted the pending MR to no longer require \bar "" for printing the first 
bar number; but these were already deep frames in a stack of changes, so I 
decided not to look into it for the time being. You are welcome to do so. I 
seem to recall there is an open issue that more or less encompasses this 
problem (can't search the URL on a phone). The thing is, these options were 
added as options in the first place, so a reason not to have it at the default 
might have been found at the time. Before proposing a change to the default, 
I'd dig in code history to read the commit messages and code reviews of the 
patches that added these options.

Regards,
Jean




Running a Guile Interactively

2022-02-06 Thread Kon Rybnikov
Hi

My goal is to run guile with a remote port to use it with Geiser. See
"Connecting to an external Scheme" [0].

However, I've failed at the very first step of just getting a Guile REPL
with my lilypond file. I was following the instructions in "Using Guile
interactively with LilyPond" [1]. I've created a file debug-scheme.ly with
the following contents:

\version "2.22.1"
#(module-define! (resolve-module '(guile-user))
 'lilypond-module (current-module))
#(top-repl)

And then I've launched the `lilypond debug-scheme.ly` command and saw this:

$ lilypond debug-scheme.ly
GNU LilyPond 2.22.1 (running Guile 2.2)
warning: cannot find file: `debug-scheme.ly'
fatal error: failed files: "debug-scheme.ly"

Am I doing something wrong?

Thank you!
Kon

[0]: http://www.nongnu.org/geiser/geiser_3.html#The-REPL
[1]:
https://lilypond.org/doc/v2.21/Documentation/contributor/debugging-scheme-code


associate text with chords

2022-02-06 Thread achar
Hello. Here is a piece of code to explain my problem. I would like the 
roman numerals of the mib7 chord as well as that of do7 to be located 
under the chord names. But the text is associated with a note or a rest 
so I can't do it. Does anyone have a solution? Thank you. P.S.: I 
already received answers but, they evaporated before I could read them



<<
  \chords { bes2:m7 ees:7
  s1
  g2:m7 c:7
  }
  \new Staff \relative c''
  {
 f4_"ii / V" aes2 g4_"V7 /IV"
 R1
 \break
  bes1_"iii m7 - V7 / ii" |

  R1
 \break

  }
>>



associate text with chordname

2022-02-06 Thread achar

Eureka...

Yhanks for your answers.


accords =
\chordmode
{
  s4.
  ees1:maj7 | bes2:m7 ees:7 | aes1:maj7 | aes:dim7 |
  g2:m7 c:7 | f:m7 bes:7 | g:m7 c:7 | f:m7 bes:7 |
}

melodie =
{
  \clef G
  \time 4/4
  \key ees\major
  \relative c'
  {
    \partial 4. bes'8 ees f |
    \bar"||"
    %% part "A"
    g2 bes4 aes8 g |
    f4 aes2 g4 |
    ees2 g4 f |
    d f2 ees4 |
    \break

    bes1~|
    bes8 c d ees \times 2/3  { f4 ees d } |
    bes'1~ |
    bes2~ bes8 bes, ees f |
    \break\bar"||"
  }
}

romannumerals =
{
  s4.
  s4^"I Maj" s s s
  s4^"ii / V" s s^"V7 /IV" s
  s4^"IV Maj" s2.
  s4^"IV dim7" s2.

  s2^"iii m7" s^"V7 / ii"
  s2^"ii m7" s^"V7"
  s2^"iii m7" s^"V7 / ii"
  s2^"ii m7" s^"V7"
}

\header
{
  title = "The Nearness of You"
}

\score
{
  <<
    \new ChordNames \accords
    \new Dynamics \romannumerals
    \new Staff \melodie
  >>
  \layout{}
}


Re: associate text with chords

2022-02-06 Thread Aaron Hill

On 2022-02-06 5:08 am, achar wrote:

P.S.: I already received answers but, they evaporated before I could
read them


You can review the archives [1] if you lose track of a message.  
Although, since your original thread is barely two days old, you should 
strongly reconsider your service provider if they are purging emails 
that quickly.


[1]: 
https://lists.gnu.org/archive/html/lilypond-user/2022-02/msg00062.html



-- Aaron Hill



Re: Running a Guile Interactively

2022-02-06 Thread Kon Rybnikov
On Sun, Feb 6, 2022 at 1:16 PM Kon Rybnikov  wrote:

> Hi
>
> My goal is to run guile with a remote port to use it with Geiser. See
> "Connecting to an external Scheme" [0].
>
> However, I've failed at the very first step of just getting a Guile REPL
> with my lilypond file. I was following the instructions in "Using Guile
> interactively with LilyPond" [1]. I've created a file debug-scheme.ly
> with the following contents:
>
> \version "2.22.1"
> #(module-define! (resolve-module '(guile-user))
>  'lilypond-module (current-module))
> #(top-repl)
>
> And then I've launched the `lilypond debug-scheme.ly` command and saw
> this:
>
> $ lilypond debug-scheme.ly
> GNU LilyPond 2.22.1 (running Guile 2.2)
> warning: cannot find file: `debug-scheme.ly'
> fatal error: failed files: "debug-scheme.ly"
>
> Am I doing something wrong?
>
> Thank you!
> Kon
>
> [0]: http://www.nongnu.org/geiser/geiser_3.html#The-REPL
> [1]:
> https://lilypond.org/doc/v2.21/Documentation/contributor/debugging-scheme-code
>

All right, the code from ly/scheme-sandbox.ly actually worked:

  \version "2.16.0"

  #(load-user-init)

  #(define a (+ 2 3))

  #(newline)
  #(cond-expand
 (guile-2
   (begin
 (use-modules (system repl repl))
 (start-repl)))
 (else (scm-style-repl)))

I was able to successfully get a guile REPL where I can type "a" and see
its value.

Now, the question still remains: is it possible to expose a port to use
Emacs+Geiser?


How to catch post-events inside chords in an event listener?

2022-02-06 Thread Lukas-Fabian Moser

Folks,

probably I'm being stupid:

\version "2.22"

#(define (test_engraver ctx)
   (make-engraver
    (listeners
 ((tie-event engraver event)
  (format #t "Tie encountered at ~a.\n" (ly:context-current-moment 
ctx))


\layout {
  \context {
    \Voice
    \consists #test_engraver
  }
}

{
  a4~
   % this one is not seen by the engraver
  a~
  a
}

What do I have to do to make my custom engraver also see post-events 
(here, a tie, but in my context it's a custom event type) used inside 
chords?


Lukas




Re: Dal segno?

2022-02-06 Thread Knute Snortum
On Sun, Feb 6, 2022 at 2:29 AM Alasdair McAndrew  wrote:
>
> When I search on "da capo", "dal segno" I get a huge amount of explanatory
> material in the Lilypond glossary, but I can't find examples of their use,
> or a description of their symbols.  I'm sure it's there somewhere ... but
> so far I can't find where.
> How do I insert a "DC al fine" or "Dal Segno" or similar in a score?

If you're looking for examples, then searching for "snippets"[1] or
the LilyPond Snippet Repository (LSR)[2] is a good place to start.  In
the documentation snippets you will find what you need in the
"repeats" section.  In the LSR, searching for "segno" will give you a
good example.

1) https://lilypond.org/doc/v2.22/Documentation/snippets/
2) https://lsr.di.unimi.it/LSR/Search


--
Knute Snortum



Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Robin Bannister

Lukas-Fabian Moser wrote:



What do I have to do to make my custom engraver also see post-events
(here, a tie, but in my context it's a custom event type) used inside
chords?


I had a problem like that with tweaks, because the Tweak_engraver was 
called too late.  See issue 3296.


I had to consist it additionally in context ChordNames.


Cheers,
Robin



Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread David Kastrup
Lukas-Fabian Moser  writes:

> Folks,
>
> probably I'm being stupid:
>
> \version "2.22"
>
> #(define (test_engraver ctx)
>    (make-engraver
>     (listeners
>  ((tie-event engraver event)
>   (format #t "Tie encountered at ~a.\n" (ly:context-current-moment
> ctx))
>
> \layout {
>   \context {
>     \Voice
>     \consists #test_engraver
>   }
> }
>
> {
>   a4~
>    % this one is not seen by the engraver
>   a~
>   a
> }
>
> What do I have to do to make my custom engraver also see post-events
> (here, a tie, but in my context it's a custom event type) used inside
> chords?

There is no such thing as an event inside chords.  Events are broadcast
specific to a timestep and have no association with individual notes.

You'll find the tie event in the 'articulations property of the a~ in
the chord.

Members of 'articulations are broadcast from non-chord notes
(from which they are then removed) iff there is a listener for them,
otherwise they just stay put on the broadcast notes.

Members of 'articulations from chord notes are never broadcast.  They
always stay on the notes.

-- 
David Kastrup



Dashed slurs causing score concatenation issues

2022-02-06 Thread Trinton
Hi folks,

Since adding dashed slurs to my score using the \slurDashed command, I've
been unable to concatenate the segments of my score, getting this error:
[48]ERROR: Wrong type (expecting exact integer): #
I've not been able to find any hints about this message in the docs. What's
especially perplexing is that my individual segments render fine on their
own, this error only shows up during concatenation. I'll link to the files
in question in case there's something in them that I'm missing:
Score: https://github.com/tr1nt0n/trio/blob/master/trio/build/trio_score.ly

Segment for concatenation:
https://github.com/tr1nt0n/trio/blob/master/trio/build/04.ly

Segment illustration:
https://github.com/tr1nt0n/trio/blob/master/trio/segments/04/illustration04.ly

Stylesheet:
https://github.com/tr1nt0n/trio/blob/master/trio/build/trio-stylesheet.ily

Script used to run lilypond:
https://github.com/tr1nt0n/trinton/blob/main/scripts/run-lilypond

Thanks for any help!
Trinton


Re: Dashed slurs causing score concatenation issues

2022-02-06 Thread Jean Abou Samra


> Le 6 févr. 2022 à 18:39, Trinton  a écrit :
> 
> Hi folks,
> 
> Since adding dashed slurs to my score using the \slurDashed command, I've 
> been unable to concatenate the segments of my score, getting this error:
> [48]ERROR: Wrong type (expecting exact integer): # Trill_spanner_engraver >
> I've not been able to find any hints about this message in the docs. What's 
> especially perplexing is that my individual segments render fine on their 
> own, this error only shows up during concatenation. I'll link to the files in 
> question in case there's something in them that I'm missing: 
> Score: https://github.com/tr1nt0n/trio/blob/master/trio/build/trio_score.ly
> 
> Segment for concatenation: 
> https://github.com/tr1nt0n/trio/blob/master/trio/build/04.ly
> 
> Segment illustration: 
> https://github.com/tr1nt0n/trio/blob/master/trio/segments/04/illustration04.ly
> 
> Stylesheet: 
> https://github.com/tr1nt0n/trio/blob/master/trio/build/trio-stylesheet.ily
> 
> Script used to run lilypond: 
> https://github.com/tr1nt0n/trinton/blob/main/scripts/run-lilypond
> 
> Thanks for any help!
> Trinton



As far as I can read your files from a phone, they are using stuff outside of 
the repository. Please provide an archive or something with all the files 
needed to compile your score so that we can reproduce the issue.

Thanks,
Jean



Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Lukas-Fabian Moser

Hi David,


There is no such thing as an event inside chords.  Events are broadcast
specific to a timestep and have no association with individual notes.


Thanks for the explanation! That makes it clear.

Lukas




Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Valentin Petzel
Hello Lukas,

one could try something like this.

Valentin

Am Sonntag, 6. Februar 2022, 16:31:31 CET schrieb Lukas-Fabian Moser:
> Folks,
> 
> probably I'm being stupid:
> 
> \version "2.22"
> 
> #(define (test_engraver ctx)
> (make-engraver
>  (listeners
>   ((tie-event engraver event)
>(format #t "Tie encountered at ~a.\n" (ly:context-current-moment
> ctx))
> 
> \layout {
>\context {
>  \Voice
>  \consists #test_engraver
>}
> }
> 
> {
>a4~
> % this one is not seen by the engraver
>a~
>a
> }
> 
> What do I have to do to make my custom engraver also see post-events
> (here, a tie, but in my context it's a custom event type) used inside
> chords?
> 
> Lukas

\version "2.22"

#(define (test_engraver ctx)
(make-engraver
 (listeners
  ((tie-event engraver event)
   (format #t "Tie encountered at ~a.\n" (ly:context-current-moment ctx)))
  ((note-event engraver event)
   (for-each
(lambda (art)
  (if (member 'tie-event (ly:event-property art 'class))
  (format #t "Tie encountered at ~a.\n" (ly:context-current-moment ctx
(ly:event-property event 'articulations)))
   )))

\layout {
   \context {
 \Voice
 \consists #test_engraver
   }
}

{
   a4~
% this one is not seen by the engraver
   a~
   a
}

signature.asc
Description: This is a digitally signed message part.


Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Lukas-Fabian Moser

Hi Valentin,

Am 06.02.22 um 20:57 schrieb Valentin Petzel:

one could try something like this.


Yes, thanks, that's what did after David's explanations as well.

In my situation (where I'm using a custom event type not covered by any 
standard engravers), I can then dispose of the dedicated listener: This 
is essentially what happens for


\version "2.22"

#(define (test_engraver ctx)
    (make-engraver
 (listeners
;;; NOT NEEDED if Tie_engraver is removed
;  ((tie-event engraver event)
;   (format #t "Tie encountered at ~a.\n" (ly:context-current-moment 
ctx)))

  ((note-event engraver event)
   (for-each
    (lambda (art)
  (if (memq 'tie-event (ly:event-property art 'class))
  (format #t "Tie encountered at ~a.\n" 
(ly:context-current-moment ctx

    (ly:event-property event 'articulations))

\layout {
   \context {
 \Voice
 \consists #test_engraver
 \remove Tie_engraver
   }
}

{
   a4~
   
   a~
   a
}

(I think it's safe to use memq instead of member.)

I'm just still confused as to the terminology of event "classes" vs. 
event "types" etc. But that's something for next week...


Lukas




Tablature - Parenthesizing Tied Notes

2022-02-06 Thread Stefan E. Mueller

Ties over a line break are parenthesized by default in tablature - I was
wondering if one could also have parenthesized tablature notes for ties
over a bar line.

Thanks for any help.

Stefan



Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Jean Abou Samra


> Le 6 févr. 2022 à 22:52, Lukas-Fabian Moser 
> I'm just still confused as to the terminology of event "classes" vs. event 
> "types" etc. But that's something for next week...



Allow me to take advance on next week by an hour, then (in Paris time, that 
is). The terms "music class" and "event class" are well-defined. But there is 
confusion because the 'types property of music objects holds music classes, and 
this is also what extract-typed-music uses. If you want to make an analogy with 
grobs, you would, on the contrary, use "type" for one music "definition" (that 
is the term the Internals Reference uses) and not a class grouping several of 
them. But in the context of grobs, a "class" is something else entirely, it 
refers to the four hardcoded grob classes Item, Spanner, Paper_column and 
System. What would most closely resemble music and event classes in the grob 
world is grob "interfaces". It's a holy mess ...

Jean


Re: How to catch post-events inside chords in an event listener?

2022-02-06 Thread Valentin Petzel
Hi Lukas,

Yes, memq is totally safe here and theoretically faster. But the performance 
difference is not really noticeable in usual situations. And in my opinion the 
whole eq? eqv? and equal? thing is just too confusing for beginners of scheme, 
so I opt so sacrifice this small theoretical gain for not potentially confusing 
people trying to get into this.

Cheers,
Valentin

Am Sonntag, 6. Februar 2022, 22:52:00 CET schrieb Lukas-Fabian Moser:
> Hi Valentin,
> 
> Am 06.02.22 um 20:57 schrieb Valentin Petzel:
> > one could try something like this.
> 
> Yes, thanks, that's what did after David's explanations as well.
> 
> In my situation (where I'm using a custom event type not covered by any
> standard engravers), I can then dispose of the dedicated listener: This
> is essentially what happens for
> 
> \version "2.22"
> 
> #(define (test_engraver ctx)
>  (make-engraver
>   (listeners
> ;;; NOT NEEDED if Tie_engraver is removed
> ;  ((tie-event engraver event)
> ;   (format #t "Tie encountered at ~a.\n" (ly:context-current-moment
> ctx)))
>((note-event engraver event)
> (for-each
>  (lambda (art)
>(if (memq 'tie-event (ly:event-property art 'class))
>(format #t "Tie encountered at ~a.\n"
> (ly:context-current-moment ctx
>  (ly:event-property event 'articulations))
> 
> \layout {
> \context {
>   \Voice
>   \consists #test_engraver
>   \remove Tie_engraver
> }
> }
> 
> {
> a4~
> 
> a~
> a
> }
> 
> (I think it's safe to use memq instead of member.)
> 
> I'm just still confused as to the terminology of event "classes" vs.
> event "types" etc. But that's something for next week...
> 
> Lukas



signature.asc
Description: This is a digitally signed message part.