[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Move chord name down onto staff?
From: |
Jean Abou Samra |
Subject: |
Re: Move chord name down onto staff? |
Date: |
Mon, 12 Jul 2021 15:01:32 +0200 (CEST) |
> Le 11/07/2021 06:33, Werner LEMBERG <wl@gnu.org> a écrit :
>
>
> >> I'm not sure how to move the chord names down so they are centered
> >> on the staff. Essentially I want the changes on an empty stave but
> >> I'm unclear on how to do that. [...]
> > Here's one way to do this:
> >
> > %%%%
> > \version "2.20"
> >
> > harmony = \chordmode { a1:m s1 f1:m7 s1 }
> > tune = { s1 s1 s1 s1 }
> >
> > chordsOnStaff = \with {
> > % Force the baselines to match.
> > \override VerticalAxisGroup.nonstaff-relatedstaff-spacing =
> > #'((basic-distance . 0) (minimum-distance . 0)
> > (padding . -inf.0) (stretchability . 0))
> > % Adjust to one staff space lower.
> > \override ChordName.extra-offset = #'(0 . -1)
> > }
> >
> > \score {
> > <<
> > \new ChordNames \with \chordsOnStaff \harmony
> > \new Staff \tune
> > >>
> > }
> > %%%%
> Aaron, this is such a useful snippet IMHO that it deserves to be added
> to the LSR in case it isn't there (which I can hardly believe since it
> looks like being needed a lot). So please do that :-)
>
>
> Werner
As a matter of style, I'd do it slightly differently:
\version "2.23.4"
\layout {
\context {
\Staff
\accepts ChordNames
\override ChordName.Y-offset = #self-alignment-interface::y-aligned-on-self
\override ChordName.self-alignment-Y = #CENTER
}
}
harmony = \chordmode { a1:m s1 f1:m7 s1 }
tune = { s1 s1 s1 s1 }
\new Staff <<
\tune
\new ChordNames \harmony
>>
Regards,
Jean