Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Displaying unix color on windows cmd (e.g. ←[31m)

I've recently started doing some ruby on rails development on Windows 7 and have found a number of commands (rspec, guard, etc) output colour codes that just show up in text on the windows command line (or through Console2 which I use). eg:

←[31mrspec ./spec/views/users/index.html.erb_spec.rb:21←[0m ←[36m# users/index renders a list of users←[0m
←[31mrspec ./spec/requests/homes_spec.rb:9←[0m ←[36m# Homes GET /homes ←[0m
←[31mrspec ./spec/views/users/new.html.erb_spec.rb:13←[0m ←[36m# users/new renders new user form←[0m
←[31mrspec ./spec/views/users/show.html.erb_spec.rb:13←[0m ←[36m# users/show renders attributes in <p>←[0m

I'm aware you can turn the color off for most tools by taking the --color command out out of the config files (e.g. the .respc file), but it's a pain to have to do this for everything and colour coding would be nice.

Any ideas how I can get these to display properly in Windows?

like image 852
Ben Avatar asked Jul 31 '12 15:07

Ben


People also ask

Can CMD display colors?

To set the default Command Prompt window color, select the upper-left corner of the Command Prompt window, select Defaults, select the Colors tab, and then select the colors that you want to use for the Screen Text and Screen Background.

How do you color code in CMD?

Type the command – color /? in the Command Prompt. It sets the default console foreground and background colors. COLOR [attr] attr - Specifies the color attribute of console output. First corresponds to the background.

How can I get cmd.exe to display ANSI color escape sequences?

To use ANSI colours in the Windows terminal requires setting VirtualTerminalLevel. VirtualTerminalLevel = 1 is now set by default for the terminal and in ConPTY. Alternatively it can be enabled by calling the SetConsoleMode API with the ENABLE_VIRTUAL_TERMINAL_PROCESSING flag.


2 Answers

  1. Change Console2 to ConEmu (I'm the author of this console). It supports Ansi x3.64

  2. Or, you may use AnsiCon to enable Ansi

like image 150
Maximus Avatar answered Sep 27 '22 19:09

Maximus


I use Console2 ( http://sourceforge.net/projects/console/ ) with ansicon ( https://github.com/adoxa/ansicon ) and it work well :

  1. compile or download dll from author : http://ansicon.adoxa.cjb.net/ and put it in a repertory include in your path ;
  2. In console, launch ansicon : ansicon -i
like image 33
Traz Avatar answered Sep 27 '22 20:09

Traz