Good morning Maxim,
I'd like again raise the question about the visibility of the active tab (not in the sense of active split area as Vitaly mentioned in the issue #164, but directly the tab area). Under WIndows 10 (and I guess Windows 8) the default difference between active and inactive tab is almost invisible, which makes it hard to work.
You can check what I mean with the following screenshots:
https://www.dropbox.com/sh/wofj7iy3q92ujgv/AAAUanJjY7XWTbYBXaBl8jXva?dl=0
Thank you and regards,
Anton
+1 It's very hard to see active tab.
Why don't tell that to Microsoft designers???
Can we move this to WPF instead of old Sys32 control. That will not be having this feature
.Net for terminal? Never. It must be portable and lightweight.
Any work around for this? I must say I really like this terminal :)
I think the ability to set the color of the active tab is all that is required. Say color_inactive_tab=#XXXXXX vs. color_active_tab=#XXXXXX if that is possible?
@variab1e Really? And how do you suggest to implement these colors?
Sorry - if that is not possible - I do not mean to make it sound easy. I do not know the work/methods that would be required in this case.
@Maximus5 -- one idea, if it is easier to implement -- would it be feasible to lighten/darken the icon in the tab? Or even if the icon could be changed. "Active" Icon and "Inactive" Icon.
No, dimming the icon is poor solution and it wouldn't be enough vivid.
Thanks to MS, developers have to invent a wheel instead of using standard controls.
Besides being able to set an "Active" Icon and "Inactive" Icon -- the only other thought I have is -- only if possible -- to be able to set and "Active" tab title text colour and "Inactive" tab title text colour.
Damn shame otherwise.
Thanks !
I realize now that the problem is particularly worsened by the fact that I have transparency. Is it possible to not apply transparency to the tab bar only?
Second alternative, possibly bold the active tab font?
@variab1e Nothing is possible until developer draw the TabBar themselves.
Please fix this. Really annoying to find active tab. At last add option to change font of text of active tab (for example set bold).
Please explain to Microsoft why their UI is bad.
its not about MS UI is bad. You won't get good UI in case you don't follow UI guidelines. :) And if not following MS'es - need to make your own.
Here is is tabs size vs tab colors - with current small tabs it is hard to see tab color behind text, eyes just dont catch difference
Just a thought: what about altering the formatting of the tab number?
The tabs have currently the following text content:
| <1> cmd.exe | <2> cmd.exe Admin | <3> bash.exe |
I think it would already be helpful to hint at the active tab at the level of the tab number:
| <1> cmd.exe | *2* cmd.exe Admin | <3> bash.exe |
(or use some more fancy unicode bracket characters, like ❰2❱, if that's possible in that place)
Alternatively, only keep <n> for the active tab:
| 1: cmd.exe | <2>: cmd.exe Admin | 3: bash.exe |
I'm with @cboos. Adding a character indicator around the active tab would be very helpful!
Yes I concur @cboos this seems an ideal solution
@cboos that's a good, simple idea indeed
So here's a more concrete proposal: have tab templates support a new %* token for the Selected tab, which would translate to ⬤ in the tab name. See it here in action:
From a19bb4b8fb0185c6c6bf5cf50c5273d9a39b9ee7 Mon Sep 17 00:00:00 2001
From: Christian Boos <[email protected]>
Date: Sat, 3 Dec 2016 23:49:53 +0100
Subject: [PATCH] gh-552: Add %* format in tab templates for selected indicator
---
src/ConEmu/ConEmu.rc | 2 +-
src/ConEmu/TabBar.cpp | 6 ++++++
src/ConEmuCD/ConsoleMain.cpp | 2 +-
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/ConEmu/ConEmu.rc b/src/ConEmu/ConEmu.rc
index 5f1f4a2..e9ec0f6 100644
--- a/src/ConEmu/ConEmu.rc
+++ b/src/ConEmu/ConEmu.rc
@@ -1007,7 +1007,7 @@ BEGIN
RTEXT "Charset:",stTabFontCharset,225,79,90,8
COMBOBOX tTabFontCharset,319,77,54,67,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
EDITTEXT tTabConsole,58,130,106,12,ES_AUTOHSCROLL
- LTEXT "%s - Title, %c - Console #, %n - Active process name, %p - PID,\n%a - ‘Admin’, %d - current shell directory, %f - folder, %% - %",stTabTemplateDescr,57,110,314,16
+ LTEXT "%s - Title, %c - Console #, %n - Active process name, %p - PID, %* - Selected tab\n%a - ‘Admin’, %d - current shell directory, %f - folder, %% - %",stTabTemplateDescr,57,110,314,16
RTEXT "Maximum tab width (in chars):",stTabLenMax,8,168,123,8
EDITTEXT tTabLenMax,135,166,40,12,ES_AUTOHSCROLL
EDITTEXT tAdminSuffix,301,189,72,12,ES_AUTOHSCROLL
diff --git a/src/ConEmu/TabBar.cpp b/src/ConEmu/TabBar.cpp
index 5c912e1..60d0d61 100644
--- a/src/ConEmu/TabBar.cpp
+++ b/src/ConEmu/TabBar.cpp
@@ -1597,6 +1597,12 @@ int CTabBarClass::PrepareTab(CTab& pTab, CVirtualConsole *apVCon)
_wsprintf(szTmp, SKIPLEN(countof(szTmp)) _T("%i"), pTab->Info.nIndex);
pszText = szTmp;
break;
+ case _T('*'): // %* - Selected tab indicator
+ if (gpConEmu->isVConValid(apVCon) == GetCurSel() + 1)
+ {
+ pszText = L"\x2b24"; /*"⬤"*/
+ }
+ break;
case _T('p'): case _T('P'): // %p - Active process PID
if (!apVCon || !apVCon->RCon())
{
diff --git a/src/ConEmuCD/ConsoleMain.cpp b/src/ConEmuCD/ConsoleMain.cpp
index 71d2180..0e8cb5c 100644
--- a/src/ConEmuCD/ConsoleMain.cpp
+++ b/src/ConEmuCD/ConsoleMain.cpp
@@ -6980,7 +6980,7 @@ bool IsKeyboardLayoutChanged(DWORD* pdwLayout)
{
wchar_t szErr[80];
_wsprintf(szErr, SKIPCOUNT(szErr) L"ConsKeybLayout failed with code=%u forcing to GetKeyboardLayoutName or 0409", nErr);
- _ASSERTE(FALSE && "ConsKeybLayout failed");
+ // _ASSERTE(FALSE && "ConsKeybLayout failed");
LogString(szErr);
if (!GetKeyboardLayoutName(szCurKeybLayout) || (szCurKeybLayout[0] == 0))
{
--
2.10.0.windows.1
@Maximus5, if you like the proposal and would prefer a proper pull request instead of a patch, please tell me.
(the patch also contains an unrelated change in src/ConEmuCD/ConsoleMain.cpp which avoids a "trap" dialog on startup)
@cboos @Maximus5
Nice. This is great. Can't wait to see this come out in the next ConEmu Beta 👍
Thanks, that's perfect!
I experimented with several iterations, and found that this snippet works great with the new selected tab indicator
%m ★ <m%M|M%c%m>m%M|M %s%m ★ m
I can always see which tab I'm on... No more guessing.

This (different color background for active tab) is really needed.
I do understand it's not easy to do, but hey, recent gitlab HUGE problem with deleting production db, happened BECAUSE admin mistaken terminals he entered 'rm' command. Maybe he used conemu ;)
@Maximus5 that would be a GREAT feature for conemu.
Just putting my 2 cents in here. I think @cboos solution is perfect, considering the alternatives (or lack thereof) and it would benefit you @Maximus5 for not having to see this feature requested any longer!
@Maximus5 Can you please consider this? This is really an important feature to distinguish between tabs
Sorry, but what "this"?
Anyone may configure their tabs like https://github.com/Maximus5/ConEmu/issues/552#issuecomment-266972278 and it was implemented long ago
Other than maybe putting https://github.com/Maximus5/ConEmu/issues/552#issuecomment-266972278 @cboos solution into the default config (I'm personally using %m⬤ m), this works great.
Thanks for the great software @Maximus5 !
For a really visible big black square on active tab, go to:
Settings → Main → Tab Bar → Console, and then paste:
%m⬛ m %s
Works great 👌
Thanks @randsu !
I went for a friendly frog face instead, with current folder and active process name:
%m🐸 | m%f | %n
I wish Microsoft thought about this...
I don't mean to brag here, but I think my icon is the best...
%s %m👀m
After experimenting with a few fancy unicode characters, I like the heavy check mark (U+2714):
%m✔m %s
(shown using Ubuntu as the tab font)

Most helpful comment
For a really visible big black square on active tab, go to:
Settings → Main → Tab Bar → Console, and then paste:
Works great 👌