Dank eurer Hilfe habe ich einiges versucht und bin ein gutes Stück voran gekommen. Zuerst zeige ich mal, was ich aufgrund eurer Hilfestellung erreicht habe:

Vor allem am Ende des zweiten Taktes sieht man sehr gut, wie sich die drei Klammern überlappen. Das ist in der Harfen-Notation sehr üblich und genau so brauche ich es auch.
Hier der Quelltext dazu (habe fast nur kopiert und eingerückt):
\version "2.18.0"
\layout {
\context {
\Voice
\override TupletBracket.bracket-visibility = ##t
\override Fingering.staff-padding = #'()
\omit TupletNumber
}
}
\new PianoStaff <<
\new Staff = "oben"
\relative c' {
\time 2/4
\key ees\major
s4
%% abusing TupletBracket:
\once \override TupletBracket.direction = #UP
\offset TupletBracket.positions #'(0 . -0.3)
\tuplet 4/4 {
d16_1
\offset LigatureBracket.shorten-pair #'(-1 . 0)
\[g-4
}
bes-3 d-2
g-1\] d-2 bes-3
%% abusing TupletBracket:
\once \override TupletBracket.direction = #UP
\offset TupletBracket.positions #'(0 . -0.3)
\tuplet 4/4 {
g-4
\offset LigatureBracket.padding 1
\[aes'-1
}
f-2
%% abusing TupletBracket:
\once \override TupletBracket.direction = #UP
\offset TupletBracket.positions #'(0 . -0.3)
\tuplet 4/4 {
d-3\]
aes-4
}
}
\new Staff = "unten"
\relative c {
\key ees \major
\clef bass
bes8_4
\once \override LigatureBracket.direction = #DOWN
\offset LigatureBracket.positions #'(-0.3 . 1.1)
\[g'16_3 bes_2
%% need to set a rest, a spacer doesn't work with LigatureBracket
%% would work with TupletBracket, though.
\once \omit Rest
r16*4\]
r4 <bes, f' aes d>
}
>>
Es funktioniert, aber der Code wird schon komplex. Solche Klammersetzungen macht man vor allem dort, wo der Fingereinsatz nicht offensichtlich ist und gerade dann braucht es auch die überlappenden Klammern.
Der Link, den
@Pierre angefügt hat (
http://lsr.di.unimi.it/LSR/Item?id=426), wäre syntaktisch vergleichsweise traumhaft einfach. Leider kann man damit aber keine überlappenden Klammern erzeugen, also bei ein und derselben Note zunächst "Klammer auf" (zum Öffnen der nächsten Klammer) und hinter der Note "Klammer zu" zum Schließen der aktuellen Klammer setzen.
Überlappende Klammern dürfen also - nach meinem derzeitigen Verständnis - nicht vom selben Ligaturtyp sein, daher muss man wohl mit Behelfskonstrukten (oder missbräuchlicher Nutzung) von überlappenden
TupletBracket und
LigatureBracket arbeiten. Auch das wird sehr schnell unübersichtlich und somit fehleranfällig, wenn man es öfters nutzt.
Ich wage also zu fragen, ob und wie man diesen prinzipiell gut funktionierenden Code vereinfachen kann, sodass er recht gut lesbar bleibt und auch nicht für jeden Klammeranfang mehrere Zeilen Code einzufügen sind. Geht da vielleicht etwas mit Funktionen, Makros oder anderen Konstrukten?
Herzlichen Dank jedenfalls allen, die sich hier schon beteiligt haben - das ist klasse!
TipTap