OSDN Git Service

add translation
authorSHIRAKATA Kentaro <argrath@ub32.org>
Sat, 2 Oct 2021 19:23:52 +0000 (04:23 +0900)
committerSHIRAKATA Kentaro <argrath@ub32.org>
Sat, 9 Oct 2021 20:30:24 +0000 (05:30 +0900)
dat/bogusmon.txt
include/extern.h
src/botl.c
src/end.c
src/options.c
src/version.c
util/makedefs.c
win/tty/wintty.c

index be48117..64bfbd4 100644 (file)
@@ -111,7 +111,7 @@ holloway
 \97\83\83\89\83C\83I\83\93
 \91å\82¤\82¸\82ç
 \91å\82Í\82â\82Ô\82³
-\82à\82Ì\82Ü\82Ë\82Ì\89ö\95¨
+\95¨\82Ü\82Ë\82Ì\89ö\95¨
 \82Í\82¦\82Æ\82è\82®\82³
 
 # Wizardry
index a27aaaa..d60c07b 100644 (file)
@@ -2656,6 +2656,9 @@ E void FDECL(vault_gd_watching, (unsigned int));
 /* ### version.c ### */
 
 E char *FDECL(version_string, (char *));
+#if 1 /*JP*/
+E char *FDECL(version_string_j, (char *));
+#endif
 E char *FDECL(getversionstring, (char *));
 E int NDECL(doversion);
 E int NDECL(doextversion);
index abf90d3..3dff116 100644 (file)
@@ -618,25 +618,58 @@ STATIC_DCL boolean FDECL(status_hilite_menu_add, (int));
    involved isn't a direct 100*current/maximum calculation. */
 STATIC_VAR struct istat_s initblstats[MAXBLSTATS] = {
     INIT_BLSTAT("title", "%s", ANY_STR, MAXVALWIDTH, BL_TITLE),
+/*JP
     INIT_BLSTAT("strength", " St:%s", ANY_INT, 10, BL_STR),
+*/
+    INIT_BLSTAT("strength", " \8b­:%s", ANY_INT, 10, BL_STR),
+/*JP
     INIT_BLSTAT("dexterity", " Dx:%s", ANY_INT,  10, BL_DX),
+*/
+    INIT_BLSTAT("dexterity", " \91\81:%s", ANY_INT,  10, BL_DX),
+/*JP
     INIT_BLSTAT("constitution", " Co:%s", ANY_INT, 10, BL_CO),
+*/
+    INIT_BLSTAT("constitution", " \91Ï:%s", ANY_INT, 10, BL_CO),
+/*JP
     INIT_BLSTAT("intelligence", " In:%s", ANY_INT, 10, BL_IN),
+*/
+    INIT_BLSTAT("intelligence", " \92m:%s", ANY_INT, 10, BL_IN),
+/*JP
     INIT_BLSTAT("wisdom", " Wi:%s", ANY_INT, 10, BL_WI),
+*/
+    INIT_BLSTAT("wisdom", " \8c«:%s", ANY_INT, 10, BL_WI),
+/*JP
     INIT_BLSTAT("charisma", " Ch:%s", ANY_INT, 10, BL_CH),
+*/
+    INIT_BLSTAT("charisma", " \96£:%s", ANY_INT, 10, BL_CH),
     INIT_BLSTAT("alignment", " %s", ANY_STR, 40, BL_ALIGN),
     INIT_BLSTAT("score", " S:%s", ANY_LONG, 20, BL_SCORE),
     INIT_BLSTAT("carrying-capacity", " %s", ANY_INT, 20, BL_CAP),
     INIT_BLSTAT("gold", " %s", ANY_LONG, 30, BL_GOLD),
+/*JP
     INIT_BLSTATP("power", " Pw:%s", ANY_INT, 10, BL_ENEMAX, BL_ENE),
+*/
+    INIT_BLSTATP("power", " \96\82:%s", ANY_INT, 10, BL_ENEMAX, BL_ENE),
     INIT_BLSTAT("power-max", "(%s)", ANY_INT, 10, BL_ENEMAX),
+/*JP
     INIT_BLSTATP("experience-level", " Xp:%s", ANY_INT, 10, BL_EXP, BL_XP),
+*/
+    INIT_BLSTATP("experience-level", " \8co\8c±:%s", ANY_INT, 10, BL_EXP, BL_XP),
+/*JP
     INIT_BLSTAT("armor-class", " AC:%s", ANY_INT, 10, BL_AC),
+*/
+    INIT_BLSTAT("armor-class", " \8aZ:%s", ANY_INT, 10, BL_AC),
     INIT_BLSTAT("HD", " HD:%s", ANY_INT, 10, BL_HD),
+/*JP
     INIT_BLSTAT("time", " T:%s", ANY_LONG, 20, BL_TIME),
+*/
+    INIT_BLSTAT("time", " \95à:%s", ANY_LONG, 20, BL_TIME),
     /* hunger used to be 'ANY_UINT'; see note below in bot_via_windowport() */
     INIT_BLSTAT("hunger", " %s", ANY_INT, 40, BL_HUNGER),
+/*JP
     INIT_BLSTATP("hitpoints", " HP:%s", ANY_INT, 10, BL_HPMAX, BL_HP),
+*/
+    INIT_BLSTATP("hitpoints", " \91Ì:%s", ANY_INT, 10, BL_HPMAX, BL_HP),
     INIT_BLSTAT("hitpoints-max", "(%s)", ANY_INT, 10, BL_HPMAX),
     INIT_BLSTAT("dungeon-level", "%s", ANY_STR, MAXVALWIDTH, BL_LEVELDESC),
     INIT_BLSTATP("experience", "/%s", ANY_LONG, 20, BL_EXP, BL_EXP),
@@ -3089,7 +3122,10 @@ int fld;
     if (fld != BL_CONDITION) {
         any = zeroany;
         any.a_int = onlybeh = BL_TH_ALWAYS_HILITE;
+/*JP
         Sprintf(buf, "Always highlight %s", initblstats[fld].fldname);
+*/
+        Sprintf(buf, "%s\82ð\8fí\82É\83n\83C\83\89\83C\83g", initblstats[fld].fldname);
         add_menu(tmpwin, NO_GLYPH, &any, 'a', 0, ATR_NONE,
                  buf, MENU_UNSELECTED);
         nopts++;
@@ -3099,14 +3135,20 @@ int fld;
         any = zeroany;
         any.a_int = onlybeh = BL_TH_CONDITION;
         add_menu(tmpwin, NO_GLYPH, &any, 'b', 0, ATR_NONE,
+/*JP
                  "Bitmask of conditions", MENU_UNSELECTED);
+*/
+                 "\8fð\8c\8f\82Ì\83r\83b\83g\83}\83X\83N", MENU_UNSELECTED);
         nopts++;
     }
 
     if (fld != BL_CONDITION) {
         any = zeroany;
         any.a_int = onlybeh = BL_TH_UPDOWN;
+/*JP
         Sprintf(buf, "%s value changes", initblstats[fld].fldname);
+*/
+        Sprintf(buf, "%s\82Ì\92l\82Ì\95Ï\8dX", initblstats[fld].fldname);
         add_menu(tmpwin, NO_GLYPH, &any, 'c', 0, ATR_NONE,
                  buf, MENU_UNSELECTED);
         nopts++;
@@ -3117,7 +3159,10 @@ int fld;
         any = zeroany;
         any.a_int = onlybeh = BL_TH_VAL_ABSOLUTE;
         add_menu(tmpwin, NO_GLYPH, &any, 'n', 0, ATR_NONE,
+/*JP
                  "Number threshold", MENU_UNSELECTED);
+*/
+                 "\90\94\92l\82Ìè\87\92l", MENU_UNSELECTED);
         nopts++;
     }
 
@@ -3125,7 +3170,10 @@ int fld;
         any = zeroany;
         any.a_int = onlybeh = BL_TH_VAL_PERCENTAGE;
         add_menu(tmpwin, NO_GLYPH, &any, 'p', 0, ATR_NONE,
+/*JP
                  "Percentage threshold", MENU_UNSELECTED);
+*/
+                 "\8a\84\8d\87\82Ìè\87\92l", MENU_UNSELECTED);
         nopts++;
     }
 
