Syntax: Difference between revisions

From MusiCAD
No edit summary
No edit summary
 
Line 23: Line 23:
notate as: 1/8; 3/16; etc or 0 for duration=0
notate as: 1/8; 3/16; etc or 0 for duration=0


denominators can be 1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 64, 128
denominators can be 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16, 20, 24, 28, 30, 32, 64, 128
 


'''Pitch'''
'''Pitch'''

Latest revision as of 21:06, 17 March 2023

This is an informal description of the MusiCAD file syntax as well as the internal representation of music.

Every tune starts literally with: melodie "My Tune Name";

Comments

Everything left from an exclamation mark will be ignored (unless the second character is % or #).

Layout

Lines starting with: !# contain layout/setup information in the form:

<NAME1>=<VALUE1>;<NAME2>=<VALUE2>;

each item terminated with a semicolon

Objects

Notes (and other objects) are terminated with a semicolon.

Duration

notate as: 1/8; 3/16; etc or 0 for duration=0

denominators can be 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16, 20, 24, 28, 30, 32, 64, 128


Pitch

Every note has a non-zero pitch Rests are notated as R.

A#3 Note A-sharp in 3rd octave

+## shift note to the right

+##+## second parameter is stem length adjustment

R Rest.

R+## shift rest to the right

R+##+## second parameter is is vertical shift.

Enhancements

. staccato (at rest means"multi rest")
m mordent
~ prall
c long prall (MusiCAD2: 0xF7)
r trill
z Schleifer
^ fermate
p non-legato
s staccatissimo (also expansion-rest due to "multi rest" in a score)
e roll (MusiCAD2: ê = 0xEA)
e1 single roll
e2 double roll
e3 triple roll
e*
eO hi-hat open (drums)
O other (instrument specific signs)
boo up bow
on down bow
ok dynamic accent <
bog dynamic accent >
Loa marcato
Q tenuto
ox mordent-schleifer
v# fingering (# can be 0-9,a-Z)
$ enharmonic exchange (duration<>0), hide item (duration=0)
$$ alternate enharmonic exchange
& following note
{ grace note
' split cluster-notes
} clusterize
u force stem up
d force stem down
( start tie
) end tie
a courtesy accidental (MusiCAD2: 0xCE)
? hide note
i other note-forms (MusiCAD2: 0xA8)
iQ flageolet open
iZ flageolet closed
is cue note (MusiCAD2: 0xF9)
iD cross-shape (drums)
i/ slash shape (guitar)
f parenthesize (MusiCAD2: 0xAD)

Further specification for duration non zero

Clef:

=v treble clef
=b bass clef
=n tenor clef
=a alto clef
=s drum clef
=e none (no clef)
=+ 8va
=- 8va-basso
=. loco
=_ 15ma-bassa
=*

Key

=Bb B-flat
=F#m F-sharp-minor

Meter

=3/4 triple meter
=2+3/8 compound meter 5/8 displayed 2+3/8
=2+3+2)/16 compound meter 7/16 displayed 7/16
=04/4 common meter: C
=002/2 alla-breve, divided common meter

Text

+ Lyrics 1
- Lyrics 2
T Lyrics 3
L Lyrics 4
` Directions 1
i Directions 2
P Directions 3
# Bar text
, Dynamics
_ Chord symbols
t Tempo change (MusiCAD2: ë 0xEB)
M MIDI-event (MusiCAD2:û 0xFB)
K color change
Q Symbols (from MusiCAD-font)
r cipher at multi rest (MusiCAD2: O 0xF7)
DJ Section
^ Text-files inclusion

Every text may be shifted: 0-3+4 +"Tekstje"

-3 3 vertical units to the left

+4 4 horizontal units up

Text may be sized: 0 +<3>"Tekstje"

<3> 3 units larger than default for the text..

Special objects

@A Arpeggio
@< Crescendo (obsolete)
@> Decrescendo (obsolete)
@P Pedal
@X End-pedal
@K Comma
@O Coda
@S Segno
@B Paragraph-sign
@C al Coda
@D Da-capo
@G Dal-Segno
@c Da-capo al Fine
@s Dal-Segno al Fine
@F Fine
@I Intro
@Z Bar-repeat
@z Phraze-repeat

example:

0-3+2 @S;

Segno-sign 3 units left and two up

*1
*2
%## whitespace (obsolete)
/ new line
// new page
(pipe-symbol) thick bar line
l thin bar line
I conditional line break/page break
: repeat signs at bar line example: 0-1 l; bar line decreasing automatic bar numbering with one

two-item objects

[<1 start crescendo number 1 (numbering is needed for overlap)
]<1 end crescendo number 1
> decrescendo
_ line (underscore)
fat line
p dotted line
( slur below
) slur above
[ hooked line below
] hooked line above
~ Glissando

example

0+5-2 [>0 start decrescendo number 0, 5 units right and two down.