Alphabetical Listing of Settings
Prev | Chapter 5. Settings | Next

## Alphabetical Listing of Settings

`:ACC-CAUT-ACC-DIST`

  This number represents the maximum distance a cautionary accidental may be from the note that causes it.

`:ACC-THROUGHOUT-MEAS`

  If set to `T`, accidentals carry to the end of the measure. If set to `NIL`, accidentals affect only the note they precede.

`:AUTO-ACCIDENTALS`

  If set to `T`, FOMUS automatically determines note spellings. If set to `NIL`, a generic set of note spellings is used (all notes receive flats except for F sharp). The user may supply note spellings to override FOMUS's spellings.

`:AUTO-ACCS-MODULE`

  Designates which module is to be used for determining note spellings. FOMUS's built-in values are `T`, `:ACC1`, `T` represents the default module and is equivalent to `:ACC1`.

`:AUTO-BEAM-MODULE`

  Designates which module is to be used for beaming. FOMUS's built-in values are `T` and `:BEAMS1`. `T` represents the default module and is equivalent to `:BEAMS1`.

`:AUTO-BEAMS`

  If set to `T`, FOMUS determines beaming based on time signature information and decisions it makes regarding irregular measure divisions. If set to `NIL`, beaming decisions are made by the backend notation program.

`:AUTO-CAUTIONARY-ACCS`

  If set to `T`, FOMUS inserts several different kinds of cautionary accidentals. The user can supply her own cautionary accidentals with the `:CAUTACC` mark.

`:AUTO-DISTR-RESTS-MODULE`

  Designates which module is to be used for determining how rests are distributed among staves. FOMUS's built-in values are `T` and `:RESTS1`. `T` represents the default module and is equivalent to `:RESTS1`.

`:AUTO-DYN-NODUP`

  If set to `T`, indicates that FOMUS should eliminate all redundant dynamic markings.

`:AUTO-GRACE-SLURS`

  If set to `T`, FOMUS automatically puts slurs over all grace notes. If set to `NIL`, the user must supply all grace note slurs with `:STARTGRACESLUR-`, `:GRACESLUR-` and `:ENDGRACESLUR-` marks.

`:AUTO-MULTIVOICE-COMB-MODULE`

  Designates which module is to be used for determining how simultaneous notes from different voices are combined into chords on the same staff. FOMUS's built-in values are `T` and `:COMB1`. `T` represents the default module and is equivalent to `:COMB1`.

`:AUTO-MULTIVOICE-NOTES`

  If set to `T`, FOMUS combines simultaneous notes from different voices into chords.

`:AUTO-MULTIVOICE-RESTS`

  If set to `T`, FOMUS combines equivalent simultaneous rests from different voices into single rests.

`:AUTO-OTTAVAS`

  If set to `T`, FOMUS automatically determines where to place ottava brackets. If set to `NIL`, the user must supply all ottava brackets with `:8UP`, `:8DOWN` and related spanner marks.

`:AUTO-OTTAVAS-MODULE`

  Designates which module is to be used for determining where ottava brackets occur. FOMUS's built-in values are `T` and `:OTTAVAS1`. `T` represents the default module and is equivalent to `:OTTAVAS1`.

`:AUTO-OVERRIDE-TIMESIGS`

  If set to `T`, FOMUS extends or contracts measures within certain bounds, adding new time signatures as necessary to fit measures into the user-supplied time signatures given in the `GLOBAL` or `PARTS` settings. If set to `NIL`, FOMUS simply cuts the last measure (also inserting a new time signature) before a new time signature change, resulting in measures of arbitrary sizes depending on where the cut occurs.

`:AUTO-PERCUSSION-DURS`

  If set to `T`, FOMUS determines the durations of all percussion instruments that have their `AUTODUR` slot set to `T`. Percussion instruments that don't need to be notated precisely with respect to duration are then notated with durations that are simpler to read (without tying together groups of notes).

`:AUTO-PIZZ/ARCO`

  If set to `T`, indicates that FOMUS should convert each consecutive group of `:PIZZ` marks it finds to a single pair of `:PIZZ` and `:ARCO` marks. This makes it easier to notate pizz. and arco changes by simply attaching `:PIZZ` marks where they belong.

