# Korean translation for R utils package
# Copyright (C) 1995-2018 The R Core Team
#
# This file is distributed under the same license as the R utils package.
# Maintained by Chel Hee Lee <gnustats@gmail.com>, 2008-2018.
#
msgid ""
msgstr ""
"Project-Id-Version: R-3.5.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-03-24 10:54-0700\n"
"PO-Revision-Date: 2018-04-09 12:11-0600\n"
"Last-Translator: Chel Hee Lee <gnustats@gmail.com>\n"
"Language-Team: \n"
"Language: ko\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"

#: io.c:329 io.c:333 io.c:343 io.c:574 io.c:774 io.c:827 io.c:840 io.c:844
#: io.c:850 io.c:851 io.c:1097 io.c:1098 io.c:1100 io.c:1101 io.c:1102
#: io.c:1103 io.c:1104 io.c:1105 stubs.c:47 stubs.c:67 windows/dialogs.c:169
#: windows/dialogs.c:194 windows/dialogs.c:197 windows/dialogs.c:241
#: windows/dialogs.c:278 windows/dialogs.c:289 windows/dialogs.c:313
#: windows/dialogs.c:321 windows/util.c:117 windows/widgets.c:79
#: windows/widgets.c:82 windows/widgets.c:87
#, c-format
msgid "invalid '%s' argument"
msgstr "인자 '%s'의 값이 올바르지 않습니다."

#: io.c:352 io.c:837
msgid "invalid quote symbol set"
msgstr "올바르지 않은 인용부호셋 입니다."

#: io.c:364 io.c:860 io.c:1085
msgid "cannot open the connection"
msgstr "커넥션을 열 수 없습니다"

#: io.c:367 io.c:371
msgid "cannot read from this connection"
msgstr "이 커넥션으로부터 읽을 수 없습니다"

#: io.c:418 io.c:436
#, c-format
msgid "quoted string on line %d terminated by EOF"
msgstr ""

#: io.c:570
msgid "the first argument must be of mode character"
msgstr "첫번째 인자는 반드시 문자형이어야 합니다."

#: io.c:600
#, c-format
msgid "invalid 'numerals' string: \"%s\""
msgstr ""

#: io.c:776
#, c-format
msgid "Selection: "
msgstr "선택: "

#: io.c:870 io.c:886
msgid "cannot allocate buffer in 'readTableHead'"
msgstr "'readTableHead' 내에서 버퍼를 할당할 수 없습니다"

#: io.c:900
msgid "\\ followed by EOF"
msgstr "\\ 가 EOF 뒤에 놓였습니다"

#: io.c:953 io.c:958
#, c-format
msgid "incomplete final line found by readTableHeader on '%s'"
msgstr ""
"'%s'에서 readTableHeader에 의하여 발견된 완성되지 않은 마지막 라인입니다"

#: io.c:1016
msgid "index out of range"
msgstr "범위밖의 인덱스입니다"

#: io.c:1053
#, c-format
msgid "Problem closing connection:  %s"
msgstr ""

#: io.c:1055
msgid "Problem closing connection"
msgstr "커넥션을 닫는 도중 문제가 발생했습니다."

#: io.c:1078
msgid "'file' is not a connection"
msgstr "'file'은 커넥션이 아닙니다."

#: io.c:1081
msgid "cannot write to this connection"
msgstr "이 커넥션에 쓰기를 할 수 없습니다."

#: io.c:1111
msgid "'dec' must be a single character"
msgstr "'dec'는 반드시 한개의 문자이어야 합니다"

#: io.c:1137
#, fuzzy, c-format
msgid "corrupt data frame -- length of column %d does not match nrows"
msgstr ""
"데이터 프레임이 손상되었습니다 -- 열의 길이 %d가 행의 개수와 일치하지 않습니"
"다"

#: io.c:1168
#, c-format
msgid "column %s claims to be a factor but does not have numeric codes"
msgstr ""

#: io.c:1186
#, fuzzy
msgid "corrupt matrix -- dims do not match length"
msgstr "올바른 행렬이 아닙니다 -- dims 가 길이가 일치하지 않습니다"

#: stubs.c:56
msgid "'savehistory' can only be used in Rgui and Rterm"
msgstr "'savehistory'는 오로지 Rgui 와 Rterm에서만 사용될 수 있습니다"

#: stubs.c:73
msgid "'loadhistory' can only be used in Rgui and Rterm"
msgstr "'loadhistory'는 오로지 Rgui 와 Rterm에서만 사용될 수 있습니다"

#: stubs.c:85
msgid "invalid timestamp"
msgstr "잘못된 타임스탬프입니다."

#: stubs.c:151 stubs.c:159
msgid "X11 dataentry cannot be loaded"
msgstr "X11 데이터 항목을 로드할 수 없습니다."

