Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

How do I get my input foreground on the default background?

May
15,047
271
In a console and in TCMD I keep getting my input foreground on black (not on the default background).

1776262480024.webp


In TCC's options I can choose my FG on Default but later, "Default" is changed to black.

1776262366834.webp
 
Yes, I also have problems with the colors there ...
 
In a console and in TCMD I keep getting my input foreground on black (not on the default background).

View attachment 5596

In TCC's options I can choose my FG on Default but later, "Default" is changed to black.

View attachment 5595

I don't know what you're reporting here - TCC will not change the default colors on its own. Can you provide a reproducible example? Is this a ConPTY window or a hidden console?
 
I echoed this sequence to set TCMD 20 colors (16-color palette, default FG and BG, cursor, and selection BG) to what WT calls the CampbellPowershell color scheme.

Code:
^e]4;0;rgb:0c/0c/0c^e\^e]4;1;rgb:c5/0f/1f^e\^e]4;2;rgb:13/a1/0e^e\^e]4;3;rgb:c1/9c/00^e\^e]4;4;rgb:00/37/da^e\^e]4;5;rgb:88/17/98^e\^e]4;6;rgb:3a/96/dd^e\^e]4;7;rgb:cc/cc/cc^e\^e]4;8;rgb:76/76/76^e\^e]4;9;rgb:e7/48/56^e\^e]4;10;rgb:16/c6/0c^e\^e]4;11;rgb:f9/f1/a5^e\^e]4;12;rgb:3b/78/ff^e\^e]4;13;rgb:b4/00/9e^e\^e]4;14;rgb:61/d6/d6^e\^e]4;15;rgb:f2/f2/f2^e\^e]10;rgb:cc/cc/cc^e\^e]11;rgb:01/24/56^e\^e]12;rgb:ff/ff/ff^e\^e]17;rgb:ff/ff/ff^e\

And then echoed ^e[2J^e[3J^e[H to apply them. In TCC36 the input colors were yellow on black.

In the same instance of TCMD, I did the same in a TCC35 tab. In that tab the input colors were yellow on the blue default BG.

Both INI files have the same spec.

Code:
v:\theme_bin> grep InputColors d:\tc36\tcmd.ini
InputColors=Bright Yellow on Black

v:\theme_bin> grep InputColors d:\tc35\tcmd.ini
InputColors=Bright Yellow on Black

The behavior of TCC35 is preferred (though I don't know how it did it).
 
Here's another comparison ... TCC36 and TCC35 in WT, both using the CampbellPowershell color scheme. V36's input is bri yellow on black; v35's input is bri yellow on the default BG. Both INI files say InputColors=Bright Yellow on Black.

1776301818441.webp
 
I see a difference between v35 and v36, both with InputColors=Bright Yellow on Black. According to WT's debug tap, when I type 'x' at a command line in v35, I see ␛[0;93mx. That's normal (0) then bright yellow foreground (93) with no background spec. That gives the default background and that's what I prefer. When I type 'x' at a command line in v36, I see ␛[0;93;40mx. That's the same but with black background (40) added.
 
I am able to reproduce this issue with Build 28.

If I go to TCC Options and set the input FG color, but leave the background color set to default, like this

1776347735780.webp


Then I hit apply and then OK. Then immediately reopen the TCC Options dialog, it looks like this.

1776347804690.webp


This is happening in a ConPTY console.
 
I went back and set the ANSI colors for "Selected" to black characters on white. I exited TCMD, waited a while, and reloaded. It seemed that nothing had changed, but then as I selected some text in the command line using only the cursor controls, I noticed an area of inverse video appearing about a dozen lines above the command line.
 
With build 29, I am seeing the same issue I described in Post #8 above, where if I change the input foreground color to something (Bright Cyan in the screenshot) and try to set the background color to default, the background color gets changed to black.

Further testing seems to indicate that all the color settings I tested using the TCMD options or the TCC options do not like setting either Foreground or Background to default while setting the other one to a color.

So
  • FG: White, BG: Blue works as expected.
  • FG: White, BG: Default does not stick. (changes BG to black in the example above)
  • FG: Default, BG: Red does not stick
  • FG: Default, BG: Default works as expected.
Is this behavior in the option dialogs by design...if you specify one color, you have to specify both?

If so, then I can live with that...but it probably should be documented.
 
Nothing like putting out a new version to prompt users to discover and complain about legacy behavior!

Definitely! When I new version comes out, I read information that I failed to look at previously or forget. It's a nice side benefit of updating to a new version.
 
Nothing like putting out a new version to prompt users to discover and complain about legacy behavior!

I'm pretty sure that this is an expectation clearly spelled out in the job description for "End-user of Software".

Thanks for all the work that went into this major upgrade to hopefully keep TCMD viable for many more years.
 
A question: How is it that in TCCv35, with InputColors=Bright Yellow on Black, on the command line, WT receives ^e[0;93m before every character? That's bright yellow foreground with no background specified. If TCC is using SetConsoleTextAttribute I'd expect ConPty to change that into a sequence with both foreground and background specified. Why no background spec? Is this a bug (whose bug)? Bug or not, can it be exploited? It's exactly what gives bright yellow foreground on default background (which is what I want).
 
What thread was that?

So what's different in TCCv36. In the same situation, v36 receives ^e[0;93;40m before each input character. The background is specified.
 
Back
Top