switch back to old acs.

This commit is contained in:
Christopher Jeffrey 2013-08-10 15:48:27 -05:00
parent 66dc2118e7
commit a30d3ecbe8

View File

@ -1068,18 +1068,21 @@ Screen.prototype.draw = function(start, end) {
// Maybe remove !this.tput.unicode check, however,
// this seems to be the way ncurses does it.
if (this.tput) {
if (this.tput.strings.enter_alt_charset_mode && !this.tput.brokenACS) {
if (this.tput.acscr[ch]) {
if (acs) {
ch = this.tput.acscr[ch];
} else {
ch = this.tput.smacs()
+ this.tput.acscr[ch];
acs = true;
if (this.tput.strings.enter_alt_charset_mode) {
//if (!this.tput.brokenACS || !this.tput.unicode) {
if (!this.tput.brokenACS) {
if (this.tput.acscr[ch]) {
if (acs) {
ch = this.tput.acscr[ch];
} else {
ch = this.tput.smacs()
+ this.tput.acscr[ch];
acs = true;
}
} else if (acs) {
ch = this.tput.rmacs() + ch;
acs = false;
}
} else if (acs) {
ch = this.tput.rmacs() + ch;
acs = false;
}
} else {
// U8 is not consistently correct. Some terminfo's
@ -1089,10 +1092,9 @@ Screen.prototype.draw = function(start, end) {
// are it does not support UTF8. This is probably
// the "safest" way to do this. Should fix things
// like sun-color.
if ((!this.unicode
|| (!this.tput.strings.enter_alt_charset_mode
&& this.tput.numbers.U8 !== 1))
&& ch > '~') {
// if (this.tput.numbers.U8 !== 1 && ch > '~') {
// if ((!this.unicode || this.tput.numbers.U8 !== 1) && this.tput.utoa[ch]) {
if (this.tput.numbers.U8 !== 1 && this.tput.utoa[ch]) {
ch = this.tput.utoa[ch] || '?';
}
}