@@ -3133,7 +3181,10 @@ int fld;
         || fld == BL_CAP || fld == BL_HUNGER) {
         any = zeroany;
         any.a_int = onlybeh = BL_TH_TEXTMATCH;
+/*JP
         Sprintf(buf, "%s text match", initblstats[fld].fldname);
+*/
+        Sprintf(buf, "%s\82Ì\83e\83L\83X\83g\82Ì\83}\83b\83`\83\93\83O", initblstats[fld].fldname);
         add_menu(tmpwin, NO_GLYPH, &any, 't', 0, ATR_NONE,
                  buf, MENU_UNSELECTED);
         nopts++;
@@ -3178,18 +3229,31 @@ boolean ltok, gtok;
 
     if (ltok) {
         if (str)
+#if 0 /*JP*/
             Sprintf(buf, "%s than %s",
                     (fld == BL_AC) ? "Better (lower)" : "Less", str);
+#else
+            Sprintf(buf, "%s\82æ\82è%s",
+                    str, (fld == BL_AC) ? "\97Ç\82¢(\8f¬\82³\82¢)" : "\8f¬\82³\82¢");
+#endif
         else
+/*JP
             Sprintf(buf, "Value goes down");
+*/
+            Sprintf(buf, "\92l\82Ì\92á\89º");
         any = zeroany;
         any.a_int = 10 + LT_VALUE;
         add_menu(tmpwin, NO_GLYPH, &any, 0, 0, ATR_NONE,
                  buf, MENU_UNSELECTED);
 
         if (str) {
+#if 0 /*JP*/
             Sprintf(buf, "%s or %s",
                     str, (fld == BL_AC) ? "better (lower)" : "less");
+#else
+            Sprintf(buf, "%s%s",
+                    str, (fld == BL_AC) ? "\82æ\82è\97Ç\82¢(\88È\89º)" : "\88È\89º");
+#endif
             any = zeroany;
             any.a_int = 10 + LE_VALUE;
             add_menu(tmpwin, NO_GLYPH, &any, 0, 0, ATR_NONE,
@@ -3198,9 +3262,15 @@ boolean ltok, gtok;
     }
 
     if (str)
+/*JP
         Sprintf(buf, "Exactly %s", str);
+*/
+        Sprintf(buf, "\82¿\82å\82¤\82Ç%s", str);
     else
+/*JP
         Sprintf(buf, "Value changes");
+*/
+        Sprintf(buf, "\92l\82Ì\95Ï\8dX");
     any = zeroany;
     any.a_int = 10 + EQ_VALUE;
     add_menu(tmpwin, NO_GLYPH, &any, 0, 0, ATR_NONE,
@@ -3208,8 +3278,13 @@ boolean ltok, gtok;
 
     if (gtok) {
         if (str) {
+#if 0 /*JP*/
             Sprintf(buf, "%s or %s",
                     str, (fld == BL_AC) ? "worse (higher)" : "more");
+#else
+            Sprintf(buf, "%s%s",
+                    str, (fld == BL_AC) ? "\82æ\82è\88«\82¢(\88È\8fã)" : "\88È\8fã");
+#endif
             any = zeroany;
             any.a_int = 10 + GE_VALUE;
             add_menu(tmpwin, NO_GLYPH, &any, 0, 0, ATR_NONE,
@@ -3217,16 +3292,27 @@ boolean ltok, gtok;
         }
 
         if (str)
+#if 0 /*JP*/
             Sprintf(buf, "%s than %s",
                     (fld == BL_AC) ? "Worse (higher)" : "More", str);
+#else
+            Sprintf(buf, "%s\82æ\82è%s",
+                    str, (fld == BL_AC) ? "\88«\82¢(\8d\82\82¢)" : "\91å\82«\82¢");
+#endif
         else
+/*JP
             Sprintf(buf, "Value goes up");
+*/
+            Sprintf(buf, "\92l\82Ì\8fã\8f¸");
         any = zeroany;
         any.a_int = 10 + GT_VALUE;
         add_menu(tmpwin, NO_GLYPH, &any, 0, 0, ATR_NONE,
              buf, MENU_UNSELECTED);
     }
+/*JP
     Sprintf(buf, "Select field %s value:", initblstats[fld].fldname);
+*/
+    Sprintf(buf, "\83t\83B\81[\83\8b\83h%s\82Ì\92l:", initblstats[fld].fldname);
     end_menu(tmpwin, buf);
 
     res = select_menu(tmpwin, PICK_ONE, &picks);
@@ -3297,9 +3383,15 @@ choose_value:
 
         lt_gt_eq = NO_LTEQGT; /* not set up yet */
         inbuf[0] = '\0';
+#if 0 /*JP*/
         Sprintf(buf, "Enter %svalue for %s threshold:",
                 percent ? "percentage " : "",
                 initblstats[fld].fldname);
+#else
+        Sprintf(buf, "%s\82Ì%s\82Ìè\87\92l\82ð\93ü\97Í\82µ\82Ä\82­\82¾\82³\82¢:",
+                initblstats[fld].fldname,
+                percent ? "\8a\84\8d\87" : "\92l");
+#endif
         getlin(buf, inbuf);
         if (inbuf[0] == '\0' || inbuf[0] == '\033')
             goto choose_behavior;
@@ -3333,17 +3425,26 @@ choose_value:
         }
         if (*inp == '%') {
             if (!percent) {
+/*JP
                 pline("Not expecting a percentage.");
+*/
+                pline("\8a\84\8d\87\82ð\91z\92è\82µ\82Ä\82¢\82Ü\82¹\82ñ\81D");
                 goto choose_behavior;
             }
             *inp = '\0'; /* strip '%' [this accepts trailing junk!] */
         } else if (*inp) {
             /* some random characters */
+/*JP
             pline("\"%s\" is not a recognized number.", inp);
+*/
+            pline("\"%s\"\82Í\90\94\92l\82Æ\82µ\82Ä\94F\8e¯\82Å\82«\82Ü\82¹\82ñ\81D", inp);
             goto choose_value;
         }
         if (!gotnum) {
+/*JP
             pline("Is that an invisible number?");
+*/
+            pline("\82±\82ê\82Í\8c©\82¦\82È\82¢\90\94\8e\9a\81H");
             goto choose_value;
         }
         op = (lt_gt_eq == LT_VALUE) ? "<"
@@ -3360,7 +3461,10 @@ choose_value:
         if (percent) {
             val = aval.a_int;
             if (initblstats[fld].idxmax == -1) {
+/*JP
                 pline("Field '%s' does not support percentage values.",
+*/
+                pline("\83t\83B\81[\83\8b\83h'%s'\82Í\8a\84\8d\87\82Ì\92l\82É\91Î\89\9e\82µ\82Ä\82¢\82Ü\82¹\82ñ\81D",
                       initblstats[fld].fldname);
                 behavior = BL_TH_VAL_ABSOLUTE;
                 goto choose_value;
@@ -3374,7 +3478,10 @@ choose_value:
                 || (val == 0 && lt_gt_eq == LT_VALUE)
                 || (val == 100 && lt_gt_eq == GT_VALUE)
                 || (val > 100 && (val != 101 || lt_gt_eq != LT_VALUE))) {
+/*JP
                 pline("'%s%d%%' is not a valid percent value.", op, val);
+*/
+                pline("'%s%d%%'\82Í\97L\8cø\82È\8a\84\8d\87\82Ì\92l\82Å\82Í\82 \82è\82Ü\82¹\82ñ\81D", op, val);
                 goto choose_value;
             }
             /* restore suffix for use in color and attribute prompts */
@@ -3409,6 +3516,7 @@ choose_value:
                 goto choose_value;
         }
 
+#if 0 /*JP*/
         Sprintf(colorqry, "Choose a color for when %s is %s%s%s:",
                 initblstats[fld].fldname,
                 (lt_gt_eq == LT_VALUE) ? "less than "
@@ -3418,6 +3526,17 @@ choose_value:
                 (lt_gt_eq == LE_VALUE) ? " or less"
                   : (lt_gt_eq == GE_VALUE) ? " or more"
                     : "");
+#else
+        Sprintf(colorqry, "%s\82ª%s%s\8fê\8d\87\82Ì\90F\82ð\91I\82ñ\82Å\82­\82¾\82³\82¢:",
+                initblstats[fld].fldname,
+                numstart,
+                (lt_gt_eq == LT_VALUE) ? "\82æ\82è\8f¬\82³\82¢"
+                  : (lt_gt_eq == GT_VALUE) ? "\82æ\82è\91å\82«\82¢"
+                  : (lt_gt_eq == LE_VALUE) ? "\88È\89º"
+                  : (lt_gt_eq == GE_VALUE) ? "\88È\8fã"
+                  : "\82Ì");
+#endif
+#if 0 /*JP*/
         Sprintf(attrqry, "Choose attribute for when %s is %s%s%s:",
                 initblstats[fld].fldname,
                 (lt_gt_eq == LT_VALUE) ? "less than "
@@ -3427,6 +3546,16 @@ choose_value:
                 (lt_gt_eq == LE_VALUE) ? " or less"
                   : (lt_gt_eq == GE_VALUE) ? " or more"
                     : "");
+#else
+        Sprintf(attrqry, "%s\82ª%s%s\8fê\8d\87\82Ì\91®\90«\82ð\91I\82ñ\82Å\82­\82¾\82³\82¢:",
+                initblstats[fld].fldname,
+                numstart,
+                (lt_gt_eq == LT_VALUE) ? "\82æ\82è\8f¬\82³\82¢"
+                  : (lt_gt_eq == GT_VALUE) ? "\82æ\82è\91å\82«\82¢"
+                  : (lt_gt_eq == LE_VALUE) ? "\88È\89º"
+                  : (lt_gt_eq == GE_VALUE) ? "\88È\8fã"
+                  : "\82Ì");
+#endif
 
         hilite.rel = lt_gt_eq;
         hilite.value = aval;
@@ -3447,16 +3576,32 @@ choose_value:
                single choice, skip it altogether and just use 'changed' */
             lt_gt_eq = EQ_VALUE;
         }
+#if 0 /*JP:T*/
         Sprintf(colorqry, "Choose a color for when %s %s:",
                 initblstats[fld].fldname,
                 (lt_gt_eq == EQ_VALUE) ? "changes"
                   : (lt_gt_eq == LT_VALUE) ? "decreases"
                     : "increases");
+#else
+        Sprintf(colorqry, "%s\82ª%s\82½\82Æ\82«\82Ì\90F\82ð\91I\82ñ\82Å\82­\82¾\82³\82¢:",
+                initblstats[fld].fldname,
+                (lt_gt_eq == EQ_VALUE) ? "\95Ï\82í\82Á"
+                  : (lt_gt_eq == LT_VALUE) ? "\8c¸\82Á"
+                    : "\91\9d\82¦");
+#endif
+#if 0 /*JP*/
         Sprintf(attrqry, "Choose attribute for when %s %s:",
                 initblstats[fld].fldname,
                 (lt_gt_eq == EQ_VALUE) ? "changes"
                   : (lt_gt_eq == LT_VALUE) ? "decreases"
                     : "increases");
+#else
+        Sprintf(attrqry, "%s\82ª%s\82½\82Æ\82«\82Ì\91®\90«\82ð\91I\82ñ\82Å\82­\82¾\82³\82¢:",
+                initblstats[fld].fldname,
+                (lt_gt_eq == EQ_VALUE) ? "\95Ï\82í\82Á"
+                  : (lt_gt_eq == LT_VALUE) ? "\8c¸\82Á"
+                    : "\91\9d\82¦");
+#endif
         hilite.rel = lt_gt_eq;
     } else if (behavior == BL_TH_CONDITION) {
         cond = query_conditions();
@@ -3465,19 +3610,34 @@ choose_value:
                 goto choose_field;
             return FALSE;
         }
+/*JP
         Sprintf(colorqry, "Choose a color for conditions %s:",
+*/
+        Sprintf(colorqry, "\8fð\8c\8f%s\82Ì\82Æ\82«\82Ì\90F\82ð\91I\82ñ\82Å\82­\82¾\82³\82¢:",
                 conditionbitmask2str(cond));
+/*JP
         Sprintf(attrqry, "Choose attribute for conditions %s:",
+*/
+        Sprintf(attrqry, "\8fð\8c\8f%s\82Ì\82Æ\82«\82Ì\91®\90«\82ð\91I\82ñ\82Å\82­\82¾\82³\82¢:",
                 conditionbitmask2str(cond));
     } else if (behavior == BL_TH_TEXTMATCH) {
         char qry_buf[BUFSZ];
 
+#if 0 /*JP:T*/
         Sprintf(qry_buf, "%s %s text value to match:",
                 (fld == BL_CAP
                  || fld == BL_ALIGN
                  || fld == BL_HUNGER
                  || fld == BL_TITLE) ? "Choose" : "Enter",
                 initblstats[fld].fldname);
+#else
+        Sprintf(qry_buf, "%s\82Ì\83e\83L\83X\83g\92l\82É\83}\83b\83`\83\93\83O\82·\82é\92l\82ð%s\82­\82¾\82³\82¢:",
+                initblstats[fld].fldname,
+                (fld == BL_CAP
+                 || fld == BL_ALIGN
+                 || fld == BL_HUNGER
+                 || fld == BL_TITLE) ? "\91I\82ñ\82Å" : "\93ü\97Í\82µ\82Ä");
+#endif
         if (fld == BL_CAP) {
 #if 0 /*JP*/
             int rv = query_arrayvalue(qry_buf,
@@ -3546,7 +3706,10 @@ choose_value:
                         rolelist[j++] = dupstr(obuf);
                 }
             }
+/*JP
             rolelist[j++] = dupstr("\"none of the above (polymorphed)\"");
+*/
+            rolelist[j++] = dupstr("\"\8fã\82Ì\82Ç\82ê\82Å\82à\82È\82¢(\95Ï\89»\92\86)\"");
 
             rv = query_arrayvalue(qry_buf, rolelist, 0, j);
             if (rv >= 0) {
@@ -3633,7 +3796,10 @@ choose_color:
         tmpattr = hlattr2attrname(atr, attrbuf, BUFSZ);
         if (tmpattr)
             Sprintf(eos(clrbuf), "&%s", tmpattr);
+/*JP
         pline("Added hilite condition/%s/%s",
+*/
+        pline("\83n\83C\83\89\83C\83g\8fð\8c\8f/%s/%s\82ð\92Ç\89Á\82µ\82½\81D",
               conditionbitmask2str(cond), clrbuf);
     } else {
         char *p, *q;
@@ -3647,7 +3813,10 @@ choose_color:
             *p = '\0'; /* chop off " or female-rank" */
             /* new rule for male-rank */
             status_hilite_add_threshold(fld, &hilite);
+/*JP
             pline("Added hilite %s", status_hilite2str(&hilite));
+*/
+            pline("\83n\83C\83\89\83C\83g%s\82ð\92Ç\89Á\82µ\82½\81D", status_hilite2str(&hilite));
             /* transfer female-rank to start of hilite.textmatch buffer */
             p += sizeof " or " - sizeof "";
             q = hilite.textmatch;
@@ -3656,7 +3825,10 @@ choose_color:
             /* proceed with normal addition of new rule */
         }
         status_hilite_add_threshold(fld, &hilite);
+/*JP
         pline("Added hilite %s", status_hilite2str(&hilite));
+*/
+        pline("\83n\83C\83\89\83C\83g%s\82ð\92Ç\89Á\82µ\82½\81D", status_hilite2str(&hilite));
     }
     reset_status_hilites();
     return TRUE;
@@ -3750,7 +3922,10 @@ int fld;
         }
     } else {
         any = zeroany;
+/*JP
         Sprintf(buf, "No current hilites for %s", initblstats[fld].fldname);
+*/
+        Sprintf(buf, "%s\82Ì\8c»\8dÝ\82Ì\83n\83C\83\89\83C\83g\82Í\82 \82è\82Ü\82¹\82ñ", initblstats[fld].fldname);
         add_menu(tmpwin, NO_GLYPH, &any, 0, 0, ATR_NONE, buf, MENU_UNSELECTED);
     }
 
