作者itoc, 信區: itoc
標題[功能] 簡體支援 (3) -- 以簡體中文輸出螢幕
時間04/12/17
作者: itoc (站上人數:802) 看板: plan
標題: [功能] 簡體支援 (3)
時間: 2004/12/17 Fri 18:06:19 Updated: 2004/12/17
雙色字時會出錯,不過這就算了 :p
: visio.c:prints()
- for (str = buf; cc = *str; str++)
+ for (str = trans2gb ? b52gb(buf) : buf; cc = *str; str++)
outc(cc);
: visio.c:outs()
+ if (trans2gb)
+ str = b52gb(str);
while (ch = *str)
: visio.c:outx()
+ if (trans2gb) /* 如果是簡體就不 outx 了,省麻煩 */
+ {
+ outs(str);
+ return;
+ }
while (ch = *str)
: window.c:draw_line()
/* 印出 (x, y) 至 (x, y + strip_ansi_len(msg) - 1) */
- ptr = msg;
+ ptr = trans2gb ? b52gb(msg) : msg;
: post.c:hdr_outs()
+ if (trans2gb)
+ {
+ char tempid[IDLEN + 2];
+
+ str_ncpy(tempid, hdr->owner, sizeof(tempid));
+ if (mark = strchr(tempid, '@'))
+ *mark = '\0';
+ if (mark = strchr(tempid, '.'))
+ mark[1] = '\0';
+ prints("%-13.12s", tempid);
+ }
+ else
+ {
mark = hdr->owner;
len = IDLEN + 1;
...
...
while (len--)
{
outc(' ');
}
+ }
...
...
/* --------------------------------------------------- */
/* 印出標題 */
/* --------------------------------------------------- */
+ if (trans2gb)
+ {
+#ifdef HAVE_DECLARE
+ square = 0; /* 如果是簡體就不 Declaration 了,省麻煩 */
+#endif
+ prints(" %.*s", cc, title);
+ }
+ else
+ {
mark = title + cc;
cc = ' ';
...
...
} while ((cc = *title++) && (title < mark));
+ }
--
□ 本文章由 itoc 從 itoc.Dorm11.NCTU.edu.tw 發表