lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Do not display chord name after line break


From: Carl Sorensen
Subject: Re: Do not display chord name after line break
Date: Mon, 13 Jul 2020 11:39:52 -0600

Hi Ernie,

On Mon, Jul 13, 2020 at 7:03 AM Ernie Braganza <ernie.braganza@gmail.com> wrote:
Hello,

How can I stop the repeated chord name after the line break?
I thought the break-visibility settings for ChordName would work, for example setting the beginning-of-line-invisible value to false: 
 \override Score.ChordName.break-visibility = ##(#t #t #f)
but that does not have any effect at all.

The reason this does not have any effect is that the code executed when chordChanges is set to ##t changes the break-visiblity of the specific chord name (sets it to beginning-of-line-visible).  And that code is in C++, not Scheme, so I don't know how to override it.

I guess one could write a Scheme engraver for ChordName to replace the built-in one.  

You should also raise an issue on the issues list asking for an enhancement.  The enhancement would need to add some additional property (or change the existing property from a simple boolean), because we'd need to separately control hiding of repeated chord names only when not at the beginning of the line, and always hiding repeated chord names.

I actually think the best way to do it would be to change the chordChanges property from a boolean to a break-visibility.  I can see that being quite easy to do.

In the meantime, as a workaround, you might just wish to fill up your chordmode with a bunch of s chords, and only put the chords in where you want them displayed:

\version "2.20.0"
harmonies = \chordmode {
  d2  c
 \break
  % I don't want the repeated c chord name to display after the line break
  s d
}
\new ChordNames {
  \harmonies
}

HTH,

Carl


reply via email to

[Prev in Thread] Current Thread [Next in Thread]