hi david, this example using :staff doesn't seem to work as i think it should... it seems that it doesn't obey the :staff mark unless there is nothing going on at the same offset time - at the last note for example. i have even tried putting the parts in different voices but they still seem to interfere with one another. thanks rob
(init :output ((:musicxml-finale :filename "test.xml")(:lilypond :view t)) :filename "test" :title "test" :subtitle "for-harpsichord-and-prepared-piano" :composer "rob canning" :auto-accidentals NIL :auto-cautionary-accs t :tuplet-style :ratio :verbose 2 :max-tuplet 11); TIMESIG :OFF 0 :TIME (4 4); part 1 :name "harpsichord" :abbrev "harpsichord" :instr :harpsichord ; (note 1 :voice 2 :off 0 :dur 0.25 :notes (84) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 0 :dur 0.5 :notes (81) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 0.25 :dur 0.25 :notes (85) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 0.5 :dur 0.25 :notes (83) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 0.5 :dur 0.25 :notes (86) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 0.75 :dur 0.25 :notes (84) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 0.75 :dur 0.25 :notes (87) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 1 :dur 0.25 :notes (86) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 1 :dur 0.25 :notes (88) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 1.25 :dur 0.25 :notes (89) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 1.25 :dur 0.25 :notes (89) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 1.5 :dur 0.25 :notes (80) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 1.5 :dur 0.25 :notes (90) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 1.75 :dur 0.25 :notes (81) :marks (:staccato :ppp (:staff 1))); (note 1 :voice 2 :off 1.75 :dur 0.25 :notes (91) :marks (:staccato :ppp (:staff 2))); (note 1 :voice 1 :off 2 :dur 0.25 :notes (83) :marks (:staccato :ppp (:staff 1)));
dpsenick@uiuc.edu wrote:
Rob,
The lisp documentation won't be helpful at all unless you work with lisp--lisp has a built in function "describe" that calls up brief documentation strings for functions if they exist
You can force the staff using a :STAFF mark (like this: (:staff 1) or (:staff 2) --you should also be able to specify a choice (:staff 1 2) (:staff 2 3) (maybe useful for notating a piano part onto 3 staves, etc..) Soon it'll get easier as I put some of these things into parts and instruments--right now you have to stick it in every note or put (:startstaff- 1) in the very first note
I'll put more examples up soon (plus organize the ones that are there now) The examples pages will soon evolve into an indexed list with keywords (click on "staves" and see three or four examples of how to control staves, etc..)
Since I'm (slowly) getting in the last of the main feature I originally wanted to put in, I'd be curious to know what I should start improving in general (besides documentation)... Here is my list in more or less order of priority:
Finishing up: Polymeters (I'm getting to this now...) "Chunks" (should be working now--can use them to output different sections of the score with completely different settings)
Improvements: tuplets (finding, notating correctly, etc.) speed (large orchestra-size score still can take a while, especially if the notation is complex--I've thought of porting the whole program but I don't think it's worth the effort)
Additions: FOMUS as a Finale plugin (as an alternative to XML importing) GUI interface showing updated score samples structures such as "chord," "sequence" or other similar structures that will make it easier to specify information more efficiently
-David
---- Original message ----
Date: Tue, 19 Jun 2007 17:25:45 +0000 From: rob canning robcanning@eircom.net Subject: :staff To: David Psenicka dpsenick@uiuc.edu Cc: fomus-devel@common-lisp.net
hi!
i can't figure out how to get at the lisp documentation (i never use lisp directly)
could someone help me out with an example...
how to force the low A appearing in the lower staff to appear in the upper staff with the relevant clef change
part 1 :name "harpsichord" :abbrev "harpsichord" :instr :harpsichord;
(note 1 :voice 2 :off 0 :dur 0.25 :notes (45) :marks (:staccato :ppp)); (note 1 :voice 2 :off 0.5 :dur 0.25 :notes (86) :marks (:staccato));
can this be done as a :mark or does it have to be set as an :init default
it would nice to see an example of a bar of single line cross stave writing followed by a bar of two part :staff forced writing with both staffs exploiting both bass and treble clef
thanks
rob
David Psenicka wrote:
v0.2.26 Improvements to spanners Some documentation that can be called up by the Lisp DOCUMENTATION function :STAFF, :STARTSTAFF-, :STAFF-, :ENDSTAFF- marks to override staff choices _______________________________________________ fomus-devel mailing list fomus-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/fomus-devel
fomus-devel mailing list fomus-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/fomus-devel