microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
160.95k stars 28.24k forks source link

Customizable status bar item locations #35744

Open ellman121 opened 6 years ago

ellman121 commented 6 years ago

Hello

It would be really nice if one could customize the location of the items in the status bar at the bottom of the editor. For instance, I would want to have git branch information on the right, text encoding and position on the left, etc.

Maybe allow people to sort things with something like

"window.statusBar.items": {
    "left" : ["cursorPosition", "tabWidth"],
    "right": ["textEncoding", "gitBranch", "feedbackButton" ] 
}
benkimball commented 6 years ago

Is there a canonical list somewhere of what items may be displayed in the status bar area? For example, I'm uncertain if extensions can add their own items. If so, there might need to be a way to specify the desired location of items not explicitly listed in the configuration setting:

"window.statusBar.items": {
  "left" : ["cursorPosition", "tabWidth", "*"], # i.e., "put anything I didn't list on the left"
  "right": ["textEncoding", "gitBranch", "feedbackButton" ] 
}
lannonbr commented 5 years ago

So status bar items are placed by calling addEntry on an IStatusbarService. The current algorithm for inserting items is priority based as seen here. So the way status bar items are added to the status bar would likely be need to be refactored to allow users to configure where items can be placed.

As well, @benkimball, Extensions are allowed to add their own entries to the status bar, so that will have to be accounted for as well.

@bpasero, Do you or anyone else on the vscode team know of a possible way to implement such?

ferreteleco commented 5 years ago

Any update on this?

xcesiv commented 5 years ago

Pinging to see if any updates on this?

TricolorHen061 commented 4 years ago

Yes, please make this a feature and I will use VSCode as my new editor. But for now, Atom will have to do.

saschamander commented 4 years ago

+1

kanlukasz commented 4 years ago

Maybe it could be prioritized, e.g. 100, 95, 65 etc. to have more flexible ways Example:

    "window.statusBar.items": {
        "left": [
            "cursorPosition": 100,
            "tabWidth": 85
        ],
        "right": [
            "textEncoding": 100,
            "gitBranch": 56",
            "feedbackButton": 24"
        ]
    }
PLyczkowski commented 4 years ago

Maybe allow people to sort things with something like

"window.statusBar.items": {
    "left" : ["cursorPosition", "tabWidth"],
    "right": ["textEncoding", "gitBranch", "feedbackButton" ] 
}

Please no more settings in json. Drag and drop would work just fine..

maxnordlund commented 4 years ago

But it still needs to be saved somewhere, and settings is the natural place. Drag-n-drop as an alternative UI for this seems like a good idea though.

ellman121 commented 4 years ago

@PLyczkowski I happen to enjoy modifying my settings in raw JSON. Beyond that, it makes it super easy to transport between installations and also allows for users to see directly how things are "under the hood"

jackmawer commented 3 years ago

I don't have anything to add apart from to bump this issue. Even exposing the priority of built-in status bar items would go some way to alleviating this problem.

imkzh commented 3 years ago

how much is the chance that someone may want some items being centered?

also vote up for prioritized value, because user may be in a RTL context/culture.

    "window.statusBar.items": {
        "major": {
            "cursorPosition": 100,
            "tabWidth": 85
        },
        "minor": {
            "textEncoding": 100,
            "gitBranch": 56",
            "feedbackButton": 24",
        },
        "center": {"timeAndDate": 1},
        "hidden": ["feedback", "gitPush"]
    }

for items not mentioned in the list, it should be placed at it's default place with some predefined/requested priority level (saying "lowest" | "highest" | value ).

den-is commented 3 years ago

In my case, it will be useful to move the "Project manager" button to the far-left position.

ppazos commented 3 years ago

I would like to change the location of the status bar items too :) :+1:

Lee182 commented 3 years ago

Well I would like to move git blame to the end of the status bar. For some reason it keeps flashing as I type meh. Surely when you right click the menu couldn't you make that a draggable list like with tree view.. and just add a seperter for left and right.

vscode-fixthis

ahmedgadit commented 3 years ago

Any Update on this ?

jackdelab commented 3 years ago

Is this still a possibility to get implemented?

AI-Ahmed commented 3 years ago

is there any notification about this feature? because I tried working on the settings.js for this but nothing is activated!

aagrawa3-dev commented 3 years ago

Would love to have this items-drag-with-mouse functionality in vscode status bar.

toridoriv commented 3 years ago