`:AUTO-QUANTIZE`

  If set to `T`, FOMUS quantizes offsets and durations so that everything fits into the closest fitting tuplets and beat divisions possible. If set to `NIL`, all offset and duration values must be precise ratios or integers-- floating point numbers are treated with the `RATIONALIZE` function in this case (this isn't recommended). If no quantizing is done and offsets and durations of events don't fit into anything that is "notatable" then FOMUS will complain with an error.

`:AUTO-QUANTIZE-MODULE`

  Designates which module is to be used for quantizing. FOMUS's built-in values are `T`, `:QUANTIZE1-RMSE` and `:QUANTIZE1-AVE`. `:QUANTIZE1-MSE` finds the closest fit to notation by minimizing the root mean squared error between the user's values and possible notational values. `:QUANTIZE1-AVE` finds the closets fit by minimizing average error. `T` represents the default module and is equivalent to `:QUANTIZE1-RMSE`.

`:AUTO-STAFF/CLEF-CHANGES`

  If set to `T`, FOMUS automatically determines staff and clef changes for voices. If set to `NIL`, the user must supply all staff and clef changes with `:STAFF`, `:CLEF` and related marks.

`:AUTO-STAFF/CLEFS-MODULE`

  Designates which module is to be used to determine automatic staff and clef changes. FOMUS's built-in values are `T` and `:STAVES/CLEFS1`. `T` represents the default module and is equivalent to `:STAVES/CLEFS1`.

`:AUTO-VOICES-MODULE`

  Designates which module is to be used for determining how notes are distributed into separate voices. FOMUS's built-in values are `T` and `:VOICES1`. `T` represents the default module and is equivalent to `:VOICES1`.

`:AUTO-VOICING`

  If set to `T`, FOMUS automatically decides how to distribute notes among multiple voices, given the choices specified in the `NOTE`, `REST` and `MARK` objects. If set to `NIL`, the user must specify explicitly which voice an event belongs to.

`:BEAT-DIVISION`

  The value of this setting is used by the quantizing algorithm to determine how to round offsets and durations. If only an integer is given, it represents the number of divisions per beat in a non-compound meter-- the compound meter value is then calculated by multiplying the first number by 3/2. If specified as a list of two integers, the first integer represents the number of divisions per beat in a non-compound meter while the second represents the number of divisions in a compound meter. The first number must be a power of 2 while the second number 3/2 or 3/4 times a power of 2.

  A `BEAT-DIVISION` of 2, for example, tells FOMUS to quantize to eighth-note values (if the current beat is a quarter-note). In a compound 12/4 meter, this setting also tells FOMUS to quantize to an eighth-note value (2 multiplied by 3/2 is 3, and there are 3 eighth-notes per beat). In the same compound 12/4 meter, a setting of `'(4 6)` would cause durations to be quantized to sixteenth notes (there are 6 sixteenth notes per beat).

  `BEAT-DIVISION` specifies only approximately how durations are quantized inside tuplets. It is completely predictable only when the `MAX-TUPLET` setting is set to `NIL` or the notation contains nothing that would generate any kind of tuplet. When tuplets are allowed and FOMUS tries to create them, it divides them into units that are as close as possible in duration to the non-tuplet divisional units. For example, if `BEAT-DIVISION` is set to `16` and it's allowable for FOMUS to try to divide one beat into a septuplet, then it's possible for notes to be quantized to either 16 or 14 divisions per beat (since a septuplet divides evenly into 14 units and 1/14 is the closest septuplet divisional duration to 1/16).

`:CAUT-ACC-NEXT-MEAS`

  When set to `NIL`, indicates that cautionary accidentals may occur only in the same measure as the note that causes them. When set to `1`, specifies that cautionary accidentals may occur only if they are in the measure immediately after the note that causes them. When set to `T` or `2`, specifies that cautionary accidentals may occur in any measure after the note that causes them.

`:CAUT-ACC-OCTAVES`

  When set to `T`, the cautionary accidental algorithm places cautionary accidentals at all octave transpositions from the note that causes them. When set to the integer `1` or greater, specifies the maximum number of octaves a cautionary accidental can be from the note that causes it.

`:CAUT-ACC-OTTAVAS`

  When set to `T`, the cautionary accidental algorithm considers the presence of ottava brackets, placing cautionary accidentals where apparent octave transpositions might cause confusion.

`:CHECK-RANGES`

  When set to `T`, activates a check that prints warnings if it finds notes out of range for their instruments. The `MINP` and `MAXP` slots in the appropriate `INSTR` object must be set for this to have any effect.

`:CM-SCALE`

  If set to `T`, indicates that the value of `CM-SCALE` will be used to parse note symbols (as the value of the `:IN` keyword argument) if CM is present and being used.

`:CMN-VIEW-EXE`

  This is a string specifying the path and filename to the executable for the Common Music Notation viewer application. The full pathname may or may not need to be specified depending on the Lisp implementation. The default application depends on what is installed on the user's machine, and should be an application appropriate for viewing PostScript or EPS files.

`:CMN-VIEW-OPTS`

  This is a list of strings representing options to be passed to the CMN viewer application executable.

`:COMP-LONG-EIGHTH-BEAM-COUNT`

  This is set to an integer greater than `0`, specifying the number of eighth notes that need to be present to be beamed as groups of 6 in compound meters. This setting is only effective if `LONG-EIGHTH-BEAMS` is set to `T`.

`:COMPOSER`

  This is an optional string value containing the composer's name.

`:DEBUG-FILENAME`

  If set to a string, represents the name of a file to which debug information is dumped each time the `FOMUS` function is called. If you wish to report a bug, please send the contents of this file.

`:DEFAULT-BEAT`

  Specifies a default value for the `BEAT` slot of `TIMESIG` objects that are not compound time signatures. This setting is `1/4` by default, specifying that for non-compound meters a quarternote is equivalent to 1 beat. In compound time signatures the beat is always infered from the denominator (for example, in a 12/8 meter the beat is 3/8).

`:DEFAULT-GRACE-DUR`

  If FOMUS needs to convert a note into a grace note, this value is used as the grace note's duration.

`:DEFAULT-GRACE-NUM`

  If FOMUS needs to convert a note into a grace note, this value is used as the grace note's default position number. This value together with the grace note's context determines the actual position (when necessary, FOMUS will increment or decrement this value to determine the actual position number). See the `DUR` slot in class `NOTE` for more information.

`:DEFAULT-INSTR`

  This is a default `INSTR` object to be used in cases when another instrument isn't specified.

`:DEFAULT-MEAS-DIVS`

  This list is a table containing possible ways of dividing measures into smaller segments or divisions. These segments affect how notes are split, tied and beamed. Entries in this list replace entries in FOMUS's own default table if they exist. Each member of this list is itself a list, containing an integer or ratio lookup value as the first element followed by one or more lists of integers/ratios that each add up to the first number.

  Example 5.1. DEFAULT-MEAS-DIVS Setting

      :default-meas-divs
        '((3 (2 1) (1 2))
          (4 (2 2))
          (5 (3 2) (2 3))
          (6 (4 2) (2 4))
          (7 (4 3) (3 4)))

  The numbers in these lists correspond to the number of beats in a measure, multiplied or divided by 2 if necessary. In most cases, only specify integers should be necessary, though ratios may also be used. For example, if a 7/8 measure with a quarter-note beat is processed, FOMUS first tries to lookup a set of divisions using the index number 7/2, then 7, 14, etc.. This way the lookup value `7` is sufficient for any meter with a numerator of 7, though it's possible to supply more specific entries such as `7/2` (for measures that contain 3 + 1/2 beats).

