GDScript: Allow mixed indentation on blank lines
This commit is contained in:
parent
16a93563bf
commit
00ad9e484e
@ -1162,15 +1162,6 @@ void GDScriptTokenizer::check_indent() {
|
||||
_advance();
|
||||
}
|
||||
|
||||
if (mixed && !(line_continuation || multiline_mode)) {
|
||||
Token error = make_error("Mixed use of tabs and spaces for indentation.");
|
||||
error.start_line = line;
|
||||
error.start_column = 1;
|
||||
error.leftmost_column = 1;
|
||||
error.rightmost_column = column;
|
||||
push_error(error);
|
||||
}
|
||||
|
||||
if (_is_at_end()) {
|
||||
// Reached the end with an empty line, so just dedent as much as needed.
|
||||
pending_indents -= indent_level();
|
||||
@ -1214,6 +1205,15 @@ void GDScriptTokenizer::check_indent() {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (mixed && !line_continuation && !multiline_mode) {
|
||||
Token error = make_error("Mixed use of tabs and spaces for indentation.");
|
||||
error.start_line = line;
|
||||
error.start_column = 1;
|
||||
error.leftmost_column = 1;
|
||||
error.rightmost_column = column;
|
||||
push_error(error);
|
||||
}
|
||||
|
||||
if (line_continuation || multiline_mode) {
|
||||
// We cleared up all the whitespace at the beginning of the line.
|
||||
// But if this is a continuation or multiline mode and we don't want any indentation change.
|
||||
|
2
modules/gdscript/tests/scripts/parser/.editorconfig
Normal file
2
modules/gdscript/tests/scripts/parser/.editorconfig
Normal file
@ -0,0 +1,2 @@
|
||||
[*.{gd,out}]
|
||||
trim_trailing_whitespace = false
|
@ -0,0 +1,20 @@
|
||||
# Empty line:
|
||||
|
||||
|
||||
# Comment line:
|
||||
# Comment.
|
||||
|
||||
func test():
|
||||
print(1)
|
||||
|
||||
if true:
|
||||
|
||||
# Empty line:
|
||||
|
||||
|
||||
print(2)
|
||||
|
||||
# Comment line:
|
||||
# Comment.
|
||||
|
||||
print(3)
|
@ -0,0 +1,4 @@
|
||||
GDTEST_OK
|
||||
1
|
||||
2
|
||||
3
|
Loading…
Reference in New Issue
Block a user