Who knows, maybe... If the pty/pyte version proves to be useful, then I'll probably give the ctypes.windll.kernel32.HELL another go. I looked at what Conque is doing wrt console handling on windows. Saying that it's a mess is an understatement.

You could paint contiguous characters, grouped by line, of like highlighting, as one region? Dunno about removing borders.

Was briefly pondering a custom font/theme/grammar but it wouldn't be combinatorically feasible. Basically running the ascii set a few times in the font for some fg/bg color combinations, respresented by some nonsense unicode ordinal in the text for the grammar/theme to work.

Terminal emulation really would be a cool thing to have. What did you end up doing or plan to do about the combinatoric explosion of the keybindings?

castles_made_of_sand wrote:You could paint contiguous characters, grouped by line, of like highlighting, as one region?

I played with the idea for a while, but decided against it:1) Its more complicated and I've got enough complexity to deal with already 2) Setting a region for each char is not as slow as you would think. After all how many are there on the screen at once? 1500? 2000? It's usable even if I do a full screen redraw each time a new char comes in. With diff updates it will be even less noticeable. 3) I gain a stable refresh time, colorfulness (or lack of thereof) does not influence redraw times.

Terminal emulation really would be a cool thing to have.

I'm pretty sure that I solved all major problems already (at least on linux). The question is no longer "if" but "when".

With the terminal emulator, you just `paint` sections at a time? Just the diffs?

This pre-pre-pre-alpha repaints whole screens, but process running in a terminal can update a single char if it wants (set_cursor_pos(x,y); print('x')). I would probably do something in a middle: per-line updates.

I guess then you'd have to do a bunch of RegionSet operations like subtract if you were to do contigs.

Yes.

wuub wrote:for now it's more important to get rid of region borders.

That's actually what I was suggesting the above for.

It's only a partial solution. It could work for screens that are mostly one style: ipython, irb, ssh. But anything based on curses would still look like a mess. I think if i had to choose, I prefer black/white version instead.

Man, I wish I was on linux to have a play I'll definitely help out with any windows stuff.

Don't despair I use windows exclusively at work == I want to make it cross-platform as well. It's just that for this specific purpose I can iterate faster on a platform that has pty module.