`:DEFAULT-TIMESIG`

  If no time signature is specified in the `GLOBAL` or `PARTS` lists, this default one is used.

`:DEFAULT-TUPLET-DIVS`

  This list is a table containing possible ways of dividing tuplets into smaller segments or divisions. These segments affect how notes are split, tied and beamed. Entries in this replace entries in FOMUS's own default table if they exist. Each member of this list is itself a list, containing an integer lookup value as the first element followed by one or more lists of integers that each add up to the first number.

  Example 5.2. DEFAULT-TUPLET-DIVS Setting

      :default-meas-divs
        '((3 (2 1) (1 2))
          (4 (2 2))
          (5 (3 2) (2 3) (4 1) (1 4))
          (6 (4 2) (2 4))
          (7 (4 3) (3 4)))

  The numbers in this list correspond to numerators of tuplet ratios (or multiples or divisions of two). When FOMUS needs to find possible divisions for a triplet, for example, it uses the entries in the list corresponding to lookup value `3`. If it needs to lookup divisions for a sextuplet, it will first try to lookup the number `6` and then use `3` if an entry for `6` doesn't exist.

`:DEFAULT-TUPLETS`

  This list is a lookup table indicating what ratios FOMUS should use when deciding how to notate tuplets. Each list element is itself a list of two integers specifying a tuplet ratio, or how many durational units should be used in place of another. `'(7 4)` thus specifies that septuplet eighth notes are to be used in place of 4 eighth notes. FOMUS searches this table by finding a match for number of tuplet divisions (the first integer in each pair) and checking the second integer to see if it's appropriate for the context it is in (a power of 2 of the actual number of durational units). Thus, several entries for septuplets might exist: `'(7 4)` for the majority of cases and `'(7 5)` for cases where, for example, 7 eighth notes might span an entire 5/8 measure or a section of a larger tuplet.

  Example 5.3. DEFAULT-TUPLETS Setting

      :default-meas-divs '((3 2) (6 5) (5 4) (7 4) (7 5) (13 8) (13 10))

  The default value is `NIL`. If FOMUS doesn't find an entry for a tuplet division here, it determines its own depending on the value of `TUPLET-FUNCTION`.

