【问题标题】:use Lilypond to transpose pattern around circle of fifths使用 Lilypond 围绕五度圈转置模式
【发布时间】:2015-12-16 03:47:17
【问题描述】:

我想提供一个模式(例如,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 等...)。我希望最终产品看起来像这样:

注意:无论模式的长度如何(可能比一个度量长),我都希望此代码能够正常工作。

【问题讨论】:

    标签: lilypond typesetting music-notation


    【解决方案1】:

    如果你想要自动的音符名称,可以通过移调和弦来实现。这样的事情会产生与您显示的结果相似的结果。它并不简单和优雅,但它是自动的,因为您不需要事先知道目标和弦。

    \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 }}}
      }
    >>
    

    【讨论】:

    • 谢谢你,@Paco,这非常好。剩下的唯一问题是使其适用于长于一个度量的模式。目前,如果将cOne = \chordmode {c1} 设置为两个小节模式(例如,mOne = { c'4 e' g' g' e' c' s s }),和弦名称的移动速度会比模式快。无论模式的长度如何,我都希望和弦名称和模式自动对齐(即,我不想为两个小节模式输入cOne = \chordmode {c1 s})。
    猜你喜欢
    • 2016-12-25
    • 2011-10-13
    • 1970-01-01
    • 2019-04-25
    • 2021-08-10
    • 2020-10-02
    • 2018-07-01
    • 1970-01-01
    相关资源
    最近更新 更多