lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Non-blank chord repeat


From: Thomas Morley
Subject: Re: Non-blank chord repeat
Date: Sun, 3 Jul 2016 01:58:32 +0200

2016-07-03 0:03 GMT+02:00 Lee Daniel Crocker <address@hidden>:
> I'm printing lead sheets with just chords and lyrics, and this makes the
> rhythm of the tune hard to see. What I'd like to do print chords at regular
> intervals, say every half note, and rather than having repeats suppressed,
> have them print "-".
>
> For example, "G - C - D C" for two beats of G, two of C, one of D, one of C.
>
> I'd be happy to do this manually by inserting a chord named "-" if there
> were a way to do that. Or I could enter the chords at regular intervals and
> have it mark the repeats with "-" somehow. Or maybe enter "N.C." and have
> that print as "-" somehow?
>
> --
> To the extent possible under law, I, Lee Daniel Crocker,
> waive all copyright and related or neighboring rights to all
> creative works original to me

Hi,

you could do

(1) manually:

minus =\once \override ChordName.text = "-"

<<
\new ChordNames
\chordmode {
  g4 \minus g c \minus c d c
}
\new Staff { \repeat unfold 6 c''4 }
>>

(2) automatic

#(define dash-repeated-chords
  (lambda (context)
   (let ((chord '()))
     `((acknowledgers
         (chord-name-interface .
           ,(lambda (engraver grob source-engraver)
             (if (equal? (ly:grob-property grob 'text) chord)
                 (ly:grob-set-property! grob 'text "-"))
             (set! chord (ly:grob-property grob 'text)))))
        (finalize . ,(lambda (translator) (set! chord '())))))))

<<
\new ChordNames \with { \consists #dash-repeated-chords }
\chordmode {
  g4 g c c d c
}
\new Staff { \repeat unfold 6 c''4 }
>>

HTH,
  Harm



reply via email to

[Prev in Thread] Current Thread [Next in Thread]