Closed stoffeastrom closed 7 years ago
@waderyan , sorry for the late response:
Do your micro services share a parent folder? Why or why not?
Yes, for convenience. It makes it easier to find related services when they're under the same directory.
Is each microservice separated into its own git repository? Why or why not?
Yes. They not only have different repos, they also have different linting and debugging configurations. Also, using Cmd+P to switch files between projects is super useful. Global search across related projects, ...
Looking forward to seeing this in action!
One solution would be to create a link to the folder where the files you would like to access are located. It is not ideal but it can help.
Example:
/home/myprojet
/home/mylibs
cd /home/myproject
ln -s /home/mylibs
code /home/myprojet
I have 3 monitors and I want to use VSCode across all three. If I can't open multiple instances then at least support undocking the tabs and dragging them out to other windows (similar to Visual Studio 2015).
Agree.
All other text editors do it. Why didn't microsoft think in something so simple and necessary?
@calloncampbell That feature is in this issue: https://github.com/Microsoft/vscode/issues/2686
@calloncampbell @rsyring I dont know what I am doing wrong but by using code -n
I can open as many editor instances as I want.
If I understand correctly, this will be investigated within the February Iteration Plan as "Initial investigation into implementing 'multi root workspaces', 'multi folder' workspaces" :)
+1... Isn't this possible with old version of VSCode or was I just using Sublime? forgot... but very handy. Now my Mac is littered with 6 windows all over the place...
And no I won't open the root folder of all those 6 folders I have opened, coz the explorer is a vertical scroll and it would take me forever to browse through the files...
@edmundtfy it's possible in sublime. Visual Studio Code never had support for this functionality.
@min20 solution is just perfect !!! multi folder project, it would instead multi-windows managed via buttons
@DeeJaVu considering that... VSCode has these mouseover-tooltip and control+click to go to definition. I downloaded some extensions for Sublime but the mouseover and control+click stuff don't work as well.. any recommendations?
I really miss this after using Sublime for years. Right now I'm working with Intershop (as front-end) with hundreds-thousands files per cardridge. If I have to load a full webshop it's really slow when you want to open CTRL+P to quickly switch to a file or when you have to search.
Also, I simply do not want every folder of a project in my editor. I don't need everything as a front-end developer. Just the folders I need are enough.
Another example: creating a Wordpress site and plugins for it at the same time. Why would I need to include a full Wordpress site? It just slows down your efficiency.
Another problem we have: our front-end framework is split in different git repos'. Having more then 4 windows open is a real pain. And SCSS intellisense is not working then (IE. variables from core > package)
TLDR; Please, make this happen. VScode is unusable for large/huge projects
+1, lets imagine you develop a wordpress or a drupal with several custom modules.
Your project root is the root of your website, but you don't want the full website to be a repo, you just want your several modules or themes as independant repo each.
Very common use case in web development that should be covered, even by the smallest/lightest IDE.
+1
+1, would make me able to edit a project and work on it's submodules seamlessly
+1
Its the only issue stopping us from migrating our entire 32 person dev team to VS.
Micro-service development is just not feasible, its painful.
+1
+1, definitely useful, I'm deciding go to vscode from sublime, but, because of this feature is missing, I think I would still use sublime until one day..
Its a very necessary and basic featured. I can't believed how come developers of this great editor ignored it. It is useless without this feature. This is stopping me to switching to VSCode from Atom.
Please add this feature. After using Sublime and then Atom this is for me a necessary feature of an editor. Of course it's not that easy because of the git integration, but it's something I need within my favourite editor.
+1
+1 urgent need
+1 Like it was said before, to move from Atom to VSCode we really need this feature.
ATTENTION BEFORE COMMENT ***PLEASE !!!! Stop comment with a "+1"
Each of your useless comment distracts more than a hundred people only with this thread !!! If you want to support this feature - it has emotion in the first message ! If you want to subscribe to updates - for this is the "Subscribe" button to the right of topics Respect the other members, who are forced to read your "+1", "really needed", etc
For reference, the way Sublime Text (as an example) arranges it's projects is by "including" folder trees, with unique options per "folder" included in your project.
To visualise this, the JSON of a Sublime Text project file looks like this:
{
"folders":
[
{
"name": "Front-End (web-forms)",
"path": "source/www/forms",
"file_exclude_patterns":
[
"*.sublime-*",
".gitignore"
],
"folder_exclude_patterns":
[
"node_modules",
".idea",
"bin",
"fonts"
]
},
{
"name": "CORE C# Server Components",
"path": "Source/Server",
"file_exclude_patterns":
[
".gitignore",
"*.resx",
"*.designer.cs",
"*.StyleCop",
"*.testsettings",
"*.cache",
"*.user",
"*.vsmdi"
],
"folder_exclude_patterns":
[
"bin",
"obj",
"TestResults",
"Service References"
]
},
{
"name": "DB schemas & utility scripts",
"path": "Source/Database"
},
{
"name": "Grunt Build source",
"path": "Build",
"folder_exclude_patterns":
[
"dist",
"node_modules",
"TestResults"
]
}
],
}
As you can see, each included folder is relative to the project path (in the case of sublime text his is the path of the *.sublime-project
file). Also, each folder has a section for excluding file and folder patterns with wildcards. Great for ignoring (as can be seen above) test results, libraries that you shouldn't edit, artwork and loads of other stuff.
This is the last reason I have left for not switching.
It's very useful!
+1 Example: need to check if some functionality is not already implemented in other modules that the app references so that I don't duplicate functionality
Obviously the modules are stored elsewhere in the file path, not in the app itself, and using multiple windows is pain with just one screen, when you just want to quickly access a file and read the code I'm talking AngularJS apps, which don't need deployment or anything, just a running server. Why should i bother to dev in another file structure, when i can just open the App folder directly from Tomcat and have my changes take effect in real time.
And no, there is no parent folder, unless you suggest opening the Tomcat server folder as a project (which is like suggesting I open my whole HDD as a project, because I'll be able to open all the files then).
Wow, I uninstalled atom to try out VS, and this feature hasn't been added since 2015.
stoffeastrom opened this issue on 21 Nov 2015
That's depressing. :disappointed:
PS: Opening the master folder, is not exactly a solution as it opens up all unwanted files as well, beating the whole purpose of this ticket.
That's depressing indeed. But then again not as depressing as people still complaining about an amazing, free, opensource editor (which consistently adds a handful of new features every month). Nor as depressing as spamming everyone watching this thread with comments about one's depression.
(Now I am one of the spammers, I guess :grin:)
Update: The current plan is to look into this in the March/April iterations.
See https://github.com/Microsoft/vscode/issues/21923 for the March iteration plan:
Investigate into multi-root, multi-folder workspaces #396 @bpasero @Tyriar
+1
To share a real world example that refines the feature description: Example, WordPress Theme/Plugin dev.
In other editors, I set up several folders as "bookmarks", to get to a fairly large and complex file tree a little bit easier to manage. One is to the webroot, which is the root I'd prefer any debug and code completion function look up to start at (the environment). Second is to the actual project, a theme folder or a plugin folder which, in my workflow, is the version control root. Occasionally, I set up additional folders as reference, such as a parent theme, or template theme, or a plugin that I'm integrating with and I need to reference/read frequently.
So the feature set here is, 1. the ability to set the git root and the search root to different locations. 2. A folder bookmarking system that is purely visual to declutter the file tree panel.
For some on the thread, where the git root, and the project root is the same, it seems that learning and using submodules would be enough, and then it's just about 2. to get a nice less cluttered view of a nested folder.
I'm sure that some on the thread are actually asking for literal multi-project support, but I'd assume most are just asking for mainly the simpler folder bookmarking idea.
I'm additionally asking for a way to define one as a project root (search/debug), and another as a git root. (Feel free to ignore my poor naming of things.)
My workaround for this is simply create a parent folder and within create the symbolics links with all the projects that I want. e.g.
I have these projects
1. my-app-api 2. my-app-client
I create a folder called my-app-all (the name is irrelevant here) and within, I create two symbolics links pointing to my-app-api and my-app-client then in VSCode I just need to open my-app-all
Steps
mkdir my-app-all
cd my-app-all
ls -s ../my-app-api
ls -s ../my-app-client
Notes: The git integration won't work
@DannyFeliz this should be marked as an answer to this issue and posted up top for everyone to see... I've tested this on Windows too, using the MKLINK command. Example of usage:
When you open the project in VS code you will see the referenced folder and all the files/folders in it.
Happy coding guys!
This does not enable the Git integration to work.
On Mon, Mar 20, 2017 at 2:42 PM, poparazvandragos notifications@github.com wrote:
@DannyFeliz https://github.com/DannyFeliz this should be marked as an answer to this issue and posted up top for everyone to see... I've tested this on Windows too, using the MKLINK command. Example of usage:
- Open Command Prompt with Administrator privileges
- Go to your project folder 3.[optional] create a links folder
- use MKLINK /D "link_name" "path to folder you want to reference"
When you open the project in VS code you will see the referenced folder and all the files/folders in it.
Happy coding guys!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Microsoft/vscode/issues/396#issuecomment-287907310, or mute the thread https://github.com/notifications/unsubscribe-auth/ABEOBVKz2bqFsRdfvyOpcFW2e_26HV5bks5rnvLWgaJpZM4Gm3nX .
@ehartford I said an answer, not THE answer, as most of us were looking just for this exact thing, displaying several directories in the same VSCode window, that reside in different locations. Symbolic Links do just that, but when working on Windows this is not the solution which comes to mind. It had to pass 2 years and for a Linux/OSX developer to come and show us the simplest workaround. I'm glad I decided to finally drop in my comment on this issue as I've got a workaround for what I wanted after just 12 days, when I needed it the most.
The issue should not be dropped, as a lot more can be done if the developers choose to step in on the matter. But for the most of us this is satisfying. I was just suggesting to somehow move this on top, so people don't waste time reading all the other comments, until they reach this comment. Some might just overlook it because of the size of the thread.
I'll just edit this as I see people already jumping on my back because I found out how to achieve what I wanted and tried to make it easier for others to see an alternative even if not perfect. BTW: You can always use the command prompt integrated into VSCode to pull/commit/push files in individual linked folders but why settle for workarounds.
Without Git integration, it's a total nonstarter. I don't consider this an acceptable solution by any means. Looking forward to an actual solution. Best regards.
If it helps -- google appengine nodejs client is structured like this:
https://github.com/GoogleCloudPlatform/google-cloud-node
I'd love to be able to open / debug / work in a solution like this (even if it's one package at a time). I'd love to be able to write Typescript based projects / libs in this style.
Thanks for all the great work!
Love VSCode, but it's crap at handling multiple projects. But I can understand why the feature has been put off, as it makes multiple things like source control more complicated due to nesting etc.
I would happy for a 'project quick switch' feature OR the ability to 'tab' multiple vscode instances in one window.
完全同意 ,请支持同一个窗口中打开多个项目文件夹。这功能很重要。
@replete It's not a perfect solution for your problem. But give Project Manager a try, this is partially helping me right now.
@dariusrosendahl Yep, discovered this morning funnily enough! Does the job for now.
The sidebar has only 5 icons, It wouldn't take much to add a 'Project' sidebar. But it seems vscode product owners are super fussy about how minimal it is. Too minimal IMO as it's now becoming an IDE.
@replete glad to know it's being helpful 😄
In fact, there in an experimental API for creating a so called Tree Explorer Contribution (just like a Symbols panel - https://github.com/Microsoft/vscode/issues/15485). With that, the extension could add an icon to the Activity Bar.
I will add an issue to my extension with your suggestion, thanks 👍
+1
@dmccaffery
I, personally, don't care if this feature ends up in the product or not -- I understand why some folks want it, but I would point out that it does make everything slightly more convoluted.
Then maybe don't dominate the conversation with negative comments against the feature and about how VSC is not an IDE? I think a single response/negative voting is enough, or at worst two, if one needs to clarify a position further.
Besides, the "not an IDE" argument is moot. Other non-IDEs also allow for that.
For instance: when searching using a regex expression -- which workspace am I searching? one? all?
Not that big an issue. Either search all, or have a selector to scope the search to one of the open workspaces. Again, other "non IDEs" (as well as IDEs) already handle this (and other) cases.
I fixed this issue in my own setup by creating a dir for each "workspace" and symlinking to the projects I want to see in that said workspace.
I saw that
Initial investigation into multi-root, multi-folder workspaces #396 @bpasero @Tyriar
is done according to https://github.com/Microsoft/vscode/issues/21923 any updates on this? :)
We (subset of the team) did an initial investigation in the amount of work involved and the challenges we see and the next steps is to discuss the result of that with the team and plan for it. We do our planning for April release during this week so I would expect more fine grained plan items as a result of this work showing up soon.
If I'm not too late to the party here's a nice way this could be implemented. When you go to "Explorer" we already have two sections. One for opened files and one for the explorer tree of the current opened folder.
Ideally we could just open more folders in same window and they would be added here in its own section that can be expanded to see the explorer tree.
Same thing could be done for Source Control section. One subsection for each folder that is opened in the "explorer". So a 1to1 relation.
This way maybe we can make everyone happy. We have support for opening multiple folders in same window if we want to, and also GIT integration still works and is able to handle each "project root" separately.
Right now it doesn't seem possible to opening multiple project folders in the same window which imho is a bit constraining. If you are working on modular modern projects it's a must have to be productive.