* lily/stem-engraver.cc (make_stem):
robustify property lookup for tremolo-type (ensures compilation can
continue even if there is an error inside make-repeat which prevents
correct calculation)
* scm/music-functions.scm (make-repeat):
don't filter out child music which uses the 'element property
--- /dev/null
+\version "2.13.34"
+
+\header {
+ texidoc = "Tremolos work with chord repetitions."
+}
+
+\relative c' {
+ <c e g>1
+ \repeat tremolo 4 q16
+ \repeat tremolo 4 { q16 }
+ \repeat tremolo 4 { c16 q16 }
+}
if (tremolo_ev_)
{
/* Stem tremolo is never applied to a note by default,
if (tremolo_ev_)
{
/* Stem tremolo is never applied to a note by default,
- is must me requested. But there is a default for the
+ it must be requested. But there is a default for the
- the first and last (quarter) note bothe get one tremolo flag. */
+ the first and last (quarter) note both get one tremolo flag. */
- = scm_to_int (tremolo_ev_->get_property ("tremolo-type"));
+ = robust_scm2int (tremolo_ev_->get_property ("tremolo-type"), 0);
SCM f = get_property ("tremoloFlags");
if (!requested_type)
{
SCM f = get_property ("tremoloFlags");
if (!requested_type)
{
(set! (ly:music-property r 'repeat-count) (max times 1))
(set! (ly:music-property r 'elements) talts)
(if (and (equal? name "tremolo")
(set! (ly:music-property r 'repeat-count) (max times 1))
(set! (ly:music-property r 'elements) talts)
(if (and (equal? name "tremolo")
- (pair? (ly:music-property main 'elements)))
+ (or (pair? (ly:music-property main 'elements))
+ (ly:music? (ly:music-property main 'element))))
;; This works for single-note and multi-note tremolos!
(let* ((children (if (music-is-of-type? main 'sequential-music)
;; \repeat tremolo n { ... }
;; This works for single-note and multi-note tremolos!
(let* ((children (if (music-is-of-type? main 'sequential-music)
;; \repeat tremolo n { ... }
(let* ((props (ly:music-mutable-properties music))
(old-name (ly:music-property music 'name))
(flattened (flatten-alist props)))
(let* ((props (ly:music-mutable-properties music))
(old-name (ly:music-property music 'name))
(flattened (flatten-alist props)))
(set! music (apply make-music (cons 'UnfoldedRepeatedMusic
flattened)))
(set! music (apply make-music (cons 'UnfoldedRepeatedMusic
flattened)))