/*
 * Wine command prompt
 * Japanese Language Support
 *
 * Copyright (C) 2004 Hajime Segawa
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

#include "wcmd.h"

/* UTF-8 */
#pragma code_page(65001)

LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT

STRINGTABLE
{
  WCMD_ATTRIB, "ATTRIBのヘルプ\n"
  WCMD_CALL,
"CALL <バッチファイル名> は他のバッチファイルからコマンドを実行する場合\n\
にバッチファイル中で使用します。バッチファイル終了時にコントロールは呼\n\
び出したファイルに戻ります。 CALL コマンドは呼び出される手続きにパラメ\n\
ータを渡すことが可能です。\n\
\n\
呼び出された手続きが行ったカレントディレクトリや環境変数の変更は呼び出\n\
し元に引き継がれます。\n"

  WCMD_CD,     "CDのヘルプ\n"
  WCMD_CHDIR,  "CHDIRのヘルプ\n"

  WCMD_CLS,    "CLSはコンソール画面をクリアします\n"

  WCMD_COPY,   "COPYのヘルプ\n"
  WCMD_CTTY,   "CTTYのヘルプ\n"
  WCMD_DATE,   "DATEのヘルプ\n"
  WCMD_DEL,    "DELのヘルプ\n"
  WCMD_DIR,    "DIRのヘルプ\n"

  WCMD_ECHO,
"ECHO <文字列> は<文字列>を現在のターミナルに表示します。\n\
\n\
ECHO ON は以降にバッチファイルで実行するコマンドを実行前に\n\
ターミナルに表示するようにします。\n\
\n\
ECHO OFF はECHO ONの逆の効果を持ちます。 (ECHOはデフォルト\n\
ではOFFです)。ECHO OFF コマンドは@マークに続けて実行すれば\n\
表示されません。\n"

  WCMD_ERASE,  "ERASEのヘルプ\n"

  WCMD_FOR,
"FOR コマンドはそれぞれのファイルに対してコマンドを実行する\n\
場合に使用します。\n\
\n\
文法: FOR %変数 IN (セット) DO コマンド\n\
\n\
cmd内に存在しないバッチファイル中でFORを使用する場合は%記号\n\
を二重にする必要があります。\n"

  WCMD_GOTO,
"GOTO コマンドはバッチファイル中で実行行を他のステートメントに\n\
移します。\n\
\n\
GOTO 文のターゲットとなるラベルは半角255文字以内ですが、空白\n\
を含んではいけません。(これは他のオペレーティングシステムでは\n\
異なります)。二つ以上同一のラベルが存在する場合は常に最初の物\n\
が実行されます。GOTO文に存在しないラベルを指定した場合はバッ\n\
チファイルの実行を中断します。\n\
\n\
GOTO は対話モードで使用された場合は意味を持ちません。\n"

  WCMD_HELP,   "HELPのヘルプ\n"

  WCMD_IF,
"IF は条件に基づいてコマンドを実行する場合に使用します。\n\
\n\
文法:	IF [NOT] EXIST ファイル名 コマンド\n\
	IF [NOT] 文字列1==文字列2 コマンド\n\
	IF [NOT] ERRORLEVEL 番号 コマンド\n\
\n\
二番目の形式において、文字列1と文字列2はダブルクオートで囲われ\n\
ていなければなりません。大文字と小文字は区別されません。\n"

  WCMD_LABEL,  "LABEL はディスクのボリュームラベルを設定する場合に使用します。\n\
\n\
文法: LABEL [ドライブ:]\n\
コマンドを実行すると指定したドライブの新しいボリューム名を要求します。\n\
ディスクのボリュームラベルはVOLコマンドで表示できます。\n"

  WCMD_MD,     "MDのヘルプ\n"
  WCMD_MKDIR,  "MKDIRのヘルプ\n"
  WCMD_MOVE,
"MOVE はファイルまたはディレクトリをファイルシステム中で新しい場所に移動します。\n\
\n\
移動する対象がディレクトリの場合は、ディレクトリ内の全てのファ\n\
イルとサブディレクトリも移動します。\n\
\n\
MOVE では移動元と移動先のドライブレターが異なる場合、移動は失敗します。\n"

  WCMD_PATH,
"PATH はcmdの検索パスを表示または変更します。\n\
\n\
PATH と入力すると現在のパス設定を表示します(初期状態では\n\
wine.confファイル中で指定された物になっています)。設定を\n\
変更するには、PATHコマンドに続けて新しい設定値を入力して\n\
下さい。\n\
\n\
パスを変更するときにPATH環境変数を使用することも可能です。\n\
例えば：\n\
		PATH %PATH%;c:\\temp\n"

  WCMD_PAUSE,
"PAUSE は画面に「続けるにはリターンキーを押して下さい」と\n\
表示し、ユーザがリターンキーを押すのを待機します。これは\n\
主にバッチファイル中で実行されたコマンドの結果がスクロー\n\
ルする前にユーザが読めるようにしたい場合に有用です。\n"

  WCMD_PROMPT,
"PROMPT はコマンドプロンプトを設定します。\n\
\n\
PROMPT コマンド(と直後のスペース)に続く文字列はcmdが入力待ちの時、\n\
行の先頭に表示されます。\n\
\n\
以下のキャラクタ文字列は特別な意味を持ちます：\n\
\n\
$$    ドル記号            $_    改行                $b    パイプ記号 (|)\n\
$d    現在の日付          $e    エスケープ          $g    > 記号\n\
$l    < 記号              $n    現在のドライブ      $p    現在のパス\n\
$q    等号                $t    現在の時刻          $v    cmdのバージョン\n\
\n\
注意：PROMPTコマンドをプロンプト文字列なしで実行すると、デフォルト値にリ\n\
セットされます。 デフォルト値はカレントディレクトリ(ドライブ名を含みます)\n\
に続いて大なり(>)記号です。\n\
(PROMPT $p$g を実行した時と同様です)\n\
\n\
プロンプトはPROMPT環境変数を編集することでも変更できます。\n\
したがって、'SET PROMPT=文字列'と'PROMPT 文字列'の効果は同じです。\n"

  WCMD_REM,
"REM(と直後のスペース)で始まるコマンドは実行されません。\n\
したがって、バッチファイル中のコメントとして使用できます。\n"

  WCMD_REN,    "RENのヘルプ\n"
  WCMD_RENAME, "RENAMEのヘルプ\n"
  WCMD_RD,     "RDのヘルプ\n"
  WCMD_RMDIR,  "RMDIRのヘルプ\n"

  WCMD_SET,
"SET はcmdの環境変数を表示または変更します。\n\
\n\
パラメータなしでSETを実行すると、現在の全ての環境変数を表示します。\n\
\n\
環境変数の作成または変更を行う場合は次のように記述して下さい：\n\
\n\
      SET <環境変数名>=<値>\n\
\n\
<環境変数名> と <値> は文字列です。等号の手前にスペースを\n\
入れないで下さい。手前にスペースを入れると環境変数名に余分\n\
なスペースが含まれてしまう場合があります。\n\
\n\
Wine環境では、Wineが動作しているOSの環境変数がWin32環境変数に含\n\
まれます。したがって、ネイティブWin32環境より多くの値がセットさ\n\
れています。cmd内からOSの環境変数を変更することができないこと\n\
に注意して下さい。\n"

  WCMD_SHIFT,
"SHIFT はバッチファイル中でリストの先頭から一つのパラメータを取り除く時\n\
に使用します。つまり、パラメータ2がパラメータ1になります。コマンドライン\n\
から呼ばれたときには何も起こりません。\n"

  WCMD_TIME,   "TIMEのヘルプ\n"

  WCMD_TITLE,  "cmdウィンドウのウィンドウタイトルを設定します。文法 TITLE [文字列]\n"

  WCMD_TYPE,
"TYPE <ファイル名> は <ファイル名> をコンソールデバイス(又はリダイレクト\n\
された所)にコピーします。ファイルが可読なテキストファイルかどうかチェック\n\
されません。\n"

  WCMD_VERIFY,
"VERIFY はverifyフラグをセット、クリア、又はテストする時に使用します。有効なフォームは:\n\
\n\
VERIFY ON	フラグをセット\n\
VERIFY OFF	フラグをクリア\n\
VERIFY		ONかOFFか表示\n\
\n\
Wine環境ではverifyフラグは意味を持ちません。\n"

  WCMD_VER,
"VER は動作しているcmdのバージョンを表示します\n"

  WCMD_VOL,    "VOLのヘルプ\n"

  WCMD_PUSHD,  "PUSHD <directoryname> saves the current directory onto a\n\
stack, and then changes the current directory to the supplied one.\n"

  WCMD_POPD,   "POPD changes current directory to the last one saved with\n\
PUSHD.\n"

  WCMD_MORE,   "MORE displays output of files or piped input in pages.\n"

  WCMD_EXIT,
"EXIT は現在のコマンドセッションを終了してcmdを呼び出したOSまたはシェルに戻します。\n"

  WCMD_ALLHELP, "CMD 内蔵のコマンド:\n\
ATTRIB\t\tDOSファイルの属性を表示又は変更\n\
CALL\t\t外部のバッチファイルを呼び出し\n\
CD (CHDIR)\tカレントディレクトリを変更\n\
CLS\t\tコンソール画面をクリア\n\
COPY\t\tファイルをコピー\n\
CTTY\t\t入力/出力デバイスを変更\n\
DATE\t\tシステムの日付を表示又は変更\n\
DEL (ERASE)\tファイルを削除\n\
DIR\t\tディレクトリの内容を表示\n\
ECHO\t\t文字列を直接コンソール出力にコピー\n\
HELP\t\tトピックの詳細なヘルプを表示\n\
MD (MKDIR)\tサブディレクトリを作成\n\
MORE\t\tDisplay output in pages\n\
MOVE\t\tファイルまたはディレクトリツリーを移動\n\
PATH\t\tパスを表示又は設定\n\
POPD\t\tRestores the directory to the last one saved with PUSHD\n\
PROMPT\t\tコマンドプロンプトを変更\n\
PUSHD\t\tChanges to a new directory, saving the current one\n\
REN (RENAME)\tファイルをリネーム\n\
RD (RMDIR)\tサブディレクトリを削除\n\
SET\t\t環境変数を設定又は表示\n\
TIME\t\tシステムの時刻を設定又は表示\n\
TITLE\t\tCMDセッションのウィンドウタイトルを設定\n\
TYPE\t\tテキストファイルの内容を出力\n\
VER\t\tCMDのバージョンを表示\n\
VOL\t\tディスクデバイスのボリュームラベルを表示\n\
EXIT\t\tCMDを終了\n\n\
上記のコマンドに関する詳細を表示するには HELP <コマンド名> と入力して下さい。\n"

  WCMD_CONFIRM, "Are you sure"
  WCMD_YES, "Y"
  WCMD_NO, "N"
  WCMD_NOASSOC, "File association missing for extension %s\n"
  WCMD_NOFTYPE, "No open command associated with file type '%s'\n"
  WCMD_OVERWRITE, "Overwrite %s"
  WCMD_MORESTR, "More..."
  WCMD_TRUNCATEDLINE, "Line in Batch processing possibly truncated. Using:\n"
  WCMD_NYI, "Not Yet Implemented\n\n"
  WCMD_NOARG, "Argument missing\n"
  WCMD_SYNTAXERR, "Syntax error\n"
  WCMD_FILENOTFOUND, "%s : File Not Found\n"
  WCMD_NOCMDHELP, "No help available for %s\n"
  WCMD_NOTARGET, "Target to GOTO not found\n"
  WCMD_CURRENTDATE, "Current Date is %s\n"
  WCMD_CURRENTTIME, "Current Time is %s\n"
  WCMD_NEWDATE, "Enter new date: "
  WCMD_NEWTIME, "Enter new time: "
  WCMD_MISSINGENV, "Environment variable %s not defined\n"
  WCMD_READFAIL, "Failed to open '%s'\n"
  WCMD_CALLINSCRIPT, "Cannot call batch label outside of a batch script\n"
  WCMD_ALL, "A"
  WCMD_DELPROMPT, "%s, Delete"
  WCMD_ECHOPROMPT, "Echo is %s\n"
  WCMD_VERIFYPROMPT, "Verify is %s\n"
  WCMD_VERIFYERR, "Verify must be ON or OFF\n";
  WCMD_ARGERR, "Parameter error\n"
  WCMD_VOLUMEDETAIL, "Volume in drive %c is %s\nVolume Serial Number is %04x-%04x\n\n"
  WCMD_VOLUMEPROMPT, "Volume label (11 characters, ENTER for none)?"
  WCMD_NOPATH, "PATH not found\n"
  WCMD_ANYKEY,"Press Return key to continue: "
  WCMD_CONSTITLE,"Wine Command Prompt"
  WCMD_VERSION,"CMD Version %s\n\n"
  WCMD_MOREPROMPT, "More? "
  WCMD_LINETOOLONG, "The input line is too long.\n"
}
