- (format #f "~a\\tweak #'~a #~a"
- (if post-event? "-" "")
- (car tweak)
- (scheme-expr->lily-string (cdr tweak))))
+ (let ((addr (car tweak))
+ (val (cdr tweak)))
+ (format #f "~a\\tweak ~a #~a"
+ (if post-event? "-" "")
+ (cond
+ ((symbol? addr)
+ (format #f "~a" addr))
+ ((symbol? (cdr addr))
+ (format #f "~a.~a" (car addr) (cdr addr)))
+ (else
+ (format #f "~{~a~^.~}"
+ (if (symbol? (car addr))
+ addr
+ (cdr addr)))))
+ (scheme-expr->lily-string val))))