Inhaltlich sinnvollere Aufteilung der include Skripte
This commit is contained in:
63
arrows_in_scores.ly
Normal file
63
arrows_in_scores.ly
Normal file
@ -0,0 +1,63 @@
|
||||
%%%%%%%%%%%%%%%%% Pfeilezeugs
|
||||
% http://lilypond.org/doc/v2.19/Documentation/snippets/vocal-music
|
||||
#(define-markup-command (arrow-at-angle layout props angle-deg length fill)
|
||||
(number? number? boolean?)
|
||||
(let* (
|
||||
(PI-OVER-180 (/ (atan 1 1) 34))
|
||||
(degrees->radians (lambda (degrees) (* degrees PI-OVER-180)))
|
||||
(angle-rad (degrees->radians angle-deg))
|
||||
(target-x (* length (cos angle-rad)))
|
||||
(target-y (* length (sin angle-rad))))
|
||||
(interpret-markup layout props
|
||||
(markup
|
||||
#:translate (cons (/ target-x 2) (/ target-y 2))
|
||||
#:rotate angle-deg
|
||||
#:translate (cons (/ length -2) 0)
|
||||
#:concat (#:draw-line (cons length 0)
|
||||
#:arrow-head X RIGHT fill)))))
|
||||
|
||||
|
||||
splitStaffBarLineMarkup = \markup \with-dimensions #'(0 . 0) #'(0 . 0) {
|
||||
\combine
|
||||
\arrow-at-angle #45 #(sqrt 8) ##t
|
||||
\arrow-at-angle #-45 #(sqrt 8) ##t
|
||||
}
|
||||
|
||||
splitStaffBarLine = {
|
||||
\once \override Staff.BarLine.stencil =
|
||||
#(lambda (grob)
|
||||
(ly:stencil-combine-at-edge
|
||||
(ly:bar-line::print grob)
|
||||
X RIGHT
|
||||
(grob-interpret-markup grob splitStaffBarLineMarkup)
|
||||
0))
|
||||
\break
|
||||
}
|
||||
|
||||
convDownStaffBarLine = {
|
||||
\once \override Staff.BarLine.stencil =
|
||||
#(lambda (grob)
|
||||
(ly:stencil-combine-at-edge
|
||||
(ly:bar-line::print grob)
|
||||
X RIGHT
|
||||
(grob-interpret-markup grob #{
|
||||
\markup\with-dimensions #'(0 . 0) #'(0 . 0) {
|
||||
\translate #'(0 . -.13)\arrow-at-angle #-45 #(sqrt 8) ##t
|
||||
}#})
|
||||
0))
|
||||
\break
|
||||
}
|
||||
|
||||
convUpStaffBarLine = {
|
||||
\once \override Staff.BarLine.stencil =
|
||||
#(lambda (grob)
|
||||
(ly:stencil-combine-at-edge
|
||||
(ly:bar-line::print grob)
|
||||
X RIGHT
|
||||
(grob-interpret-markup grob #{
|
||||
\markup\with-dimensions #'(0 . 0) #'(0 . 0) {
|
||||
\translate #'(0 . .14)\arrow-at-angle #45 #(sqrt 8) ##t
|
||||
}#})
|
||||
0))
|
||||
\break
|
||||
}
|
Reference in New Issue
Block a user