Menu

#1907 accidentals in chordNames have diffferent vertical alignment depending on language

Accepted
nobody
None
evidence
Ugly
2018-01-07
2011-09-20
Anonymous
No

Originally created by: *anonymous

Originally created by: janek.li...@gmail.com

%accidental placement in chord names is different in different languages.

\chords { fis es }

\new ChordNames { \germanChords \chordmode { fis es } }

\new ChordNames { \italianChords \chordmode { fis es } }

1 Attachments

Discussion

  • Google Importer

    Google Importer - 2011-11-25

    Originally posted by: Carl.D.S...@gmail.com

    The code causing these differences is in scm/chord-name.scm.

    The accidentals in the italian chord names are generated by the scheme procedure accidental->markup-italian, which includes different amounts of hspace and raise for sharps and flats.

    The accidentals in the german chord names have an explicit call to make-normal-size-super-markup.

    The accidentals in the default chord names use note-name->markup, which has no superscript effect whatsoever.

    So I can see that there is inconsistency here, and I know how to fix it, but I'm not sure what to fix it to.

    In US lead sheets, the accidental is typically aligned with the root name.  (I suspect the sharp should be raised a little to be optically centered.  But I think the base behavior is right for the US.

    Are the German chords done the way the Germans would want them to appear?  How about the Italian?  Or the French (which are like the Italian but with an accent on the Re)?

    I'll fix this if somebody will give me the desired behavior.

    Thanks,

    Carl

     
  • Google Importer

    Google Importer - 2012-01-11

    Originally posted by: janek.li...@gmail.com

    (No comment was entered for this change.)

    Labels: Needs-evidence

     
  • Davide Bonetti

    Davide Bonetti - 2018-01-02

    in Italian chord names the actual result is unelegant.

     
  • Davide Bonetti

    Davide Bonetti - 2018-01-05

    I think I've posted the necessary evidence for italian chord name.
    I can also fix this.

     
  • Davide Bonetti

    Davide Bonetti - 2018-01-07

    minimal example of the problem:

    \chords {
    \italianChords
    d:9 dis:9 des:9 \break
    \override ChordName.font-size = #-0
    d:9 dis:9 des:9 \break
    }

     
  • Davide Bonetti

    Davide Bonetti - 2018-01-07

    solution:

    in file scm/chord-names.scm, change the above mentioned function in this way:

    (define (accidental->markup-italian alteration)
    "Return accidental markup for ALTERATION, for use after an italian chord root name."
    (if (= alteration 0)
    (make-hspace-markup 0.2)
    (make-line-markup
    (list
    (make-hspace-markup (if (= alteration FLAT) 0.17285385 0.1))
    (make-raise-markup (if (= alteration SHARP) 0.3 0.2) (alteration->text-accidental-markup alteration))
    (make-hspace-markup (if (= alteration SHARP) 0.2 0.1))
    ))))

    the result is in the attached image