Am Do., 26. Sept. 2024 um 01:46 Uhr schrieb Thomas Morley
<thomasmorle...@gmail.com>:
>
> Am Di., 24. Sept. 2024 um 09:11 Uhr schrieb Thomas Morley
> <thomasmorle...@gmail.com>:
> >
> > Am Di., 24. Sept. 2024 um 01:04 Uhr schrieb Federico Bruni 
> > <f...@inventati.org>:
> > >
> > > Hi folks
> > >
> > > I've just come across a really weird error.
> > > I'll try to make a minimal example tomorrow, but maybe you can give me
> > > some hints.
> > > The piece I'm writing is copyrighted but I can send it privately to
> > > anyone who wants to help to debug this weird error. It uses a custom
> > > guitar tuning.
> > >
> > > I'm entering a music and suddenly whatever note I write after this:
> > >
> > > \acciaccatura a'8\3 b\3 g' b,\3( a\3)
> > >
> > > will produce the following error:
> > >
> > > Drawing systems...
> > > /app/dev/share/lilypond/2.25.19/ly/init.ly:66:2: error: Guile signaled
> > > an error for the expression beginning here
> > > #
> > >  (let ((book-handler (if (defined? 'default-toplevel-book-handler)
> > > In procedure ly:item-break-dir: Wrong type argument in position 1
> > > (expecting Item): ()
> > >
> > >
> > >
> > >
> > > And here's the verbose output running the official LilyPond binaries:
> > >
> > > /var/home/fede/.local/lilypond/lilypond-2.25.19/share/lilypond/2.25.19/ly/init.ly:66:2:
> > > error: Guile signaled an error for the expression beginning here
> > > #
> > >  (let ((book-handler (if (defined? 'default-toplevel-book-handler)
> > >
> > > In ice-9/boot-9.scm:
> > >   1755:12 15 (with-exception-handler _ _ #:unwind? _ # _)
> > > In unknown file:
> > >           14 (apply-smob/0 #<thunk 7f838110d300>)
> > > In
> > > /home/lily/lilypond-2.25.19/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/lily.scm:
> > >   1070:16 13 (lilypond-main _)
> > >    1099:4 12 (lilypond-all ("The-Pelican.ly"))
> > > In srfi/srfi-1.scm:
> > >     634:9 11 (for-each #<procedure 7f8381f68f30 at /home/lily/lilyp?> ?)
> > > In
> > > /home/lily/lilypond-2.25.19/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/lily.scm:
> > >    1111:9 10 (_ "The-Pelican.ly")
> > > In ice-9/boot-9.scm:
> > >   1749:15 9 (with-exception-handler #<procedure 7f8381f68f00 at ic?> ?)
> > > In unknown file:
> > >            8 (ly:parse-file "The-Pelican.ly")
> > > In ice-9/boot-9.scm:
> > >   1755:12 7 (with-exception-handler _ _ #:unwind? _ # _)
> > > In unknown file:
> > >            6 (apply-smob/0 #<thunk 7f83824388c0>)
> > >            5 (ly:book-process #<Book> #< Output_def> #< Output_def> #)
> > >            4 (ly:optimal-breaking #<Paper_book>)
> > > In
> > > /home/lily/lilypond-2.25.19/release/binaries/lilypond/build/out/share/lilypond/current/scm/lily/tablature.scm:
> > >    205:36 3 (tab-note-head::handle-ties #<Grob TabNoteHead >)
> > > In unknown file:
> > >            2 (ly:item-break-dir ())
> > > In ice-9/boot-9.scm:
> > >   1676:22 1 (raise-exception _ #:continuable? _)
> > > In unknown file:
> > >            0 (apply-smob/1 #<exception-handler 7f83824388a0> #<&comp?>)
> > > In procedure ly:item-break-dir: Wrong type argument in position 1
> > > (expecting Item): ()
> > >
> > >
> > >
> > >
> >
> > Hi Federico,
> >
> > commit 23a3778f2ed6a12b2e41026d3e6646f7177f0a29
> > Author: Thomas Morley <thomasmorle...@gmail.com>
> > Date:   Fri Jul 26 23:39:37 2024 +0200
> >
> >     Rewrite handling of tied tab note heads
> >
> >     If a tab note head is right bound of a tie (or has a repeat tie)
> >     and a spanner starts, always print it parenthesized.
> >     If a Tie is split, print the tied tab note head due to the
> >     settings of tied-properties.
> >     Same for a tied tab note holding a `RepeatTie`.
> >
> >     This was already intended by the first implementation
> >     by 3417b5edd0596f128bc5faca6c600c3b11915709
> >     Though, using break-visibility for a note head made no sense.
> >
> >     dcafb42fa6c1cf234a8916ec221a2b006d3582b9 deleted break-visibility,
> >     but introduced a regression.
> >
> >     This patch rewrites most of the functionality:
> >     - extend the engraver, port it to scheme
> >     - introduce a new context-property tabFullNotation
> >     - introduce new sub-properties ties/repeat-tied, for
> >       TabNoteHead.details.tied-properties.
> >       Delete TabNoteHead.details.repeat-tied-properties.
> >     - Move functionality from (Repeat)Tie.after-line-breaking to
> >       TabNoteHead.after-line-breaking.
> >     - Extend tab-note-head interface
> >     - Adjust hide/showSplitTiedTabNotes
> >
> >     Closes #6733
> >
> >
> > may have introduced the problem.
> > Though its hard to diagnose/fix without MWE.
> >
> > As an experiment, try to change in tablature.scm the lines
> >          (nmpc (ly:grob-object pc 'left-neighbor))
> >          (at-line-begin? (positive? (ly:item-break-dir nmpc)))
> > to
> >          (nmpc (ly:grob-object pc 'left-neighbor #f))
> >          (at-line-begin? (and nmpc (positive? (ly:item-break-dir nmpc))))
> >
> > Cheers,
> >   Harm
>
>
> Hi Federico,
>
> thanks for your files.
>
> Minimal code to trigger the error:
>
> \version "2.25.19"
> \new TabStaff { b1 \break s2 b }
>
> It's caused by the spacer in the new line, not initiating a NoteColumn
> of its own, thus 'left-neighbor of the following NoteHead remains
> empty.
> The proposed fix seems to solve the problem, though I didn't run the
> regtests so far.
> Maybe tomorrow...
>
> Cheers,
>   Harm

This now https://gitlab.com/lilypond/lilypond/-/issues/6752
MR up at https://gitlab.com/lilypond/lilypond/-/merge_requests/2438

Cheers,
  Harm

Reply via email to