`:DOTTED-NOTE-LEVEL`

  Indicates how dotted notes are allowed to appear. Possible values are `T`, `:ALL`, `:TOP` and `:SIG`. `:ALL` specifies that they can appear anywhere, `:TOP` specifies that they can appear only if they occupy an entire measure, and `:SIG` specifies that they can appear if they occupy durations larger than a beat. `T` is equivalent to `:ALL`.

`:DOUBLE-DOTTED-NOTES`

  If set to `T`, indicates that double-dotted notes are allowed.

`:EFFECTIVE-GRACE-DUR-MUL`

  If FOMUS needs to determine the effective duration of a grace note (for scoring or comparison purposes), it multiplies the value of this setting with the duration given in the grace note's `DUR` slot.

`:ENSEMBLE-TYPE`

  This setting determines how parts are both ordered and grouped together with brackets and barlines in the score. Setting this to a symbol specifies a lookup value for a ordering/grouping table entry specified in the `INSTR-GROUPS` setting or FOMUS's own default table. It may also be set to an ordering/grouping data structure, in which case this specified ordering/grouping is used instead. An ordering/grouping data structure is a list of symbols or nested lists of symbols that specify both the groups and the layout order of parts. A symbol specifies an instrument while a list contains a group type (a symbol designating what type of bracket is to appear on the left-hand margin of the score and how barlines are to appear) followed by more instrument symbols or lists (see the example below). A group type is one of the symbols `:GROUP`, `:GRANDSTAFF` or `:CHOIRGROUP`.

  A look at the following examples might make this clearer:

  Example 5.4. ENSEMBLE-TYPE Setting 1

      :ensemble-type :orchestra

  Example 5.5. ENSEMBLE-TYPE Setting 2

      :ensemble-type
        '((:my-orchestra
           (:group (:group :piccolo :flute) (:group :oboe :english-horn)
                   (:group :bf-clarinet :a-clarinet :bass-clarinet)
                   (:group :bassoon :contra-bassoon))
           (:group (:group :horn) (:group :c-trumpet :bf-trumpet)
                   (:group :alto-trombone :tenor-trombone :bass-trombone)
                   (:group :tuba))
            :timpani :percussion
           (:grandstaff :piano)
           (:group (:group :violin) (:group :viola) (:group :violoncello)
                   (:group :contrabass))))

