FOMUS can "splice" together the outputs of two or more runs of the FOMUS
command. This allows sections or parts ("chunks") to be produced separately and put together later into a complete score. This allows the user
to use different arguments and settings values with different sections of the score.
This feature is unstable at the moment.
FOMUS outputs a chunk object automatically on each successful run of the FOMUS
command.
If no outputs are specified, then :CHUNK
or :NONE
must be given as a backend.
A chunk is actually all of the measures in the processed output that contain anything other than a measure rest (ie. all of the measures that
contain notation). A chunk can then be either a part, several parts in a range of measures, every odd measure, etc..
Chunks can only be merged together if there are no notational overlaps. (At the moment, chunks can't be "relocated" or given an offset--this
will be added soon.) FOMUS considers parts with matching
PARTID
values to be the same and will match them accordingly. Chunks may contain
parts that aren't in other chunks--FOMUS matches and adds parts into one score and reorders them again after merging.
There are several ways to tell FOMUS to merge chunks. Some examples are given here in both Lisp and command-line syntax:
Example 3.14. FOMUS Usage 13
(fomus (list (fomus ...arguments_for_chunk1...) (fomus ...arguments_for_chunk2...)) :filename "path_to/myoutputfile" :output :musicxml-finale)
Example 3.15. FOMUS Usage 14
(fomus (list (fomus ...arguments_for_chunk1...) "path_to/myfomusfile_chunk2.fms") :filename "path_to/myoutputfile" :output :cmn)
Example 3.16. FOMUS Usage 15
fomus -lw path_to/myfomusfile_chunk1.fms path_to/myfomusfile_chunk2.fms path_to/myfomusfile_chunk3.fms
In each case, two or three chunks are either created from another FOMUS
command or read in from an input file. The chunks are then combined together and output as one file.