Node: Engravers and performers, Next: , Previous: Defining contexts, Up: Interpretation context



Engravers and performers

Each context is composed of a number of building blocks, or plug-ins called engravers. An engraver is a specialized C++ class that is compiled into the executable. Typically, an engraver is responsible for one function: the Slur_engraver creates only Slur objects, and the Skip_event_swallow_translator only swallows (silently gobbles) SkipEvents.

An existing context definition can be changed by adding or removing an engraver. The syntax for these operations is

     \consists engravername
     \remove engravername
     

Here engravername is a string, the name of an engraver in the system. In the following example, the Clef_engraver is removed from the Staff context. The result is a staff without a clef, where the central C is at its default position, the center line:

     \score {
       \notes {
         c'4 f'4
       }
       \paper {
         \translator {
           \StaffContext
           \remove Clef_engraver
         }
       }
     }
     

[picture of music]

A list of all engravers is in the internal documentation, see All engravers.


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

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