Consider this snippet.

```tex
cancellationFirst =
\override Score.BreakAlignment.break-align-orders =
  #(grob-transformer 'break-align-orders
                     (lambda (grob orig)
                       (let ((vec (vector-copy orig))
                             (middle '(key-cancellation
                                       staff-bar
                                       key-signature)))
                         (vector-set! vec 1 middle)
                         vec)))

music = { \key ces \major ces'1 \bar "||"
          \key cis \major cis'1 }

{ <>^\markup "default"
  \music }

{ <>^\markup "cancellationFirst"
  \cancellationFirst
  \music }
```

As can be seen in the image, flipping the order of the bar line and
the key cancellation changes the horizontal spacing between the
`NoteHead` and `NonMusicalPaperColumn` grobs in a bad way.  Why does
this happen, and how can I avoid this?

The third line shows the same without a bar line, where the spacing is
just fine.


    Werner

Reply via email to