LSR: Update.
[lilypond.git] / scm / define-grob-interfaces.scm
bloba2ee15276fce6a91866e6a3cc3a08c9b9cc730ba
1 ;;;; interface-description.scm -- part of generated backend documentation
2 ;;;;
3 ;;;;  source file of the GNU LilyPond music typesetter
4 ;;;;
5 ;;;; (c) 1998--2009  Han-Wen Nienhuys <hanwen@xs4all.nl>
6 ;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
9 ;; should include default value?
12 (ly:add-interface
13  'accidental-suggestion-interface
14  "An accidental, printed as a suggestion (typically: vertically over a
15 note)."
16  '())
18 (ly:add-interface
19  'bass-figure-interface
20  "A bass figure text."
21  '(implicit))
23 (ly:add-interface
24  'bass-figure-alignment-interface
25  "Align a bass figure."
26  '())
28 (ly:add-interface
29  'bend-after-interface
30  "A doit or drop."
31  '(thickness delta-position))
33 (ly:add-interface
34  'dynamic-interface
35  "Any kind of loudness sign."
36  '())
38 (ly:add-interface
39  'dynamic-line-spanner-interface
40  "Dynamic line spanner."
41  '(avoid-slur))
43 (ly:add-interface
44  'dynamic-text-spanner-interface
45  "Dynamic text spanner."
46  '(text))
48 (ly:add-interface
49  'finger-interface
50  "A fingering instruction."
51  '())
53 (ly:add-interface
54  'fret-diagram-interface
55  "A fret diagram"
56  '(align-dir fret-diagram-details size dot-placement-list
57    thickness))
59 (ly:add-interface
60  'grace-spacing-interface
61  "Keep track of durations in a run of grace notes."
62  '(columns common-shortest-duration))
64 (ly:add-interface
65  'instrument-specific-markup-interface
66  "Instrument-specific markup (like fret boards or harp pedal diagrams)."
67  '(fret-diagram-details harp-pedal-details size thickness))
69 (ly:add-interface
70  'key-cancellation-interface
71  "A key cancellation."
72  '())
74 (ly:add-interface
75  'ligature-bracket-interface
76  "A bracket indicating a ligature in the original edition."
77  '(width thickness height))
79 (ly:add-interface
80  'ligature-interface
81  "A ligature."
82  '())
84 (ly:add-interface
85  'lyric-interface
86  "Any object that is related to lyrics."
87  '())
89 (ly:add-interface
90  'lyric-syllable-interface
91  "A single piece of lyrics."
92  '())
94 (ly:add-interface
95  'mark-interface
96  "A rehearsal mark."
97  '())
99 (ly:add-interface
100  'metronome-mark-interface
101  "A metronome mark."
102  '())
104 (ly:add-interface
105  'multi-measure-interface
106  "Multi measure rest, and the text or number that is printed over it."
107  '(bound-padding))
109 (ly:add-interface
110  'note-name-interface
111  "Note names."
112  '())
114 (ly:add-interface
115  'only-prebreak-interface
116  "Kill this grob after the line breaking process."
117  '())
119 (ly:add-interface
120  'parentheses-interface
121  "Parentheses for other objects."
122  '(padding stencils))
124 (ly:add-interface
125  'percent-repeat-interface
126  "Beat, Double and single measure repeats."
127  '(dot-negative-kern slash-negative-kern slope thickness))
129 (ly:add-interface
130  'piano-pedal-interface
131  "A piano pedal sign."
132  '())
134 (ly:add-interface
135  'piano-pedal-script-interface
136  "A piano pedal sign, fixed size."
137  '())
139 (ly:add-interface
140  'pitched-trill-interface
141  "A note head to indicate trill pitches."
142  '(accidental-grob))
144 (ly:add-interface
145  'rhythmic-grob-interface
146  "Any object with a duration.  Used to determine which grobs are
147 interesting enough to maintain a hara-kiri staff."
148  '())
150 (ly:add-interface
151  'spacing-options-interface
152  "Supports setting of spacing variables."
153  '(spacing-increment shortest-duration-space))
155 (ly:add-interface
156  'stanza-number-interface
157  "A stanza number, to be put in from of a lyrics line."
158  '())
160 (ly:add-interface
161  'string-number-interface
162  "A string number instruction."
163  '())
165 (ly:add-interface
166  'stroke-finger-interface
167  "A right hand finger instruction."
168  '(digit-names))
170 ;;; todo: this is not typesetting info. Move to interpretation.
171 (ly:add-interface
172  'tablature-interface
173  "An interface for any notes set in a tablature staff."
174  '())
176 (ly:add-interface
177  'trill-spanner-interface
178  "A trill spanner."
179  '())
181 (ly:add-interface
182  'trill-pitch-accidental-interface
183  "An accidental for trill pitch."
184  '())
186 (ly:add-interface
187  'unbreakable-spanner-interface
188  "A spanner that should not be broken across line breaks.  Override
189 with @code{breakable=##t}."
190  '(breakable))
192 (ly:add-interface
193  'vertically-spaceable-interface
194  "Objects that should be kept at constant vertical distances.  Typically:
195 @rinternals{VerticalAxisGroup} objects of @rinternals{Staff} contexts."
196  '())