diff Syncopation models/text_bnf_syntax.txt @ 6:ac882f5e6a11

adding new bits for midi and music objects
author christopherh <christopher.harte@eecs.qmul.ac.uk>
date Tue, 31 Mar 2015 16:59:45 +0100
parents
children 2c5df6a4a22f
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Syncopation models/text_bnf_syntax.txt	Tue Mar 31 16:59:45 2015 +0100
@@ -0,0 +1,28 @@
+
+<piece> ::=   <timesig> <line> | <piece> <line>
+
+<tempo> ::= "QPM{" <digits> "}"
+
+<ticks per quarter> ::= "TPQ{" <digits> "}"
+
+<line> ::= [<bars>] ["#" <comment-text>] "\n"
+
+<bars> ::= <time-info> | [<time-info>] <bar> | <bars> <bar>
+
+<time-info> ::= [<timesig>] [<ticks per quarter>] [<tempo>] 
+
+<timesig> ::= "t{" <digit> "/" <digit> "}"
+
+<bar> ::= "v{" <velocity-sequence> "}" | "y{" <note-sequence> "}"
+
+<note-sequence> ::= <note> | <note-sequence> "," <note>
+
+<note> ::= "(" <digits> "," <digits> "," <digits> ")"
+
+<velocity-sequence> ::= <decimal> | <velocity-sequence> "," <decimal>
+
+<decimal> ::= "0" | "1" | "0." <digits>
+
+<digits> ::= <digit> | <digits> <digit>
+
+<digit> ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"