summaryrefslogtreecommitdiff
path: root/src/sheet
diff options
context:
space:
mode:
Diffstat (limited to 'src/sheet')
-rw-r--r--src/sheet/sheet grammar.abnf10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/sheet/sheet grammar.abnf b/src/sheet/sheet grammar.abnf
index b7b842e..3076f6b 100644
--- a/src/sheet/sheet grammar.abnf
+++ b/src/sheet/sheet grammar.abnf
@@ -31,20 +31,20 @@ bpm = "b" 1*DIGIT
instrument = "i" ( "piano" / "violin" )
; A note has three parts: octave, tone, and duration.
-note = *1octave tone *1duration
+note = tone *("/" tone) *1duration
-octave = "o" 1*DIGIT
+tone = *1octave ( "a" / "b" / "c" / "d" / "e" / "f" / "g" ) *1tone-shift
-tone = ( "a" / "b" / "c" / "d" "e" / "f" / "g" ) *tone-shift
+octave = "o" 1*DIGIT / 1*">" / 1*"<"
; Shifts the tone by some number of semitones
-tone-shift = "+" / "-"
+tone-shift = 1*"+" / 1*"-"
; A duration is either in the standard sheet notation or a precise
; duration.
;
; There are no overlaps between the two variants.
-duration = 1*DIGIT *"." / "p" 1*DIGIT *1("." 1* DIGIT)
+duration = *DIGIT *"." / "p" 1*DIGIT *1("." 1* DIGIT)
cram-repetition = *1cram *1repetition