4 (define-public (simple-markup grob props . rest)
5 (Text_item::text_to_molecule grob props (car rest))
8 (define-public (line-markup grob props . rest)
11 (map (lambda (x) (interpret-markup grob props x)) (car rest)))
14 (define (combine-molecule-list lst)
15 (if (null? (cdr lst)) (car lst)
16 (ly:add-molecule (car lst) (combine-molecule-list (cdr lst)))
19 (define-public (combine-markup grob props . rest)
20 (combine-molecule-list (map (lambda (x) (interpret-markup grob props x)) (car rest))))
22 (define-public (bold-markup grob props . rest)
23 (interpret-markup grob (cons (cons '(font-series . bold) (car props)) (cdr props)) (car rest))
26 (define-public (column-markup grob props . rest)
29 (map (lambda (x) (interpret-markup grob props x)) (car rest)))
32 (define-public (music-markup grob props . rest)
33 (ly:find-glyph-by-name
34 (ly:get-font grob (cons '((font-family . music)) props))
38 (define-public (lookup-markup grob props . rest)
39 "Lookup a glyph by name."
40 (ly:find-glyph-by-name
41 (ly:get-font grob props)
45 (define-public (override-markup grob props . rest)
46 "Tack the 1st args in REST onto PROPS."
47 (interpret-markup grob (cons (list (car rest)) props)
51 (set-object-property! (car x) 'markup-signature (cdr x))
53 (list (cons bold-markup 'markup0)
54 (cons column-markup 'markup-list0)
55 (cons line-markup 'markup-list0)
56 (cons combine-markup 'markup0-markup1)
57 (cons simple-markup 'markup0)
58 (cons music-markup 'scm0)
59 (cons override-markup 'scm0-markup1)
60 (cons lookup-markup 'scm0)
63 (define markup-module (current-module))
65 (define-public (lookup-markup-command code)
67 ( (sym (string->symbol (string-append code "-markup")))
68 (var (module-local-variable markup-module sym))
72 (cons (variable-ref var) (object-property (variable-ref var) 'markup-signature))
77 (define-public (brew-new-markup-molecule grob)
78 (interpret-markup grob
79 (Font_interface::get_property_alist_chain grob)
80 (ly:get-grob-property grob 'text)
84 (define (interpret-markup grob props markup)
91 (apply func (cons grob (cons props args)) )
95 (define (new-markup? x)
96 (markup-function? (car x))
99 (define (markup-function? x)
100 (object-property 'markup-signature? x))