LilyPond Internals Reference: 3.2.106 paper-column-interface

### 3.2.106 `paper-column-interface`

`Paper_column` objects form the top-most X parents for items. There are two types of columns: musical and non-musical, to which musical and non-musical objects are attached respectively. The spacing engine determines the X positions of these objects.

They are numbered, the first (leftmost) is column 0. Numbering happens before line breaking, and columns are not renumbered after line breaking. Since many columns go unused, you should only use the rank field to get ordering information. Two adjacent columns may have non-adjacent numbers.

The `paper-column-interface` implies the `item-interface`.

#### User settable properties:

`labels` (list)

  List of labels (symbols) placed on a column.

`rhythmic-location` (rhythmic location)

  Where (bar number, measure position) in the score.

`used` (boolean)

  If set, this spacing column is kept in the spacing problem.

`when` (moment)

  Global time step associated with this column.

#### Internal properties:

`bounded-by-me` (array of grobs)

  An array of spanners that have this column as start/begin point. Only columns that have grobs or act as bounds are spaced.

`maybe-loose` (boolean)

  Used to mark a breakable column that is loose if and only if it is in the middle of a line.

`spacing` (graphical (layout) object)

  The spacing spanner governing this section.

This grob interface is used in the following graphical object(s): `NonMusicalPaperColumn` and `PaperColumn`.

#### LilyPond – Internals Reference v2.24.4 (stable-branch).