Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

24-bit color may not be enabled by default...? #6087

Closed
PeterGrace opened this issue May 21, 2020 · 12 comments
Closed

24-bit color may not be enabled by default...? #6087

PeterGrace opened this issue May 21, 2020 · 12 comments
Labels
Needs-Attention The core contributors need to come back around and look at this ASAP. Needs-Tag-Fix Doesn't match tag requirements Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting

Comments

@PeterGrace
Copy link

Description

I noticed that when trying out windows terminal, that 24 bit color rendering does not work in Windows Terminal like it does in mintty. I read online that Windows Terminal should support 24 bit color rendering, but this does not seem to be the case at least when utilizing bash from WSL. I'm wondering if there is something I need to do in the settings to enable 24 bit rendering.

Environment

Windows build number: `Microsoft Windows [Version 10.0.18363.720]`
Windows Terminal version (if applicable): 1.0.1401.0

Link to below 24-bit-color-script: https://github.com/tmux/tmux/blob/master/tools/24-bit-color.sh

Steps to reproduce

Attempt to render 24 bit color in console

Expected behavior

Output from mintty command:
image

Actual behavior

Output from windows terminal of the exact same session:
image

@ghost ghost added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Needs-Tag-Fix Doesn't match tag requirements labels May 21, 2020
@DHowett
Copy link
Member

DHowett commented May 21, 2020

What's the value of your TERM environment variable?

@DHowett DHowett added the Needs-Author-Feedback The original author of the issue/PR needs to come back and respond to something label May 21, 2020
@DHowett
Copy link
Member

DHowett commented May 21, 2020

So, Terminal definitely does support 24-bit color. There's a bunch of variables here, though- If you're running inside tmux, screen, or through msys2, cygwin, etc. each of those can impose its own limits.

@PeterGrace
Copy link
Author

Thanks for getting back to me, @DHowett -- my term is set to screen-256color in both cases.

@ghost ghost added Needs-Attention The core contributors need to come back around and look at this ASAP. and removed Needs-Author-Feedback The original author of the issue/PR needs to come back and respond to something labels May 21, 2020
@PeterGrace
Copy link
Author

I am using tmux, and I am connected to the same tmux window for both screenshots, one is rendered in mintty, one is rendered in terminal.

@DHowett
Copy link
Member

DHowett commented May 21, 2020

Alright, what's TERM outside of tmux?

@DHowett
Copy link
Member

DHowett commented May 21, 2020

And could you share the output of infocmp also outside of tmux? (EDITED: sorry - I misspelled infocmp as infocomp.)

@PeterGrace
Copy link
Author

Outside of tmux, xterm-256color.
infocmp output:

#	Reconstructed via infocmp from file: /lib/terminfo/x/xterm-256color
xterm-256color|xterm with 256 colors,
	am, bce, ccc, km, mc5i, mir, msgr, npc, xenl,
	colors#256, cols#80, it#8, lines#24, pairs#32767,
	acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
	bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
	clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=^M,
	csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
	cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
	cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
	cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
	dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
	flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG,
	ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
	ind=^J, indn=\E[%p1%dS,
	initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
	invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, kDC=\E[3;2~,
	kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, kLFT=\E[1;2D,
	kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, kb2=\EOE,
	kbs=\177, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
	kcuu1=\EOA, kdch1=\E[3~, kend=\EOF, kent=\EOM, kf1=\EOP,
	kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[1;2P,
	kf14=\E[1;2Q, kf15=\E[1;2R, kf16=\E[1;2S, kf17=\E[15;2~,
	kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~,
	kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~,
	kf24=\E[24;2~, kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R,
	kf28=\E[1;5S, kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~,
	kf31=\E[18;5~, kf32=\E[19;5~, kf33=\E[20;5~,
	kf34=\E[21;5~, kf35=\E[23;5~, kf36=\E[24;5~,
	kf37=\E[1;6P, kf38=\E[1;6Q, kf39=\E[1;6R, kf4=\EOS,
	kf40=\E[1;6S, kf41=\E[15;6~, kf42=\E[17;6~,
	kf43=\E[18;6~, kf44=\E[19;6~, kf45=\E[20;6~,
	kf46=\E[21;6~, kf47=\E[23;6~, kf48=\E[24;6~,
	kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q, kf51=\E[1;3R,
	kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
	kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
	kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,
	kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
	kf8=\E[19~, kf9=\E[20~, khome=\EOH, kich1=\E[2~,
	kind=\E[1;2B, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
	kri=\E[1;2A, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El,
	memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
	rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l,
	rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
	rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7,
	setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,
	setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
	sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
	sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h,
	smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
	tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c,
	vpa=\E[%i%p1%dd,

@PeterGrace
Copy link
Author

Interesting: when I go to mintty and ask it what term, it's set to screen-256color. mintty must be rendering an additional setting in my profile that windows terminal is not. I will attempt to retest with windows terminal also set to screen-256color to begin with.

@PeterGrace
Copy link
Author

When I retest forcing screen-256color in my bash instantiation on windows terminal, the 24 bit color is rendered appropriately. So this doesn't appear to be a windows terminal issue after all, so I'll close this issue. Thanks for getting back to me.

@DHowett
Copy link
Member

DHowett commented May 21, 2020

Sure thing!

@Havner
Copy link

Havner commented Jun 14, 2023

I also cannot get 24bit rendering to work with the Terminal.
I have this working without any issues on mintty, iterm2 and most Linux terminals (xterm, gnome-terminal).
I use a compiled terminal definition from here: https://github.com/enocom/dotfiles/blob/master/xterm-24bit.terminfo
TERM=xterm-24bit

On all the previously mentioned terminals this works without issues. On Terminal it doesn't. XTERM=256color works just fine, but I cannot get 24bit colors then.

mintty
terminal

@Havner
Copy link

Havner commented Jun 14, 2023

Wrong, scratch that. Sorry for the confusion.

It appears I've used this definition (from the first answer):
https://stackoverflow.com/questions/14672875/true-color-24-bit-in-terminal-emacs

And the method with colons doesn't work on Terminal, but the method with semicolons does! So I made it work properly.

Leaving all this as maybe someone will find it useful.

terminal2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs-Attention The core contributors need to come back around and look at this ASAP. Needs-Tag-Fix Doesn't match tag requirements Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting
Projects
None yet
Development

No branches or pull requests

3 participants