【发布时间】:2018-08-26 20:35:45
【问题描述】:
我正在尝试在 Lilypond 中编写函数,该函数将和弦(或音高列表)作为参数并返回将所述和弦插入节奏的音乐。更具体地说,我希望以如下方式调用该函数:
\chordFunction <c ef f af>
% or
\chordFunction #'(c ef f af)
并像这样返回 Lilypond 代码:
\tuplet 3/2 {<c ef f af>4 <c ef f af>8~} <c ef f af>2
jazzsyncoA =
#(define-music-function
(parser location chord)
(symbol-list-or-music?)
#{
\tuplet 3/2 {$<chord>4 $<chord>8~} $<chord>2
#}
)
但这会引发
error: GUILE signaled an error for the expression beginning here
\tuplet 3/2 {$
<chord>4 $<chord>8~} $<chord>2
当我尝试调用时出现其他错误。我应该如何编写函数来完成这个?我是否不正确地处理问题?
我查看了Lilypond docs on predefined type predicates,但我无法识别任何潜在用途。
【问题讨论】:
标签: scheme guile lilypond music-notation