index 73027a4..6cfdd5a 100644 (file)
--- a/src/end.c
+++ b/src/end.c
@@ -802,7 +802,10 @@ dump_plines()
     extern unsigned saved_pline_index;
 
     Strcpy(buf, " "); /* one space for indentation */
+/*JP
     putstr(0, 0, "Latest messages:");
+*/
+    putstr(0, 0, "\8dÅ\8cã\82Ì\83\81\83b\83Z\81[\83W:");
     for (i = 0, j = (int) saved_pline_index; i < DUMPLOG_MSG_COUNT;
          ++i, j = (j + 1) % DUMPLOG_MSG_COUNT) {
         strp = &saved_plines[j];
@@ -837,17 +840,32 @@ time_t when; /* date+time at end of game */
        build date+time or even with an older nethack version,
        but we only have access to the one it finished under */
     putstr(0, 0, getversionstring(pbuf));
+#if 1 /*JP*/
+    putstr(0, 0, version_string_j(pbuf));
+#endif
     putstr(0, 0, "");
 
     /* game start and end date+time to disambiguate version date+time */
     Strcpy(datetimebuf, yyyymmddhhmmss(ubirthday));
+#if 0 /*JP:T*/
     Sprintf(pbuf, "Game began %4.4s-%2.2s-%2.2s %2.2s:%2.2s:%2.2s",
             &datetimebuf[0], &datetimebuf[4], &datetimebuf[6],
             &datetimebuf[8], &datetimebuf[10], &datetimebuf[12]);
+#else
+    Sprintf(pbuf, "\83Q\81[\83\80\8aJ\8en %4.4s-%2.2s-%2.2s %2.2s:%2.2s:%2.2s",
+            &datetimebuf[0], &datetimebuf[4], &datetimebuf[6],
+            &datetimebuf[8], &datetimebuf[10], &datetimebuf[12]);
+#endif
     Strcpy(datetimebuf, yyyymmddhhmmss(when));
+#if 0 /*JP*/
     Sprintf(eos(pbuf), ", ended %4.4s-%2.2s-%2.2s %2.2s:%2.2s:%2.2s.",
             &datetimebuf[0], &datetimebuf[4], &datetimebuf[6],
             &datetimebuf[8], &datetimebuf[10], &datetimebuf[12]);
+#else
+    Sprintf(eos(pbuf), ", \8fI\97¹ %4.4s-%2.2s-%2.2s %2.2s:%2.2s:%2.2s.",
+            &datetimebuf[0], &datetimebuf[4], &datetimebuf[6],
+            &datetimebuf[8], &datetimebuf[10], &datetimebuf[12]);
+#endif
     putstr(0, 0, pbuf);
     putstr(0, 0, "");
 
@@ -867,7 +885,10 @@ time_t when; /* date+time at end of game */
 
     dump_plines();
     putstr(0, 0, "");
+/*JP
     putstr(0, 0, "Inventory:");
+*/
+    putstr(0, 0, "\8e\9d\82¿\95¨:");
     (void) display_inventory((char *) 0, TRUE);
     container_contents(invent, TRUE, TRUE, FALSE);
     enlightenment((BASICENLIGHTENMENT | MAGICENLIGHTENMENT),
@@ -2330,7 +2351,11 @@ boolean ask;
         pline("\93|\82µ\82½\93G\82Í\82¢\82È\82©\82Á\82½\81D");
 #ifdef DUMPLOG
     } else if (dumping) {
+#if 0 /*JP:T*/
         putstr(0, 0, "No creatures were vanquished."); /* not pline() */
+#else
+        putstr(0, 0, "\93|\82µ\82½\93G\82Í\82¢\82È\82©\82Á\82½\81D"); /* not pline() */
+#endif
 #endif
     }
 }
