Skip to content

Commit 147fec9

Browse files
committed
Improve auto-complete for this case #186 : adjust grammar
1 parent 5bf3104 commit 147fec9

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

Diff for: src/main/java/intellij_awk/Awk.bnf

+10-1
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@ lvalue ::= gawk_var_name | DOLLAR expr
502502

503503
// XXX this covers a[1][2][3] like in Gawk
504504
// XXX awk only supports a[1]
505-
private gawk_var_name ::= var_name (LBRACKET expr_lst RBRACKET)*
505+
//private gawk_var_name ::= var_name (LBRACKET expr_lst RBRACKET)*
506506

507507
// XXX for some reason the below makes it terribly slow or hanging on profile5.awk
508508
/*private gawk_var_name ::= var_name (subscript_start RBRACKET)*
@@ -512,6 +512,15 @@ private subscript_start ::= LBRACKET expr_lst {
512512
}
513513
private recover_on_rbracket ::= !RBRACKET*/
514514

515+
private gawk_var_name ::= var_name (subscript_start RBRACKET)*
516+
private subscript_start ::= LBRACKET expr_lst_inner {
517+
pin=1
518+
}
519+
private expr_lst_inner ::= expr_lst {
520+
// recoverWhile=recover_on_rbracket
521+
}
522+
//private recover_on_rbracket ::= !RBRACKET
523+
515524
private var_name ::= builtin_var_name | user_var_name
516525

517526
builtin_var_name ::= SPECIAL_VAR_NAME | SPECIAL_VAR_NAME_GAWK

0 commit comments

Comments
 (0)