### Godot version

4.0 stable

### System information

Fedora, RX 590

### Issue description

I made a dictionary, and instead of using `:` to separate between key and value, i accidentally used `=`.
The error message was not clear at all `Parse Error: Expected identifier or string as LUA-style dictionary key.` 

I don't think assuming that people know how dictionaries are made in LUA is reasonable. And if this is not about LUA the programming language, i don't even know what this is about :D

I think this error should be replaced with something of the sort "Please use `:` as separator instead of `=` in your dictionary"

### Steps to reproduce

Paste this code in a script:

```

var dict = {
	1 = "lala"
}
```

Observe the error message
![image](https://user-images.githubusercontent.com/7917475/224549538-38ea25aa-ba75-431e-868b-0733a53b90ad.png)


### Minimal reproduction project

see above
} else if (sub_pattern->pattern_type == PatternNode::PT_REST) {
						pattern->rest_used = true;
					}
					pattern->array.push_back(sub_pattern);
				} while (match(GDScriptTokenizer::Token::COMMA));
			}
			consume(GDScriptTokenizer::Token::BRACKET_CLOSE, R"(Expected "]" to close the array pattern.)");
			break;
		}
		case GDScriptTokenizer::Token::BRACE_OPEN: {
			
			advance();
			pattern->pattern_type = PatternNode::PT_DICTIONARY;
			do {
				if (check(GDScriptTokenizer::Token::BRACE_CLOSE) || is_at_end()) {
					break;
				}
				if (match(GDScriptTokenizer::Token::PERIOD_PERIOD)) {
					
					if (pattern->rest_used) {
						push_error(R"(The ".." pattern must be the last element in the pattern dictionary.)");
					} else {
						PatternNode *sub_pattern = alloc_node<PatternNode>();
						complete_extents(sub_pattern);
						sub_pattern->pattern_type = PatternNode::PT_REST;
						pattern->dictionary.push_back({ nullptr, sub_pattern });
						pattern->rest_used = true;
					}
				} else {
					ExpressionNode *key = parse_expression(false);