#: stubs.c:155 stubs.c:184 stubs.c:190
msgid "X11 is not available"
msgstr "X11이 사용가능하지 않습니다."

#: stubs.c:248 stubs.c:251
#, c-format
msgid "invalid '%s' specification"
msgstr "유효하지 않은 '%s' 지정입니다"

#: stubs.c:254
#, c-format
msgid "'%s' contains missing values"
msgstr ""

#: utils.c:85
msgid "'hostname' must be a character vector of length 1"
msgstr "'hostname'은 반드시 길이가 1인 문자형 벡터이어야 합니다"

#: utils.c:91
#, c-format
msgid "nsl() was unable to resolve host '%s'"
msgstr ""

#: utils.c:98
msgid "unknown format returned by 'gethostbyname'"
msgstr "알수없는 형식이 'gethostbyname'에 의해서 반환되었습니다"

#: utils.c:107
msgid "nsl() is not supported on this platform"
msgstr "이 플랫폼에서는 nsl()를 사용할 수 없습니다."

#: windows/dialogs.c:181
msgid "unknown type"
msgstr "알수없는 유형입니다"

#: windows/dialogs.c:213 windows/dialogs.c:237 windows/dialogs.c:275
#: windows/dialogs.c:310
msgid "menu functions can only be used in the GUI"
msgstr "메뉴 함수들은 GUI내에서만 사용할 수 있습니다"

#: windows/dialogs.c:245
#, c-format
msgid "unable to retrieve items for %s (%s)"
msgstr "%s (%s)대한 항목들을 불러올 수 없습니다"

#: windows/dialogs.c:283
#, c-format
msgid "unable to add menu (%s)"
msgstr "메뉴 %s를 추가할 수 없습니다"

#: windows/dialogs.c:295
#, c-format
msgid "unable to add menu item (%s)"
msgstr "메뉴항목 %s을 추가할 수 없습니다"

#: windows/dialogs.c:318
msgid "menu does not exist"
msgstr "메뉴가 존재하지 않습니다"

#: windows/dialogs.c:325
#, c-format
msgid "unable to delete menu item (%s)"
msgstr "메뉴항목 %s를 삭제할 수 없습니다"

#: windows/registry.c:73 windows/registry.c:248 windows/registry.c:251
#: windows/registry.c:254
#, c-format
msgid "invalid '%s' value"
msgstr "'%s'의 값이 잘못되었습니다"

#: windows/registry.c:266
#, c-format
msgid "Registry key '%ls' not found"
msgstr "레지스트리 키 '%ls'를 찾을 수 없습니다"

#: windows/util.c:42
msgid "unsupported version of Windows"
msgstr "지원되지 않는 버전의 윈도우즈입니다"

#: windows/util.c:281
msgid "argument must be a character vector or a raw vector"
msgstr "인자는 반드시 문자형 벡터 또는  raw 벡터이어야 합니다"

#: windows/util.c:320
msgid "unable to open the clipboard"
msgstr "클립보드를 열 수 없습니다."

#: windows/util.c:325
msgid "unable to write to the clipboard"
msgstr "클립보드에 쓸 수 없습니다."

#: windows/util.c:404
msgid "'title' must be a character string"
msgstr "'title'은 반드시 문자열이어야 합니다"

#: windows/util.c:413
msgid "'text' must be a character string"
msgstr "'text'는 반드시 문자열이어야 합니다"

#: windows/util.c:452
#, c-format
msgid "'%s' must be length 1"
msgstr "'%s'는 반드시 길이가 1이어야 합니다"

#: windows/util.c:565
#, c-format
msgid "'%s' must be a list"
msgstr "'%s'은 반드시 리스트 형이어야 합니다"

#: windows/util.c:569
#, c-format
msgid "'%s' element %d is not a window handle"
msgstr "'%s'의 구성요소 %d는 윈도우 핸들이 아닙니다"

#: windows/widgets.c:109
msgid "Select one or more"
msgstr "하나 이상을 선택해 주세요"

#: windows/widgets.c:109
msgid "Select one"
msgstr "하나를 선택해주세요"

#: windows/widgets.c:183 windows/widgets.c:251
msgid "'default' must be a character string"
msgstr "'default'는 반드시 문자열이어야 합니다"

#: windows/widgets.c:185 windows/widgets.c:253
msgid "'default' is overlong"
msgstr "'default'가 너무 깁니다"

#: windows/widgets.c:189 windows/widgets.c:257
msgid "'caption' must be a character string"
msgstr "'caption'은 반드시 문자열이어야 합니다"

#: windows/widgets.c:191
msgid "'multi' must be a logical value"
msgstr "'multi'는 반드시 논리값이어야 합니다"

#: windows/widgets.c:193
msgid "'filterindex' must be an integer value"
msgstr "'filterindex'의 값은 반드시 정수이어야 합니다."
