Autor Thema: Ossia - Takt bei Wiederholung und Taktwechsel  (Gelesen 1541 mal)

prott

  • Member
Ossia - Takt bei Wiederholung und Taktwechsel
« am: Donnerstag, 16. April 2015, 22:46 »
Hallo zusammen,

Mir macht eine etwas enge Ossia-Konstruktion Probleme:

\version "2.18.0"
\pointAndClickOff

global = {
  \time 4/4
  \repeat volta 2 { s1 }
  s1
  \time 3/4
  \repeat volta 2 { s2. s }
}

notes = \relative c' {
  \repeat volta 2 { c4 d e f}
  <<
    { c4 d e f }
    \new Staff \with {
      \remove "Time_signature_engraver"
      alignAboveContext = #"FalStaff"
      firstClef = ##f
    }
    { \relative e' {e f g a } }
  >>
  \repeat volta 2 { c2 d4 e2 f4 }
}

\score {
  \new Staff = "FalStaff" <<
    \global
    \notes
  >>
}

Wie man leicht sieht, sollten in der Ossia-Zeile die Wiederholungszeichen weg und statt dessen normale Taktstriche hin. Außerdem stört auf der rechten Seite der Platz im Ossia-System, der für den Taktwechsel reserviert ist. Ich habe schon versucht, den Default_bar_line_engraver und den Timing_translator von der Score- auf Staff-Ebene zu ziehen. Das schmeißt mir aber nur alles durcheinander: Die Wiederholungszeichen verschwinden gerade da, wo sie definiert sind, und die Taktstruktur gerät durcheinander. Weiß jemand, wie es richtig geht?

fugenkomponist

  • Member
Re: Ossia - Takt bei Wiederholung und Taktwechsel
« Antwort #1 am: Freitag, 17. April 2015, 00:52 »
\version "2.19.17"

\score {
  { b b b b }
  \layout {
    \context {
      \Score
      \remove Timing_translator
    }
  }
}
\version "2.19.17"

\score {
  { b b b b }
  \layout {
    \context {
      \Score
      \remove Default_bar_line_engraver
      \remove Timing_translator
    }
    \context {
      \Staff
      \consists Default_bar_line_engraver
      \consists Timing_translator
    }
  }
}
Ich weiß ehrlich gesagt nicht, was der Timing_translator genau tut, aber ich hab das mal auf zwei Minimalbeispiele zusammengekürzt (bin mir nicht sicher, ob das erste nicht zu klein ist). Gehört das so? Insbesondere das zweite sieht irgendwie nicht so aus, als wär das beabsichtigtes Verhalten von LilyPond …

prott

  • Member
Re: Ossia - Takt bei Wiederholung und Taktwechsel
« Antwort #2 am: Montag, 20. April 2015, 22:52 »
Eine Hälfte des Problems habe ich inzwischen gelöst, ohne Engraver zu verschieben. Natürlich war mein erster Ansatz (vor der Schieberei), in dem Staff \bar="|" zu schreiben, aber das beglückt die komplette Akkolade. Die Lösung liegt im \once \set Staff.whichBar = "|".

Es bleibt das zweite Problem: Wie bringt man die Notenlinien dahin, genau auf dem ersten Taktstrich zu beginnen und genau auf dem zweiten zu enden? Die Fortsetzungen für nicht existente Wiederholungspunkte und Taktartbezeichnungen stören mich noch.

Zitat
\version "2.17.97"
\pointAndClickOff

global = {
  \time 4/4
  \repeat volta 2 { s1 }
  s1
  \time 3/4
  \repeat volta 2 { s2. s }
}

notes = \relative c' {
  \repeat volta 2 { c4 d e f}
  <<
    { c4 d e f }
    \new Staff \with {
      \remove "Time_signature_engraver"
      alignAboveContext = #"FalStaff"
      firstClef = ##f
    }
    { \once \set Staff.whichBar = "|" \relative e' { e f g a } \once \set Staff.whichBar = "|" }
  >>
  \repeat volta 2 { c2 d4 e2 f4 }
}

\score {
  \new Staff = "FalStaff" <<
    \global
    \notes
  >>

}