Re: Slurs with "afterGrace"
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"
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
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
> 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"
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"
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"
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"
\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?
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
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
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
> 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
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
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
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
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
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?
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?
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?
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?
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
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
> 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?
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?
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?
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
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?
> 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?
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.