On 02/14/2017 01:40 PM, Thomas Wolff wrote:
No. We're talking about a function in the master side of the tty,
while
the applications started in the terminal are on the slave side.
I am not familiar with the concept of setting termios properties on
either the master or slave side of a pty. I've only ever set them in
the
client application, including my tests about IUTF8 which worked. Would
setting on the master side imply it's set for the clients implicitly,
and can it be changed later, e.g. when mintty character encoding is
being changed from the Options dialog?
And you say the function of erasing characters on BS is in the master
side? To be honest, this confuses me. I thought it's a client function,
like readline() would perform if used (apparently not by dash),
which is
kind of an enhanced version of the tty cooked mode and used to work
even
without the new flag, right?
The readline source code does not mention IUTF8; and neither bash nor
dash need to reference it, because if the tty handling code sets it
correctly for what the terminal is going to display, then the clients
that are read()ing from the tty never even see BS in cooked mode (the
master side of the terminal handles BS before the read() completes in
the slave, if I'm understanding it correctly).