LilyPond program-reference: 3.1.25 Clef

### 3.1.25 Clef

Clef objects are created by: Clef_engraver.

Standard settings:

> `stencil` (unknown):

>   `ly:clef::print`

>   The symbol to print.

> `non-musical` (boolean):

>   `#t`

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

> `avoid-slur` (symbol):

>   `'inside`

>   Method of handling slur collisions. Choices are `around`, `inside`, `outside`. If unset, scripts and slurs ignore each other. `around` only moves the script if there is a collision; `outside` always moves the script.

> `font-family` (symbol):

>   `'music`

>   The font family is the broadest category for selecting text fonts. Options include: `sans`, `roman`.

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

>   `'clef`

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

> `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-visibility` (vector):

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

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

> `space-alist` (list):

>   `'((ambitus extra-space . 2.0) (staff-bar extra-space . 0.7) (key-cancellation minimum-space . 3.5) (key-signature minimum-space . 3.5) (time-signature minimum-space . 4.2) (first-note minimum-fixed-space . 5.0) (next-note extra-space . 0.5) (right-edge extra-space . 0.5))`

>   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`.

> `Y-offset` (number):

>   `ly:staff-symbol-referencer::callback`

>   The vertical amount that this object is moved relative to its Y-parent.

This object supports the following interface(s): staff-symbol-referencer-interface, item-interface, font-interface, clef-interface, break-aligned-interface and grob-interface.

#### Internals Reference