1 ; Definition of backend properties (aka. element properties).
3 ;; See documentation of Item::visibility_lambda_
4 (define (begin-of-line-visible d) (if (= d 1) '(#f . #f) '(#t . #t)))
5 (define (end-of-line-visible d) (if (= d -1) '(#f . #f) '(#t . #t)))
6 (define (spanbar-begin-of-line-invisible d) (if (= d -1) '(#t . #t) '(#f . #f)))
7 (define (all-visible d) '(#f . #f))
8 (define (all-invisible d) '(#t . #t))
9 (define (begin-of-line-invisible d) (if (= d 1) '(#t . #t) '(#f . #f)))
10 (define (end-of-line-invisible d) (if (= d -1) '(#t . #t) '(#f . #f)))
13 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
15 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
18 ; How should a bar line behave at a break?
20 ;; Why prepend `default-' to every scm identifier?
21 (define (default-break-barline glyph dir)
22 (let ((result (assoc glyph
23 '((":|:" . (":|" . "|:"))
24 ("||:" . ("||" . "|:"))
26 ("||:" . ("||" . "|:"))
31 ;; hmm... should we end with a barline here?
35 (".|." . (".|." . ()))
38 ("brace" . (() . "brace"))
39 ("bracket" . (() . "bracket"))
43 (if (equal? result #f)
44 (ly-warn (string-append "Unknown bar glyph: `" glyph "'"))
45 (index-cell (cdr result) dir))
49 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
50 ; Prefatory matter: break align item.
51 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
54 ;; rules for this spacing are much more complicated than this.
55 ;; See [Wanske] page 126 -- 134, [Ross] pg 143 -- 147
58 ;; documentme: difference between extra-space and minimum-space-pair
60 ;; (Measured in staff space)
61 (define default-break-align-space-alist
63 ((none Instrument_name) . (extra-space 1.0))
64 ((none Left_edge_item) . (extra-space 0.0))
65 ((none Clef_item) . (minimum-space-pair 1.0))
66 ((none Staff_bar) . (minimum-space-pair 0.0))
67 ((none Clef_item) . (minimum-space-pair 1.0))
68 ((none Key_item) . (minimum-space-pair 0.5))
69 ((none Time_signature) . (extra-space 0.0))
70 ((none Breathing_sign) . (minimum-space-pair 0.0))
77 ((none begin-of-note) . (minimum-space-pair 1.5))