### Godot version

4.0.3

### System information

Win7

### Issue description

#if and #else highlighted with the color same as if and else shader statement:

![image](https://github.com/godotengine/godot/assets/28286958/c2d58151-d6d2-4305-b4da-36e76e316caf)


### Steps to reproduce

1. Create shader
2. Add #if and #else

### Minimal reproduction project

N/A
r_options->push_back(E);
		}
		return;
	}
	for (const ScriptLanguage::CodeCompletionOption &E : pp_defines) {
		r_options->push_back(E);
	}
	ShaderLanguage sl;
	String calltip;
	ShaderLanguage::ShaderCompileInfo comp_info;
	comp_info.global_shader_uniform_type_func = _get_global_shader_uniform_type;
	if (shader.is_null()) {
		comp_info.is_include = true;
		sl.complete(code, comp_info, r_options, calltip);
		get_text_editor()->set_code_hint(calltip);
		return;
	}
	_check_shader_mode();
	comp_info.functions = ShaderTypes::get_singleton()->get_functions(RenderingServer::ShaderMode(shader->get_mode()));
	comp_info.render_modes = ShaderTypes::get_singleton()->get_modes(RenderingServer::ShaderMode(shader->get_mode()));
	comp_info.shader_types = ShaderTypes::get_singleton()->get_types();
	sl.complete(code, comp_info, r_options, calltip);
	get_text_editor()->set_code_hint(calltip);
}
void ShaderTextEditor::_validate_script() {
	emit_signal(SNAME("script_changed")); 
	String code;
	if (shader.is_valid()) {
		_check_shader_mode();
		code = shader->get_code();