Mup Version 7.1 Statement Summary

context
staffs voices & staffs voices: chord ; ....
[staffs voices & staffs voices; staffs voices] : chord ; ....
lyrics place staff using staff voice: time_valuelist [ verses ] "text"; ...
linetype bartype pad num ending_mark rehearsal fontfamily font (size) rehearsal_mark mnum=num =tag hidechanges
parameter=value
multirest num
newscore leftmargin=num rightmargin=num 
newpage leftmargin=num rightmargin=num
samescorebegin  ....measures of input... samescoreend
samepagebegin  ....measures of input or blocks... samepageend
fontfamily font (size) modifier place staffs dist num ! align num : beat "text ("text") til til_value; ....
mussym (size) place staffs : beat "mus_symbol" til til_value; ....
linetype phrase place staffs : beat til til_value; ....
octave place staffs : beat "text" til til_value; ....
pedal place staffs : beat * ; ....
cres_mark place staffs : beat til til_value; ....
midi staffs voices : beat "midi_keyword=value" til til_value; .... 
roll direction staffnum voicenum to staffnum voicenum : num ; ....
printcmd location "text"
postscript postscript_location with tag = tag file "text"
mirrored title fontfamily font (size) "text" "text" "text"
justifytype paragraph fontfamily font (size) "text"
linetype line location to location with fontfamily font (size) "text"
linetype curve location to location to location ....
linetype curve location to location bulge num ....
define MACRO_NAME(mac_params) macro_definition @
ifdef MACRO_NAME ..... else ..... endif
ifndef MACRO_NAME ..... else ..... endif
undef MACRO_NAME
eval MACRO_NAME = expression @
exit
savemacros "name"
restoremacros "name"
if expression ..... else ..... endif
include "filename"
fontfile "filename"
// comment--arbitrary text that will be ignored.

Values used in Mup statements

accidental	#, &, x, &&, n or {"acc_name"}
acc_spec	accidental symbol name in quotes followed by pitch_spec
bartype	bar, dblbar, repeatstart, repeatend, repeatboth, endbar, invisbar, or restart
beat	number from 0.0 to time signature denominator plus 1.0, optionally followed
	by how many grace notes to back up from there, as a negative number in parentheses,
	and an offset as a signed number in square brackets
chord	<<parm_contxt parameter=value>> [chord_style] time_value pitch(es) note_attributes inter-chord_attr
	Tuplets specified by   { chord ; .... } side num tupstyle, time_value slope num;
	On tablature staff, the pitch is: string fret "bend"
bend	full, or num and/or a fraction as num/num
chord_style	one or more (semicolon-separated) from the following:
	grace, cue, xnote, diam, with withlist, pad num, slash num, stemdir, len num, dist num,
	ho num, hs "headshape", or =tag
	Putting ... after the ] will repeat the chord_style until [-] or end of measure.
clef	treble, soprano, mezzosoprano, alto, 8bass   (these have default octave of 4)
	treble8, tenor, baritone, bass  (these have default octave of 3)
	frenchviolin, 8treble (these have default octave of 5)
	bass8, subbass   (these have default octave of 2)
control_command	saveparms "name" or restoreparms "name"
context	One of the following:
	parm_context	followed by list of parameters
	acctable "acc_table_name"	followed by acc_spec
	control	followed by control_commands
	music	followed by commands for printing music
	headfoot_context	followed by commands for printing text
	block	followed by paragraph commands
	grids	followed by pairs of strings: name and frets
	headshapes	followed by pairs of strings: name and list of 4 note head characters
	keymap "keymap_name"	followed by pairs of strings: pattern and replacement
	shapes "shapes_name"	followed by pairs of strings; symbol name and replacement
	symbol	followed by
		    bbox=num,num,num,num
		    postscript="text"
		    ystemoffset=num,num
