Hallo,
ich hole dieses alte Thema noch einmal aus der Versenkung heraus.
Zusammenfassung: Ich habe einen Notentext in einer Variablen, den ich selber nicht verändern möchte. Er enthält punktierte Notenwerte unmittelbar vor einem Taktende, bei denen der Wert der Grundnote rechnerisch noch zum alten Takt, der der Punktierung zum neuen gehört. Ich hatte zwei Wünsche:
(1) Diesen Text so auszugeben, dass in diesen Fällen statt der Punktierung eine angehängte Note ausgegeben wird.
(2) Diesen Text so auszugeben, dass in diesen Fällen der Punkt hinter dem Taktstrich ausgegeben wird.
Für (1) hatten wir eine Lösung, die auch in 2.19.37 anstandslos funktioniert. Sie macht sogar mehr, und das ist durchaus erwünscht: Sie zerlegt alle Noten, die über den Takstrich hinauszeigen, in zwei Teile und bindet diese. Sie ist auch robust gegen mehrfache Taktwechsel zuvor. - Vielen Dank!
Für (2) hatten wir keine Lösung - möglicherweise aber die Elemente einer solchen, nur reichen meine Schemekenntnisse nicht, sie aus dem, was bisher geschrieben wurde, zu destillieren. Hier dürfen allerdings nur punktierte Noten erfasst werden (für die anderen gibts einen getrennten Thread). Das hier, im vorliegenden Thread eingangs aufgetretene Problem bei relativer Notation ist für mich nicht entscheidend, ich kann gerne in Frescobaldi den Knopf drücken, der die Tonhöhen in absolute verwandelt...
Frage natürlich noch, was passieren soll, wenn die punktierte Note zwar über die Taktgrenze reicht, aber eben nicht so, dass der Wert des Punktes genau dahinter liegt. In den Quellen habe ich dafür kein Beispiel gefunden und sage der Einfachheit halber mutig: Es wird nicht vorkommen.
Ja, vielleicht kann hier noch jemand helfen!?
Ein Minimalbeispiel zum Probieren:
\version "2.19.37"
music = \relative {
c'2 d2.
e4 f g4.
a8 bes c d2.
es2 d2 c4. bes8 a4
g2. e4
c1
}
\score {
\new Staff {
\new Voice \with { % tja, das eben fehlt...
}
\music
}
}
Danke, Gruß,
--ingmar
EDIT: "Minimalbeispiel" hinzugefügt/verbessert; Fall der "nicht ins Raster passenden" Punktierten ergänzt.