Fwd: automatic disable unicode line style when terminal is not unicode

Started by Pavel Stehuleabout 8 years ago3 messageshackers
Jump to latest
#1Pavel Stehule
pavel.stehule@gmail.com

Hi

I have to return back to 8bit encoding, and in this old world, the unicode
borders doesn't work. Sure. It can be simply disabled and forced to ascii.

What do you think about it?

Regards

Pavel

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Pavel Stehule (#1)
Re: Fwd: automatic disable unicode line style when terminal is not unicode

Pavel Stehule <pavel.stehule@gmail.com> writes:

I have to return back to 8bit encoding, and in this old world, the unicode
borders doesn't work. Sure. It can be simply disabled and forced to ascii.
What do you think about it?

I don't think we should assume we know what the terminal code will do.
If the line style doesn't actually work, the user will notice and change
the setting quickly enough. If we try to do it for him, we might break
situations that work fine now.

The sort of situation I have in mind is, for instance, working through
an ssh connection. IME it's very often the case that the server side
of the connection doesn't really have an accurate idea of the terminal
capabilities or encoding on the user side. Code that's trying to be
smart just results in less-predictable behavior.

regards, tom lane

#3Pavel Stehule
pavel.stehule@gmail.com
In reply to: Tom Lane (#2)
Re: Fwd: automatic disable unicode line style when terminal is not unicode

2018-03-04 16:53 GMT+01:00 Tom Lane <tgl@sss.pgh.pa.us>:

Pavel Stehule <pavel.stehule@gmail.com> writes:

I have to return back to 8bit encoding, and in this old world, the

unicode

borders doesn't work. Sure. It can be simply disabled and forced to

ascii.

What do you think about it?

I don't think we should assume we know what the terminal code will do.
If the line style doesn't actually work, the user will notice and change
the setting quickly enough. If we try to do it for him, we might break
situations that work fine now.

The sort of situation I have in mind is, for instance, working through
an ssh connection. IME it's very often the case that the server side
of the connection doesn't really have an accurate idea of the terminal
capabilities or encoding on the user side. Code that's trying to be
smart just results in less-predictable behavior.

The code is very simply

if (strcmp(nl_langinfo(CODESET), "UTF-8") != 0)
do_pset("linestyle", "ascii", &pset.opt, true);

There is another question. With unicode linestyle border we don't respect
client encoding when client_encoding is different than unicode. So the
result must be broken.

Regards

Pavel

Show quoted text

regards, tom lane