New Mup Features
New Features in Mup Version 5.3
Version 5.3 is primarily focused on ease of use enhancements.
The largest item is the additional of a companion program, called Mupmate,
that provides an interface for editing, displaying, and playing Mup files
with the kinds of menus and windows that many people are used to.
The Help menu will take you right to the
Mup User's Guide,
which has also had improvements made.
If you are a user who prefers the command line interface that Mup
has always had, don't worry; we like to use that too,
and have no intention of dropping support for it.
Windows users now only need to
download a single file
and execute it to
install everything (although you still need to get and install GSview and
Ghostscript separately, if you want to use that for viewing the PostScript
files). Other users can also just download a single file that contains
both program and documentation.
Other new features in 5.3 include:
-
Error and warning messages have been enhanced to show you the text
of the line of input where the problem was found.
-
There is a new
pagesize parameter
that lets you specify paper size by common names like letter or a4,
as an alternate to specifying
pageheight and
pagewidth in
inches or cm.
-
There is a new
vcombine parameter, that lets
you enter notes on separate voices, yet have them printed on a common stem
when possible. Typical uses are:
-
To have separate
MIDI tracks for different voices, yet have the
voices printed on common stems.
-
For a style of printing where a single
stem is used for the two voices on a staff except when the voices share a
common note, when two opposing stems are printed.
-
The
scorepad parameter now accepts an
optional maximum value, in addition to the minimum value.
New Features in Mup Version 5.2
-
There is now a
generalized 'if' clause' that is
much more flexible and powerful than the simple
ifdef and ifndef.
These provide capabilities somewhat similar to the preprocessors for
the C and C++ languages.
-
Complicated
time signatures are now supported.
This includes a numerator with two or more numbers added together,
like 3+4 / 4, or two or more fractions added together, like 3/4 + 3/8.
Alternating time signatures, such as when a piece continuously
switches between 3/4 and 6/8, are also supported.
-
The
beamstyle
and
timeunit
parameter values associated with a
time signature
are now remembered, so that if you later change back to the same time signature,
you don't have to also set the beamstyle and timeunit at the same time;
the value used previously for that time signature will be
restored automatically.
(Note that if you have existing Mup files that rely on the old behavior,
they may need small modifications, but that should be rare.)
-
It is now possible to
force stem directionon voices 1 and 2
even when the other voice is not space.
-
Improvements have been made to how the
angle for beams is calculated.
The "best" angle for a beam is sometimes somewhat subjective,
but in general, these changes will result in more
cases where beams are horizontal or less sloped,
-
There are also additional ways you can control beams:
A new
slope interchord attribute
lets you force a specific slope.
The new
stemshorten parameter
lets you determine how much a chord's stem
is allowed to be shortened when it is beamed.
And the existing
len chord attribute
can now be set for
just one end of a beamed set of chords as an alternative to
setting it at both ends.
-
The HTML version of the Mup User's Guide
now includes 'next page' and 'previous page' links on each page.
New Features in Mup Version 5.1
-
You may specify a time value that is the
summation of several time values. This can be used to obtain
beaming,
lyrics, or
tuplets with durations that
cannot be represented with a single time value, like a half note plus
an eighth note. It also gives an alternate way to specify
chord ties.
-
Cross-staff stems are now supported.
-
You can now explicitly specify a direction of "up" on
rolls to get an upward arrow drawn at the
top of the roll. (Before, only a downward roll would get an arrow.)
-
Mup will now allow you to
beam across spaces as well
as rests.
-
There is a new
restsymmult parameter.
Setting it to y will cause Mup to use an alternate style for
multirests of eight measures or less, which uses rest symbols.
-
There is a new string sequence that will be replaced by
the page number of the last page.
This may useful to be able to automatically get output
like "Page 2 of 4 pages."
-
There is a new option for printing of
tuplet numbers,
where the number is always printed, but the bracket is never printed.
-
If you want to have the same
lyrics
above some staffs and below others,
it is now possible to specify that on a single input line,
rather than requiring two.
-
Improvements have been made to how voice 3 is placed,
which will often eliminate the need to manually specify a
horizontal offset.
New Features in Mup Version 5.0
-
Mup now supports the
shaped notes
often used in "Sacred
Harp" music, also sometimes called "fasola" notation.
New note head characters are available for the most common system of 4 shapes,
as well as a system with 7 shapes.
As part of this feature, there is a new
headshape context
and a new
noteheads parameter
that lets you define what shapes will be used for notes.
-
Note head shapes can also be specified on
specific chords
or
a specific note within a chord.
This makes it possible to do things like have both normal
and X-shaped notes on the same stem.
-
There are new "slash"
note heads,
often used to indicate
repeated chords, and a new "blankhead" note head, that can be
used if you just want a stem without any note head.
-
There is a new
stemlen parameter
that lets you set the default stem length. A common use for this would
be to set this parameter to 0.0,
to not have any stems at all (sometimes used for chant).
-
It is now possible to change the
clef,
defoct,
and
release
parameters in the
middle of a measure.
-
You can now include
raw PostScript
in the input to the copied to the output. This could be used,
for example, to include a picture or logo with your music.
-
In addition to the old way of specifying
key signature,
by stating the number of sharps or flats,
it is now possible to specify the key by name, as in "a major"
or "c# minor."
-
There is a new
swingunit parameter.
Some styles of music are often written with straight eighth notes
or dotted-eighth-sixteeen notations, but where the players "know"
that the composer really wants the music played
with the first note in each pair twice as long as the second,
as if it were a quarter-eighth triplet.
This parameter will make Mup's MIDI output automatically follow that kind of
performance convention.
-
It is possible to
set the rehearsal letter or number
to a specific value, to override the automatic incrementing.
This might be especially useful when there are multiple songs or movements
in a single Mup file.
New Features in Mup Version 4.6
-
There are new
top, bottom, top2, and bottom2 contexts
that let you define a second layer of headers and footers. These new
contexts can be changed multiple times in a file, so you can use different
headings and footing for different songs or movements within a file.
-
There is a new
"block" context,
that lets you place blocks of text in your musical scores.
-
There is a new
paragraph command for printing
long sections of text that you would like to have automatically wrapped
around unto as many lines as needed. The right margin can be justified
or ragged.
-
For Linux, in addition to being available in tar.gz format, Mup files are now
available in rpm package format,
for very quick-and-easy installation. The
MS-DOS/Windows Mup files are now available as
self-extracting zip files,
so you don't need to have
an unzip program to unpack them.
-
The
visible parameter
now accepts a value of "whereused."
With this value, when a staff has no notes on an entire score,
that staff is not printed. This might be used, for example,
to save paper on an orchestral score by only printing staffs for
instruments when they are actually playing.
-
There are new parameters
measnumfont,
measnumfontfamily,
and
measnumsize,
to control the appearance of
automatic measure numbers.
-
It is now possible to
unset parameters
in voice or staff context, to make them revert to their values
in the next more general context where they are set (staff or score).
-
When a repeatstart gets moved to the beginning of a score, sometimes
you'd like the bar line at the end of the previous score to be a double
bar rather than single bar. It is now possible to
specify that.
-
There is a new
-F option
that is like the -f option, except it derives the name of the output
file based on the name of the input file, rather than you needing to
specify an output file name.
-
The Mup input file name is given in the PostScript output file,
so that PostScript viewer programs like gv can use it in their window title.
-
There is now a
majordomo mailing list available for
registered Mup users. This is a forum for talking with other Mup users,
to discuss questions and tips on using Mup.
New Features in Mup Version 4.5
-
There is a new
-x option
that lets you extract a portion of a song. This can be
especially useful for MIDI, where you might want
to listen to just a few measures
in the middle or end of a piece. But it also works in printing mode,
so you can print just an excerpt of a piece.
-
It is now possible to specify "subbeams," both with
custom beaming and via the
beamstyle parameter.
This can be used when there are a lot of very short notes,
and you want to subdivide the beam groupings.
-
The drawing of phrase marks, ties, and slurs has been re-implemented to
produce more aesthetically pleasing curves.
-
There is a new special character,
called \(space),
which is printed like
a normal space on output, but which is not treated like a space when Mup is
looking for word or syllable boundaries. The most common use for this would
probably be on
chant lyrics,
where you want several words to be sung to the same note.
It might also be useful in cases where Mup would normally split a long
string at a word boundary to avoid running off the edge of a page,
but for some reason you want to prevent that splitting.
-
It is possible to
print a text string centered above a line.
This is likely to be the most useful for printing "gliss." by a wavy
line for a glissando, but it can be used on any kind of line.
-
There are some new user-donated files,
including a Windows installer, and Mup syntax files for nedit and vim.
New Features in Mup Version 4.4
-
Many of the changes in this release were to make Mup conform more closely with
established guidelines or rules for musical notation.
This mainly involved small adjustments to cosmetic details, like
how accidentals and dots are placed.
For mid-score clef changes, the clef is now placed before the barline,
as it should be, rather than after.
There is also an improved algorithm for determining where to
end the underscores on lyrics.
-
The use of labels, both
labels associated with individual staffs
and labels associated with staffs grouped by
braces or
brackets,
has been made more flexible.
It used to be that the "label" was only used on
the very first score, with "label2" used on all subsequent scores.
Thus resetting label after the beginning really had no effect.
Now, however, whenever a new label is specified, that label will be used for the
next score, going back to label2 for subsequent scores.
As an example, this might be useful if staff 1 was used for just soprano
at the beginning of the song,
so you wanted label="Soprano" and label2="S"
for that portion, but later soprano and alto share the staff, so you would
like label="Soprano/alto" to clearly point out the change, but then
revert to just "SA" on subsequent staffs, to conserve space.
-
You can specify a bulge direction for
note ties,
note slurs,
chord ties, and
chord slurs,
if you wish to override Mup's choice of direction.
-
You can now use \s(PV) or \s(previous) in a text string to return to
the previous
size.
-
The
8treble clef is now supported.
This is like the treble8 clef, except the 8 is printed above the G clef
rather than below it, to show notes that sound an octave higher than
a normal treble clef.
-
Phrase marks can now have
an optional line type modifier of dotted or dashed.
New Features in Mup Version 4.3
-
There is a new
rehstyle parameter
that controls whether rehearsal marks are boxed, circled, or plain.
-
It is no longer necessary to specify verse numbers for
lyrics
(unless you want to skip a verse). If not specified, each
succeeding set of lyrics for a given staff and place defaults
to having a verse number one more than the previous verse.
-
There is a new way to
force the position of individual lyrics syllables
that is particularly useful for ensuring that verse numbers or the
beginnings of poetic lines align consistently on all verses.
-
There are new
-E and -C options
that let you see how macros expand, which can help you in debugging
very complex macros.
-
There is a new
staffpad parameter,
and the value of the
scorepad parameter
can now be negative. Using negative values for these can let you
jam staffs or scores closer together in cases where
Mup is spacing them wider apart than is really necessary.
-
It is now possible to have more than one voice on
tablature staffs
just like on non-tablature.
-
It is now possible to
temporarily override margins
on a particular score. This can let you indent one score differently
than the others, or end a piece with a shorter-than-normal score.
-
There is now an "alt pedstar" value for the
pedstyle parameter
This is like the "pedstar" value
except that when there is a pedal "bounce,"
only a "Ped" is printed, rather than a "* Ped."
-
There is a new
user-donated program called
Winmup
which provides a Windows front-end for the MS-DOS version of Mup. The
Visual Basic source
code for Winmup is also available.
-
Several miscellaneous changes were made to improve the quality of
printed output and to improve portability.
Current Mup users may find the layout of some songs may change
somewhat when they upgrade.
New Features in Mup Version 4.2
New Features in Mup Version 4.1
-
Guitar grids can now be
printed, either
where they are used in the music,
or
summarized at the end of a song.
There is also a
library of pre-defined grids
that you can
"include" in your music.
-
Non-ASCII characters from the Latin-1 alphabet can now be typed directly
into strings in Mup input, rather than needing to be specified by name.
Shortcut names have also been added for guillemots.
-
The maximum
number of staffs has been raised to 40.
-
The
stafflines
and
staffscale
parameters can now be changed at any bar line rather than only at the
beginning of a song. Changing either of them forces a new score.
-
The staffsep
parameter can now be set on a per-staff basis, rather than just
for the score as a whole.
-
There are new parameters that allow you to control the order that items
above,
below,
and
between
staffs are stacked.
-
It is now possible to
turn off the automatic numbering of measure repeats
and the
printing of multirest numbers.
-
It is now possible to
specify the vertical placement of a rest character,
if you want to override Mup's automatic placement.
-
It is now possible to
concatenate strings.
This is likely to be most useful in
macros,
but can be used anywhere strings are used.
-
There is a new
firstpage parameter,
which is similar to the
-p command line option,
for setting the first page number.
-
There is a new
restcombine parameter,
which is similar to the
-c command line option,
for automatically combining a sequences of rest measures into
multirests.
-
Music symbols that occur inside ital or boldital strings will
automatically be made italics
to match the string.
-
It is possible to
vertically center lyrics.
This is useful when there is a refrain with identical words for all
verses, and you only want it printed once.
-
It is now allowed to have a
brace
to the left of
brackets,
to group a subset of staffs.
(Previously, only brackets were allowed to be nested that way.)
New Features in Mup Version 4.0
-
There is now an
alternate input style,
in which you can enter music a chord at a time rather than a voice at
a time. For certain kinds of music, this may be more natural,
and allow you to enter music more quickly.
The previous input style
has also been made more flexible, such that it
is now possible to specify that one line of input will go to voice 1
on one staff or set of staffs and voice 2 on another staff or set of staffs.
These enhancements make it easier to do things like input a vocal score and
automatically get a piano reduction.
-
It is now possible to
transform a parameter passed
to a macro into a string.
If you are a C programmer, you will find this works somewhat
like the # operator of ANSI C preprocessor macros. If you're not a
C programmer, suffice it to say that this allows Mup macros to be used
to do things they couldn't do before.
-
There is a new special bar type, called
restart, that lets you
end the current set of staffs and begin a new set of staffs on the same
line, as is sometimes done for a short coda.
-
The symbols for accidentals (like # and &) are now translated to
their corresponding musical symbols everywhere in
chords,
rather than only if they immediately follow the letters A through G.
You can, however, turn off this automatic translation
for individual cases where you want them to be treated literally.
-
Quadruple whole rests are supported.
-
It is possible to force a
measure rest
to be shown with a rest symbol other than the whole rest symbol
that is usually used.
-
There is a new
addtranspose parameter. This
enables you to use the
transpose parameter to change
the transposition on specific staffs for transposing instruments,
then use addtranpose to transpose the entire score into a new key.
-
There is a new
warn parameter which allows you
to control whether warning messages are printed or not.
-
There is a new
ontheline parameter. This
allows you to control whether notes on 1-line staffs are printed above, below,
or on the line.
-
The
dist,
chorddist,
and
crescdist
parameters can be
overridden on individual items.
A dist override can also be specified on
rehearsal marks.
Each dist override can also include a modifier
to force items to a specific place,
even if they then overwrite other items that Mup would normally avoid.
-
There is a new
-M option which is like the
-m option, except the name of the MIDI file is derived from the Mup
input file name, rather than requiring you to supply a name.
-
If a given input file name does not exist, Mup will try appending .mup
to the name and attempt to open that file.
-
It is now possible to specify an
uncollapseable space.
This may be useful when drawing "slash" marks and at other times.
-
There is a new
user-donated program called midi2mup, which
is a Perl script that can convert a MIDI file to Mup input.
-
The uguide gives examples of how to
places verses as text blocks below the scores.
Coming Attractions
We're always interested in hearing about what features you would
like to see in the next version of Mup.
What features we add will depend on your input, so
please send us a note at
support@arkkra.com.