BBS水木清华站∶精华区
发信人: mick.bbs@bbs.hwh.edu.tw (mick), 看板 linux
标 题: 让你的 elm 2.4p25 可以秀彩色的 ANSI code .
发信站: 华夏计中BBS (Mon Sep 23 17:18:56 1996)
转信站:
让 elm 能用中文
先去Hanky大大那儿抓一个档...
ftp://henry.dorm10.nctu.edu.tw/pub/linux/system/development/chinese_ok/ 下
抓 elm-2.4.25.tgz
解开後跑 Configure,其中的问题按 Enter 使用预设值即可。
> ------------------------------------------------------------------- <
让你的 elm 2.4p25 可以秀彩色的 ANSI code .
1. 把 builtin.c 的第 153 行到 168 行
=== 这是原本的 source code 部份 ============================
} else if(iscntrl(*iptr & 0xff)) { /* Non-white ctrl char */
if (chars_output + 2 <= width) {
*optr++ = '^';
*optr++ = ctrl(*iptr);
iptr++; --ilen;
chars_output += 2;
} else {
break;
}
} else { /* Assume a printing char in case isprint */
*optr++ = *iptr++; /* macro fails on true 8-bit characters. */
chars_output++;
--ilen;
}
}
*optr = '\0';
=== 这是原本的 source code 部份 ===========================
改成...
=== 这是修改後的 source code 部份 =========================
} else if (1) {
*optr++ = *iptr++;
chars_output++;
--ilen;
} else {
if (chars_output + 2 <= width) {
*optr++ = '^';
*optr++ = ctrl(*iptr);
iptr++; --ilen;
chars_output += 2;
} else {
break;
}
}
}
*optr = '\0';
=== 这是修改後的 source code 部份 =========================
2. 再把 curses.c 的第 788 到 793 行改删除或 mark 起来.(如下这一段)
/*===================================================================
#ifdef ASCII_CTYPE
if(!isascii(ch) || !isprint(ch))
#else
if(!isprint(ch) && !(ch & ~0x7f))
#endif
ch = '?';
=====================================================================*/
这样便大功告成, 不过会不会有啥後遗症我也不晓得 :>
BBS水木清华站∶精华区