@@ -2459,7 +2484,10 @@ boolean ask;
         }
 #ifdef DUMPLOG
     } else if (dumping) {
+/*JP
         putstr(0, 0, "No species were genocided or became extinct.");
+*/
+        putstr(0, 0, "\8bs\8eE\82µ\82½\82è\90â\96Å\82³\82¹\82½\82è\82µ\82½\8eí\82Í\82¢\82È\82©\82Á\82½\81D");
 #endif
     }
 }
index 38bd6df..6af7d2c 100644 (file)
@@ -5451,7 +5451,10 @@ boolean setinitial, setfromfile;
                 if (*disclosure_names[i] == 'v') {
                     any.a_char = DISCLOSE_SPECIAL_WITHOUT_PROMPT; /* '#' */
                     add_menu(tmpwin, NO_GLYPH, &any, 0, any.a_char, ATR_NONE,
+/*JP
                              "Always disclose, pick sort order from menu",
+*/
+                             "\83\81\83j\83\85\81[\82©\82ç\83\\81[\83g\8f\87\82ð\91I\82ñ\82Å\8fí\82É\8fo\97Í\82·\82é",
                              (c == any.a_char) ? MENU_SELECTED
                                                : MENU_UNSELECTED);
                 }
@@ -5472,7 +5475,10 @@ boolean setinitial, setfromfile;
                 if (*disclosure_names[i] == 'v') {
                     any.a_char = DISCLOSE_PROMPT_DEFAULT_SPECIAL; /* '?' */
                     add_menu(tmpwin, NO_GLYPH, &any, 0, any.a_char, ATR_NONE,
+/*JP
                 "Prompt, with default answer of \"Ask\" to request sort menu",
+*/
+                "\8am\94F\82·\82é\81C\83\\81[\83g\83\81\83j\83\85\81[\82ð\97v\8b\81\82·\82é\95W\8f\80\82Ì\93\9a\82¦\82Í \"Ask\"",
                              (c == any.a_char) ? MENU_SELECTED
                                                : MENU_UNSELECTED);
                 }