cres_mark	< (crescendo) or > (decrescendo)
direction	up or down
ending_mark	ending "text"  or endending or openendending or closedendending
expression	see operator table on page 5
filename	path to a file on your system; uses MUPPATH to find, if not in current directory
	and not absolute path
font	rom, ital, bold, or boldital
fontfamily	avantgarde, bookman, courier, helvetica, newcentury, palatino, or times
fret	number from 0 to 99
headfoot_context	header, footer, header2, footer2, top, bottom, top2, or bottom2
hex_data	even number of hexadecimal digits
inter-chord_attr	tieslur_style tie direction, tieslur_style slur direction, bm, bm with staff side, ebm, esbm,
	abm, eabm, slope num, ph  side, eph, or alt num
interval	perfect, major, minor, augmented, or diminished
justifytype	justified, or ragged
linetype	medium, wide, dashed, or dotted (if omitted, linetype is narrow)
location	(x_expr, y_expr ) can contain tag, steps, time num, sqrt, sin, cos, tan, asin, acos, atan, atan2, hypot
mac_params	comma-separated list of parameter names, same naming rules as MACRO_NAME
MACRO_NAME	upper case letters, digits, and/or underscores, beginning with a letter
macro_definition	arbitrary text that will be used wherever MACRO_NAME appears in input
midi_keyword	tempo=num	program=num	parameter=num,num	port=num
	onvelocity=num	offvelocity=num	channel=num	chanpressure=num
	seqnum=num	text=text	copyright=text	name=text
	instrument=num	marker=text	cue=text	hex=hex_data
modifier	chord, analysis, figbass, or omitted
mus_symbol	musical symbol; see chart on page 8 for complete list.
note_attributes	one or more of the following: tieslur_style ~ direction (tie), tieslur_style < > direction) (slur),
	? (small), ^pitch (bend), hs "headshape", _"text" or =tag
num	some number; valid values depend on where it appears
octave	number from 0 to 9 or one or more + or - signs
parameter	See parameter table on page 5 for complete list
parm_context	score or staff num(s) or voice staffnum(s) voicenum(s)
pitch	letter from a to g, optionally followed by accidental and/or octave,
	or r (rest), s (space), us (uncollapseable space), or rpt (repeat)
pitch_adjustment	+num cents
	or -num cents
	or num / num
	or num
pitch_spec	all pitch_adjustment
	or one or more instances of a letter a-g followed by a pitch_adjustment
place	above, below, or between. If between, staffs must be of the form num&num
printcmd	left, right, center, or print
postscript_location	location or afterprolog, beforetrailer, atpagebegin, atpageend, atscorebegin, or atscoreend
rehearsal_mark	let, num, mnum, or "text"
side	above or below
size	number from 1 to 100 (points)
staffnum	number from 1 to 40
staffs	number from 1 to 40, or comma-separated list of dash-separated ranges
stemdir	up or down
stemlen	a number, in stepsizes
steps	a number of stepsizes, where a stepsize is 1/2 the distance between two staff lines
string	in tablature chord: pitch accidental followed by zero or more ' marks
tab_string	list of tablature strings. Each includes a pitch, optional ' marks, and optional octave.
tag	a lower case letter, or an underscore followed by lower case letters, digits, and/or underscores
	Each has 6 associated values: x, y, n, s, e, and w
	Predefined tag names are _win, _page, _score, _staff.N and _cur
text	arbitrary text; use \" to include quotes, \f(fontfamily font) to change font, \s(num) to change size,
	\(xx) to include special characters, \v(num) for vertical motion, \: to toggle piling, \| or \^ for alignment
time_value	1/8, 1/4, 1/2, 1, 2, 4, 8, 16, 32, 64, 128, or 256 with optional dots, + or -; or m (measure)
	or (only with rpt) dbl m or quad m
