lilypond-user
[Top][All Lists]
Advanced

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

Re: Problem with Classical guitar notation


From: Stefan Hackl
Subject: Re: Problem with Classical guitar notation
Date: Wed, 29 Mar 2006 00:00:34 +0200
User-agent: Thunderbird 1.5 (Windows/20051201)

Hello Allan,

there is the possibility to set up a makro in order to get the required barre notation. At the beginning of your file (after the /version line) you insert the following lines:

barre = #(def-music-function (barre location str music) (string? ly:music?)
          (let ((spanned-music
                  (let ((first-element #f)
                        (last-element #f)
                        (first-found? #f))
                    (music-map (lambda (m)
                                 (if (eqv? (ly:music-property m 'name) 'EventChord)
                                     (begin
                                       (if (not first-found?)
                                           (begin
                                             (set! first-found? #t)
                                             (set! first-element m)))
                                       (set! last-element m)))
                                 m)
                               music)
                    (if first-found?
                        (begin
                          (set! (ly:music-property first-element 'elements)
                                (cons (make-music 'TextSpanEvent 'span-direction -1)
                                      (ly:music-property first-element 'elements)))
                          (set! (ly:music-property last-element 'elements)
                                (cons (make-music 'TextSpanEvent 'span-direction 1)
                                      (ly:music-property last-element 'elements)))))
                    music)))
            (make-music 'SequentialMusic
              'origin location
              'elements (list #{
                          \once \override Voice . TextSpanner #'edge-text =
                            #$(cons (format "C ~a" str) "")
                          \once \override Voice . TextSpanner #'direction = #1
                          \once \override Voice . TextSpanner #'edge-height = #'(0 . 0.5)
                          \once \override Voice . TextSpanner #'padding = #3
                          \once \override Voice . TextSpanner #'enclose-bounds = #1
                          #}
                          spanned-music))))

To get a barree you have to enter:

\barre #"II" { **** }

This will create a barre sign above all notes inside the brackets, where I added "*****" and Number for fret number "II"

I attach a complete file for you to see how it can be done.

This works with Lilypond 2.6.3. I have not tried with newer version.

Greetings and good luck!

Stefan


Allan Spagnol Comar schrieb:
Hi all, I am having a little trouble engraving some classical guitar
sheets. I am trying to edit some sheets and they have the notation
showed at the jpg attached. I search lilypond documentation and
haven´t found anything like that ( the C3 above the sheet ). Does
someone can help me with that ?

thanks all, Allan

--
An application asked:
"Requeires Windows 9x, NT4 or better",
so I´ve installed Linux
  




_______________________________________________ lilypond-user mailing list address@hidden http://lists.gnu.org/mailman/listinfo/lilypond-user

reply via email to

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