[ << Tweaks and overrides ] | [Top][Contents] | [ Paper and layout >> ] |
[ < Barras rítmicas ] | [ Up : Tweaks and overrides ] | [ Establecer el comportamiento de los reguladores en las barras de compás > ] |
Separar las cancelaciones de tonalidad de los cambios de armadura
De forma predeterminada, las alteraciones accidentales que se usan
para las cancelaciones en las armaduras se colocan adyacentes a las
que se usan para los cambios de tonalidad. Este comportamiento se
puede cambiar sobreescribiendo la propiedad 'break-align-orders
del objeto gráfico BreakAlignment
.
El valor de 'break-align-orders
es un vector de longitud 3, con
listas entrecomilladas cuyos elementos con objets que se pueden
dividir en un salto. Este ejemplo solo modifica la segunda lista,
moviendo key-cancellation
antes de staff-bar
;
modificando la segunda lista, el comportamiento de alineación de los
saltos solo cambia en la mitad de un sistema, no al principio ni al
final.
#(define (insert-before where what lst) (cond ((null? lst) ; If the list is empty, (list what)) ; return a single-element list. ((eq? where (car lst)) ; If we find symbol `where`, (cons what lst)) ; insert `what` before curr. position. (else ; Otherwise keep building the list by (cons (car lst) ; adding the current element and ; recursing with the next element. (insert-before where what (cdr lst)))))) cancellationFirst = \override Score.BreakAlignment.break-align-orders = #(grob-transformer 'break-align-orders (lambda (grob orig) (let* ((middle (vector-ref orig 1)) (middle (delq 'key-cancellation middle)) (middle (insert-before 'staff-bar 'key-cancellation middle))) (vector ;; end of line (vector-ref orig 0) ;; middle of line middle ;; beginning of line (vector-ref orig 2))))) music = { \key es \major d'1 \bar "||" \key a \major d'1 } { <>^\markup "default" \music } { <>^\markup "cancellation first" \cancellationFirst \music } \paper { tagline = ##f }
[ << Tweaks and overrides ] | [Top][Contents] | [ Paper and layout >> ] |
[ < Barras rítmicas ] | [ Up : Tweaks and overrides ] | [ Establecer el comportamiento de los reguladores en las barras de compás > ] |