tieslur_style	dotted, dashed, or omitted
til_value	num or numm+num, plus optional (-num) and/or signed steps in square brackets
tuplet	See chord
tupstyle	y (always print bracket), n (no number or bracket), num (number only), or omitted (default)
value	See information about the item to the left of the = for valid values
verses	number or comma-separated list of dash-separated ranges
voicenum	1, 2, or 3
voices	comma-separated list of dash-separated ranges of voicenums
withlist	comma-separated list of the following: . (stacatto), - (legato), ^ (accent), > (accent), or "text"
X	x, w, or e  (x, west, or east)
Y	y, n, or s  (y, north, or south)

Font/size changes in text strings


To change font inside a quoted text string, use \f(fontfamily font) or \f(font_abbr) from the table:
font fontfamily
avantgarde bookman courier helvetica newcentury palatino times
rom AR BR CR HR NR PR TR
bold AB BB CB HB NB PB TB
ital AI BI CI HI NI PI TI
boldital AX BX CX HX NX PX TX

\f(previous) or \f(PV) changes to previous font.
\f(rom) or \f(R) changes to roman in current family.
\f(ital) or \f(I) changes to ital in current family.
\f(bold) or \f(I) changes to bold in current family.
\f(boldital) or \f(X) changes to boldital in current family.
\s(num) changes to point size num, 1 to 100.
\s(+num) increases the size by num while \s(-num) decreases it by num points.
\s(previous) or \s(PV) reverts to previous size.

Mup command line arguments

-c num combine num or more measures of rest into multirest
-C used with -E, keep comments rather than discarding them
-d num turn on debugging level num
-D MACRO=def define MACRO as def
-e errfile put error output into errfile
-E just expand macros and "include" files and write result to standard output
-f outfile put output into outfile
-F put output into file, deriving output file name from input file name
-l print the Mup license and exit
-m midifile generate MIDI output into midifile
-M generate MIDI output, derive file name
-o pagelist only print pages in pagelist, list of numbers or ranges, optional odd or even, or reversed
-p num start numbering pages at num
-q quiet mode; omit version and copyright notice on startup
-s stafflist print only the staffs listed in stafflist; add vN to restrict to voice N
-v print version number and exit
-x M,N extract measures M through N, negative relative to end, 0 for pickup

Mupdisp commands

num<Enter> go to page num
+ or <space> or <cntl-E> or <cntl-F> forward 1/8"
f or <Enter> or <cntl-D> or <cntl-N> forward 1"
- or <backspace> or <cntl-Y> or <cntl-B> backward 1/8"
b or <cntrl-U> or <cntl-P> or <cntl-B> backward 1"
h or ? help
m toggle between full and partial page modes
n next page
p previous page
q or ZZ quit
r repaint the screen

Arithmetic operator precedence and associativity

These are the arithmetic operators supported by eval expressions and generalized conditionals.
Operators on each line have equal precedence, which is higher than the precedence of those on the lines below them.
operators operations associativity
( ) grouping left to right
! ~ - + not, one's complement, unary minus, unary plus right to left
* / % multiply, divide, modulo left to right
+ - add, subtract left to right
<< >> left shift, right shift left to right
< <= > >= less than, less or equal, greater than, greater or equal left to right
== != equal, not equal left to right
& bitwise AND left to right
^ bitwise XOR left to right
| bitwise OR left to right
&& logical AND left to right
|| logical OR left to right
? : interrogation right to left

Note: generalized conditionals can also use "defined()"

Functions for location tag arithmetic and eval expressions

Name Argument(s) Result
sqrt number square root of the number
sin angle (degrees) sin of the angle
cos angle (degrees) cosine of the angle
tan angle (degrees) tangent of the angle
asin number arc sine of the number (degrees)
acos number arc cosine of the number (degrees)
atan number arc tangent of the number (degrees)
atan2 number,number arc tangent of the ratio of the numbers (degrees)
hypot number,number square root of sum of the squares of the numbers
round number number rounded to nearest whole
floor number number rounded down to whole number
ceiling number number rounded up to whole number

