[fomus-devel] ongoing improvements....

David Psenicka dpsenick at uiuc.edu
Tue Apr 11 18:12:43 UTC 2006


Mika,

I fixed quite a few things and updated CVS--I'd wait for one more CVS 
update as I make sure I didn't create any new problems :) .  A few 
things I ran across in some of the tests (and some other odds and ends 
that occur to me):

I wouldn't put anything in the "partids" slot in a timesig object yet (I 
saw this in the Segovia and maybe one or two others)--that option is 
there for polymeters which aren't quite implemented yet (it's in the 
main code but not in the backends yet)--actually in the Segovia parts 
the partids indicate part 0 which isn't defined--so the time signatures 
weren't used at all and the default 4/4 was used

Specifying :div '(2) for a 2/4 meter tells fomus not to subdivide the 
measure at all, so it will try to cram everything in the measure into a 
tuplet (I think I should just make this an error--this isn't really 
intended and can only give strange results).

I found a few large numbers in some of the slur/text spanner marks (they 
look more like addresses or indexes)--I'm not sure if that's what you 
want in there.  Originally fomus was supposed to accept any "level" 
numbers and sort it all out (so the numbers that go into these marks 
could actually be treated like IDs for each mark), but I think that 
creates problems and confusion--so now I've changed it so slurs (and any 
other spanner mark that gets a "level" number) should only use one of 
several unique numbers (such as 1 & 2 for two levels of slurs).  Within 
each "level" fomus tries to complete missing start and end marks and 
other problems it finds, so I think this will be less confusing.

The "min-tuplet-dur" setting will affect how nested tuplets are 
created--I set the default to a lower value to get one of the nested 
triplets tests to work correctly--there are at least a few more issues 
to look at involving tuplets (rules for finding them + beaming nested 
tuplets...)

The numbers that go with tremolos are in beat values, so when you 
specified 1/8 (I think you wanted eighth-notes) you got 32nd note 
tremolos (1/8 of a beat)--so to get the eighth-note tremolos (:tremolo 
1/2) is needed (when a quarter note gets the beat).  I apologize, the 
documentation wasn't really clear on this (among other things...  :) ).  
By next update I'll modify the mark to optionally receive a written 
value--this should be more intuitive & flexible.

Forcing tied notes is a good idea (next update I think it'll be 
there--this should be easy to implement)

I've improved staff-distribution a little (actually a lot--the Segovia 
looks a little rough, but that's to be expected)--I should add a way to 
force staff decisions for individual notes and entire voices--at some 
point I plan to have presets for handling different types of material 
(for example presets for melodic lines, regular rhythms, complex 
rhythms, etc.), presets for ea. voice would be worthwhile.  Staff and 
voice distribution might be awkward for a little while as I tweak them 
further...

I decided to make tuplet spelling (7 in time of 4 vs. 7 in time of 8, 
etc.) user controllable, so the default is now is the power-of-2 rule 
which can be overriden by the "default-tuplets" setting (ex. 
:default-tuplets '((7 8) (31 32)) specifies you want 7 in the time of 8 
not 4, etc..)

I need to look at the Rite of Spring test some more--there's some 
strange issue (I think) w/ Lilypond shortening slurs...  Probably my 
fault but I'm not sure yet.

-David



More information about the Fomus-devel mailing list