Please explain TCMD's ANSI x3.64 support

Apr 7, 2010
37
0
#1
Would someone explain what ANSI x3.64 support TCC/TCMD provides? I've read "TCC v22 & the Windows 10 Console" but I'm still confused.

Does TCMD support Color Escape Sequences generated by external commands? I have a test program that generates color codes but I've not found any combination of TCMD/TCC settings that will transform the output to color. I tried disabling ANSI in TCMD and enabling in TCC; I've tried the other way around; both enabled and both disabled. And restarting TCMD after each change.

The only way I've been able use ANSI Color Codes is by using a custom Plugin (the 'ansi_on' command below) that explicitly enables Windows 10 built-in ANSI support. What am I missing?

color.png
 

rconn

Administrator
Staff member
May 14, 2008
10,746
97
#2
Both TCMD and TCC have ANSI support. TCMD's ANSI will work for all console sessions run in TCMD; TCC's ANSI will only work for TCC internal commands.

First, make sure you have ANSI turned off in TCC (OPTION / Windows / ANSI colors). Then in TCMD, go to the OPTIONS menu and click on Tabs / ANSI colors.

Note that TCMD will by default use the built-in ANSI in Windows 10; if you want to use TCMD's ANSI support instead you need to add the directive "ANSIWin10=No" to your TCMD.INI (in the TCMD section).
 
Apr 7, 2010
37
0
#3
I tried that and it's not working. I checked the tcmd.ini file. [4NT] has ANSI=No, [TakeCommand] has ANSI=Yes. There is no ANSIWin10 entry.

If I enable ANSI in TCC, (TCMD ANSI can be on or off) I can get color codes for internal commands, nothing for external commands. If I disable ANSI for TCC, I get no ANSI color at all, regardless of TCMD ANSI setting.
 

rconn

Administrator
Staff member
May 14, 2008
10,746
97
#4
If you do not set ANSIWin10=No, then neither TCMD nor TCC have anything to do with ANSI; it's handled by the Windows 10 console, and TCMD simply mirrors what's happening in the console window.

I suggest you try setting ANSIWin10=No in your [TakeCommand] TCMD.INI section. If that works (and it should), then your problem is with your Windows console & you should contact Microsoft.
 
Apr 7, 2010
37
0
#5
Thanks. That worked. I was confused about the ANSIWin10 meaning. I mistakenly thought that ANSIWIN10=YES ==> Use Windows ANSI console support ==> TCC would automatically enable Windows ANSI console support (via SetConsoleMode). Sorry to waste your time but thanks for clarifying it for me. Much appreciated.