)
)
-(define (grob-description name . interfaces)
- (let* ((ifs (cons general-grob-interface interfaces))
+(define (grob-description . interfaces)
+ (let* ((ifs (cons grob-interface interfaces))
(props (map caddr ifs))
; (prop-typep-pairs (map (lambda (x) (cons (car x) (cadr x)))
; (apply append props)))
(syms (map car ifs))
)
(list (cons 'separator "\n\n\n") ;easy printing.
- (cons 'name name)
(cons 'interfaces syms)
(cons 'interface-descriptions ifs)
; (cons 'interface-descriptions (cadr merged))
(lily-interface
- 'general-grob-interface
+ 'grob-interface
"All grobs support this"
'(
X-offset-callbacks
height
flag-width-function
damping
- default-neutral-direction
+ neutral-direction
thickness
space-function
beamed-stem-shorten
)
)
+(lily-interface
+ 'staff-spacing-interface
+ ""
+ '(
+ ))
+
+(lily-interface
+ 'note-spacing-interface
+ ""
+ '(
+ ))
(lily-interface
'clef-interface
stem-shorten
duration-log
beaming
- default-neutral-direction
+ neutral-direction
stem-end-position
support-head
heads
direction
- stem-length
+ length
style
flag-style
dir-forced
(lily-interface
'accidentals-interface
"Accidentals"
- '(
+ '(accidentals
left-padding
- right-padding
+ right-padding
+ paren-cautionaries
+ cautionary-size
))
'tuplet-bracket-interface
"A bracket with a number in the middle, used for tuplets."
'(
- beams
columns
number-gap
delta-y
tuplet-bracket-visibility
tuplet-number-visibility
- parallel-beam
thick
+ direction
))
but a line break is allowed at that spot.
"
- '( barsize-procedure kern thin-kern hair-thickness thick-thickness glyph bar-size break-glyph-function ))
+ '(bar-size-procedure kern thin-kern hair-thickness thick-thickness glyph bar-size break-glyph-function ))
(lily-interface
(lily-interface
'arpeggio-interface
"Functions and settings for drawing an arpeggio symbol (a wavy line left to noteheads."
- '(stems))
+ '(stems arpeggio-direction))
'lyric-syllable-interface
"a single piece of lyrics"
'(
- word-space
+ word-space
+ alignment
+ ignore-length-mismatch
+ begin-alignment
+ end-alignment
))
+ (lily-interface
+ 'porrectus-interface
+ "A porrectus ligature, joining two note heads into a single grob."
+ '(
+ ))
+
+
(lily-interface
'spaceable-element-interface
"An grob (generally a Paper_column) that takes part in the
))
-(ly-eval (cons
+(primitive-eval (cons
'begin
(map (lambda (x) (list 'define (car x) (list 'quote (cdr x))))
all-interfaces)))