"Function to be called inside a \\paper{} block to set the staff size."
(let* ((m (current-module))
(ss (/ sz 4))
- (pt (eval 'pt m))
+ (pt (eval 'pt m))
+
+
+ ;; linear interpolation.
+ (x1 (* 4.125 pt))
+ (x0 (* 5 pt))
+ (f1 (* 0.47 pt))
+ (f0 (* 0.50 pt))
+ (lt (/
+ (+
+ (* f1 (- ss x0))
+ (* f0 (- x1 ss)))
+ (- x1 x0)))
+
(mm (eval 'mm m)))
(module-define! m 'outputscale ss)
(module-define! m 'staffspace ss)
;; !! synchronize with feta-params.mf
- (module-define! m 'linethickness (+ (* 0.3 pt) (* 0.04 ss)))
+ (module-define! m 'linethickness lt)
(module-define! m 'ledgerlinethickness (+ (* 0.5 pt) (/ ss 10)))
(module-define! m 'blotdiameter (* 0.35 pt))
(module-define! m 'interscoreline (* 4 mm))
'(pt mm cm in staffheight staff-space
linewidth indent hsize vsize
staffspace linethickness ledgerlinethickness
- blotdiameter interscoreline))
+ blotdiameter interscoreline leftmargin rightmargin))
))
(define-public (set-global-staff-size sz)
(module-define! m 'indent (/ w 14))
;; page layout - what to do with (printer specific!) margin settings?
- (module-define! m 'top-margin (* 5 mm))
- (module-define! m 'bottom-margin (* 6 mm))
- (module-define! m 'head-sep (* 4 mm))
- (module-define! m 'foot-sep (* 4 mm))))
+ (module-define! m 'topmargin (* 5 mm))
+ (module-define! m 'bottommargin (* 6 mm))
+ (module-define! m 'headsep (* 4 mm))
+ (module-define! m 'footsep (* 4 mm))
+ (module-define! m 'leftmargin #f)
+ (module-define! m 'rightmargin (* 10 mm))))
(define (internal-set-paper-size module name)
(let* ((entry (assoc name paper-alist))
(cond
((not is-bookpaper?)
- (ly:warning "This is not a \\paper {} object:")
- (display module))
+ (ly:warning "This is not a \\paper {} object, ~S"
+ module))
((pair? entry)
(set! entry (eval (cdr entry) module))
(set-paper-dimensions module (car entry) (cdr entry))
(/ val scale))
;; spurious warnings, eg. for hsize, vsize.
-; (ly:warn (format "not a number, ~S = ~S " v val))
+; (ly:warn "not a number, ~S = ~S " v val)
))
dim-vars)