Deutsches Lilypond Forum (Archiv)
Allgemein => Fragen zu Funktionen => Thema gestartet von: chf am Mittwoch, 10. März 2010, 12:04
-
Liebe Freunde,
lange habe ich probiert, bin aber zu keinem guten Ergebnis gekommen:
\version "2.12.2"
\layout {
\context {
\type "Engraver_group"
\name Dynamics
\alias Voice % So that \cresc works, for example.
\consists "Output_property_engraver"
\override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
\override DynamicLineSpanner #'Y-offset = #0
\consists "Script_engraver"
\consists "Dynamic_engraver"
\consists "Text_engraver"
% \override TextScript #'font-size = #2
% \override TextScript #'font-shape = #'italic
\consists "Skip_event_swallow_translator"
\consists "Axis_group_engraver"
}
\context { \PianoStaff \accepts Dynamics }
}
\score {
<<
\new Staff \with { instrumentName = "Mandoline " fontSize = #-2
\override StaffSymbol #'staff-space = #(magstep -2)
\override StaffSymbol #'thickness = #(magstep -2)
}
<< \global \Mandoline >>
\new PianoStaff \with { instrumentName = "Klavier" } <<
\new Staff << \global \upper >>
\dynamics
\new Staff <<\global \lower >>
>>
>>
}
Das ist (auch schon mit eurer Hilfe) der Klavierauszug im Normalfall. Da hinein soll aber eine "ossia"-Passage, und zwar in die Solostimme.
\new Staff \with {
\remove "Time_signature_engraver"
alignAboveContext = #"Mandoline"
fontSize = #-3
\override StaffSymbol #'staff-space = #(magstep -3)
\override StaffSymbol #'thickness = #(magstep -3)
firstClef = ##f
}
Ich kriege entweder "ossia" unter der Klavierstimme, oder aber (wie in der Partitur) "ossia" richtig,
dafür aber die Solostimme nicht in fontSize = #-2 .
Bastelt ihr mir das bitte zusammen - gebrauchsfertig, wie immer...
Dank und Gruß
chf
-
leider kompiliert dein beispiel nicht - du solltest jeweils eine kompilationsfähige, reduzierte version deines score schicken, sonst müssen wir selbst noch komponieren!
in diesem fall fehlt mindestens die definition von global = und Mandoline = !
bitte verstehe, dass ich dir gerne helfe, aber dass ich keine zeit habe, zuerst ein lauffähiges lilypond script zu schreiben oder zu ergänzen.
-
Entschuldige bitte! So müsste es gehen?
global = {}
Mandoline = \new Voice {\relative c'' {
\set Staff.instrumentName = "Mandoline "
<<{c4 c c c }
\new Staff \with {
\remove "Time_signature_engraver"
alignAboveContext = #"Mandoline"
fontSize = #-3
\override StaffSymbol #'staff-space = #(magstep -3)
\override StaffSymbol #'thickness = #(magstep -3)
firstClef = ##f
}
{c8 c c c c c c c}>>
}}
upper = \new Voice {\relative c'' {
c4 c c c }}
lower = \new Voice {\relative c {
c c c c}}
dynamics = \new Dynamics { }
\layout {
\context {
\type "Engraver_group"
\name Dynamics
\alias Voice % So that \cresc works, for example.
\consists "Output_property_engraver"
\override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
\override DynamicLineSpanner #'Y-offset = #0
\consists "Script_engraver"
\consists "Dynamic_engraver"
\consists "Text_engraver"
% \override TextScript #'font-size = #2
% \override TextScript #'font-shape = #'italic
\consists "Skip_event_swallow_translator"
\consists "Axis_group_engraver"
}
\context { \PianoStaff \accepts Dynamics }
}
\score {
<<
\new Staff = Mandoline \new Voice = Mandoline \with { fontSize = #-2
\override StaffSymbol #'staff-space = #(magstep -2)
\override StaffSymbol #'thickness = #(magstep -2)
}
{<< \global \Mandoline >> }
\new PianoStaff \with {instrumentName = "Klavier "}
<<
\new Staff \new Voice {<< \global \upper >>}
\dynamics
\new Staff \new Voice {<<\global \lower >>}
>>
>>
}
chf
-
tut mir leid, aber das mail, das ich erhalten habe, hat alle steuerzeichen "\" ">" uä weggeschnipselt und was hier im dlf steht, sieht doch deutlich anders aus - und ist auch nicht lauffähig!
schlage vor du schickst deinen code als datei (s. erweiterte optionen), da sollten keine filter angeewendet werden!
-
Ja, jetzt versuche ich's richtig.
Guten Abend
chf
-
Nein chf, gemeint ist dein Code als .ly-Datei :)
Bei mir läuft dein 2. geposteter Code aber korrekt (unter 2.12.3) durch. Es lässt sich auch alles ändern und die ossia-Zeile steht oben....
Was ist denn jetzt das Problem?
-
Oben steht
Mandoline = \new Voice {\relative c'' {
Weiter unten steht
\new Staff = Mandoline \new Voice = Mandoline \with { fontSize = #-2
d.h. bei der Solostimme kommt \new Voice zweimal vor:
das erste Mal wird für -2 aufgesetzt, aber (dann, ohne dazwischenliegende Töne)
das zweite Mal , welche die {c4 c c c } bekommt, nicht.
Fazit: \new Voice löschen, dass es oben dann so aussieht:
Mandoline = {\relative c'' {
Gruss
-
Heißen Dank, comper!
Gruß
chf