Deutsches Lilypond Forum (Archiv)
Allgemein => Fragen zu Funktionen => Thema gestartet von: DocTaxon am Montag, 27. Mai 2013, 21:02
-
Hi!
Eine Frage: ich habe hier eine Kollision eines Arpeggio mit einem DynamicText. Beide stehen sie an der richtigen Stelle, ich bräuchte nur den Text "p (weich)" über dem Arpeggio geschrieben, so dass es so aussieht, als wenn der Arpeggio unterbrochen wäre. Ich dachte, ich bekomme das mit Layer hin, aber Pustekuchen.
Kann mir jemand helfen?
\version "2.16.0"
\layout {
\context {
\override NonMusicalPaperColumn #'line-break-permission = ##f
}
}
pw = \markup { \center-align \line { \hspace #3.7 p \normal-text \bold \italic (weich) } }
pweich = #(make-dynamic-script pw)
\score {
<<
\new Staff \with { midiInstrument = #"choir aahs" }
\new Voice \relative c'' {
\clef treble \key f \minor
\numericTimeSignature \time 4/4
\override MetronomeMark #'font-size = #3 \tempo "Langsam und getragen" 4 = 54
\autoBeamOff
r8 c c c c c c des
c8. es,16 es 8 es r as as as
\break
\autoBeamOn
}
\new StaffGroup \with { systemStartDelimiter = #'SystemStartBrace }
{ \set Score.connectArpeggios = ##t
<<
\new Staff \with { midiInstrument = #"harpsichord" }
\new Voice \relative c' {
\clef treble \key f \minor
\numericTimeSignature \time 4/4
\stemUp \once\override DynamicText #'layer = #1 \once\override Arpeggio #'layer = #-1 <c es as c>4(\pweich\arpeggio <es es'>2 <fes fes'>4)
s1 \stemNeutral
\break
}
\new Staff \with { midiInstrument = #"harpsichord" }
\new Voice \relative c {
\clef bass \key f \minor
\numericTimeSignature \time 4/4
\once\override DynamicText #'stencil = ##f \once\override Arpeggio #'layer = #-1 <as es' as>4\pweich\arpeggio << { <as' c>2( <g des'>4) } \\ es2. >>
s1
\break
}
>>
}
>>
\layout { }
\midi {
\context {
\Score
\consists "Span_arpeggio_engraver"
}
\context {
\Staff
\remove "Staff_performer"
}
\context {
\Voice
\consists "Staff_performer"
}
\tempo 4 = 54
}
}
Danke sehr,
Doc Taxon ...
-
An dieser Stelle folgt im Code kein Arpeggio, deshalb bleibt #'layer des Arpeggios auf seinem Standardwert. Du kannst aber einfach #'layer vom DynamicText hochschrauben. Was dann noch fehlt ist #'whiteout:
\stemUp \once\override DynamicText #'layer = #500 \once\override DynamicText #'whiteout = ##t <c es as c>4(\pweich\arpeggio <es es'>2 <fes fes'>4)Edit: ich seh gerade: du hast da doch zwei Arpeggios stehen. Und auch zweimal \pweich. Warum?
Achja, und das \new Voice innerhalb der Staffs ist überflüssig, solange du die Stimme nicht benennen willst oder nen \with-Block hast ;)
-
ja super!
Funktioniert perfekt. Danke auch für die Nebenkommentare.
Schöne Grüße,
Doc Taxon ...