Лилипонд: Настроить линии баров, рекурсивно, автоматически? - PullRequest
2 голосов
/ 03 апреля 2010

Я работаю над музыкальными партитурами Carnatic, которые включают сложные временные подписи, для которых потребуются измененные линии линий

Шаблон для линий для: 8/4

beats: 1 2 3 4  (dashed bar here) 5, 6 (Dotted Bar) 7, 8 (double bar)  

Вот одна строка с фактическим счетом

g16( f) d8 ees( ees) d16( c d8) bes16[( d c bes    \bar "dashed"
a g]) a[( bes c] d[ c d])   \bar ":"   
g8( f16) ees8( d16 c d)     \bar "||"

Есть ли способ автоматизировать эти линии?

1 Ответ

2 голосов
/ 15 мая 2010

Дайте это попробовать. Он не полностью автоматизирован, так как вам нужен выделенный «невидимый» голос для указания строк, и вам нужно отслеживать, сколько мер нужно расширить этой форме запрета, и указать соответствующее значение раскрытия. «S», если вы еще не знаете, - это невидимая спейсерная, с продолжительностью, подобной отдыху.

\version "2.13.19"

fooBar = { s1 \bar "dashed" s2 \bar ":" s2 \bar "||" }

\new Staff <<
  \new Voice = "theMusic" \relative c'' {
    % bar 1
    g16( f) d8 ees( ees) d16( c d8) bes16[( d c bes 
    a g]) a[( bes c] d[ c d]) 
    g8( f16) ees8( d16 c d) 
    % bar 2
    g16( f) d8 ees( ees) d16( c d8) bes16[( d c bes 
    a g]) a[( bes c] d[ c d]) 
    g8( f16) ees8( d16 c d)
  }
  \new Voice = "theBarLines" { \repeat unfold 2 \fooBar }
>>
...