### 3.1.125 TimeSignature

TimeSignature objects are created by: Time_signature_engraver.

Standard settings:

> `avoid-slur` (symbol):

>   `'inside`

>   Method of handling slur collisions. Choices are `inside`, `outside`, `around`, and `ignore`. `inside` adjusts the slur if needed to keep the grob inside the slur. `outside` moves the grob vertically to the outside of the slur. `around` moves the grob vertically to the outside of the slur only if there is a collision. `ignore` does not move either. In grobs whose notational significance depends on vertical position (such as accidentals, clefs, etc.), `outside` and `around` behave like `ignore`.

> `break-align-anchor` (number):

>   `ly:break-aligned-interface::calc-extent-aligned-anchor`

>   Grobs aligned to this break-align grob will have their X-offsets shifted by this number. In bar lines, for example, this is used to position grobs relative to the (visual) center of the bar line.

> `break-align-anchor-alignment` (number):

>   `-1`

>   Read by `ly:break-aligned-interface::calc-extent-aligned-anchor` for aligning an anchor to a grob’s extent.

> `break-align-symbol` (symbol):

>   `'time-signature`

>   This key is used for aligning and spacing breakable items.

> `break-visibility` (vector):

>   `#(#t #t #t)`

>   A vector of 3 booleans, `#(end-of-line unbroken begin-of-line)`. `#t` means visible, `#f` means killed.

> `extra-spacing-height` (pair of numbers):

>   `pure-from-neighbor-interface::extra-spacing-height-including-staff`

>   In the horizontal spacing problem, we increase the height of each item by this amount (by adding the ‘car’ to the bottom of the item and adding the ‘cdr’ to the top of the item). In order to make a grob infinitely high (to prevent the horizontal spacing problem from placing any other grobs above or below this grob), set this to `(-inf.0 . +inf.0)`.

> `extra-spacing-width` (pair of numbers):

>   `'(0.0 . 0.8)`

>   In the horizontal spacing problem, we pad each item by this amount (by adding the ‘car’ on the left side of the item and adding the ‘cdr’ on the right side of the item). In order to make a grob take up no horizontal space at all, set this to `(+inf.0 . -inf.0)`.

> `non-musical` (boolean):

>   `#t`

>   True if the grob belongs to a `NonMusicalPaperColumn`.

> `space-alist` (list):

>   `'((cue-clef extra-space . 1.5) (first-note fixed-space . 2.0) (right-edge extra-space . 0.5) (staff-bar extra-space . 1.0))`

>   A table that specifies distances between prefatory items, like clef and time-signature. The format is an alist of spacing tuples: `(break-align-symbol type . distance)`, where type can be the symbols `minimum-space` or `extra-space`.

> `stencil` (stencil):

>   `ly:time-signature::print`

>   The symbol to print.

> `style` (symbol):

>   `'C`

>   This setting determines in what style a grob is typeset. Valid choices depend on the `stencil` callback reading this property.

> `Y-extent` (pair of numbers):

>   `#<unpure-pure-container #<primitive-procedure ly:grob::stencil-height> >`

>   Extent (size) in the Y direction, measured in staff-space units, relative to object’s reference point.

This object supports the following interface(s): break-aligned-interface, font-interface, grob-interface, item-interface, pure-from-neighbor-interface and time-signature-interface.

#### Internals Reference v2.18.2 (稳定分支).