%---------------------------------------------------------------- % _ _ _ _ % | | (_) |_ _ _ __ ___ _ __ __| | % | | | | | | | | '_ \ / _ \| '_ \ / _` | % | |___| | | |_| | |_) | (_) | | | | (_| | % |_____|_|_\\__, | .__/ \___/|_| |_|\__,_| % |___/|_| % % This is a Lilypond source code file. For more information % about the Lilypond music typesetting program, visit % % http://lilypond.org % % The code in this source file is released under % a GPLv3 license. For licensing information visit % % http://www.gnu.org/licenses/quick-guide-gplv3 % %---------------------------------------------------------------- \version "2.18.0" %\include "style.ily" \header { tagline = "" % removed } \paper { #(set-paper-size "letter") ragged-right = ##f ragged-bottom = ##t ragged-last-bottom = ##f } #(ly:set-option 'point-and-click #f) #(set-global-staff-size 28) Prefix = \markup { %% uncomment/comment these lines for C, C slashed, B or B slashed prefix : %\roman C \combine \roman C \translate #'(0.65 . -0.25) \override #'(thickness . 1.2) \draw-line #'(0 . 1.8) %\roman B %\combine \roman B \translate #'(0.65 . -0.25) \override #'(thickness . 1.2) \draw-line #'(0 . 1.8) %%%%%%%%%%%% \hspace #0.2 } startBarre = #(define-event-function (parser location str) (string?) (let* ((mrkp (markup #:upright #:concat (str " ")))) (define (width grob text-string) (let* ((layout (ly:grob-layout grob)) (props (ly:grob-alist-chain grob (ly:output-def-lookup layout 'text-font-defaults)))) (interval-length (ly:stencil-extent (interpret-markup layout props (markup text-string)) X)))) #{ \tweak TextSpanner.after-line-breaking #(lambda (grob) (let* ((mrkp-width (width grob mrkp)) (line-thickness (ly:staff-symbol-line-thickness grob))) (ly:grob-set-nested-property! grob '(bound-details left padding) (+ (/ mrkp-width -4) (* line-thickness 2))))) \tweak TextSpanner.font-size -2 \tweak TextSpanner.style #'line \tweak TextSpanner.bound-details.left.text #mrkp \tweak TextSpanner.bound-details.left.padding 0.25 \tweak TextSpanner.bound-details.left.attach-dir -1 \tweak TextSpanner.bound-details.left-broken.text ##f \tweak TextSpanner.bound-details.left-broken.attach-dir -1 %% adjust the numeric values to fit your needs: \tweak TextSpanner.bound-details.left-broken.padding 1.5 \tweak TextSpanner.bound-details.right-broken.padding 0 \tweak TextSpanner.bound-details.right.padding 0.25 \tweak TextSpanner.bound-details.right.attach-dir 2 \tweak TextSpanner.bound-details.right-broken.text ##f \tweak TextSpanner.bound-details.right.text \markup \draw-line #'(0 . 0) \startTextSpan #})) stopBarre = \stopTextSpan global = { \time 2/4 \override Staff.BarLine.allow-span-bar = ##f %\numericTimeSignature \key c \major \set Staff.midiInstrument = "piano" %\override Score.MetronomeMark #'padding = #3.8 %\override Staff.TimeSignature #'stencil = ##f % \set Timing.beamExceptions = #'() % \set Timing.baseMoment = #(ly:make-moment 1/4) % \set Timing.beatStructure = #'(1 1 1 1) \override Glissando.thickness = #4 \override TupletBracket.stencil = ##f } sop = \relative c'' { \global \voiceOne c4(^\markup \italic \bold {"Lento"} ~ c16 b c d es4)( ~ es16 d es f ges8) c,!16( es d cis c8) ~ c8 g16( bes a gis g8) ~ g8 g( r16 bes aes g fis4)( r16 a g f! e!8) g( ~ g16 f e d c2) \bar "||" } alto = \relative c' { \global \voiceTwo r16 e f g a8 aes ~ aes16 g_\markup \tiny {"Sequence."} aes bes c8 ces ~ ces16 bes a!8 ~ a d,16 dis e!8. d16 cis8 d16 e \change Staff = "down" \voiceOne a,16 bes c bes aes8 es' ~ es16 a,! b! c d4 ~ d16 c b bes a8 g16 f e2 } tenor = \relative c { \global \textSpannerDown %\override TextSpanner.bound-details.left.stencil-align-dir-y = #CENTER %\override TextSpanner.bound-details.right.stencil-align-dir-y = #CENTER \override Voice.TextScript.padding = #2 \override Voice.TextSpanner.padding = #2 \clef "bass" \oneVoice c8\startBarre "C" d16 e f4 ~ f16 es f g aes4 ges8( fis) ~ fis fis, g16 a^\markup \tiny {"Sequence."} bes g a8 b16 cis \voiceTwo d8 es16 des c4 ~ c16 es d c b4 c8 e, f g c16 g e d\stopBarre c4 } bass = \relative c { \global \clef "bass" %\voiceTwo \override Voice.TextScript.padding = #1 \override Voice.TextSpanner.padding = #2 \override TextSpanner.outside-staff-priority = #5 \override TextScript.extra-offset = #'(0.0 . 2.0) s4 s8 s_\markup \tiny { \whiteout \pad-markup #0.4 "E♭"} %2 s4 s8 s_\markup \tiny { \whiteout \pad-markup #0.4 "G♭"} %3 s8 \once \override TextScript.extra-offset = #'(0.0 . 2.5) s_\markup \tiny { \whiteout \pad-markup #0.4 "g"} s8 s16 s_\markup \tiny { \whiteout \pad-markup #0.4 "C"} s8 s_\markup \tiny { \whiteout \pad-markup #0.4 "d"} s4 \once \override TextScript.extra-offset = #'(0.0 . 2.5) s8._\markup \tiny { \whiteout \pad-markup #0.4 "(g)"} \once \override TextScript.extra-offset = #'(0.0 . 1.0) s16_\markup \tiny { \whiteout \pad-markup #0.4 "A♭"} s4 \once \override TextScript.extra-offset = #'(0.0 . -1.5) s8_\markup \tiny { \whiteout \pad-markup #0.4 "g"} \once \override TextScript.extra-offset = #'(0.0 . -1.0) s_\markup \tiny { \whiteout \pad-markup #0.4 "G"} s \once \override TextScript.extra-offset = #'(0.0 . -2.2) s_\markup \tiny { \whiteout \pad-markup #0.4 "C"} \override TextScript.extra-offset = #'(0.0 . 2.2) s8 s_\markup \tiny { \whiteout \pad-markup #0.4 "F"} s s_\markup \tiny { \whiteout \pad-markup #0.4 "C"} } \score { \new PianoStaff << \set PianoStaff.instrumentName = \markup \center-column { Ex. "149-2." } \new Staff = "up" << \context Voice = "soprano" \sop \context Voice = "alto" \alto >> \new Staff = "down" << \context Voice = "tenor" \tenor \context Voice = "bass" \bass >> >> \layout { \context { \Score \remove "Bar_number_engraver" } } \midi {\tempo 4 = 60} }