Reduce the doctest lease duration...
[python_utils.git] / music / chords.g4
index bd180a96a2586c96aae3a53bbc027fb8473b82a7..182461760d11f9e836740f2d5ec55a1567ce0a23 100644 (file)
@@ -17,7 +17,8 @@
 grammar chords;
 
 parse
-    : rootNote majMinSusPowerExpr* addNotesExpr* extensionExpr* overBassNoteExpr*
+    : rootNote majMinSusPowerExpr* addNotesExpr* overBassNoteExpr*
+    | rootNote majMinSusPowerExpr* addNotesExpr extensionExpr* overBassNoteExpr
     ;
 
 rootNote
@@ -50,10 +51,12 @@ augmentedExpr: AUGMENTED;
 powerChordExpr: '5';
 
 addNotesExpr
-    : SIX
-    | SEVEN
+    : ADD* SIX
+    | ADD* SEVEN
     | MAJ_SEVEN
-    | ADD_NINE
+    | MIN_SEVEN
+    | ADD* NINE
+    | ADD* ELEVEN
     ;
 
 extensionExpr
@@ -108,19 +111,25 @@ MINOR: ('m'|'min'|'minor');
 
 SUS: ('sus'|'suspended');
 
-DIMINISHED: ('dim'|'diminished');
+DIMINISHED: ('dim'|'diminished'|'-');
 
-AUGMENTED: ('aug'|'augmented');
+AUGMENTED: ('aug'|'augmented'|'+');
 
 SLASH: ('/'|'\\');
 
+ADD: ('add'|'Add'|'dom');
+
 SIX: '6';
 
 SEVEN: '7';
 
+NINE: '9';
+
+ELEVEN: '11';
+
 MAJ_SEVEN: MAJOR '7';
 
-ADD_NINE: ('add'|'Add')* '9';
+MIN_SEVEN: MINOR '7';
 
 INTERVAL: (MAJOR|MINOR)* ('b'|'#')* DIGITS ;