phrasierung fortsetzen in wiederholung-alternative

Begonnen von dieter, Sonntag, 30. Juni 2019, 09:21

« vorheriges - nächstes »

dieter

Hallo!

wie kann man einen Phrasierungsbogen bei einer \alternative Konstruktion auch in der zweiten Alternative erzeugen?

Beispiel:
\version "2.18.2"
\language "deutsch"

\relative c' {
%  \time 4/4
  \repeat volta 2 {
    c4 d e\( f
  }
  \alternative {
    { g4 f e2\) }
    { a4 h c2\) }
  }
}


Der Vorschlag, es mit \hideNotes und \grace zu machen, wäre zwar bei diesem Beispiel möglich, aber ich bräuchte das auch in komplizierteren Konstruktionen mit mehreren Zeilen und Polyphonie in einer Stimme; und da gibt es dann verdoppelte Wiederholungszeichen, die ich wieder nur damit zum Verschwinden bringen kann, wenn ich die \grace Noten in allen Stimmen setze, was dann wiederum dazu führt, dass in der polyphonen Stimme Noten übereinander gesetzt werden usw.
M.a.W.: Gibt es eine Möglichkeit OHNE \hideNotes und \grace?

Für weitere Vorschläge wäre ich dankbar!

herzlicher Gruß
Dieter

harm6

Hallo,

warum keinen PhrasingSlur neu anlegen und dessen Erscheinungsbild anpassen?
Eine Anpassung wäre doch mit \grace auch angezeigt.

Geht indem man 'positions tweaked oder mit umfassenderen Möglichkeiten: \shape


\version "2.18.2"
\language "deutsch"

\relative c' {
%  \time 4/4
  \repeat volta 2 {
    c4 d e\( f
  }
  \alternative {
    { g4 f e2\) }
    {
    a4
      -\shape #'((0 . -1)(0 . -0.2)(0 . 0)(0 . 0))
      %-\tweak positions #'(-4 . -3)
      _\(
    h c2\)
    }
  }
}


HTH,
  Harm

dieter

Hi harm,

danke für deine schnelle Antwort! Ja, sicher, so könnte man es machen; aber der Phrasierungsbogen beginnt eben mit der ersten Note in der 2. Alternative und könnte nur mit der \grace-Konstruktion das Aussehen des erwünschten Phrasierungsbogens bekommen. Oder kann man mit der \shape-Funktion den Bogen nach vorn rücken?

Wenn ich aber \grace verwende, dann sieht das im erweiterten Beispiel (das ich bisher der Einfachheit halber nicht gepostet hatte) so aus: s.u.

\version "2.18.2"
\language "deutsch"

global = {
  \key f \major
  \time 4/2
}

right = \relative c' {
  \global
  \repeat volta 2 {
    <c' f,>2. c,4^\( c d f a
  }
  \alternative {
    { << { \voiceOne \time 2/2 g4 a g2\) }
         \new Voice { \voiceTwo d2 e }
      >> \oneVoice }
    { << { \voiceOne \time 4/2 \hideNotes \grace b'8\( \unHideNotes g2 a g1\) }
         \new Voice { \voiceTwo d1 f4 d e2 }
      >> \oneVoice }
  }
}

left = \relative c' {
  \global
  \repeat volta 2 {
    <a f>2. c,4 c d f a
  }
  \alternative {
    { <g b,>2 <b c,> }
    { << { g1 } \\ { b,2 h } >> <b' c,>1 }
  }
}

piano = \new PianoStaff <<
  \new Staff \right
  \new Staff { \clef bass \left}
>>

\score {
  \piano
  \layout { }
}


Warum wird der Bogen in eine \alternative-Konstruktion eigentlich nicht so übernommen, wie es logisch wäre? Nämlich als "Alternative"?

harm6

Zitat
kann man mit der \shape-Funktion den Bogen nach vorn rücken?
Natürlich kann man das. \shape geht von den berechneten Werten für die Kontrolpunkte des Slurs aus und addiert die von Dir gesetzten.
Probiers aus.
Du kannst auch die Kontrolpunkte ganz neu setzen mittels (pseudo-code)
\override PhrasingSlur.control-points = #'( number-pair-1 number-pair-2 number-pair-3 number-pair-4)
Ist idR aber müsamer...

Zitat
Warum wird der Bogen in eine \alternative-Konstruktion eigentlich nicht so übernommen, wie es logisch wäre?
Nun, einerseits ist es unsere menschliche Logik, die das so sieht. Einem Computer müßte man das beibringen.
Im Moment liest LilyPond stur von links nach rechts, und von oben nach unten.
Meistens zumindest. In manchen Bersichen ist auch ein look-ahead implementiert, welches nicht selten zu Problemen führt.
Wie soll solch ein Teil-Slur denn auch aussehen, d.h. wo soll er anfangen und mit welcher "Krümmung"?
Das wird ziemlich aufwendig, falls überhaupt möglich, denn ein Bogen muß eine Verankerung am linken und rechten Ende haben.
Momentan sind die Bögen an NoteHeads/Columns oder beim Zeilensprung an die PaperColumns gebunden (oder waren es die NonMusicalPaperColumns? weiß ich gerade nicht). Macht man das auch bein \alternative, dann muß wohl darüberhinaus die Anfangshöhe/Krümmung berechnet oder übergeben werden.
Und bei \unfoldRepeats alles wieder anders ...
Das sind nur ein paar Dinge die mir spontan einfallen...

Gruß,
  Harm

dieter

Okay, ich verstehe. Jedenfalls vielen Dank für deine schnelle und kompetente Hilfe, durch die ich wieder einen weiteren (und etwas tieferen) Einblick in die Möglichkeiten von lilypond gewonnen habe  :) !

Soll das Thema auf "gelöst" gesetzt werden?

Gruß
Dieter

harm6

Zitat
Soll das Thema auf "gelöst" gesetzt werden?

Nun, eigentlich ist das Problem ja nicht gelöst, was sich spätestens dann zeigt, wenn Du \unfoldRepeats aktivierst.
Es ist allerdings ein praktikabler work-around gepostet, tatsächlich soger zwei (denn das mit \grace kann man auch ans laufen kriegen.)

Insoweit, wie du willst.

Gruß,
  Harm

dieter

Hi harm,

dann lassen wir es lieber wie es ist. Vielleicht möchte ja mal jemand etwas zusammenbasteln, um das Problem wirklich zu lösen?

Gruß
Dieter