Deutsches Lilypond Forum (Archiv)
Allgemein => Fragen zu Funktionen => Thema gestartet von: chf am Freitag, 26. Juli 2013, 14:12
-
Liebe Freunde,
was ist zu tun, wenn der Abstand der ossia-Zeile zur Originalfassung zu groß erscheint?
Gruß
chf
-
Hallo Christa,
wenn der Abstand zu groß erscheint, würde ich ihn verkleinern. ;)
Konkret: Da Du kein Code-Beispiel beifügst, nehme ich einfach das Ossia-Beispiel aus der Dokumentation.
Was für "normale" Systeme funktioniert, geht auch mit Ossia-Zeilen: die Bestandteile der staff-staff-spacing-Liste einfach nach Bedarf anpassen - im Beispiel reicht ein Eintrag, nämlich die basic-distance, die ich auf einen kleineren Wert gesetzt habe (rot gekennzeichnet):
\version "2.16.1"
\new Staff = main \relative c'' {
c4 b d c
<<
{ c4 b d c }
\new Staff \with {
\remove "Time_signature_engraver"
alignAboveContext = #"main"
fontSize = #-3
\override StaffSymbol #'staff-space = #(magstep -3)
\override StaffSymbol #'thickness = #(magstep -3)
\override VerticalAxisGroup #'staff-staff-spacing = #'((basic-distance . 6))
firstClef = ##f
}
{ e4 d f e }
>>
c4 b c2
}
Viele Grüße
Torsten
-
Hallo Torsten,
du Schelm! Deine Antwort ist natürlich die einzig richtige...
Aber nun sage mir bitte, warum die Lösung für mein Beispiel keine ist? Es rührt sich nichts.
Gruß
Christa
-
Aber nun sage mir bitte, warum die Lösung für mein Beispiel keine ist? Es rührt sich nichts.
staff-staff-spacing
Used to determine the distance between the current staff and the staff just below it in the same system …
dieser beschreibung folgend müsste man die basic-distance im oberen staff ("main") definieren (und wenn man alignAboveContext benutzt wiederum im ossia-staff!)
ich würde deshalb
\layout {
\context {
\Staff
\override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #33
}
}vorschlagen.
Eluze
-
Hallo Eluze,
damit komme ich leider auch nicht zum Ziel.
Ich habe mein Beispiel mal noch bissl ergänzt...
Gruß
Christa
-
Ich habe mein Beispiel mal noch bissl ergänzt...
lieber nicht - es ist besser wenn möglichst alles überflüssige weg ist!
damit komme ich leider auch nicht zum Ziel.
ich seh nichts - wo hast du default-staff-staff-spacing eingebaut?!
Eluze
-
Das habe ich an verschiedenen Stellen ohne Erfolg versucht.
Kannst du es bitte einbauen? (Die Ergänzung sollte nur zeigen, wo "ossia" stehen soll und was im laout stehen muss...)
chf
-
hier ist das beispiel , vereinfacht.
\new Staff = main \relative c'' {
c1
<<
{ c }
\new Staff = ossia \with { alignAboveContext = "main" }
{ c16^"ossia" c c c c8 \stopStaff }
>>
c1
}
\layout {
\context {
\Staff
\override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #33
}
}
bitte beachte, dass alignAboveContext sich auf einen existierenden context beziehen sollte, sonst passiert nämlich nichts!
Eluze
-
Eluze,
wenn ich aligneAbove wollte, gäbe es kein Problem - ich kämpfe mit align Below!
-
wenn ich aligneAbove wollte, gäbe es kein Problem - ich kämpfe mit align Below!
meine lösung gilt auch dafür!
-
Sehe ich richtig, dass die Position nach deinem Code auch starr ist?
Ich dachte, dass sich die Zeilen noch weiter annähern lassen... Falsch?
übrigen s bekomme ich sowohl bei deinem Beispiel wie auch bei meinem die gleiche Fehlermeldung:
Fehler: syntax error, unexpected '.', expecting SCM_FUNCTION or SCM_IDENTIFIER or SCM_TOKEN
\override VerticalAxisGroup
.default-staff-staff-spacing.basic-distance = #33
ossiaAbstand.ly:22:0: Fehler: syntax error, unexpected '}'
Christa
-
Sehe ich richtig, dass die Position nach deinem Code auch starr ist?
Ich dachte, dass sich die Zeilen noch weiter annähern lassen... Falsch?
zunächst müssen wir das hier unten fixen!
übrigens bekomme ich sowohl bei deinem Beispiel wie auch bei meinem die gleiche Fehlermeldung:
Fehler: syntax error, unexpected '.', expecting SCM_FUNCTION or SCM_IDENTIFIER or SCM_TOKEN
\override VerticalAxisGroup
.default-staff-staff-spacing.basic-distance = #33
ossiaAbstand.ly:22:0: Fehler: syntax error, unexpected '}'
also: ich verwende die neuste version und vergesse immer wieder meine posts für ältere versionen anzupassen - - tut mir leid. der grosse vorteil der neuen versionen ist, dass man auf die zeichen #' verzichten kann!
es müsste also in den 2.16 versionen heissen:
\override VerticalAxisGroup #'default-staff-staff-spacing #'basic-distance = #33wenn du also statt 33 -> 0 oder 1 einsetzt, sollte der abstand klar vermindert werden! kannst du das überprüfen!?
Eluze
-
Hallo Eluze,
jetzt stimmt meine Welt wieder!
Ich habe schon eine solche Ursache vermutet, die Frage war, um welches Zeichen es sich handelt.
Danke, dass du für meine Hartnäckigkeit Geduld aufgebracht hast.
Gruß
Christa