Deutsches Lilypond Forum (Archiv)
Allgemein => Fragen zu Funktionen => Thema gestartet von: chf am Montag, 20. Oktober 2008, 14:58
-
Hallo, liebe Musikfreunde,
nach langem Suchen und Probieren wage ich eine Frage:
"\remove_time_engraver" funktioniert, aber n a c h der Kadenz brauche ich wieder Taktarten. Wie kann ich den Anfangsbefehl widerrufen?
Ich bin gespannt auf Eure Antworten.
Gruß und Dank
chf
-
Aber was macht denn "\remove_time_engraver"?
Falls "\remove Time_signature_engraver" gemeint ist,
könnte man es mit weniger grobem Geschütz versuchen;
im Kontext doch behalten, dafür lediglich zeitweise lahmlegen,
wie im Notationsreferenz 5.4.5 beschrieben.
Im Musik-Ablauf
Ausblenden: \override Score.TimeSignature #'stencil = ##f
Einblenden: \override Score.TimeSignature #'stencil = ##t
Gruss
-
Danke!!!
Ich habe natürlich Time_signature_engraver gemeint...
So einfach geht's, wenn man's weiß.
Der Hinweis hat mir gleich noch die Lösung für ein ähnliches Problem gebracht.
Gruß
chf
-
Naja, für sowas sind \cadenzaOn u. \cadenzaOff sind perfekt.
http://kainhofer.com/~lilypond/Documentation/user/lilypond/Displaying-rhythms.html#Unmetered-music (http://kainhofer.com/~lilypond/Documentation/user/lilypond/Displaying-rhythms.html#Unmetered-music)
-
Das dachte ich auch, hat aber leider nicht funktioniert. Damit ist es mir immerhin gelungen, die Taktstriche zu vermeiden. Vielleicht habe ich was übersehen. Danke trotzdem.
chf
-
Was hat dabei nicht funktioniert? Ich meine, gab's ein Fehler? Unertwartete ausdruck?
-
Pardon, ich habe bei meiner Frage was Wesentliches vergessen: Es handelte sich um den Anfang des Stückes.
Mitten im Text funktioniert "Cadenza" prima. So habe ich ungewollt Verwirrung angerichtet. Ich muss mich im Forum erst noch "einarbeiten", bin noch ziemlich nervös.
chf
-
Schuldigen, ich verstehe immer noch nicht. Hast du ein snippet?
global = { \time 4/4 }
test = {
\cadenzaOn
c'4 a g f g a g f g a \bar "|"
\cadenzaOff
c'1
}
\score {
\new Staff <<\global \test>>
}
-
Was ich brauche ist folgendes:
\relative c'' {
\clef treble
\override Score.TimeSignature #'stencil = ##f
\cadenzaOn g2 (^\markup {frei} a4) g (a) \breathe g8 [(a) g16 (a g a g a)] \breathe \times 2/3 {b2 (f g)}\breathe r1 \bar "" \break a2 b4 (cis) d2 \breathe e4 g (f e) \times 4/5 {f8 [e f e f]} \breathe r1 \cadenzaOff \bar "" \break \override Score.TimeSignature #'stencil = ##t \override Score.BarNumber #'stencil = ##f
\times 2/3 {fis8 (a g} fis16) [g (fis d)] g32[(a) g (a)] \breathe bes16-.[f (bes) f] (c'8) \breathe r1 \bar "||"
\break
\key g \dorian
\time 2/2
}
Das Zeichen für 4/4Takt erscheint automatisch, wenn keine Taktart vorgegeben ist. Mit \remove "Time_signature_engraver" war es verschwunden. Der Befehl war aber wirksam für den gesamten Text.
Bitte schau Dir mein Beispiel an und nimm zum Vergleich \overrideScore... raus, dann wirst du sehen, was ich meine.
Wenn du noch eine Lösung hast, zeige sie mir bitte. Ich bin dankbar für jede Anregung.
Gruß chf
-
aha. Jetzt hab' ich's endlich kapiert.
Naja, ich könnte es nur etwas schöner machen.
\version "2.11.63"
\relative c'' {
\clef treble
\override Score.BarNumber #'stencil = ##f
\once \override Staff.TimeSignature #'stencil = ##f
\cadenzaOn g2( ^"frei" a4) g( a) \breathe g8[( a) g16( a g a g a)]
\breathe \times 2/3 {b2( f g)} \breathe \bar ""
\cadenzaOff R1 \cadenzaOn \bar "" \break
a2 b4( cis) d2 \breathe
e4 g( f e) \times 4/5 {f8[ e f e f]} \breathe \bar ""
\cadenzaOff R1 \cadenzaOn \bar "" \break
\times 2/3 {fis8( a g} fis16)[ g( fis d)] g32[( a) g( a)] \breathe bes16-.[ f( bes) f]( c') \breathe
\cadenzaOff r1 \bar "||" \break
\key g \dorian
\time 2/2
\revert Score.BarNumber #'stencil
\set Score.currentBarNumber = #1
s1
}