Thank you too for the tip,
Unfortunately, it seems to produce weird results in some cases, For example: I can't set the 'padding' property in a consistent way. See the snippet below (and please, give me a feedback, so the gitlab page can be updated, if needed).
It appears to me that there is a conceptual contradiction in the TupletBracket itself: it is defined as a non-outside-staff object as default, but it requires the avoid-collision props of the outside-staff objects as well. I can understand that there are scores in which brackets are inside staves (I don't like this choice TBH, I think it visually messes up the score), but in case the notation doesn't require this constraint, like my case, putting the bracket outside the score, with a proper barrier around it, seem to solve all the issues.
Note that a TupletBracket should have an unbalanced barrier (no space or few space above it, some space below it), which is not possible with outside-staff-padding but it is possible with the function that Aaron wrote some time ago (just create a white box):
Best,
P
%%%%%
(define (Tuplet_accidental_support_engraver context)
(let ((brackets (make-hash-table))
(ending-brackets '())
(accidentals '()))
(make-engraver
(acknowledgers
((tuplet-bracket-interface engraver grob source-engraver)
(hashq-set! brackets grob #t))
((accidental-interface engraver grob source-engraver)
(set! accidentals (cons grob accidentals))))
(end-acknowledgers
((tuplet-bracket-interface engraver grob source-engraver)
(set! ending-brackets (cons grob ending-brackets))))
((stop-translation-timestep engraver)
(hash-for-each
(lambda (bracket dummy)
(for-each
(lambda (accidental)
(ly:pointer-group-interface::add-grob
bracket
'scripts
accidental))
accidentals))
brackets)
(for-each
(lambda (bracket)
(hashq-remove! brackets bracket))
ending-brackets)
(set! accidentals '())))))
\layout {
\context {
\Voice
\consists #Tuplet_accidental_support_engraver
}
}
%%%%%
{
\time 5/4
\override TupletBracket.direction = #UP
\override TupletBracket.padding = 0
\tuplet 3/2 { a'' a'' a''}
\revert TupletBracket.padding
s
\tuplet 3/2 { \once \hide Accidental a'' a'' ais''}
\override TupletBracket.padding = 0
\tuplet 3/2 { a'' a'' a''}
s
\tuplet 3/2 { \once \hide Accidental a'' a'' a''}
}
%%%%%