27.03.2013 Views

in Snippets - LilyPond

in Snippets - LilyPond

in Snippets - LilyPond

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Tweaks and overrides 408<br />

#f))<br />

#(def<strong>in</strong>e (get-ancestry grob)<br />

(if (not (null? (ly:grob-parent grob X)))<br />

(list (grob-name grob)<br />

(get-ancestry (ly:grob-parent grob X))<br />

(get-ancestry (ly:grob-parent grob Y)))<br />

(grob-name grob)))<br />

#(def<strong>in</strong>e (format-ancestry lst padd<strong>in</strong>g)<br />

(str<strong>in</strong>g-append<br />

(symbol->str<strong>in</strong>g (car lst))<br />

"\n"<br />

(let ((X-ancestry<br />

(if (list? (cadr lst))<br />

(format-ancestry (cadr lst) (+ padd<strong>in</strong>g 3))<br />

(symbol->str<strong>in</strong>g (cadr lst))))<br />

(Y-ancestry<br />

(if (list? (caddr lst))<br />

(format-ancestry (caddr lst) (+ padd<strong>in</strong>g 3))<br />

(symbol->str<strong>in</strong>g (caddr lst)))))<br />

(if (equal? X-ancestry Y-ancestry)<br />

(str<strong>in</strong>g-append<br />

(format #f "~&")<br />

(make-str<strong>in</strong>g padd<strong>in</strong>g #\space)<br />

"X,Y: "<br />

(if (list? (cadr lst))<br />

(format-ancestry (cadr lst) (+ padd<strong>in</strong>g 5))<br />

(symbol->str<strong>in</strong>g (cadr lst))))<br />

(str<strong>in</strong>g-append<br />

(format #f "~&")<br />

(make-str<strong>in</strong>g padd<strong>in</strong>g #\space)<br />

"X: " X-ancestry<br />

"\n"<br />

(make-str<strong>in</strong>g padd<strong>in</strong>g #\space)<br />

"Y: " Y-ancestry<br />

(format #f "~&"))))<br />

(format #f "~&")))<br />

#(def<strong>in</strong>e (display-ancestry grob)<br />

(format (current-error-port)<br />

"~3&~a~2%~a~&"<br />

(make-str<strong>in</strong>g 36 #\-)<br />

(format-ancestry (get-ancestry grob) 0)))<br />

\relative c' {<br />

\once \override NoteHead #'before-l<strong>in</strong>e-break<strong>in</strong>g = #display-ancestry<br />

f4<br />

\once \override Accidental #'before-l<strong>in</strong>e-break<strong>in</strong>g = #display-ancestry<br />

\once \override Arpeggio #'before-l<strong>in</strong>e-break<strong>in</strong>g = #display-ancestry<br />

4\arpeggio<br />

}

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!