index 0810b96..2b1f0bd 100644 (file)
@@ -40,6 +40,15 @@ char *buf;
     return strcpy(buf, VERSION_STRING);
 }
 
+#if 1 /*JP*/
+char *
+version_string_j(buf)
+char *buf;
+{
+    return strcpy(buf, JVERSION_ID);
+}
+#endif
+
 /* fill and return the given buffer with the long nethack version string */
 char *
 getversionstring(buf)
@@ -96,7 +105,7 @@ doversion()
 
     pline("%s", getversionstring(buf));
 #if 1 /*JP*/
-    pline("%s", JVERSION_ID);
+    pline("%s", version_string_j(buf));
 #endif
     return 0;
 }
@@ -126,6 +135,11 @@ doextversion()
         putstr(win, 0, p);
     }
 
+#if 1 /*JP*/
+    (void) version_string_j(buf);
+    putstr(win, 0, buf);
+#endif
+
     f = dlb_fopen(OPTIONS_USED, "r");
     if (!f) {
         putstr(win, 0, "");
index 62537af..66fe961 100644 (file)
@@ -1559,16 +1559,33 @@ build_savebones_compat_string()
 #ifdef VERSION_COMPATIBILITY
     unsigned long uver = VERSION_COMPATIBILITY;
 #endif
+#if 0 /*JP*/
     Strcpy(save_bones_compat_buf,
            "save and bones files accepted from version");
+#else
+    Strcpy(save_bones_compat_buf,
+           "\8eg\82¦\82é\83Z\81[\83u\82Æ\8d\9c\83t\83@\83C\83\8b\82Í\83o\81[\83W\83\87\83\93");
+#endif
 #ifdef VERSION_COMPATIBILITY
+#if 0 /*JP*/
     Sprintf(eos(save_bones_compat_buf), "s %lu.%lu.%lu through %d.%d.%d",
             ((uver & 0xFF000000L) >> 24), ((uver & 0x00FF0000L) >> 16),
             ((uver & 0x0000FF00L) >> 8), VERSION_MAJOR, VERSION_MINOR,
             PATCHLEVEL);
 #else
+    Sprintf(eos(save_bones_compat_buf), "%lu.%lu.%lu\82©\82ç%d.%d.%d",
+            ((uver & 0xFF000000L) >> 24), ((uver & 0x00FF0000L) >> 16),
+            ((uver & 0x0000FF00L) >> 8), VERSION_MAJOR, VERSION_MINOR,
+            PATCHLEVEL);
+#endif
+#else
+#if 0 /*JP*/
     Sprintf(eos(save_bones_compat_buf), " %d.%d.%d only", VERSION_MAJOR,
             VERSION_MINOR, PATCHLEVEL);
+#else
+    Sprintf(eos(save_bones_compat_buf), "%d.%d.%d\82Ì\82Ý", VERSION_MAJOR,
+            VERSION_MINOR, PATCHLEVEL);
+#endif
 #endif
 }
 
