Closed hihahihahoho closed 11 months ago
I propose the following design for saving the configuration of this plugin:
Save the extension configuration for each project separately. The configuration information should be stored in a dedicated configuration file in the root path of the project or in the plugin’s installation path. According to the VSCODE documentation, extensions only have permission to access these two locations.
Provide includePath and excludePath configurations, which can be used separately or together, just like global search in VSCode.
The configuration file also includes content such as size and background, which means users can modify configurations including the newly added includePath/excludePath in the extended webview. This requires adding some UI interaction, perhaps in the form of a popup modal.
I've developed and updated the extension in such a way that the config is saved separately for each project, so thanks for the contribution but this PR will be closed.
Hello, first of all, I'm sorry for handling this PR so late. I was indeed very busy recently, but now I have some time to continue the development. I have tested your code and it works in the basic case, but it has some serious issues. After adding path1 under project A, this expansion becomes unusable in project B. The error message is like:
mainThreadExtensionService.ts:82 Error: ENOENT: no such file or directory, stat '/Users/username/workspace/projectB/path1'
obviously, the includeFolders from path1 should not continue to be used in project B. This is not something that can be fixed just by catching exceptions.