Feature request: option to hide tab icons #11270

Closed
opened 2026-01-31 02:42:59 +00:00 by claunia · 7 comments
Owner

Originally created by @wdscxsj on GitHub (Nov 4, 2020).

Description of the new feature/enhancement

The "compact" tab width mode hides inactive tab titles and only shows icons for them. With multiple tabs of a same profile, it's hard to tell the difference without a descriptive title (which is controllable from the shell).

A "compact" thing means to pack enough information into a small space, often in an unattractive way. A workaround is to use a non-existent "icon" target for all profiles in settings.json, but that's hacky, and doesn't save enough space as expected. Let's compare Terminal and ConEmu, both snapped to the right half side of my screen:

Screenshot046

Thus I propose a new tab width mode, say "textOnly", that hides icons (even for the active tab) and shows compact titles only.

Originally created by @wdscxsj on GitHub (Nov 4, 2020). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> # Description of the new feature/enhancement <!-- A clear and concise description of what the problem is that the new feature would solve. Describe why and how a user would use this new functionality (if applicable). --> The `"compact"` [tab width mode](https://docs.microsoft.com/en-us/windows/terminal/customize-settings/global-settings) hides inactive tab titles and only shows icons for them. With multiple tabs of a same profile, it's hard to tell the difference without a descriptive title (which is controllable from the shell). A "compact" thing means to pack enough information into a small space, often in an unattractive way. A workaround is to use a non-existent `"icon"` target for all profiles in `settings.json`, but that's hacky, and doesn't save enough space as expected. Let's compare Terminal and [ConEmu](https://github.com/Maximus5/ConEmu), both snapped to the right half side of my screen: ![Screenshot046](https://user-images.githubusercontent.com/863369/98061542-051ae900-1e87-11eb-8389-a5db67c703b2.png) Thus I propose a new tab width mode, say `"textOnly"`, that hides icons (even for the active tab) and shows compact titles only.
Author
Owner

@zadjii-msft commented on GitHub (Nov 4, 2020):

Thanks for the request! This is something that I've already got written down as an idea for #3327, so I'll make sure to link the two up ☺️

@zadjii-msft commented on GitHub (Nov 4, 2020): Thanks for the request! This is something that I've already got written down as an idea for #3327, so I'll make sure to link the two up ☺️
Author
Owner

@austin-beer commented on GitHub (Jan 30, 2021):

I would love to see this feature implemented as well. Hopefully some progress can be made on this as part of #3327.

@austin-beer commented on GitHub (Jan 30, 2021): I would love to see this feature implemented as well. Hopefully some progress can be made on this as part of #3327.
Author
Owner

@zadjii-msft commented on GitHub (Aug 23, 2023):

Note

Walkthrough

I'm gonna combine this with a related ask for monochrome tab icons.

  • Start by modifying the Tab Theme object.
    • Add an IconStyle enum to Theme.idl, with Default, Hidden and Monochrome as options.
    • add a new property to TabTheme in Theme.idl. Icon which accepts an "IconStyle".
    • In MTSMSettings.h, add a new setting under MTSM_THEME_TAB_SETTINGS. The key for this one should just be "iconStyle"
  • Actually use this new setting
    • TerminalTab::UpdateIcon is probably the right place for this. You probably want to add another parameter to this.
    • IconPathConverter::IconSourceMUX may need some plumbing to support colored OR monochrome icons.
@zadjii-msft commented on GitHub (Aug 23, 2023): > **Note** > ## Walkthrough I'm gonna combine this with a related ask for monochrome tab icons. * [ ] Start by modifying the `Tab` Theme object. * [ ] Add an `IconStyle` enum to `Theme.idl`, with `Default`, `Hidden` and `Monochrome` as options. * [ ] add a new property to `TabTheme` in `Theme.idl`. `Icon` which accepts an "IconStyle". * [ ] In `MTSMSettings.h`, add a new setting under `MTSM_THEME_TAB_SETTINGS`. The key for this one should just be `"iconStyle"` * [ ] Actually use this new setting * [ ] `TerminalTab::UpdateIcon` is probably the right place for this. You probably want to add another parameter to this. * [ ] `IconPathConverter::IconSourceMUX` may need some plumbing to support colored OR monochrome icons.
Author
Owner

@BenConstable9 commented on GitHub (Aug 24, 2023):

@zadjii-msft can I attempt to pick this up shortly?

@BenConstable9 commented on GitHub (Aug 24, 2023): @zadjii-msft can I attempt to pick this up shortly?
Author
Owner

@zadjii-msft commented on GitHub (Aug 24, 2023):

Go for it ☺️

@zadjii-msft commented on GitHub (Aug 24, 2023): Go for it ☺️
Author
Owner

@zadjii-msft commented on GitHub (Aug 24, 2023):

(you can also skip the monochrome bit if you want. I put that in the original spec because "I'm sure someone out there wants this" but I'm not actually sure anyone does)

@zadjii-msft commented on GitHub (Aug 24, 2023): (you can also skip the monochrome bit if you want. I put that in the original spec because "I'm sure someone out there wants this" but I'm not actually sure anyone does)
Author
Owner

@bundgaard commented on GitHub (Sep 10, 2023):

To clarify, we want to be able to hide the icon in the tab control, and also make it monochrome, We do not change the compact mode, as the code supposedly is in another project.

To implement this functionality we would have to add a monochrome filter and hide the icon altogether based on the respective setting.
I hope I understood it correctly.

@bundgaard commented on GitHub (Sep 10, 2023): To clarify, we want to be able to hide the icon in the tab control, and also make it monochrome, We do not change the compact mode, as the code supposedly is in another project. To implement this functionality we would have to add a monochrome filter and hide the icon altogether based on the respective setting. I hope I understood it correctly.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#11270