diff --git a/src/text_editor/plugin_project_management.cpp b/src/text_editor/plugin_project_management.cpp index 63f5fc8..40d8d27 100644 --- a/src/text_editor/plugin_project_management.cpp +++ b/src/text_editor/plugin_project_management.cpp @@ -9,11 +9,6 @@ void SetProjectDirectory(String dir) { } } -void CMD_SetProjectDirectoryHere() { - BSet main = GetBSet(PrimaryWindowID); - SetProjectDirectory(GetDirectory(main.buffer)); -} RegisterCommand(CMD_SetProjectDirectoryHere, "", "Sets work directory to the directory of the current buffer, it also renames couple special buffers to make them accomodate the new ProjectDirectory"); - void CO_OpenCode(mco_coro *co) { Array patterns = SplitWhitespace(CoCurr->arena, OpenCodePatterns); Array exclude_patterns = SplitWhitespace(CoCurr->arena, OpenCodeExcludePatterns); @@ -59,3 +54,17 @@ void CO_OpenCode(mco_coro *co) { "Open all code files in current ProjectDirectory, the code files are determined through NonCodePatterns_EndsWith config variable list", data->dont_wait_until_resolved = true; ); + +void CMD_SetProjectHere() { + BSet main = GetBSet(PrimaryWindowID); + String directory = GetDirectory(main.buffer); + SetProjectDirectory(directory); +#if PLUGIN_CONFIG + Scratch scratch; + for (FileIter it = IterateFiles(scratch, directory); IsValid(it); Advance(&it)) { + if (EndsWith(it.filename, "project.te")) { + LoadConfig(it.absolute_path); + } + } +#endif +} RegisterCommand(CMD_SetProjectHere, "", "Sets the project directory, opens the project file etc."); \ No newline at end of file