使用 Lilypond 围绕五度圈转置模式
use Lilypond to transpose pattern around circle of fifths
我想提供一个模式(例如,C 大调琶音、C E G)并让 Lilypond 自动显示它在所有 12 个音阶中的移调(作为一个乐谱)。
这是我目前的尝试:
music = { c' e' g' s }
\new Staff {
\transpose c c { \music }
\transpose c f { \music }
\transpose c bes { \music }
\transpose c ees { \music }
\transpose c aes { \music }
\transpose c des { \music }
\transpose c fis { \music }
\transpose c b { \music }
\transpose c e { \music }
\transpose c a { \music }
\transpose c d { \music }
\transpose c g { \music }
}
我不知道如何在每个模式上方添加文本以指示移调键(例如,C、F、Bb 等...)。我希望最终产品看起来像这样:
注意:无论模式的长度如何(可以长于一个小节),我都希望此代码能够正常工作。
如果你想要自动音名,可以通过移调和弦来实现。这样的事情会产生与您所展示的相似的结果。它既不简单也不优雅,但它是自动的,因为你不需要事先知道目标和弦。
\version "2.19.31"
cOne=\chordmode {c1}
mOne={ c'4 e' g' s }
<<
\new ChordNames{
\transpose c f {\transpose c f { \cOne }}
\transpose c f { \cOne }
\cOne
\transpose c g { \cOne }
\transpose c g { \transpose c g { \cOne }}
\transpose c g { \transpose c g { \transpose c g { \cOne }}}
}
\new Staff {
\transpose c f, {\transpose c f { \mOne }}
\transpose c f { \mOne }
\mOne
\transpose c g { \mOne }
\transpose c g, { \transpose c g { \mOne }}
\transpose c g, { \transpose c g { \transpose c g { \mOne }}}
}
>>
我想提供一个模式(例如,C 大调琶音、C E G)并让 Lilypond 自动显示它在所有 12 个音阶中的移调(作为一个乐谱)。
这是我目前的尝试:
music = { c' e' g' s }
\new Staff {
\transpose c c { \music }
\transpose c f { \music }
\transpose c bes { \music }
\transpose c ees { \music }
\transpose c aes { \music }
\transpose c des { \music }
\transpose c fis { \music }
\transpose c b { \music }
\transpose c e { \music }
\transpose c a { \music }
\transpose c d { \music }
\transpose c g { \music }
}
我不知道如何在每个模式上方添加文本以指示移调键(例如,C、F、Bb 等...)。我希望最终产品看起来像这样:
注意:无论模式的长度如何(可以长于一个小节),我都希望此代码能够正常工作。
如果你想要自动音名,可以通过移调和弦来实现。这样的事情会产生与您所展示的相似的结果。它既不简单也不优雅,但它是自动的,因为你不需要事先知道目标和弦。
\version "2.19.31"
cOne=\chordmode {c1}
mOne={ c'4 e' g' s }
<<
\new ChordNames{
\transpose c f {\transpose c f { \cOne }}
\transpose c f { \cOne }
\cOne
\transpose c g { \cOne }
\transpose c g { \transpose c g { \cOne }}
\transpose c g { \transpose c g { \transpose c g { \cOne }}}
}
\new Staff {
\transpose c f, {\transpose c f { \mOne }}
\transpose c f { \mOne }
\mOne
\transpose c g { \mOne }
\transpose c g, { \transpose c g { \mOne }}
\transpose c g, { \transpose c g { \transpose c g { \mOne }}}
}
>>