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 support #495

epsilon-phase opened this Issue May 15, 2018 · 2 comments


None yet
2 participants

epsilon-phase commented May 15, 2018

Hi, I was messing around with your application and I wanted to give it 24 bit color support, but the way that that tk text tags are configured, this looks like it might be rather... weighty...

In fact, it seems to consistently crash on startup when configuring all of the tags.

I'm not very experienced with using tk, but... This doesn't feel like it's the right way to do it, and I don't know if what I'm doing is even possible without being absurd.



This comment has been minimized.


talvo commented May 16, 2018

Hi. Yeah, you would be looking at adding one tag per colour, and with that many, you're definitely going to have performance issues (though I'm surprised you're seeing outright crashes). But even with the 256 colour support, having all the colours on screen at once in multiple ranges causes a significant performance hit, so it's unfortunately probably not viable/practical to go for 24bit.

If you did want to, I'd recommend only adding the tags as and when the colours actually get used, rather than defining them all together on startup (realistically, during any one connection, you'll probably only have a fraction of them actually in use).

Is there actually a MU codebase that supports 24bit colour? If so, what protocol is it using?


This comment has been minimized.

epsilon-phase commented May 19, 2018

It's using the ansi spec listed on the wikipedia article, (well, it might be once I've got potato to handle it right).

Xserver killed the window actually, since it seems that each tag creates a resource for it to manage, and it doesn't want that many.

Although this complicates the way I'd done it, since I'm not experienced enough to know if I can even get the text pane component at the proper place for instantiating those tags, ideally the handleAnsiCode proc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment