2

The Problem

In Lilypond, the raised suffixes in chord names – such as the “sus4” in “Csus4” – don’t seem to be proportionally changed with chord name font size changes. For example:

\score {
  \new ChordNames {
    \chordmode {
      c:sus4
      \override ChordName.font-size = #-3
      c:sus4
      \override ChordName.font-size = #10
      c:sus4
    }
  }
}

result of compiling the given Lilypond snippet

As can be seen, irrespective of the font size, the baseline of the suffix always has the same vertical position.

My Question

How can I correct the vertical position of suffixes in chord names when changing the font size?

I use the latest stable version of Lilypond (v2.18.2).

What I’ve tried

I have already looked at the chordRootNamer and chordNoteNamer properties but neither of them affects the suffixes in chord names: chordRootNamer only affects the “C” in “Csus4” while chordNoteNamer only affects the “F” in “Csus4/F”.

I guess I could override the chordNameFunction but then it seems that I would have to entirely format the chord names myself. Ideally I would be able to only partly override the existing chordNameFunction (which seems to be ignatzek-chord-names) or to only decrease the raising amount it applies to suffixes. Any ideas how that could work?

1 Answer 1

2

I had the same problem and found a "non-definitive" solution taking into account that I was not using 7+ chords. First I moved all 7 chords to 7+ chords and then defined how I wanted 7+ chords to appear. I know that this is not the best solution, but it worked for me.

You can do that from a terminal as follows:

sed -i 's/:7/:7+/g' *.ly

sed -i 's/\\italianChords/\\italianChords \\set majorSevenSymbol = \\markup{\\raise #-1.0 7}/g' *.ly

1
  • Thanks, this is an interesting hack. Unfortunately it only works for at most one type of chord with a raised suffix. I have chord types with different suffixes in my score, like c:sus2, c:sus4, c:6 orc:7.
    – Chriki
    Commented Nov 5, 2017 at 17:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.