There are optional attributes that are associated with an entire chord rather than an individual note. These are put inside square brackets before the list of notes. There are several classes of information:
Each class of information is separated from the other by a semicolon. All classes are optional, and can occur in any order.
Several chord styles can be specified. Grace note chords are designated by the word "grace," or cue note chords by "cue." Grace notes can be specified as any undotted time value of eighth note or shorter, but are treated as taking no time. The time value given is merely used to specify how many flags or beams to put on the grace note. You can also specify a quarter note grace note, which will be printed as a small, stemless note, as is used to show a "prebend" in guitar music. Cue notes have time like regular notes, but they are printed smaller. If there are several grace notes in a row, they will be beamed automatically. However, you cannot mix quarter (stemless) grace notes with shorter ones. Cue notes follow the same beaming rules as regular notes.
It is also possible to specify "diam," or "xnote."
In the case of "diam," the chords will be drawn with diamond-shaped notes,
while with "xnote," the chords will be
drawn with X-shaped notes. A diamond shaped
note head will be used for xnotes that are half note or longer.
Grace cannot be used in connection with diam or xnote.
Here are some examples:
[grace]
[xnote]
[cue; xnote]
[diam]
It is possible to specify one or more musical symbols or text strings to be printed with a chord. This is typically used for things like staccato and accent marks. The word "with" is followed by one or more things to print. If there are more than one, they are separated by commas. They will be printed outwards from the notes in the order specified. The "with" list is only allowed on note groups, not rests. The list can include symbols from the following table:
Symbol Meaning . staccato - legato > accent ^ accent
A quoted string can also be specified (e.g., "ff", "adagio", etc). This will be printed in the font and size specified by the "fontfamily," "font," and "size" parameters. Any of the special music characters can be printed by using the usual \e(xxx) convention, e.g., \(ferm) for a fermata. (This is described in a later section.) However, it is usually preferable to use the printing of text strings relative to beats.
Here are some examples:
[with ., -] [with ^, "\(ferm)"] [with "sfz"; cue]
If the symbols acc_hat, ferm, or wedge are used by themselves in a "with" list item, they are handled specially. If the stem direction is such that the upside down versions of these characters should be used, the upside down version will be used.
Diagonal lines to be drawn through the stem of the group
can be specified using
slash N
[slash 2] [grace; slash 1]
The chord stem direction can be specified as "up" or "down".
Normally Mup chooses the stem direction, but once in a while you
may want to override its choice. There are some restrictions.
For voices 1 and 2,
you can only override Mup's choice when the other voice (1 or 2)
is nonexistent or a space.
You cannot specify a direction on grace notes. All chords beamed
together and the pair of chords in an
alternation pair
(described later)
must have the same stem direction.
Examples:
[up] [down]
For voice 3, stem direction works a little differently. By default, the stem direction for voice 3 is up, but for voice 3 on any given staff, when you specify a stem direction, that direction will remain in effect until explicitly changed. Thus, for example, if you want all voice 3 stems in an entire song to be down, you only need to specify "[down]" on the first chord.
Normally, Mup sets stem lengths as appropriate, but sometimes you might
want to make a stem longer or shorter than normal. This is done with
the keyword "len" followed by a length in stepsizes. There are some
restrictions. If you specify stem length on the first chord of a
beam,
you also have to specify the the stem length on the last chord of that beam.
You cannot specify stem length on chords inside of beams.
If you specify length on one chord in an
alternation pair,
you also have to specify a length on the other chord. Some examples:
[ len 14 ] [ len 7; up ]
The len can be set to 0 to produce a note head with no stem at all.
Sometimes it may be desirable to space notes somewhat differently than
Mup would normally place them.
It is possible to specify "padding" before any note group.
This is done by specifying the word "pad" followed
by a number of stepsizes of white space padding to add before the chord.
The number can be fractional, as in 0.5 or 2.25.
For example:
[ pad 2.5 ]
The padding can also be negative. Padding affects the minimum amount of width allocated to a chord, so you can use positive padding values to force additional room in front of a chord, or negative padding to allow things closer together.
It is possible to set a location tag
which is
associated with an entire chord
rather than an individual note. This
tag
is specified like
location tags for notes,
with an "=" followed by a name, but is inside
the square brackets rather than after a note.
3: 2cf; [=h] egc+; 1: [cue; with >; =_ch] fa;
A horizontal offset can be applied to a chord by specifying "ho" followed by a number of stepsizes. The number can be positive or negative, and can include a fractional part. A positive number will cause the chord to be placed that far right of where the horizontal center of the chord would normally be; a negative number will place it that far to the left. It is also possible to simply specify a "+" or "-" which says to place the chord to the right or left, as close as possible without running into something.
A horizontal offset is most commonly used on the third voice of a staff, although it can be used on other voices too. By default, Mup places third voice chords to the right, and as close as it thinks is safe for avoiding most collisions. Sometimes it may actually be okay visually to place the chord a little closer than that, or perhaps there is a better "nook" to tuck it into on the left side. By specifying a horizontal offset, you can place chords anywhere you want. Mup makes no checks to avoid collisions when you specify a horizontal offset, so this attribute needs to be used with some care.
Here is an example of the use of horizontal offset and stem direction
on voice 3.
score vscheme=3f music 1 1: c+;b;a;c+; 1 2: e;d;e;f; 1 3: [ho+1] g; [ho-5.2; down]; [ho-] f; [ho+; up] a; bar
Usually Mup's placement of rests is satisfactory, but once in a while
you might want to force a rest to be placed a little higher or lower
than Mup would place it. You can specify a "dist" which is the number
of stepsizes from the center of the staff to place the rest symbol,
with positive numbers being above the center and negative numbers below.
If the staff is
transposed,
the placement of the rest symbol will be adjusted accordingly.
// The first and last rests are in normal position. // The second is forced higher, the third is forced lower. 1: r; [dist 6]; [dist -4]; r; bar
If two or more chords in a row have the same bracketed attributes,
there are two shorthand notations. Specifying an empty set of brackets "[]"
means to use the same attributes as were specified on the previous chord.
The previous chord must be within the same measure.
Some examples:
1: [cue] 4c;[]d;[grace; slash 1] 8f;2e; bar 1: d; [with .,-]d; []e; []f; bar
The other shorthand is to put 3 dots after a set of bracketed items.
This means to repeat the same bracketed items on all chords for the
rest of the measure, or until a new set of bracketed items is specified.
If you wish to cancel this before the end of a measure but without
specifying a new set, the special set "[-]" can be used.
// put staccato marks on all notes 1: [with .]... c; d; e; g; bar // put several cue size notes in the middle of a measure 1: c; [cue]... 8d; f; e; g; [-] 4c+; bar
You can use more than one set of backets on a single chord. For example "[len 5][down]" and "[len 5;down]" are equivalent. However, [-] can only be used by itself, and if you want to use [] along with another backeted set of items (to duplicate the items on the previous chord plus add some more), the empty [] needs to be first, before the other set of items.