Note: round, floor, and ceiling return whole numbers, and are only supported for eval expressions.
The others return decimals numbers and are supported for both location tag arithmetic and eval expressions.

Mup Parameters

Parameter Score Staff Voice Hd/Ft Valid Values Default
a4freq X 100.0 to 1000.0 440.0
aboveorder X X mussym,octave,dyn&othertext&chord,lyrics,ending,reh as listed
acctable X "table_name" ""
addtranspose X X up or down, followed by interval and num, then optional notes or chords up perfect 1
alignlabels X center, or left, or right right
alignped X X y or n y
alignrests X X X y or n n
barstyle X optional between comma-separated lists of staffs or dash-separated ranges, or all
beamslope X X X 0.0 to 1.0, 0.0 to 45.0 0.7,20.0
beamstyle X X X comma-separated list of time_values that add up to a measure
beloworder X X mussym,octave,dyn&othertext&chord,lyrics,pedal as listed
betweenorder X X mussym,dyn&othertext&chord,lyrics as listed
bottommargin X 0.0 to pageheight minus 0.5 inches 0.5 inches
brace X comma-separated list of staffs or dash-separated ranges
bracket X comma-separated list of staffs or dash-separated ranges
bracketrepeats X y or n n
cancelkey X X y or n n
carryaccs X X y or n y
chorddist X X 0.0 to 50.0 (stepsizes) 3.0
chordtranslation X X nothing or "German" or string like "do re mi fa sol la si"
clef X X
treble,treble8,8treble,frenchviolin,soprano,mezzosoprano,alto,tenor,baritone,bass,8bass,bass8,subbass
treble
cue X X X y or n n
defaultkeymap X X "keymap_name" ""
defaultphraseside X X X above, below, or nothing
defoct X X X 0 to 9 based on clef
dist X X 0.0 to 50.0 (stepsizes) 2.0
division X MIDI division, 1 to 1536 (ticks per quarter note) 192
dyndist X X 0.0 to 50.0 (stepsizes) 2.0
emptymeas X X X string containing music input "ms;"
endingkeymap X X "keymap_name" ""
endingstyle X top, barred, or grouped top
extendlyrics X X X y or n n
firstpage X 1 to 5000 1
flipmargins X y or n n
font X X X rom, bold, ital, or boldital rom
fontfamily X X X
avantgarde, bookman, courier, helvetica, newcentury, palatino, or times
times
gridfret X X 2 to 99 4
gridsatend X X y or n n
gridswhereused X X y or n n
gridscale X X 0.1 to 10.0 1.0
indentrestart X y or n n
key X X
pitch major or minor; or 0 to 7 # or & and optional major or minor
c major
label2 X X "text" ""
label X X "text" " "
labelkeymap X X "keymap_name" ""
leftmargin X 0.0 to pagewidth minus 0.5 inches 0.5 inches
leftspace X 0.0 to 0.5, 0.0 to 100.0 0.15, 5.0
lyricsalign X X 0.0 to 1.0 0.25
lyricsdist X X 0.0 to 50.0 (stepsizes) 2.0
lyricsfont X X rom, bold, ital, or boldital rom
lyricsfontfamily X X
avantgarde, bookman, courier, helvetica, newcentury, palatino, or times
times
lyricskeymap X X "keymap_name" ""
lyricssize X X 1 to 100 (points) 12
maxmeasures X 1 to 1000 1000
maxscores X 1 to 1000 1000
measnum X y, n, or every N n
measnumfont X rom, bold, ital, or boldital rom
measnumfontfamily X
avantgarde, bookman, courier, helvetica, newcentury, palatino, or times
times
measnumsize X 1 to 100 (points) 11
measnumstyle X boxed, circled, or plain plain
midlinestemfloat X X X y or n n
minalignscale X X 0.1 to 1.0 0.667
mingridheight X X 2 to 99 4
musicscale X 0.1 to 10.0 1.0
noteheads X X X string containing 1 or 7 headshape names "norm"
noteinputdir X X X up, down, or any any
noteleftfont X X X rom, bold, ital, or boldital rom
noteleftfontfamily X X X
avantgarde, bookman, courier, helvetica, newcentury, palatino, or times
times
noteleftsize X X X 1 to 100 10
numbermrpt X X y or n y
numbermultrpt X X y of n y
ontheline X X X y or n y
packexp X 0.0 to 1.0 0.8
packfact X 0.0 to 10.0 1.0
pad X X X -5.0 to 50.0 0.0
pageheight X 2.0 to 24.0 inches or 5.0 to 61.0 cm 11.0 inches
pagesize X letter, legal, flsa, halfletter, a4, a5, a6 then optional portrait or landscape letter
pagewidth X 2.0 to 24.0 inches or 5.0 to 61.0 cm 8.5 inches
panelsperpage X 1 or 2 1
pedstyle X X line, pedstar, or alt pedstar line
printedtime X X times signature or one or two strings
printkeymap X X "keymap_name" ""
printmultnum X X y or n y
rehearsalkeymap X X "keymap_name" ""
rehstyle X X boxed, circled, or plain boxed
release X X X 0 to 500 (milliseconds) 20
repeatdots X X standard or all standard
restcombine X 2 to 1000 not set
restsymmult X X y or n n
rightmargin X 0.0 to pagewidth minus 0.5 inches 0.5 inches
scale X 0.1 to 10.0 1.0
scorepad X num or num,num, negative pageheight to pageheight (stepsizes) 2.0,2.0
scoresep X num or num,num, 6.0 to pageheight (stepsizes) 12.0,20.0
shapes X X X shapes context name as a string empty
size X X X 1 to 100 12
slashesbetween X y or n n
stafflines X X 1, 1n, 5, 5n, 5 drum, 1 drum, or tab (tab_strings) optionally followed by y or n 5
staffpad X X negative pageheight to pageheight (stepsizes) 0.0
staffs X 1 to 40 1
staffscale X X 0.1 to 10.0 1.0
staffsep X X 6.0 to pageheight (stepsizes) 10.0
stemlen X X X 0.0 to 100.0 (stepsizes) 7.0
stemshorten X X X 0.0 to 2.0, 0.0 to 7.0, -4 to 50, -4 to 50 (stepsizes) 1.0,2.0,1,6
subbarstyle X linetype bartype appearance staff_list time counts
swingunit X X X time value or nothing nothing
sylposition X X -100 to 100 (points) -5
tabwhitebox X X X y or n n
textkeymap X X "keymap_name" ""
time X common, cut or N/D where N is 1 to 99 and D is 1, 2, 4, 8, 16, 32, or 64 4/4
timeunit X X X time_value (can include dots) D of time sig
topmargin X 0.0 to pageheight minus 0.5 inches 0.5 inches
transpose X X up or down, followed by interval and num, then optional notes or chords up perfect 1
tuning X equal, pythagorean, or meantone equal
tupletslope X X X 0.1 to 1.0 for factor, 0.0 to 45.0 for max slope 0.7, 20.0
units X inches or cm inches
useaccs X X n, y none, y all, y nonnat, y noneremuser, y nonnatremuser n
visible X X X y, n, or whereused y
vcombine X X voices then optional nooverlap, shareone, stepsapart, overlap, or restsonly, and bymeas nothing
vscheme X X 1, 2o, 2f, 3o, or 3f 1
warn X y or n y
withfont X X X rom, bold, ital, or boldital rom
withfontfamily X X X
avantgarde, bookman, courier, helvetica, newcentury, palatino, or times
times
withkeymap X X "keymap_name" ""
withsize X X X 1 to 100 12


music characters
Music symbols can be used in text strings by using \(symbol_name), or \(smsymbol_name) for smaller version.

Arkkra Enterprises
http://www.arkkra.com
support@arkkra.com