Selaa lähdekoodia

Merge pull request #96845 from bruvzg/edconfig

[Editor] Add .editorconfig to the projects.
Rémi Verschelde 11 kuukautta sitten
vanhempi
commit
4788f54d97
1 muutettua tiedostoa jossa 18 lisäystä ja 2 poistoa
  1. 18 2
      editor/editor_paths.cpp

+ 18 - 2
editor/editor_paths.cpp

@@ -245,7 +245,7 @@ EditorPaths::EditorPaths() {
 			}
 		}
 
-		// Check that the project data directory '.gdignore' file exists
+		// Check that the project data directory `.gdignore` file exists.
 		String project_data_gdignore_file_path = project_data_dir.path_join(".gdignore");
 		if (!FileAccess::exists(project_data_gdignore_file_path)) {
 			// Add an empty .gdignore file to avoid scan.
@@ -253,10 +253,26 @@ EditorPaths::EditorPaths() {
 			if (f.is_valid()) {
 				f->store_line("");
 			} else {
-				ERR_PRINT("Failed to create file " + project_data_gdignore_file_path);
+				ERR_PRINT("Failed to create file " + project_data_gdignore_file_path.quote() + ".");
 			}
 		}
 
+		// Check that `.editorconfig` file exists.
+		String project_editorconfig_path = "res://.editorconfig";
+		if (!FileAccess::exists(project_editorconfig_path)) {
+			Ref<FileAccess> f = FileAccess::open(project_editorconfig_path, FileAccess::WRITE);
+			if (f.is_valid()) {
+				f->store_line("root = true");
+				f->store_line("");
+				f->store_line("[*]");
+				f->store_line("charset = utf-8");
+				f->close();
+			} else {
+				ERR_PRINT("Failed to create file " + project_editorconfig_path.quote() + ".");
+			}
+			FileAccess::set_hidden_attribute(project_editorconfig_path, true);
+		}
+
 		Engine::get_singleton()->set_shader_cache_path(project_data_dir);
 
 		// Editor metadata dir.