OSDN Git Service

vt: introduce unicode mode for /dev/vcs
authorNicolas Pitre <nicolas.pitre@linaro.org>
Wed, 27 Jun 2018 03:56:41 +0000 (23:56 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Jun 2018 12:38:12 +0000 (21:38 +0900)
commitd21b0be246bf3bbf569e6e239f56abb529c7154e
treed3d40eba5bb90d02875e55f49e624e9d3b7a82f9
parentd8ae7242718738ee1bf9bfdd632d2a4b150fdd26
vt: introduce unicode mode for /dev/vcs

Now that the core vt code knows how to preserve unicode values for each
displayed character, it is then possible to let user space access it via
/dev/vcs*.

Unicode characters are presented as 32 bit values in native endianity
via the /dev/vcsu* devices, mimicking the simple /dev/vcs* devices.
Unicode with attributes (similarly to /dev/vcsa*) is not supported at
the moment.

Data is available only as long as the console is in UTF-8 mode. ENODATA
is returned otherwise.

This was tested with the latest development version (to become
version 5.7) of BRLTTY. Amongst other things, this allows ⠋⠕⠗ ⠞⠓⠊⠎
⠃⠗⠁⠊⠇⠇⠑⠀⠞⠑⠭⠞⠀to appear directly on braille displays regardless of the
console font being used.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Tested-by: Dave Mielke <Dave@mielke.cc>
Acked-by: Adam Borowski <kilobyte@angband.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/vt/vc_screen.c
drivers/tty/vt/vt.c
include/linux/selection.h