Terminal: Bug Report: ColorTool and changing colours causes strange behaviour since Windows 10 1903

Created on 5 Jun 2019  路  5Comments  路  Source: microsoft/terminal

Environment

Microsoft Windows [Version 10.0.18362.30]

Steps to reproduce

You should be able to use any color scheme, but I'll provide mine specifically below.

Fotsies Colors.ini

[table]
DARK_BLACK = 30,30,30
DARK_BLUE = 0,0,128
DARK_GREEN = 0,128,0
DARK_CYAN = 0,128,128
DARK_RED = 128,75,75
DARK_MAGENTA = 128,0,128
DARK_YELLOW = 238,237,240
DARK_WHITE = 192,192,192
BRIGHT_BLACK = 128,128,128
BRIGHT_BLUE = 0,0,255
BRIGHT_GREEN = 0,255,0
BRIGHT_CYAN = 0,255,255
BRIGHT_RED = 255,75,75
BRIGHT_MAGENTA = 255,0,255
BRIGHT_YELLOW = 255,255,0
BRIGHT_WHITE = 255,255,255

[screen]
FOREGROUND = DARK_WHITE
BACKGROUND = DARK_BLACK

[popup]
FOREGROUND = DARK_CYAN
BACKGROUND = DARK_BLACK
  1. Open PowerShell as a regular user (I'm using 5.1 that comes with Windows 10)
  2. Obtain the latest ColorTool release and extract it
  3. Place the scheme above in the schemes sub-directory under ColorTool.exe
  4. Load the scheme: .\ColorTool.exe 'Fotsies Colors.ini'
  5. Notice the scheme is not applied correctly and that colors are not consistent as they should be

Expected behavior

As per the previous stable Windows release, colors should be applied correctly and continue to function while using the terminal

Actual behavior

Best way to demonstrate this is with some screenshots:

image

I tested this with a completely fresh install of windows 10 1903 just now to confirm it's nothing that I've done wrong. I can confirm that everything works perfectly in the previous October 2018 Windows 10 release.

Honestly, the terminal in this new release is unusable for me given all the problems I've been finding and I don't really have much choice but to reinstall the older Windows release as I depend on PowerShell. Unless of course any workarounds may be suggested?

Any help is greatly appreciated.

Help Wanted Issue-Bug Needs-Tag-Fix Product-Colortool

Most helpful comment

You need to open the propsheet and hit "ok" to make sure to persist the colors. --both just means colortool will apply the color both to the active console window and the registry defaults. However, if you're launching the console from a shortcut, or from an exe that has it's own console entry in the registry (which powershell does), then the console will use the shortcut/registry for the app instead of the defaults. So, you need to open and save the propsheet again, to make sure the settings are persisted to the shortcut.

All 5 comments

This is probably due to us adding default background color support to conhost in 1903. Could you open the property sheet, and show me what the following tab looks like?
image

As a workaround, I'd suggest switching to the "Colors" tab, and with "Screen Background" selected, click on the first box, to make your background color DARK_BLACK, instead of DARK_MAGENTA (which is the powershell default)

I'm going to leave this open to investigate, however. We might need to update colortool to make sure to set FOREGROUND and BACKGROUND properly, because it doesn't seem to be doing that right.

Thanks so much for your help, sorry for the late reply, I'm in a different timezone (Australia).

Here's a screenshot as requested:

image

Indeed it apperas that you are correct, when setting the background color to the first box (Dark Black), it seems to help. However, ColorTool doesn't seem to make a persistent change.

e.g.

Here's what my PowerShell console looks after I switch to the first checkbox for the background color:

image

I then apply my colors with ColorTool:

image

At this point, things seem to be ok, but then when I close and re-open PowerShell, I am back to black:

image

All colors seem to be reset too so the change doesn't appear to stay persistent.

As a sidenote, the terminal in PowerShell 7 preview 1 works perfectly with all of these scenarios too.

Kindest regards
Fotis

You need to open the propsheet and hit "ok" to make sure to persist the colors. --both just means colortool will apply the color both to the active console window and the registry defaults. However, if you're launching the console from a shortcut, or from an exe that has it's own console entry in the registry (which powershell does), then the console will use the shortcut/registry for the app instead of the defaults. So, you need to open and save the propsheet again, to make sure the settings are persisted to the shortcut.

You need to open the propsheet and hit "ok" to make sure to persist the colors. --both just means colortool will apply the color both to the active console window and the registry defaults. However, if you're launching the console from a shortcut, or from an exe that has it's own console entry in the registry (which powershell does), then the console will use the shortcut/registry for the app instead of the defaults. So, you need to open and save the propsheet again, to make sure the settings are persisted to the shortcut.

Thanks a lot, that seemed to do the trick 馃槃

Was this page helpful?
0 / 5 - 0 ratings

Related issues

HLFH picture HLFH  路  68Comments

yanglr picture yanglr  路  235Comments

Paul-Weisser picture Paul-Weisser  路  71Comments

MoshiBin picture MoshiBin  路  128Comments

NOFUNEVER picture NOFUNEVER  路  106Comments