New Mup Features
New Features in Mup and Mupmate Version 7.2 (released in 2024)
New Features in Mup and Mupmate Version 7.1 (released in 2023)
New Features in Mup and Mupmate Version 7.0 (released in 2022)
-
It is now possible to specify a
string to be printed to the left of a note.
This would typically be used for fingering.
-
There are new mensural notation music symbols, and chords with
mensural note heads and centered stems
are now supported.
-
Measuration time signature appearance has been altered slightly to be
more similar to what seems to be more common, and when a
printedtime
string is a time signature symbol, it is left its normal size, rather than
being made 24 point bold, like a printedtime string would otherwise be.
-
There is a new kind of
macro, where the value is determined by evaluating a numeric expression.
This might be used for things like an automatically
incrementing counter, or proportionally altering the values of multiple
parameters by only changing a single factor.
-
There is a new
string() function,
which will map a number to a Roman numeral or letter for printing.
In connection with the expression feature listed above,
this might be useful for something
like labeling movements of a large work with Roman numerals, and being
able to add another movement in the middle, with later movements getting
renumbered automatically. It might also be useful for placing rehearsal
marks at other than barlines.
-
There is a new
shapes context and
shapes parameter.
These make it possible to override certain music symbols on a scorewide basis,
or at staff or voice level.
-
The Apple-specific code for mupdisp and mupmate has been updated
to remove references to deprecated functions.
New Features in Mup and Mupmate Version 6.9 (released in 2021)
-
Two or more measures can be placed between
"samescorebegin" and "samescoreend" lines to force them to all be kept on the same score.
Similarly, "samepagebegin" and "samepageend" lines
can be used to force several measures and/or
blocks to be kept on the same page.
-
Double and quad measure repeats
are now supported. There is a new
numbermultrpt parameter,
that controls whether a number ("2" or "4" as appropriate)
is printed above the middle bar line of multiple measure repeats.
-
The vcombine parameter accepts
an additional optional qualifier of "bymeas,"
which will cause combining to only be done in measures where combining can be
done on all chords in the measure.
-
The vcombine parameter can now
be set mid-measure.
-
There is a new defaultphraseside
parameter, which will force Mup to use the specified side (above or
below) for any phrase marks for which it would otherwise have been
free to make a choice.
-
Mid-measure parameter changes
at the first group of a
tuplet
can now be entered either before or after the opening brace,
rather than being required to be after it.
-
There is a new tupletslope parameter,
which controls how slanted tuplet brackets are allowed to be,
similar to the control of beams given by the
beamslope parameter.
The angle can be overridden on a specific
tuplet.
-
There is a new
midlinestemfloat parameter,
which can be set to make chords that are centered on the middle line of the
staff to have stem up in cases where the neighboring chords haves stems up.
-
There are new
music symbols
for perfectum maior, perfectum minor,
imperfectum maior, imperfectum minor, perfectum maior diminutum,
perfectum minor diminutum, imperfectum maior diminutum,
and imperfectum minor diminutum.
Mup and Mupmate Version 6.8.1 (released in 2020)
6.8.1 includes bug fixes for combining of rests into multirests,
and for auto-beaming.
New Features in Mup and Mupmate Version 6.8 (released in 2020)
-
Quadruple whole notes and octuple whole notes and rests are now supported.
-
There is a new
printedtime parameter,
that allows printing something other than the actual time signature on
some or all staffs.
-
There is a new
chordtranslation parameter,
that will translate chord letters to "DO RE MI" style syllables,
or the German convention of using H for B and B for B flat.
-
There is a new
alignlabels parameter,
that allows specifying how staff labels, including those for brace and
bracket groups, will be aligned.
-
It is now possible to apply
automatic beaming
to just a portion of a measure,
by specifying abm and eabm on the first and last groups to which it it to
be applied. That avoids the need to specify custom beaming for an entire
measure, when you only want to override the automatic beaming for a few
notes in the measure.
New Features in Mup and Mupmate Version 6.7 (released in 2019)
-
Mup source code is now available on Github at
https://github.com/muparkkra/mup.
That includes all the programs that generate code, documentation, and tests,
along with the option to build using autoconf / automake scripts.
-
There is a new "stepsapart" value for the
vcombine
qualifier, which will combine notes when the bottom note
of the higher voice is at least two steps higher
than the top note of the lower voice.
-
There is a new
## concatenate operator,
which can be used inside ` ` in
macro parameters, to concatenate the names of two or more other macros,
and then make a string out of the value of the resulting macro name.
-
The mupdisp program will now automatically rotate landscape and 2-panel
output to be displayed correctly.
-
There is a new -q (quiet) option, which will omit printing the version
and copyright notice on startup.
-
If an "include" file is not found in the current directory, or
in $MUPPATH, it will be searched for relative to the including file.
-
The Cyrillic "include" file
can now be run with -D RUSSIAN_ORDER to print
a table mapping keyboard input to Cyrillic characters, sorted by the
modern Russian alphabet.
-
There is a new
grids2
"include" file that defines grids for ukulele,
baritone ukulele, guitar, mandolin, and banjo.
-
Miscellaneous improvements were made
to the User's Guide.
New Features in Mup and Mupmate Version 6.6 (released in 2017)
-
You can now force
"with list" items
to be placed above or below.
-
Mupmate now has a Run option to convert Mup PostScript output to PDF via
an external conversion program, such as ps2pdf.
-
If the main edit window or the User's Guide Help window of Mupmate are
resized, the new size is remembered and used the next time.
-
Changes were made in the generation of MIDI files, to better
handle certain cases of grace notes in endings of repeated sections.
-
Tag coordinates passed to user postscript are now evaluated to their current
value rather than their final value.
New Features in Mup and Mupmate Version 6.5 (released in 2016)
New Features in Mup and Mupmate Version 6.4 (released in 2015)
-
There are new built-in location tags: _score, and _staff.N
-
User PostScript code
can be provided in a file rather than given literally inline.
-
It is possible to supply PostScript "hooks," which will get called
at specific times, including at the beginning or end of each page or score.
-
It is now possible to pass the values of Mup location tags to
user-provided PostScript code.
-
It is now possible to tell Mup to
adjust measure numbers
relative to what it would otherwise calculate, by specifying things like
"mnum +1" or "mnum - 3."
A common use for this would be if you want Mup to count an
invisbar, which by default is not
counted.
-
If an "include" file is not found,
and the name given does not already have a .mup or .MUP suffix,
the MUPPATH is searched again with
the suffix added, to try to find a matching file name.
-
Music symbols inside bold or boldital
text strings will now be made bold.
-
A new hint was added to the
User's Guide
on how to define a
macro
for
automatically deriving cue notes from another staff.
-
Two json files for mapping between Mup music symbol names and SMuFL symbol names,
as provided by L. Peter Deutsch,
have been added to the user-donated files.
New Features in Mup and Mupmate Version 6.3 (released in 2014)
-
The error message for missing
endif has been enhanced to tell where the
unclosed if, ifdef, or ifndef was begun.
-
Three more
clefs are supported: 8bass, bass8,
and subbass.
-
There is a new
extendlyrics parameter.
If you set this to y, and let Mup derive lyrics time value rather than
specifying them explicitly, then when Mup finds a tie or slur,
it will automatically add an underscore extender to any corresponding
syllables, if that syllable doesn't already end with a dash or underscore.
-
The -o option
has been enhanced. The odd and even qualifiers can now apply to
a range of pages, so you can do things like print the odd pages of one
movement inside a file containing multiple movements.
There is also a new "reversed" qualifier that will
print pages in reverse order. This may be useful for printers that stack
output sheets backwards. Also, page ranges can now include
a special page number of "blank" that will print
a completely blank page at that point.
That may be useful, especially when
panelsperpage
is set to 2.
-
There is a new
cue parameter that lets you have a
long passage of cue notes without having to specify [cue]... over and over.
-
Grace notes before a cue-sized chord will automatically be made smaller than
regular grace notes, and
grace and cue
can now be specified together, to force smaller grace notes.
-
The
ho (horizontal offset)
can now be applied to grace notes.
-
When ending a
set of endings, you can now specify
openendending or closedendending to override Mup's usual rules for
whether to draw the short vertical line at the end of the ending line.
-
There is a new exit statement that will
cause the rest of the input to be ignored.
-
You can now optionally add a y or n flag at the end of the
tablature stafflines parameter
to force the word TAB to be printed vertically on every score or on no scores,
rather than the default of printing it on the first score only.
-
There is a new
alignped parameter that will allow
pedal marks
to get closer to the staff, rather than always being aligned
across each entire score. Pedal marks are now allowed to have a
dist specified,
and if alignped is set to n, they can have
align
specified.
-
There is a new Mup macro file in the user-donated
programs area, for
printing stems on tablature staffs.
New Features in Mup and Mupmate Version 6.2 (released in 2013)
-
There is a new
leftspace parameter,
that allows you to control what portion of the white space surrounding a
chord gets placed on its left side.
-
There is a new mode for inputting notes, controlled by the
noteinputdir parameter.
If, when you have a chord with multiple notes in a voice, you enter the notes
in pitch order, bottom-up, or top-down, in this new mode, Mup
figures out the correct octave based on the octave of the previous note,
which often reduces how much you have to type.
-
You can now explicitly tell Mup which voice to use for deriving
lyrics
time values. That allows you to derive from voice three,
or from some completely different staff.
-
Since lyrics aren't used in
MIDI mode,
some lyrics-related user errors
have been reduced to warnings when run in MIDI mode.
-
Unary plus and minus operators are now supported for
coordinate arithmetic.
-
It is now possible to
save and restore the states of macros.
-
It is now possible to
save and restore the states of parameters.
-
The
scorepad,
scoresep,
staffpad,
and staffsep
parameters can now include a decimal fraction part rather than being
limited to whole numbers.
-
Phrase marks
will now begin and end beside stems rather than
at stem ends when appropriate.
-
The User's Guide section on parameters
now describes where each parameter takes effect, since for some of them,
it may not be obvious.
-
Lowercase letters "a-" are now considered as pitches when used as the
first character of a
chord, for the purposes of
transposition and for
sorting
grids
for printing via the
gridsatend parameter.
New Features in Mup and Mupmate Version 6.1 (released in 2012)
-
Mup is now available for free, without registration fee,
under a BSD-style license.
We hope this will encourage many more people to use it,
and should clear the way for it to be included in Linux distributions
that would otherwise not be willing to include it.
-
MIDI commands that have numeric values
can now optionally include zero or more intermediate values and an
ending value, along with a duration. Mup will then automatically add as
many MIDI commands as necessary to produce
smooth, gradual changes.
This can greatly simplify specifying things like ritards and crescendos.
-
Mup is now available as
both 32 and 64 bit packages in both .rpm and .deb formats.
New Features in Mup and Mupmate Version 6.0 (released in 2012)
-
Mup now supports
custom accidentals.
A note may have up to 4 accidentals. Accidentals can use whatever symbols you
like, predefined or
user defined.
You can control how accidentals affect pitch for
MIDI.
Two "include" files are provided for quarter step accidentals,
and for Extended Helmholtz-Ellis Just Intonation Pitch Notation.
-
You can
set overall tuning
to pythagorean or meantone, as alternatives to equal temperament.
-
You can
shift the overall pitch of notes from the setting of A4 being 440 Hz.
-
It is now possible to define
keymaps,
which allow you to map keys on your computer keyboard to other symbols.
This would typically be used to allow typing phonetically on a
standard ASCII keyboard, while generating strings in another alphabet,
such as Cyrillic or Greek. An example phonetic keymap
for Cyrillic is included.
-
It is now possible to specify different
headers and footers
for left- and right-hand pages.
-
There is a new
flipmargins parameter, which
lets you interchange left and right margins setting on alternating pages.
This may be useful for allowing extra space for book binding.
-
Margin overrides on the
newscore command
can now be optionally
preceded by a plus or minus sign, in which case the value is taken as
the amount to add or subtract from the normal margin value,
rather than an actual margin value.
-
There is a new
indentrestart parameter
that specifies whether a restart should be indented when it occurs at the
beginning of a new score.
-
There is a new
minalignscale parameter,
that allows you to set the limit on how much Mup compresses
aligned strings, in its efforts to prevent
them from running into the next item at the same alignment level.
The limit had previous been fixed at 0.667; this parameter lets you
set it from 0.1 (very extreme compression allowed)
to 1.0 (no compression allowed at all).
A warning is issued for any items that cannot be made to fit within the limit.
-
Some additional files are included as part of the standard Mup distribution,
that had previously only been available as user-donated files from the
Arkkra website.
New Features in Mup and Mupmate Version 5.8 (released in 2011)
-
The
coordinates
used on line, curve, print, and similar statements can
now be full arithmetic expressions. Operations include addition, subtraction,
multiplication, division, modulo, time offset,
sqrt, sin, cos, tan, asin, acos, atan, atan2, and hypot.
-
Ties and slurs can now be made to a different voice on the staff, rather
than only to the same voice. This applies both to
ties and
slurs
from individual notes, and
ties and
slurs of entire chords.
-
The rightmargin override on a
newscore or newpage command
will now accept "auto" as an alternative to a specific distance.
In that case, Mup will calculate the appropriate margin to use,
spacing the music based on
packexp and
packfact parameters,
without spreading to fill the line.
-
There is a new option of "restsonly" to the
vcombine parameter, that will never
combine notes, but will combine rests whenever possible.
-
There is a new
mingridheight parameter.
This could be useful if you want to draw empty grids that are taller than
the default, or if you just like a different minimum height for grids.
-
Location tags can now be set on
lyric syllables.
-
The restrictions on specifying font or size changes before circled and
boxed text have been removed.
New Features in Mup and Mupmate Version 5.7 (released in 2010)
-
Mup now supports nearly the entire set of standard PostScript characters,
including the Cyrillic and Greek alphabets, and many more letters with
various diacritical marks, as well as math symbols and the Zapf Dingbats font.
The maximum number of
user-defined symbols
has also been raised from 95 to 160.
-
You can now specify a
grace backup value on the end of things like phrases,
just like on the beginning.
-
There is a new
alternate way of specifying phrases,
by putting "ph" and "eph"
markers in your music input. With this new method, you don't need to
count up the number of bars lines crossed or calculate the time offsets;
Mup will do that for you.
-
There is a new button on the Mupmate Run parameters window, which lets
you leave the window visible when saving the values. This could save
some time if you are doing lots of runs with small variations in parameters,
like printing individual parts from a score.
-
There is a new
maxmeasures parameter that lets
you specify a maximum number of measures to put on any one score.
-
The
measnum parameter now accepts
an additional value of "every N,"
which will put a measure number on every Nth bar line.
The existing parameters for
measnumstyle,
measmunfont,
measnumfontfamily,
and measnumsize
can be used to control how they look.
-
There are new
shortcuts for changing to a different
font style within the same font family: \f(R) or \f(rom), \f(I) or \f(ital),
\f(B) or \f(bold), and \f(X) or \f(boldital).
-
When Mup detects an error while expanding a macro, Mupmate will now
highlight both the line calling the macro and the line being expanded
inside the macro, since it is possible the error could be either place.
New Features in Mup and Mupmate Version 5.6 (released in 2009)
-
Mup for Apple Mac OS X is now supported directly by Arkkra Enterprises,
rather than only being available as ported by a user.
This includes the same programs as are available for
Windows and Linux, including Mupmate and Mupdisp.
-
If you run Mupmate on a file that contains errors or warnings,
it will now highlight those lines,
and will automatically jump to the first line where a problem was
detected.
-
Mupmate will now append the value of the MUPPATH environment variable
to the value set for "Folder for Mup Include files" in the
File Locations Configuration page, when looking for "include" files.
-
Mupmate will expand environment variables in paths in Preferences,
as well as expanding ~ to the home directory of the current user, and ~user
to the home directory of the stated user. On Apple OS X, special variables
APPL, RSRC, SUPP, DOCS, and HOME are set, if they are not already set to
something explicitly by the user.
-
There is a new
slashesbetween parameter that lets
you specify you want two thick slanted lines between scores at the
left edge of the staffs. These are often used when there are a lot of staffs,
or when the number of scores per page varies, to help the musicians see clearly
where the next score begins.
-
There is a new
bracketrepeats parameter that will
draw brackets around repeated sections, to make them more obvious to the
performer. This may be helpful when playing in dimly lit areas.
-
There is a new
repeatdots parameter that will
allow you to get an alternate style of repeat signs that uses dots between
all lines of the staff, rather than the standard two dots.
-
There is a new
alignrests parameter that will
let you tell Mup to try to align rests with the surrounding notes in their
voice, rather than staying as close as possible to the middle of the staff.
This parameter can be changed mid-measure.
-
A "til" clause can optionally
have a stepsize offset, just like the start time can.
-
Mup is now much more lenient in allowing
tuplets that, strictly speaking,
are mathematically incorrect.
If you specify the "n" option, to not print the tuplet number,
it will now silently allow almost any summation of time values,
and adjust as necessary to fit the total time you say you want the tuplet
to take, on the assumption you are just using tuplets as a way to print
a cadenza
or chant.
If you don't use the "n" option, Mup will still warn
you about any tuplets that are not really valid, but will still accept them.
-
When you use the
three dots to mark attributes in brackets as "good til canceled,"
any "with" list items
will now not be applied to rests, because they are usually things
that only make sense on notes (like staccato or accents).
-
The
MIDI channel command will now output
a channel prefix meta event,
in addition to remembering the channel for future MIDI events.
New Features in Mup Version 5.5 (released in 2008)
-
There is a new
emptymeas parameter.
By default, Mup uses "ms;" (measure space)
for any voices for which no music input is given,
but often it would be handy to have it fill in a measure
rest instead. You can do that by setting this parameter to "mr;"
but this parameter is actually much more general, allowing you to specify
any valid music input. So, for example, if you have a measure-long pattern
that it used frequently, you can set this parameter to that pattern,
and Mup will then fill it in for you anywhere you don't explictly provide
something else.
-
The
staff and voice contexts
can now apply to a list of staffs or voices rather than just one.
-
There are three new optional values to the
stemshorten parameter
that let you control how Mup shortens stems that protrude from the staffs.
-
It is now possible to force
stem direction
on grace notes, just like on non-grace.
-
There are new parameters to control the appearance of
text "with" lists:
withfont,
withfontfamily,
and withsize.
-
It is now possible to specify a
list of "with" items
on rests as well as on notes.
-
MIDI processing now applies legato marks
by effectively setting the
release
to zero for those notes.
(It had already applied staccato, wedges, and the combination of legato marks
and staccato in previous versions of Mup.)
New Features in Mup Version 5.4 (Released in 2007)
-
It is now possible to define
user-defined symbols,
and also to override the appearance of the
built-in music symbols.
-
There is now an index for the HTML version of the User's Guide,
like for the PostScript version.
-
There is a new
lyricsdist parameter to control
how close lyrics can be placed to staffs.
-
Parameters that control distance from the staff
(dist,
chorddist,
dyndist, and
lyricsdist),
and well as the
dist on tempo and dynamic marks, etc.
can now include a decimal fraction part, rather than being restricted
to whole numbers.
-
There is a new
maxscores parameter,
that lets you set a maximum number of scores to print per page.
-
There is a new
useaccs parameter to let you tell
Mup to print without printing a key signature, but fill in accidentals as
needed to make the notes match the key signature, or to use a notation
style where all accidentals are explicitly shown.
-
There is also a new
carryaccs parameter to let you tell
Mup whether you want it to follow the normal convention that accidentals
carry through to the end of the current measure (or until explicitly
changed), or whether you want accidentals to apply only to the chord where
they are specified.
-
There is a new
measnumstyle parameter
that lets you control whether the measure numbers placed at the
beginning of scores (as turned on by the
measnum parameter)
are placed inside boxes or circles or left plain.
-
Failure to provide enough chords, rests, spaces, or lyrics in a measure
to add up to the time signature has been changed from an error to a warning,
with Mup supplying enough space to fill out the measure.
This may be useful if you are still in the middle of composing,
but want to look at what you have so far,
even though you are only partly done with a measure.
It could also be useful when entering
chant
or other music with an
erratic number of beats between bar lines. You could just set a
time signature
larger than the largest "measure" you will have,
and fill in as many notes as you need in each measure.
Various other things that used to be treated as errors have also been
relaxed to be only warnings, to be more forgiving of some typos,
or things that while not strictly correct, can be safely ignored.
-
When there are multiple voices overlapping, notation experts generally agree
that all accidentals should be placed left of the leftmost voice.
There used to be a few cases where Mup placed them between voices
when that was not strictly necessary.
This has been changed to only place accidentals between voices
when absolutely necessary to avoid ambiguity: when voices have
conflicting accidentals.
-
There is a new
align tag that can be applied to
rom, ital, bold, boldital, and crescendo
and decrescendo marks, to force several such items to be aligned vertically.
New Features in Mup Version 5.3
Version 5.3 is primarily focused on ease-of-use enhancements.
The largest item is the addition 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 direction
on 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
headshapes 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 onto 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."
-
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 predefined 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
and
chorddist
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
uncollapsible 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 Mup Users Guide 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.
Arkkra Enterprises