[GIT PULL] runes

From: Adam Borowski
Date: Sat Apr 01 2017 - 05:43:26 EST


Hi Linus!
Please pull from

https://github.com/kilobyte/linux.git runes

It contains fixes for OLCUC handling, expanding its functionality to what I
presume was your intention in implementing OLCUC in 1991 but couldn't be
done then.

The highlight is a fix for a bug that bisects all the way to 0.01, although
it wasn't as visible then as shells didn't output ANSI codes during normal
operation.

The rest adds proper support for the Great Runes; enabled if iutf8 is set
(default on modern terminals).


Without these fixes, even basic shell output is mangled:
================================================
kilobyte@andunie:~$ stty olcuc
[01;32MKILOBYTE@ANDUNIE[00M:[01;34M~[00M$ LS
[01;34MGOATPORN[0M
================================================

With the fixes, to get the old-style OLCUC behaviour ASCII you can stty
-iutf8; neither ANSI codes nor Unicode will be mangled anymore. But, that's
quite useless -- I wonder what was your reason to implement OLCUC back in
the day even though it was obsolete by decades even then, and was already
dropped from relevant standards. Thus, I guess you want proper rune
support, this pull request adds this. I've chosen Elder Futhark as the
variant to implement.

You might want to consider dropping patch 3, it is required only for full
coverage of the target set (Elder Futhark) but not for regular ASCII
mapping, and brings some code complexity.

Required userspace support is present in default GUI installs of all
distributions I checked, both on old-style terminals that use server-side X
fonts and with client-side {true,open}type -- but not on console unless
someone adds the required characters to the charset, which is tricky because
of 256/512 glyph limitations. Thus, runes support currently works only on
graphical terminals.


Meow! -- sorry, áááá!

Commits up to 14f34ba1d8748f252f941b5bb87efd7b1ed55868 on top of
c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201.

----------------------------------------------------------------
Adam Borowski (4):
n_tty: don't mangle tty codes in OLCUC mode
n_tty: use runes rather than uppercase in IUTF8 OLCUC mode
n_tty: support th, ae and ng runes
n_tty: wrap all OLCUC code in a config option

drivers/tty/Kconfig | 17 ++++++++
drivers/tty/n_tty.c | 115 ++++++++++++++++++++++++++++++++++++++++++++++------
2 files changed, 120 insertions(+), 12 deletions(-)

--
âââââââ Meow!
âââââââ
âââââââ Collisions shmolisions, let's see them find a collision or second
âââââââ preimage for double rot13!

Attachment: signature.asc
Description: PGP signature