Un primo approccio potrebbe essere quello di modificare il testo del numero di gruppi irregolari e aggiungere una piccola legatura:
bow-up = \ markup {\ with-Dimensions # '(0. 3) # '(0. 0) \ override #' (filled. #T) \ path # .1 # '((moveto 0 0) (curveto 1 1.2 2 1.2 3 0) (curveto 2 0.9 1 0.9 0 0) (closepath ))} bow-down = \ markup {\ with-Dimensions # '(0. 3) #' (0. 0) \ override # '(filled. #t) \ path # .1 #' ((moveto 0 0 ) (curveto 1 -1.2 2 -1.2 3 0) (curveto 2 -0.9 1 -0.9 0 0) (closepath))} # (define-markup-command (tuplet-bow-up layout props tuplet-number) (markup? ) (interpret-markup layout props (markup #: center-column (#: vspace -.2 bow-up #: vspace -.6 #: line (tuplet-number))))) # (define-markup-command ( puntelli layout tuplet-bow-down numero-tuplet) (markup?) (puntelli layout interpret-markup (markup #: center-column (#: vspace .2 tuplet-number #: vspace -1 #: line (bow-down) )))) tupletBowUp = # (define-scheme-functi on (parser location tuplet-number) (string?) # {\ override TupletNumber.text = \ markup \ tuplet-bow-up # tuplet-number #}) tupletBowDown = # (define-scheme-function (parser location tuplet-number ) (stringa?) # {\ override TupletNumber.text = \ markup \ tuplet-bow-down # tuplet-number #}) \ score {{\ clef bass \ time 3/4 \ tupletBowUp "3" \ tuplet 3/2 {c8 b, c} \ tupletBowDown "3" \ tuplet 3/2 {e8 ge} \ tuplet 3/2 {e8 ge} c'4} \ layout {}}
Con \ tupletBowUp "3"
imposti il numero di tutti i gruppi irregolari seguenti a 3 con un piccolo fiocco sopra. Con \ tupletBowDown "3"
lo imposti a 3 con un piccolo fiocco sotto. Puoi mettere altri numeri come preferisci.
Risultato :
Ma sono sicuro che questo può essere ottenuto anche in un modo molto più sofisticato. Tuttavia, non conosco molto bene gli interni di LilyPond. Ad esempio, sarebbe fantastico che l'arco piccolo passasse automaticamente sopra o sotto il numero in base alla sua posizione.
Modifica: un altro modo sarebbe cambiare il parentesi tuplet come questa proposta e un commento suggeriscono (scusate, ho visto il commento solo dopo aver modificato la mia risposta). Ho cambiato un po 'il codice della proposta collegata per semplificarla e ridurre le legature:
printTupletBow = {\ override TupletBracket #' stencil = #ly: slur :: print \ override TupletBracket # 'thick = # 1.2 \ override TupletBracket #' control-points = # (lambda (grob) (let * ((x-pos (ly: grob-property grob 'X-posizioni)) (pos (ly: grob-property posizioni grob ')) (x-ln (interval-length x-pos)) (dir (ly: grob-property grob' direction)) (height (- (cdr pos) (car pos))) (height-corr ( * 0.3 dir height)) (edge-height (ly: grob-property grob 'edge-height' (0.7. 0.7)))) (list (cons (+ (car x-pos) (* x-ln 1/4 )) (+ (car pos) (* 1 dir (car edge-height)))) (cons (+ (car x-pos) (* x-ln 3/8)) (+ (car pos) (* dir (+ 1.5 height-corr)))) (cons (+ (car x-pos) (* x-ln 5/8)) (+ (cdr pos) (* dir (- 1.5 height -corr)))) (contro (+ (car x-pos) (* x-ln 3/4)) (+ (cdr pos) (* 1 dir (cdr edge-height)))))))} \ partitura {{\ clef bass \ time 3/4 \ tuplet 3/2 {c8 b, c} \ tuplet 3/2 {e8 ge} \ tuplet 3/2 {e8 ge} c'4}} \ layout {\ printTupletBow }
Risultato:
Se vuoi omettere temporaneamente gli archi, puoi usare \ once \ override TupletBracket.stencil = ## f
subito prima del gruppo irregolare pertinente.
Un problema con questo approccio è che la legatura sarà molto inclinata se le note si estendono su intervalli più grandi. Ma potrebbe essere una buona soluzione se il tuo pezzo includesse principalmente gruppi irregolari con travi.