Open lemzwerg opened 3 months ago
I missed the <distance>
element for hyphens, thus a space-length
attribute is not necessary.
Hi @lemzwerg -- would you mind rewriting the proposal to take into account <distance>
and say what the proposal is here, or close the issue? Thanks!
OK, here it is.
A lyric hyphen can either be a series of (identical) glyphs or a dashed line. If it is the former, there should be a means to select the used glyph and control its appearance. If it is the latter, there should also be a means to control its appearance.
Currently, MusicXML only provides the <distance type="hyphen">
child within an <appearance>
element to specify the distance between hyphens. I thus suggest the following.
<appearance>
element by adding a new child, say, <hyphen>
, that allows the user to select a default glyph for the hyphen. It should come with the usual attributes for glyphs like font-size
(but probably not color
).<line-width>
element by adding a new type hyphen
to the line-width-type
type to set the line width (i.e., the thickness) of a hyphen in case it is a dashed line.<distance>
element by adding a new type hyphen-length
to set the length of a hyphen in case it is a dashed line.<syllabic>
element by adding attributes that control the appearance of the hyphen locally after the current syllable if its value either begin
or middle
. Possible attributes that come to my mind are
a. color
(to override the color of <lyric>
)
b. appearance
, with possible values enforce
(to make a hyphen always appear between two syllables even in tight typesetting situations) or suppress
(to hide the hyphen at a specific place)If case 1 is present, use a glyph for a hyphen. If cases 2 and/or 3 are present, use a dashed line. If there is a mix up between cases 1 to 3, let the application decide what to use.
An alternative to cases 2 and 3 is to extend my suggested case 1 by adding a type
attribute so that the global hyphen setup – either as a glyph or as a dashed line – can be done within a single element (it would also have the benefit that defining a hyphen as both a glyph and a dashed line at the same time could be avoided). Handling the hyphen in <distance>
would then be deprecated.
AFAICS, MusicXML provides no possibility to control the hyphen between syllables of a word. There are two possibilities.
space-length
attribute)I suggest to add one or more elements to
<defaults>
for controlling the hyphen globally, and perhaps some attributes likecolor
to<syllabic>
– if the type isbegin
ormiddle
the attributes could control the hyphen(s) after the syllable.