### Godot version

c0d8d91

### System information

Windows 11

### Issue description

There's weird bug going on with the latest master branch. The auto completion in script editor is sorted in a wacky ways, putting sort of constants ahead of anything because it's ahead alphabetically
![image](https://github.com/godotengine/godot/assets/13846022/0f3e389e-f5d1-46b2-9f78-c215f3ad5abd)

Now compare it to my build about two weeks ago
![image](https://github.com/godotengine/godot/assets/13846022/37013cad-2e8f-4aa3-9270-0e8dfd9502ea)

Both are using the same content of 'editor_data' settings folder. And loading up the same project.

### Steps to reproduce

- Open a new blank project
- Make a new script
- Triggers any auto completion in Script Editor

### Minimal reproduction project

N/A
TypedArray<int> folded_lines;
	for (int i = 0; i < get_line_count(); i++) {
		if (is_line_folded(i)) {
			folded_lines.push_back(i);
		}
	}
	return folded_lines;
}
void CodeEdit::add_string_delimiter(const String &p_start_key, const String &p_end_key, bool p_line_only) {
	_add_delimiter(p_start_key, p_end_key, p_line_only, TYPE_STRING);
}
void CodeEdit::remove_string_delimiter(const String &p_start_key) {
	_remove_delimiter(p_start_key, TYPE_STRING);
}
bool CodeEdit::has_string_delimiter(const String &p_start_key) const {
	return _has_delimiter(p_start_key, TYPE_STRING);
}
void CodeEdit::set_string_delimiters(const TypedArray<String> &p_string_delimiters) {
	_set_delimiters(p_string_delimiters, TYPE_STRING);
}
void CodeEdit::clear_string_delimiters() {
	_clear_delimiters(TYPE_STRING);
}
TypedArray<String> CodeEdit::get_string_delimiters() const {
	return _get_delimiters(TYPE_STRING);
}
int CodeEdit::is_in_string(int p_line, int p_column) const {