lilypond-user
[Top][All Lists]
Advanced

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

Re: Slashes in leadsheets


From: Thomas Morley
Subject: Re: Slashes in leadsheets
Date: Sun, 12 Feb 2012 01:40:10 +0100

Hi David,

2012/2/12 David Nalesnik <address@hidden>:
> Hi Francisco,
>
> On Sat, Feb 11, 2012 at 4:54 PM, Francisco Vila <address@hidden>
> wrote:
>>
>> 2012/2/11 Robin Bannister <address@hidden>:
>> >> what Francisco wanted [?]
>> >
>> >
>> > http://lists.gnu.org/archive/html/lilypond-es/2012-02/jpgGbKXsMUjKS.jpg
>> >
>> >
>>
>> Exactly, thanks. Latest example from Thomas Morley (not _that_ Thomas
>> Morley, I guess :-) ) is more precise and better, but I think plain
>> slashes are a quick way of indicating 'beat' repeats.
>
>
> What about something like this?  It's a simple Scheme engraver which
> replaces repeated chord-name text with a slash.  (For the slash, I just
> removed the dots from the repeat markup which Robin posted in the other
> thread.)  It's pretty rough, but it works with your last example.  I don't
> have a more extensive example to try it out on to see where it might break
> down!
>
> \version "2.15.24"
>
> simile = \markup {
>   \rotate #90 \translate #'(0 . 2) \beam #2 #-1 #0.5
> }
>
> test =
> #(lambda (context)
>   (let ((text #f))
>     `((acknowledgers
>       (chord-name-interface .
>         ,(lambda (engraver grob source-engraver)
>           (if text
>               (if (equal? text (ly:grob-property grob 'text))
>                   (set! (ly:grob-property grob 'text) simile)
>  (set! text (ly:grob-property grob 'text)))
>               (set! text (ly:grob-property grob 'text)))))))))
>
>
> harmonies = \chordmode { c1 g e:m e:m e:m a:m bes c }
>
> chs = \transpose c' c' {
>   <c e g bes des' >4 q q <c e g bes dis'>
>   <c e g bes dis'> \repeat unfold 3 { <c e g bes dis'> }
>   <c e g bes>1
> }
>
> << \new ChordNames { \set chordChanges = ##f \harmonies } >>
>
> <<
>   \new ChordNames { \chs }
>   \new Staff \transpose c c' { \chs }
>>>
>
> \layout {
>   \context {
>     \ChordNames
>     \consists #test
>   }
> }

looks fine. Another example to study custom-engravers. :)

Thanks,
  Harm



reply via email to

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