lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: complex time signatures: scheme help


From: Mark Polesky
Subject: Re: complex time signatures: scheme help
Date: Fri, 14 Aug 2009 14:59:36 -0700 (PDT)

James E. Bailey wrote:
> Apparently this is where Scheme is necessary. I've found the one
> that makes it
> 3+3+2
> 8 8 8
>
> in the documentation but I don't understand how to make the change.
>
> Can someone just do that for me?

Umm, that's probably not the best way of asking for help... We
usually prefer "can someone point me in the right direction" or
something like that...

The example you're referring to is called "Compound time
signatures" on this page:
http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Displaying-rhythms#Time-signature

Anyway, look at the scheme code. The compound-time procedure takes
three arguments, one two and num. In the doc example, the stencil
override is:
#(compound-time "2" "3" "8")
That means one is "2", two is "3", and num is "8".

You see where it says (#:column (one num)) in the scheme
procedure? That means that those two arguments (one and num) are
put in a column:
2
8

You see where it says #:vcenter "+"? That means that the "+" is
put in the vertical center. You can see what happens when you
remove the #:vcenter command.

So, you have to make a couple of changes.

1) you need another argument in your scheme procedure (3+2+2 as
   compared to 2+3).
   * you might call this additional argument "three"
   * logically, you should probably put it between "two" and "num"

2) so now you need to make sure you pass four values to the
   procedure within your music expression, instead of the 3 values
   there now.
   (you need to change this)... #(compound-time "2" "3" "8")

3) decide if you want
   (#:column (one num))
   ...or just...
   one
   etc.

4) decide if you want to keep the #:vcenter command

5) somehow incorporate your new argument (three) in with the rest
   of the arguments.


Let me know if you're still having trouble after trying this.
- Mark


      




reply via email to

[Prev in Thread] Current Thread [Next in Thread]