`:EVENTS`

  This is a global list of events to be processed by FOMUS. An event can be a `NOTE`, `REST` or `MARK` object. A `NOTE` or `REST` object must have a symbol or number in its `PARTID` slot specifying which part it belongs to. A `MARK` object may have a default `PARTID` value of `NIL` to specify all parts or a symbol/number or list of symbols/numbers to specify only those parts. (Note that specifying part ID information isn't necessary when event objects are listed in the `EVENTS` slot of a `PART` object. Including these objects in the events list provides an alternative to listing them inside `PART` objects.) See Objects for more detailed descriptions of these objects and their uses.

`:FILENAME`

  This string represents the path and filename to which FOMUS adds an appropriate extension when it saves output in various formats. This setting in combination with the `OUTPUT` setting determines the actual output filenames.

  Example 5.6. FILENAME Setting

      :filename "path_to_output_directory/myoutput"

`:GLOBAL`

  This is a list of objects that have "global" influence over other events in the `PARTS` and `EVENTS` settings. Only objects of type `TIMESIG` and `KEYSIG` are allowed here (`KEYSIG` isn't implemented yet). When a global object's `PARTIDS` slot is set to the default value of `NIL` the object affects all parts that don't already have a `TIMESIG` or `KEYSIG` attached to them at that point. When its `PARTIDS` slot is set to symbol or list of symbols the object affects those parts only. This enables the specification of multiple simultaneous time signatures and polymeters (not implemented yet).

`:GRANDSTAFF-HIDE-RESTS`

  When set to `T` or `:SOME`, indicates that FOMUS hides some rests when combining multiple voices in a grand staff. This makes the notation easier to read for multi-staff instruments by eliminating rests that aren't necessary. When set to `:ALL` indicates that all rests in all parts are hidden (this could be more useful in the future when proportional notation is supported). When set to `NIL` indicates that no rests are hidden.

`:INPUT-BEAT-VALUE`

  When set to some real number greater than `0`, indicates that this durational value is to be interpreted as one beat. FOMUS scales all input objects by dividing offsets and durations by this value before doing any other processing. A value of `NIL` is the default and is equivalent to `1`.

`:INPUT-OFFSET`

  When set to some real number, indicates that this durational value is to be interpreted as one beat. FOMUS shifts all input objects by adding this value to all offsets before doing any other processing. A value of `NIL` is the default and is equivalent to `0`.

`:INSTR-GROUPS`

  The value of this setting is a table in the form of a list that provides a way of adding instrument orderings and groupings to FOMUS's own default table. These tables map symbol lookup values to ordering/grouping data structures which specify how parts are both ordered and grouped together with brackets and barlines in the score. The user may choose one of these groupings by setting `ENSEMBLE-TYPE` to a symbol lookup value. The user-supplied list is searched first so user-supplied orderings/groupings can override FOMUS's default orderings/groupings.

  The setting is a list of lists, the first element in each inner list containing a symbol specifying a unique lookup name. These are followed by grouping/ordering definitions: symbols or nested lists of symbols that specify both the groups and the layout order of parts. In this data structure a symbol specifies an instrument while a list contains a group type (a symbol designating what type of bracket is to appear on the left-hand margin of the score and how barlines are to appear) followed by more instrument symbols or lists (see the example below). A group type is one of the symbols `:GROUP`, `:GRANDSTAFF` or `:CHOIRGROUP`.

  A look at the following example might make this clearer:

  Example 5.7. INSTR-GROUPS Setting

      :instr-groups
        '((:orchestra
           (:group (:group :piccolo :flute) (:group :oboe :english-horn)
                   (:group :bf-clarinet :a-clarinet :bass-clarinet)
                   (:group :bassoon :contra-bassoon))
           (:group (:group :horn) (:group :c-trumpet :bf-trumpet)
                   (:group :alto-trombone :tenor-trombone :bass-trombone)
                   (:group :tuba))
            :timpani :percussion
           (:grandstaff :piano)
           (:group (:group :violin) (:group :viola) (:group :violoncello)
                   (:group :contrabass)))
          (:ensemble
           :piccolo :flute :oboe :english-horn :bf-clarinet :a-clarinet :bassoon
           :contra-bassoon (:grandstaff :piano)))

