# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR The R Foundation
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0 \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-03-29 07:06-0700\n"
"PO-Revision-Date: 2014-03-26 13:56+0200 \n"
"Last-Translator: Masafumi  \n"
"Language-Team: RjpWiki Message Translation Team <mokada@md.tsukuba.ac.jp> \n"
"Language: ja \n"
"MIME-Version: 1.0 \n"
"Content-Type: text/plain; charset=UTF-8 \n"
"Content-Transfer-Encoding: 8bit \n"
"Plural-Forms: nplurals=1; plural=0; \n"
"X-Generator: Pootle 2.0.5 \n"

#: Rmd5.c:36
msgid "argument 'files' must be character"
msgstr " 引数 'files' は文字型でなければなりません "

#: Rmd5.c:50
#, c-format
msgid "md5 failed on file '%s'"
msgstr " md5 はファイル '%s' で失敗しました "

#: getfmts.c:61
#, c-format
msgid "only %d arguments are allowed"
msgstr " 引数は %d 個までです "

#: getfmts.c:66
msgid "'fmt' is not a character vector"
msgstr " 'fmt' は文字ベクトルではありません "

#: getfmts.c:69
msgid "'fmt' must be length 1"
msgstr " 'fmt' の長さは 1 でなければなりません "

#: getfmts.c:75
#, c-format
msgid "'fmt' length exceeds maximal format length %d"
msgstr " 'fmt' の長さがフォーマットの最大長 %d を越えています "

#: getfmts.c:96
#, c-format
msgid "unrecognised format specification '%s'"
msgstr " 識別不能なフォーマット指定 '%s' です "

#: getfmts.c:136
msgid "at most one asterisk '*' is supported in each conversion specification"
msgstr " 各変換指定に許されるアステリスク '*' は多くても一つです "

#: gramLatex.c:2376 gramRd.c:3898
#, c-format
msgid "unable to allocate buffer for long string at line %d"
msgstr " %d 行にある長い文字列のためのバッファを確保できませんでした "

#: gramLatex.c:2613 gramRd.c:4387 gramRd.c:4393
#, c-format
msgid "invalid '%s' value"
msgstr " 不正な '%s' 値です "

#: gramRd.c:2531 gramRd.c:2534
#, c-format
msgid "bad markup (extra space?) at %s:%d:%d"
msgstr " %s:%d:%d に誤ったマークアップがあります (スペースが余計?) "

#: gramRd.c:3113
#, c-format
msgid "Macro '%s' previously defined."
msgstr " マクロ '%s' は既に定義されています。 "

#: gramRd.c:3123
#, c-format
msgid "At most 4 arguments are allowed for user defined macros."
msgstr " ユーザー定義のマクロに許されている引数の数は最大 4 つです "

#: gramRd.c:3157
#, c-format
msgid "No macro definition for '%s'."
msgstr " '%s' に対するマクロが定義されていません。 "

#: gramRd.c:3313 gramRd.c:3317
#, c-format
msgid "newline within quoted string at %s:%d"
msgstr " 引用文字列の %s に改行:%d "

#: gramRd.c:3336
#, c-format
msgid "unable to allocate buffer for long macro at line %d"
msgstr " 行 %d にある長いマクロに対するバッファを確保できません "

#: gramRd.c:3366
msgid "macros nested too deeply: infinite recursion?"
msgstr " マクロが過剰に入れ子になっています: 無限な再帰？ "

#: gramRd.c:3760
#, c-format
msgid "Unable to find macro %s"
msgstr " マクロ %s を見つけることができません "

#: gramRd.c:3958
#, c-format
msgid "Unexpected end of input (in %c quoted string opened at %s:%d:%d)"
msgstr " 予想外の入力の停止 (%c 引用文字列中の %s:%d:%d で開かれた) "

#: gramRd.c:4400
msgid "cannot open the connection"
msgstr " コネクションを開くことができません "

#: gramRd.c:4407
msgid "cannot read from this connection"
msgstr " このコネクションからは読み取りができません "

#: gramRd.c:4415
msgid "invalid Rd file"
msgstr " 不正な Rd ファイルです "

#: gramRd.c:4434
msgid "'deparseRd' only supports deparsing character elements"
msgstr " 'deparseRd' は文字要素のディパースだけをサポートしています "

#: gramRd.c:4437
msgid "bad state"
msgstr " 不都合な状態 "

#: gramRd.c:4450
#, c-format
msgid "bad text mode %d in 'deparseRd'"
msgstr " 'deparseRd' 中に不都合なテキストモード %d "

#: http.c:32
msgid "invalid bind address specification"
msgstr " 不正な空白アドレス指定 "

#: install.c:112 install.c:131 install.c:133
#, c-format
msgid "invalid '%s' argument"
msgstr " 不正な引数 '%s' です "

#: install.c:162
msgid "write error during file append"
msgstr " ファイルの付加中に書き込みエラー "

#: signals.c:42
msgid "pskill() is not supported on this platform"
msgstr " pskill() はこのプラットホームではサポートされていません "

#: signals.c:140
msgid "psnice() is not supported on this platform"
msgstr " psnice() はこのプラットホームではサポートされていません "

#: text.c:67
msgid "invalid argument type"
msgstr " 不正な引数の型です "

#: text.c:225 text.c:247
msgid "out of memory"
msgstr " メモリが足りません "
