Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Feb 2014 06:59:39 -0500
From:      Thomas Dickey <dickey@his.com>
To:        Ed Schouten <ed@80386.nl>
Cc:        arch@freebsd.org, Bryan Drewery <bdrewery@freebsd.org>
Subject:   Re: terminfo
Message-ID:  <20140223115939.GB4084@aerie.jexium-island.net>
In-Reply-To: <CAJOYFBCMS4k7pyRk2YHZm81F6iP=SApZhbCm0MO4P-pvXbTCxQ@mail.gmail.com>
References:  <5304A0CC.5000505@FreeBSD.org> <CAJOYFBCMS4k7pyRk2YHZm81F6iP=SApZhbCm0MO4P-pvXbTCxQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--DBIVS5p969aUjpLe
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Feb 21, 2014 at 01:05:52PM +0100, Ed Schouten wrote:
> Hi Bryan,
>=20
> On 19 February 2014 13:17, Bryan Drewery <bdrewery@freebsd.org> wrote:
> > Why do we not use terminfo? Our termcap is quite aged and missing a lot
> > of modern terminals/clients.
>=20
> It is true that our termcap is quite aged, but the fact is, once you
> add entries for a certain terminal, there's little need to update it
> after that. ncurses itself is not really a moving target. What kind of
> modern terminals/clients are missing?

hmm - I continue to add/improve the database (and always have todo's)

http://invisible-island.net/ncurses/terminfo.src-history.html

> > Using terminfo would allow us to use the already well maintained databa=
se from ncurses. Is it just a matter of someone doing the work or are there=
 other reasons?
>=20
> It's just a matter of someone doing the work. It would be nice if we
> ever made this change.

It's more than that - there's some reluctance of the users to switch
to terminfo.  So what FreeBSD has is a facade wrapped around terminfo,
with the legacy termcap database updated occasionally.
=20
> I won't deny that termcap was really useful at one point in time, but
> let's be honest: the variety of terminals out there has massively
> dropped over time. Terminal emulation has become a solved problem. As
> of FreeBSD 9, syscons supports all the sequences described in
> xterm-256color, though it isn't able to print more than 8 colours,

I'm inclined to disagree with that.

Here's a working entry for the console, along with notes:

	http://invisible-island.net/ncurses/terminfo.src.html#tic-teken

(though I see that I overlooked adding the note which I made for wsvt25,
that none of the xterm-specific items is supported).

Counting differences using infocmp:
	versus cons25 (37 lines)
	versus xterm-new (120 lines)

One of the differences against cons25 is partial, as noted in my comments
on acsc - there's no corresponding adjustment to make against xterm.

> which is why we use TERM=3Dxterm. Tools like screen, tmux, etc., they
> use a different TERM type, but this is mainly used to detect whether
> the process is running inside of screen or tmux. It does not strongly
> affect the kinds of sequences that are being emitted. They work
> perfectly fine if you just set TERM to xterm or xterm-256color.
>=20
> I suspect the following logic would be sufficient for at least 99.5%
> of our users:
>=20
> if $TERM contains 256
>   use xterm-256color
> else
>   use xterm

I didn't see any 256-color support in testing this configuration.
It does _something_, but would tend to disappoint users.

ftp://invisible-island.net/temp/teken-88colors.png
ftp://invisible-island.net/temp/teken-256colors.png

(screenshots made using VMware Fusion with FreeBSD 10 - ymmv)
=20
> It's a shame I am so short on time nowadays, but I think it would make
> so much sense to just come up with some kind of document that
> standardizes the intersection of the features supported by most common
> terminal emulators and get it rubber stamped by the maintainers of
> various terminal emulators. If it turns out some kind of terminal
> emulator does something in a non-standard way, we can just slap this
> document in the author's face. That would not only benefit FreeBSD,
> but also most of the other flavours of UNIX.
>=20
> $TERM should die.

certainly not while there are such large differences among the implementati=
ons.

:-)

--=20
Thomas E. Dickey <dickey@invisible-island.net>
http://invisible-island.net
ftp://invisible-island.net

--DBIVS5p969aUjpLe
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: Digital signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAlMJ4qsACgkQcCNT4PfkjtuhgQCdFvrZJbPSj1B0oqTdtWb6RyXb
kYEAniEYpH45cNdgLPQI3bB8RuvaNpXp
=adgk
-----END PGP SIGNATURE-----

--DBIVS5p969aUjpLe--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140223115939.GB4084>