`:INSTRUMENTS`

  The user can use this setting to specify additional `INSTR` objects that are added to the default instrument list. FOMUS searches this list before its own default list when resolving symbols to instrument definitions, so they may be replacements or modifications of existing instruments. The contents are either instrument objects created with `MAKE-INSTR` or lists specifying modifications to FOMUS's default instruments (or a combination of both). If a list is specified, it contains a symbol specifying a default instrument followed by keyword/argument pairs indicating slot values that replace existing default values (see the `INSTR` slot in the `PART` object and PART-INSTR Slot Setting for an example of this).

  Example 5.8. INSTRUMENT Setting

      :instrument
        (list (make-instr :recorder :clefs :treble)
              '(:piano :staves 3 :simultlim 6))

`:LILYPOND-EXE`

  This is a string specifying the path and filename to the LilyPond executable. The full pathname may or may not need to be specified depending on the Lisp implementation.

`:LILYPOND-FILEHEAD`

  This is a string or list of strings representing text to be inserted directly into a LilyPond output file. Each string in the list is followed by a carriage return. The text is inserted near the top of the file at a point before any score or part data appears.

`:LILYPOND-OPTS`

  This is a list of strings representing options to be passed to the LilyPond executable. The default is currently `'("--ps")` for Linux or `'("--pdf")` for OS X/Windows, specifying that LilyPond should generate either a PostScript or PDF format file.

`:LILYPOND-OUT-EXT`

  This is a string specifying the extension for the output filename that is created when LilyPond is run. The default is `"ps"` for Linux and `"pdf"` for OS X/Windows.

`:LILYPOND-SCOREHEAD`

  This is a string or list of strings representing text to be inserted directly into a LilyPond output file at the beginning of a score block. Each string in the list is followed by a carriage return.

`:LILYPOND-TEXT-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text above or below the staff. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\italic{~A}}"`.

`:LILYPOND-TEXTACC-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when engraving accidentals as text. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\\markup{\\tiny{~A}}"`.

`:LILYPOND-TEXTDYN-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text in a dynamic-type font. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\dynamic{\italic{\bold{~A}}}}"`.

`:LILYPOND-TEXTNOTE-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text above single notes. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\italic{~A}}"`.

`:LILYPOND-TEXTTEMPO-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text in a heavy "tempo" font. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\bold{\huge{~A}}}"`.

`:LILYPOND-VERSION`

  If set to a string (for example, `"2.8"`), forces FOMUS to output LilyPond files for that version.

`:LILYPOND-VIEW-EXE`

  This is a string specifying the path and filename to the executable for the LilyPond viewer application. The full pathname may or may not need to be specified depending on the Lisp implementation. The default application depends on what is installed on the user's machine, and should be one appropriate for viewing PostScript files.

`:LILYPOND-VIEW-OPTS`

  This is a list of strings representing options to be passed to the LilyPond viewer application executable.

`:LONG-EIGHTH-BEAM-COUNT`

  This is set to an integer greater than `0`, specifying the number of eighth notes that need to be present to be beamed as a group of 4. This setting is only effective if `LONG-EIGHTH-BEAMS` is set to `T`.

`:LONG-EIGHTH-BEAMS`

  If set to `T`, specifies that the beaming algorithm should beam eighth notes into groups of up to 4 under certain conditions (if enough of them are present). If set to `:ALWAYS`, specifies that eighth notes are always beamed in groups of 4. If set to `NIL`, specifies that eighth notes are never beamed in groups of 4.

`:MAX-OTTAVA-REST-DIST`

  This is a real number greater than `0`, specifying the maximum distance an ottava bracket will span over a group of contiguous rests.

`:MAX-TUPLET`

  If set to an integer, represents the largest tuplet allowed. If set to a list of integers, represents the largest tuplets allowed for each nested tuplet level (and also specifies how many levels of tuplet nesting are allowed by the length of the list). A value of `'(7 3)`, for example, specifies two levels of tuplet nesting with septuplets being the maximum allowed in the outer level and triplets being the maximum in the inner level. A value of `NIL` specifies that no tuplets are to be used.

`:MAX-TUPLET-DUR`

  This is the largest duration in beats that a tuplet can span.

`:MIN-AUTO-TIMESIG-DUR`

  if `AUTO-OVERRIDE-TIMESIGS` is set to `T`, FOMUS automatically generates new time signatures as necessary to fit measures into the time signatures specified in the `GLOBAL` and `PARTS` list. The value of this setting represents the smallest duration (in beats) of any such time signature that is generated. See TIMESIG and TIMESIG-REPL for more information.

`:MIN-GRANDSTAFF-HIDE-RESTS-DUR`

  This is a real number greater than `0`, specifying the minimum duration that a group of simultaneous rests must occupy in order for some of them to be hidden. This is applicable only when there are multiple voices on a staff, in cases where several simultaneous rests can be shown as one rest. `AUTO-MULTIVOICE-RESTS` must also be set to `T` for this to have any effect.

`:MIN-MULTIVOICE-CHORDS-DUR`

  This is a real number greater than `0`, specifying the minimum duration a group of simultaneous notes in separate voices must span to be combined into chords. This is applicable only when there are multiple voices on a staff, and if `AUTO-MULTIVOICE-NOTES` is set to `T`.

`:MIN-SPLIT-ALL-PARTS-DUR`

  This is the smallest duration that FOMUS will consider when deciding whether or not to "split" or divide all parts together or separately. (Splitting means splitting and tying notes as necessary to properly notate a given rhythm in a given measure.) A unit of music must be larger than this value to be considered--units equal to or smaller than this duration are not considered. FOMUS splits measures in all parts together up to a certain point to insure that the notation is consistently divided in all parts. A 5/8 measure, for example, will be consistently divided as either 3 + 2 to 2 + 3 in all parts together (as long as the value of this setting is smaller than the duration of a 5/8 measure).

`:MIN-TUPLET-DUR`

  This is the smallest duration in beats that a tuplet can span.

`:PARTS`

  This is a list of `PART` objects, each representing a stave or grand staff in the score. At least one part must be specified.

`:OUTPUT`

  This is either a list or a list of lists specifying one or more output files with optional keyword/argument pairs for tweaking their contents. FOMUS's built-in output symbols are `:DATA` or `:FOMUS`, `:RAW`, `:MUSICXML`, `:MUSICXML-SIBELIUS`, `:MUSICXML-FINALE`, `:CMN`, `:LILYPOND` and `:MIDI`. More information on these is given in Outputs. The following are examples of valid output specifications:

  Example 5.9. OUTPUT Setting 1

      :output '(:data (:lilypond :view t))

  Example 5.10. OUTPUT Setting 2

      :output '(:lilypond :filename "myfile.ly" :view nil)

  Example 5.11. OUTPUT Setting 3

      :output :cmn

`:PERCUSSION`

  This is a list of `PERCUSSION` objects serving as a lookup table for information pertaining to percussion notation. `PERCUSSION` objects are listed in `INSTR` objects to define collections of percussion instruments that are notated together on a single staff. FOMUS searches this user setting list before its own default list when resolving symbols to percussion instrument definitions, so they may be replacements or modifications of FOMUS's predefined percussion instruments. The contents are either percussion objects created with `MAKE-PERC` or lists specifying modifications to FOMUS's default percussion objects (or a combination of both). If a list is specified, it contains a symbol specifying a default percussion instrument followed by keyword/argument pairs indicating slot values that replace existing default values (see the `PERCS` slot in the `INSTR` object for an example of this).

  Example 5.12. PERCUSSION Setting

      :instrument
        (list (make-perc :anvil :note -3 :voice 2 :midinote-ex 79)
              '(:triangle :note 0 :voice 1))

  See the documentation for `PERCUSSION` objects for more information.

`:QUALITY`

  This is a real number indicating how much FOMUS should trade speed of computation for "quality" of output. Setting it lower increases speed while setting it higher gives better results. The default is `1`, which is reasonable for relatively uncomplicated scores with a small number of parts. The most effective values are between approximately `-3` and `3`, though complex scores might show a little improvement (better guesses within a larger context) with values of `5` or more. After a certain point increasing this value only makes the program run slower with no noticeable improvement in output.

`:QUARTERTONES`

  If set to `T`, FOMUS rounds pitches to quartertone values and uses quartertone notation in the score. This only works if the algorithm specified by the `AUTO-ACCS-MODULE` setting supports it. FOMUS's default module `:NOKEY1` supports quartertones.

`:SHORTLONGSHORT-NOTES-LEVEL`

  Indicates how "short-long-short" note patterns are allowed to appear. An example of such a pattern is an eighth note followed by a quarter note then an eighth note, and is treated as an exception to insure that the middle note isn't split in the middle and tied. Possible values are `T`, `:ALL`, `:TOP` and `:SIG`. `:ALL` specifies that this pattern can appear anywhere, `:TOP` specifies that it can appear only if it occupies an entire measure, and `:SIG` specifies that it can appear if it occupies a duration larger than a beat. `T` is equivalent to `:ALL`.

`:SPLIT-MODULE`

  Designates which module is to be used for splitting and tying notes. FOMUS's built-in values are `T` and `:SPLIT1`. `T` represents the default module and is equivalent to `:SPLIT1`.

`:SUBTITLE`

  This is an optional string value containing the subtitle of the composition.

`:SYNCOPATED-NOTES-LEVEL`

  When set to `T`, indicates that a certain syncopated note pattern, a short note followed by any number of long notes then a short note, may appear. An example of such a pattern is an eighth note followed by several quarter notes then an eighth note. This can only occur if the pattern occupies the duration of an entire measure.

`:TIMESIG-STYLE`

  This indicates how time signature are printed. It can be set to `:FRACTION` or `:COMMON`, specifying that either fractional or common time signatures are to be used in the backend (given the choice). The default value of `NIL` is equivalent to specifying `:FRACTION`.

`:TITLE`

  This is an optional string value containing the title of the composition.

`:TRANSPOSE`

  When set to `T`, activates a transposition function that automatically transposes note values. The `TPOSE` slot of the appropriate `INSTR` objects must be set for this to have any effect.

`:TUPLET-DOTTED-RESTS`

  If set to `T`, specifies whether or not dotted rests are allowed inside tuplets of irregular (ie. not a power of 2) divisions. For example, a quintuplet might be divided into a dotted eight rest followed by an eighth note if `TUPLET-DOTTED-RESTS` is true.

`:TUPLET-FUNCTION`

  Designates which function is to be used for determining tuplet ratios. FOMUS's built-in values are `T`, `:POW2` and `:DUR`. `T` represents the default function and is equivalent to `:POW2`. `:POW2` determines tuplet ratios based on the rule that the number of tuplet divisions replace (in most cases) the number of durational units equaling the next lowest power of two. FOMUS thus notates 7 in the time of 4 and 13 in the time of 8. `:DUR` determines ratios by finding the closest number of durational units to the number of tuplet divisions. FOMUS then notates 7 in the time of 8 and 13 in the time of 16.

`:TUPLET-STYLE`

  Specifies how tuplets are to be printed. The possible values are `:RATIO` or `:SINGLE`. The default value of `NIL` is equivalent to `:SINGLE`.

`:USE-CM`

  If set to `T`, indicates that FOMUS should use Common Music functions if present. Note symbols are then parsed by CM using the value of `CM-SCALE` as if it were passed as the `:IN` argument to CM's `KEYNUM` function. Also, durations specified as symbols indicate notational durations and are interpreted as such using CM's `RHYTHM` function. Numbers are still interpreted by FOMUS in terms of beats.

`:USE-DOUBLE-ACCS`

  If set to `T`, the note spelling algorithm considers double sharps and double flats in addition to single sharps and flats.

`:VERBOSE`

  This must be set to a value from `0` to `2`, indicating the amount of printed output. A value of `0` represents minimal output while a value of `2` represents maximal output.

Prev | Up | Next
Complete FOMUS Settings | Home | Chapter 6. Marks