@@ -1580,11 +1597,17 @@ static const char *build_opts[] = {
     "ANSI default terminal",
 #endif
 #ifdef TEXTCOLOR
+/*JP
     "color",
+*/
+    "\83J\83\89\81[",
 #endif
 #ifdef TTY_GRAPHICS
 #ifdef TTY_TILES_ESCCODES
+/*JP
     "console escape codes for tile hinting",
+*/
+    "\83^\83C\83\8b\82Ì\83q\83\93\83g\82Ì\82½\82ß\82Ì\83R\83\93\83\\81[\83\8b\83G\83X\83P\81[\83v\83R\81[\83h",
 #endif
 #endif
 #ifdef COM_COMPL
@@ -1601,16 +1624,28 @@ static const char *build_opts[] = {
 #endif
 #ifdef DLB
 #ifndef VERSION_IN_DLB_FILENAME
+/*JP
     "data librarian",
+*/
+    "\83f\81[\83^\83t\83@\83C\83\8b",
 #else
+/*JP
     "data librarian with a version-dependent name",
+*/
+    "\83o\81[\83W\83\87\83\93\88Ë\91\83t\83@\83C\83\8b\96¼\82ª\95t\82¢\82½\83f\81[\83^\83t\83@\83C\83\8b",
 #endif
 #endif
 #ifdef DUMPLOG
+/*JP
     "end-of-game dumplogs",
+*/
+    "\83Q\81[\83\80\8fI\97¹\8e\9e\83f\81[\83^\83_\83\93\83v",
 #endif
 #ifdef HOLD_LOCKFILE_OPEN
+/*JP
     "exclusive lock on level 0 file",
+*/
+    "\83\8c\83x\83\8b0\83t\83@\83C\83\8b\82Å\82Ì\94r\91¼\83\8d\83b\83N",
 #endif
 #if defined(MSGHANDLER) && (defined(POSIX_TYPES) || defined(__GNUC__))
     "external program as a message handler",
@@ -1619,16 +1654,28 @@ static const char *build_opts[] = {
     "floppy drive support",
 #endif
 #ifdef INSURANCE
+/*JP
     "insurance files for recovering from crashes",
+*/
+    "\83N\83\89\83b\83V\83\85\82©\82ç\82Ì\95\9c\8b\8c\82Ì\82½\82ß\82Ì\95Û\8c¯\83t\83@\83C\83\8b",
 #endif
 #ifdef LOGFILE
+/*JP
     "log file",
+*/
+    "\83\8d\83O\83t\83@\83C\83\8b",
 #endif
 #ifdef XLOGFILE
+/*JP
     "extended log file",
+*/
+    "\8ag\92£\83\8d\83O\83t\83@\83C\83\8b",
 #endif
 #ifdef PANICLOG
+/*JP
     "errors and warnings log file",
+*/
+    "\83G\83\89\81[\82Æ\8cx\8d\90\82Ì\83\8d\83O\83t\83@\83C\83\8b",
 #endif
 #ifdef MAIL
     "mail daemon",
@@ -1637,7 +1684,10 @@ static const char *build_opts[] = {
     "MSDOS protected mode",
 #endif
 #ifdef NEWS
+/*JP
     "news file",
+*/
+    "\83j\83\85\81[\83X\83t\83@\83C\83\8b",
 #endif
 #ifdef OVERLAY
 #ifdef MOVERLAY
@@ -1651,62 +1701,116 @@ static const char *build_opts[] = {
 #endif
 #endif
     /* pattern matching method will be substituted by nethack at run time */
+/*JP
     "pattern matching via :PATMATCH:",
+*/
+    ":PATMATCH:\82É\82æ\82é\83p\83^\81[\83\93\83}\83b\83`\83\93\83O",
 #ifdef USE_ISAAC64
+/*JP
     "pseudo random numbers generated by ISAAC64",
+*/
+    "ISAAC64\82É\82æ\82é\8b^\8e\97\97\90\90\94",
 #ifdef DEV_RANDOM
 #ifdef NHSTDC
     /* include which specific one */
+/*JP
     "strong PRNG seed available from " DEV_RANDOM,
+*/
+    DEV_RANDOM "\82É\82æ\82é\8b­\97Í\82È\8b^\8e\97\97\90\90\94\82Ì\8eí",
 #else
+/*JP
     "strong PRNG seed available from DEV_RANDOM",
+*/
+    "DEV_RANDOM\82É\82æ\82é\8b­\97Í\82È\8b^\8e\97\97\90\90\94\82Ì\8eí",
 #endif
 #else
 #ifdef WIN32
+/*JP
     "strong PRNG seed available from CNG BCryptGenRandom()",
+*/
+    "CNG BCryptGenRandom()\82É\82æ\82é\8b­\97Í\82È\8b^\8e\97\97\90\90\94\82Ì\8eí",
 #endif
 #endif  /* DEV_RANDOM */    
 #else   /* ISAAC64 */
 #ifdef RANDOM
+/*JP
     "pseudo random numbers generated by random()",
+*/
+    "random()\82É\82æ\82é\8b^\8e\97\97\90\90\94",
 #else
+/*JP
     "pseudo random numbers generated by C rand()",
+*/
+    "C rand()\82É\82æ\82é\8b^\8e\97\97\90\90\94",
 #endif
 #endif
 #ifdef SELECTSAVED
+/*JP
     "restore saved games via menu",
+*/
+    "\83Z\81[\83u\83f\81[\83^\82Ì\83\81\83j\83\85\81[\91I\91ð",
 #endif
 #ifdef SCORE_ON_BOTL
+/*JP
     "score on status line",
+*/
+    "\83X\83e\81[\83^\83X\8ds\82Ì\83X\83R\83A\95\\8e¦",
 #endif
 #ifdef CLIPPING
+/*JP
     "screen clipping",
+*/
+    "\89æ\96Ê\82Ì\83N\83\8a\83b\83s\83\93\83O",
 #endif
 #ifdef NO_TERMS
 #ifdef MAC
+/*JP
     "screen control via mactty",
+*/
+    "mactty\82É\82æ\82é\89æ\96Ê\90§\8cä",
 #endif
 #ifdef SCREEN_BIOS
+/*JP
     "screen control via BIOS",
+*/
+    "BIOS\82É\82æ\82é\89æ\96Ê\90§\8cä",
 #endif
 #ifdef SCREEN_DJGPPFAST
+/*JP
     "screen control via DJGPP fast",
+*/
+    "DJGPP fast\82É\82æ\82é\89æ\96Ê\90§\8cä",
 #endif
 #ifdef SCREEN_VGA
+/*JP
     "screen control via VGA graphics",
+*/
+    "VGA\83O\83\89\83t\83B\83b\83N\82É\82æ\82é\89æ\96Ê\90§\8cä",
 #endif
 #ifdef WIN32CON
+/*JP
     "screen control via WIN32 console I/O",
+*/
+    "WIN32\83R\83\93\83\\81[\83\8bI/O\82É\82æ\82é\89æ\96Ê\90§\8cä",
 #endif
 #endif
 #ifdef SHELL
     "shell command",
 #endif
+/*JP
     "traditional status display",
+*/
+    "\93`\93\9d\93I\82È\83X\83e\81[\83^\83X\95\\8e¦",
 #ifdef STATUS_HILITES
+/*JP
     "status via windowport with highlighting",
+*/
+    "\83n\83C\83\89\83C\83g\95t\82«\82Ì\83E\83B\83\93\83h\83E\82É\82æ\82é\83X\83e\81[\83^\83X",
 #else
+/*JP
     "status via windowport without highlighting",
+*/
+    "\83n\83C\83\89\83C\83g\82È\82µ\82Ì\83E\83B\83\93\83h\83E\82É\82æ\82é\83X\83e\81[\83^\83X",
 #endif
 #ifdef SUSPEND
     "suspend command",
@@ -1734,7 +1838,10 @@ static const char *build_opts[] = {
     "timed wait for display effects",
 #endif
 #ifdef USER_SOUNDS
+/*JP
     "user sounds",
+*/
+    "\83T\83E\83\93\83h",
 #endif
 #ifdef PREFIXES_IN_USE
     "variable playground",
@@ -1749,10 +1856,16 @@ static const char *build_opts[] = {
     "run-length compression of map in save files",
 #endif
 #ifdef SYSCF
+/*JP
     "system configuration at run-time",
+*/
+    "\8eÀ\8ds\8e\9e\90Ý\92è\83t\83@\83C\83\8b",
 #endif
     save_bones_compat_buf,
+/*JP
     "and basic NetHack features"
+*/
+    "JNetHack\8aî\96{\8b@\94\"
 };
 
 struct win_info {
@@ -1772,12 +1885,18 @@ static struct win_info window_opts[] = {
 #else
       /* assume that one or more of IBMgraphics, DECgraphics, or MACgraphics
          can be enabled; we can't tell from here whether that is accurate */
+/*JP
       "traditional text with optional line-drawing"
+*/
+      "\93`\93\9d\93I\82È\83e\83L\83X\83g\95\\8e¦"
 #endif
     },
 #endif
 #ifdef CURSES_GRAPHICS
+/*JP
     { "curses", "terminal-based graphics" },
+*/
+    { "curses", "\92[\96\96\83x\81[\83X\83O\83\89\83t\83B\83b\83N" },
 #endif
 #ifdef X11_GRAPHICS
     { "X11", "X11" },
@@ -1910,7 +2029,10 @@ do_options()
 #endif
             );
 
+/*JP
     Fprintf(ofp, "\nOptions compiled into this edition:\n");
+*/
+    Fprintf(ofp, "\n\83R\83\93\83p\83C\83\8b\8e\9e\83I\83v\83V\83\87\83\93:\n");
     length = COLNO + 1; /* force 1st item onto new line */
     for (i = 0; i < SIZE(build_opts); i++) {
         opt_out_words(strcat(strcpy(buf, build_opts[i]),
@@ -1920,8 +2042,12 @@ do_options()
     Fprintf(ofp, "\n"); /* terminate last line of words */
 
     winsyscnt = SIZE(window_opts) - 1;
+#if 0 /*JP:T*/
     Fprintf(ofp, "\nSupported windowing system%s:\n",
             (winsyscnt > 1) ? "s" : "");
+#else
+    Fprintf(ofp, "\n\91Î\89\9e\83E\83B\83\93\83h\83E\83V\83X\83e\83\80:\n");
+#endif
     length = COLNO + 1; /* force 1st item onto new line */
     for (i = 0; i < winsyscnt; i++) {
         Sprintf(buf, "\"%s\"", window_opts[i].id);
@@ -1932,14 +2058,25 @@ do_options()
          * 2 : foo and bar  (note no period; comes from 'with default' below)
          * 3+: for, bar, and quux
          */
+#if 0 /*JP*/
         opt_out_words(strcat(buf, (winsyscnt == 1) ? "." /* no 'default' */
                                   : (winsyscnt == 2 && i == 0) ? " and"
                                     : (i == winsyscnt - 2) ? ", and"
                                       : ","),
                       &length);
+#else
+        opt_out_words(strcat(buf, (winsyscnt == 1) ? "." /* no 'default' */
+                                  : (winsyscnt == 2 && i == 0) ? ", "
+                                    : (i == winsyscnt - 2) ? ", "
+                                      : ","),
+                      &length);
+#endif
     }
     if (winsyscnt > 1) {
+/*JP
         Sprintf(buf, "with a default of \"%s\".", DEFAULT_WINDOW_SYS);
+*/
+        Sprintf(buf, "\83f\83t\83H\83\8b\83g\82Í\"%s\".", DEFAULT_WINDOW_SYS);
         opt_out_words(buf, &length);
     }
     Fprintf(ofp, "\n"); /* terminate last line of words */
index 8224c60..2fc7702 100644 (file)
@@ -3931,6 +3931,7 @@ static struct condition_t {
     const char *text[3]; /* 3: potential display vals, progressively shorter */
 } conditions[] = {
     /* The sequence order of these matters */
+#if 0 /*JP*/
     { BL_MASK_STONE,    { "Stone",    "Ston",  "Sto" } },
     { BL_MASK_SLIME,    { "Slime",    "Slim",  "Slm" } },
     { BL_MASK_STRNGL,   { "Strngl",   "Stngl", "Str" } },
@@ -3944,11 +3945,32 @@ static struct condition_t {
     { BL_MASK_LEV,      { "Lev",      "Lev",   "Lv"  } },
     { BL_MASK_FLY,      { "Fly",      "Fly",   "Fl"  } },
     { BL_MASK_RIDE,     { "Ride",     "Rid",   "Rd"  } },
+#else
+    { BL_MASK_STONE,    { "\90Î\89»",     "\90Î\89»", "\90Î" } },
+    { BL_MASK_SLIME,    { "\82Ç\82ë\82Ç\82ë", "\82Ç\82ë", "\82Ç" } },
+    { BL_MASK_STRNGL,   { "\92\82\91§",     "\92\82\91§", "\92\82" } },
+    { BL_MASK_FOODPOIS, { "\90H\93Å",     "\90H\93Å", "\93Å" } },
+    { BL_MASK_TERMILL,  { "\95a\8bC",     "\95a\8bC", "\95a" } },
+    { BL_MASK_BLIND,    { "\96Ó\96Ú",     "\96Ó\96Ú", "\96Ó" } },
+    { BL_MASK_DEAF,     { "\8e¨\98W",     "\8e¨\98W", "\98W" } },
+    { BL_MASK_STUN,     { "á¿\9dò",     "á¿\9dò", "á¿" } },
+    { BL_MASK_CONF,     { "\8d¬\97\90",     "\8d¬\97\90", "\8d¬" } },
+    { BL_MASK_HALLU,    { "\8c\8ao",     "\8c\8ao", "\8c¶" } },
+    { BL_MASK_LEV,      { "\95\82\97V",     "\95\82\97V", "\95\82" } },
+    { BL_MASK_FLY,      { "\94ò\8ds",     "\94ò\8ds", "\94ò" } },
+    { BL_MASK_RIDE,     { "\8bR\8fæ",     "\8bR\8fæ", "\8bR" } },
+#endif
 };
 static const char *encvals[3][6] = {
+#if 0 /*JP*/
     { "", "Burdened", "Stressed", "Strained", "Overtaxed", "Overloaded" },
     { "", "Burden",   "Stress",   "Strain",   "Overtax",   "Overload"   },
     { "", "Brd",      "Strs",     "Strn",     "Ovtx",      "Ovld"       }
+#else
+    { "", "\82æ\82ë\82ß\82«", "\88³\94\97", "\8cÀ\8aE", "\89×\8fd", "\92´\89ß" },
+    { "", "\82æ\82ë",     "\88³\94\97", "\8cÀ\8aE", "\89×\8fd", "\92´\89ß" },
+    { "", "\82æ",       "\88³",   "\8cÀ",   "\8fd",   "\92´"   },
+#endif
 };
 #define blPAD BL_FLUSH
 #define MAX_PER_ROW 15