[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: terminal emulator compatible with Ecma-48

On Sat, Apr 27, 2013 at 02:36:47AM +0200, berenger.morel@neutralite.org wrote:
> I know that most terminal emulators support most VT100 escape
> sequences, which are based on ecma-48, but as far as I know, they
> are not able to support the full standard. By example, they only
> support 7 bit sequences, and so CSI is 0x1B5B only, were ecma-48
> says it can be 0x9B too. It also seems that blinking is not
> supported.

ECMA-48 is a huge standard, and the VT series terminals only implement
a tiny fraction of its capabilities.  The standard is not intended to
be implemented in its entirety from my reading of it; hardware
implementations should implement the subset of it which is appropriate
for a particular application.  That said, such a terminal would be
quite desirable to have.  Though time has moved on, and there are a
number of shortcomings in the standard which any implementor would
want to address, probably via vendor-specific extensions.

One thing which has puzzled me for some time is why xterm, and all
the other terminal emulators, including the Linux console, chose
the VT100 to emulate.  It's a long-obsolete and poorly-featured
terminal.  There are much more fully-featured terminals which came
after it, and given that all terminals are now implemented in
software, it would be perfectly possible to implement very advanced
functionality such as SVG-compatible vector graphics and OpenGL in
terms of the escape command sequences (or an equivalent alternative).

> So, I would like to know if someone knows about a terminal emulator
> supporting all the standard or, at least, which explicitly says
> which part of it it supports.

I'm not personally aware of any, I'm afraid.  It's disappointing
that even the "VT100-compatible" emulators all support only a
subset of the full VT100 command set.

I've had plans to write a "new" terminal emulator for several years;
lack of time due to doing a PhD has prevented this, but I'm planning
on picking it up again at some point.  I have a print copy of all
the ECMA/ISO terminal-related specs, and I implemented all the
CL/CR/GL/GR mapping stuff you're referring to in my "uterm"
terminal emulator project; this was implemented in GTK+ back in 2005,
and it even included a gnome-canvas-based code table editor, but I
deleted the project on Alioth a year or so back, and the Arch repo.
I plan to resurrect it after porting the GObject-based stuff to C++.
But I've got a number of higher-priority projects waiting before I get
to this.


  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux    http://people.debian.org/~rleigh/
 `. `'   schroot and sbuild  http://alioth.debian.org/projects/buildd-tools
   `-    GPG Public Key      F33D 281D 470A B443 6756 147C 07B3 C8BC 4083 E800

Reply to: