]> git.donarmstrong.com Git - lilypond.git/blob - scm/define-grob-interfaces.scm
Resolve.
[lilypond.git] / scm / define-grob-interfaces.scm
1 ;;;; interface-description.scm -- part of generated backend documentation
2 ;;;;
3 ;;;;  source file of the GNU LilyPond music typesetter
4 ;;;;
5 ;;;; (c) 1998--2007  Han-Wen Nienhuys <hanwen@xs4all.nl>
6 ;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
7
8
9 ;; should include default value?
10
11
12 (ly:add-interface
13  'accidental-suggestion-interface
14    "An accidental, printed as a suggestion (typically: vertically over a note)"
15    '())
16
17
18 (ly:add-interface
19  'bass-figure-interface
20  "A bass figure text"
21  '(implicit))
22
23 (ly:add-interface
24  'bend-after-interface
25  "A doit or drop."
26  '(thickness delta-position))
27
28 (ly:add-interface
29  'bass-figure-alignment-interface
30  ""
31  '())
32
33 (ly:add-interface
34  'dynamic-interface
35    "Any kind of loudness sign"
36    '())
37
38 (ly:add-interface
39  'dynamic-line-spanner-interface
40    "Dynamic line spanner"
41    '(avoid-slur))
42
43 (ly:add-interface
44  'finger-interface
45  "A fingering instruction"
46  '())
47
48 (ly:add-interface
49  'fret-diagram-interface
50  "A fret diagram"
51  '(align-dir barre-type dot-color dot-radius finger-code fret-count
52   label-dir number-type size string-count
53   string-fret-finger-combinations thickness))
54
55 (ly:add-interface
56  'grace-spacing-interface
57  "Keep track of durations in a run of grace notes."
58  '(columns common-shortest-duration))
59
60 (ly:add-interface
61  'ligature-interface
62  "A ligature"
63  '())
64
65 (ly:add-interface
66  'key-cancellation-interface
67  "A key cancellation"
68  '())
69
70 (ly:add-interface
71  'ligature-bracket-interface
72  "A bracket indicating a ligature in the original edition"
73  '(width thickness height))
74
75
76 (ly:add-interface
77  'lyric-syllable-interface
78  "a single piece of lyrics"
79  '())
80
81 (ly:add-interface
82  'lyric-interface
83  "Any object that is related to lyrics."
84  '())
85
86 (ly:add-interface
87  'mark-interface
88  "a rehearsal mark"
89  '())
90
91 (ly:add-interface
92  'metronome-mark-interface
93  "a rehearsal mark"
94  '())
95
96 (ly:add-interface
97  'multi-measure-interface
98  "Multi measure rest, and the text or number that is printed over it."
99  '(bound-padding))
100
101 (ly:add-interface
102 'note-name-interface
103  "Note name"
104  '(style))
105
106 (ly:add-interface
107  'only-prebreak-interface
108  "Kill this grob after the line breaking process."
109  '())
110
111 (ly:add-interface
112  'parentheses-interface
113  "Parentheses for other objects"
114  '(padding))
115
116 (ly:add-interface
117  'piano-pedal-interface
118  "A piano pedal sign"
119  '())
120
121 (ly:add-interface
122  'piano-pedal-script-interface
123  "A piano pedal sign, fixed size"
124  '())
125
126 (ly:add-interface
127  'pitched-trill-interface
128    "A note head to indicate trill pitches"
129    '(accidental-grob))
130
131 (ly:add-interface
132  'trill-pitch-accidental-interface
133  "An accidental for trill pitch"
134  '(accidentals))
135
136 (ly:add-interface
137  'rhythmic-grob-interface
138  "Any object with a rhythmic basis. Used to determine which grobs
139 are interesting enough to maintain a hara-kiri staff."
140  '())
141
142
143 (ly:add-interface
144  'spacing-options-interface
145  "Supports setting of spacing variables"
146  '(spacing-increment shortest-duration-space))
147
148 (ly:add-interface
149  'stanza-number-interface
150  "A stanza number, to be put in from of a lyrics line"
151  '())
152
153 (ly:add-interface
154  'string-number-interface
155  "A string number instruction"
156  '())
157
158 (ly:add-interface
159  'stroke-finger-interface
160  "A right hand finger instruction"
161  '(digit-names))
162
163 (ly:add-interface
164  'system-start-text-interface
165  "A text at the beginning of a system."
166  '(text long-text collapse-height style))
167
168 ;;; todo: this is not typesetting info. Move to interpretation.
169 (ly:add-interface
170  'tablature-interface
171  "An interface for any notes set in a tablature staff"
172  '())
173
174 (ly:add-interface
175  'vertically-spaceable-interface
176  "Objects that should be kept at constant vertical distances. Typically:
177 @internalsref{VerticalAxisGroup} objects of @internalsref{Staff} contexts."
178  '())