Questions about windows support

H. S. Teoh hsteoh at
Thu Feb 23 15:03:46 PST 2012

On Thu, Feb 23, 2012 at 10:34:24PM +0100, Adam D. Ruppe wrote:
> On Thursday, 23 February 2012 at 21:17:35 UTC, H. S. Teoh wrote:
> >Taking the idea of an in-terminal video player further, what about
> >a general escape sequence for "application-specific output"?
> <html>.....

That gives you the funny situation where trying to edit a HTML file will
interpret the tags instead of displaying them. If your editor is unaware
of that, then you have the even funnier situation where editing a tag
(i.e. temporarily breaking HTML syntax) will cause it to come out as
text, and once you have a fully formed tag, then it magically gets
rendered again. A twisted form of WYSIWYG. :P

> seriously, once you take the in-terminal stuff too far, you
> have a beast of a program that does everything; you end up
> with something like a web browser or nested X server, and
> you've lose the original beauty of the terminal.

No, the idea is *not* to have the terminal do everything, but allow
other programs to do it.

> This is the path I started on, and ended up with what I called
> the D Windowing System - which is still on my todo list, but
> has been for a long time and will surely be for a long time
> more.

lol... I suppose.

> But, I started with a terminal that can optionally output
> images. Then wanted improved character display and figured
> if it does images, it can be a bitmap drawable.
> Then wanted multiple channels... and at this point, you have
> a poor man's X.


> Realizing this, I went full into it and shifted gears to a higher
> level X kind of thing, where you make an app based on widgets on
> a grid, which would work in text mode or graphical mode. But, I
> didn't get too far before work took over my time.

Actually, I've thought of that before. It's something I'd love to have.

The main complaint with writing a real X11 app is that *everything* is
graphical, so to do something as simple as print a string requires an
inordinate amount of code. You need to create a subwindow or
subdrawable, load a font (with all that living nightmare that font
resolution is), calculate font proportions, spacing, line wrapping, and
do all of the above in an event-based model. At the end of the day
you've reinvented a GUI toolkit with a text widget.

> But, on a terminal, I just don't think images are a fit there.  Might
> as well just make something like a gui image viewer app and keep a
> more traditional terminal.
> Though, I'd prefer to be more like vga text mode than VT100 in terms
> of capabilities.

The way I see it, it's a sort of "VGA-enabled text mode" terminal, where
you can intermix graphics on what is basically a character grid. Not a
full-fledged windowing system embedded in xterm.

(I mean, with graphics capabilities the application *could* implement a
windowing system, but that's the app's problem, not the terminal's.)


One reason that few people are aware there are programs running the internet is that they never crash in any significant way: the free software underlying the internet is reliable to the point of invisibility. -- Glyn Moody, from the article "Giving it all away"

More information about the Digitalmars-d mailing list