LilyPond has support for printing chord names. Chords may be entered
in musical chord notation, i.e., < .. >, but they can also be
entered by name. Internally, the chords are represented as a set of
pitches, so they can be transposed
twoWays = \transpose c c' {
\chordmode {
c1 f:sus4 bes/f
}
<c e g>
<f bes c'>
<f bes d'>
}
<< \context ChordNames \twoWays
\context Voice \twoWays >>
This example also shows that the chord printing routines do not try to
be intelligent. The last chord (f bes d) is not interpreted as
an inversion.
This page is for LilyPond-2.4.5 (stable-branch).