eclipse-theia / theia

Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.
http://theia-ide.org
Eclipse Public License 2.0
19.87k stars 2.48k forks source link

[Feature] Add support for vertical tabs #13979

Open rrmistry opened 1 month ago

rrmistry commented 1 month ago

Feature Description: Vertical Tabs - A Game-Changer for Developer Productivity

Hey Theia team,

We're reaching out about a feature that's been causing a lot of frustration in the dev community: vertical tabs. VS Code has been taking their time on this, and we think Theia has a real opportunity here.

Why vertical tabs matter:

  1. Better visibility: No more guessing which tab is which when you've got 20+ files open.
  2. Improved workflow: Scroll through tabs vertically instead of squinting at a long horizontal line.
  3. Enhanced productivity: Manage large projects without constantly reorganizing your workspace.

Here's a preview of what we're talking about, implemented by @orange4glace for VS Code:

behavior

Pretty slick, right?

There's been a lengthy discussion about this for VS Code (https://github.com/microsoft/vscode/issues/108264), with tons of developers voicing their support. But so far, no dice.

This is where Theia can really shine. By implementing vertical tabs, you'd be addressing a major pain point that a significant portion of the dev community has been vocal about. It's not just a nice-to-have; for many of us, it's a must-have feature that would seriously improve our daily workflow.

We get that there are nuances to work out, but that's part of the challenge. The potential payoff is huge: you could attract a lot of developers who are frustrated with the limitations of their current IDEs.

So, what do you think? Are you up for implementing a feature that could set Theia apart and make a real difference in developers' day-to-day work? We're excited about the possibility and hope you are too.

Looking forward to your thoughts on this!

JonasHelming commented 1 month ago

This looks pretty cool, thank you for reporting this! In general I would claim that the Theia community is likely to be very open towards a contribution of this improvement. This is specifically true, because it can likely be implemented as a dedicated Theia extension, so adopters of Theia can choose whether they want to integrate the feature or not. Please note that the core of Theia itself is modular, so you can implement features independently of the core. Further, I guess it should be (de)activatable by a user setting.

I added this feature request o the next dev call to get some community feedback. Please feel welcome to join this call. Please be aware that attendance might be limited due to vacation season, so we might re discuss this in a future meeting, too.

Please keep in mind that there are basically two adopters we need to care about:

  1. Platform adopters building custom tools based on Theia Some of them might want to include this and can add it, some of them can just exclude the Theia extension
  2. Theia IDE users For theia IDE (the default tool based on Theia) we would need to decide whether to include it so a user setting would be great there, as we likely want to add it there.

Would @orange4glace be interested in a contribution to Theia for this feature? The screenshot looks already pretty promising!

Finally, just for your information. the tab management of Theia has been adapted before, see: https://eclipsesource.com/blogs/2023/05/08/eclipse-theia-1-37-release-news-and-noteworthy/ This is not an alternative to your feature request, but might be interesting.

tsmaeder commented 1 month ago

I think vertical tabs make a lot of sense given that most monitors these days are wide-screen. When thinking about an implementation, we should not be limited by the restrictions VS Code imposes on the window layout: in Theia, we can position views anywhere, including in the editor areas, so maybe a generalized "open editors" view might work as well.