Introducing the Windows Console Colortool

Last week we announced the exciting news that Windows Console has a new default color scheme, and also promised you that we would release a tool to make it easier to change the console to your desired scheme. The Windows Console team is proud to present 'Colortool' which will give you this functionality!

Get the Tool

You can find the tool inside of this Github repository. It's an open source project provided under the MIT license so feel free to clone and fork it!

How to Use the Tool

After building colortool, to install it, copy colortool.exe along with the schemes folder to a local directory. Ensure that colortool.exe and the schemes folder are in the same folder! For easy use from a command line place colortool in a location that's included in your PATH.

Changing the properties of a Window

Open up Command prompt and run:

colortool [scheme name in schemes/ e.g: campbell]

Right click on the window title to access the ‘Properties’ dialogue box

Applying a color scheme to your defaults

Your current window will not be affected but your defaults now correspond to that theme

Applying a color scheme to both the Window and defaults

Calling 'colortool -b [scheme name in schemes/]' will change both the Window's current theme and the defaults.

For more information on the tool please read the README inside of the Github page.

Note: the new default color scheme of the Windows Console has been titled campbell, and the legacy scheme is titled cmd-legacy inside of the schemes folder.

Included Schemes

The colortool will work with any .itermcolors scheme. We have also included some useful themes inside of the schemes folder for the tool. This tool makes it easier for users to change their color scheme based on their accessibility needs, and we are excited to promote that by adding a color scheme called deuteranopia targeted towards users who have trouble distinguishing red and green. Here's a description of each:

campbell : The new default color scheme for Windows Console

campbell-legacy : The first iteration of the campbell scheme

cmd-legacy : The legacy defaults of the Windows Console

OneHalfDark : A dark vim-airline theme by Son A. Pham

OneHalfLight : A light vim-airline theme by Son A. Pham

solarized_dark : The dark version of a popular color scheme by Ethan Schoonover

solarized_light : The light version of a popular color scheme by Ethan Schoonover

deuteranopia : A color scheme targeted towards making red and green clearer to users with red green colorblindness, and deuteranopia.

For example, here is solarized_dark:

We hope you have fun customizing the Windows Console color scheme to look just how you like it!

Got it working. Currently on 10.0.15063. Already looks 10000 times better when using cmd, command prompt and PS.

Please make the theming part of the properties. Allow adding new themes through external config files with sections for fonts styling, colorstyle, spacing,window behaviour and position properties. Hopefully allow direct import of terminal themes through existing configs.

Build.bat is not a very complex script – it just looks in several locations for msbuild.exe, and then essentially calls msbuild, and then invokes MS Build just as Visual Studio would anyhow. VSCode is a great alternative if you don’t want to use Visual Studio itself.

This is great and I’m really looking forward to trying it when pull request #1 is merged.
I do have 2 issues:
What about shortcuts that have coded colors? As I understand this tool will only be able to change the colorscheme of the current process (by running colortool.exe in the session) or change the registry. Are you planning to be able to save the changes to a shortcut somehow?

Why do you have to open properties and click ok? is this a limitation that cant be dealt with?

The tool does change the colorscheme of the current process. By right clicking properties and then clicking OK, that saves the current color scheme to the settings from where that Console Window was loaded.

So yes this already does work with shortcuts. If you open a Window from that specific shortcut and then run colortool and right click properties and then hit OK that will save that color scheme for that specific shortcut, no need to run colortool again.

The properties and then click OK method is there because of the current architecture of Windows Console settings. It’s something we are taking a look into improving.

One issue I have with my console in Windows is a different scheme for different shortcuts – is there any way to remove all custom .lnk configs for powershell, cmd, etc, and have one uniform interface for all to pull the same color scheme?

1. Right Click on your desktop > Click New > Shortcut. Enter cmd.exe, click next. Name the shortuct Bash for example. Click Finish.
2. Open the shortcut that you just created. Run colortool and set the theme you want on a cmd window. open properties and click ok to save the theme changes. exit the shortcut.
3. Right-Click the shortcut and go to properties of the shortcut and change the shortcut from cmd to %windir%\system32\bash.exe ~ then remove the value in Start in:
4. You can set the icon to %USERPROFILE%\AppData\Local\lxss\bash.ico or anyicon.ico file you please.
5. Launch bash from the shortcut. Now you have the theme colors.
6. Launch CMD if you had closed it and complete step 1 to set cmd to colors you wish. You can use the -b switch. Re-launch cmd to confirm that the default cmd is back to the color theme that you want.

If there is an easier method please let us know. I tried using the default switchs.

Thanks for your help, I modified your process slightly. Instead I changed the “Target” on the existing bash shortcut (“AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Bash on Ubuntu on Windows”) to “cmd.exe”, ran it and changed the color profile, then changed the “Target” back to “C:\Windows\System32\bash.exe ~”.

How can force powershell to use the default settings? Secondly, solarized dark is hard to use in powershell, the – operators are hardly visible. What’s the best way for changing just the – operator colors

Is there a way to apply these settings to the Bash on Ubuntu on Windows consoles? I know that the prompt has to be customized from within bash but the overall color of the console can be colorized by the Properties > Color tab.

So far I like the new cmd. I don’t have to mess with the registry for TTF to show up. I just had to get used to the settings per shortcut but.
Things I’d like (sort of feature requests):
*Built in theme selector on the Properties > Colors tab. Let me browse for my theme files.
*Enable logging so that I can log ssh client sessions when using bash.

this is awesome! thanks for doing this, now I can have my solarized colors! quick question – bash on windows is using backround color for folder names if you do ls command. Is it something I can change? here is an example https://i.imgur.com/CVbBOx4.png

Glad you like it 🙂 In Linux, the shell and app colors are generally configured via config files. The ls command, for example, reads its color settings from /etc/DIR_COLORS which you should be able to update to set your Linux directory listing colors as you wish.