diff -ruN joe.orig/.joerc joe/.joerc --- joe.orig/.joerc Sat Mar 10 06:28:31 2001 +++ joe/.joerc Sat Mar 10 06:28:48 2001 @@ -25,7 +25,7 @@ -marking Text between ^KB and cursor is highlighted (use with -lightoff) - -asis Characters 128 - 255 shown as-is +-asis Characters 128 - 255 shown as-is -force Force final newline when files are saved @@ -102,7 +102,7 @@ \f Blink -lmsg \i%k%T%W%I%X %n %m%R %M --rmsg %S Row %r Col %c %t Ctrl-K H for help +-rmsg %S ¦æ¼Æ %r ¦C¼Æ %c %t Ctrl-K H ½u¤W»²§U SECOND SECTION: File name dependant local option settings: @@ -178,73 +178,75 @@ Use \f to turn on/off flash {Basic -\i Help Screen turn off with ^KH more help with ESC . (^[.) \i -\i \i\uCURSOR\u \uGO TO\u \uBLOCK\u \uDELETE\u \uMISC\u \uEXIT\u \i \i -\i \i^B left ^F right ^U prev. screen ^KB begin ^D char. ^KJ reformat ^KX save \i \i -\i \i^P up ^N down ^V next screen ^KK end ^Y line ^T options ^C abort \i \i -\i \i^Z previous word ^A beg. of line ^KM move ^W >word ^R refresh ^KZ shell \i \i -\i \i^X next word ^E end of line ^KC copy ^O word< ^@ insert \uFILE\u \i \i -\i \i\uSEARCH\u ^KU top of file ^KW file ^J >line \uSPELL\u ^KE edit \i \i -\i \i^KF find text ^KV end of file ^KY delete ^_ undo ^[N word ^KR insert\i \i -\i \i^L find next ^KL to line No. ^K/ filter ^^ redo ^[L file ^KD save \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ ESC . ¶}±Ò§ó¦h»²§Uµøµ¡ (^[.) \i +\i \i\u´å ¼Ð\u \u²¾ °Ê\u \u°Ï ¶ô\u \u§R °£\u \uÂø¶µ\u \uÂ÷¶}\u \i \i +\i \i^B ©¹¥ª ^F ©¹¥k ^U ¤W¤@­Óµøµ¡ ^KB °_©l ^D ¦r¤¸ ^KJ ­«·s±Æ¦C ^KX ¦sÀÉ \i \i +\i \i^P ©¹¤W ^N ©¹¤U ^V ¤U¤@­Óµøµ¡ ^KK µ²§ô ^Y ¾ã¦æ ^T ³]©w¿ï¶µ ^C ©ñ±ó \i \i +\i \i^Z «e¤@­Ó¦r ^A ³æ¦æªº³Ì«e­± ^KM ²¾°Ê ^W >³æ¦r ^R ¿Ã¹õ§ó·s ^KZ SHELL \i \i +\i \i^X ¤U¤@­Ó¦r ^E ³æ¦æªº³Ì«á­± ^KC «þ¨© ^O ³æ¦r< ^@ ´¡¤JªÅ¥Õ \uÀÉ®×\u \i \i +\i \i\u·j ´M\u ^KU Àɮ׳̫e­± ^KW ¦sÀÉ ^J >¦æ§À \u«÷ ¦r\u ^KE ½s¿è \i \i +\i \i^KF ·j´M¦r¦ê ^KV Àɮ׳̫᭱ ^KY §R°£ ^_ ´_­ì ^[N ¦r ^KR ´¡¤J \i \i +\i \i^L ¤U¤@¦r¦ê ^KL ¸õ©¹²Ä´X¦æ ^K/ ¹LÂo ^^ ¤£´_­ì ^[L ÀÉ®× ^KD ¦sÀÉ \i \i } {Windows -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i^KO Split the window in half ^KE Load file into window \i \i -\i \i^KG Make current window bigger ^KT Make current window smaller \i \i -\i \i^KN Go to the window below ^KP Go to the window above \i \i -\i \i^C Eliminate the current window ^KI Show all windows / Show one window\i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i^KO ¤À³Îµøµ¡¬°¤G ^KE ¸ü¤JÀɮ׶i¤J´å¼Ð©Ò¦bµøµ¡ \i \i +\i \i^KG ©ñ¤j´å¼Ð©Ò¦bµøµ¡ ^KT ÁY¤p´å¼Ð©Ò¦bµøµ¡ \i \i +\i \i^KN ¸õ©¹¤U¤@­Óµøµ¡ ^KP ¸õ©¹«e¤@­Óµøµ¡ \i \i +\i \i^C ®ø°£´å¼Ð©Ò¦bµøµ¡ ^KI Åã¥Ü©Ò¦³µøµ¡ / Åã¥Ü´å¼Ð©Ò¦bµøµ¡ \i \i } {Advanced -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i\uMACROS\u \uMISC\u \uSCROLL\u \uSHELL\u \uGOTO\u \uI-SEARCH\u \i \i -\i \i^K[ 0-9 Record ^K SPACE status ^[W Up ^K' Window ^[B To ^KB ^[R Backwards\i \i -\i \i^K] Stop ^K\\ Repeat ^[Z Down ^[! Command ^[K To ^KK ^[S Forwards \i \i -\i \i^K 0-9 Play ^[M Math ^K< Left \uQUOTE\u \uDELETE\u \uBOOKMARKS\u \i \i -\i \i^K? Query ^KA Center line ^K> Right ` Ctrl- ^[Y yank ^[ 0-9 Goto \i \i -\i \i^[D Dump ^[H Message ^\\ Meta- ^[O line< ^[^[ Set \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i\u¥¨ ¶°\u \uÂø¶µ\u \u±² ¶b\u \uSHELL\u \u²¾°Ê\u \u§Y®É·j´M\u \i \i +\i \i^K[ 0-9 °O¿ý ^K SPACE ª¬ºA^[W ©¹¤W ^K' µøµ¡¼Ò¦¡ ^[B ²¾©¹ ^KB ³B ^[R ©¹«á·j´M\i \i +\i \i^K] °±¤î ^K\\ ­«ÂЩR¥O ^[Z ©¹¤U ^[! ©R¥O¼Ò¦¡ ^[K ²¾©¹ ^KK ³B ^[S ©¹«e·j´M\i \i +\i \i^K 0-9 ±Ò°Ê ^[M ¼Æ¾Ç ^K< ©¹¥ª \u¤Þ ¥Î\u \u§R °£\u \u®Ñ ÅÒ\u \i \i +\i \i^K? ¬d¸ß ^KA ¤¤¶¡¹ï»ô ^K> ©¹¥k ` ±±¨î¦r¤¸ ^[Y ¤U©Ô¤@¦æ ^[ 0-9 ²¾°Ê \i \i +\i \i^[D ¶É­Ë ^[H °T®§ ^\\ Meta- ^[O §R«e­±¤@¦æ ^[^[ ³]©w \i \i } {Programs -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i\uGOTO\u \uINDENT\u \uCOMPILING\u \i \i -\i \i^G Matching ( [ { ^K, less ^[C Compile and parse errors \i \i -\i \i^K- Previous place ^K. more ^[E Parse errors \i \i -\i \i^K= Next place ^[= To next error \i \i -\i \i^K; Tags file search ^[- To prev. error \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i\u²¾°Ê\u \u¤À ³Î\u \u½s Ķ\u \i \i +\i \i^G ¦¨¹ï·j´M ( [ { ^K, °Ï¶ô¥ª²¾ ^[C ½sĶ¨Ã¦C¥X¿ù»~ \i \i +\i \i^K- «e¤@­Ó´å¼Ð¦ì¸m ^K. °Ï¶ô¥k²¾ ^[E ¦C¥X¿ù»~ \i \i +\i \i^K= ¤U¤@­Ó´å¼Ð¦ì¸m ^[= ¸õ¦Ü¤U¤@­Ó¿ù»~ \i \i +\i \i^K; ¼ÐÅÒÀÉ·j´M ^[- ¦^¨ì¤W¤@­Ó¿ù»~ \i \i } {Search -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \iSpecial search sequences: \i \i -\i \i \\^ \\$ matches beg./end of line \\? match any single char \i \i -\i \i \\< \\> matches beg./end of word \\* match 0 or more chars \i \i -\i \i \\c matches balanced C expression \\\\ matches a \\ \i \i -\i \i \\[..] matches one of a set \\n matches a newline \i \i -\i \i \\+ matches 0 or more of the character which follows the \\+ \i \i -\i \iSpecial replace sequences: \i \i -\i \i \\& replaced with text which matched search string \i \i -\i \i \\0 - 9 replaced with text which matched Nth \\*, \\?, \\c, \\+, or \\[..] \i \i -\i \i \\\\ replaced with \\ \\n replaced with newline \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i\u¯S®í·j´M±ø¥ó\u \i \i +\i \i \\^ \\$ ¦ì©ó¦æ­º/§Àªº²Å¦X¦r¦ê \\? ¥N´À¥ô¦ó¤@­Ó¦r¤¸ \i \i +\i \i \\< \\> ¦ì©ó¦r­º/§Àªº²Å¦X¦r¦ê \\* ¥N´À¥ô·N¦r¤¸ \i \i +\i \i \\c ²Å¦X C »y¨¥®æ¦¡ªºªí¥Ü¥Ü¦r¦ê \\\\ §ä´M \"\\"\" \i \i +\i \i \\[..] ²Å¦X©Ò«ü©w¶°¦X¤¤ªº¥ô¤@¦r¦ê \\n ¥Nªí¤@­Ó´«¦æ²Å¸¹ \i \i +\i \i \\+ ²Å¦X¤@­Ó©Î¬O¦h­Ó¥H¤Wªþ¥[©ó \"+\" ¸¹«á­±«ü©w±ø¥óªº¦r¦ê \i \i +\i \i\u¯S®í¨ú¥N±ø¥ó\u \i \i +\i \i \\& ª½±µ¥H´À¥N¦r¤¸¨ú¥N§ä´M¨ìªº¦r¦ê(¤£¥[¸ß°Ý) \i \i +\i \i \\0 - 9 ª½±µ¥H´À¥N¦r¤¸¨ú¥N²Ä n ­Ó¦r¦ê \\*, \\?, \\c, \\+, or \\[..] \i \i +\i \i \\\\ ¥H \"\\\"¨Ó¨ú¥N \\n ¥H´«¦æ²Å¸¹¨Ó¨ú¥N \i \i } {Names -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i Hit TAB at file name prompts to generate menu of file names \i \i -\i \i Or use up/down keys to access history of previously entered names \i \i -\i \i Special file names: \i \i -\i \i !command Pipe in/out of a shell command \i \i -\i \i >>filename Append to a file \i \i -\i \i - Read/Write to/from standard I/O \i \i -\i \i filename,START,SIZE Read/Write a part of a file/device \i \i -\i \i Give START/SIZE in decimal (255), octal (0377) or hex (0xFF) \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i ¦b¿é¤JÀɮצWºÙªº´£¥Üµøµ¡¤¤¡A«ö¤U TAB Áä¥i¥H²£¥Í¤@­Ó±z¥Ø«e©Ò¦b¥Ø¿ý¤Uªº©Ò¦³ \i \i +\i \i ÀɮצW¦rªº¦Cªí¡A©Î¬O¨Ï¥Î¤W¤UÁä¨Ó¨Ï¥Î¥H«e¥Î¹LªºÀɮצWºÙ. \i \i +\i \i ¯S®íªºÀɮצWºÙ¡G \i \i +\i \i !command ¤Þ¤J¤@­Ó shell ©³¤Uªº©R¥O \i \i +\i \i >>filename §â²{¦³ÀÉ®§ªþ¥[¨ì¥t¤@Àɮפ¤ \i \i +\i \i - ±q¼Ð·Çªº I/O ³]³Æ¤¤Åª¤J/¼g¥X \i \i +\i \i filename,START,SIZE ±q¤@­ÓÀÉ®×/³]³Æ¤¤Åª¤J/¼g¥X³¡¥÷¸ê®Æ \i \i +\i \i µ¹©wÀɮ׶}©lªº¦ì¸m/Àɮפj¤p ¥H¤Q¶i¦ì(255), ¤K¦ì¦ì(0377), ¤Q¤»¶i¶i(0xFF) \i \i } {Joe -\i Help Screen turn off with ^KH prev. screen ^[, \i -\i \i Send bug reports to: Joe Allen (jhallen@world.std.com) \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ ^[, «e¤@­¶»²§Uµøµ¡ \i +\i \i [***JOE 2.8 ¤¤¤åª©***] [** ¤¤¤å¤Æ¡G°ê¥ß¥æ³q¤j¾Ç À³¥Î¼Æ¾Ç¨t 86¯Å ¿à¦³±o **] \i \i +\i \i ¦³¥ô¦ó°ÝÃD½Ð email ¦Ü u8222034@cc.nctu.edu.tw ©Î u8222034@math.nctu.edu.tw \i \i +\i \i ­^¤åª©¦³¥ô¦ó°ÝÃD½Ð Send bug reports to: Joe Allen (jhallen@world.std.com) \i \i } FOURTH SECTION: Key bindings: @@ -309,6 +311,7 @@ :windows Bindings common to all windows type ^@ TO ÿ Type a character abort ^C Abort window +abort .k4 abort ^K Q abort ^K ^Q abort ^K q @@ -433,7 +436,7 @@ Standard JOE user interface quote8 ^\ Enter Meta chars -quote ` Enter Ctrl chars +quote .k; Enter Ctrl chars backs ^? Backspace backs ^H diff -ruN joe.orig/.rjoerc joe/.rjoerc --- joe.orig/.rjoerc Sat Mar 10 06:28:31 2001 +++ joe/.rjoerc Sat Mar 10 06:28:48 2001 @@ -25,7 +25,7 @@ -marking Text between ^KB and cursor is highlighted (use with -lightoff) - -asis Characters 128 - 255 shown as-is +-asis Characters 128 - 255 shown as-is -force Force final newline when files are saved @@ -413,7 +413,7 @@ Standard JOE user interface quote8 ^\ Enter Meta chars -quote ` Enter Ctrl chars +quote .k; Enter Ctrl chars backs ^? Backspace backs ^H diff -ruN joe.orig/b.c joe/b.c --- joe.orig/b.c Sat Mar 10 06:28:31 2001 +++ joe/b.c Sat Mar 10 06:28:48 2001 @@ -48,11 +48,11 @@ char *msgs[]= { - "Error writing file", - "Error opening file", - "Error seeking file", - "Error reading file", - "New File" + "¼g¤JÀɮ׿ù»~", + "¶}±ÒÀɮ׿ù»~", + "´M§äÀɮ׿ùèk", + "Ū¤JÀɮ׿ù»~", + "·sÀÉ" }; /* Get size of gap (amount of free space) */ @@ -1998,8 +1998,8 @@ for(b=bufs.link.next;b!=&bufs;b=b->link.next) if(b->changed) { - if(b->name) fprintf(f,"\n*** File \'%s\'\n",b->name); - else fprintf(f,"\n*** File \'(Unnamed)\'\n"); + if(b->name) fprintf(f,"*** ÀɦW¡G \'%s\' ***\n",b->name); + else fprintf(f,"*** ÀɦW¡G \'(¥¼©R¦W)\' ***\n"); fflush(f); bsavefd(b->bof,fileno(f),b->eof->byte); } diff -ruN joe.orig/bw.c joe/bw.c --- joe.orig/bw.c Sat Mar 10 06:28:31 2001 +++ joe/bw.c Sat Mar 10 06:28:48 2001 @@ -755,11 +755,11 @@ static char buf[80]; unsigned c=brc(bw->cursor); if(c==MAXINT) - sprintf(buf,"** Line %ld Col %ld Offset %ld(0x%lx) **", + sprintf(buf,"** ¦æ¼Æ %ld ¦C¼Æ %ld Àɮפj¤p %ld(0x%lx) **", bw->cursor->line+1,piscol(bw->cursor)+1,bw->cursor->byte, bw->cursor->byte); else - sprintf(buf,"** Line %ld Col %ld Offset %ld(0x%lx) Ascii %d(0%o/0x%X) **", + sprintf(buf,"** ¦æ¼Æ %ld ¦C¼Æ %ld Àɮפj¤p %ld(0x%lx) Ascii ½X %d(0%o/0x%X) **", bw->cursor->line+1,piscol(bw->cursor)+1,bw->cursor->byte, bw->cursor->byte,255&c,255&c,255&c); msgnw(bw,buf); diff -ruN joe.orig/cmd.c joe/cmd.c --- joe.orig/cmd.c Sat Mar 10 06:28:31 2001 +++ joe/cmd.c Sat Mar 10 06:28:48 2001 @@ -197,7 +197,7 @@ if((maint->curwin->watom->what&TYPETW) && bw->b->rdonly && (cmd->flag&EMOD)) { - msgnw(bw,"Read only"); + msgnw(bw,"°ßŪ"); if(beep) ttputc(7); goto skip; } @@ -387,7 +387,7 @@ int ret= -1; CMD *cmd=findcmd(s); if(!cmd) - msgnw(bw,"No such command"); + msgnw(bw,"¨S¦³³o­Ó©R¥O"); else { mac=mkmacro(MAXINT,0,0,cmd); diff -ruN joe.orig/joerc joe/joerc --- joe.orig/joerc Sat Mar 10 06:28:31 2001 +++ joe/joerc Sat Mar 10 06:28:48 2001 @@ -25,7 +25,7 @@ -marking Text between ^KB and cursor is highlighted (use with -lightoff) - -asis Characters 128 - 255 shown as-is +-asis Characters 128 - 255 shown as-is -force Force final newline when files are saved @@ -102,7 +102,7 @@ \f Blink -lmsg \i%k%T%W%I%X %n %m%R %M --rmsg %S Row %r Col %c %t Ctrl-K H for help +-rmsg %S ¦æ¼Æ %r ¦C¼Æ %c %t Ctrl-K H ½u¤W»²§U SECOND SECTION: File name dependant local option settings: @@ -178,73 +178,75 @@ Use \f to turn on/off flash {Basic -\i Help Screen turn off with ^KH more help with ESC . (^[.) \i -\i \i\uCURSOR\u \uGO TO\u \uBLOCK\u \uDELETE\u \uMISC\u \uEXIT\u \i \i -\i \i^B left ^F right ^U prev. screen ^KB begin ^D char. ^KJ reformat ^KX save \i \i -\i \i^P up ^N down ^V next screen ^KK end ^Y line ^T options ^C abort \i \i -\i \i^Z previous word ^A beg. of line ^KM move ^W >word ^R refresh ^KZ shell \i \i -\i \i^X next word ^E end of line ^KC copy ^O word< ^@ insert \uFILE\u \i \i -\i \i\uSEARCH\u ^KU top of file ^KW file ^J >line \uSPELL\u ^KE edit \i \i -\i \i^KF find text ^KV end of file ^KY delete ^_ undo ^[N word ^KR insert\i \i -\i \i^L find next ^KL to line No. ^K/ filter ^^ redo ^[L file ^KD save \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ ESC . ¶}±Ò§ó¦h»²§Uµøµ¡ (^[.) \i +\i \i\u´å ¼Ð\u \u²¾ °Ê\u \u°Ï ¶ô\u \u§R °£\u \uÂø¶µ\u \uÂ÷¶}\u \i \i +\i \i^B ©¹¥ª ^F ©¹¥k ^U ¤W¤@­Óµøµ¡ ^KB °_©l ^D ¦r¤¸ ^KJ ­«·s±Æ¦C ^KX ¦sÀÉ \i \i +\i \i^P ©¹¤W ^N ©¹¤U ^V ¤U¤@­Óµøµ¡ ^KK µ²§ô ^Y ¾ã¦æ ^T ³]©w¿ï¶µ ^C ©ñ±ó \i \i +\i \i^Z «e¤@­Ó¦r ^A ³æ¦æªº³Ì«e­± ^KM ²¾°Ê ^W >³æ¦r ^R ¿Ã¹õ§ó·s ^KZ SHELL \i \i +\i \i^X ¤U¤@­Ó¦r ^E ³æ¦æªº³Ì«á­± ^KC «þ¨© ^O ³æ¦r< ^@ ´¡¤JªÅ¥Õ \uÀÉ®×\u \i \i +\i \i\u·j ´M\u ^KU Àɮ׳̫e­± ^KW ¦sÀÉ ^J >¦æ§À \u«÷ ¦r\u ^KE ½s¿è \i \i +\i \i^KF ·j´M¦r¦ê ^KV Àɮ׳̫᭱ ^KY §R°£ ^_ ´_­ì ^[N ¦r ^KR ´¡¤J \i \i +\i \i^L ¤U¤@¦r¦ê ^KL ¸õ©¹²Ä´X¦æ ^K/ ¹LÂo ^^ ¤£´_­ì ^[L ÀÉ®× ^KD ¦sÀÉ \i \i } {Windows -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i^KO Split the window in half ^KE Load file into window \i \i -\i \i^KG Make current window bigger ^KT Make current window smaller \i \i -\i \i^KN Go to the window below ^KP Go to the window above \i \i -\i \i^C Eliminate the current window ^KI Show all windows / Show one window\i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i^KO ¤À³Îµøµ¡¬°¤G ^KE ¸ü¤JÀɮ׶i¤J´å¼Ð©Ò¦bµøµ¡ \i \i +\i \i^KG ©ñ¤j´å¼Ð©Ò¦bµøµ¡ ^KT ÁY¤p´å¼Ð©Ò¦bµøµ¡ \i \i +\i \i^KN ¸õ©¹¤U¤@­Óµøµ¡ ^KP ¸õ©¹«e¤@­Óµøµ¡ \i \i +\i \i^C ®ø°£´å¼Ð©Ò¦bµøµ¡ ^KI Åã¥Ü©Ò¦³µøµ¡ / Åã¥Ü´å¼Ð©Ò¦bµøµ¡ \i \i } {Advanced -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i\uMACROS\u \uMISC\u \uSCROLL\u \uSHELL\u \uGOTO\u \uI-SEARCH\u \i \i -\i \i^K[ 0-9 Record ^K SPACE status ^[W Up ^K' Window ^[B To ^KB ^[R Backwards\i \i -\i \i^K] Stop ^K\\ Repeat ^[Z Down ^[! Command ^[K To ^KK ^[S Forwards \i \i -\i \i^K 0-9 Play ^[M Math ^K< Left \uQUOTE\u \uDELETE\u \uBOOKMARKS\u \i \i -\i \i^K? Query ^KA Center line ^K> Right ` Ctrl- ^[Y yank ^[ 0-9 Goto \i \i -\i \i^[D Dump ^[H Message ^\\ Meta- ^[O line< ^[^[ Set \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i\u¥¨ ¶°\u \uÂø¶µ\u \u±² ¶b\u \uSHELL\u \u²¾°Ê\u \u§Y®É·j´M\u \i \i +\i \i^K[ 0-9 °O¿ý ^K SPACE ª¬ºA^[W ©¹¤W ^K' µøµ¡¼Ò¦¡ ^[B ²¾©¹ ^KB ³B ^[R ©¹«á·j´M\i \i +\i \i^K] °±¤î ^K\\ ­«ÂЩR¥O ^[Z ©¹¤U ^[! ©R¥O¼Ò¦¡ ^[K ²¾©¹ ^KK ³B ^[S ©¹«e·j´M\i \i +\i \i^K 0-9 ±Ò°Ê ^[M ¼Æ¾Ç ^K< ©¹¥ª \u¤Þ ¥Î\u \u§R °£\u \u®Ñ ÅÒ\u \i \i +\i \i^K? ¬d¸ß ^KA ¤¤¶¡¹ï»ô ^K> ©¹¥k ` ±±¨î¦r¤¸ ^[Y ¤U©Ô¤@¦æ ^[ 0-9 ²¾°Ê \i \i +\i \i^[D ¶É­Ë ^[H °T®§ ^\\ Meta- ^[O §R«e­±¤@¦æ ^[^[ ³]©w \i \i } {Programs -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i\uGOTO\u \uINDENT\u \uCOMPILING\u \i \i -\i \i^G Matching ( [ { ^K, less ^[C Compile and parse errors \i \i -\i \i^K- Previous place ^K. more ^[E Parse errors \i \i -\i \i^K= Next place ^[= To next error \i \i -\i \i^K; Tags file search ^[- To prev. error \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i\u²¾°Ê\u \u¤À ³Î\u \u½s Ķ\u \i \i +\i \i^G ¦¨¹ï·j´M ( [ { ^K, °Ï¶ô¥ª²¾ ^[C ½sĶ¨Ã¦C¥X¿ù»~ \i \i +\i \i^K- «e¤@­Ó´å¼Ð¦ì¸m ^K. °Ï¶ô¥k²¾ ^[E ¦C¥X¿ù»~ \i \i +\i \i^K= ¤U¤@­Ó´å¼Ð¦ì¸m ^[= ¸õ¦Ü¤U¤@­Ó¿ù»~ \i \i +\i \i^K; ¼ÐÅÒÀÉ·j´M ^[- ¦^¨ì¤W¤@­Ó¿ù»~ \i \i } {Search -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \iSpecial search sequences: \i \i -\i \i \\^ \\$ matches beg./end of line \\? match any single char \i \i -\i \i \\< \\> matches beg./end of word \\* match 0 or more chars \i \i -\i \i \\c matches balanced C expression \\\\ matches a \\ \i \i -\i \i \\[..] matches one of a set \\n matches a newline \i \i -\i \i \\+ matches 0 or more of the character which follows the \\+ \i \i -\i \iSpecial replace sequences: \i \i -\i \i \\& replaced with text which matched search string \i \i -\i \i \\0 - 9 replaced with text which matched Nth \\*, \\?, \\c, \\+, or \\[..] \i \i -\i \i \\\\ replaced with \\ \\n replaced with newline \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i\u¯S®í·j´M±ø¥ó\u \i \i +\i \i \\^ \\$ ¦ì©ó¦æ­º/§Àªº²Å¦X¦r¦ê \\? ¥N´À¥ô¦ó¤@­Ó¦r¤¸ \i \i +\i \i \\< \\> ¦ì©ó¦r­º/§Àªº²Å¦X¦r¦ê \\* ¥N´À¥ô·N¦r¤¸ \i \i +\i \i \\c ²Å¦X C »y¨¥®æ¦¡ªºªí¥Ü¥Ü¦r¦ê \\\\ §ä´M \"\\"\" \i \i +\i \i \\[..] ²Å¦X©Ò«ü©w¶°¦X¤¤ªº¥ô¤@¦r¦ê \\n ¥Nªí¤@­Ó´«¦æ²Å¸¹ \i \i +\i \i \\+ ²Å¦X¤@­Ó©Î¬O¦h­Ó¥H¤Wªþ¥[©ó \"+\" ¸¹«á­±«ü©w±ø¥óªº¦r¦ê \i \i +\i \i\u¯S®í¨ú¥N±ø¥ó\u \i \i +\i \i \\& ª½±µ¥H´À¥N¦r¤¸¨ú¥N§ä´M¨ìªº¦r¦ê(¤£¥[¸ß°Ý) \i \i +\i \i \\0 - 9 ª½±µ¥H´À¥N¦r¤¸¨ú¥N²Ä n ­Ó¦r¦ê \\*, \\?, \\c, \\+, or \\[..] \i \i +\i \i \\\\ ¥H \"\\\"¨Ó¨ú¥N \\n ¥H´«¦æ²Å¸¹¨Ó¨ú¥N \i \i } {Names -\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i -\i \i Hit TAB at file name prompts to generate menu of file names \i \i -\i \i Or use up/down keys to access history of previously entered names \i \i -\i \i Special file names: \i \i -\i \i !command Pipe in/out of a shell command \i \i -\i \i >>filename Append to a file \i \i -\i \i - Read/Write to/from standard I/O \i \i -\i \i filename,START,SIZE Read/Write a part of a file/device \i \i -\i \i Give START/SIZE in decimal (255), octal (0377) or hex (0xFF) \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ «e¤@­¶»²§Uµøµ¡ ^[, ¤U¤@­¶»²§Uµøµ¡ ^[. \i +\i \i ¦b¿é¤JÀɮצWºÙªº´£¥Üµøµ¡¤¤¡A«ö¤U TAB Áä¥i¥H²£¥Í¤@­Ó±z¥Ø«e©Ò¦b¥Ø¿ý¤Uªº©Ò¦³ \i \i +\i \i ÀɮצW¦rªº¦Cªí¡A©Î¬O¨Ï¥Î¤W¤UÁä¨Ó¨Ï¥Î¥H«e¥Î¹LªºÀɮצWºÙ. \i \i +\i \i ¯S®íªºÀɮצWºÙ¡G \i \i +\i \i !command ¤Þ¤J¤@­Ó shell ©³¤Uªº©R¥O \i \i +\i \i >>filename §â²{¦³ÀÉ®§ªþ¥[¨ì¥t¤@Àɮפ¤ \i \i +\i \i - ±q¼Ð·Çªº I/O ³]³Æ¤¤Åª¤J/¼g¥X \i \i +\i \i filename,START,SIZE ±q¤@­ÓÀÉ®×/³]³Æ¤¤Åª¤J/¼g¥X³¡¥÷¸ê®Æ \i \i +\i \i µ¹©wÀɮ׶}©lªº¦ì¸m/Àɮפj¤p ¥H¤Q¶i¦ì(255), ¤K¦ì¦ì(0377), ¤Q¤»¶i¶i(0xFF) \i \i } {Joe -\i Help Screen turn off with ^KH prev. screen ^[, \i -\i \i Send bug reports to: Joe Allen (jhallen@world.std.com) \i \i +\i ½u¤W»²§Uµøµ¡ ^KH Ãö³¬»²§Uµøµ¡ ^[, «e¤@­¶»²§Uµøµ¡ \i +\i \i [***JOE 2.8 ¤¤¤åª©***] [** ¤¤¤å¤Æ¡G°ê¥ß¥æ³q¤j¾Ç À³¥Î¼Æ¾Ç¨t 86¯Å ¿à¦³±o **] \i \i +\i \i ¦³¥ô¦ó°ÝÃD½Ð email ¦Ü u8222034@cc.nctu.edu.tw ©Î u8222034@math.nctu.edu.tw \i \i +\i \i ­^¤åª©¦³¥ô¦ó°ÝÃD½Ð Send bug reports to: Joe Allen (jhallen@world.std.com) \i \i } FOURTH SECTION: Key bindings: @@ -309,6 +311,7 @@ :windows Bindings common to all windows type ^@ TO ÿ Type a character abort ^C Abort window +abort .k4 abort ^K Q abort ^K ^Q abort ^K q @@ -433,7 +436,7 @@ Standard JOE user interface quote8 ^\ Enter Meta chars -quote ` Enter Ctrl chars +quote .k; Enter Ctrl chars backs ^? Backspace backs ^H diff -ruN joe.orig/macro.c joe/macro.c --- joe.orig/macro.c Sat Mar 10 06:28:31 2001 +++ joe/macro.c Sat Mar 10 06:28:49 2001 @@ -460,7 +460,7 @@ { if(c>='0' && c<='9') return dorecord(bw,c,NULL,NULL); else - if(mkqw(bw,sc("Macro to record (0-9 or ^C to abort): "),dorecord,NULL,NULL,NULL)) return 0; + if(mkqw(bw,sc("°O¿ý¥¨¶° (0-9 ©Î ^C ¤¤Â_): "),dorecord,NULL,NULL,NULL)) return 0; else return -1; } @@ -531,7 +531,7 @@ { if(c>='0' && c<='9') return doplay(bw,c,NULL,NULL); else - if(mkqwna(bw,sc("Play-"),doplay,NULL,NULL,NULL)) return 0; + if(mkqwna(bw,sc("°õ¦æ-"),doplay,NULL,NULL,NULL)) return 0; else return -1; } @@ -557,7 +557,7 @@ BW *bw; { if(wmkpw(bw, - "No. times to repeat next command (^C to abort): ", + "¤U¤@­Ó«ü¥O­«ÂЪº¦¸¼Æ (^C ¤¤Â_): ", NULL,doarg,NULL,NULL,utypebw,NULL,NULL)) return 0; else return -1; } @@ -591,7 +591,7 @@ if(notify) *notify=1; return 0; } - sprintf(msgbuf,"Repeat %s%d",negarg?"-":"",unaarg); + sprintf(msgbuf,"­«ÂÐ %s%d",negarg?"-":"",unaarg); if(mkqwna(bw,sz(msgbuf),douarg,NULL,NULL,notify)) return 0; else return -1; } @@ -603,6 +603,6 @@ negarg=0; if(c>='0' && c<='9' || c=='-') return douarg(bw,c,NULL,NULL); else - if(mkqwna(bw,sc("Repeat"),douarg,NULL,NULL,NULL)) return 0; + if(mkqwna(bw,sc("­«ÂÐ"),douarg,NULL,NULL,NULL)) return 0; else return -1; } diff -ruN joe.orig/main.c joe/main.c --- joe.orig/main.c Sat Mar 10 06:28:31 2001 +++ joe/main.c Sat Mar 10 06:29:43 2001 @@ -197,7 +197,7 @@ #ifndef __MSDOS__ if(!(cap=getcap(NULL,9600,NULL,NULL))) { - fprintf(stderr,"Couldn't load termcap/terminfo entry\n"); + fprintf(stderr,"µLªk¸ü¤J termcap/terminfo \n"); return 1; } #endif @@ -211,7 +211,7 @@ if(c==1) { char buf[8]; - fprintf(stderr,"There were errors in '%s'. Use it anyway?",s); + fprintf(stderr,"¦b '%s' ¤¤¦³¿ù»~. ­n¨Ï¥Î¥¦¶Ü¡H",s); fflush(stderr); fgets(buf,8,stdin); if(buf[0]=='y' || buf[0]=='Y') goto donerc; @@ -226,7 +226,7 @@ if(c==1) { char buf[8]; - fprintf(stderr,"There were errors in '%s'. Use it anyway?",s); + fprintf(stderr,"¦b '%s' ¤¤¦³¿ù»~. ­n¨Ï¥Î¥¦¶Ü¡H",s); fflush(stderr); fgets(buf,8,stdin); if(buf[0]=='y' || buf[0]=='Y') goto donerc; @@ -261,7 +261,7 @@ if(c==1) { char buf[8]; - fprintf(stderr,"There were errors in '%s'. Use it anyway?",s); + fprintf(stderr,"¦b '%s' ¤¤¦³¿ù»~. ­n¨Ï¥Î¥¦¶Ü¡H",s); fflush(stderr); fgets(buf,8,stdin); if(buf[0]=='y' || buf[0]=='Y') goto donerc; @@ -277,7 +277,7 @@ if(c==1) { char buf[8]; - fprintf(stderr,"There were errors in '%s'. Use it anyway?",s); + fprintf(stderr,"¦b '%s' ¤¤¦³¿ù»~. ­n¨Ï¥Î¥¦¶Ü¡H",s); fflush(stderr); fgets(buf,8,stdin); if(buf[0]=='y' || buf[0]=='Y') goto donerc; @@ -285,7 +285,7 @@ #endif - fprintf(stderr,"Couldn't open '%s'\n",s); + fprintf(stderr,"µLªk¶}±Ò '%s'\n",s); return 1; donerc: @@ -295,7 +295,7 @@ if(argv[c][1]) switch(glopt(argv[c]+1,argv[c+1],NULL,1)) { - case 0: fprintf(stderr,"Unknown option '%s'\n",argv[c]); break; + case 0: fprintf(stderr,"¤£ª¾©úªº¿ï¶µ '%s'\n",argv[c]); break; case 1: break; case 2: ++c; break; } diff -ruN joe.orig/menu.c joe/menu.c --- joe.orig/menu.c Sat Mar 10 06:28:31 2001 +++ joe/menu.c Sat Mar 10 06:28:49 2001 @@ -41,9 +41,15 @@ for(x=0;x!=m->perline && m->list[x+m->top];++x) { int atr,z; - if(x+m->top==m->cursor) atr=INVERSE; - else atr=0; + atr = 0 ; +/* + if(x+m->top==m->cursor) + atr= 0 ; + else + atr=0; +*/ if(col==m->w) break; + for(z=0;m->list[x+m->top][z];++z) { if(col==m->w) break; diff -ruN joe.orig/rc.c joe/rc.c --- joe.orig/rc.c Sat Mar 10 06:28:32 2001 +++ joe/rc.c Sat Mar 10 06:28:49 2001 @@ -54,14 +54,14 @@ OPTIONS fdefault= { 0, 0, 0, 0, 76, 0, 0, 8, ' ', 1, "main", "\\i%n %m %M", - " %S Ctrl-K H for help", 0, 0, 0, 0, 1, 0, 0, 0, 0 }; + " %S Ctrl-K H ½u¤W»²§U", 0, 0, 0, 0, 1, 0, 0, 0, 0 }; #else OPTIONS pdefault= { 0, 0, 0, 0, 76, 0, 0, 8, ' ', 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; OPTIONS fdefault= { 0, 0, 0, 0, 76, 0, 0, 8, ' ', 1, "main", "\\i%n %m %M", - " %S Ctrl-K H for help", 0, 0, 0, 0, 0, 0, 0, 0, 0 }; + " %S Ctrl-K H ½u¤W»²§U", 0, 0, 0, 0, 0, 0, 0, 0, 0 }; #endif void setopt(n,name) @@ -106,49 +106,49 @@ } glopts[]= { {"overwrite", 4, 0, (char *)&fdefault.overtype, - "Overtype mode", - "Insert mode", - "T Overtype "}, + "Âмg¼Ò¦¡", + "´¡¤J¼Ò¦¡", + "T [***¿é¤J³]©w***] "}, {"autoindent", 4, 0, (char *)&fdefault.autoindent, - "Autoindent enabled", - "Autindent disabled", - "I Autoindent "}, + "¦Û°ÊÁY±Æ [¶}±Ò]", + "¦Û°ÊÁY±Æ [Ãö³¬]", + "I [***ÁY±Æ³]©w***] "}, {"wordwrap", 4, 0, (char *)&fdefault.wordwrap, - "Wordwrap enabled", - "Wordwrap disabled", - "Word wrap "}, + "¦Û°Ê´«¦æ [¶}±Ò]", + "¦Û°Ê´«¦æ [Ãö³¬]", + "* [***´«¦æ³]©w***] "}, {"tab", 5, 0, (char *)&fdefault.tab, - "Tab width (%d): ", + "Tab ¼e«× (%d): ", 0, - "D Tab width ",0,1,64}, + "D [**TAB Áä¼e«×**] ",0,1,64}, {"lmargin", 7, 0, (char *)&fdefault.lmargin, - "Left margin (%d): ", + "³]©w¥ªÃä¬É (%d): ", 0, - "Left margin ",0,0,63}, + "L [**³]©w¥ªÃä¬É**] ",0,0,63}, {"rmargin", 7, 0, (char *)&fdefault.rmargin, - "Right margin (%d): ", - 0, - "Right margin ",0,7,255}, + "³]©w¥kÃä¬É (%d): ", + 0, + "* [**³]©w¥kÃä¬É**] ",0,7,255}, {"square", 0, &square, 0, - "Rectangle mode", - "Text-stream mode", - "X Rectangle mode " }, + "¯x§Î¼Ò¦¡ Rectangle mode", + "¤å¦r¦ê¼Ò¦¡", + "X [*°Ï¶ô³]©w¼Ò¦¡*] " }, {"indentc", 5, 0, (char *)&fdefault.indentc, - "Indent char %d (SPACE=32, TAB=9, ^C to abort): ", + "³]©wÁY®æ¦r¤¸ %d (SPACE=32, TAB=9, ^C ¤¤Â_): ", 0, - " Indent char ",0,0,255}, + "* [*³]©wÁY®æ¦r¤¸*] ",0,0,255}, {"istep", 5, 0, (char *)&fdefault.istep, - "Indent step %d (^C to abort): ", + "³]©wÁY®æ¨BÆJ %d (^C ¤¤Â_): ", 0, - " Indent step ",0,1,64}, + "* [*³]©wÁY®æ¨BÆJ*] ",0,1,64}, {"french", 4, 0, (char *)&fdefault.french, "One space after periods for paragraph reformat", @@ -156,90 +156,90 @@ " french spacing "}, {"spaces", 4, 0, (char *)&fdefault.spaces, - "Inserting spaces when tab key is hit", - "Inserting tabs when tab key is hit", - " no tabs "}, + "³]©w«ö¤U [TAB] «á´¡¤J [ªÅ¥Õ] ¦r¤¸ ", + "³]©w«ö¤U [TAB] «á´¡¤J [TAB ] ¦r¤¸ ", + "* [TAB Áä¥Nªí¦r¤¸] "}, {"mid", 0, &mid, 0, - "Cursor will be recentered on scrolls", - "Cursor will not be recentered on scroll", - "Center on scroll " }, + "¿Ã¹õ±²°Ê«á´å¼Ð¦Û°Ê¦V¤¤¶¡¹ï»ô¥\\¯à [¶}±Ò]", + "¿Ã¹õ±²°Ê«á´å¼Ð¦Û°Ê¦V¤¤¶¡¹ï»ô¥\\¯à [Ãö³¬]", + "* [*´å¼Ð¦V¤¤¹ï»ô*] " }, {"crlf", 4, 0, (char *)&fdefault.crlf, - "CR-LF is line terminator", - "LF is line terminator", - "Z CR-LF (MS-DOS) "}, + "¦æªºµ²§À¬O CR-LF", + "¦æªºµ²§À¬O LF", + "Z [*¦æ§À¦r¤¸³]©w*] "}, {"linums", 4, 0, (char *)&fdefault.linums, - "Line numbers enabled", - "Line numbers disabled", - "N Line numbers "}, + "Åã¥Ü¦æ¼Æ¥\\¯à [¶}±Ò] Line numbers enabled", + "Åã¥Ü¦æ¼Æ¥\\¯à [Ãö³¬] Line numbers disabled", + "N [***¦æ¼Æ³]©w***] "}, {"marking", 0, &marking, 0, - "Anchored block marking on", - "Anchored block marking off", - "Marking " }, + "¤Ï¥Õ°Ï¶ôÀH´å¼Ð²¾°Ê¥\\¯à [¶}±Ò]", + "¤Ï¥Õ°Ï¶ôÀH´å¼Ð²¾°Ê¥\\¯à [Ãö³¬]", + "* [*°Ï¶ô¤Ï¥Õ³]©w*] " }, {"asis", 0, &dspasis, 0, - "Characters above 127 shown as-is", - "Characters above 127 shown in inverse", - "Meta chars as-is " + "Åã¥Ü ASCII 127 ¥H¤Wªº¦r¤¸", + "¥H¬Û¤Ï¤è¦¡¨ÓÅã¥Ü ASCII 127 ¥H¤Wªº¦r¤¸", + "* [*¤¤¤åÅã¥Ü¤è¦¡*] " }, {"force", 0, &force, 0, - "Last line forced to have NL when file saved", - "Last line not forces to have NL", - "Force last NL " }, + "¦sÀÉ«á¡A¦Û°Ê¥[¤W¤@¦æªÅ¥Õ¦æ¥\\¯à [¶}±Ò]", + "¦sÀÉ«á¡A¦Û°Ê¥[¤W¤@¦æªÅ¥Õ¦æ¥\\¯à [Ãö³¬]", + "* [*¦sÀÉ·s¦æ³]©w*] " }, {"nobackups", 0, &nobackups, 0, - "Backup files will not be made", - "Backup files will be made", - " Disable backups " }, + "¦Û°Ê²£¥Í³Æ¥÷ÀÉ¥\\¯à [¶}±Ò]", + "¦Û°Ê²£¥Í³Æ¥÷ÀÉ¥\\¯à [Ãö³¬]", + "* [**³Æ¥÷Àɳ]©w**] " }, {"lightoff", 0, &lightoff, 0, - "Highlighting turned off after block operations", - "Highlighting not turned off after block operations", - "Auto unmark " }, + "¨Ï¥Î°Ï¶ô¥\\¯à«á¡A¦Û°ÊÃö³¬°ª«G«×°Ï¶ô¥\\¯à [Ãö³¬]", + "¨Ï¥Î°Ï¶ô¥\\¯à«á¡A¦Û°ÊÃö³¬°ª«G«×°Ï¶ô¥\\¯à [¶}±Ò]", + "* [*°Ï¶ô«G«×³]©w*] " }, {"exask", 0, &exask, 0, - "Prompt for filename in save & exit command", - "Don't prompt for filename in save & exit command", - "Exit ask "}, + "¦sÀɨÃÂ÷¶}®É¬O§_¸ß°ÝÀɦW¥\\¯à [¶}±Ò]", + "¦sÀɨÃÂ÷¶}®É¬O§_¸ß°ÝÀɦW¥\\¯à [Ãö³¬]", + "* [*Â÷¶}¦sÀɸ߰Ý*] "}, {"beep", 0, &beep, 0, - "Warning bell enabled", - "Warning bell disabled", - "Beeps " }, + "¿ù»~®Éµo¥X\"¹Í\"ªºÁn­µ¥\\¯à [¶}±Ò]", + "¿ù»~®Éµo¥X\"¹Í\"ªºÁn­µ¥\\¯à [Ãö³¬]", + "* [*¿ù»~ÁnÅT³]©w*] " }, {"nosta", 0, &staen, 0, - "Top-most status line disabled", - "Top-most status line enabled", - " Disable status line " }, + "¶}±Ò³Ì¤W­±ªºª¬ºA¦C¥\\¯à[Ãö³¬]", + "¶}±Ò³Ì¤W­±ªºª¬ºA¦C¥\\¯à[¶}±Ò]", + "* [**ª¬ºA¦C¶}Ãö**] " }, {"keepup", 0, &keepup, 0, - "Status line updated constantly", - "Status line updated once/sec", - " Fast status line " }, + "ª¬ºA¦C©T©w®É¶¡§ó·s¸ê®Æ¤@¦¸", + "ª¬ºA¦C¨C¬í§ó·s¸ê®Æ¤@¦¸", + "* [ª¬ºA¦C¸ê®Æ§ó·s] " }, {"pg", 1, &pgamnt, 0, - "Lines to keep for PgUp/PgDn or -1 for 1/2 window (%d): ", + "«ö¤U [PgUp]/[PgDn] ®É©Ò«O¯dªº¦æ¼Æ ©Î -1(«O¯d¥b­Óµøµ¡) (%d): ", 0, - " No. PgUp/PgDn lines ", 0, -1, 64 }, + "* [PaUp/PaDn ¦æ¼Æ]", 0, -1, 64 }, {"csmode", 0, &csmode, 0, - "Start search after a search repeats previous search", - "Start search always starts a new search", - "Continued search " }, + "«ö¤U CTRL + F ¥H«e­±©Ò¿é¤Jªº¦r¦ê¶}©l·j´M", + "«ö¤U CTRL + F ³£¥H·sªº¦r¦ê¶i¦æ·j´M", + "* [*·j´M¦r¤¸³]©w*] " }, {"rdonly", 4, 0, (char *)&fdefault.readonly, - "Read only", - "Full editing", - "O Read only "}, + "°ßŪ¼Ò¦¡", + "¥i½s¿è¼Ò¦¡", + "O [*°ßŪ¼Ò¦¡³]©w*] "}, {"backpath", 2, (int *)&backpath, 0, - "Backup files stored in (%s): ", + "³Æ¥÷ÀÉÀx¦s¸ô®| (%s): ", 0, - "Path to backup files " }, + "* [*³Æ¥÷Àɮ׸ô®|*] " }, {"nonotice", 0, &nonotice, 0, 0, 0, 0 }, @@ -455,20 +455,20 @@ v=calc(bw,s); if(merr) msgnw(bw,merr), ret= -1; else if(v>=glopts[x].low && v<=glopts[x].high) *glopts[x].set=v; - else msgnw(bw,"Value out of range"), ret= -1; + else msgnw(bw,"¼Æ­È¶W¹L½d³ò"), ret= -1; break; case 2: if(s[0]) *(char **)glopts[x].set=zdup(s); break; case 5: v=calc(bw,s); if(merr) msgnw(bw,merr), ret= -1; else if(v>=glopts[x].low && v<=glopts[x].high) *(int *)((char *)&bw->o+glopts[x].ofst)=v; - else msgnw(bw,"Value out of range"), ret= -1; + else msgnw(bw,"¼Æ­È¶W¹L½d³ò"), ret= -1; break; case 7: v=calc(bw,s)-1.0; if(merr) msgnw(bw,merr), ret= -1; else if(v>=glopts[x].low && v<=glopts[x].high) *(int *)((char *)&bw->o+glopts[x].ofst)=v; - else msgnw(bw,"Value out of range"), ret= -1; + else msgnw(bw,"¼Æ­È¶W¹L½d³ò"), ret= -1; break; } vsrm(s); @@ -567,7 +567,7 @@ s[x]=(char *)malloc(40); switch(glopts[x].type) { - case 0: sprintf(s[x],"%s%s",glopts[x].menu,*glopts[x].set?"ON":"OFF"); + case 0: sprintf(s[x],"%s%s",glopts[x].menu,*glopts[x].set?"¶}":"Ãö"); break; case 1: sprintf(s[x],"%s%d",glopts[x].menu,*glopts[x].set); @@ -576,7 +576,7 @@ case 2: zcpy(s[x],glopts[x].menu); break; - case 4: sprintf(s[x],"%s%s",glopts[x].menu,*(int *)((char *)&bw->o+glopts[x].ofst)?"ON":"OFF"); + case 4: sprintf(s[x],"%s%s",glopts[x].menu,*(int *)((char *)&bw->o+glopts[x].ofst)?"¶}":"Ãö"); break; case 5: sprintf(s[x],"%s%d",glopts[x].menu,*(int *)((char *)&bw->o+glopts[x].ofst)); @@ -619,7 +619,7 @@ if(!fd) return -1; /* Return if we couldn't open the rc file */ - fprintf(stderr,"Processing '%s'...",name); fflush(stderr); + fprintf(stderr,"©w¸qÀÉ '%s' ³B²z¤¤..... ",name); fflush(stderr); while(++line, fgets(buf,1024,fd)) switch(buf[0]) @@ -655,7 +655,7 @@ if(!glopt(opt,arg,o,2)) { err=1; - fprintf(stderr,"\n%s %d: Unknown option %s",name,line,opt); + fprintf(stderr,"\n%s %d: ¥¼©w¸qªº³]©w %s",name,line,opt); } } break; @@ -677,7 +677,7 @@ if(++line, !fgets(buf,256,fd)) { err=1; - fprintf(stderr,"\n%s %d: End of joerc file occured before end of help text",name,line); + fprintf(stderr,"\n%s %d: ¦]¬° help ªº¤º®e¤£¥¿±`ªºµ²§ô¬Gµ²§ô joerc ªºÅª¤J",name,line); break; } if(buf[0]=='}') @@ -724,13 +724,13 @@ else { err=1; - fprintf(stderr,"\n%s %d: macro missing from :def",name,line); + fprintf(stderr,"\n%s %d: §ä¤£¨ì¥¨¶°¦WºÙ :def",name,line); } } else { err=1; - fprintf(stderr,"\n%s %d: command name missing from :def",name,line); + fprintf(stderr,"\n%s %d: §ä¤£¨ì©R¥O¦WºÙ :def",name,line); } } else if(!zcmp(buf+1,"inherit")) @@ -743,13 +743,13 @@ else { err=1; - fprintf(stderr,"\n%s %d: context name missing from :inherit",name,line); + fprintf(stderr,"\n%s %d: §ä¤£¨ì¤º®e¦WºÙ :inherit",name,line); } } else { err=1; - fprintf(stderr,"\n%s %d: No context selected for :inherit",name,line); + fprintf(stderr,"\n%s %d: ¨S¦³¥ô¦óªº¤º®e³Q¿ï©w :inherit",name,line); } else if(!zcmp(buf+1,"include")) { @@ -761,7 +761,7 @@ switch(procrc(buf+x)) { case 1: err=1; break; - case -1: fprintf(stderr,"\n%s %d: Couldn't open %s",name,line,buf+x); + case -1: fprintf(stderr,"\n%s %d: µLªk¶}±Ò %s",name,line,buf+x); err=1; break; } context=0; @@ -770,7 +770,7 @@ else { err=1; - fprintf(stderr,"\n%s %d: :include missing file name",name,line); + fprintf(stderr,"\n%s %d: : µLªk§ä¨ì include ÀÉ",name,line); } } else if(!zcmp(buf+1,"delete")) @@ -786,13 +786,13 @@ else { err=1; - fprintf(stderr,"\n%s %d: No context selected for :delete",name,line); + fprintf(stderr,"\n%s %d: ¨S¦³¥ô¦óªº¤º®e³Q¿ï©w :delete",name,line); } else context=getcontext(buf+1); else { err=1; - fprintf(stderr,"\n%s %d: Invalid context name",name,line); + fprintf(stderr,"\n%s %d: ¤£¦Xªkªº¤å³¹¦WºÙ",name,line); } } break; @@ -804,7 +804,7 @@ if(!context) { err=1; - fprintf(stderr,"\n%s %d: No context selected for macro to key-sequence binding",name,line); + fprintf(stderr,"\n%s %d: ¨S¦³¥ô¦óªº¤º®e³Q¿ï©wµ¹¥¨¶°¨Ï¥Î",name,line); break; } @@ -814,7 +814,7 @@ if(x== -1) { err=1; - fprintf(stderr,"\n%s %d: Unknown command in macro",name,line); + fprintf(stderr,"\n%s %d: ¤£ª¾¦W¥¨¶°¦WºÙ",name,line); break; } else if(x== -2) @@ -832,7 +832,7 @@ /* Add binding to context */ if(kadd(cap,context,buf+x,m)== -1) { - fprintf(stderr,"\n%s %d: Bad key sequence '%s'",name,line,buf+x); + fprintf(stderr,"\n%s %d: ¿ù»~«öÁä³]©w '%s'",name,line,buf+x); err=1; } } @@ -841,8 +841,8 @@ fclose(fd); /* Close rc file */ /* Print proper ending string */ - if(err) fprintf(stderr,"\ndone\n"); - else fprintf(stderr,"done\n"); + if(err) fprintf(stderr,"\n§¹¦¨\n"); + else fprintf(stderr,"§¹¦¨\n"); return err; /* 0 for success, 1 for syntax error */ } diff -ruN joe.orig/rjoerc joe/rjoerc --- joe.orig/rjoerc Sat Mar 10 06:28:32 2001 +++ joe/rjoerc Sat Mar 10 06:28:49 2001 @@ -25,7 +25,7 @@ -marking Text between ^KB and cursor is highlighted (use with -lightoff) - -asis Characters 128 - 255 shown as-is +-asis Characters 128 - 255 shown as-is -force Force final newline when files are saved @@ -413,7 +413,7 @@ Standard JOE user interface quote8 ^\ Enter Meta chars -quote ` Enter Ctrl chars +quote .k; Enter Ctrl chars backs ^? Backspace backs ^H diff -ruN joe.orig/tab.c joe/tab.c --- joe.orig/tab.c Sat Mar 10 06:28:32 2001 +++ joe/tab.c Sat Mar 10 06:28:49 2001 @@ -202,7 +202,7 @@ tab->pattern=vsncpy(NULL,0,sc("*")); if(treload(m,0)) { - msgnw(m,"Couldn't read directory "); + msgnw(m,"µLªkŪ¨ú¥Ø¿ý"); vsrm(tab->pattern); tab->pattern=orgpattern; vsrm(tab->path); tab->path=orgpath; return -1; @@ -245,7 +245,7 @@ if(treload(m,1)) { - msgnw(m,"Couldn't read directory "); + msgnw(m,"µLªkŪ¨ú¥Ø¿ý"); vsrm(tab->pattern); tab->pattern=orgpattern; vsrm(tab->path); tab->path=orgpath; return -1; diff -ruN joe.orig/termcap.c joe/termcap.c --- joe.orig/termcap.c Sat Mar 10 06:28:32 2001 +++ joe/termcap.c Sat Mar 10 06:28:50 2001 @@ -215,7 +215,7 @@ free(cap); return 0; */ - fprintf(stderr,"Couldn't load termcap entry. Using ansi default\n"); + fprintf(stderr," µLªk¸ü¤J termcap. ¨Ï¥Î ansi ¬°¤º©w­È\n"); ti=0; cap->tbuf=vsncpy(cap->tbuf,0,sc(defentry)); goto checktc; @@ -233,7 +233,7 @@ fstat(fileno(f),&buf); fstat(fileno(f1),&buf1); if(buf.st_mtime>buf1.st_mtime) idx=findidx(f,name); - else fprintf(stderr,"%s is out of date\n",idxname); + else fprintf(stderr,"%s ¸ê®Æ·´·l\n",idxname); fclose(f); } vsrm(idxname); diff -ruN joe.orig/tty.c joe/tty.c --- joe.orig/tty.c Sat Mar 10 06:28:32 2001 +++ joe/tty.c Sat Mar 10 06:28:50 2001 @@ -354,7 +354,7 @@ (!(termin=fopen("/dev/tty","r")) || !(termout=fopen("/dev/tty","w")))) { - fprintf(stderr,"Couldn\'t open /dev/tty\n"); + fprintf(stderr,"µLªk¶}±Ò /dev/tty\n"); exit(1); } else @@ -686,7 +686,7 @@ if(cmd) execl(s,s,"-c",cmd,NULL); else { - fprintf(stderr,"You are at the command shell. Type 'exit' to return\n"); + fprintf(stderr,"§A¦b©R©R¦Cªºª¬ºA¤U. Áä¤J 'exit' ªð¦^\n"); execl(s,s,NULL); } _exit(0); @@ -700,7 +700,7 @@ #ifdef SIGTSTP omode=ttymode; ttclsn(); - fprintf(stderr,"You have suspended the program. Type 'fg' to return\n"); + fprintf(stderr,"§A¤w¸g¼È°±ªº³o­Ó JOE ³o­Óµ{¦¡. Áä¤J 'fg' ¥i¥Hªð¦^JOE\n"); kill(0,SIGTSTP); if(ackkbd!= -1) kill(kbdpid,SIGCONT); diff -ruN joe.orig/tw.c joe/tw.c --- joe.orig/tw.c Sat Mar 10 06:28:32 2001 +++ joe/tw.c Sat Mar 10 06:28:50 2001 @@ -139,17 +139,17 @@ break; case 'n': - stalin=vsncpy(sv(stalin),sz(bw->b->name?bw->b->name:"Unnamed")); + stalin=vsncpy(sv(stalin),sz(bw->b->name?bw->b->name:"¥¼©R¦W")); break; case 'm': if(bw->b->changed) - stalin=vsncpy(sv(stalin),sc("(Modified)")); + stalin=vsncpy(sv(stalin),sc("(¤w§ó§ï)")); break; case 'R': if(bw->b->rdonly) - stalin=vsncpy(sv(stalin),sc("(Read only)")); + stalin=vsncpy(sv(stalin),sc("(°ßŪ)")); break; case '*': @@ -238,7 +238,7 @@ case 'M': if(recmac) { - sprintf(buf,"(Macro %d recording...)",recmac->n); + sprintf(buf,"(¥¨¶° %d °O¿ý¤¤...)",recmac->n); stalin=vsncpy(sv(stalin),sz(buf)); } break; @@ -437,7 +437,7 @@ } if(bw->pid) return ukillpid(bw); if(bw->b->changed && bw->b->count==1) - if(mkqw(bw,sc("Lose changes to this file (y,n,^C)? "),naborttw,NULL,NULL,NULL)) return 0; + if(mkqw(bw,sc("©ñ±ó¹ï³o­ÓÀɮתº§ó§ï (y,n,^C)? "),naborttw,NULL,NULL,NULL)) return 0; else return -1; else return naborttw(bw,'y',NULL,NULL); } @@ -497,7 +497,7 @@ { if(((BW *)t->curwin->main->object)->pid) { - msgnw(t->curwin->main->object,"Process running in this window"); + msgnw(t->curwin->main->object,"µøµ¡¤¤¥¿¦³µ{¦¡°õ¦æ¤¤"); return -1; } utw0(t->curwin->main->object), yn=1; diff -ruN joe.orig/ublock.c joe/ublock.c --- joe.orig/ublock.c Sat Mar 10 06:28:32 2001 +++ joe/ublock.c Sat Mar 10 06:28:50 2001 @@ -345,7 +345,7 @@ bdel(markb,markk); if(lightoff) unmark(bw); } - else { msgnw(bw,"No block"); return -1; } + else { msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } return 0; } @@ -383,7 +383,7 @@ { if(markv(1)) { - if(markb->b->rdonly) { msgnw(bw,"Read only"); return -1; } + if(markb->b->rdonly) { msgnw(bw,"°ßŪ"); return -1; } if(square) { long height=markk->line-markb->line+1; @@ -435,7 +435,7 @@ return 0; } } - msgnw(bw,"No block"); + msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } @@ -478,7 +478,7 @@ updall(); return 0; } - else { msgnw(bw,"No block"); return -1; } + else { msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } } /* Write highlighted block to a file */ @@ -515,7 +515,7 @@ else { vsrm(s); - msgnw(bw,"No block"); + msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } } @@ -717,7 +717,7 @@ updall(); return 0; } - else { msgnw(bw,"No block"); return -1; } + else { msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } else { int ret=0; @@ -748,7 +748,7 @@ markb->b==bw->b && markk->b==bw->b && markb->byte==markk->byte) goto ok; if(!markv(1)) { - msgnw(bw,"No block"); + msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } ok: @@ -867,25 +867,25 @@ BW *bw; { #ifdef __MSDOS__ - msgnw(bw,"Sorry, no sub-processes in DOS (yet)"); + msgnw(bw,"¹ï¤£°_!¦b DOS ¤UÁÙ¨S¦³¨ä¥¦ªº¦æµ{¦b°õ¦æ!"); return -1; #else switch(checkmark(bw)) { case 0: if(wmkpw(bw, - "Command to filter block through (^C to abort): ", + "¥Î¨Ó¹LÂo°Ï¶ôªº©R¥O¦WºÙ (^C ¤¤Â_): ", &filthist,dofilt,NULL,NULL,utypebw,NULL,NULL)) return 0; else return -1; case 1: if(wmkpw(bw, - "Command to filter file through (^C to abort): ", + "¿é¤J¥Î¨Ó¹LÂo°Ï¶ôªº©R¥O¦WºÙ (^C ¤¤Â_): ", &filthist,dofilt,NULL,NULL,utypebw,NULL,NULL)) return 0; else return -1; case 2: - msgnw(bw,"No block"); + msgnw(bw,"¨S¦³¿ï©w°Ï¶ô"); return -1; } #endif diff -ruN joe.orig/uedit.c joe/uedit.c --- joe.orig/uedit.c Sat Mar 10 06:28:32 2001 +++ joe/uedit.c Sat Mar 10 06:28:50 2001 @@ -447,7 +447,7 @@ else { if(merr) msgnw(bw,merr); - else msgnw(bw,"Invalid line number"); + else msgnw(bw,"¤£¦Xªkªº¦æ¼Æ"); return -1; } } @@ -455,7 +455,7 @@ int uline(bw) BW *bw; { - if(wmkpw(bw,"Go to line (^C to abort): ",&linehist,doline,NULL,NULL,NULL,NULL,NULL)) return 0; + if(wmkpw(bw,"¸õ¨ì²Ä´X¦æ (^C ¤¤Â_): ",&linehist,doline,NULL,NULL,NULL,NULL,NULL)) return 0; else return -1; } @@ -482,7 +482,7 @@ else { if(merr) msgnw(bw,merr); - else msgnw(bw,"Invalid column number"); + else msgnw(bw,"¤£¦Xªkªº¦C¼Æ"); return -1; } } @@ -490,7 +490,7 @@ int ucol(bw) BW *bw; { - if(wmkpw(bw,"Go to column (^C to abort): ",&colhist,docol,NULL,NULL,NULL,NULL,NULL)) return 0; + if(wmkpw(bw,"¸õ¨ì²Ä´X¦C (^C ¤¤Â_): ",&colhist,docol,NULL,NULL,NULL,NULL,NULL)) return 0; else return -1; } @@ -517,7 +517,7 @@ else { if(merr) msgnw(bw,merr); - else msgnw(bw,"Invalid byte number"); + else msgnw(bw," ¤£¦Xªkªº¦ì¤¸¼Æ"); return -1; } } @@ -525,7 +525,7 @@ int ubyte(bw) BW *bw; { - if(wmkpw(bw,"Go to byte (^C to abort): ",&bytehist,dobyte,NULL,NULL,NULL,NULL,NULL)) return 0; + if(wmkpw(bw,"¸õ¨ì²Ä´X¦ì¤¸ (^C ¤¤Â_): ",&bytehist,dobyte,NULL,NULL,NULL,NULL,NULL)) return 0; else return -1; } @@ -891,7 +891,7 @@ { quotestate=0; if(mkqwna(bw, - sc("Ctrl- (or 0-9 for dec. ascii, x for hex, or o for octal)"),doquote,NULL,NULL,NULL)) return 0; + sc("Ctrl- ( asci 0-9 ¤Q¶i¦ì, x ¤Q¤»¶i¦ì, o ¤K¶i¦ì)"),doquote,NULL,NULL,NULL)) return 0; else return -1; } @@ -1011,7 +1011,7 @@ { pdupown(bw->cursor,bw->b->marks+c-'0'); poffline(bw->b->marks[c-'0']); - sprintf(msgbuf,"Mark %d set",c-'0'); + sprintf(msgbuf,"³]©w²Ä %d ¼Ð°O",c-'0'); msgnw(bw,msgbuf); return 0; } @@ -1027,7 +1027,7 @@ { if(c>='0' && c<='9') return dosetmark(bw,c,NULL,NULL); else - if(mkqwna(bw,sc("Set mark (0-9):"),dosetmark,NULL,NULL,NULL)) return 0; + if(mkqwna(bw,sc("³]©w¼Ð°O (0-9):"),dosetmark,NULL,NULL,NULL)) return 0; else return -1; } @@ -1048,7 +1048,7 @@ } else { - sprintf(msgbuf,"Mark %d not set",c-'0'); + sprintf(msgbuf,"¼Ð°O %d ¨S¦³³]©w§¹¦¨",c-'0'); msgnw(bw,msgbuf); return -1; } @@ -1064,7 +1064,7 @@ { if(c>='0' && c<='9') return dogomark(bw,c,NULL,NULL); else - if(mkqwna(bw,sc("Goto bookmark (0-9):"),dogomark,NULL,NULL,NULL)) return 0; + if(mkqwna(bw,sc("¸õ¨ì²Ä´X®ÑÅÒ (0-9):"),dogomark,NULL,NULL,NULL)) return 0; else return -1; } @@ -1090,7 +1090,7 @@ else { while((c=pgetc(q))!=MAXINT) if(c==k) break; } if(c==MAXINT) { - msgnw(bw,"Not found"); + msgnw(bw,"¥¼µo²{"); prm(q); return -1; } @@ -1139,7 +1139,7 @@ int umsg(b) BASE *b; { - if(wmkpw(b,"Msg (^C to abort): ",NULL,domsg,NULL,NULL,NULL,NULL,NULL)) return 0; + if(wmkpw(b,"°T®§ (^C ¤¤Â_): ",NULL,domsg,NULL,NULL,NULL,NULL,NULL)) return 0; else return -1; } @@ -1161,6 +1161,6 @@ int utxt(bw) BASE *bw; { - if(wmkpw(bw,"Insert (^C to abort): ",NULL,dotxt,NULL,NULL,utypebw,NULL,NULL)) return 0; + if(wmkpw(bw,"´¡¤J (^C ¤¤Â_): ",NULL,dotxt,NULL,NULL,utypebw,NULL,NULL)) return 0; else return -1; } diff -ruN joe.orig/uerror.c joe/uerror.c --- joe.orig/uerror.c Sat Mar 10 06:28:32 2001 +++ joe/uerror.c Sat Mar 10 06:28:50 2001 @@ -175,7 +175,7 @@ { errbuf=bw->b; freeall(); - sprintf(msgbuf,"Parsed %ld lines",parserr(bw->b)); + sprintf(msgbuf,"Åã¥Ü²Ä %ld ¦æ",parserr(bw->b)); msgnw(bw,msgbuf); return 0; } @@ -186,7 +186,7 @@ int omid; if(errptr->link.next==&errors) { - msgnw(bw,"No more errors"); + msgnw(bw,"¿ù»~Åã¥Ü§¹²¦"); return -1; } errptr=errptr->link.next; @@ -211,7 +211,7 @@ int omid; if(errptr->link.prev==&errors) { - msgnw(bw,"No more errors"); + msgnw(bw,"¿ù»~Åã¥Ü§¹²¦"); return -1; } errptr=errptr->link.prev; diff -ruN joe.orig/ufile.c joe/ufile.c --- joe.orig/ufile.c Sat Mar 10 06:28:32 2001 +++ joe/ufile.c Sat Mar 10 06:28:51 2001 @@ -66,40 +66,40 @@ { char *s; if(bw->b->name && bw->b->name[0]) s=bw->b->name; - else s="(Unnamed)"; + else s="(¥¼©R¦W)"; if(name) if(saved) - sprintf(msgbuf,"File %s saved",name); + sprintf(msgbuf,"ÀɮסG %s ¦sÀɧ¹²¦.",name); else - sprintf(msgbuf,"File %s not saved",name); + sprintf(msgbuf,"ÀɮסG %s ¨Ã¥¼Àx¦s.",name); else if(bw->b->changed && bw->b->count==1) - sprintf(msgbuf,"File %s not saved",s); + sprintf(msgbuf,"ÀɮסG %s ¦sÀɧ¹²¦.",s); else if(saved) - sprintf(msgbuf,"File %s saved",s); + sprintf(msgbuf,"ÀɮסG %s ¤w¸gÀx¦s.",s); else - sprintf(msgbuf,"File %s not changed so no update needed",s); + sprintf(msgbuf,"ÀÉ®× %s ¨Ã¥¼§ïÅÜ©Ò¥H¤£»Ý­n§ó·s¸ê®Æ.",s); msgnw(bw,msgbuf); if(!exmsg) if(bw->b->changed && bw->b->count==1) { - exmsg=vsncpy(NULL,0,sc("File ")); + exmsg=vsncpy(NULL,0,sc("ÀɮסG ")); exmsg=vsncpy(sv(exmsg),sz(s)); - exmsg=vsncpy(sv(exmsg),sc(" not saved.")); + exmsg=vsncpy(sv(exmsg),sc(" ¨Ã¥¼Àx¦s.")); } else if(saved) { - exmsg=vsncpy(NULL,0,sc("File ")); + exmsg=vsncpy(NULL,0,sc("ÀɮסG ")); exmsg=vsncpy(sv(exmsg),sz(s)); - exmsg=vsncpy(sv(exmsg),sc(" saved.")); + exmsg=vsncpy(sv(exmsg),sc(" ¦sÀɧ¹²¦.")); } else { - exmsg=vsncpy(NULL,0,sc("File ")); + exmsg=vsncpy(NULL,0,sc("ÀɮסG ")); exmsg=vsncpy(sv(exmsg),sz(s)); - exmsg=vsncpy(sv(exmsg),sc(" not changed so no update needed.")); + exmsg=vsncpy(sv(exmsg),sc(" ¨Ã¥¼§ïÅÜ©Ò¥H¤£»Ý­n§ó·s¸ê®Æ.")); } } @@ -113,7 +113,7 @@ (!square || piscol(markk)>piscol(markb))) { if(wmkpw(bw, - "Name of file to write (^C to abort): ",&filehist,dowrite,"Names",NULL,cmplt,NULL,NULL)) return 0; + "±ý¼g¤JªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,dowrite,"Names",NULL,cmplt,NULL,NULL)) return 0; else return -1; } else return usave(bw); @@ -255,12 +255,12 @@ vsrm(req->name); free(req); if(notify) *notify=1; - msgnw(bw,"Couldn't make backup file... file not saved"); + msgnw(bw,"µLªk²£¥Í³Æ¥÷ÀÉ ... Àɮרå¼Àx¦s."); if(callback) return callback(bw,-1); else return -1; } if(c!='y' && c!='Y') - if(mkqw(bw,sc("Could not make backup file. Save anyway (y,n,^C)? "),saver,NULL,req,notify)) + if(mkqw(bw,sc("µLªk²£¥Í³Æ¥÷ÀÉ. µL½×¦p¦ó³£­nÀx¦s (y,n,^C)? "),saver,NULL,req,notify)) return 0; else { @@ -321,7 +321,7 @@ return -1; } else - if(mkqw(bw,sc("File exists. Overwrite (y,n,^C)? "),dosave2,NULL,s,notify)) return 0; + if(mkqw(bw,sc("Àɮפw¸g¦s¦b. Âл\\¹L¥h (y,n,^C)? "),dosave2,NULL,s,notify)) return 0; else return -1; } @@ -348,7 +348,7 @@ BW *bw; { BW *pbw=wmkpw(bw, - "Name of file to save (^C to abort): ",&filehist,dosave1,"Names",NULL,cmplt,NULL,NULL); + "±ýÀx¦sªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,dosave1,"Names",NULL,cmplt,NULL,NULL); if(pbw && bw->b->name) { binss(pbw->cursor,bw->b->name); @@ -375,7 +375,7 @@ if(notify) *notify=1; if(bw->pid) { - msgnw(bw,"Process running in this window"); + msgnw(bw,"µøµ¡¤¤¦³µ{¦¡¥¿¦b°õ¦æ¤¤"); return -1; } b=bfind(s); @@ -415,7 +415,7 @@ { if(bw->b->count==1 && bw->b->changed) { - msgnw(bw,"Can't replace modified file"); + msgnw(bw,"µLªk¨ú¥N¤w§ó§ï¹LªºÀÉ®×."); return -1; } else return 0; @@ -424,7 +424,7 @@ int uedit(bw) BW *bw; { - if(wmkpw(bw,"Name of file to edit (^C to abort): ",&filehist,doedit,"Names",NULL,cmplt,NULL,NULL)) return 0; + if(wmkpw(bw,"±ý½s¿èªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,doedit,"Names",NULL,cmplt,NULL,NULL)) return 0; else return -1; } @@ -444,7 +444,7 @@ if(notify) *notify=1; if(bw->pid) { - msgnw(bw,"Process running in this window"); + msgnw(bw,"µøµ¡¤¤¦³µ{¦¡¥¿¦b°õ¦æ¤¤"); return -1; } b=bfind(s); @@ -478,7 +478,7 @@ B *b; if(bw->pid) { - msgnw(bw,"Process running in this window"); + msgnw(bw,"µøµ¡¤¤¦³µ{¦¡¥¿¦b°õ¦æ¤¤"); return -1; } b=bnext(); @@ -502,7 +502,7 @@ B *b; if(bw->pid) { - msgnw(bw,"Process running in this window"); + msgnw(bw,"µøµ¡¤¤¦³µ{¦¡¥¿¦b°õ¦æ¤¤"); return -1; } b=bprev(); @@ -522,7 +522,7 @@ BW *bw; { if(wmkpw(bw, - "Name of file to insert (^C to abort): ",&filehist,doinsf,"Names",NULL,cmplt,NULL,NULL)) return 0; + "±ý´¡¤JªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,doinsf,"Names",NULL,cmplt,NULL,NULL)) return 0; else return -1; } @@ -581,7 +581,7 @@ else { BW *pbw=wmkpw(bw, - "Name of file to save (^C to abort): ",&filehist,doex,"Names",NULL,cmplt,NULL,NULL); + "±ýÀx¦sªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,doex,"Names",NULL,cmplt,NULL,NULL); if(pbw && bw->b->name) { binss(pbw->cursor,bw->b->name); @@ -605,7 +605,7 @@ else { BW *pbw=wmkpw(bw, - "Name of file to save (^C to abort): ",&filehist,dosave1,"Names",NULL,cmplt,object,notify); + "±ýÀx¦sªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,dosave1,"Names",NULL,cmplt,object,notify); if(pbw) return 0; else return -1; } @@ -618,7 +618,7 @@ else if(bw->b->count==1 && bw->b->changed) { - if(mkqw(bw,sc("Save changes to this file (y,n,^C)? "),nask,NULL,object,notify)) return 0; + if(mkqw(bw,sc("­nÀx¦s¹ï³oÀɮתº§ó§ï¶Ü (y,n,^C)? "),nask,NULL,object,notify)) return 0; else return -1; } else @@ -644,7 +644,7 @@ if(c=='y' || c=='Y') { BW *pbw=wmkpw(bw, - "Name of file to save (^C to abort): ",&filehist,dosave1,"Names",NULL,cmplt,object,notify); + "±ýÀx¦sªºÀɮצWºÙ (^C ¤¤Â_): ",&filehist,dosave1,"Names",NULL,cmplt,object,notify); if(pbw) return 0; else return -1; } @@ -657,7 +657,7 @@ else if(bw->b->count==1 && bw->b->changed) { - if(mkqw(bw,sc("Save changes to this file (y,n,^C)? "),nask,NULL,object,notify)) return 0; + if(mkqw(bw,sc("­nÀx¦s¹ï³oÀɮתº§ó§ï¶Ü (y,n,^C)? "),nask,NULL,object,notify)) return 0; else return -1; } else @@ -700,7 +700,7 @@ msgnw(bw,NULL); if(bw->pid) return ukillpid(bw); if(bw->b->count==1 && bw->b->changed) - if(mkqw(bw,sc("Lose changes to this file (y,n,^C)? "),dolose,NULL,NULL,NULL)) return 0; + if(mkqw(bw,sc("©ñ±ó¹ï³oÀɮתº§ó§ï¶Ü (y,n,^C)? "),dolose,NULL,NULL,NULL)) return 0; else return -1; else return dolose(bw,'y',NULL,NULL); } diff -ruN joe.orig/uisrch.c joe/uisrch.c --- joe.orig/uisrch.c Sat Mar 10 06:28:32 2001 +++ joe/uisrch.c Sat Mar 10 06:28:51 2001 @@ -138,7 +138,7 @@ { struct isrch *isrch=(struct isrch *)malloc(sizeof(struct isrch)); izque(IREC,link,&isrch->irecs); - isrch->pattern=vsncpy(NULL,0,sc("I-find: ")); + isrch->pattern=vsncpy(NULL,0,sc("§Y®É·j´M¡G")); isrch->ofst=sLen(isrch->pattern); isrch->dir=dir; isrch->quote=0; diff -ruN joe.orig/umath.c joe/umath.c --- joe.orig/umath.c Sat Mar 10 06:28:33 2001 +++ joe/umath.c Sat Mar 10 06:28:51 2001 @@ -13,7 +13,7 @@ void fperr() { - if(!merr) merr="Float point exception"; + if(!merr) merr="¥²¶·¨Ï¥Î¯BÂI¼Æ"; signal(SIGFPE,fperr); } @@ -67,7 +67,7 @@ ++ptr; x=expr(0,&v); if(*ptr==')') ++ptr; - else { if(!merr) merr="Missing )"; } + else { if(!merr) merr="§ä¤£¨ì )"; } } else if(*ptr=='-') { @@ -105,7 +105,7 @@ ++ptr; x=expr(2,&dumb); if(v) v->val=x, v->set=1; - else { if(!merr) merr="Left side of = is not an l-value"; } + else { if(!merr) merr="µ¥¸¹\"=\"¥ªÃ䪺­È¤£¬O¤@­Ó L-value"; } goto loop; } *rtv=v; @@ -138,7 +138,7 @@ while(*ptr==' ' || *ptr=='\t') ++ptr; if(*ptr) goto up; } - else if(*ptr) merr="Extra junk after end of expr"; + else if(*ptr) merr="¹Bºâ¦¡«á¦³ÃB¥~µL¥Îªº¹Bºâ¦¡"; } return result; } diff -ruN joe.orig/undo.c joe/undo.c --- joe.orig/undo.c Sat Mar 10 06:28:33 2001 +++ joe/undo.c Sat Mar 10 06:28:51 2001 @@ -465,7 +465,7 @@ BW *bw; { bw->b->changed=0; - msgnw(bw,"Modified flag cleared"); + msgnw(bw,"§ó§ï¹LªººX¼Ð¤w¸g²M°£"); return 0; } @@ -482,7 +482,7 @@ } else { - msgnw(bw,"No block"); + msgnw(bw,"¨S¦³¼Ð¥Ü°Ï¶ô"); return -1; } } diff -ruN joe.orig/usearch.c joe/usearch.c --- joe.orig/usearch.c Sat Mar 10 06:28:33 2001 +++ joe/usearch.c Sat Mar 10 06:28:51 2001 @@ -300,7 +300,7 @@ if(srch->replace) { if(wmkpw(bw, - "Replace with (^C to abort): ",&replhist,set_replace,srchstr,pfabort,utypebw,srch,notify)) + "§ó¥H¤°»ò¨ú¥N (^C ¤¤Â_): ",&replhist,set_replace,srchstr,pfabort,utypebw,srch,notify)) return 0; else return -1; } @@ -316,7 +316,7 @@ BW *pbw; vsrm(srch->pattern); srch->pattern=s; if(pbw=wmkpw(bw, - "(I)gnore (R)eplace (B)ackwards Bloc(K) NNN (^C to abort): ", + "(I)©¿²¤(R)¨ú¥N(B)©¹«e·j´M(K)·j´M°Ï¶ô(N)²Å¦X¦r¦ê(^C ¤¤Â_):", NULL,set_options,srchstr,pfabort,utypebw,srch,notify)) { char buf[10]; @@ -360,7 +360,7 @@ } srch=setmark(mksrch(NULL,NULL,0,back,-1,repl,0)); srch->addr=bw->cursor->byte; - if(wmkpw(bw,"Find (^C to abort): ",&findhist,set_pattern,srchstr,pfabort,utypebw,srch,NULL)) + if(wmkpw(bw,"§ä´M¦r¦ê (^C ¤¤Â_): ",&findhist,set_pattern,srchstr,pfabort,utypebw,srch,NULL)) return 0; else { @@ -394,7 +394,7 @@ SRCH *srch; { P *q; - if(bw->b->rdonly) { msgnw(bw,"Read only"); return -1; } + if(bw->b->rdonly) { msgnw(bw,"°ßŪ"); return -1; } if(markk) markk->end=1; if(srch->markk) srch->markk->end=1; q=pdup(bw->cursor); @@ -469,7 +469,7 @@ nungetc(c); return 0; } - if(mkqwnsr(bw,sc("Replace (Y)es (N)o (R)est (B)ackup (^C to abort)?"),dopfrepl,pfsave,srch,notify)) + if(mkqwnsr(bw,sc("¨ú¥N (Y)¬O (N)§_ (R)¥þ³¡¨ú¥N (B)³Æ¥÷ (^C ¤¤Â_)?"),dopfrepl,pfsave,srch,notify)) return 0; else return pfsave(bw,srch); } @@ -582,8 +582,8 @@ bye: if(!srch->flg && !srch->rest) { if(srch->valid && srch->restrict) - msgnw(bw,"Not found (search restricted to marked block)"); - else msgnw(bw,"Not found"); + msgnw(bw,"¥¼µo²{ (·j´M°Ï°ì­­©w¦b¿ï©w°Ï¶ô¤¤)"); + else msgnw(bw,"¥¼µo²{"); ret= -1; } break; diff -ruN joe.orig/ushell.c joe/ushell.c --- joe.orig/ushell.c Sat Mar 10 06:28:33 2001 +++ joe/ushell.c Sat Mar 10 06:28:51 2001 @@ -39,14 +39,14 @@ close(bw->out); bw->out= -1; if(piseof(bw->cursor)) { - binss(bw->cursor,"** Program finished **\n"); + binss(bw->cursor,"** µ{¦¡°õ¦æ§¹²¦ **\n"); peof(bw->cursor); bw->cursor->xcol=piscol(bw->cursor); } else { P *q=pdup(bw->b->eof); - binss(q,"** Program finished **\n"); + binss(q,"** µ{¦¡°õ¦æ§¹²¦ **\n"); prm(q); } } @@ -95,14 +95,14 @@ #ifdef __MSDOS__ if(notify) *notify=1; varm(s); - msgnw(bw,"Sorry, no sub-processes in DOS (yet)"); + msgnw(bw,"¹ï¤£°_! ¨Ã¨S¦³¨ä¥¦ªºµ{¦¡¦b DOS ¤U°õ¦æ"); return -1; #else MPX *m; if(notify) *notify=1; if(bw->pid && orphan) { - msgnw(bw,"Program already running in this window"); + msgnw(bw,"µ{¦¡¤w¸g¦b³o­Óµøµ¡¤¤°õ¦æ"); varm(s); return -1; } @@ -115,7 +115,7 @@ if(!(m=mpxmk(&bw->out,name,s,cdata,bw,cdone,bw))) { varm(s); - msgnw(bw,"No ptys available"); + msgnw(bw,"¨S¦³¦h¾lªºµøµ¡¥i¥Î"); return -1; } else bw->pid= m->pid; @@ -156,7 +156,7 @@ int urun(bw) BW *bw; { - if(wmkpw(bw,"Program to run: ",&runhist,dorun,"Run",NULL,NULL,NULL,NULL)) + if(wmkpw(bw,"±ý°õ¦æªºµ{¦¡¦WºÙ: ",&runhist,dorun,"Run",NULL,NULL,NULL,NULL)) return 0; else return -1; } @@ -179,7 +179,7 @@ { if(bw->pid) { - if(mkqw(bw,sc("Kill program (y,n,^C)?"),pidabort,NULL,NULL,NULL)) return 0; + if(mkqw(bw,sc("¤¤Â_¥¿¦b°õ¦æªºµ{¦¡ (y,n,^C)?"),pidabort,NULL,NULL,NULL)) return 0; else return -1; } else return 0; diff -ruN joe.orig/utag.c joe/utag.c --- joe.orig/utag.c Sat Mar 10 06:28:33 2001 +++ joe/utag.c Sat Mar 10 06:28:51 2001 @@ -49,7 +49,7 @@ f=fopen("tags","r"); if(!f) { - msgnw(bw,"Couldn't open tags file"); + msgnw(bw,"µLªk¶}±Ò¼ÐÅÒÀÉ"); vsrm(s); vsrm(t); return -1; @@ -94,7 +94,7 @@ dofollows(); mid=omid; } - else msgnw(bw,"Invalid line number"); + else msgnw(bw,"¤£¦Xªkªº¦æ¼Æ"); } else { @@ -131,7 +131,7 @@ } } } - msgnw(bw,"Not found"); + msgnw(bw,"¥¼µo²{"); vsrm(s); vsrm(t); fclose(f); @@ -144,7 +144,7 @@ BW *bw; { BW *pbw; - pbw=wmkpw(bw,"Tag search: ",&taghist,dotag,NULL,NULL,cmplt,NULL,NULL); + pbw=wmkpw(bw,"¼ÐÅÒ·j´M: ",&taghist,dotag,NULL,NULL,cmplt,NULL,NULL); if(pbw && crest(brc(bw->cursor))) { P *p=pdup(bw->cursor); diff -ruN joe.orig/vfile.c joe/vfile.c --- joe.orig/vfile.c Sat Mar 10 06:28:33 2001 +++ joe/vfile.c Sat Mar 10 06:28:52 2001 @@ -202,7 +202,7 @@ pp->next=vp->next; goto gotit; } -write(2,"vfile: out of memory\n",21); +write(2,"vfile: °O¾ÐÅ餣¨¬\n",21); exit(1); gotit: @@ -259,7 +259,7 @@ new->fd=open(name,O_RDWR); if(!new->fd) { - fprintf(stderr,"Couldn\'t open file \'%s\'\n",name); + fprintf(stderr,"µLªk¶}±ÒÀÉ®× \'%s\'\n",name); free(new); return 0; }