lilypond-user
[Top][All Lists]
Advanced

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

Re: Make Ties Transparent


From: Aaron Hill
Subject: Re: Make Ties Transparent
Date: Wed, 06 Feb 2019 22:19:49 -0800
User-agent: Roundcube Webmail/1.3.8

On 2019-02-06 7:21 pm, Mike iLL wrote:
I’m using `\hideNotes` so that multiple similar verses can be lined up
beneath one another:

Melody with four beats here
Four syl — la — bles
Five syl — la — bil — lies

[ . . . ]

The melody is hidden but ties and slurs are quite visible.

I think that making objects transparent is going to be the solution,
but am not sure what objects I’m looking for:

Before getting to transparency, know that there are several ways to solve the problem of disparate timing in lyrics. One option is to use explicit durations in the lyrics rather than use \lyricsto. This lets you customize the timing per stanza and gives you the most freedom at the cost of added verbosity while entering lyrics. If you have stanzas with wildly different timing, this is probably the best option as it saves on having to create voices per stanza.

A second option is to stick to a single voice for all stanzas but make use of melismata either implicitly via ties and slurs or explicitly via placeholder syllables. For instance, your half note could be written as two, tied quarters, which would accommodate both stanzas. For the second stanza, you need only `\set ignoreMelismata = ##t` to be able to assign more lyrics as needed. This approach tends to be best if you have only a few variations in timing between stanzas, as it allows you to share the majority of the timing in a single Voice.

A third option is to use a NullVoice to specify timing. This does not render any notes in the staff and does not require embedding the explicit durations within the lyrics. This may be handy for cases where you would prefer to reuse lyrics variables against different timing, or if you simply do not prefer to use explicit durations.

Lastly, you can use a normal Voice but hide its content as you have mentioned. There are a few challenges with this approach. Firstly, you need to set \voiceXxx appropriately to accommodate both voices even though one will ultimately be hidden. Secondly, the hidden voice will still take up space in the layout which may produce unexpected spacing. Lastly, there are a number of grobs that can appear as part of processing the music. As you have found, \hideNotes is not sufficient.

NOTE: I noticed that in your snippet you included braces around music after \hideNotes. These are superfluous, as \hideNotes does not take any arguments. I am not certain whether it was your intention that the effect of \hideNotes only applied to the music expression in braces. But for your reference, you need to manually include \unHideNotes to reinstate things.

Is it something like this `\override NoteHead.transparent = ##t`?

Yes. Although, `\hide Grob` is shorthand for `\override Grob.transparent = ##t` for any grob, so you might consider it for brevity if you are going to go down this path. The Internals reference can be a handy guide for looking up the various grob names: e.g. Tie, Slur, PhrasingSlur.

Be aware that setting transparent to true only makes the grobs invisible; the grobs will still occupy space within the layout. In some cases this is fine, but hidden grobs can result in what appears to be extra whitespace where the grob would have been. If this is a problem, you can use `\omit Grob` instead if it is your desire that the grobs should both be invisible and take up no space. (This second command is shorthand for `\override Grob.stencil = ##f` if I am recalling correctly.)

-- Aaron Hill



reply via email to

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