This would be incredible useful :(

xcesiv commented 3 years ago

Pinging to see if any updates on this? https://github.com/microsoft/vscode/issues/35744#issuecomment-507996153

Two years later. Maybe one day we'll get this... one day. See you again in 2023 with the same reply.

darrylnoakes commented 2 years ago

Still no updates on this? :(

ewsgit commented 2 years ago

This would be so good. :(

hl2guide commented 2 years ago

This would be so nice. 🤩

HardenKim commented 2 years ago

plz...

GrantGryczan commented 2 years ago

Please don't post comments just saying you want this feature. That's what the 👍 reaction is for. These comments are not constructive and just send unnecessary notifications to the people watching this issue.

AnrDaemon commented 2 years ago

I want to move "workspace trust" indicator to the very left to have a clearer focus on important notification.

narze commented 1 year ago

I workaround by using Customize UI extension to inject the stylesheet

{
  "customizeUI.stylesheet": {
    "footer.part.statusbar > .left-items #status\\.host": "order: -999;", // Fix host to the most left by default
    "footer.part.statusbar > .left-items #alefragnani\\.project-manager\\.projectManager\\.statusBar": "order: -1;" // The second Item
  }
}

Element ID will have to be inspected with Developer: Toggle Developer Tools

shellscape commented 1 year ago

I'm also using Customize UI to change things around to how I had them in Atom.

   "#RoscoP\\.ActiveFileInStatusBar": "order: 1;",
    "#status\\.problems": "order: 2;",
    "#mkxml\\.vscode-filesize": "order: 3;",
    "#status\\.scm\\.0": "order: 4;",

However, it should be noted that this doesn't allow me to move items from the left to the right, and vice versa, since those are different container elements. We'd have to inject some JS to do that.

This is a feature I'd very much like to see. I'd be up for writing the code to make this happen, but I've had a pretty bad first contribution experience trying to get answers from maintainers on something as simple as adding data attributes to file explorer nodes so I'm really not hopeful that maintainers would even entertain this idea unless it's blessed by Microsoft.

Erik-vdb commented 1 year ago

Any progress so far?

Matthias-Hermsdorf commented 1 year ago

Pinging to see if any updates on this? #35744 (comment)

Two years later. Maybe one day we'll get this... one day. See you again in 2023 with the same reply.

Now its 2023. @xcesiv its time to come backand renew the pinning.

xcesiv commented 1 year ago

Pinging to see if any updates on this? #35744 (comment)

Two years later. Maybe one day we'll get this... one day. See you again in 2023 with the same reply.

Now its 2023. @xcesiv its time to come backand renew the pinning.

Guess who? Still hoping on that one day. See you again in 2025 folks.

zweack commented 1 year ago

Still no updates!

Srineesh-tide commented 1 year ago

still no updates

dmorrison commented 1 year ago

Bump. I have this weird thing where the GitLab & Jest extensions have intermingled Status Bar items, and I'd like to manually fix their positions:

image
blundin commented 1 year ago

Please include this! It would be so helpful to be able to arrange these items based on what they show and how I want them. Please!

Pesc0 commented 1 year ago

Bump!

starball5 commented 1 year ago

Related on Stack Overflow:

dantman commented 1 year ago

It would be lovely if I could fix the current Jira issue and GitHub PR to be next to each other. image

Erik-vdb commented 1 year ago

It's 2055. @xcesiv Your turn

zweack commented 1 year ago

@Erik-vdb chatgpt will get frustrated with this and recreate vs code for AI. We can borrow that.

contang0 commented 9 months ago

It is now the year of 2023.

GrantGryczan commented 9 months ago

Please don't post comments just saying you want this feature. That's what the 👍 reaction is for. These comments are not constructive and just send unnecessary notifications to the people watching this issue.

I posted this comment before, but it got buried, and now I'm getting lots of unnecessary notifications from this issue again, so I guess that wasn't a good long-term solution. I was subscribed to this issue to get real updates on it, but since I read VS Code changelogs anyway and would see if this feature gets added there, I'm just gonna unsubscribe here. (I say this in case it helps anyone with the idea to do the same.)

As a side note, these types of comments (on many issues, not just this one) are unfortunately the majority of my GitHub notifications, and I can imagine for people even more active on GitHub than I am, it drowns out the small few constructive comments that people are subscribing to issues in hopes of seeing. No hard feelings against those who post these kinds of comments--they probably haven't even considered this problem--but I do think it'd be nice if the problem had a long-term solution (maybe something implemented by GitHub itself, no clue, but that discussion doesn't belong here so I'll leave it at that).

tylerlaprade commented 5 months ago

@GrantGryczan, on the one hand, I share your frustration at unnecessary notifications. On the other hand, many GitHub repos are set up to auto-close tickets after a period of inactivity, so users have grown the habit of periodically "bumping" issues to keep them alive. It's not a situation with an obvious silver bullet, in my opinion.

RDhar commented 5 months ago

In addition to the placement of entries within the Workbench Status bar, I thought it might be an idea to consider the ability to relocate the bar itself.

Just as the ability to customize layout/appearance has been critical for improving accessibility of various panels/bars for any given user, the option of moving the Status bar to the top of the window brings it within eyeline and closer to where focus tends to be.

To help better visualise this request, here's a mock-up of the requested outcome after the Workbench Status bar has been repositioned to the top.

image

To get the ball rolling on this feature request, #204933 has been raised and could do with some 👍 on the original post.

shellscape commented 5 months ago

I switched to Zed. done with the poor project management and malicious changes in vscode.

etoyz commented 2 months ago

Any update?

Alecton4 commented 2 months ago

I would also like the ability to set "hiding priority" of the items. If the status bar gets too narrow to display all the items, the most important ones should be shown. Are there open issues regarding this?

fboranek commented 2 months ago

This is my use case with problem which I hope will be solved by this feature.

How I going to solve my problem?

mateusbadalotti commented 1 month ago

Any updates on this? Would be very useful