libvte cannot display surrogate pair double width characters properly.
This commit is contained in:
parent
c5e5ed86f6
commit
cb363c575b
|
@ -269,7 +269,9 @@ The screen on which every other node renders.
|
||||||
display text above the basic multilingual plane. this is behind an option
|
display text above the basic multilingual plane. this is behind an option
|
||||||
because it may affect performance slightly negatively. without this option
|
because it may affect performance slightly negatively. without this option
|
||||||
enabled, all double-width and surrogate pair characters will be replaced by
|
enabled, all double-width and surrogate pair characters will be replaced by
|
||||||
`??` and `?` respectively.
|
`??` and `?` respectively. (NOTE: libvte (e.g. gnome-terminal) cannot display
|
||||||
|
characters that are both surrogate pairs _and_ double-width properly. there
|
||||||
|
is no way for blessed to fix this unfortunately).
|
||||||
|
|
||||||
These border-overlapped elements:
|
These border-overlapped elements:
|
||||||
|
|
||||||
|
|
|
@ -79,7 +79,11 @@ var lorem = 'Non eram nescius Brute cum quae summis ingeniis exquisitaque'
|
||||||
+ ' legantur';
|
+ ' legantur';
|
||||||
|
|
||||||
lorem = lorem.replace(/e/gi, DOUBLE);
|
lorem = lorem.replace(/e/gi, DOUBLE);
|
||||||
|
// NOTE: libvte breaks when trying to display
|
||||||
|
// this surrogate pair double width character:
|
||||||
|
if (process.argv[2] !== 'vte') {
|
||||||
lorem = lorem.replace(/a/gi, SURROGATE_DOUBLE);
|
lorem = lorem.replace(/a/gi, SURROGATE_DOUBLE);
|
||||||
|
}
|
||||||
lorem = lorem.replace(/o/gi, SURROGATE_SINGLE);
|
lorem = lorem.replace(/o/gi, SURROGATE_SINGLE);
|
||||||
|
|
||||||
var main = blessed.box({
|
var main = blessed.box({
|
||||||
|
|
Loading…
Reference in New Issue