summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@googlemail.com>2012-12-10 16:09:28 +0100
committerDavid Herrmann <dh.herrmann@googlemail.com>2012-12-10 16:09:28 +0100
commit03aab2b54b115b8f01856a24d3a00eb7a9f12e14 (patch)
tree8f5b0e7592d289cbca43606f7a2775289abcd1c2 /README
parent1657bb9a3a784b07ae9e2018da2e09240cc6b321 (diff)
tsm: screen: add support for multi-cell characters
The wcwidth() POSIX helper returns the number of cells that a character occupies. This is normally 1, however, if it is 0 we simply discard this input (this should never happen as all characters that wcwidth() returns 0 for should already be handled by the VTE layer). But if it is >1, we write the character in the first cell, set the width correctly and mark all following characters as width=0. Everything else is left unchanged, that means, the running application has to be aware of wcwidth() and correctly send two backspaces to clear a width=2 character and so on. This behavior almost exactly matches the xterm behavior. There are some corner cases like erasing only one part of a multi-cell character etc. that might differ. However, these are non-standard cases that no application should never rely on. Anyway, if we spot any of these differences between xterm and kmscon, we should fix kmscon to behave like xterm does. Thanks to Shixin for looking this up in other emulators. Reported-by: Shixin Zeng Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
Diffstat (limited to 'README')
0 files changed, 0 insertions, 0 deletions