The are some issues related with this one, but not seems the same goal.
I work in several projects that are related in some way. There are two frameworks with many sub projects, for example. I could say that I work in different contexts and the projects are differents in theses contexts, so it will be nice if I could change my current context and the projects availables in this context.
In other words, I am suggesting an project.json with this format:
[
{
"label": "awesome-framework",
"projects": [
{
"label": "core",
"description": "C:\\awesome-framework\core"
},
{
"label": "ui",
"description": "C:\\awesome-framework\ui"
}
]
},
{
"label": "wonderful-framework",
"projects": [
{
"label": "core",
"description": "C:\\wonderful-framework\core"
},
{
"label": "ui",
"description": "C:\\wonderful-framework\ui"
}
]
},
{
"label": "personal",
"projects": [
{
"label": "resume",
"description": "C:\\personal\resume"
},
{
"label": "game",
"description": "C:\\personal\game"
}
]
}
]
And, to usage, there will be another keyboard shortcut to change contexts. So I start my day, choose my context with alt+shift+c and along the day I can change my projects with alt+shift+p. Maybe I little bit crazy, but I think it will be useful for whom works in more than one company.
Thanks @robsonrosa ,
Sometime ago I was thinking in a similar idea, but with a different approach. The idea was to add, what you call _context_ as a _group_ for each project. In fact, the same project could be part of different _groups_. The structure should be something like this:
[
{
"label": "vscode-language-pascal",
"description": "c:\\Users\\alefr\\Documents\\GitHub\\vscode-language-pascal",
"groups": ["vscode" , "delphi"]
},
{
"label": "vscode-bookmarks",
"description": "c:\\Users\\alefr\\Documents\\GitHub\\vscode-bookmarks",
"groups": ["vscode"]
}
]
But to do that, first I would like to have this issue resolved in VS Code. So, the listing and selection would be much easier.
Even so, I never thought about a specific command to _change context/group_, and _filter_ the projects from that context while using List Projects. I liked your idea 😄 .
Thanks for your suggestion 👍
Depends on:
This would be a fine addition and allow projects with many internal folders that don't need to be edited to be excluded for the larger project view. PhpStorm does this and it's very helpful.
@robsonrosa @bobrocke: I've just released a new extension that supports your use case, check it out, I think you'll like it: Projects+.
@alefragnani I don't think it makes much sense to wait for issue #11468 to be closed, even if they do implement your request the extension wouldn't be able to support deep nesting.
Cool!
@fabiospampinato congrats for your extension 👍
I decided to wait for that issue to be released because I want to avoid _workarounds_ in my extensions. I have some bad experiences in the past, and now I prefer to use available APIs only. Your _workaround_ was clever, BTW.
About the _nesting_ limitation, I'm not worried, because it wasn't supposed to support anyway. It would be limited to one level only.
Is there any update on this?
I think I would like something like this. I generally create a "Project" for each client I have, but several clients have multiple projects such as different applications.
For my use case, I don't mind seeing all the sub-projects in one Explorer panel, but it would be nice when you do a global search that the search results could be minimized (tree control) by subproject.
I'm not sure if that's entirely clear or not.
Great extension though!
-Steve
Hi @adeptdeveloper ,
I’m not sure, but based on your scenario, I think you already have this, natively, in VS Code 😬 . Have you tried Multi-root Workspaces?
Each one of your “client workspace” could be a Multi-root Workspace, composed by each “App”. After created, just save each Multi-root workspace as a new Project on the extension.
Maybe, in the end, you don’t need this Projects grouping feature at all.
Hope this helps
Hi @alefragnani ,
Yes, thanks, this is exactly what I needed. I do like how your plugin handles project listing on the Activity Bar, but I found another plugin called Workspace Explorer that works as well. I wish it was in the Activity Bar but this will do.
https://marketplace.visualstudio.com/items?itemName=tomsaunders.vscode-workspace-explorer
Thanks!
-Steve
That’s great!
I know about that extension, it appears to work great too, specially if you are a Workspace centric user. In my case, I almost don’t use 😄 .
The grouping idea is what this issue is all about. I already played a bit on how it would work, but just for fun/testing the APIs. I think it should be the next big feature for the extension, but no ETA.
If you change your mind, feel free to evaluate when it’s ready.
Stay tuned
Based on the suggestion from #416, the idea is to add _icon_ for each groups, so this icon could be used in the Side Bar/Command Palette, instead of a default/basic folder.
https://github.com/alefragnani/vscode-project-manager/issues/416#issuecomment-686170986
A few month ago, my original issue was closed, in favor of https://github.com/microsoft/vscode/issues/74967, but it didn’t make any difference, because it is not assigned to any Milestone too.
That being said, I’m removing the depends on label and changing the original idea on how the UI would work.
It will be probably a multi milestone feature, and I already started playing with a few ideas, so you could see the first steps on the upcoming releases.
Most helpful comment
Thanks @robsonrosa ,
Sometime ago I was thinking in a similar idea, but with a different approach. The idea was to add, what you call _context_ as a _group_ for each project. In fact, the same project could be part of different _groups_. The structure should be something like this:
But to do that, first I would like to have this issue resolved in VS Code. So, the listing and selection would be much easier.
Even so, I never thought about a specific command to _change context/group_, and _filter_ the projects from that context while using
List Projects. I liked your idea 😄 .Thanks for your suggestion 👍