--- pine/folder.c.orig Fri Feb 5 05:47:33 1999 +++ pine/folder.c Wed Feb 24 02:50:43 1999 @@ -58,10 +58,10 @@ #include "headers.h" -#define CLICKHERE "[ Select Here to See Expanded List ]" -#define CLICKHERETOO "[ ** Empty List ** Select Here to Try Re-Expanding ]" +#define CLICKHERE "[ 選這裡以檢視展開的列表 ]" +#define CLICKHERETOO "[ ** 空的列表 ** 選這裡來重新展開 ]" #define CLICKHERETOONEWS \ - "[ ** Empty List ** Use \"A Subscribe\" to subscribe to a newsgroup ]" + "[ ** 空的列表 ** 使用 \"A Subscribe\" 來訂閱一個新聞組群 ]" #define ALL_FOUND(X) (((X)->dir->status & CNTXT_NOFIND) == 0 && \ ((X)->dir->status & CNTXT_PARTFIND) == 0) #define FLDR_NAME(X) ((X) ? ((X)->nickname ? (X)->nickname : (X)->name) :"") @@ -70,13 +70,13 @@ FOLDERS((S)->text.handles->h.f.context)) \ : NULL) #define SUBSCRIBE_PMT \ - "Enter newsgroup name (or partial name to get a list): " -#define LISTMODE_GRIPE "Use \"X\" to mark selections in list mode" -#define SEL_ALTER_PMT "ALTER folder selection : " -#define SEL_TEXT_PMT "Select by folder Name or Contents ? " -#define SEL_PROP_PMT "Select by which folder property ? " + "輸入新聞組群名稱(或部份名稱以取得列表):" +#define LISTMODE_GRIPE "以 \"X\" 來在列表模式中標示選擇" +#define SEL_ALTER_PMT "更改資料匣的選擇:" +#define SEL_TEXT_PMT "根據資料匣名稱或內容選擇?" +#define SEL_PROP_PMT "根據哪一個資料匣性質?" #define DIR_FOLD_PMT \ - "Folder by the same name *MAY* get deleted as well. Continue" + "同名稱的資料匣 *可能* 被刪除。繼續" #define mail_list(S, R, N) mail_list_internal(S, R, N) @@ -313,21 +313,21 @@ /* * Various screen keymenu/command binding s. */ -#define PREVC_MENU {"P", "PrevCltn", {MC_PREVITEM, 1, {'p'}}, KS_NONE} -#define NEXTC_MENU {"N", "NextCltn", {MC_NEXTITEM, 2, {'n',TAB}}, KS_NONE} -#define DELC_MENU {"D", "Del Cltn", {MC_DELETE,2,{'d',KEY_DEL}}, KS_NONE} -#define PREVF_MENU {"P", "PrevFldr", {MC_PREV_HANDLE, 3, \ +#define PREVC_MENU {"P", "前一總集", {MC_PREVITEM, 1, {'p'}}, KS_NONE} +#define NEXTC_MENU {"N", "次一總集", {MC_NEXTITEM, 2, {'n',TAB}}, KS_NONE} +#define DELC_MENU {"D", "刪除總集", {MC_DELETE,2,{'d',KEY_DEL}}, KS_NONE} +#define PREVF_MENU {"P", "前一資料匣", {MC_PREV_HANDLE, 3, \ {'p', ctrl('B'), KEY_LEFT}}, KS_NONE} -#define NEXTF_MENU {"N", "NextFldr", {MC_NEXT_HANDLE, 4, \ +#define NEXTF_MENU {"N", "次一資料匣", {MC_NEXT_HANDLE, 4, \ {'n', ctrl('F'), TAB, KEY_RIGHT}}, \ KS_NONE} -#define CIND_MENU {"I", "CurIndex", {MC_INDEX,1,{'i'}}, KS_FLDRINDEX} +#define CIND_MENU {"I", "索引", {MC_INDEX,1,{'i'}}, KS_FLDRINDEX} static struct key context_mgr_keys[] = {HELP_MENU, OTHER_MENU, - {"<", "Main Menu", {MC_MAIN,3,{'m','<',','}}, KS_EXITMODE}, - {">", "[View Cltn]", + {"<", "主選單", {MC_MAIN,3,{'m','<',','}}, KS_EXITMODE}, + {">", "[檢視總集]", {MC_CHOICE,5,{'v','>','.',ctrl('M'),ctrl('J')}}, KS_NONE}, PREVC_MENU, NEXTC_MENU, @@ -359,15 +359,15 @@ static struct key context_cfg_keys[] = {HELP_MENU, OTHER_MENU, - {"E", "Exit Setup", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, - {"C", "[Change]", {MC_EDIT,3,{'c',ctrl('M'),ctrl('J')}}, KS_NONE}, + {"E", "離開設定", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, + {"C", "[修改]", {MC_EDIT,3,{'c',ctrl('M'),ctrl('J')}}, KS_NONE}, PREVC_MENU, NEXTC_MENU, PREVPAGE_MENU, NEXTPAGE_MENU, - {"A", "Add Cltn", {MC_ADD,1,{'a'}}, KS_NONE}, + {"A", "新增總集", {MC_ADD,1,{'a'}}, KS_NONE}, DELC_MENU, - {"$", "Shuffle", {MC_SHUFFLE,1,{'$'}},KS_NONE}, + {"$", "重整", {MC_SHUFFLE,1,{'$'}},KS_NONE}, WHEREIS_MENU, HELP_MENU, @@ -386,9 +386,9 @@ static struct key context_select_keys[] = {HELP_MENU, - {"E", "ExitSelect", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, + {"E", "離開", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, NULL_MENU, - {">", "[View Cltn]", + {">", "[檢視總集]", {MC_CHOICE, 5, {'v','>','.',ctrl('M'),ctrl('J')}}, KS_NONE}, PREVC_MENU, NEXTC_MENU, @@ -402,9 +402,9 @@ static struct key context_fcc_keys[] = {HELP_MENU, - {"E", "ExitSelect", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, + {"E", "離開", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, NULL_MENU, - {">", "[View Cltn]", + {">", "[檢視總集]", {MC_CHOICE, 5, {'v','>','.',ctrl('M'),ctrl('J')}}, KS_NONE}, PREVC_MENU, NEXTC_MENU, @@ -426,23 +426,23 @@ NEXTF_MENU, PREVPAGE_MENU, NEXTPAGE_MENU, - {"A","Add",{MC_ADDFLDR,1,{'a'}},KS_NONE}, + {"A","新增",{MC_ADDFLDR,1,{'a'}},KS_NONE}, DELETE_MENU, - {"R","Rename",{MC_RENAMEFLDR,1,{'r'}}, KS_NONE}, + {"R","更名",{MC_RENAMEFLDR,1,{'r'}}, KS_NONE}, WHEREIS_MENU, HELP_MENU, OTHER_MENU, QUIT_MENU, MAIN_MENU, - {"V", "[View Fldr]", {MC_OPENFLDR}, KS_NONE}, + {"V", "[檢視檔案匣]", {MC_OPENFLDR}, KS_NONE}, GOTO_MENU, CIND_MENU, COMPOSE_MENU, - {"%", "Print", {MC_PRINTFLDR,1,{'%'}}, KS_PRINT}, - {"Z", "ZoomMode", {MC_ZOOM,1,{'z'}}, KS_NONE}, - {";","Select",{MC_SELECT,1,{';'}},KS_SELECT}, - {":","SelectCur",{MC_SELCUR,1,{':'}},KS_SELECT}}; + {"%", "列印", {MC_PRINTFLDR,1,{'%'}}, KS_PRINT}, + {"Z", "縮放模式", {MC_ZOOM,1,{'z'}}, KS_NONE}, + {";","選擇",{MC_SELECT,1,{';'}},KS_SELECT}, + {":","選擇目前的",{MC_SELCUR,1,{':'}},KS_SELECT}}; INST_KEY_MENU(folder_km, folder_keys); #define KM_COL_KEY 2 #define KM_SEL_KEY 3 @@ -455,7 +455,7 @@ static struct key folder_sel_keys[] = {HELP_MENU, - {"E", "ExitSelect", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, + {"E", "離開", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, NULL_MENU, {NULL, NULL, {MC_CHOICE,3,{0,ctrl('M'),ctrl('J')}}, KS_NONE}, @@ -474,14 +474,14 @@ static struct key folder_sub_keys[] = {HELP_MENU, - {"S", "Subscribe", {MC_CHOICE,1,{'s'}}, KS_NONE}, - {"E", "ExitSubscb", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, - {NULL, "[Select]", {MC_CHOICE,3,{'s',ctrl('M'),ctrl('J')}}, KS_NONE}, + {"S", "訂閱\", {MC_CHOICE,1,{'s'}}, KS_NONE}, + {"E", "離開", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, + {NULL, "[選擇]", {MC_CHOICE,3,{'s',ctrl('M'),ctrl('J')}}, KS_NONE}, PREVF_MENU, NEXTF_MENU, PREVPAGE_MENU, NEXTPAGE_MENU, - {"L", "List Mode", {MC_LISTMODE, 1, {'l'}}, KS_NONE}, + {"L", "列表模式", {MC_LISTMODE, 1, {'l'}}, KS_NONE}, NULL_MENU, NULL_MENU, WHEREIS_MENU}; @@ -493,8 +493,8 @@ static struct key folder_post_keys[] = {HELP_MENU, NULL_MENU, - {"E", "ExitSelect", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, - {"S", "[Select]", {MC_CHOICE, 3, {'s',ctrl('M'),ctrl('J')}}, KS_NONE}, + {"E", "離開", {MC_EXIT,1,{'e'}}, KS_EXITMODE}, + {"S", "[選擇]", {MC_CHOICE, 3, {'s',ctrl('M'),ctrl('J')}}, KS_NONE}, PREVF_MENU, NEXTF_MENU, PREVPAGE_MENU, @@ -537,7 +537,7 @@ fs.agg_ops = F_ON(F_ENABLE_AGG_OPS, ps_global) != 0; fs.relative_path = 1; fs.f.valid = fl_val_gen; - fs.f.title.bar = "FOLDER LIST"; + fs.f.title.bar = "信件匣列表"; fs.f.title.style = FolderName; fs.f.help.text = h_folder_maint; fs.f.help.title = "HELP FOR FOLDERS"; @@ -621,12 +621,12 @@ mailcap_free(); /* free resources we won't be using for a while */ memset(&css, 0, sizeof(CONT_SCR_S)); - css.title = "SETUP COLLECTION LIST"; + css.title = "設定總集列表"; css.print_string = "contexts "; css.start = ps->context_current; css.contexts = &ps_global->context_list; css.help.text = h_collection_maint; - css.help.title = "HELP FOR SETUP COLLECTION"; + css.help.title = "設定總集的輔助說明"; css.keymenu = &c_cfg_km; css.edit = 1; @@ -669,10 +669,10 @@ fs.context = *cntxtp; fs.combined_view = !sublist && F_ON(F_CMBND_FOLDER_DISP, ps_global) != 0; fs.f.valid = fl_val_gen; - fs.f.title.bar = "GOTO: SELECT FOLDER"; + fs.f.title.bar = "前往:選擇資料匣"; fs.f.title.style = FolderName; fs.f.help.text = h_folder_open; - fs.f.help.title = "HELP FOR OPENING FOLDERS"; + fs.f.help.title = "開啟資料匣的輔助說明"; fs.km = &folder_sel_km; /* If we were provided a string, @@ -681,7 +681,7 @@ if(sublist && *folder && context_isambig(folder)){ if((*cntxtp)->use & CNTXT_INCMNG){ q_status_message(SM_ORDER, 0, 3, - "All folders displayed for Incoming Collection"); + "所有的資料匣被顯示為來源總集"); } else{ folder_sublist_context(folder, *cntxtp, &fake_context, @@ -732,10 +732,10 @@ fs.context = *cntxtp; fs.combined_view = F_ON(F_CMBND_FOLDER_DISP, ps_global) != 0; fs.f.valid = fl_val_gen; - fs.f.title.bar = "SAVE: SELECT FOLDER"; + fs.f.title.bar = "存檔:選擇資料匣"; fs.f.title.style = MessageNumber; fs.f.help.text = h_folder_save; - fs.f.help.title = "HELP FOR SAVING MESSAGES TO FOLDERS"; + fs.f.help.title = "將信件存入資料匣的輔助說明"; fs.km = &folder_sel_km; /* If we were provided a string, @@ -744,7 +744,7 @@ if(sublist && *folder && context_isambig(folder)){ if((*cntxtp)->use & CNTXT_INCMNG){ q_status_message(SM_ORDER, 0, 3, - "All folders displayed for Incoming Collection"); + "所有的資料匣被顯示為來源總集"); } else{ folder_sublist_context(folder, *cntxtp, &fake_context, @@ -921,7 +921,7 @@ /* leave (*new_dir)->ref == NULL */ } - sprintf(tmp_20k_buf, "List of folders matching \"%s*\"", folder); + sprintf(tmp_20k_buf, "符合 \"%s*\" 的資料匣列表", folder); (*new_dir)->desc = cpystr(tmp_20k_buf); } @@ -1025,12 +1025,12 @@ CONT_SCR_S css; memset(&css, 0, sizeof(CONT_SCR_S)); - css.title = "COLLECTION LIST"; + css.title = "總集列表"; css.print_string = "contexts "; css.start = start; css.contexts = &ps_global->context_list; css.help.text = h_collection_screen; - css.help.title = "HELP FOR COLLECTION LIST"; + css.help.title = "總集列表的輔助說明"; css.keymenu = km; css.edit = edit_config; @@ -1102,7 +1102,7 @@ pbuf.browse_help = h_composer_browse; pbuf.attach_help = h_composer_ctrl_j; pbuf.composer_help = h_composer; - sprintf(tmp, "FOLDER COLLECTION %s", func); + sprintf(tmp, "資料匣總集 %s", func); pbuf.pine_anchor = set_titlebar(tmp, ps_global->mail_stream, ps_global->context_current, ps_global->cur_folder,ps_global->msgmap, @@ -1347,10 +1347,10 @@ else exists = (i & FEX_ISDIR); - sprintf(prompt, "Exit%s" , + sprintf(prompt, "離開%s" , exists - ? " and save changes" - : ", saving changes and creating Path"); + ? " 並存檔" + : ",存檔並建立路徑"); if(want_to(prompt, 'y', 0, NO_HELP, WT_NORM) == 'y'){ if(!exists && !mail_create(NULL, tmp)){ flush_status_messages(1); /* mail_create gripes */ @@ -1382,7 +1382,7 @@ char *rstr = NULL; void (*redraw)() = ps_global->redrawer; #define CCA_PROMPT \ - "Cancel Add (answering \"Yes\" will abandon any changes made) " + "取消新增 (回答 \"Yes\" 將放棄先前做過的任何改變) " ps_global->redrawer = redraw_pico; fix_windsize(ps_global); @@ -1505,7 +1505,7 @@ FSTATE_S *fs; { if(f->subscribed){ - q_status_message1(SM_ORDER, 0, 4, "Already subscribed to \"%s\"", + q_status_message1(SM_ORDER, 0, 4, "已訂閱\至 \"%s\"", FLDR_NAME(f)); return(0); } @@ -1549,7 +1549,7 @@ } else{ q_status_message(SM_ORDER | SM_DING, 3, 3, - "Formatting Error: Can't create space for list"); + "格式化錯誤:無法為列表建立空間"); return(NULL); } @@ -1563,7 +1563,7 @@ memset(&sargs, 0, sizeof(SCROLL_S)); sargs.text.text = so_text(screen_text); sargs.text.src = CharStar; - sargs.text.desc = "folder list"; + sargs.text.desc = "信件匣列表"; if(sargs.text.handles = folder_list_handle(fs, handles)) sargs.start.on = Handle; @@ -1875,7 +1875,7 @@ else if(fp->fs->combined_view && (F_ON(F_CMBND_SUBDIR_DISP, ps_global) || !c_list->dir->prev)){ - static char *emptiness = "[No Folders in Collection]"; + static char *emptiness = "[總集中沒有資料匣]"; gf_puts(folder_list_center_space(emptiness, cols), pc); len = folder_list_write(pc, c_list, -1, emptiness, @@ -1885,7 +1885,7 @@ else if(fp->fs->combined_view && (F_ON(F_CMBND_SUBDIR_DISP, ps_global) || !c_list->dir->prev)){ - static char *unexpanded = "[Select Here to See Expanded List]"; + static char *unexpanded = "[選這裡以檢視展開後的列表]"; gf_puts(folder_list_center_space(unexpanded, cols), pc); len = folder_list_write(pc, c_list, -1, unexpanded, @@ -2092,11 +2092,11 @@ q_status_message(SM_ORDER, 0, 1, LISTMODE_GRIPE); } else - q_status_message(SM_ORDER, 0, 4, "Already in List Mode"); + q_status_message(SM_ORDER, 0, 4, "已經處於列表模式中"); } else q_status_message(SM_ORDER, 0, 4, - "No Folders! Can't enter List Mode"); + "沒有資料匣!無法進入列表模式"); break; @@ -2122,7 +2122,7 @@ sparms->text.handles->h.f.index); else q_status_message(SM_ORDER, 0, 4, - "No Folders! Nothing to View"); + "沒有資料匣!沒有可供檢視的項目"); break; @@ -2206,7 +2206,7 @@ } else q_status_message(SM_ORDER | SM_DING, 0, 4, - "Empty folder collection. No folder to rename!"); + "空的資料匣總集。沒有可供更名的資料匣!"); break; @@ -2216,7 +2216,7 @@ if(!(sparms->text.handles && folder_total(FOLDERS(sparms->text.handles->h.f.context)))){ q_status_message(SM_ORDER | SM_DING, 0, 4, - "Empty folder collection. No folder to delete!"); + "空的資料匣總集。沒有可供刪除的資料匣!"); } else if(delete_folder(sparms->text.handles->h.f.context, sparms->text.handles->h.f.index)){ @@ -2336,7 +2336,7 @@ } else q_status_message(SM_ORDER | SM_DING, 0, 4, - "Empty folder collection. No folder to select!"); + "空的資料匣總集。沒有可供選擇的資料匣!"); break; @@ -2352,11 +2352,11 @@ if(sparms->text.handles->h.f.context->use & CNTXT_ZOOM){ sparms->text.handles->h.f.context->use &= ~CNTXT_ZOOM; q_status_message(SM_ORDER, 0, 3, - "Folder List Zoom mode is now off"); + "資料匣列表縮放模式目前為關閉狀態"); } else{ q_status_message1(SM_ORDER, 0, 3, - "In Zoomed list of %s folders. Use \"Z\" to restore regular list", + "在 %s 個資料匣縮放的列表中。使用 \"Z\" 來回復正常列表", int2string(n)); sparms->text.handles->h.f.context->use |= CNTXT_ZOOM; } @@ -2376,10 +2376,10 @@ } else q_status_message(SM_ORDER, 0, 3, - "No selected folders to Zoom on"); + "尚未選擇供放大的資料匣。"); } else - q_status_message(SM_ORDER, 0, 4, "No Folders to Zoom on!"); + q_status_message(SM_ORDER, 0, 4, "沒有可供放大的資料匣!"); break; @@ -2469,7 +2469,7 @@ empty++; if(empty) - q_status_message(SM_ORDER | SM_DING, 3, 3, "Empty folder list!"); + q_status_message(SM_ORDER | SM_DING, 3, 3, "空的資料匣列表!"); return(rv); } @@ -2510,14 +2510,14 @@ ? sparms->text.handles->h.f.context->dir->prev : FPROC(sparms)->fs->context->dir->prev){ sparms->keys.menu->keys[KM_COL_KEY].bind.ch[0] = 'e'; - sparms->keys.menu->keys[KM_COL_KEY].label = "ParentDir"; + sparms->keys.menu->keys[KM_COL_KEY].label = "上層目錄"; sparms->keys.menu->keys[KM_COL_KEY].bind.cmd = MC_PARENT; } else if((FPROC(sparms)->fs->context->next || FPROC(sparms)->fs->context->prev) && !FPROC(sparms)->fs->combined_view){ sparms->keys.menu->keys[KM_COL_KEY].bind.ch[0] = 'e'; - sparms->keys.menu->keys[KM_COL_KEY].label = "ClctnList"; + sparms->keys.menu->keys[KM_COL_KEY].label = "總集列表"; sparms->keys.menu->keys[KM_COL_KEY].bind.cmd = MC_EXIT; } else{ @@ -2529,7 +2529,7 @@ sparms->keys.menu->keys[KM_MAIN_KEY].bind.cmd = MC_NONE; sparms->keys.menu->keys[KM_MAIN_KEY].bind.nch = 0; - sparms->keys.menu->keys[KM_COL_KEY].label = "Main Menu"; + sparms->keys.menu->keys[KM_COL_KEY].label = "主選單"; sparms->keys.menu->keys[KM_COL_KEY].bind.cmd = MC_MAIN; sparms->keys.menu->keys[KM_COL_KEY].bind.ch[0] = 'm'; } @@ -2545,7 +2545,7 @@ FOLDERS(sparms->text.handles->h.f.context)))){ if(fp->isdir){ if(fp->isfolder){ - sparms->keys.menu->keys[KM_SEL_KEY].label = "View Dir"; + sparms->keys.menu->keys[KM_SEL_KEY].label = "檢視目錄"; menu_clear_binding(sparms->keys.menu, 'v'); menu_clear_binding(sparms->keys.menu, ctrl('M')); menu_clear_binding(sparms->keys.menu, ctrl('J')); @@ -2555,7 +2555,7 @@ setbitn(KM_ALTVIEW_KEY, sparms->keys.bitmap); } else{ - sparms->keys.menu->keys[KM_SEL_KEY].label = "[View Dir]"; + sparms->keys.menu->keys[KM_SEL_KEY].label = "[檢視目錄]"; menu_add_binding(sparms->keys.menu, 'v', MC_CHOICE); menu_add_binding(sparms->keys.menu, ctrl('M'), MC_CHOICE); menu_add_binding(sparms->keys.menu, ctrl('J'), MC_CHOICE); @@ -2563,7 +2563,7 @@ } } else{ - sparms->keys.menu->keys[KM_SEL_KEY].label = "[View Fldr]"; + sparms->keys.menu->keys[KM_SEL_KEY].label = "[檢視資料匣]"; menu_add_binding(sparms->keys.menu, 'v', MC_CHOICE); menu_add_binding(sparms->keys.menu, ctrl('M'), MC_CHOICE); menu_add_binding(sparms->keys.menu, ctrl('J'), MC_CHOICE); @@ -2573,7 +2573,7 @@ else if(FPROC(sparms)->fs->combined_view && sparms->text.handles && sparms->text.handles->h.f.context && !sparms->text.handles->h.f.context->dir->prev){ - sparms->keys.menu->keys[KM_SEL_KEY].label = "[View Cltn]"; + sparms->keys.menu->keys[KM_SEL_KEY].label = "[檢視總集]"; menu_add_binding(sparms->keys.menu, 'v', MC_CHOICE); menu_add_binding(sparms->keys.menu, ctrl('M'), MC_CHOICE); menu_add_binding(sparms->keys.menu, ctrl('J'), MC_CHOICE); @@ -2616,7 +2623,7 @@ ? sparms->text.handles->h.f.context->dir->prev : FPROC(sparms)->fs->context->dir->prev){ sparms->keys.menu->keys[FC_COL_KEY].name = "<"; - sparms->keys.menu->keys[FC_COL_KEY].label = "ParentDir"; + sparms->keys.menu->keys[FC_COL_KEY].label = "上層目錄"; sparms->keys.menu->keys[FC_COL_KEY].bind.cmd = MC_PARENT; sparms->keys.menu->keys[FC_COL_KEY].bind.nch = 2; sparms->keys.menu->keys[FC_COL_KEY].bind.ch[0] = '<'; @@ -2627,7 +2634,7 @@ || FPROC(sparms)->fs->context->prev) && !FPROC(sparms)->fs->combined_view){ sparms->keys.menu->keys[FC_COL_KEY].name = "<"; - sparms->keys.menu->keys[FC_COL_KEY].label = "ClctnList"; + sparms->keys.menu->keys[FC_COL_KEY].label = "總集列表"; sparms->keys.menu->keys[FC_COL_KEY].bind.cmd = MC_COLLECTIONS; sparms->keys.menu->keys[FC_COL_KEY].bind.nch = 2; sparms->keys.menu->keys[FC_COL_KEY].bind.ch[0] = '<'; @@ -2639,7 +2646,7 @@ * turn off "ExitSelect" in first slot */ sparms->keys.menu->keys[FC_COL_KEY].name = "E"; - sparms->keys.menu->keys[FC_COL_KEY].label = "ExitSelect"; + sparms->keys.menu->keys[FC_COL_KEY].label = "離開"; sparms->keys.menu->keys[FC_COL_KEY].bind.cmd = MC_EXIT; sparms->keys.menu->keys[FC_COL_KEY].bind.nch = 1; sparms->keys.menu->keys[FC_COL_KEY].bind.ch[0] = 'e'; @@ -2651,7 +2658,7 @@ FOLDERS(sparms->text.handles->h.f.context))) && fp->isdir){ sparms->keys.menu->keys[FC_SEL_KEY].name = ">"; - sparms->keys.menu->keys[FC_SEL_KEY].label = "[View Dir]"; + sparms->keys.menu->keys[FC_SEL_KEY].label = "[檢視目錄]"; menu_clear_binding(sparms->keys.menu, 's'); menu_add_binding(sparms->keys.menu, 'v', MC_CHOICE); menu_add_binding(sparms->keys.menu, '>', MC_CHOICE); @@ -2659,7 +2666,7 @@ } else{ sparms->keys.menu->keys[FC_SEL_KEY].name = "S"; - sparms->keys.menu->keys[FC_SEL_KEY].label = "[Select]"; + sparms->keys.menu->keys[FC_SEL_KEY].label = "[選擇]"; menu_clear_binding(sparms->keys.menu, 'v'); menu_clear_binding(sparms->keys.menu, '>'); menu_clear_binding(sparms->keys.menu, '.'); @@ -2695,14 +2702,14 @@ if(FPROC(sparms)->fs->list_cntxt){ clrbitn(SB_LIST_KEY, sparms->keys.bitmap); sparms->keys.menu->keys[SB_SEL_KEY].name = "X"; - sparms->keys.menu->keys[SB_SEL_KEY].label = "[Set/Unset]"; + sparms->keys.menu->keys[SB_SEL_KEY].label = "[設定/取消設定]"; sparms->keys.menu->keys[SB_SEL_KEY].bind.cmd = MC_SELCUR; sparms->keys.menu->keys[SB_SEL_KEY].bind.ch[0] = 'x'; } else{ clrbitn(SB_SUB_KEY, sparms->keys.bitmap); sparms->keys.menu->keys[SB_SEL_KEY].name = "S"; - sparms->keys.menu->keys[SB_SEL_KEY].label = "[Subscribe]"; + sparms->keys.menu->keys[SB_SEL_KEY].label = "[訂閱\]"; sparms->keys.menu->keys[SB_SEL_KEY].bind.cmd = MC_CHOICE; sparms->keys.menu->keys[SB_SEL_KEY].bind.ch[0] = 's'; } @@ -2778,7 +2785,7 @@ default : q_status_message(SM_ORDER | SM_DING, 3, 3, - "Unsupported Select option"); + "未支援的選項"); return(0); } } @@ -2792,7 +2799,7 @@ */ switch(q){ case 'x': /* cancel */ - cmd_cancelled("Select command"); + cmd_cancelled("選取命令"); return(0); case 'c' : /* toggle current's selected state */ @@ -2804,10 +2811,10 @@ for(total = i = 0; i < n; i++) folder_entry(i, FOLDERS(context))->selected = old_tot == 0; - q_status_message4(SM_ORDER, 0, 2, "%s%s folder%s %sselected", - old_tot ? "" : "All ", + q_status_message3(SM_ORDER, 0, 2, "%s%s 個資料匣已被%s選擇", + old_tot ? "" : "全部 ", comatose(old_tot ? old_tot : n), - plural(old_tot ? old_tot : n), old_tot ? "UN" : ""); + old_tot ? "取消" : ""); return(1); case 't' : /* Text */ @@ -2824,7 +2831,7 @@ default : q_status_message(SM_ORDER | SM_DING, 3, 3, - "Unsupported Select option"); + "未支援的選項"); return(0); } @@ -2852,34 +2859,30 @@ if(!(diff = (total = selected_folders(context)) - old_tot)){ if(narrow) - q_status_message4(SM_ORDER, 0, 2, - "%s. %s folder%s remain%s selected.", - j ? "No change resulted" - : "No messages in intersection", - comatose(old_tot), plural(old_tot), - (old_tot == 1L) ? "s" : ""); + q_status_message2(SM_ORDER, 0, 2, + "%s。 仍有 %s 個資料匣被選擇。", + j ? "沒有造成改變" + : "交點中沒有信件", + comatose(old_tot)); else if(old_tot && j) q_status_message(SM_ORDER, 0, 2, - "No change resulted. Matching folders already selected."); + "沒有造成改變。符合的資料匣已經被選擇了。"); else q_status_message1(SM_ORDER | SM_DING, 0, 2, - "Select failed! No %sfolders selected.", - old_tot ? "additional " : ""); + "選擇失敗!沒有%s資料匣被選擇。", + old_tot ? "額外的" : ""); } else if(old_tot){ sprintf(tmp_20k_buf, - "Select matched %ld folder%s. %s %sfolder%s %sselected.", + "選擇符合的 %ld 個資料匣!共計 %s 個資料匣被%s選擇。", (diff > 0) ? diff : old_tot + diff, - plural((diff > 0) ? diff : old_tot + diff), comatose((diff > 0) ? total : -diff), - (diff > 0) ? "total " : "", - plural((diff > 0) ? total : -diff), - (diff > 0) ? "" : "UN"); + (diff > 0) ? "" : "取消"); q_status_message(SM_ORDER, 0, 2, tmp_20k_buf); } else - q_status_message2(SM_ORDER, 0, 2, "Select matched %s folder%s.", - comatose(diff), plural(diff)); + q_status_message1(SM_ORDER, 0, 2, "選擇符合的 %s 個資料匣!", + comatose(diff)); return(1); } @@ -2995,9 +2998,9 @@ fp->prev = context->dir; fp->status |= CNTXT_SUBDIR; context->dir = fp; - q_status_message2(SM_ORDER, 0, 3, "Now in %sdirectory: %s", + q_status_message2(SM_ORDER, 0, 3, "目前在 %s目錄中:%s", folder_total(FOLDERS(context)) - ? "" : "EMPTY ", fp->ref); + ? "" : "空的 ", fp->ref); rv++; } else @@ -3016,7 +3019,7 @@ char *p; /* Provide context in new collection header */ - sprintf(tmp_20k_buf, "Dir: %s", + sprintf(tmp_20k_buf, "目錄:%s", ((p = strstr(cntxt->context, "%s")) && !*(p+2) && !strncmp(fdp->ref, cntxt->context, p - cntxt->context)) ? fdp->ref + (p - cntxt->context) : fdp->ref); @@ -3062,12 +3065,12 @@ context->dir = fp; if(fp->status & CNTXT_SUBDIR) - q_status_message1(SM_ORDER, 0, 3, "Now in directory: %s", + q_status_message1(SM_ORDER, 0, 3, "目前所在目錄:%s", strsquish(tmp_20k_buf + 500, fp->ref, ps_global->ttyo->screen_cols - 22)); else q_status_message(SM_ORDER, 0, 3, - "Returned to collection's top directory"); + "回到總集的最上層目錄"); rv++; } @@ -3258,12 +3261,12 @@ if(context->use & CNTXT_INCMNG){ char inbox_host[MAXPATH], *beg, *end = NULL; ESCKEY_S *special_key; - static ESCKEY_S host_key[] = {{ctrl('X'),12,"^X","Use Inbox Host"}, + static ESCKEY_S host_key[] = {{ctrl('X'),12,"^X","使用 Inbox 的主機"}, {-1, 0, NULL, NULL}}; if(ps_global->readonly_pinerc){ q_status_message(SM_ORDER,3,5, - "Addition cancelled: config file not editable"); + "取消新增:無法編輯設定檔"); return(FALSE); } @@ -3285,7 +3288,7 @@ else special_key = NULL; - sprintf(tmp, "Name of server to contain added folder : "); + sprintf(tmp, "包含新增資料匣的主機名:"); help = NO_HELP; while(1){ int flags = OE_APPEND_CURRENT; @@ -3303,7 +3306,7 @@ } else if(rc == 1){ q_status_message(SM_ORDER,0,2, - "Addition of new folder cancelled"); + "取消新增資料匣"); return(FALSE); } else if(rc == 0) @@ -3313,7 +3316,7 @@ if(offset = strlen(add_folder)){ /* must be host for incoming */ int i; - sprintf(tmp, "Folder on \"%s\" to add : ", add_folder); + sprintf(tmp, "加入在 \"%s\" 上的資料匣:", add_folder); for(i = offset;i >= 0; i--) add_folder[i+1] = add_folder[i]; @@ -3322,7 +3325,7 @@ add_folder[++offset] = '\0'; /* +2, total */ } else - sprintf(tmp, "Folder name to add : "); + sprintf(tmp, "新增資料匣名稱:"); help = NO_HELP; while(1){ @@ -3330,14 +3333,14 @@ p = NULL; if(isdir){ - add_key[0].label = "Create Folder"; + add_key[0].label = "建立資料匣"; if(tmp[0] == 'F') - rplstr(tmp, 6, "Directory"); + rplstr(tmp, 6, "目錄"); } else{ - add_key[0].label = "Create Directory"; + add_key[0].label = "建立目錄"; if(tmp[0] == 'D') - rplstr(tmp, 9, "Folder"); + rplstr(tmp, 9, "資料匣"); } flags = OE_APPEND_CURRENT; @@ -3351,10 +3354,10 @@ if(!ps_global->show_dot_names && add_folder[offset] == '.'){ if(cnt++ <= 0) q_status_message(SM_ORDER,3,3, - "Folder name can't begin with dot"); + "資料匣不能以點 \".\" 為名稱開頭"); else q_status_message1(SM_ORDER,3,3, - "Config feature \"%s\" enables names beginning with dot", + "設定檔中 \"%s\" 的功\能可使資料匣以點 \".\" 為名稱開頭", feature_list_name(F_ENABLE_DOT_FOLDERS)); display_message(NO_OP_COMMAND); @@ -3373,7 +3376,7 @@ } else if(*p == context->dir->delim){ q_status_message(SM_ORDER|SM_DING, 3, 3, - "Can't have trailing directory delimiters!"); + "不能有目錄尾端的分隔號 \"/\"!"); display_message('X'); continue; } @@ -3395,7 +3398,7 @@ : NO_HELP; } else if(rc == 1 || add_folder[0] == '\0') { - q_status_message(SM_ORDER,0,2, "Addition of new folder cancelled"); + q_status_message(SM_ORDER,0,2, "取消新增資料匣"); return(FALSE); } } @@ -3414,7 +3417,7 @@ help = NO_HELP; if(context->use & CNTXT_INCMNG){ - sprintf(tmp, "Nickname for folder \"%s\" : ", &add_folder[offset]); + sprintf(tmp, "資料匣\"%s\" 的暱稱:", &add_folder[offset]); while(1){ int flags = OE_APPEND_CURRENT; @@ -3435,7 +3438,7 @@ } else if(rc == 1 || (rc != 3 && !*nickname)){ q_status_message(SM_ORDER,0,2, - "Addition of new folder cancelled"); + "取消新增資料匣"); return(FALSE); } } @@ -3450,7 +3453,7 @@ f = folder_entry(offset, FOLDERS(context)); if(!strucmp(FLDR_NAME(f), nickname[0] ? nickname : add_folder)){ q_status_message1(SM_ORDER | SM_DING, 0, 3, - "Incoming folder \"%s\" already exists", + "新進資料匣(Incoming folder) \"%s\" 已存在", nickname[0] ? nickname : add_folder); return(FALSE); } @@ -3503,18 +3506,18 @@ if(nickname[0]) strcpy(add_folder, nickname); /* known by new name */ - q_status_message1(SM_ORDER, 0, 3, "Folder \"%s\" created",add_folder); + q_status_message1(SM_ORDER, 0, 3, "資料匣 \"%s\" 已建立",add_folder); return_val = add_folder; } else if(context_isambig(add_folder)){ free_folder_list(context); - q_status_message2(SM_ORDER, 0, 3, "%s \"%s\" created", - isdir ? "Directory" : "Folder", add_folder); + q_status_message2(SM_ORDER, 0, 3, "%s \"%s\" 已建立", + isdir ? "目錄" : "資料匣", add_folder); return_val = add_folder; } else q_status_message1(SM_ORDER, 0, 3, - "Folder \"%s\" created outside current collection", + "資料匣 \"%s\" 建立於目前的總集之外", add_folder); return(return_val != NULL); @@ -3553,13 +3556,13 @@ subscribe_keys[i = 0].ch = ctrl('T'); subscribe_keys[i].rval = 12; subscribe_keys[i].name = "^T"; - subscribe_keys[i++].label = "To All Grps"; + subscribe_keys[i++].label = "給所有的組群"; if(F_ON(F_ENABLE_TAB_COMPLETE,ps_global)){ subscribe_keys[i].ch = ctrl('I'); subscribe_keys[i].rval = 11; subscribe_keys[i].name = "TAB"; - subscribe_keys[i++].label = "Complete"; + subscribe_keys[i++].label = "完成"; } subscribe_keys[i].ch = -1; @@ -3620,7 +3623,7 @@ } else{ q_status_message(SM_ORDER, 0, 2, - "No group substring to match! Use ^T to list all news groups."); + "沒有符合的組群字串!請用 ^T 列出所有新聞組群。"); continue; } @@ -3673,10 +3676,10 @@ else{ if(rc == 12) q_status_message(SM_ORDER | SM_DING, 3, 3, - "No groups to select from!"); + "沒有可供選擇的組群!"); else q_status_message1(SM_ORDER, 3, 3, - "News group \"%s\" didn't match any existing groups", + "新聞組群 \"%s\" 不符合任何現存的組群", folder); free_folder_list(&subscribe_cntxt); @@ -3721,7 +3724,7 @@ if(rc < 0){ folder[0] = '\0'; /* make sure not to return partials */ if(rc == -1) - q_status_message(SM_ORDER, 0, 3, "Subscribe cancelled"); + q_status_message(SM_ORDER, 0, 3, "取消訂閱\"); } else{ if(folders){ /*------ Actually do the subscription -----*/ @@ -3743,7 +3746,7 @@ */ q_status_message1(errors ?SM_INFO : SM_ORDER, errors ? 0 : 3, 3, - "Error subscribing to \"%s\"", + "訂閱\至 \"%s\" 時發生錯誤", (char *) flp->name); errors++; } @@ -3767,13 +3770,13 @@ if(n == 0) q_status_message(SM_ORDER | SM_DING, 3, 5, - "Subscriptions failed, subscribed to no new groups"); + "訂閱\失敗,沒有訂閱\任何新組群"); else q_status_message3(SM_ORDER | (errors ? SM_DING : 0), errors ? 3 : 0,3, - "Subscribed to %s new groups%s%s", + "訂閱\至 %s 個新組群%s%s", comatose((long)n), - errors ? ", failed on " : "", + errors ? ",發生錯誤於 " : "", errors ? comatose((long)errors) : ""); free_strlist(&folders); @@ -3782,7 +3785,7 @@ (void) context_apply(tmp_20k_buf, &subscribe_cntxt, folder); if(mail_subscribe(NULL, tmp_20k_buf) == 0L){ q_status_message1(SM_ORDER | SM_DING, 3, 3, - "Error subscribing to \"%s\"", folder); + "訂閱\至 \"%s\" 時發生錯誤", folder); } else if(ALL_FOUND(cntxt)){ /*---- Update the screen display data structures -----*/ @@ -3796,7 +3799,7 @@ } if(folder[0]) - q_status_message1(SM_ORDER, 0, 3, "Subscribed to \"%s\"", folder); + q_status_message1(SM_ORDER, 0, 3, "訂閱\至 \"%s\"", folder); } free_fdir(&subscribe_cntxt.dir, 1); @@ -3837,19 +3840,19 @@ if(NEWS_TEST(context)){ q_status_message(SM_ORDER | SM_DING, 3, 3, - "Can't rename bulletin boards or news groups!"); + "無法更改電子佈告欄或新聞組群的名稱!"); return(0); } else if(!folder_total(FOLDERS(context))){ q_status_message(SM_ORDER | SM_DING, 0, 4, - "Empty folder collection. No folder to rename!"); + "空的資料匣總集。沒有可供更名的資料匣!"); return(0); } else if((new_f = folder_entry(index, FOLDERS(context))) && (!strucmp(FLDR_NAME(new_f), ps_global->inbox_name) || new_f->parent)) { q_status_message1(SM_ORDER | SM_DING, 3, 4, - "Can't change special folder name \"%s\"", + "無法更改特殊資料匣 \"%s\" 的名稱", new_f->parent ? new_f->nickname : ps_global->inbox_name); @@ -3865,11 +3868,11 @@ ren_cur = strcmp(folder, ps_global->cur_folder) == 0; - sprintf(prompt, "Rename %s to : ", + sprintf(prompt, "將 %s 更名為:", (context->use & CNTXT_INCMNG) - ? "nickname" + ? "暱稱" : (isdir = new_f->isdir) - ? "directory" : "folder"); + ? "目錄" : "資料匣"); help = NO_HELP; strcpy(new_name, folder); while(1) { @@ -3890,10 +3893,10 @@ if(!ps_global->show_dot_names && *new_name == '.'){ if(cnt++ <= 0) q_status_message(SM_ORDER,3,3, - "Folder name can't begin with dot"); + "資料匣不能以點 \".\" 為名稱開頭"); else q_status_message1(SM_ORDER,3,3, - "Config feature \"%s\" enables names beginning with dot", + "設定檔中 \"%s\" 的功\能可使資料匣以點 \".\" 為名稱開頭", feature_list_name(F_ENABLE_DOT_FOLDERS)); display_message(NO_OP_COMMAND); @@ -3902,13 +3905,13 @@ if(folder_index(new_name, context, FI_ANY) >= 0){ q_status_message1(SM_ORDER, 3, 3, - "Folder \"%s\" already exists", + "資料匣 \"%s\" 已存在", pretty_fn(new_name)); display_message(NO_OP_COMMAND); continue; } else if(!strucmp(new_name, ps_global->inbox_name)){ - q_status_message1(SM_ORDER, 3, 3, "Can't rename folder to %s", + q_status_message1(SM_ORDER, 3, 3, "無法將資料匣更名至 %s", ps_global->inbox_name); display_message(NO_OP_COMMAND); continue; @@ -3931,7 +3934,7 @@ if(rc == 1 || !(*new_name || (context->use & CNTXT_INCMNG)) || !strcmp(new_name, folder)){ - q_status_message(SM_ORDER, 0, 2, "Folder rename cancelled"); + q_status_message(SM_ORDER, 0, 2, "取消資料匣更名"); return(0); } @@ -4012,7 +4015,7 @@ /* renaming sent-mail or saved-messages */ if(context_create(context, NULL, folder)){ q_status_message3(SM_ORDER,0,3, - "Folder \"%s\" renamed to \"%s\". New \"%s\" created", + "資料匣 \"%s\" 名稱改為 \"%s\"。建立新的 \"%s\"", folder, new_name, pretty_fn( (strcmp(ps_global->VAR_DEFAULT_SAVE_FOLDER, @@ -4023,7 +4026,7 @@ } else{ q_status_message1(SM_ORDER | SM_DING, 3, 4, - "Error creating new \"%s\"", folder); + "建立新的資料匣 \"%s\" 時發生錯誤", folder); dprint(2, (debugfile, "Error creating \"%s\" in %s context\n", folder, context->context)); @@ -4031,7 +4034,7 @@ } else q_status_message2(SM_ORDER, 0, 3, - "Folder \"%s\" renamed to \"%s\"", + "資料匣 \"%s\" 名稱改為 \"%s\"", pretty_fn(folder), pretty_fn(new_name)); free_folder_list(context); @@ -4068,7 +4071,7 @@ int ret, close_opened = 0, blast_folder = 1; if(NEWS_TEST(context)){ - static char fmt[] = "Really unsubscribe from \"%.*s\""; + static char fmt[] = "確定自 \"%.*s\" 中解除訂閱\嗎"; folder = folder_entry(index, FOLDERS(context))->name; /* 4 is strlen("%.*s") */ @@ -4090,7 +4093,7 @@ (void) context_apply(tmp_20k_buf, context, folder); if(!mail_unsubscribe(NULL, tmp_20k_buf)){ q_status_message1(SM_ORDER | SM_DING, 3, 3, - "Error unsubscribing from \"%s\"", folder); + "自 \"%s\" 取消訂閱\時發生錯誤", folder); return(0); } @@ -4107,12 +4110,12 @@ if(ps_global->readonly_pinerc && (context->use & CNTXT_INCMNG)){ q_status_message(SM_ORDER,3,5, - "Deletion cancelled: config file not editable"); + "取消刪除:無法編輯設定檔"); return(0); } else if(strucmp(folder, ps_global->inbox_name) == 0 || fp->parent) { q_status_message1(SM_ORDER | SM_DING, 3, 4, - "Can't delete special folder \"%s\".", ps_global->inbox_name); + "無法刪除特殊資料匣 \"%s\"。", ps_global->inbox_name); return(0); } else if(context == ps_global->context_current @@ -4127,7 +4130,7 @@ if(ret){ q_status_message1(SM_ORDER | SM_DING, 3, 4, - "Can't delete non-empty directory \"%s\".", + "無法刪除非空的目錄 \"%s\"。", folder); return(0); } @@ -4138,19 +4141,19 @@ */ if(folder_index(folder, context, FI_FOLDER) >= 0 && (ret = want_to(DIR_FOLD_PMT,'n','x',NO_HELP,WT_NORM)) != 'y'){ - q_status_message(SM_ORDER,0,3, (ret == 'x') ? "Delete cancelled" - : "No folder deleted"); + q_status_message(SM_ORDER,0,3, (ret == 'x') ? "取消刪除" + : "沒有任何資料匣被刪除"); return(0); } } if(context->use & CNTXT_INCMNG){ static ESCKEY_S delf_opts[] = { - {'n', 'n', "N", "Nickname only"}, - {'b', 'b', "B", "Both Folder and Nickname"}, + {'n', 'n', "N", "僅有暱稱"}, + {'b', 'b', "B", "資料匣與暱稱"}, {-1, 0, NULL, NULL} }; -#define DELF_PROMPT "DELETE only Nickname or Both nickname and folder? " +#define DELF_PROMPT "刪除「僅有暱稱」或「資料匣與暱稱」?" switch(radio_buttons(DELF_PROMPT, -FOOTER_ROWS(ps_global), delf_opts,'n','x',NO_HELP,RB_NORM)){ @@ -4159,7 +4162,7 @@ break; case 'x' : - cmd_cancelled("Delete"); + cmd_cancelled("刪除"); return(0); default : @@ -4167,13 +4170,13 @@ } } else{ - sprintf(ques_buf, "DELETE \"%s\"%s", folder, - close_opened ? " (the currently open folder)" - : fp->isdir ? " (a directory)" : ""); + sprintf(ques_buf, "刪除 \"%s\"%s", folder, + close_opened ? " (目前開啟的資料匣)" + : fp->isdir ? " (目錄)" : ""); if((ret = want_to(ques_buf, 'n', 'x', NO_HELP, WT_NORM)) != 'y'){ - q_status_message(SM_ORDER,0,3, (ret == 'x') ? "Delete cancelled" - : "No folder deleted"); + q_status_message(SM_ORDER,0,3, (ret == 'x') ? "取消刪除" + : "沒有任何資料匣被刪除"); return(0); } } @@ -4216,13 +4219,13 @@ /* * BUG: what if sent-mail or saved-messages???? */ - q_status_message1(SM_ORDER,3,3,"Delete of \"%s\" Failed!", folder); + q_status_message1(SM_ORDER,3,3,"刪除 \"%s\" 失敗!", folder); return(0); } } - q_status_message2(SM_ORDER, 0, 3, "%s \"%s\" deleted.", - blast_folder ? "Folder" : "Nickname", folder); + q_status_message2(SM_ORDER, 0, 3, "%s \"%s\" 已刪除。", + blast_folder ? "資料匣" : "暱稱", folder); if(context->use & CNTXT_INCMNG){ @@ -4299,7 +4302,7 @@ int flags; pat[0] = '\0'; - sprintf(prompt, "String in folder %s to match : ", kind); + sprintf(prompt, "資料匣 %s 中欲符合的字串:", kind); while(1){ flags = OE_APPEND_CURRENT | OE_DISALLOW_HELP; @@ -4317,7 +4320,7 @@ return(1); case 1 : - cmd_cancelled("Select"); + cmd_cancelled("選擇"); default : return(0); @@ -4394,7 +4397,7 @@ return(1); } - cmd_cancelled("Select"); + cmd_cancelled("選擇"); return(0); } @@ -4427,7 +4430,7 @@ if(!strucmp(folder = f->name, ps_global->inbox_name)) return(FEX_ISFILE); - sprintf(tmp, "Scanning \"%.*s\"", 40, FLDR_NAME(f)); + sprintf(tmp, "正在掃描 \"%.*s\"", 40, FLDR_NAME(f)); we_cancel = busy_alarm(1, tmp, NULL, 0); mm_list_info = &ldata; /* tie down global reference */ @@ -4571,7 +4574,7 @@ return(1); } - cmd_cancelled("Select"); + cmd_cancelled("選擇"); return(0); } @@ -4593,7 +4596,7 @@ while(1){ flags = OE_APPEND_CURRENT | OE_DISALLOW_HELP; sprintf(number, "%ld", *count); - sprintf(prompt, "Select folders with messages %s : ", tense[*cmp]); + sprintf(prompt, "選擇有信件 %s 的資料匣:", tense[*cmp]); r = optionally_enter(number, -FOOTER_ROWS(ps_global), 0, 31, prompt, sel_num_opt, NO_HELP, &flags); switch (r){ @@ -4602,7 +4605,7 @@ break; else if((*count = atol(number)) < 0L) q_status_message(SM_ORDER, 3, 3, - "Can't have NEGATIVE message count!"); + "不可有「負的」信件數量!"); else return(1); /* success */ @@ -4763,7 +4766,7 @@ for(; i >= 0; i--) folder_entry(i, FOLDERS(context))->scanned = 0; - cmd_cancelled("Select"); + cmd_cancelled("選擇"); rv = 0; break; } @@ -5712,7 +5715,7 @@ if(p = context_digest(c_string, dcontext, host, rcontext, view)){ q_status_message2(SM_ORDER | SM_DING, 3, 4, - "Bad context, %s : %s", p, c_string); + "錯誤的內容,%s:%s", p, c_string); fs_give((void **) &c_string); if(nickname) fs_give((void **)&nickname); @@ -5753,14 +5756,14 @@ /* fix up label */ if(NEWS_TEST(c)){ - sprintf(tmp_20k_buf, "%sews groups%s%s", - (*host) ? "N" : "Local n", (*host) ? " on " : "", + sprintf(tmp_20k_buf, "%s文組群%s%s", + (*host) ? "新" : "本地的新", (*host) ? " 於 " : "", (*host) ? host : ""); } else{ p = srchstr(rcontext, "[]"); - sprintf(tmp_20k_buf, "%solders%s%s in %.*s%s", - (*host) ? "F" : "Local f", (*host) ? " on " : "", + sprintf(tmp_20k_buf, "%s料匣%s%s在 %.*s%s", + (*host) ? "資" : "本地的資", (*host) ? " 於 " : "", (*host) ? host : "", p ? p - rcontext : 0, rcontext, (p && (p - rcontext) > 0) ? "" : "home directory"); } @@ -6986,7 +6989,7 @@ if(error && num_in_error){ cnt_errs = num_in_error; memset((void *)ng_error, 0, (size_t)90); - sprintf(ng_error, "Unknown news group%s: ", plural(num_in_error)); + sprintf(ng_error, "未知的新聞組群:"); ep = ng_error + strlen(ng_error); } for(ntmp = nglist; ntmp; ntmp = ntmp->next){