Next: , Previous: Navigating the program reference, Up: Tuning output



4.3.4 Layout interfaces

Fingering is a layout object. Such an object is a symbol within the score. It has properties, which store numbers (like thicknesses and directions), but also pointers to related objects. A layout object is also called grob, which is short for Graphical Object.

The page for Fingering lists the definitions for the Fingering object. For example, the page says

padding (dimension, in staff space):

0.6

which means that the number will be kept at a distance of at least 0.6 of the note head.

Each layout object may have several functions as a notational or typographical element. For example, the Fingering object has the following aspects

Each of these aspects is captured in a so-called interface, which are listed on the Fingering page at the bottom

This object supports the following interfaces: item-interface, self-alignment-interface, side-position-interface, text-interface, text-script-interface, font-interface, finger-interface, and grob-interface.

Clicking any of the links will take you to the page of the respective object interface. Each interface has a number of properties. Some of them are not user-serviceable (“Internal properties”), but others are.

We have been talking of `the' Fingering object, but actually it does not amount to much. The initialization file scm/define-grobs.scm shows the soul of the `object',

   (Fingering
     . (
	(print-function . ,Text_item::print)
	(padding . 0.6)
	(staff-padding . 0.6)
	(self-alignment-X . 0)
	(self-alignment-Y . 0)
	(script-priority . 100)
	(font-encoding . number)
	(font-size . -5)
	(meta . ((interfaces . (finger-interface font-interface
               text-script-interface text-interface
               side-position-interface self-alignment-interface
               item-interface))))
  ))

as you can see, Fingering is nothing more than a bunch of variable settings, and the webpage is directly generated from this definition.

Read comments on this page, or add one.

This page is for LilyPond-2.2.6 (stable-branch).

Report errors to <bug-lilypond@gnu.org>.