diff options
author | jack <jack@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2004-04-30 10:43:30 +0800 |
---|---|---|
committer | jack <jack@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2004-04-30 10:43:30 +0800 |
commit | 45a5058a15fae9664b45729fbf7617138fd470f6 (patch) | |
tree | 6548d9059d49c379cce003282cd10a4a79827d67 | |
parent | 9d246fa5599d15acc8e4c1b19e338deeff7e4473 (diff) | |
download | pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.tar pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.tar.gz pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.tar.bz2 pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.tar.lz pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.tar.xz pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.tar.zst pttbbs-45a5058a15fae9664b45729fbf7617138fd470f6.zip |
changed stuff.c board.c to i18n format
git-svn-id: http://opensvn.csie.org/pttbbs/branches/Jaky.i18n@1896 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r-- | include/proto.h | 2 | ||||
-rw-r--r-- | include/pttstruct.h | 2 | ||||
-rw-r--r-- | mbbsd/bbs.c | 2 | ||||
-rw-r--r-- | mbbsd/board.c | 126 | ||||
-rw-r--r-- | mbbsd/mail.c | 2 | ||||
-rw-r--r-- | mbbsd/more.c | 2 | ||||
-rw-r--r-- | mbbsd/stuff.c | 41 |
7 files changed, 65 insertions, 112 deletions
diff --git a/include/proto.h b/include/proto.h index 9dc35bc6..9e9b70f7 100644 --- a/include/proto.h +++ b/include/proto.h @@ -510,7 +510,7 @@ int dashl(char *fname); char *subject(char *title); void setdirpath(char *buf, char *direct, char *fname); int str_checksum(char *str); -void show_help(char *helptext[]); +void show_help(char **helptext, int start, int num); int belong(char *filelist, char *key); char *Cdatedate(time_t *clock); void sethomeman(char *buf, char *userid); diff --git a/include/pttstruct.h b/include/pttstruct.h index 07f7a6e9..7b7ffc28 100644 --- a/include/pttstruct.h +++ b/include/pttstruct.h @@ -426,14 +426,12 @@ typedef struct { time_t Ftouchtime; int Fbusystate; -#ifdef I18N /* i18n(internationlization) */ char *i18nstr[MAX_LANG][MAX_STRING]; char i18nstrbody[20 * MAX_LANG * MAX_STRING]; /* Based on the statistis, we found the lengh of one string is 20 bytes approximately. */ -#endif } SHM_t; typedef struct { diff --git a/mbbsd/bbs.c b/mbbsd/bbs.c index 4f197b3e..baea27a5 100644 --- a/mbbsd/bbs.c +++ b/mbbsd/bbs.c @@ -2464,7 +2464,7 @@ static char *board_help[] = { static int b_help() { - show_help(board_help); + //i18n remark show_help(board_help); return FULLUPDATE; } diff --git a/mbbsd/board.c b/mbbsd/board.c index fed652bb..7921f3e4 100644 --- a/mbbsd/board.c +++ b/mbbsd/board.c @@ -38,10 +38,10 @@ void imovefav(int old) char buf[5]; int new; - getdata(b_lines - 1, 0, "½Ð¿é¤J·s¦¸§Ç:", buf, sizeof(buf), DOECHO); + getdata(b_lines - 1, 0, SHM->i18nstr[cuser.language][468], buf, sizeof(buf), DOECHO); new = atoi(buf) - 1; if (new < 0 || brdnum <= new){ - vmsg("¿é¤J½d³ò¦³»~!"); + vmsg(SHM->i18nstr[cuser.language][469]); return; } move_in_current_folder(old, new); @@ -102,7 +102,7 @@ have_author(char *brdname) char dirname[100]; snprintf(dirname, sizeof(dirname), - "¥¿¦b·j´M§@ªÌ[33m%s[m ¬ÝªO:[1;33m%s[0m.....", + SHM->i18nstr[cuser.language][470], currauthor, brdname); move(b_lines, 0); clrtoeol(); @@ -425,10 +425,8 @@ get_fav_type(boardstat_t *ptr) static void brdlist_foot() { - prints("\033[34;46m ¿ï¾Ü¬ÝªO \033[31;47m (c)\033[30m·s¤å³¹¼Ò¦¡ " - "\033[31m(v/V)\033[30m¼Ð°O¤wŪ/¥¼Åª \033[31m(y)\033[30m¿z¿ï%s" - " \033[31m(m)\033[30m¤Á´«³Ì·R \033[m", - yank_flag == 0 ? "³Ì·R" : yank_flag == 1 ? "³¡¥÷" : "¥þ³¡"); + prints(SHM->i18nstr[cuser.language][471], + yank_flag == 0 ? SHM->i18nstr[cuser.language][472] : yank_flag == 1 ? SHM->i18nstr[cuser.language][473] : SHM->i18nstr[cuser.language][474]); } static void @@ -438,29 +436,16 @@ show_brdlist(int head, int clsflag, int newflag) if (class_bid == 1) { currstat = CLASS; myrow = 6; - showtitle("¤ÀÃþ¬ÝªO", BBSName); + showtitle(SHM->i18nstr[cuser.language][475], BBSName); movie(0); move(1, 0); outs( - " " - "¢© ¢~¡X\033[33m¡´\n" - " ùá¡X \033[m " - "¢¨¢i\033[47m¡ó\033[40m¢i¢i¢©ùç\n" - " \033[44m ¡s¡s¡s¡s¡s¡s¡s¡s " - "\033[33mùø\033[m\033[44m ¢©¢¨¢i¢i¢i¡¿¡¿¡¿ùø \033[m\n" - " \033[44m " - "\033[33m \033[m\033[44m ¢«¢ª¢i¢i¢i¡¶¡¶¡¶ ùø\033[m\n" - " ¡s¡s¡s¡s¡s¡s¡s¡s \033[33m" - "¢x\033[m ¢ª¢i¢i¢i¢i¢« ùø\n" - " \033[33mùó" - "¡X¡X\033[m ¢« ¡X¡Ï\033[m"); + SHM->i18nstr[cuser.language][476]); } else if (clsflag) { - showtitle("¬ÝªO¦Cªí", BBSName); - prints("[¡ö]¥D¿ï³æ [¡÷]¾\\Ū [¡ô¡õ]¿ï¾Ü [y]¸ü¤J [S]±Æ§Ç [/]·j´M " - "[TAB]¤åºK¡E¬ÝªO [h]¨D§U\n" - "\033[7m%-20s Ãþ§O Âà«H%-31s¤H®ð ªO ¥D \033[m", - newflag ? "Á`¼Æ ¥¼Åª ¬Ý ªO" : " ½s¸¹ ¬Ý ªO", - " ¤¤ ¤å ±Ô z"); + showtitle(SHM->i18nstr[cuser.language][477], BBSName); + prints(SHM->i18nstr[cuser.language][478], + newflag ? SHM->i18nstr[cuser.language][479] : SHM->i18nstr[cuser.language][480], + SHM->i18nstr[cuser.language][481]); move(b_lines, 0); brdlist_foot(); } @@ -469,11 +454,11 @@ show_brdlist(int head, int clsflag, int newflag) char *color[8] = {"", "\033[32m", "\033[33m", "\033[36m", "\033[34m", "\033[1m", "\033[1;32m", "\033[1;33m"}; - char *unread[2] = {"\33[37m \033[m", "\033[1;31m£¾\033[m"}; + char *unread[2] = {"\33[37m \033[m", SHM->i18nstr[cuser.language][482]}; if (yank_flag == 0 && get_fav_type(&nbrd[0]) == 0){ move(3, 0); - prints(" --- ªÅ¥Ø¿ý ---"); + prints(SHM->i18nstr[cuser.language][483]); return; } @@ -495,13 +480,13 @@ show_brdlist(int head, int clsflag, int newflag) else if (ptr->myattr & NBRD_FOLDER){ char *title = get_folder_title(ptr->bid); if( !newflag ) - prints("%5d %c %sMyFavFolder\033[m ¥Ø¿ý ¡¼%-34s\033[m", + prints(SHM->i18nstr[cuser.language][484], head, ptr->myattr & NBRD_TAG ? 'D' : ' ', !(cuser.uflag2 & FAVNOHILIGHT) ? "\033[1;36m" : "", title); else - prints("%6d %sMyFavFolder\033[m ¥Ø¿ý ¡¼%-34s\033[m", + prints(SHM->i18nstr[cuser.language][485], get_data_number(get_fav_folder(getfolder(ptr->bid))), !(cuser.uflag2 & FAVNOHILIGHT) ? "\033[1;36m" : "", title); @@ -526,11 +511,10 @@ show_brdlist(int head, int clsflag, int newflag) } if (class_bid != 1) { if (!GROUPOP() && !HasPerm(B_BH(ptr))) { - prints("Unknown?? ÁôªO ¡H³oÓªO¬OÁôªO"); + prints(SHM->i18nstr[cuser.language][486]); } else { - prints("%s%-13s\033[m%s%5.5s\033[0;37m%2.2s\033[m" - "%-34.34s", + prints("%s%-13s\033[m%s%5.5s\033[0;37m%2.2s\033[m%-34.34s", ((!(cuser.uflag2 & FAVNOHILIGHT) && getboard(ptr->bid) != NULL))? "\033[1;36m" : "", B_BH(ptr)->brdname, @@ -542,11 +526,11 @@ show_brdlist(int head, int clsflag, int newflag) if (B_BH(ptr)->brdattr & BRD_BAD) prints(" X "); else if (B_BH(ptr)->nuser >= 5000) - prints("\033[1;34mÃz!\033[m"); + prints(SHM->i18nstr[cuser.language][487]); else if (B_BH(ptr)->nuser >= 2000) - prints("\033[1;31mÃz!\033[m"); + prints(SHM->i18nstr[cuser.language][488]); else if (B_BH(ptr)->nuser >= 1000) - prints("\033[1mÃz!\033[m"); + prints(SHM->i18nstr[cuser.language][489]); else if (B_BH(ptr)->nuser >= 100) prints("\033[1mHOT\033[m"); else if (B_BH(ptr)->nuser > 50) @@ -569,31 +553,6 @@ show_brdlist(int head, int clsflag, int newflag) } } -static char *choosebrdhelp[] = { - "\0¬ÝªO¿ï³æ»²§U»¡©ú", - "\01°ò¥»«ü¥O", - "(p)(¡ô)/(n)(¡õ)¤W¤@ӬݪO / ¤U¤@ӬݪO", - "(P)(^B)(PgUp) ¤W¤@¶¬ÝªO", - "(N)(^F)(PgDn) ¤U¤@¶¬ÝªO", - "($)/(s)/(/) ³Ì«á¤@ӬݪO / ·j´M¬ÝªO / ¥H¤¤¤å·j´M¬ÝªOÃöÁä¦r", - "(¼Æ¦r) ¸õ¦Ü¸Ó¶µ¥Ø", - "\01¶i¶¥«ü¥O", - "(^W) °g¸ô¤F §Ú¦bþ¸Ì", - "(r)(¡÷)/(q)(¡ö)¶i¤J¦h¥\\¯à¾\\Ū¿ï³æ / ¦^¨ì¥D¿ï³æ", - "(y/Z) §Úªº³Ì·R,q¾\\¬ÝªO,©Ò¦³¬ÝªO / q¾\\·s¶}¬ÝªO", - "(L/g) ¥[¤J¤À¹j½u / ¥Ø¿ý¦Ü§Úªº³Ì·R", - "(K/T) ³Æ¥÷,²M²z§Úªº³Ì·R / קï§Úªº³Ì·R¥Ø¿ý¦WºÙ", - "(v/V) ³q³q¬Ý§¹/¥þ³¡¥¼Åª", - "(S) «ö·Ó¦r¥À/¤ÀÃþ±Æ§Ç", - "(t/^T/^A/^D) ¼Ð°O¬ÝªO/¨ú®ø©Ò¦³¼Ð°O/ ±N¤w¼Ð°OªÌ¥[¤J/²¾¥X§Úªº³Ì·R", - "(m/M) §â¬ÝªO¥[¤J©Î²¾¥X§Úªº³Ì·R,²¾°£¤À¹j½u/·h²¾§Úªº³Ì·R", - "\01¤p²Õªø«ü¥O", - "(E/W/B) ³]©w¬ÝªO/³]©w¤p²Õ³Æ§Ñ/¶}·s¬ÝªO", - "(^P) ²¾°Ê¤w¼Ð°O¬ÝªO¨ì¦¹¤ÀÃþ", - NULL -}; - - static void set_menu_BM(char *BM) { @@ -616,6 +575,7 @@ choose_board(int newflag) boardstat_t *ptr; int head = -1, ch = 0, currmodetmp, tmp, tmp1, bidtmp; char keyword[13] = "", buf[64]; + setutmpmode(newflag ? READNEW : READBRD); if( get_current_fav() == NULL ) @@ -630,8 +590,7 @@ choose_board(int newflag) load_boards(keyword); if (brdnum <= 0 && yank_flag > 0) { if (keyword[0] != 0) { - mprints(b_lines - 1, 0, "¨S¦³¥ô¦ó¬ÝªO¼ÐÃD¦³¦¹ÃöÁä¦r " - "(ªO¥DÀ³ª`·N¬ÝªO¼ÐÃD©R¦W)"); + mprints(b_lines - 1, 0, SHM->i18nstr[cuser.language][510]); pressanykey(); keyword[0] = 0; brdnum = -1; @@ -777,20 +736,19 @@ choose_board(int newflag) } break; case 'h': - show_help(choosebrdhelp); + show_help(SHM->i18nstr[cuser.language], 490, 20); show_brdlist(head, 1, newflag); break; case '/': - getdata_buf(b_lines - 1, 0, "½Ð¿é¤J¬ÝªO¤¤¤åÃöÁä¦r:", + getdata_buf(b_lines - 1, 0, SHM->i18nstr[cuser.language][511], keyword, sizeof(keyword), DOECHO); brdnum = -1; break; case 'S': if(yank_flag == 0){ move(b_lines - 2, 0); - prints("«·s±Æ§Ç¬ÝªO " - "\033[1;33m(ª`·N, ³oӰʧ@·|Âмgì¨Ó³]©w)\033[m \n"); - tmp = getans("±Æ§Ç¤è¦¡ (1)«ö·ÓªO¦W±Æ§Ç (2)«ö·ÓÃþ§O±Æ§Ç ==> [0]¨ú®ø "); + prints(SHM->i18nstr[cuser.language][512]); + tmp = getans(SHM->i18nstr[cuser.language][513]); if( tmp == '1' ) fav_sort_by_name(); else if( tmp == '2' ) @@ -809,7 +767,7 @@ choose_board(int newflag) if (HAS_PERM(PERM_SYSOP)) { ptr = &nbrd[num]; if (ptr->myattr & NBRD_SYMBOLIC) { - if (getans("½T©w§R°£³sµ²¡H[N/y]") == 'y') + if (getans(SHM->i18nstr[cuser.language][514]) == 'y') delete_symbolic_link(&bcache[ptr->bid - 1], ptr->bid); } brdnum = -1; @@ -863,7 +821,7 @@ choose_board(int newflag) } else if (HAS_PERM(PERM_LOGINOK) && yank_flag == 0) { if (fav_add_line() == NULL) { - vmsg("·s¼W¥¢±Ñ¡A¤À¹j½u/Á`³Ì·R ¼Æ¶q¹F³Ì¤jÈ¡C"); + vmsg(SHM->i18nstr[cuser.language][515]); break; } /* done move if it's the first item. */ @@ -886,7 +844,7 @@ choose_board(int newflag) ptr = &nbrd[num]; if (yank_flag == 0) { if (ptr->myattr & NBRD_FAV) { - if (getans("§A½T©w§R°£¶Ü? [N/y]") != 'y') + if (getans(SHM->i18nstr[cuser.language][516]) != 'y') break; fav_remove_item(ptr->bid, get_fav_type(ptr)); ptr->myattr &= ~NBRD_FAV; @@ -899,7 +857,7 @@ choose_board(int newflag) } else { if (fav_add_board(ptr->bid) == NULL) - vmsg("§Aªº³Ì·R¤Ó¦h¤F°Õ ¯uªá¤ß"); + vmsg(SHM->i18nstr[cuser.language][517]); else ptr->myattr |= NBRD_FAV; } @@ -921,14 +879,14 @@ choose_board(int newflag) if (HAS_PERM(PERM_LOGINOK) && yank_flag == 0) { fav_type_t *ft; if (fav_stack_full()){ - vmsg("¥Ø¿ý¤w¹F³Ì¤j¼h¼Æ!!"); + vmsg(SHM->i18nstr[cuser.language][518]); break; } if ((ft = fav_add_folder()) == NULL) { - vmsg("·s¼W¥¢±Ñ¡A¥Ø¿ý/Á`³Ì·R ¼Æ¶q¹F³Ì¤jÈ¡C"); + vmsg(SHM->i18nstr[cuser.language][519]); break; } - fav_set_folder_title(ft, "·sªº¥Ø¿ý"); + fav_set_folder_title(ft, SHM->i18nstr[cuser.language][520]); /* don't move if it's the first item */ if (get_fav_type(&nbrd[0]) != 0) move_in_current_folder(brdnum, num); @@ -940,7 +898,7 @@ choose_board(int newflag) if (HAS_PERM(PERM_LOGINOK) && nbrd[num].myattr & NBRD_FOLDER) { fav_type_t *ft = getfolder(nbrd[num].bid); strlcpy(buf, get_item_title(ft), sizeof(buf)); - getdata_buf(b_lines - 1, 0, "½Ð¿é¤JªO¦W:", buf, 65, DOECHO); + getdata_buf(b_lines - 1, 0, SHM->i18nstr[cuser.language][521], buf, 65, DOECHO); fav_set_folder_title(ft, buf); brdnum = -1; } @@ -949,14 +907,14 @@ choose_board(int newflag) if (HAS_PERM(PERM_LOGINOK)) { char c, fname[80]; if (!current_fav_at_root()) { - vmsg("½Ð¨ì§Úªº³Ì·R³Ì¤W¼h°õ¦æ¥»¥\\¯à"); + vmsg(SHM->i18nstr[cuser.language][522]); break; } - c = getans("½Ð¿ï¾Ü 1)²M°£¤£¥i¨£¬ÝªO 2)³Æ¥÷§Úªº³Ì·R 3)¨ú¦^³Ì·R³Æ¥÷ [Q]"); + c = getans(SHM->i18nstr[cuser.language][523]); if(!c) break; - if(getans("½T©w¶Ü [y/N] ") != 'y') + if(getans(SHM->i18nstr[cuser.language][524]) != 'y') break; switch(c){ case '1': @@ -972,7 +930,7 @@ choose_board(int newflag) setuserfile(fname, FAV4); sprintf(buf, "%s.bak", fname); if (!dashf(buf)){ - vmsg("§A¨S¦³³Æ¥÷§Aªº³Ì·R³á"); + vmsg(SHM->i18nstr[cuser.language][525]); break; } Copy(buf, fname); @@ -985,22 +943,22 @@ choose_board(int newflag) break; case 'z': if (HAS_PERM(PERM_LOGINOK)) - vmsg("¼K¼K ³oÓ¥\\¯à¤w¸g³Q§Úªº³Ì·R¨ú¥N±¼¤F³á!"); + vmsg(SHM->i18nstr[cuser.language][526]); break; case 'Z': if (HAS_PERM(PERM_LOGINOK)) { char genbuf[256]; - sprintf(genbuf, "½T©wn %sq¾\\ ·s¬ÝªO? [N/y] ", cuser.uflag2 & FAVNEW_FLAG ? "¨ú®ø" : ""); + sprintf(genbuf, SHM->i18nstr[cuser.language][527], cuser.uflag2 & FAVNEW_FLAG ? SHM->i18nstr[cuser.language][528] : ""); if (getans(genbuf) != 'y') break; cuser.uflag2 ^= FAVNEW_FLAG; if (cuser.uflag2 & FAVNEW_FLAG) { subscribe_newfav(); - vmsg("¤Á´«¬°q¾\\·s¬ÝªO¼Ò¦¡"); + vmsg(SHM->i18nstr[cuser.language][529]); } else - vmsg("¨ú®øq¾\\·s¬ÝªO"); + vmsg(SHM->i18nstr[cuser.language][530]); } break; diff --git a/mbbsd/mail.c b/mbbsd/mail.c index 6c0ae7c7..ef017d31 100644 --- a/mbbsd/mail.c +++ b/mbbsd/mail.c @@ -1089,7 +1089,7 @@ static char *mail_help[] = { static int m_help() { - show_help(mail_help); + //i18n remark show_help(mail_help); return FULLUPDATE; } diff --git a/mbbsd/more.c b/mbbsd/more.c index 25b3d8dc..69a56bef 100644 --- a/mbbsd/more.c +++ b/mbbsd/more.c @@ -473,7 +473,7 @@ more(char *fpath, int promptend) case 'H': case '?': /* Kaede Buggy ... */ - show_help(more_help); + //i18n remark show_help(more_help); if (pageno) pageno--; lino = line = 0; diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index e088b116..6fdc730b 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -331,19 +331,19 @@ gettime(int line, time_t dt, char*head) move(line, 0); prints("%s",head); i=strlen(head); do { - getdata_buf(line, i, " ¦è¤¸¦~:", yn, 5, LCECHO); + getdata_buf(line, i, SHM->i18nstr[cuser.language][1878], yn, 5, LCECHO); } while ((endtime.tm_year = atoi(yn) - 1900) < 0 || endtime.tm_year > 200); snprintf(yn, sizeof(yn), "%d", ptime->tm_mon + 1); do { - getdata_buf(line, i+15, "¤ë:", yn, 3, LCECHO); + getdata_buf(line, i+15, SHM->i18nstr[cuser.language][1879], yn, 3, LCECHO); } while ((endtime.tm_mon = atoi(yn) - 1) < 0 || endtime.tm_mon > 11); snprintf(yn, sizeof(yn), "%d", ptime->tm_mday); do { - getdata_buf(line, i+24, "¤é:", yn, 3, LCECHO); + getdata_buf(line, i+24, SHM->i18nstr[cuser.language][1880], yn, 3, LCECHO); } while ((endtime.tm_mday = atoi(yn)) < 1 || endtime.tm_mday > 31); snprintf(yn, sizeof(yn), "%d", ptime->tm_hour); do { - getdata_buf(line, i+33, "®É(0-23):", yn, 3, LCECHO); + getdata_buf(line, i+33, SHM->i18nstr[cuser.language][1881], yn, 3, LCECHO); } while ((endtime.tm_hour = atoi(yn)) < 0 || endtime.tm_hour > 23); return mktime(&endtime); } @@ -388,7 +388,7 @@ capture_screen() FILE *fp; int i; - getdata(b_lines - 2, 0, "§â³oÓµe±¦¬¤J¨ì¼È¦sÀÉ¡H[y/N] ", + getdata(b_lines - 2, 0, SHM->i18nstr[cuser.language][1882], fname, 4, LCECHO); if (fname[0] != 'y') return; @@ -406,9 +406,7 @@ pressanykey() { int ch; - outmsg("\033[37;45;1m " - "¡´ ½Ð«ö \033[33m(Space/Return)\033[37m Ä~Äò ¡´" - " \033[33m(^T)\033[37m ¦s¼È¦sÀÉ \033[m"); + outmsg(SHM->i18nstr[cuser.language][1883]); do { ch = igetkey(); @@ -437,11 +435,9 @@ vmsg(const char *fmt,...) clrtoeol(); if (*msg) - prints("\033[1;36;44m ¡» %-55.54s \033[33;46m \033[200m\033[1431m\033[506m[½Ð«ö¥ô·NÁäÄ~Äò]\033[201m \033[m", msg); + prints(SHM->i18nstr[cuser.language][1884], msg); else - outs("\033[46;1m \033[37m" - "\033[200m\033[1431m\033[506m¡¼ ½Ð«ö \033[33m(Space/Return)\033[37m Ä~Äò ¡¼\033[201m" - " \033[m"); + outs(SHM->i18nstr[cuser.language][1885]); do { ch = igetkey(); @@ -475,7 +471,7 @@ search_num(int ch, int max) int x, y; char genbuf[10]; - outmsg("\033[7m ¸õ¦Ü²Ä´X¶µ¡G\033[m"); + outmsg(SHM->i18nstr[cuser.language][1886]); outc(ch); genbuf[0] = ch; getyx(&y, &x); @@ -524,7 +520,7 @@ void stand_title(char *title) { clear(); - prints("\033[1;37;46m¡i %s ¡j\033[m\n", title); + prints(SHM->i18nstr[cuser.language][1887], title); } void @@ -592,19 +588,20 @@ int log_file(char *fn, char *buf, int ifcreate) } void -show_help(char *helptext[]) +show_help(char **helptext, int start, int num) { char *str; int i; clear(); - for (i = 0; (str = helptext[i]); i++) { - if (*str == '\0') - prints("\033[1m¡i %s ¡j\033[0m\n", str + 1); - else if (*str == '\01') - prints("\n\033[36m¡i %s ¡j\033[m\n", str + 1); - else - prints(" %s\n", str); + for (i = 0; i < num, start + i < MAX_STRING; i++) { + str = helptext[start + i]; + if (*str == '\0') + prints(SHM->i18nstr[cuser.language][1888], str + 1); + else if (*str == '\01') + prints(SHM->i18nstr[cuser.language][1889], str + 1); + else + prints(" %s\n", str); } pressanykey(); } |