diff -r 9f7028ab8294 -r 467f6daff4e9 i18n/Beremiz_ko_KR.po --- a/i18n/Beremiz_ko_KR.po Fri Sep 28 13:07:46 2018 +0300 +++ b/i18n/Beremiz_ko_KR.po Fri Sep 28 13:17:30 2018 +0300 @@ -1,17 +1,16 @@ -# English translations for Beremiz package. -# Copyright (C) 2017 THE Beremiz'S COPYRIGHT HOLDER +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the Beremiz package. -# Automatically generated, 2017. +# FIRST AUTHOR , YEAR. # -# Translators: -# Andrey Skvortsov , 2017 +#, fuzzy msgid "" msgstr "" "Project-Id-Version: Beremiz\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-07-05 13:02+0300\n" -"PO-Revision-Date: 2017-07-05 13:02+0300\n" -"Last-Translator: Andrey Skvortsov , 2017\n" +"POT-Creation-Date: 2018-06-15 16:39+0300\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: IKHWAN KIM , 2017\n" "Language-Team: Korean (Korea) (https://www.transifex.com/beremiz/teams/75746/ko_KR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,7 +18,7 @@ "Language: ko_KR\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ../BeremizIDE.py:1095 ../PLCOpenEditor.py:418 +#: ../util/ExceptionHandler.py:58 #, python-format msgid "" "\n" @@ -33,152 +32,167 @@ "\n" "Traceback:\n" msgstr "" - -#: ../controls/VariablePanel.py:72 +"\n" +"제어할 수 없는 예외상황 (버그)이 발생하였습니다. 버그 리포트는 다음과 같이 저장됩니다:\n" +"(%s)\n" +"\n" +"해당 파일을 다음과 같은 주소로 보내주시면 감사하겠습니다:\n" +"beremiz-devel@lists.sourceforge.net\n" +"\n" +"프로그램을 재시작해야 합니다. \n" +"\n" +"Traceback:\n" + +#: ../controls/VariablePanel.py:90 msgid " External" msgstr " 외부" -#: ../controls/VariablePanel.py:71 +#: ../controls/VariablePanel.py:89 msgid " InOut" msgstr " 입출력" -#: ../controls/VariablePanel.py:71 +#: ../controls/VariablePanel.py:89 msgid " Input" msgstr " 입력" -#: ../controls/VariablePanel.py:72 +#: ../controls/VariablePanel.py:90 msgid " Local" msgstr " 로컬" -#: ../controls/VariablePanel.py:71 +#: ../controls/VariablePanel.py:89 msgid " Output" msgstr " 출력" -#: ../controls/VariablePanel.py:73 +#: ../controls/VariablePanel.py:91 msgid " Temp" msgstr " 임시" -#: ../dialogs/PouTransitionDialog.py:94 ../dialogs/ProjectDialog.py:69 -#: ../dialogs/PouActionDialog.py:92 ../dialogs/PouDialog.py:114 +#: ../dialogs/PouTransitionDialog.py:101 ../dialogs/ProjectDialog.py:74 +#: ../dialogs/PouActionDialog.py:99 ../dialogs/PouDialog.py:122 #, python-format msgid " and %s" msgstr " , %s" -#: ../ProjectController.py:1151 +#: ../ProjectController.py:1182 msgid " generation failed !\n" msgstr "생성 실패!\n" -#: ../plcopen/plcopen.py:886 +#: ../plcopen/plcopen.py:1029 #, python-format msgid "\"%s\" Data Type doesn't exist !!!" msgstr "\"%s\" 존재하지 않는 데이터 타입!!!" -#: ../plcopen/plcopen.py:904 +#: ../plcopen/plcopen.py:1047 #, python-format msgid "\"%s\" POU already exists !!!" msgstr "\"%s\" POU가 이미 존재합니다!!!" -#: ../plcopen/plcopen.py:925 +#: ../plcopen/plcopen.py:1068 #, python-format msgid "\"%s\" POU doesn't exist !!!" msgstr "\"%s\" POU가 존재하지 않습니다!!!" -#: ../editors/Viewer.py:247 +#: ../editors/Viewer.py:288 #, python-format msgid "\"%s\" can't use itself!" msgstr "\"%s\": 자신을 사용 할 수 없습니다!" -#: ../IDEFrame.py:1655 ../IDEFrame.py:1674 +#: ../IDEFrame.py:1688 ../IDEFrame.py:1707 #, python-format msgid "\"%s\" config already exists!" msgstr "\"%s\" 설정(config)이 이미 존재합니다!" -#: ../plcopen/plcopen.py:472 +#: ../plcopen/plcopen.py:531 #, python-format msgid "\"%s\" configuration already exists !!!" msgstr "\"%s\" 설정(configuration)이 이미 존재합니다!" -#: ../IDEFrame.py:1605 +#: ../plcopen/plcopen.py:540 +#, python-format +msgid "\"%s\" configuration doesn't exist !!!" +msgstr "\"%s\" 설정이 존재하지 않습니다!!!" + +#: ../IDEFrame.py:1638 #, python-format msgid "\"%s\" data type already exists!" -msgstr "\"%s\" 데이터 타입이 이미존재합니다!" - -#: ../dialogs/PouTransitionDialog.py:105 ../dialogs/BlockPreviewDialog.py:220 -#: ../dialogs/PouActionDialog.py:103 ../editors/Viewer.py:263 -#: ../editors/Viewer.py:331 ../editors/Viewer.py:355 ../editors/Viewer.py:375 -#: ../editors/TextViewer.py:272 ../editors/TextViewer.py:301 -#: ../controls/VariablePanel.py:396 +msgstr "\"%s\" 데이터 타입이 이미 존재합니다!" + +#: ../dialogs/PouTransitionDialog.py:112 ../dialogs/BlockPreviewDialog.py:220 +#: ../dialogs/PouActionDialog.py:110 ../editors/Viewer.py:304 +#: ../editors/Viewer.py:374 ../editors/Viewer.py:398 ../editors/Viewer.py:418 +#: ../editors/TextViewer.py:270 ../editors/TextViewer.py:299 +#: ../controls/VariablePanel.py:425 #, python-format msgid "\"%s\" element for this pou already exists!" msgstr "이 POU에 \"%s\" 항목이 이미 존재합니다!" -#: ../BeremizIDE.py:897 +#: ../BeremizIDE.py:928 #, python-format msgid "\"%s\" folder is not a valid Beremiz project\n" msgstr "\"%s\" 베레미즈 프로젝트 폴더가 아닙니다\n" -#: ../dialogs/SFCStepNameDialog.py:52 ../dialogs/PouTransitionDialog.py:101 -#: ../dialogs/BlockPreviewDialog.py:208 ../dialogs/PouNameDialog.py:50 -#: ../dialogs/PouActionDialog.py:99 ../dialogs/PouDialog.py:121 -#: ../editors/ResourceEditor.py:449 ../editors/ResourceEditor.py:484 -#: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:587 -#: ../editors/CodeFileEditor.py:776 ../controls/VariablePanel.py:773 -#: ../IDEFrame.py:1596 +#: ../dialogs/SFCStepNameDialog.py:56 ../dialogs/PouTransitionDialog.py:108 +#: ../dialogs/BlockPreviewDialog.py:209 ../dialogs/PouNameDialog.py:54 +#: ../dialogs/PouActionDialog.py:106 ../dialogs/PouDialog.py:129 +#: ../editors/ResourceEditor.py:483 ../editors/ResourceEditor.py:518 +#: ../editors/DataTypeEditor.py:571 ../editors/DataTypeEditor.py:603 +#: ../editors/CodeFileEditor.py:774 ../controls/VariablePanel.py:787 +#: ../IDEFrame.py:1629 #, python-format msgid "\"%s\" is a keyword. It can't be used!" msgstr "\"%s\" 는 키워드 입니다. 사용 할 수 없습니다!" -#: ../plcopen/plcopen.py:2417 +#: ../plcopen/plcopen.py:2836 #, python-format msgid "\"%s\" is an invalid value!" msgstr "\"%s\" 유효하지 않은 값입니다!" -#: ../PLCOpenEditor.py:349 ../PLCOpenEditor.py:391 +#: ../PLCOpenEditor.py:323 ../PLCOpenEditor.py:365 #, python-format msgid "\"%s\" is not a valid folder!" msgstr "\"%s\" 유효하지 않은 폴더입니다!" -#: ../dialogs/SFCStepNameDialog.py:50 ../dialogs/PouTransitionDialog.py:99 -#: ../dialogs/BlockPreviewDialog.py:204 ../dialogs/PouNameDialog.py:48 -#: ../dialogs/PouActionDialog.py:97 ../dialogs/PouDialog.py:119 -#: ../editors/ResourceEditor.py:447 ../editors/ResourceEditor.py:482 -#: ../editors/DataTypeEditor.py:585 ../editors/CodeFileEditor.py:774 -#: ../controls/VariablePanel.py:771 ../IDEFrame.py:1594 +#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:106 +#: ../dialogs/BlockPreviewDialog.py:205 ../dialogs/PouNameDialog.py:52 +#: ../dialogs/PouActionDialog.py:104 ../dialogs/PouDialog.py:127 +#: ../editors/ResourceEditor.py:481 ../editors/ResourceEditor.py:516 +#: ../editors/DataTypeEditor.py:601 ../editors/CodeFileEditor.py:772 +#: ../controls/VariablePanel.py:785 ../IDEFrame.py:1627 #, python-format msgid "\"%s\" is not a valid identifier!" msgstr "\"%s\"는 유효하지 않은 식별자입니다!" -#: ../IDEFrame.py:2410 +#: ../IDEFrame.py:2436 #, python-format msgid "\"%s\" is used by one or more POUs. Do you wish to continue?" -msgstr "" - -#: ../dialogs/BlockPreviewDialog.py:212 ../dialogs/PouDialog.py:123 -#: ../editors/Viewer.py:261 ../editors/Viewer.py:316 ../editors/Viewer.py:346 -#: ../editors/Viewer.py:368 ../editors/TextViewer.py:270 -#: ../editors/TextViewer.py:299 ../editors/TextViewer.py:350 -#: ../editors/TextViewer.py:373 ../controls/VariablePanel.py:338 -#: ../IDEFrame.py:1614 +msgstr "\"%s\"는 하나 이상의 POU에 의해 사용되고 있습니다. 계속하시겠습니까? " + +#: ../dialogs/BlockPreviewDialog.py:213 ../dialogs/PouDialog.py:131 +#: ../editors/Viewer.py:302 ../editors/Viewer.py:359 ../editors/Viewer.py:389 +#: ../editors/Viewer.py:411 ../editors/TextViewer.py:268 +#: ../editors/TextViewer.py:297 ../editors/TextViewer.py:351 +#: ../editors/TextViewer.py:374 ../controls/VariablePanel.py:364 +#: ../IDEFrame.py:1647 #, python-format msgid "\"%s\" pou already exists!" msgstr "\"%s\" POU는 이미 존재합니다!" -#: ../dialogs/SFCStepNameDialog.py:58 +#: ../dialogs/SFCStepNameDialog.py:62 #, python-format msgid "\"%s\" step already exists!" msgstr "\"%s\" 스텝이 이미 생성되었습니다!" -#: ../editors/DataTypeEditor.py:550 +#: ../editors/DataTypeEditor.py:566 #, python-format msgid "\"%s\" value already defined!" msgstr "\"%s\" 이미 정의된 값이 있습니다!" -#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:743 +#: ../dialogs/ArrayTypeDialog.py:105 ../editors/DataTypeEditor.py:759 #, python-format msgid "\"%s\" value isn't a valid array dimension!" msgstr "\"%s\" 값은 올바른 배열 차원이 아닙니다!" -#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:750 +#: ../dialogs/ArrayTypeDialog.py:109 ../editors/DataTypeEditor.py:766 #, python-format msgid "" "\"%s\" value isn't a valid array dimension!\n" @@ -187,209 +201,205 @@ "\"%s\" 올바른 데이터를 입력하세요!\n" "우측의 데이터는 좌측보다 커야 합니다." -#: ../PLCGenerator.py:1101 +#: ../PLCGenerator.py:1133 #, python-brace-format msgid "\"{a1}\" function cancelled in \"{a2}\" POU: No input connected" -msgstr "" - -#: ../editors/Viewer.py:251 +msgstr "\"{a2}\" POU 에서 \"{a1}\" 함수가 취소되었습니다: 입력이 연결되지 않았습니다. " + +#: ../editors/Viewer.py:292 #, python-brace-format msgid "\"{a1}\" is already used by \"{a2}\"!" -msgstr "" - -#: ../plcopen/plcopen.py:496 +msgstr "\"{a1}\" 은 \"{a2}\" 에 의해 사용되고 있습니다. " + +#: ../plcopen/plcopen.py:557 #, python-brace-format msgid "\"{a1}\" resource already exists in \"{a2}\" configuration !!!" -msgstr "" - -#: ../plcopen/plcopen.py:514 +msgstr "\"{a1}\" 리소스는 \"{a2}\" 설정에 이미 존재합니다." + +#: ../plcopen/plcopen.py:577 #, python-brace-format msgid "\"{a1}\" resource doesn't exist in \"{a2}\" configuration !!!" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:578 +msgstr "\"{a1}\" 리소스는 \"{a2}\" 설정에 존재하지 않습니다!!!" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:580 #, python-format msgid "%03gms" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:569 +msgstr "%03gms" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:571 #, python-format msgid "%dd" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:56 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:570 +msgstr "%dd" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:61 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:572 #, python-format msgid "%dh" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:55 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:571 +msgstr "%dh" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:60 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:573 #, python-format msgid "%dm" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:53 +msgstr "%dm" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:58 #, python-format msgid "%dms" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:54 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:572 +msgstr "%dms" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:59 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:574 #, python-format msgid "%ds" -msgstr "" - -#: ../PLCControler.py:1533 +msgstr "%ds" + +#: ../PLCControler.py:1114 #, python-format msgid "%s Data Types" -msgstr "" - -#: ../PLCControler.py:1516 +msgstr "%s 데이터 타입" + +#: ../PLCControler.py:1097 #, python-format msgid "%s POUs" -msgstr "" - -#: ../canfestival/SlaveEditor.py:69 ../canfestival/NetworkEditor.py:90 +msgstr "%s POU들" + +#: ../canfestival/SlaveEditor.py:73 ../canfestival/NetworkEditor.py:97 #, python-format msgid "%s Profile" msgstr "%s 프로필" -#: ../plcopen/plcopen.py:1650 ../plcopen/plcopen.py:1657 -#: ../plcopen/plcopen.py:1669 ../plcopen/plcopen.py:1677 -#: ../plcopen/plcopen.py:1687 +#: ../plcopen/plcopen.py:1901 ../plcopen/plcopen.py:1908 +#: ../plcopen/plcopen.py:1921 ../plcopen/plcopen.py:1929 +#: ../plcopen/plcopen.py:1939 ../plcopen/plcopen.py:1950 #, python-format msgid "%s body don't have instances!" msgstr "%s 인스턴스를 찾을 수 없습니다!" -#: ../plcopen/plcopen.py:1705 ../plcopen/plcopen.py:1712 -#: ../plcopen/plcopen.py:1719 +#: ../plcopen/plcopen.py:1957 ../plcopen/plcopen.py:1964 +#: ../plcopen/plcopen.py:1971 #, python-format msgid "%s body don't have text!" msgstr "%s 텍스트를 찾을 수 없습니다!" -#: ../IDEFrame.py:386 +#: ../IDEFrame.py:388 msgid "&Add Element" msgstr "&구성원 추가" -#: ../dialogs/AboutDialog.py:73 ../dialogs/AboutDialog.py:121 -#: ../dialogs/AboutDialog.py:158 +#: ../dialogs/AboutDialog.py:71 ../dialogs/AboutDialog.py:117 +#: ../dialogs/AboutDialog.py:152 msgid "&Close" -msgstr "" - -#: ../IDEFrame.py:356 +msgstr "&종료" + +#: ../IDEFrame.py:361 msgid "&Configuration" msgstr "&설정(Configuration)" -#: ../IDEFrame.py:345 +#: ../IDEFrame.py:350 msgid "&Data Type" msgstr "&데이터 타입" -#: ../IDEFrame.py:390 +#: ../IDEFrame.py:392 msgid "&Delete" msgstr "&삭제" -#: ../IDEFrame.py:337 +#: ../IDEFrame.py:342 msgid "&Display" msgstr "&보기" -#: ../IDEFrame.py:336 +#: ../IDEFrame.py:341 msgid "&Edit" -msgstr "" - -#: ../IDEFrame.py:335 +msgstr "&편집" + +#: ../IDEFrame.py:340 msgid "&File" msgstr "&파일" -#: ../IDEFrame.py:347 +#: ../IDEFrame.py:352 msgid "&Function" msgstr "&함수" -#: ../IDEFrame.py:338 +#: ../IDEFrame.py:343 msgid "&Help" msgstr "&도움말" -#: ../dialogs/AboutDialog.py:72 +#: ../dialogs/AboutDialog.py:70 msgid "&License" -msgstr "" - -#: ../IDEFrame.py:351 +msgstr "&라이센스" + +#: ../IDEFrame.py:356 msgid "&Program" msgstr "&프로그램" -#: ../PLCOpenEditor.py:127 +#: ../PLCOpenEditor.py:98 msgid "&Properties" -msgstr "" - -#: ../BeremizIDE.py:219 +msgstr "&속성" + +#: ../BeremizIDE.py:244 msgid "&Recent Projects" msgstr "&최근 프로젝트" -#: ../IDEFrame.py:353 +#: ../IDEFrame.py:358 msgid "&Resource" -msgstr "" - -#: ../controls/SearchResultPanel.py:239 +msgstr "&리소스" + +#: ../controls/SearchResultPanel.py:247 #, python-brace-format msgid "'{a1}' - {a2} match in project" -msgstr "" - -#: ../controls/SearchResultPanel.py:241 +msgstr "'{a1}' - 프로젝트내에서 {a2} 건이 매치됩니다. " + +#: ../controls/SearchResultPanel.py:249 #, python-brace-format msgid "'{a1}' - {a2} matches in project" -msgstr "" - -#: ../connectors/PYRO/__init__.py:90 +msgstr "'{a1}' - 프로젝트 내에서 {a2} 건이 매치됩니다." + +#: ../connectors/PYRO/__init__.py:98 #, python-brace-format msgid "'{a1}' is located at {a2}\n" -msgstr "" - -#: ../controls/SearchResultPanel.py:291 +msgstr "'{a1}' 은 {a2} 위치에 있습니다.\n" + +#: ../controls/SearchResultPanel.py:298 #, python-format msgid "(%d matches)" -msgstr "" - -#: ../PLCOpenEditor.py:406 ../PLCOpenEditor.py:408 ../PLCOpenEditor.py:409 -msgid ", " -msgstr ", " - -#: ../dialogs/PouTransitionDialog.py:96 ../dialogs/PouActionDialog.py:94 -#: ../dialogs/PouDialog.py:116 +msgstr "(%d 건이 매치됨)" + +#: ../dialogs/PouTransitionDialog.py:103 ../dialogs/PouActionDialog.py:101 +#: ../dialogs/PouDialog.py:124 #, python-format msgid ", %s" msgstr ", %s" -#: ../PLCOpenEditor.py:404 -msgid ". " -msgstr ". " - -#: ../controls/LogViewer.py:279 +#: ../controls/UriLocationEditor.py:49 +msgid "- Select URI type -" +msgstr "- URI 종류를 선택하세요 - " + +#: ../controls/LogViewer.py:287 msgid "1d" -msgstr "" - -#: ../controls/LogViewer.py:280 +msgstr "1d" + +#: ../controls/LogViewer.py:288 msgid "1h" -msgstr "" - -#: ../controls/LogViewer.py:281 +msgstr "1h" + +#: ../controls/LogViewer.py:289 msgid "1m" -msgstr "" - -#: ../controls/LogViewer.py:282 +msgstr "1m" + +#: ../controls/LogViewer.py:290 msgid "1s" -msgstr "" - -#: ../dialogs/PouDialog.py:125 ../IDEFrame.py:1617 ../IDEFrame.py:1663 -#: ../IDEFrame.py:1682 +msgstr "1s" + +#: ../dialogs/PouDialog.py:133 ../IDEFrame.py:1650 ../IDEFrame.py:1696 +#: ../IDEFrame.py:1715 #, python-format msgid "" "A POU has an element named \"%s\". This could cause a conflict. Do you wish " "to continue?" msgstr "POU 구성원의 이름 \"%s\"은 오류를 발생시킬 수 있습니다. 계속 하시겠습니까?" -#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:103 -#: ../dialogs/PouNameDialog.py:52 ../dialogs/PouActionDialog.py:101 -#: ../controls/VariablePanel.py:775 ../IDEFrame.py:1631 ../IDEFrame.py:1644 +#: ../dialogs/SFCStepNameDialog.py:58 ../dialogs/PouTransitionDialog.py:110 +#: ../dialogs/PouNameDialog.py:56 ../dialogs/PouActionDialog.py:108 +#: ../controls/VariablePanel.py:789 ../IDEFrame.py:1664 ../IDEFrame.py:1677 #, python-format msgid "A POU named \"%s\" already exists!" msgstr "이미 생성된 POU 이름입니다 : \"%s\"" @@ -397,201 +407,201 @@ #: ../ConfigTreeNode.py:424 #, python-brace-format msgid "A child named \"{a1}\" already exists -> \"{a2}\"\n" -msgstr "" - -#: ../dialogs/BrowseLocationsDialog.py:218 +msgstr "\"{a1}\" 이름을 가진 child가 이미 존재합니다 ->\"{a2}\"\n" + +#: ../dialogs/BrowseLocationsDialog.py:229 msgid "A location must be selected!" msgstr "위치를 지정해야 합니다!" -#: ../editors/ResourceEditor.py:451 +#: ../editors/ResourceEditor.py:485 msgid "A task with the same name already exists!" -msgstr "" - -#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:777 -#: ../IDEFrame.py:1633 ../IDEFrame.py:1646 +msgstr "같은 이름을 가진 태스크가 존재합니다!" + +#: ../dialogs/SFCStepNameDialog.py:60 ../controls/VariablePanel.py:791 +#: ../IDEFrame.py:1666 ../IDEFrame.py:1679 #, python-format msgid "A variable with \"%s\" as name already exists in this pou!" msgstr "변수 \"%s\"는 이미 POU에 정의 되어 있습니다!" -#: ../editors/CodeFileEditor.py:780 +#: ../editors/CodeFileEditor.py:778 #, python-format msgid "A variable with \"%s\" as name already exists!" -msgstr "" - -#: ../BeremizIDE.py:283 ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:168 +msgstr "이름이 \"%s\"인 변수는 이미 존재합니다!" + +#: ../BeremizIDE.py:311 ../dialogs/AboutDialog.py:46 ../PLCOpenEditor.py:142 msgid "About" -msgstr "" +msgstr "대하여" #: ../plcopen/iec_std.csv:22 msgid "Absolute number" msgstr "절대값 연산" -#: ../dialogs/SFCStepDialog.py:73 ../dialogs/ActionBlockDialog.py:43 +#: ../dialogs/SFCStepDialog.py:75 ../dialogs/ActionBlockDialog.py:47 msgid "Action" msgstr "액션(Action)" -#: ../editors/Viewer.py:614 ../editors/Viewer.py:2394 +#: ../editors/Viewer.py:653 ../editors/Viewer.py:2427 msgid "Action Block" -msgstr "" - -#: ../dialogs/PouActionDialog.py:82 +msgstr "액션 블록" + +#: ../dialogs/PouActionDialog.py:89 msgid "Action Name" msgstr "액션 명" -#: ../dialogs/PouActionDialog.py:49 +#: ../dialogs/PouActionDialog.py:56 msgid "Action Name:" msgstr "액션 명:" -#: ../plcopen/plcopen.py:1364 +#: ../plcopen/plcopen.py:1567 #, python-format msgid "Action with name %s doesn't exist!" msgstr "액션 명 %s는 이미 존재합니다!" -#: ../PLCControler.py:98 +#: ../plcopen/types_enums.py:76 msgid "Actions" msgstr "액션(Actions)" -#: ../dialogs/ActionBlockDialog.py:133 +#: ../dialogs/ActionBlockDialog.py:139 msgid "Actions:" msgstr "액션(Actions):" -#: ../editors/Viewer.py:431 +#: ../editors/Viewer.py:473 msgid "Active" -msgstr "" - -#: ../canfestival/SlaveEditor.py:80 ../canfestival/NetworkEditor.py:101 -#: ../BeremizIDE.py:965 ../editors/Viewer.py:647 +msgstr "활성화" + +#: ../canfestival/SlaveEditor.py:84 ../canfestival/NetworkEditor.py:108 +#: ../BeremizIDE.py:1001 ../editors/Viewer.py:686 msgid "Add" msgstr "추가" -#: ../IDEFrame.py:1893 ../IDEFrame.py:1928 +#: ../IDEFrame.py:1924 ../IDEFrame.py:1959 msgid "Add Action" msgstr "액션 추가" -#: ../features.py:32 +#: ../features.py:33 msgid "Add C code accessing located variables synchronously" msgstr "동기적으로 위치한 변수를 액세스하는 C 코드를 추가합니다" -#: ../IDEFrame.py:1876 +#: ../IDEFrame.py:1907 msgid "Add Configuration" msgstr "설정(Configuration) 추가" -#: ../IDEFrame.py:1856 +#: ../IDEFrame.py:1887 msgid "Add DataType" msgstr "데이터 타입 추가" -#: ../editors/Viewer.py:572 +#: ../editors/Viewer.py:609 msgid "Add Divergence Branch" msgstr "Branch 추가" -#: ../dialogs/DiscoveryDialog.py:117 +#: ../dialogs/DiscoveryDialog.py:121 msgid "Add IP" -msgstr "" - -#: ../IDEFrame.py:1864 +msgstr "IP 추가" + +#: ../IDEFrame.py:1895 msgid "Add POU" msgstr "POU 추가" -#: ../features.py:33 +#: ../features.py:34 msgid "Add Python code executed asynchronously" msgstr "비동기적으로 실행되는 파이썬 코드를 추가합니다" -#: ../IDEFrame.py:1904 ../IDEFrame.py:1954 +#: ../IDEFrame.py:1935 ../IDEFrame.py:1985 msgid "Add Resource" msgstr "리소스 추가" -#: ../IDEFrame.py:1882 ../IDEFrame.py:1925 +#: ../IDEFrame.py:1913 ../IDEFrame.py:1956 msgid "Add Transition" msgstr "트랜지션(Transition) 추가" -#: ../editors/Viewer.py:559 +#: ../editors/Viewer.py:596 msgid "Add Wire Segment" msgstr "와이어 세그먼트(Wire Segment) 추가" -#: ../editors/SFCViewer.py:433 +#: ../editors/SFCViewer.py:447 msgid "Add a new initial step" msgstr "새로운 초기 스텝 추가" -#: ../editors/Viewer.py:2757 ../editors/SFCViewer.py:770 +#: ../editors/Viewer.py:2791 ../editors/SFCViewer.py:784 msgid "Add a new jump" msgstr "새로운 점프 추가" -#: ../editors/SFCViewer.py:455 +#: ../editors/SFCViewer.py:469 msgid "Add a new step" msgstr "새로운 스텝 추가" -#: ../features.py:34 +#: ../features.py:35 msgid "Add a simple WxGlade based GUI." msgstr "간단 WxGlade GUI를 추가합니다" -#: ../dialogs/ActionBlockDialog.py:137 +#: ../dialogs/ActionBlockDialog.py:143 msgid "Add action" -msgstr "" - -#: ../editors/DataTypeEditor.py:352 +msgstr "액션 추가" + +#: ../editors/DataTypeEditor.py:364 msgid "Add element" -msgstr "" - -#: ../editors/ResourceEditor.py:268 +msgstr "구성원 추가" + +#: ../editors/ResourceEditor.py:283 msgid "Add instance" -msgstr "" - -#: ../canfestival/NetworkEditor.py:103 +msgstr "인스턴스 추가" + +#: ../canfestival/NetworkEditor.py:110 msgid "Add slave" msgstr "슬레이브 추가" -#: ../editors/ResourceEditor.py:239 +#: ../editors/ResourceEditor.py:252 msgid "Add task" -msgstr "" - -#: ../editors/CodeFileEditor.py:658 ../controls/VariablePanel.py:450 +msgstr "태스크 추가" + +#: ../editors/CodeFileEditor.py:654 ../controls/VariablePanel.py:481 msgid "Add variable" -msgstr "" +msgstr "변수 추가" #: ../plcopen/iec_std.csv:33 msgid "Addition" msgstr "추가" -#: ../plcopen/definitions.py:49 +#: ../plcopen/definitions.py:51 msgid "Additional function blocks" msgstr "추가적 함수 블록" -#: ../editors/Viewer.py:630 +#: ../editors/Viewer.py:669 msgid "Adjust Block Size" -msgstr "" - -#: ../editors/Viewer.py:1686 +msgstr "블록 크기 조절" + +#: ../editors/Viewer.py:1720 msgid "Alignment" msgstr "정렬" -#: ../dialogs/BrowseLocationsDialog.py:40 -#: ../dialogs/BrowseLocationsDialog.py:48 -#: ../dialogs/BrowseLocationsDialog.py:141 -#: ../dialogs/BrowseLocationsDialog.py:144 ../controls/LogViewer.py:298 -#: ../controls/VariablePanel.py:70 +#: ../dialogs/BrowseLocationsDialog.py:42 +#: ../dialogs/BrowseLocationsDialog.py:53 +#: ../dialogs/BrowseLocationsDialog.py:152 +#: ../dialogs/BrowseLocationsDialog.py:155 ../controls/LogViewer.py:307 +#: ../controls/VariablePanel.py:88 msgid "All" msgstr "모두" -#: ../editors/FileManagementPanel.py:35 +#: ../editors/FileManagementPanel.py:37 msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv" -msgstr "" - -#: ../ProjectController.py:1685 +msgstr "모든 파일들 (*.*)|*.*|CSV files (*.csv)|*.csv" + +#: ../ProjectController.py:1670 msgid "Already connected. Please disconnect\n" -msgstr "이미 접속중입니다. 연결을 해제 하세요\n" - -#: ../editors/DataTypeEditor.py:591 +msgstr "이미 접속되어 있습니다. 연결을 해제하세요\n" + +#: ../editors/DataTypeEditor.py:607 #, python-format msgid "An element named \"%s\" already exists in this structure!" msgstr "항목 \"%s\" 는 이미 구조체 안에 존재 합니다!" -#: ../editors/ResourceEditor.py:486 +#: ../editors/ResourceEditor.py:520 msgid "An instance with the same name already exists!" -msgstr "" - -#: ../dialogs/ConnectionDialog.py:100 +msgstr "같은 이름을 갖는 인스턴스가 존재합니다!" + +#: ../dialogs/ConnectionDialog.py:103 msgid "Apply name modification to all continuations with the same name" -msgstr "" +msgstr "같은 이름을 가지는 모든 연결자에 대해 이름 변경을 적용하세요." #: ../plcopen/iec_std.csv:31 msgid "Arc cosine" @@ -609,8 +619,8 @@ msgid "Arithmetic" msgstr "산술 연산" -#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:633 -#: ../controls/VariablePanel.py:858 +#: ../editors/DataTypeEditor.py:60 ../editors/DataTypeEditor.py:649 +#: ../controls/VariablePanel.py:872 msgid "Array" msgstr "배열" @@ -618,45 +628,37 @@ msgid "Assignment" msgstr "할당" -#: ../dialogs/FBDVariableDialog.py:222 +#: ../dialogs/FBDVariableDialog.py:226 msgid "At least a variable or an expression must be selected!" msgstr "변수 또는 표현식이 필요합니다!" -#: ../controls/ProjectPropertiesPanel.py:100 +#: ../controls/ProjectPropertiesPanel.py:111 msgid "Author" msgstr "작성자" -#: ../controls/ProjectPropertiesPanel.py:97 +#: ../controls/ProjectPropertiesPanel.py:108 msgid "Author Name (optional):" msgstr "작성자 이름(옵션):" -#: ../dialogs/FindInPouDialog.py:77 +#: ../dialogs/FindInPouDialog.py:80 msgid "Backward" -msgstr "" - -#: ../util/Zeroconf.py:599 -msgid "Bad domain name (circular) at " -msgstr "도메인 이름이 올바르지 않습니다(circular 네임):" - -#: ../util/Zeroconf.py:602 -msgid "Bad domain name at " -msgstr "도메인 이름이 올바르지 않습니다:" - -#: ../canfestival/config_utils.py:342 ../canfestival/config_utils.py:630 +msgstr "뒤로" + +#: ../canfestival/config_utils.py:365 ../canfestival/config_utils.py:672 #, python-format msgid "Bad location size : %s" msgstr "잘못된 로케이션 사이즈: %s" -#: ../dialogs/ArrayTypeDialog.py:54 ../editors/DataTypeEditor.py:175 -#: ../editors/DataTypeEditor.py:205 ../editors/DataTypeEditor.py:297 +#: ../dialogs/ArrayTypeDialog.py:57 ../editors/DataTypeEditor.py:183 +#: ../editors/DataTypeEditor.py:213 ../editors/DataTypeEditor.py:307 msgid "Base Type:" msgstr "기본 타입:" -#: ../editors/DataTypeEditor.py:623 ../controls/VariablePanel.py:816 +#: ../editors/DataTypeEditor.py:639 ../controls/VariablePanel.py:830 msgid "Base Types" msgstr "기본 타입" -#: ../BeremizIDE.py:455 +#: ../BeremizIDE.py:483 msgid "Beremiz" msgstr "베레미즈" @@ -688,169 +690,174 @@ msgid "Bitwise inverting" msgstr "비트 연산 반전 (Invert)" -#: ../editors/Viewer.py:584 ../editors/Viewer.py:2407 +#: ../editors/Viewer.py:621 ../editors/Viewer.py:2440 msgid "Block" -msgstr "" - -#: ../dialogs/FBDBlockDialog.py:60 +msgstr "블록" + +#: ../dialogs/FBDBlockDialog.py:63 msgid "Block Properties" msgstr "블럭 속성" -#: ../editors/TextViewer.py:262 +#: ../editors/TextViewer.py:260 msgid "Block name" -msgstr "" - -#: ../editors/Viewer.py:550 +msgstr "블록 이름" + +#: ../editors/Viewer.py:586 msgid "Bottom" msgstr "하단" -#: ../ProjectController.py:1363 +#: ../ProjectController.py:1400 msgid "Broken" -msgstr "" - -#: ../dialogs/BrowseValuesLibraryDialog.py:38 +msgstr "깨짐" + +#: ../dialogs/BrowseValuesLibraryDialog.py:40 #, python-format msgid "Browse %s values library" -msgstr "" - -#: ../dialogs/BrowseLocationsDialog.py:65 +msgstr "라이브러리에서 %s 값을 탐색" + +#: ../dialogs/BrowseLocationsDialog.py:72 msgid "Browse Locations" msgstr "위치 탐색" -#: ../ProjectController.py:1832 +#: ../ProjectController.py:1815 msgid "Build" msgstr "빌드" -#: ../ProjectController.py:1297 +#: ../ProjectController.py:1335 msgid "Build directory already clean\n" msgstr "빌드 디렉토리가 이미 비어 있습니다\n" -#: ../ProjectController.py:1833 +#: ../ProjectController.py:1816 msgid "Build project into build folder" -msgstr "현재 작성된 프로젝트를 빌드 폴더에 생성합니다" - -#: ../ProjectController.py:1080 +msgstr "현재 프로젝트를 빌드합니다" + +#: ../ProjectController.py:1108 msgid "C Build crashed !\n" msgstr "C 파일 빌드 과정에 문제가 있습니다!\n" -#: ../ProjectController.py:1077 +#: ../ProjectController.py:1105 msgid "C Build failed.\n" msgstr "C 파일 빌드에 실패 했습니다\n" -#: ../c_ext/CFileEditor.py:63 +#: ../c_ext/CFileEditor.py:66 msgid "C code" -msgstr "" - -#: ../ProjectController.py:1155 +msgstr "C 코드" + +#: ../ProjectController.py:1186 msgid "C code generated successfully.\n" msgstr "C 코드가 성공적으로 생성되었습니다\n" -#: ../targets/toolchain_makefile.py:122 +#: ../targets/toolchain_makefile.py:126 msgid "C compilation failed.\n" -msgstr "" - -#: ../targets/toolchain_gcc.py:192 +msgstr "C 컴파일 작업이 실패했습니다.\n" + +#: ../targets/toolchain_gcc.py:199 #, python-format msgid "C compilation of %s failed.\n" msgstr "%s 의 C 컴파일 작업이 실패 했습니다\n" -#: ../features.py:32 +#: ../features.py:33 msgid "C extension" msgstr "C 확장" -#: ../dialogs/AboutDialog.py:71 +#: ../dialogs/AboutDialog.py:69 msgid "C&redits" -msgstr "" - -#: ../canfestival/NetworkEditor.py:52 +msgstr "크레딧" + +#: ../canfestival/NetworkEditor.py:58 msgid "CANOpen network" -msgstr "" - -#: ../canfestival/SlaveEditor.py:44 +msgstr "CANOpen 네트워크" + +#: ../canfestival/SlaveEditor.py:48 msgid "CANOpen slave" -msgstr "" +msgstr "CANOpen 슬레이브" #: ../features.py:31 msgid "CANopen support" msgstr "CANopen 지원" -#: ../plcopen/plcopen.py:1589 ../plcopen/plcopen.py:1603 -#: ../plcopen/plcopen.py:1627 ../plcopen/plcopen.py:1643 +#: ../plcopen/plcopen.py:1839 ../plcopen/plcopen.py:1853 +#: ../plcopen/plcopen.py:1878 ../plcopen/plcopen.py:1894 msgid "Can only generate execution order on FBD networks!" msgstr "FBD 네트워크 상태에서만 실행 순서를 생성할 수 있습니다!" -#: ../controls/VariablePanel.py:267 +#: ../controls/VariablePanel.py:291 msgid "Can only give a location to local or global variables" msgstr "로컬 또는 전역 변수만 위치 지정 가능합니다" -#: ../PLCOpenEditor.py:344 +#: ../PLCOpenEditor.py:318 #, python-format msgid "Can't generate program to file %s!" msgstr "프로그램을 %s 파일로 생성할 수 없습니다!" -#: ../controls/VariablePanel.py:265 +#: ../controls/VariablePanel.py:289 msgid "Can't give a location to a function block instance" msgstr "함수 블럭 인스턴스에는 위치를 지정할 수 없습니다" -#: ../PLCOpenEditor.py:389 +#: ../PLCOpenEditor.py:363 #, python-format msgid "Can't save project to file %s!" msgstr "프로젝트를 %s로 저장할 수 없습니다!" -#: ../controls/VariablePanel.py:313 +#: ../controls/VariablePanel.py:339 msgid "Can't set an initial value to a function block instance" -msgstr "" - -#: ../ConfigTreeNode.py:529 +msgstr "함수 블록 인스턴스에 대해 초기값을 설정할 수 없습니다. " + +#: ../ConfigTreeNode.py:532 #, python-brace-format msgid "Cannot create child {a1} of type {a2} " -msgstr "" +msgstr "{a2} 타입의 차일드 {a1}을 생성할 수 없습니다." #: ../ConfigTreeNode.py:454 #, python-format msgid "Cannot find lower free IEC channel than %d\n" msgstr "%d보다 낮은 번호의 가용 IEC 채널을 검색하는데 실패했습니다\n" -#: ../connectors/PYRO/__init__.py:131 +#: ../connectors/PYRO/__init__.py:139 msgid "Cannot get PLC status - connection failed.\n" msgstr "현재 PLC 상태를 알 수 없습니다 - 접속 실패.\n" -#: ../ProjectController.py:943 +#: ../ProjectController.py:967 msgid "Cannot open/parse VARIABLES.csv!\n" msgstr "VARIABLES.csv 파일을 열거나 파싱할 수 없습니다!\n" -#: ../canfestival/config_utils.py:374 +#: ../canfestival/config_utils.py:400 #, python-brace-format msgid "" "Cannot set bit offset for non bool '{a1}' variable " "(ID:{a2},Idx:{a3},sIdx:{a4}))" msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:59 ../dialogs/FindInPouDialog.py:86 +"Bool 타입이 아닌 '{a1}' 변수의 비트 오프셋을 설정할 수 없습니다. (ID:{a2},Idx:{a3},sIdx:{a4})) " + +#: ../ProjectController.py:1761 +msgid "Cannot transfer while PLC is running. Stop it now?" +msgstr "PLC가 동작중 일 때 전송 할 수 없습니다. 지금 중단하시겠습니까?" + +#: ../dialogs/SearchInProjectDialog.py:63 ../dialogs/FindInPouDialog.py:89 msgid "Case sensitive" msgstr "대소문자 구별" -#: ../editors/Viewer.py:545 +#: ../editors/Viewer.py:581 msgid "Center" msgstr "중앙" -#: ../Beremiz_service.py:268 +#: ../Beremiz_service.py:276 msgid "Change IP of interface to bind" msgstr "바인드 인터페이스 IP 변경" -#: ../Beremiz_service.py:267 +#: ../Beremiz_service.py:275 msgid "Change Name" msgstr "이름 변경" -#: ../IDEFrame.py:1946 +#: ../IDEFrame.py:1977 msgid "Change POU Type To" msgstr "POU 타입 변경" -#: ../Beremiz_service.py:269 +#: ../Beremiz_service.py:277 msgid "Change Port Number" msgstr "포트 번호 변경" -#: ../Beremiz_service.py:270 +#: ../Beremiz_service.py:278 msgid "Change working directory" msgstr "작업 디렉토리 변경" @@ -858,115 +865,119 @@ msgid "Character string" msgstr "문자열" -#: ../svgui/svgui.py:128 +#: ../svgui/svgui.py:136 msgid "Choose a SVG file" msgstr "SVG 파일 선택" -#: ../ProjectController.py:542 +#: ../ProjectController.py:561 msgid "Choose a directory to save project" msgstr "프로젝트 저장 디렉토리 선택" -#: ../canfestival/canfestival.py:162 ../PLCOpenEditor.py:302 -#: ../PLCOpenEditor.py:334 ../PLCOpenEditor.py:383 +#: ../canfestival/canfestival.py:171 ../PLCOpenEditor.py:276 +#: ../PLCOpenEditor.py:308 ../PLCOpenEditor.py:357 msgid "Choose a file" msgstr "파일 선택" -#: ../BeremizIDE.py:833 ../BeremizIDE.py:869 +#: ../BeremizIDE.py:900 msgid "Choose a project" msgstr "프로젝트 선택" -#: ../dialogs/BrowseValuesLibraryDialog.py:41 +#: ../dialogs/BrowseValuesLibraryDialog.py:43 #, python-format msgid "Choose a value for %s:" -msgstr "" - -#: ../Beremiz_service.py:325 +msgstr "%s 을 위한 값을 선택하세요:" + +#: ../Beremiz_service.py:333 msgid "Choose a working directory " msgstr "작업 디렉토리 선택" -#: ../ProjectController.py:449 +#: ../BeremizIDE.py:864 +msgid "Choose an empty directory for new project" +msgstr "새로운 프로젝트를 위한 비어있는 디렉토리를 선택하세요" + +#: ../ProjectController.py:468 msgid "Chosen folder doesn't contain a program. It's not a valid project!" msgstr "베레미즈 프로젝트 폴더를 선택해 주세요. 선택하신 폴더는 프로젝트 폴더가 아닙니다!" -#: ../ProjectController.py:416 +#: ../ProjectController.py:435 msgid "Chosen folder isn't empty. You can't use it for a new project!" msgstr "선택된 폴더는 비어있지 않습니다. 새 프로젝트 폴더로 사용 할 수 없습니다!" -#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +#: ../controls/VariablePanel.py:60 msgid "Class" msgstr "클래스" -#: ../controls/VariablePanel.py:441 +#: ../controls/VariablePanel.py:472 msgid "Class Filter:" msgstr "클래스 필터:" -#: ../dialogs/FBDVariableDialog.py:70 +#: ../dialogs/FBDVariableDialog.py:74 msgid "Class:" msgstr "클래스:" -#: ../ProjectController.py:1836 +#: ../ProjectController.py:1821 msgid "Clean" msgstr "클린" -#: ../controls/LogViewer.py:318 +#: ../controls/LogViewer.py:327 msgid "Clean log messages" -msgstr "" - -#: ../ProjectController.py:1838 +msgstr "로그 메세지 정리" + +#: ../ProjectController.py:1822 msgid "Clean project build folder" msgstr "프로젝트 빌드 폴더를 비웁니다" -#: ../ProjectController.py:1294 +#: ../ProjectController.py:1332 msgid "Cleaning the build directory\n" msgstr "빌드 디렉토리를 비우는 중\n" -#: ../IDEFrame.py:435 +#: ../IDEFrame.py:437 msgid "Clear Errors" -msgstr "" - -#: ../editors/Viewer.py:641 +msgstr "에러 정리" + +#: ../editors/Viewer.py:680 msgid "Clear Execution Order" msgstr "실행 순서 클리어" -#: ../dialogs/SearchInProjectDialog.py:103 ../dialogs/FindInPouDialog.py:109 +#: ../dialogs/SearchInProjectDialog.py:107 ../dialogs/FindInPouDialog.py:112 msgid "Close" -msgstr "" - -#: ../BeremizIDE.py:595 ../PLCOpenEditor.py:209 +msgstr "닫기" + +#: ../BeremizIDE.py:627 ../PLCOpenEditor.py:183 msgid "Close Application" msgstr "어플리케이션 닫기" -#: ../BeremizIDE.py:228 ../BeremizIDE.py:539 ../PLCOpenEditor.py:110 -#: ../IDEFrame.py:1013 +#: ../BeremizIDE.py:253 ../BeremizIDE.py:566 ../PLCOpenEditor.py:81 +#: ../IDEFrame.py:1040 msgid "Close Project" msgstr "프로젝트 닫기" -#: ../BeremizIDE.py:226 ../PLCOpenEditor.py:108 +#: ../BeremizIDE.py:251 ../PLCOpenEditor.py:79 msgid "Close Tab" -msgstr "" - -#: ../editors/Viewer.py:600 ../editors/Viewer.py:2415 +msgstr "탭 닫기" + +#: ../editors/Viewer.py:638 ../editors/Viewer.py:2448 msgid "Coil" -msgstr "" - -#: ../editors/Viewer.py:620 ../editors/LDViewer.py:506 +msgstr "코일" + +#: ../editors/Viewer.py:659 ../editors/LDViewer.py:517 msgid "Comment" msgstr "코멘트" -#: ../BeremizIDE.py:276 ../BeremizIDE.py:279 ../PLCOpenEditor.py:161 -#: ../PLCOpenEditor.py:164 +#: ../BeremizIDE.py:303 ../BeremizIDE.py:307 ../PLCOpenEditor.py:134 +#: ../PLCOpenEditor.py:138 msgid "Community support" -msgstr "" - -#: ../dialogs/ProjectDialog.py:60 +msgstr "커뮤니티 지원" + +#: ../dialogs/ProjectDialog.py:65 msgid "Company Name" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:95 +msgstr "회사명" + +#: ../controls/ProjectPropertiesPanel.py:106 msgid "Company Name (required):" msgstr "회사명(필수):" -#: ../controls/ProjectPropertiesPanel.py:96 +#: ../controls/ProjectPropertiesPanel.py:107 msgid "Company URL (optional):" msgstr "회사 URL(옵션):" @@ -974,7 +985,7 @@ msgid "Comparison" msgstr "비교연산" -#: ../ProjectController.py:734 +#: ../ProjectController.py:756 msgid "Compiling IEC Program into C code...\n" msgstr "IEC 프로그램을 C코드로 컴파일링 중...\n" @@ -982,95 +993,95 @@ msgid "Concatenation" msgstr "문자열 연결(concatenation)" -#: ../editors/ConfTreeNodeEditor.py:230 +#: ../editors/ConfTreeNodeEditor.py:241 msgid "Config" -msgstr "" - -#: ../editors/ProjectNodeEditor.py:36 +msgstr "프로젝트 설정" + +#: ../editors/ProjectNodeEditor.py:39 msgid "Config variables" -msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:40 +msgstr "설정 변수들" + +#: ../dialogs/SearchInProjectDialog.py:43 msgid "Configuration" msgstr "설정(Configuration)" -#: ../PLCControler.py:99 +#: ../plcopen/types_enums.py:77 msgid "Configurations" msgstr "구성(Configurations)" -#: ../editors/Viewer.py:308 ../editors/Viewer.py:338 ../editors/Viewer.py:360 -#: ../editors/TextViewer.py:291 ../editors/TextViewer.py:342 -#: ../editors/TextViewer.py:365 ../controls/VariablePanel.py:328 +#: ../editors/Viewer.py:351 ../editors/Viewer.py:381 ../editors/Viewer.py:403 +#: ../editors/TextViewer.py:289 ../editors/TextViewer.py:343 +#: ../editors/TextViewer.py:366 ../controls/VariablePanel.py:354 msgid "Confirm or change variable name" -msgstr "" - -#: ../ProjectController.py:1851 +msgstr "승인 또는 변수 이름을 변경하세요" + +#: ../ProjectController.py:1842 msgid "Connect" msgstr "연결하기" -#: ../ProjectController.py:1852 +#: ../ProjectController.py:1843 msgid "Connect to the target PLC" msgstr "타겟 PLC와 연결" -#: ../ProjectController.py:1354 +#: ../ProjectController.py:1391 #, python-format msgid "Connected to URI: %s" -msgstr "" - -#: ../dialogs/SFCTransitionDialog.py:77 ../editors/Viewer.py:586 -#: ../editors/Viewer.py:2408 +msgstr "URI: %s 에 연결되었습니다. " + +#: ../dialogs/SFCTransitionDialog.py:78 ../editors/Viewer.py:623 +#: ../editors/Viewer.py:2441 msgid "Connection" msgstr "연결" -#: ../dialogs/ConnectionDialog.py:53 +#: ../dialogs/ConnectionDialog.py:55 msgid "Connection Properties" msgstr "연결 속성" -#: ../ProjectController.py:1709 +#: ../ProjectController.py:1691 msgid "Connection canceled!\n" msgstr "연결 취소!\n" -#: ../ProjectController.py:1734 +#: ../ProjectController.py:1714 #, python-format msgid "Connection failed to %s!\n" msgstr "%s 연결에 실패 하였습니다!\n" -#: ../connectors/PYRO/__init__.py:115 ../connectors/WAMP/__init__.py:111 +#: ../connectors/PYRO/__init__.py:123 ../connectors/WAMP/__init__.py:120 msgid "Connection lost!\n" -msgstr "" - -#: ../connectors/PYRO/__init__.py:102 +msgstr "연결이 끊어졌습니다!\n" + +#: ../connectors/PYRO/__init__.py:110 #, python-format msgid "Connection to '%s' failed.\n" -msgstr "" - -#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1643 +msgstr "'%s'와의 연결이 실패하였습니다.\n" + +#: ../dialogs/ConnectionDialog.py:67 ../editors/Viewer.py:1676 msgid "Connector" msgstr "연결자(Connector)" -#: ../dialogs/SFCStepDialog.py:66 +#: ../dialogs/SFCStepDialog.py:68 msgid "Connectors:" msgstr "연결자(Connectors):" -#: ../BeremizIDE.py:350 +#: ../BeremizIDE.py:378 msgid "Console" -msgstr "" - -#: ../controls/VariablePanel.py:60 +msgstr "콘솔" + +#: ../controls/VariablePanel.py:75 msgid "Constant" msgstr "상수" -#: ../editors/Viewer.py:596 ../editors/Viewer.py:2411 +#: ../editors/Viewer.py:634 ../editors/Viewer.py:2444 msgid "Contact" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:198 +msgstr "지속 커넥터" + +#: ../controls/ProjectPropertiesPanel.py:217 msgid "Content Description (optional):" msgstr "컨텐츠 설명(옵션):" -#: ../dialogs/ConnectionDialog.py:66 ../editors/Viewer.py:1644 +#: ../dialogs/ConnectionDialog.py:68 ../editors/Viewer.py:1677 msgid "Continuation" -msgstr "지속 커넥터" +msgstr "지속 연결자" #: ../plcopen/iec_std.csv:18 msgid "Conversion from BCD" @@ -1088,158 +1099,160 @@ msgid "Conversion to time-of-day" msgstr "시간으로 변환" -#: ../editors/Viewer.py:656 ../controls/LogViewer.py:704 ../IDEFrame.py:370 -#: ../IDEFrame.py:425 +#: ../editors/Viewer.py:695 ../controls/LogViewer.py:713 ../IDEFrame.py:372 +#: ../IDEFrame.py:427 msgid "Copy" msgstr "복사하기" -#: ../IDEFrame.py:1933 +#: ../IDEFrame.py:1964 msgid "Copy POU" msgstr "POU 복사" -#: ../editors/FileManagementPanel.py:65 +#: ../editors/FileManagementPanel.py:68 msgid "Copy file from left folder to right" -msgstr "" - -#: ../editors/FileManagementPanel.py:64 +msgstr "좌측폴더에서 우측폴더로 파일을 복사" + +#: ../editors/FileManagementPanel.py:67 msgid "Copy file from right folder to left" -msgstr "" +msgstr "우측폴더에서 좌측폴더로 파일을 복사" #: ../plcopen/iec_std.csv:28 msgid "Cosine" msgstr "Cosine" -#: ../ConfigTreeNode.py:656 +#: ../ConfigTreeNode.py:660 #, python-brace-format msgid "" "Could not add child \"{a1}\", type {a2} :\n" "{a3}\n" msgstr "" - -#: ../py_ext/PythonFileCTNMixin.py:78 +"차일드 \"{a1}\" 를 추가할 수 없습니다, 타입 {a2} :\n" +"{a3}\n" + +#: ../py_ext/PythonFileCTNMixin.py:81 #, python-format msgid "Couldn't import old %s file." -msgstr "" - -#: ../ConfigTreeNode.py:626 +msgstr "예전 파일 %s을 불러올 수 없습니다." + +#: ../ConfigTreeNode.py:630 #, python-brace-format msgid "" "Couldn't load confnode base parameters {a1} :\n" " {a2}" msgstr "" - -#: ../ConfigTreeNode.py:643 ../CodeFileTreeNode.py:124 +"confnode 기본 파라메터들을 불러올 수 없었습니다 {a1}:\n" +"{a2}" + +#: ../ConfigTreeNode.py:647 ../CodeFileTreeNode.py:127 #, python-brace-format msgid "" "Couldn't load confnode parameters {a1} :\n" " {a2}" msgstr "" - -#: ../PLCControler.py:948 +"confnode 파라메터들을 불러올 수 없었습니다 {a1}:\n" +"{a2}" + +#: ../PLCControler.py:552 msgid "Couldn't paste non-POU object." msgstr "POU 오브젝트만 붙여넣기 가능합니다" -#: ../ProjectController.py:1651 +#: ../ProjectController.py:1636 msgid "Couldn't start PLC !\n" msgstr "PLC 를 시작 할 수 없습니다!\n" -#: ../ProjectController.py:1659 +#: ../ProjectController.py:1644 msgid "Couldn't stop PLC !\n" msgstr "PLC 를 정지 할 수 없습니다!\n" -#: ../ProjectController.py:1623 -msgid "Couldn't stop debugger.\n" -msgstr "디버거를 정지 할 수 없습니다.\n" - -#: ../svgui/svgui.py:49 +#: ../svgui/svgui.py:57 msgid "Create HMI" msgstr "HMI 생성" -#: ../dialogs/PouDialog.py:46 +#: ../dialogs/PouDialog.py:54 msgid "Create a new POU" msgstr "새로운 POU 생성" -#: ../dialogs/PouActionDialog.py:38 +#: ../dialogs/PouActionDialog.py:45 msgid "Create a new action" msgstr "새로운 액션 생성" -#: ../IDEFrame.py:159 +#: ../IDEFrame.py:166 msgid "Create a new action block" msgstr "새로운 액션 블럭 생성" -#: ../IDEFrame.py:108 ../IDEFrame.py:138 ../IDEFrame.py:171 +#: ../IDEFrame.py:115 ../IDEFrame.py:145 ../IDEFrame.py:178 msgid "Create a new block" msgstr "새로운 블럭 생성" -#: ../IDEFrame.py:132 +#: ../IDEFrame.py:139 msgid "Create a new branch" msgstr "새로운 분기(Branch) 생성" -#: ../IDEFrame.py:126 +#: ../IDEFrame.py:133 msgid "Create a new coil" msgstr "새로운 코일 생성" -#: ../IDEFrame.py:102 ../IDEFrame.py:117 ../IDEFrame.py:147 +#: ../IDEFrame.py:109 ../IDEFrame.py:124 ../IDEFrame.py:154 msgid "Create a new comment" msgstr "새로운 코멘트 생성" -#: ../IDEFrame.py:111 ../IDEFrame.py:141 ../IDEFrame.py:174 +#: ../IDEFrame.py:118 ../IDEFrame.py:148 ../IDEFrame.py:181 msgid "Create a new connection" msgstr "새로운 연결 생성" -#: ../IDEFrame.py:129 ../IDEFrame.py:180 +#: ../IDEFrame.py:136 ../IDEFrame.py:187 msgid "Create a new contact" msgstr "새로운 접점 생성" -#: ../IDEFrame.py:162 +#: ../IDEFrame.py:169 msgid "Create a new divergence" msgstr "새로운 분기(divergence) 생성" -#: ../dialogs/SFCDivergenceDialog.py:53 +#: ../dialogs/SFCDivergenceDialog.py:54 msgid "Create a new divergence or convergence" msgstr "새로운 분기(divergence) 또는 합류(convergence) 생성" -#: ../IDEFrame.py:150 +#: ../IDEFrame.py:157 msgid "Create a new initial step" msgstr "새로운 이니셜 스텝 생성" -#: ../IDEFrame.py:165 +#: ../IDEFrame.py:172 msgid "Create a new jump" msgstr "새로운 점프 생성" -#: ../IDEFrame.py:120 ../IDEFrame.py:177 +#: ../IDEFrame.py:127 ../IDEFrame.py:184 msgid "Create a new power rail" msgstr "새로운 전원 레일 생성" -#: ../IDEFrame.py:123 +#: ../IDEFrame.py:130 msgid "Create a new rung" msgstr "새로운 Rung 생성" -#: ../IDEFrame.py:153 +#: ../IDEFrame.py:160 msgid "Create a new step" msgstr "새로운 스텝 생성" -#: ../dialogs/PouTransitionDialog.py:42 ../IDEFrame.py:156 +#: ../dialogs/PouTransitionDialog.py:49 ../IDEFrame.py:163 msgid "Create a new transition" msgstr "새로운 트랜지션 생성" -#: ../IDEFrame.py:105 ../IDEFrame.py:135 ../IDEFrame.py:168 +#: ../IDEFrame.py:112 ../IDEFrame.py:142 ../IDEFrame.py:175 msgid "Create a new variable" msgstr "새로운 변수 생성" -#: ../dialogs/AboutDialog.py:113 +#: ../dialogs/AboutDialog.py:109 msgid "Credits" -msgstr "" - -#: ../Beremiz_service.py:434 +msgstr "크레딧" + +#: ../Beremiz_service.py:424 msgid "Current working directory :" -msgstr "" - -#: ../editors/Viewer.py:655 ../IDEFrame.py:368 ../IDEFrame.py:424 +msgstr "현재 작업 디렉토리:" + +#: ../editors/Viewer.py:694 ../IDEFrame.py:370 ../IDEFrame.py:426 msgid "Cut" msgstr "잘라내기" -#: ../editors/ResourceEditor.py:72 +#: ../editors/ResourceEditor.py:81 msgid "Cyclic" msgstr "주기적" @@ -1251,19 +1264,19 @@ msgid "DEPRECATED" msgstr "사용중지됨" -#: ../canfestival/SlaveEditor.py:76 ../canfestival/NetworkEditor.py:97 +#: ../canfestival/SlaveEditor.py:80 ../canfestival/NetworkEditor.py:104 msgid "DS-301 Profile" msgstr "DS-301 프로필" -#: ../canfestival/SlaveEditor.py:77 ../canfestival/NetworkEditor.py:98 +#: ../canfestival/SlaveEditor.py:81 ../canfestival/NetworkEditor.py:105 msgid "DS-302 Profile" msgstr "DS-302 프로필" -#: ../dialogs/SearchInProjectDialog.py:36 +#: ../dialogs/SearchInProjectDialog.py:39 msgid "Data Type" msgstr "데이터 타입(Data Type)" -#: ../PLCControler.py:98 +#: ../plcopen/types_enums.py:76 msgid "Data Types" msgstr "데이터 타입(Data Types)" @@ -1284,66 +1297,58 @@ msgid "Date subtraction" msgstr "날짜 뺄셈" -#: ../dialogs/DurationEditorDialog.py:44 +#: ../dialogs/DurationEditorDialog.py:46 msgid "Days:" -msgstr "" - -#: ../ProjectController.py:1756 +msgstr "일:" + +#: ../ProjectController.py:1729 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" -msgstr "" - -#: ../controls/PouInstanceVariablesPanel.py:134 +msgstr "디버그 정보가 PLC와 일치하지 않습니다 - 활성화를 위해 정지/전송/시작 버튼을 누르세요\n" + +#: ../controls/PouInstanceVariablesPanel.py:144 msgid "Debug instance" -msgstr "" - -#: ../editors/Viewer.py:448 +msgstr "디버그 인스턴스" + +#: ../editors/Viewer.py:490 #, python-format msgid "Debug: %s" msgstr "디버그: %s" -#: ../ProjectController.py:1412 +#: ../ProjectController.py:1471 #, python-format msgid "Debug: Unknown variable '%s'\n" -msgstr "" - -#: ../ProjectController.py:1410 +msgstr "Debug: 알 수 없는 변수 '%s'\n" + +#: ../ProjectController.py:1469 #, python-format msgid "Debug: Unsupported type to debug '%s'\n" -msgstr "" - -#: ../IDEFrame.py:639 +msgstr "Debug: 지원되지 않는 자료형 '%s'\n" + +#: ../IDEFrame.py:660 msgid "Debugger" msgstr "디버거" -#: ../ProjectController.py:1592 -msgid "Debugger disabled\n" -msgstr "디버거 사용 불가\n" - -#: ../ProjectController.py:1753 +#: ../ProjectController.py:1726 msgid "Debugger ready\n" -msgstr "" - -#: ../ProjectController.py:1625 -msgid "Debugger stopped.\n" -msgstr "디버거 정지.\n" - -#: ../BeremizIDE.py:968 ../editors/Viewer.py:631 ../IDEFrame.py:1962 +msgstr "디버거가 준비되었습니다. \n" + +#: ../BeremizIDE.py:1004 ../editors/Viewer.py:670 ../IDEFrame.py:1993 msgid "Delete" msgstr "삭제" -#: ../editors/Viewer.py:573 +#: ../editors/Viewer.py:610 msgid "Delete Divergence Branch" msgstr "파생된 Branch 삭제 (Divergence Branch)" -#: ../editors/FileManagementPanel.py:153 +#: ../editors/FileManagementPanel.py:157 msgid "Delete File" -msgstr "" - -#: ../editors/Viewer.py:560 +msgstr "파일 삭제" + +#: ../editors/Viewer.py:597 msgid "Delete Wire Segment" msgstr "와이어 세그먼트 삭제" -#: ../controls/CustomEditableListBox.py:41 +#: ../controls/CustomEditableListBox.py:44 msgid "Delete item" msgstr "항목 삭제" @@ -1351,168 +1356,168 @@ msgid "Deletion (within)" msgstr "내부 삭제" -#: ../editors/DataTypeEditor.py:153 +#: ../editors/DataTypeEditor.py:161 msgid "Derivation Type:" msgstr "미분 타입" -#: ../editors/CodeFileEditor.py:739 +#: ../editors/CodeFileEditor.py:735 msgid "Description" -msgstr "" - -#: ../controls/VariablePanel.py:432 +msgstr "상세설명" + +#: ../controls/VariablePanel.py:463 msgid "Description:" -msgstr "" - -#: ../dialogs/ArrayTypeDialog.py:60 ../editors/DataTypeEditor.py:321 +msgstr "상세설명:" + +#: ../dialogs/ArrayTypeDialog.py:63 ../editors/DataTypeEditor.py:332 msgid "Dimensions:" msgstr "넓이:" -#: ../dialogs/FindInPouDialog.py:66 +#: ../dialogs/FindInPouDialog.py:69 msgid "Direction" -msgstr "" - -#: ../dialogs/BrowseLocationsDialog.py:91 +msgstr "방향" + +#: ../dialogs/BrowseLocationsDialog.py:102 msgid "Direction:" msgstr "방향:" -#: ../editors/DataTypeEditor.py:54 +#: ../editors/DataTypeEditor.py:60 msgid "Directly" msgstr "직접" -#: ../ProjectController.py:1860 +#: ../ProjectController.py:1855 msgid "Disconnect" msgstr "연결 해제" -#: ../ProjectController.py:1862 +#: ../ProjectController.py:1856 msgid "Disconnect from PLC" msgstr "PLC 연결 해제" -#: ../ProjectController.py:1364 +#: ../ProjectController.py:1401 msgid "Disconnected" -msgstr "" - -#: ../editors/Viewer.py:615 ../editors/Viewer.py:2403 +msgstr "연결 해제" + +#: ../editors/Viewer.py:654 ../editors/Viewer.py:2436 msgid "Divergence" -msgstr "" +msgstr "발산" #: ../plcopen/iec_std.csv:36 msgid "Division" msgstr "분할" -#: ../editors/FileManagementPanel.py:152 +#: ../editors/FileManagementPanel.py:156 #, python-format msgid "Do you really want to delete the file '%s'?" -msgstr "" - -#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +msgstr "정말 '%s' 파일을 삭제해도 될까요? " + +#: ../controls/VariablePanel.py:65 msgid "Documentation" msgstr "도움문서" -#: ../PLCOpenEditor.py:338 +#: ../PLCOpenEditor.py:312 msgid "Done" msgstr "완료" -#: ../dialogs/ActionBlockDialog.py:39 +#: ../dialogs/ActionBlockDialog.py:42 msgid "Duration" msgstr "지속시간" -#: ../canfestival/canfestival.py:165 +#: ../canfestival/canfestival.py:174 msgid "EDS files (*.eds)|*.eds|All files|*.*" -msgstr "" - -#: ../editors/Viewer.py:629 +msgstr "EDS 파일들 (*.eds)|*.eds|All files|*.*" + +#: ../editors/Viewer.py:668 msgid "Edit Block" msgstr "블럭 수정" -#: ../dialogs/LDElementDialog.py:56 +#: ../dialogs/LDElementDialog.py:58 msgid "Edit Coil Values" msgstr "코일 데이터 수정" -#: ../dialogs/LDElementDialog.py:54 +#: ../dialogs/LDElementDialog.py:56 msgid "Edit Contact Values" msgstr "접접 데이터 수정" -#: ../dialogs/DurationEditorDialog.py:59 +#: ../dialogs/DurationEditorDialog.py:62 msgid "Edit Duration" -msgstr "" - -#: ../dialogs/SFCStepDialog.py:51 +msgstr "지속시간 수정" + +#: ../dialogs/SFCStepDialog.py:53 msgid "Edit Step" msgstr "스텝 수정" -#: ../wxglade_hmi/wxglade_hmi.py:38 +#: ../wxglade_hmi/wxglade_hmi.py:45 msgid "Edit a WxWidgets GUI with WXGlade" msgstr "WXGlade를 이용하여 GUI 수정" -#: ../dialogs/ActionBlockDialog.py:121 +#: ../dialogs/ActionBlockDialog.py:127 msgid "Edit action block properties" msgstr "액션 블럭 속성 수정" -#: ../dialogs/ArrayTypeDialog.py:44 +#: ../dialogs/ArrayTypeDialog.py:47 msgid "Edit array type properties" -msgstr "" - -#: ../editors/Viewer.py:2626 ../editors/Viewer.py:3055 +msgstr "배열 타입 속성 수정" + +#: ../editors/Viewer.py:2660 ../editors/Viewer.py:3102 msgid "Edit comment" msgstr "코멘트 수정" -#: ../editors/FileManagementPanel.py:66 +#: ../editors/FileManagementPanel.py:69 msgid "Edit file" -msgstr "" - -#: ../controls/CustomEditableListBox.py:39 +msgstr "파일 편집" + +#: ../controls/CustomEditableListBox.py:42 msgid "Edit item" msgstr "항목 수정" -#: ../editors/Viewer.py:3014 +#: ../editors/Viewer.py:3059 msgid "Edit jump target" msgstr "점프 타겟 수정" -#: ../ProjectController.py:1874 +#: ../ProjectController.py:1873 msgid "Edit raw IEC code added to code generated by PLCGenerator" msgstr "PLCGenerator로 생성된 IEC 코드 수정" -#: ../editors/SFCViewer.py:799 +#: ../editors/SFCViewer.py:815 msgid "Edit step name" msgstr "스텝 이름 수정" -#: ../dialogs/SFCTransitionDialog.py:52 +#: ../dialogs/SFCTransitionDialog.py:53 msgid "Edit transition" msgstr "트랜지션 수정" -#: ../IDEFrame.py:611 +#: ../IDEFrame.py:632 msgid "Editor ToolBar" -msgstr "" - -#: ../ProjectController.py:1257 +msgstr "툴바 에디터" + +#: ../ProjectController.py:1294 msgid "Editor selection" -msgstr "" - -#: ../editors/DataTypeEditor.py:348 +msgstr "에디터 선택" + +#: ../editors/DataTypeEditor.py:360 msgid "Elements :" msgstr "구성원:" -#: ../ProjectController.py:1362 +#: ../ProjectController.py:1399 msgid "Empty" -msgstr "" - -#: ../IDEFrame.py:365 -msgid "Enable Undo/Redo" -msgstr "되돌리기/되돌리기 취소 활성화" - -#: ../Beremiz_service.py:333 +msgstr "비어있는" + +#: ../dialogs/ArrayTypeDialog.py:100 +msgid "Empty dimension isn't allowed." +msgstr "배열에서 비어있는 차원은 허용되지 않습니다. " + +#: ../Beremiz_service.py:341 msgid "Enter a name " msgstr "이름 입력" -#: ../Beremiz_service.py:318 +#: ../Beremiz_service.py:326 msgid "Enter a port number " msgstr "포트 번호 입력" -#: ../Beremiz_service.py:309 +#: ../Beremiz_service.py:317 msgid "Enter the IP of the interface to bind" msgstr "바인드 인터페이스 IP 입력" -#: ../editors/DataTypeEditor.py:54 +#: ../editors/DataTypeEditor.py:60 msgid "Enumerated" msgstr "열거형 데이터" @@ -1520,48 +1525,47 @@ msgid "Equal to" msgstr "같은 값 일때" -#: ../BeremizIDE.py:1107 ../dialogs/ForceVariableDialog.py:197 -#: ../dialogs/SearchInProjectDialog.py:168 ../dialogs/SFCStepNameDialog.py:60 -#: ../dialogs/DurationEditorDialog.py:121 -#: ../dialogs/DurationEditorDialog.py:167 -#: ../dialogs/PouTransitionDialog.py:107 ../dialogs/BlockPreviewDialog.py:237 -#: ../dialogs/ProjectDialog.py:74 ../dialogs/ArrayTypeDialog.py:97 -#: ../dialogs/ArrayTypeDialog.py:103 ../dialogs/PouNameDialog.py:54 -#: ../dialogs/BrowseLocationsDialog.py:218 -#: ../dialogs/BrowseValuesLibraryDialog.py:83 -#: ../dialogs/PouActionDialog.py:105 ../dialogs/PouDialog.py:135 -#: ../PLCOpenEditor.py:345 ../PLCOpenEditor.py:350 ../PLCOpenEditor.py:430 -#: ../PLCOpenEditor.py:440 ../editors/ResourceEditor.py:436 -#: ../editors/Viewer.py:424 ../editors/LDViewer.py:666 -#: ../editors/LDViewer.py:882 ../editors/LDViewer.py:886 -#: ../editors/DataTypeEditor.py:550 ../editors/DataTypeEditor.py:555 -#: ../editors/DataTypeEditor.py:574 ../editors/DataTypeEditor.py:743 -#: ../editors/DataTypeEditor.py:750 ../editors/TextViewer.py:389 -#: ../editors/CodeFileEditor.py:762 ../ProjectController.py:372 -#: ../ProjectController.py:512 ../ProjectController.py:519 -#: ../controls/FolderTree.py:217 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:166 -#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:137 -#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:231 -#: ../controls/VariablePanel.py:402 ../controls/VariablePanel.py:759 -#: ../IDEFrame.py:1007 ../IDEFrame.py:1617 ../IDEFrame.py:1658 -#: ../IDEFrame.py:1663 ../IDEFrame.py:1677 ../IDEFrame.py:1682 -#: ../Beremiz_service.py:213 +#: ../dialogs/ForceVariableDialog.py:213 +#: ../dialogs/SearchInProjectDialog.py:172 ../dialogs/SFCStepNameDialog.py:64 +#: ../dialogs/DurationEditorDialog.py:124 +#: ../dialogs/DurationEditorDialog.py:170 +#: ../dialogs/PouTransitionDialog.py:114 ../dialogs/BlockPreviewDialog.py:237 +#: ../dialogs/ProjectDialog.py:80 ../dialogs/ArrayTypeDialog.py:114 +#: ../dialogs/PouNameDialog.py:58 ../dialogs/BrowseLocationsDialog.py:229 +#: ../dialogs/BrowseValuesLibraryDialog.py:87 +#: ../dialogs/PouActionDialog.py:112 ../dialogs/PouDialog.py:143 +#: ../PLCOpenEditor.py:319 ../PLCOpenEditor.py:324 +#: ../editors/ResourceEditor.py:470 ../editors/Viewer.py:467 +#: ../editors/LDViewer.py:677 ../editors/LDViewer.py:893 +#: ../editors/LDViewer.py:897 ../editors/DataTypeEditor.py:566 +#: ../editors/DataTypeEditor.py:571 ../editors/DataTypeEditor.py:590 +#: ../editors/DataTypeEditor.py:759 ../editors/DataTypeEditor.py:766 +#: ../editors/TextViewer.py:390 ../editors/CodeFileEditor.py:760 +#: ../ProjectController.py:391 ../ProjectController.py:531 +#: ../ProjectController.py:538 ../controls/FolderTree.py:222 +#: ../controls/ProjectPropertiesPanel.py:306 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:173 +#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:138 +#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:227 +#: ../controls/VariablePanel.py:431 ../controls/VariablePanel.py:773 +#: ../util/ExceptionHandler.py:70 ../IDEFrame.py:1036 ../IDEFrame.py:1650 +#: ../IDEFrame.py:1691 ../IDEFrame.py:1696 ../IDEFrame.py:1710 +#: ../IDEFrame.py:1715 ../Beremiz_service.py:221 msgid "Error" msgstr "에러" -#: ../ProjectController.py:789 +#: ../ProjectController.py:811 msgid "" "Error : At least one configuration and one resource must be declared in PLC " "!\n" msgstr "에러 : PLC 프로그램은 하나 이상의 설정과 리소스가 반드시 선언되어야 합니다!\n" -#: ../ProjectController.py:781 +#: ../ProjectController.py:803 #, python-format msgid "Error : IEC to C compiler returned %d\n" msgstr "에러 : IEC -> C 컴파일러 %d\n" -#: ../ProjectController.py:712 +#: ../ProjectController.py:731 #, python-format msgid "" "Error in ST/IL/SFC code generator :\n" @@ -1570,37 +1574,44 @@ "ST/IL/SFC 코드 생성기 에러 : \n" "%s\n" -#: ../ConfigTreeNode.py:216 +#: ../ConfigTreeNode.py:219 #, python-format msgid "Error while saving \"%s\"\n" msgstr "저장 중 에러 발생 \"%s\"\n" -#: ../canfestival/canfestival.py:170 +#: ../canfestival/canfestival.py:179 msgid "Error: Export slave failed\n" -msgstr "" - -#: ../canfestival/canfestival.py:371 +msgstr "에러: 슬레이브 내보내기 실패\n" + +#: ../modbus/modbus.py:601 +#, python-brace-format +msgid "" +"Error: Modbus/IP Servers %{a1}.x and %{a2}.x use the same port number " +"{a3}.\n" +msgstr "에러: Modbus/IP 서버 %{a1}.x와 %{a2}.x가 같은 port 번호 {a3}을 사용하고 있습니다.\n" + +#: ../canfestival/canfestival.py:388 msgid "Error: No Master generated\n" msgstr "에러 : 마스터 미생성 \"%s\"\n" -#: ../canfestival/canfestival.py:366 +#: ../canfestival/canfestival.py:383 msgid "Error: No PLC built\n" msgstr "에러 : PLC 빌드 미생성\n" -#: ../ProjectController.py:1728 +#: ../ProjectController.py:1708 #, python-format msgid "Exception while connecting %s!\n" msgstr "%s접속중 예외 상황이 발생했습니다!\n" -#: ../dialogs/FBDBlockDialog.py:120 +#: ../dialogs/FBDBlockDialog.py:123 msgid "Execution Control:" msgstr "실행 제어:" -#: ../dialogs/FBDVariableDialog.py:80 ../dialogs/FBDBlockDialog.py:108 +#: ../dialogs/FBDVariableDialog.py:84 ../dialogs/FBDBlockDialog.py:111 msgid "Execution Order:" msgstr "실행 순서:" -#: ../features.py:35 +#: ../features.py:36 msgid "Experimental web based HMI" msgstr "웹 기반의 HMI(실험중)" @@ -1612,171 +1623,167 @@ msgid "Exponentiation" msgstr "지수화" -#: ../canfestival/canfestival.py:176 +#: ../canfestival/canfestival.py:186 msgid "Export CanOpen slave to EDS file" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:243 +msgstr "CanOpen 슬레이브를 EDS 파일로 내보내기" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:246 msgid "Export graph values to clipboard" -msgstr "" - -#: ../canfestival/canfestival.py:175 +msgstr "그래프 값들을 클립보드로 내보내기" + +#: ../canfestival/canfestival.py:185 msgid "Export slave" -msgstr "" - -#: ../dialogs/FBDVariableDialog.py:90 +msgstr "슬레이브 내보내기" + +#: ../dialogs/FBDVariableDialog.py:94 msgid "Expression:" msgstr "표현식:" -#: ../controls/VariablePanel.py:72 +#: ../controls/VariablePanel.py:90 msgid "External" msgstr "외부" -#: ../ProjectController.py:802 +#: ../ProjectController.py:826 msgid "Extracting Located Variables...\n" msgstr "위치 변수(located variables) 추출 중...\n" -#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 -#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144 +#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 +#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158 msgid "FBD" msgstr "FBD" -#: ../ProjectController.py:1791 +#: ../ProjectController.py:1773 msgid "Failed : Must build before transfer.\n" msgstr "실패 : 빌드 후에 전송 하세요.\n" -#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:521 +#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:556 msgid "Falling Edge" msgstr "폴링 엣지" -#: ../ProjectController.py:1070 +#: ../ProjectController.py:1098 msgid "Fatal : cannot get builder.\n" msgstr "치명적 오류 : 빌드 파일 생성 프로그램을 찾을 수 없습니다.\n" -#: ../Beremiz.py:156 +#: ../Beremiz.py:160 #, python-format msgid "Fetching %s" -msgstr "" - -#: ../dialogs/DurationEditorDialog.py:164 +msgstr "%s 가져오기 중" + +#: ../dialogs/DurationEditorDialog.py:167 #, python-format msgid "Field %s hasn't a valid value!" -msgstr "" - -#: ../dialogs/DurationEditorDialog.py:166 +msgstr "필드 %s는 유효하지 않은 값입니다!" + +#: ../dialogs/DurationEditorDialog.py:169 #, python-format msgid "Fields %s haven't a valid value!" -msgstr "" - -#: ../controls/FolderTree.py:216 +msgstr "필드 %s는 유효한 값이 아닙니다!" + +#: ../controls/FolderTree.py:221 #, python-format msgid "File '%s' already exists!" -msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:98 ../dialogs/FindInPouDialog.py:37 -#: ../dialogs/FindInPouDialog.py:104 ../IDEFrame.py:375 +msgstr "파일 '%s' 가 이미 존재합니다!" + +#: ../dialogs/SearchInProjectDialog.py:102 ../dialogs/FindInPouDialog.py:40 +#: ../dialogs/FindInPouDialog.py:107 ../IDEFrame.py:377 msgid "Find" -msgstr "" - -#: ../IDEFrame.py:377 +msgstr "찾기" + +#: ../IDEFrame.py:379 msgid "Find Next" -msgstr "" - -#: ../IDEFrame.py:379 +msgstr "다음 찾기" + +#: ../IDEFrame.py:381 msgid "Find Previous" -msgstr "" +msgstr "이전 찾기" #: ../plcopen/iec_std.csv:90 msgid "Find position" msgstr "위치 찾기" -#: ../dialogs/FindInPouDialog.py:55 +#: ../dialogs/FindInPouDialog.py:58 msgid "Find:" -msgstr "" - -#: ../connectors/PYRO/__init__.py:163 -msgid "Force runtime reload\n" -msgstr "실행환경 강제 리로딩\n" - -#: ../editors/Viewer.py:1600 +msgstr "찾기:" + +#: ../editors/Viewer.py:1633 msgid "Force value" msgstr "강제 데이터 입력" -#: ../dialogs/ForceVariableDialog.py:162 +#: ../dialogs/ForceVariableDialog.py:176 msgid "Forcing Variable Value" msgstr "강제 변수 데이터" -#: ../dialogs/SFCTransitionDialog.py:182 ../dialogs/PouTransitionDialog.py:97 -#: ../dialogs/ProjectDialog.py:73 ../dialogs/PouActionDialog.py:95 -#: ../dialogs/PouDialog.py:117 +#: ../dialogs/SFCTransitionDialog.py:184 ../dialogs/PouTransitionDialog.py:104 +#: ../dialogs/ProjectDialog.py:79 ../dialogs/PouActionDialog.py:102 +#: ../dialogs/PouDialog.py:125 #, python-format msgid "Form isn't complete. %s must be filled!" msgstr "형식이 완성되지 않았습니다. %s 를 입력하세요!" -#: ../dialogs/SFCStepDialog.py:147 ../dialogs/FBDBlockDialog.py:236 -#: ../dialogs/ConnectionDialog.py:163 +#: ../dialogs/SFCStepDialog.py:150 ../dialogs/FBDBlockDialog.py:239 +#: ../dialogs/ConnectionDialog.py:166 msgid "Form isn't complete. Name must be filled!" msgstr "형식이 완성되지 않았습니다. 이름을 입력하세요" -#: ../dialogs/FBDBlockDialog.py:232 +#: ../dialogs/FBDBlockDialog.py:235 msgid "Form isn't complete. Valid block type must be selected!" msgstr "형식이 완성되지 않았습니다. 블럭 타입을 선택하세요!" -#: ../dialogs/FindInPouDialog.py:72 +#: ../dialogs/FindInPouDialog.py:75 msgid "Forward" -msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1749 +msgstr "앞으로" + +#: ../dialogs/SearchInProjectDialog.py:40 ../IDEFrame.py:1780 msgid "Function" msgstr "함수" -#: ../IDEFrame.py:349 +#: ../IDEFrame.py:354 msgid "Function &Block" msgstr "함수 &블록" -#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1748 -#: ../IDEFrame.py:1941 +#: ../dialogs/SearchInProjectDialog.py:41 ../IDEFrame.py:1779 +#: ../IDEFrame.py:1972 msgid "Function Block" msgstr "함수 블럭(Function Block)" -#: ../controls/VariablePanel.py:854 +#: ../controls/VariablePanel.py:868 msgid "Function Block Types" msgstr "함수 블럭 타입" -#: ../PLCControler.py:97 +#: ../plcopen/types_enums.py:75 msgid "Function Blocks" msgstr "함수 블럭(Function Blocks)" -#: ../editors/Viewer.py:249 +#: ../editors/Viewer.py:290 msgid "Function Blocks can't be used in Functions!" msgstr "함수 블럭을 함수에서 사용할 수 없습니다!" -#: ../PLCControler.py:2343 +#: ../PLCControler.py:1907 #, python-format msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!" msgstr "함수 블럭 \"%s\" 을 함수에 붙여 넣기 할 수 없습니다!!!" -#: ../PLCControler.py:97 +#: ../plcopen/types_enums.py:75 msgid "Functions" msgstr "함수 (Functions)" -#: ../PLCOpenEditor.py:117 +#: ../PLCOpenEditor.py:88 msgid "Generate Program" -msgstr "" - -#: ../ProjectController.py:703 +msgstr "프로그램 생성" + +#: ../ProjectController.py:722 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n" msgstr "IEC-61131 기반의 ST/IL/SFC 코드 생성중...\n" -#: ../controls/VariablePanel.py:73 +#: ../controls/VariablePanel.py:91 msgid "Global" msgstr "글로벌" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:242 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:245 msgid "Go to current value" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:174 +msgstr "현재 값으로 가기" + +#: ../controls/ProjectPropertiesPanel.py:189 msgid "Graphics" msgstr "그래픽" @@ -1788,110 +1795,114 @@ msgid "Greater than or equal to" msgstr "크거나 같은 값 일때" -#: ../controls/ProjectPropertiesPanel.py:135 +#: ../controls/ProjectPropertiesPanel.py:149 msgid "Grid Resolution:" msgstr "격자 해상도:" -#: ../runtime/NevowServer.py:182 +#: ../runtime/NevowServer.py:192 msgid "HTTP interface port :" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:121 +msgstr "HTTP 인터페이스 포트:" + +#: ../controls/ProjectPropertiesPanel.py:135 msgid "Height:" msgstr "높이:" -#: ../editors/FileManagementPanel.py:85 +#: ../editors/FileManagementPanel.py:89 msgid "Home Directory:" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:151 +msgstr "홈 디렉토리:" + +#: ../controls/ProjectPropertiesPanel.py:165 msgid "Horizontal:" msgstr "가로:" -#: ../dialogs/DurationEditorDialog.py:45 +#: ../dialogs/DurationEditorDialog.py:47 msgid "Hours:" -msgstr "" - -#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 -#: ../dialogs/PouDialog.py:37 +msgstr "시간:" + +#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 +#: ../dialogs/PouDialog.py:44 msgid "IL" msgstr "IL" -#: ../dialogs/DiscoveryDialog.py:94 +#: ../dialogs/DiscoveryDialog.py:91 msgid "IP" -msgstr "" - -#: ../Beremiz_service.py:310 ../Beremiz_service.py:311 +msgstr "IP" + +#: ../Beremiz_service.py:318 ../Beremiz_service.py:320 msgid "IP is not valid!" msgstr "IP를 정확히 입력하세요!" -#: ../svgui/svgui.py:44 ../svgui/svgui.py:45 +#: ../svgui/svgui.py:50 ../svgui/svgui.py:51 msgid "Import SVG" msgstr "SVG 가져오기" -#: ../dialogs/FBDVariableDialog.py:39 ../editors/Viewer.py:1629 -#: ../controls/VariablePanel.py:71 +#: ../dialogs/FBDVariableDialog.py:41 ../editors/Viewer.py:1662 +#: ../controls/VariablePanel.py:89 msgid "InOut" msgstr "입출력" -#: ../editors/Viewer.py:431 +#: ../PLCGenerator.py:1040 +#, python-brace-format +msgid "InOut variable {a1} in block {a2} in POU {a3} must be connected." +msgstr "POU {a3} 안의 블록 {a2} 내의 입출력 변수 {a1}이 연결되어야 합니다. " + +#: ../editors/Viewer.py:473 msgid "Inactive" -msgstr "" - -#: ../controls/VariablePanel.py:276 +msgstr "비활성" + +#: ../controls/VariablePanel.py:300 #, python-brace-format msgid "Incompatible data types between \"{a1}\" and \"{a2}\"" -msgstr "" - -#: ../controls/VariablePanel.py:282 +msgstr "\"{a1}\" 과 \"{a2}\" 의 데이터 형이 호환되지 않습니다." + +#: ../controls/VariablePanel.py:306 #, python-format msgid "Incompatible size of data between \"%s\" and \"BOOL\"" msgstr "\"%s\"와 \"BOOL\"간의 데이터 크기가 호환되지 않습니다" -#: ../controls/VariablePanel.py:286 +#: ../controls/VariablePanel.py:310 #, python-brace-format msgid "Incompatible size of data between \"{a1}\" and \"{a2}\"" -msgstr "" - -#: ../dialogs/ActionBlockDialog.py:39 +msgstr "\"{a1}\" 과 \"{a2}\" 의 데이터 크기가 호환되지 않습니다." + +#: ../dialogs/ActionBlockDialog.py:42 msgid "Indicator" msgstr "지시기(Indicator)" -#: ../editors/CodeFileEditor.py:739 +#: ../editors/CodeFileEditor.py:734 msgid "Initial" -msgstr "" - -#: ../editors/Viewer.py:611 +msgstr "초기값" + +#: ../editors/Viewer.py:650 msgid "Initial Step" -msgstr "" - -#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 -#: ../controls/VariablePanel.py:54 +msgstr "초기 스텝" + +#: ../editors/DataTypeEditor.py:55 ../controls/VariablePanel.py:63 msgid "Initial Value" msgstr "초기 값" -#: ../editors/DataTypeEditor.py:185 ../editors/DataTypeEditor.py:216 -#: ../editors/DataTypeEditor.py:272 ../editors/DataTypeEditor.py:310 +#: ../editors/DataTypeEditor.py:193 ../editors/DataTypeEditor.py:224 +#: ../editors/DataTypeEditor.py:281 ../editors/DataTypeEditor.py:320 msgid "Initial Value:" msgstr "초기 값:" -#: ../svgui/svgui.py:48 +#: ../svgui/svgui.py:56 msgid "Inkscape" msgstr "Inkscape" -#: ../dialogs/SFCTransitionDialog.py:76 ../dialogs/ActionBlockDialog.py:43 +#: ../dialogs/SFCTransitionDialog.py:77 ../dialogs/ActionBlockDialog.py:47 msgid "Inline" msgstr "인라인" -#: ../dialogs/SFCStepDialog.py:71 ../dialogs/FBDVariableDialog.py:38 -#: ../dialogs/BrowseLocationsDialog.py:41 ../editors/Viewer.py:290 -#: ../editors/Viewer.py:1627 ../editors/TextViewer.py:307 -#: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71 -#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 +#: ../dialogs/SFCStepDialog.py:73 ../dialogs/FBDVariableDialog.py:40 +#: ../dialogs/BrowseLocationsDialog.py:43 ../editors/Viewer.py:333 +#: ../editors/Viewer.py:1660 ../editors/TextViewer.py:307 +#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:89 +#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380 msgid "Input" msgstr "입력" -#: ../dialogs/FBDBlockDialog.py:96 +#: ../dialogs/FBDBlockDialog.py:99 msgid "Inputs:" msgstr "입력(Inputs):" @@ -1899,114 +1910,128 @@ msgid "Insertion (into)" msgstr "대상에 삽입" -#: ../plcopen/plcopen.py:1696 +#: ../plcopen/plcopen.py:1948 #, python-format msgid "Instance with id %d doesn't exist!" msgstr "ID %d의 인스턴스가 존재하지 않습니다!" -#: ../editors/ResourceEditor.py:264 +#: ../editors/ResourceEditor.py:279 msgid "Instances:" msgstr "인스턴스:" -#: ../controls/VariablePanel.py:70 +#: ../controls/VariablePanel.py:88 msgid "Interface" msgstr "인터페이스" -#: ../editors/ResourceEditor.py:72 +#: ../editors/ResourceEditor.py:81 msgid "Interrupt" msgstr "인터럽트" -#: ../editors/ResourceEditor.py:68 +#: ../editors/ResourceEditor.py:76 msgid "Interval" msgstr "간격 (Interval)" -#: ../PLCControler.py:2331 +#: ../controls/ProjectPropertiesPanel.py:304 +msgid "" +"Invalid URL!\n" +"Please enter correct URL address." +msgstr "" +"부적절한 URL 입니다!\n" +"올바른 URL 주소를 입력하세요. " + +#: ../PLCControler.py:1895 msgid "Invalid plcopen element(s)!!!" msgstr "알 수 없는 plcopen 항목입니다!!!" -#: ../canfestival/config_utils.py:381 +#: ../canfestival/config_utils.py:407 #, python-brace-format -msgid "Invalid type \"{a1}\"-> {a2} != {a3} for location\"{a4}\"" -msgstr "" - -#: ../canfestival/config_utils.py:645 +msgid "Invalid type \"{a1}\"-> {a2} != {a3} for location \"{a4}\"" +msgstr "위치 \"{a4}\" 에 대한 부적절한 타입 \"{a1}\"->{a2} != {a3}" + +#: ../canfestival/config_utils.py:689 #, python-brace-format msgid "Invalid type \"{a1}\"-> {a2} != {a3} for location \"{a4}\"" -msgstr "" - -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:132 -#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:92 -#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:166 +msgstr "위치 \"{a4}\" 에 대한 부적절한 타입 \"{a1}\"->{a2} != {a3}" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:139 +#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:93 +#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:162 #, python-format msgid "Invalid value \"%s\" for debug variable" msgstr "\"%s\"값은 디버그 변수에 적합하지 않습니다!" -#: ../controls/VariablePanel.py:255 ../controls/VariablePanel.py:258 +#: ../controls/VariablePanel.py:279 ../controls/VariablePanel.py:282 #, python-format msgid "Invalid value \"%s\" for variable grid element" -msgstr "" - -#: ../editors/Viewer.py:234 ../editors/Viewer.py:237 +msgstr "변수 그리드 엘리먼트에 대해 부적절한 값 \"%s\" 입니다" + +#: ../editors/Viewer.py:276 ../editors/Viewer.py:279 #, python-format msgid "Invalid value \"%s\" for viewer block" msgstr "\"%s\" 값은 뷰어 블록에 적합하지 않습니다!" -#: ../dialogs/ForceVariableDialog.py:195 +#: ../dialogs/ForceVariableDialog.py:211 #, python-brace-format msgid "Invalid value \"{a1}\" for \"{a2}\" variable!" -msgstr "" - -#: ../dialogs/DurationEditorDialog.py:121 +msgstr "\"{a2}\" 변수에 대해 \"{a1}\" 값은 적절하지 않습니다!" + +#: ../dialogs/DurationEditorDialog.py:124 msgid "" "Invalid value!\n" "You must fill a numeric value." msgstr "" - -#: ../editors/Viewer.py:616 ../editors/Viewer.py:2392 +"부적절한 값입니다!\n" +"숫자 값을 채우셔야 합니다." + +#: ../connectors/WAMP/dialog.py:38 +msgid "Is connection secure?" +msgstr "연결이 보안 되어있습니까?" + +#: ../editors/Viewer.py:655 ../editors/Viewer.py:2425 msgid "Jump" -msgstr "" - -#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 -#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144 +msgstr "점프" + +#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 +#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158 msgid "LD" msgstr "LD" -#: ../editors/LDViewer.py:215 ../editors/LDViewer.py:231 +#: ../editors/LDViewer.py:221 ../editors/LDViewer.py:240 #, python-format msgid "Ladder element with id %d is on more than one rung." msgstr "래더 항목 ID %d이 하나 이상의 Rung에 존재합니다" -#: ../dialogs/PouTransitionDialog.py:86 ../dialogs/PouActionDialog.py:84 -#: ../dialogs/PouDialog.py:105 +#: ../dialogs/PouTransitionDialog.py:93 ../dialogs/PouActionDialog.py:91 +#: ../dialogs/PouDialog.py:113 msgid "Language" msgstr "언어" -#: ../controls/ProjectPropertiesPanel.py:187 +#: ../controls/ProjectPropertiesPanel.py:206 msgid "Language (optional):" msgstr "언어(옵션):" -#: ../dialogs/PouTransitionDialog.py:60 ../dialogs/PouActionDialog.py:56 -#: ../dialogs/PouDialog.py:73 +#: ../dialogs/PouTransitionDialog.py:67 ../dialogs/PouActionDialog.py:63 +#: ../dialogs/PouDialog.py:81 msgid "Language:" msgstr "언어:" -#: ../ProjectController.py:1797 +#: ../ProjectController.py:1779 msgid "Latest build already matches current target. Transfering anyway...\n" msgstr "최근 빌드가 이미 타겟과 일치합니다. 전송합니다...\n" -#: ../Beremiz_service.py:273 +#: ../Beremiz_service.py:281 msgid "Launch WX GUI inspector" msgstr "WX GUI Inspector 실행" -#: ../Beremiz_service.py:272 +#: ../Beremiz_service.py:280 msgid "Launch a live Python shell" msgstr "Live Python Shell 실행" -#: ../editors/Viewer.py:544 +#: ../editors/Viewer.py:580 msgid "Left" msgstr "좌측" -#: ../dialogs/LDPowerRailDialog.py:63 +#: ../dialogs/LDPowerRailDialog.py:64 msgid "Left PowerRail" msgstr "좌측 전원 레일" @@ -2022,52 +2047,52 @@ msgid "Less than or equal to" msgstr "작거나 같은 값 일때" -#: ../IDEFrame.py:631 +#: ../IDEFrame.py:652 msgid "Library" msgstr "라이브러리" -#: ../dialogs/AboutDialog.py:151 +#: ../dialogs/AboutDialog.py:145 msgid "License" -msgstr "" +msgstr "라이센스" #: ../plcopen/iec_std.csv:73 msgid "Limitation" msgstr "한도" -#: ../targets/toolchain_gcc.py:202 +#: ../targets/toolchain_gcc.py:209 msgid "Linking :\n" msgstr "링크 중 : \n" -#: ../dialogs/DiscoveryDialog.py:112 ../controls/VariablePanel.py:72 +#: ../dialogs/DiscoveryDialog.py:115 ../controls/VariablePanel.py:90 msgid "Local" msgstr "로컬" -#: ../canfestival/canfestival.py:348 +#: ../canfestival/canfestival.py:359 msgid "Local entries" -msgstr "" - -#: ../ProjectController.py:1703 +msgstr "Local Entries" + +#: ../ProjectController.py:1685 msgid "Local service discovery failed!\n" -msgstr "" - -#: ../controls/VariablePanel.py:53 +msgstr "로컬 서비스 발견이 실패하였습니다!\n" + +#: ../controls/VariablePanel.py:62 msgid "Location" msgstr "위치" -#: ../dialogs/BrowseLocationsDialog.py:72 +#: ../dialogs/BrowseLocationsDialog.py:79 msgid "Locations available:" -msgstr "가능한 위치:" +msgstr "이용 가능한 Location:" #: ../plcopen/iec_std.csv:25 msgid "Logarithm to base 10" msgstr "상용로그(상용대수)" -#: ../connectors/PYRO/__init__.py:94 +#: ../connectors/PYRO/__init__.py:102 #, python-format msgid "MDNS resolution failure for '%s'\n" -msgstr "" - -#: ../canfestival/SlaveEditor.py:64 ../canfestival/NetworkEditor.py:85 +msgstr "'%s'에 대한 MDNS 확인 실패\n" + +#: ../canfestival/SlaveEditor.py:68 ../canfestival/NetworkEditor.py:92 msgid "Map Variable" msgstr "변수 맵" @@ -2075,123 +2100,131 @@ msgid "Map located variables over CANopen" msgstr "CANopen 변수 맵" -#: ../canfestival/NetworkEditor.py:106 +#: ../features.py:32 +msgid "Map located variables over Modbus" +msgstr "Modbus 상에서의 위치 변수 맵" + +#: ../canfestival/NetworkEditor.py:113 msgid "Master" msgstr "CAN 마스터" -#: ../ConfigTreeNode.py:539 +#: ../ConfigTreeNode.py:544 #, python-brace-format msgid "Max count ({a1}) reached for this confnode of type {a2} " -msgstr "" +msgstr "confnode 타입 {a2}에 대해 최대 카운트({a1})가 도달하였습니다." #: ../plcopen/iec_std.csv:71 msgid "Maximum" msgstr "최대값" -#: ../editors/DataTypeEditor.py:239 +#: ../editors/DataTypeEditor.py:246 msgid "Maximum:" msgstr "최대값:" -#: ../dialogs/BrowseLocationsDialog.py:43 ../editors/Viewer.py:290 -#: ../editors/TextViewer.py:307 ../controls/LocationCellEditor.py:98 -#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 +#: ../dialogs/BrowseLocationsDialog.py:45 ../editors/Viewer.py:333 +#: ../editors/TextViewer.py:307 ../controls/LocationCellEditor.py:103 +#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380 msgid "Memory" msgstr "메모리" -#: ../IDEFrame.py:599 +#: ../IDEFrame.py:617 msgid "Menu ToolBar" -msgstr "" - -#: ../dialogs/DurationEditorDialog.py:49 +msgstr "툴바" + +#: ../dialogs/DurationEditorDialog.py:51 msgid "Microseconds:" -msgstr "" - -#: ../editors/Viewer.py:549 +msgstr "마이크로초:" + +#: ../editors/Viewer.py:585 msgid "Middle" msgstr "중간" -#: ../dialogs/DurationEditorDialog.py:48 +#: ../dialogs/DurationEditorDialog.py:50 msgid "Milliseconds:" -msgstr "" +msgstr "밀리초:" #: ../plcopen/iec_std.csv:72 msgid "Minimum" msgstr "최소값" -#: ../editors/DataTypeEditor.py:226 +#: ../editors/DataTypeEditor.py:233 msgid "Minimum:" msgstr "최소값:" -#: ../dialogs/DurationEditorDialog.py:46 +#: ../dialogs/DurationEditorDialog.py:48 msgid "Minutes:" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:211 +msgstr "분:" + +#: ../controls/ProjectPropertiesPanel.py:231 msgid "Miscellaneous" msgstr "기타" -#: ../dialogs/LDElementDialog.py:63 +#: ../features.py:32 +msgid "Modbus support" +msgstr "Modbus 지원" + +#: ../dialogs/LDElementDialog.py:65 msgid "Modifier:" msgstr "수정자:" -#: ../PLCGenerator.py:786 ../PLCGenerator.py:1230 +#: ../PLCGenerator.py:795 ../PLCGenerator.py:1269 #, python-brace-format msgid "" "More than one connector found corresponding to \"{a1}\" continuation in " "\"{a2}\" POU" -msgstr "" - -#: ../dialogs/ActionBlockDialog.py:140 +msgstr "\"{a2}\" POU에서 하나 이상의 \"{a1}\" 연속적인 커넥터를 찾았습니다" + +#: ../dialogs/ActionBlockDialog.py:146 msgid "Move action down" -msgstr "" - -#: ../dialogs/ActionBlockDialog.py:139 +msgstr "액션을 아래로 이동" + +#: ../dialogs/ActionBlockDialog.py:145 msgid "Move action up" -msgstr "" - -#: ../controls/CustomEditableListBox.py:43 +msgstr "액션을 위로 이동" + +#: ../controls/CustomEditableListBox.py:46 msgid "Move down" msgstr "하단 이동" -#: ../editors/DataTypeEditor.py:355 +#: ../editors/DataTypeEditor.py:367 msgid "Move element down" -msgstr "" - -#: ../editors/DataTypeEditor.py:354 +msgstr "엘리먼트를 아래로 이동" + +#: ../editors/DataTypeEditor.py:366 msgid "Move element up" -msgstr "" - -#: ../editors/ResourceEditor.py:271 +msgstr "엘리먼트를 위로 이동" + +#: ../editors/ResourceEditor.py:286 msgid "Move instance down" -msgstr "" - -#: ../editors/ResourceEditor.py:270 +msgstr "인스턴스를 아래로 이동" + +#: ../editors/ResourceEditor.py:285 msgid "Move instance up" -msgstr "" - -#: ../editors/ResourceEditor.py:242 +msgstr "인스턴스를 위로 이동" + +#: ../editors/ResourceEditor.py:255 msgid "Move task down" -msgstr "" - -#: ../editors/ResourceEditor.py:241 +msgstr "태스크를 아래로 이동" + +#: ../editors/ResourceEditor.py:254 msgid "Move task up" -msgstr "" - -#: ../IDEFrame.py:99 ../IDEFrame.py:114 ../IDEFrame.py:144 ../IDEFrame.py:185 +msgstr "태스크를 위로 이동" + +#: ../IDEFrame.py:106 ../IDEFrame.py:121 ../IDEFrame.py:151 ../IDEFrame.py:192 msgid "Move the view" msgstr "화면을 드래그하여 이동" -#: ../controls/CustomEditableListBox.py:42 +#: ../controls/CustomEditableListBox.py:45 msgid "Move up" msgstr "상단 이동" -#: ../editors/CodeFileEditor.py:661 ../controls/VariablePanel.py:453 +#: ../editors/CodeFileEditor.py:657 ../controls/VariablePanel.py:484 msgid "Move variable down" -msgstr "" - -#: ../editors/CodeFileEditor.py:660 ../controls/VariablePanel.py:452 +msgstr "변수를 아래로 이동" + +#: ../editors/CodeFileEditor.py:656 ../controls/VariablePanel.py:483 msgid "Move variable up" -msgstr "" +msgstr "변수를 위로 이동" #: ../plcopen/iec_std.csv:74 msgid "Multiplexer (select 1 of N)" @@ -2201,26 +2234,26 @@ msgid "Multiplication" msgstr "곱셈" -#: ../editors/FileManagementPanel.py:83 +#: ../editors/FileManagementPanel.py:87 msgid "My Computer:" -msgstr "" - -#: ../dialogs/DiscoveryDialog.py:92 +msgstr "내 컴퓨터:" + +#: ../dialogs/DiscoveryDialog.py:89 msgid "NAME" -msgstr "" - -#: ../editors/ResourceEditor.py:68 ../editors/ResourceEditor.py:83 -#: ../editors/DataTypeEditor.py:50 ../editors/CodeFileEditor.py:739 -#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +msgstr "이름" + +#: ../editors/ResourceEditor.py:76 ../editors/ResourceEditor.py:97 +#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:732 +#: ../controls/VariablePanel.py:59 msgid "Name" msgstr "이름" -#: ../Beremiz_service.py:334 +#: ../Beremiz_service.py:342 msgid "Name must not be null!" msgstr "이름은 널(null)이 되어서는 안됩니다!" -#: ../dialogs/SFCStepDialog.py:57 ../dialogs/FBDBlockDialog.py:86 -#: ../dialogs/ConnectionDialog.py:76 +#: ../dialogs/SFCStepDialog.py:59 ../dialogs/FBDBlockDialog.py:89 +#: ../dialogs/ConnectionDialog.py:78 msgid "Name:" msgstr "이름:" @@ -2228,46 +2261,46 @@ msgid "Natural logarithm" msgstr "자연 로그" -#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:519 +#: ../dialogs/LDElementDialog.py:78 ../editors/Viewer.py:554 msgid "Negated" msgstr "역 방향(Negate)" +#: ../Beremiz_service.py:610 +msgid "Nevow Web service failed. " +msgstr "Nevow 웹서비스 실패" + #: ../Beremiz_service.py:580 -msgid "Nevow Web service failed. " -msgstr "" - -#: ../Beremiz_service.py:556 msgid "Nevow/Athena import failed :" -msgstr "" - -#: ../BeremizIDE.py:216 ../BeremizIDE.py:251 ../PLCOpenEditor.py:104 -#: ../PLCOpenEditor.py:146 +msgstr "Nevow/Athena 불러오기가 실패했습니다:" + +#: ../BeremizIDE.py:241 ../BeremizIDE.py:276 ../PLCOpenEditor.py:75 +#: ../PLCOpenEditor.py:117 msgid "New" msgstr "새로 만들기" -#: ../controls/CustomEditableListBox.py:40 +#: ../controls/CustomEditableListBox.py:43 msgid "New item" msgstr "새로운 아이템" -#: ../editors/Viewer.py:518 +#: ../editors/Viewer.py:553 msgid "No Modifier" msgstr "수정자 없음" -#: ../ProjectController.py:1826 +#: ../ProjectController.py:1808 msgid "No PLC to transfer (did build succeed ?)\n" msgstr "전송할 PLC 파일이 없습니다 (빌드 성공 여부를 확인하세요)\n" -#: ../PLCGenerator.py:1631 +#: ../PLCGenerator.py:1678 #, python-format msgid "No body defined in \"%s\" POU" msgstr "\"%s\" POU에 바디(body)가 정의되어 있지 않습니다" -#: ../PLCGenerator.py:806 ../PLCGenerator.py:1241 +#: ../PLCGenerator.py:816 ../PLCGenerator.py:1281 #, python-brace-format msgid "No connector found corresponding to \"{a1}\" continuation in \"{a2}\" POU" -msgstr "" - -#: ../PLCOpenEditor.py:357 +msgstr "\"{a2}\" POU에서 연속적인 \"{a1}\" 커넥터를 찾을 수 없습니다. " + +#: ../PLCOpenEditor.py:331 msgid "" "No documentation available.\n" "Coming soon." @@ -2275,69 +2308,69 @@ "현재 지원되는 도움 문서가 없습니다.\n" "지원 예정" -#: ../PLCGenerator.py:829 +#: ../PLCGenerator.py:841 #, python-format msgid "No informations found for \"%s\" block" msgstr "\"%s\"블럭에 대한 정보를 찾을 수 없습니다" -#: ../PLCGenerator.py:1194 +#: ../PLCGenerator.py:1232 #, python-brace-format msgid "" "No output {a1} variable found in block {a2} in POU {a3}. Connection must be " "broken" -msgstr "" - -#: ../controls/SearchResultPanel.py:169 +msgstr "POU {a3} 내부 블록 {a2}에 대해 출력 변수 {a1}를 찾을 수 없습니다. 연결이 끊어졌음이 틀림없습니다." + +#: ../controls/SearchResultPanel.py:175 msgid "No search results available." msgstr "검색된 결과가 없습니다" -#: ../svgui/svgui.py:134 +#: ../svgui/svgui.py:142 #, python-format msgid "No such SVG file: %s\n" -msgstr "선택하신 %s파일은 없습니다\n" - -#: ../canfestival/config_utils.py:639 +msgstr "선택하신 %s SVG 파일은 없습니다\n" + +#: ../canfestival/config_utils.py:682 #, python-brace-format msgid "No such index/subindex ({a1},{a2}) (variable {a3})" -msgstr "" - -#: ../canfestival/config_utils.py:362 +msgstr "({a1}, {a2})와 같은 index/subindex가 없습니다(변수 {a3})." + +#: ../canfestival/config_utils.py:387 #, python-brace-format msgid "No such index/subindex ({a1},{a2}) in ID : {a3} (variable {a4})" -msgstr "" - -#: ../dialogs/BrowseValuesLibraryDialog.py:83 +msgstr "{a3} ID 에서 ({a1}, {a2})와 같은 index/subindex가 없습니다: (변수 {a4}). " + +#: ../dialogs/BrowseValuesLibraryDialog.py:87 msgid "No valid value selected!" msgstr "유효한 데이터 값을 선택하세요!" -#: ../PLCGenerator.py:1629 +#: ../PLCGenerator.py:1676 #, python-format msgid "No variable defined in \"%s\" POU" msgstr "\"%s\" POU에 정의된 변수가 없습니다" -#: ../canfestival/config_utils.py:355 +#: ../canfestival/config_utils.py:379 #, python-brace-format msgid "Non existing node ID : {a1} (variable {a2})" -msgstr "" - -#: ../controls/VariablePanel.py:64 +msgstr "node ID {a1}이 존재하지 않습니다: (변수 {a2})" + +#: ../controls/VariablePanel.py:79 msgid "Non-Retain" msgstr "유지 안함(No Retain)" -#: ../dialogs/LDElementDialog.py:75 +#: ../dialogs/LDElementDialog.py:78 msgid "Normal" msgstr "기본(Normal)" -#: ../canfestival/config_utils.py:389 +#: ../canfestival/config_utils.py:426 #, python-brace-format msgid "Not PDO mappable variable : '{a1}' (ID:{a2},Idx:{a3},sIdx:{a4}))" -msgstr "" +msgstr "PDO 매핑 가능한 변수가 아닙니다: '{a1}' (ID:{a2},Idx:{a3},sIdx:{a4}))" #: ../plcopen/iec_std.csv:80 msgid "Not equal to" msgstr "같지 않을 때" -#: ../dialogs/SFCDivergenceDialog.py:89 +#: ../dialogs/SFCDivergenceDialog.py:91 msgid "Number of sequences:" msgstr "시퀀스 넘버:" @@ -2345,310 +2378,317 @@ msgid "Numerical" msgstr "수치(Numeric)" -#: ../editors/CodeFileEditor.py:739 +#: ../editors/CodeFileEditor.py:736 msgid "OnChange" -msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:84 +msgstr "값 변경 알림" + +#: ../dialogs/SearchInProjectDialog.py:88 msgid "Only Elements" msgstr "구성원 내부 검색" -#: ../BeremizIDE.py:218 ../BeremizIDE.py:252 ../PLCOpenEditor.py:106 -#: ../PLCOpenEditor.py:147 +#: ../BeremizIDE.py:243 ../BeremizIDE.py:277 ../PLCOpenEditor.py:77 +#: ../PLCOpenEditor.py:118 msgid "Open" -msgstr "" - -#: ../svgui/svgui.py:143 +msgstr "프로젝트 불러오기" + +#: ../svgui/svgui.py:151 msgid "Open Inkscape" msgstr "잉크스케이프 열기" -#: ../version.py:77 +#: ../version.py:86 msgid "" "Open Source framework for automation, implemented IEC 61131 IDE with " "constantly growing set of extensions and flexible PLC runtime." msgstr "" - -#: ../ProjectController.py:1878 +"IEC 61131 통합 개발환경과 다양한 확장 모듈들을 바탕으로 유연한 소프트 PLC 런타임을 생성하는, 자동화 분야를 위한 오픈 소스 " +"프레임워크" + +#: ../ProjectController.py:1879 msgid "Open a file explorer to manage project files" -msgstr "" - -#: ../wxglade_hmi/wxglade_hmi.py:155 +msgstr "프로젝트 파일들을 관리하기 위해 파일 탐색기를 실행하세요" + +#: ../wxglade_hmi/wxglade_hmi.py:161 msgid "Open wxGlade" msgstr "WxGlade 열기" -#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +#: ../controls/VariablePanel.py:64 msgid "Option" msgstr "옵션" -#: ../dialogs/FindInPouDialog.py:81 ../editors/CodeFileEditor.py:739 +#: ../dialogs/FindInPouDialog.py:84 ../editors/CodeFileEditor.py:737 msgid "Options" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:98 +msgstr "옵션들" + +#: ../controls/ProjectPropertiesPanel.py:109 msgid "Organization (optional):" msgstr "구성단체(옵션):" -#: ../canfestival/SlaveEditor.py:74 ../canfestival/NetworkEditor.py:95 +#: ../canfestival/SlaveEditor.py:78 ../canfestival/NetworkEditor.py:102 msgid "Other Profile" msgstr "다른 프로필" -#: ../dialogs/SFCStepDialog.py:72 ../dialogs/FBDVariableDialog.py:40 -#: ../dialogs/BrowseLocationsDialog.py:42 ../editors/Viewer.py:290 -#: ../editors/Viewer.py:1628 ../editors/TextViewer.py:307 -#: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71 -#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 +#: ../dialogs/SFCStepDialog.py:74 ../dialogs/FBDVariableDialog.py:42 +#: ../dialogs/BrowseLocationsDialog.py:44 ../editors/Viewer.py:333 +#: ../editors/Viewer.py:1661 ../editors/TextViewer.py:307 +#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:89 +#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380 msgid "Output" msgstr "출력" -#: ../canfestival/SlaveEditor.py:63 ../canfestival/NetworkEditor.py:84 +#: ../canfestival/SlaveEditor.py:67 ../canfestival/NetworkEditor.py:91 msgid "PDO Receive" msgstr "수신 PDO" -#: ../canfestival/SlaveEditor.py:62 ../canfestival/NetworkEditor.py:83 +#: ../canfestival/SlaveEditor.py:66 ../canfestival/NetworkEditor.py:90 msgid "PDO Transmit" msgstr "전송 PDO" -#: ../targets/toolchain_gcc.py:167 +#: ../targets/toolchain_gcc.py:174 msgid "PLC :\n" msgstr "PLC :\n" -#: ../BeremizIDE.py:355 +#: ../BeremizIDE.py:383 msgid "PLC Log" -msgstr "" - -#: ../ProjectController.py:1054 +msgstr "PLC 로그" + +#: ../ProjectController.py:1082 msgid "PLC code generation failed !\n" -msgstr "" - -#: ../Beremiz_service.py:297 +msgstr "PLC 코드 생성에 실패하였습니다!\n" + +#: ../Beremiz_service.py:305 msgid "PLC is empty or already started." -msgstr "" - -#: ../Beremiz_service.py:304 +msgstr "비어있는 PLC 이거나 PLC가 이미 시작되었습니다." + +#: ../Beremiz_service.py:312 msgid "PLC is not started." -msgstr "" - -#: ../PLCOpenEditor.py:206 ../PLCOpenEditor.py:319 +msgstr "PLC가 시작되지 않았습니다." + +#: ../PLCOpenEditor.py:180 ../PLCOpenEditor.py:293 #, python-brace-format msgid "" "PLC syntax error at line {a1}:\n" "{a2}" msgstr "" - -#: ../PLCOpenEditor.py:302 ../PLCOpenEditor.py:383 +"PLC 문법 에러 발생 {a1}:\n" +"{a2}" + +#: ../PLCOpenEditor.py:276 ../PLCOpenEditor.py:357 msgid "PLCOpen files (*.xml)|*.xml|All files|*.*" msgstr "PLCOpen files (*.xml)|*.xml|모든 파일|*.*" -#: ../PLCOpenEditor.py:154 ../PLCOpenEditor.py:219 +#: ../PLCOpenEditor.py:125 ../PLCOpenEditor.py:193 msgid "PLCOpenEditor" msgstr "PLCOpenEditor" -#: ../PLCOpenEditor.py:365 +#: ../PLCOpenEditor.py:339 msgid "" "PLCOpenEditor is part of Beremiz project.\n" "\n" "Beremiz is an " msgstr "" - -#: ../dialogs/DiscoveryDialog.py:95 +"PLCOpenEditor는 Beremiz 프로젝트의 일부입니다.\n" +"\n" +"Beremiz는" + +#: ../dialogs/DiscoveryDialog.py:92 msgid "PORT" -msgstr "" - -#: ../dialogs/PouDialog.py:101 +msgstr "포트" + +#: ../dialogs/PouDialog.py:109 msgid "POU Name" msgstr "POU 이름" -#: ../dialogs/PouDialog.py:58 +#: ../dialogs/PouDialog.py:66 msgid "POU Name:" msgstr "POU 이름:" -#: ../dialogs/PouDialog.py:103 +#: ../dialogs/PouDialog.py:111 msgid "POU Type" msgstr "POU 타입" -#: ../dialogs/PouDialog.py:65 +#: ../dialogs/PouDialog.py:73 msgid "POU Type:" msgstr "POU 타입:" -#: ../connectors/PYRO/__init__.py:45 +#: ../connectors/PYRO/__init__.py:52 #, python-format msgid "PYRO connecting to URI : %s\n" -msgstr "" - -#: ../connectors/PYRO/__init__.py:61 +msgstr "PYRO가 URI:%s 에 연결중입니다. \n" + +#: ../connectors/PYRO/__init__.py:68 #, python-format msgid "PYRO using certificates in '%s' \n" -msgstr "" - -#: ../BeremizIDE.py:231 ../PLCOpenEditor.py:120 +msgstr "PYRO는 '%s'에 있는 증명서를 사용합니다.\n" + +#: ../BeremizIDE.py:256 ../PLCOpenEditor.py:91 msgid "Page Setup" msgstr "인쇄 페이지 설정" -#: ../controls/ProjectPropertiesPanel.py:111 +#: ../controls/ProjectPropertiesPanel.py:124 msgid "Page Size (optional):" msgstr "페이지 크기(옵션):" -#: ../IDEFrame.py:2613 +#: ../IDEFrame.py:2640 #, python-format msgid "Page: %d" msgstr "인쇄 페이지: %d" -#: ../controls/PouInstanceVariablesPanel.py:124 +#: ../controls/PouInstanceVariablesPanel.py:134 msgid "Parent instance" -msgstr "" - -#: ../editors/Viewer.py:657 ../IDEFrame.py:372 ../IDEFrame.py:426 +msgstr "부모 인스턴스" + +#: ../editors/Viewer.py:696 ../IDEFrame.py:374 ../IDEFrame.py:428 msgid "Paste" msgstr "붙여넣기" -#: ../IDEFrame.py:1868 +#: ../IDEFrame.py:1899 msgid "Paste POU" msgstr "POU 붙여넣기" -#: ../dialogs/SearchInProjectDialog.py:56 +#: ../dialogs/SearchInProjectDialog.py:60 msgid "Pattern to search:" msgstr "검색할 문자열 패턴:" -#: ../dialogs/LDPowerRailDialog.py:74 +#: ../dialogs/LDPowerRailDialog.py:75 msgid "Pin number:" msgstr "핀 넘버:" -#: ../editors/Viewer.py:2757 ../editors/Viewer.py:3014 -#: ../editors/SFCViewer.py:770 +#: ../editors/Viewer.py:2792 ../editors/Viewer.py:3060 +#: ../editors/SFCViewer.py:785 msgid "Please choose a target" msgstr "타겟을 선택하세요" -#: ../editors/TextViewer.py:262 +#: ../editors/TextViewer.py:260 msgid "Please enter a block name" -msgstr "" - -#: ../editors/Viewer.py:2627 ../editors/Viewer.py:3056 +msgstr "블록의 이름을 입력하세요" + +#: ../editors/Viewer.py:2661 ../editors/Viewer.py:3103 msgid "Please enter comment text" msgstr "코멘트를 입력하세요" -#: ../editors/SFCViewer.py:433 ../editors/SFCViewer.py:455 -#: ../editors/SFCViewer.py:799 +#: ../editors/SFCViewer.py:447 ../editors/SFCViewer.py:469 +#: ../editors/SFCViewer.py:815 msgid "Please enter step name" msgstr "스텝 이름을 입력하세요" -#: ../Beremiz_service.py:196 +#: ../dialogs/PouNameDialog.py:37 ../Beremiz_service.py:209 msgid "Please enter text" msgstr "텍스트를 입력하세요" -#: ../dialogs/ForceVariableDialog.py:163 +#: ../dialogs/ForceVariableDialog.py:177 #, python-format msgid "Please enter value for a \"%s\" variable:" msgstr "\"%s\" 변수의 데이터를 입력하세요" -#: ../Beremiz_service.py:319 +#: ../Beremiz_service.py:327 msgid "Port number must be 0 <= port <= 65535!" msgstr "포트 번호는 0~65535까지 유효합니다!" -#: ../Beremiz_service.py:319 +#: ../Beremiz_service.py:327 msgid "Port number must be an integer!" msgstr "포트 번호는 숫자로만 입력하세요!" -#: ../editors/Viewer.py:595 ../editors/Viewer.py:2416 +#: ../editors/Viewer.py:633 ../editors/Viewer.py:2449 msgid "Power Rail" -msgstr "" - -#: ../dialogs/LDPowerRailDialog.py:51 +msgstr "전원 레일" + +#: ../dialogs/LDPowerRailDialog.py:52 msgid "Power Rail Properties" msgstr "전원 레일 속성" -#: ../BeremizIDE.py:233 ../PLCOpenEditor.py:122 +#: ../BeremizIDE.py:258 ../PLCOpenEditor.py:93 msgid "Preview" msgstr "인쇄 페이지 미리보기" -#: ../dialogs/BlockPreviewDialog.py:57 +#: ../dialogs/BlockPreviewDialog.py:59 msgid "Preview:" msgstr "인쇄 페이지 미리보기:" -#: ../BeremizIDE.py:235 ../BeremizIDE.py:255 ../PLCOpenEditor.py:124 -#: ../PLCOpenEditor.py:150 +#: ../BeremizIDE.py:260 ../BeremizIDE.py:280 ../PLCOpenEditor.py:95 +#: ../PLCOpenEditor.py:121 msgid "Print" msgstr "인쇄" -#: ../IDEFrame.py:1079 +#: ../IDEFrame.py:1110 msgid "Print preview" msgstr "인쇄 미리보기" -#: ../editors/ResourceEditor.py:68 +#: ../editors/ResourceEditor.py:76 msgid "Priority" msgstr "우선권" -#: ../dialogs/SFCTransitionDialog.py:90 +#: ../dialogs/SFCTransitionDialog.py:91 msgid "Priority:" msgstr "우선권:" -#: ../runtime/PLCObject.py:369 +#: ../runtime/PLCObject.py:518 #, python-format msgid "Problem starting PLC : error %d" -msgstr "" - -#: ../dialogs/ProjectDialog.py:58 +msgstr "PLC를 시작하는데 문제가 발생했습니다: 에러 %d" + +#: ../dialogs/ProjectDialog.py:63 msgid "Product Name" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:81 +msgstr "제품명" + +#: ../controls/ProjectPropertiesPanel.py:90 msgid "Product Name (required):" msgstr "제품 이름(필수):" -#: ../controls/ProjectPropertiesPanel.py:83 +#: ../controls/ProjectPropertiesPanel.py:92 msgid "Product Release (optional):" msgstr "제품 출시 번호(옵션):" -#: ../dialogs/ProjectDialog.py:59 +#: ../dialogs/ProjectDialog.py:64 msgid "Product Version" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:82 +msgstr "제품 버전" + +#: ../controls/ProjectPropertiesPanel.py:91 msgid "Product Version (required):" msgstr "제품 버젼(필수):" -#: ../dialogs/SearchInProjectDialog.py:39 ../IDEFrame.py:1747 -#: ../IDEFrame.py:1944 +#: ../dialogs/SearchInProjectDialog.py:42 ../IDEFrame.py:1778 +#: ../IDEFrame.py:1975 msgid "Program" msgstr "프로그램" -#: ../PLCOpenEditor.py:347 +#: ../PLCOpenEditor.py:321 msgid "Program was successfully generated!" msgstr "프로그램이 성공적으로 생성되었습니다!" -#: ../PLCControler.py:98 +#: ../plcopen/types_enums.py:76 msgid "Programs" msgstr "프로그램(Programs)" -#: ../editors/Viewer.py:243 +#: ../editors/Viewer.py:285 msgid "Programs can't be used by other POUs!" msgstr "다른 POU에서 사용할 수 없는 프로그램입니다!" -#: ../controls/ProjectPropertiesPanel.py:85 ../IDEFrame.py:584 +#: ../controls/ProjectPropertiesPanel.py:94 ../IDEFrame.py:601 msgid "Project" msgstr "프로젝트" -#: ../controls/SearchResultPanel.py:173 +#: ../controls/SearchResultPanel.py:180 #, python-format msgid "Project '%s':" -msgstr "" - -#: ../ProjectController.py:1877 +msgstr "프로젝트 '%s':" + +#: ../ProjectController.py:1878 msgid "Project Files" -msgstr "" - -#: ../dialogs/ProjectDialog.py:57 +msgstr "프로젝트 파일" + +#: ../dialogs/ProjectDialog.py:62 msgid "Project Name" -msgstr "" - -#: ../controls/ProjectPropertiesPanel.py:79 +msgstr "프로젝트 명" + +#: ../controls/ProjectPropertiesPanel.py:88 msgid "Project Name (required):" msgstr "프로젝트 명(필수):" -#: ../controls/ProjectPropertiesPanel.py:80 +#: ../controls/ProjectPropertiesPanel.py:89 msgid "Project Version (optional):" msgstr "프로젝트 버젼(옵션):" -#: ../PLCControler.py:3164 +#: ../PLCControler.py:2717 msgid "" "Project file syntax error:\n" "\n" @@ -2656,90 +2696,90 @@ "프로젝트 파일 구문 오류:\n" "\n" -#: ../dialogs/ProjectDialog.py:33 ../editors/ProjectNodeEditor.py:37 +#: ../dialogs/ProjectDialog.py:36 ../editors/ProjectNodeEditor.py:40 msgid "Project properties" msgstr "프로젝트 속성" -#: ../ConfigTreeNode.py:566 +#: ../ConfigTreeNode.py:571 #, python-brace-format msgid "Project tree layout do not match confnode.xml {a1}!={a2} " -msgstr "" - -#: ../dialogs/ConnectionDialog.py:98 +msgstr "프로젝트 트리 레이아웃이 confnode.xml과 일치하지 않습니다. {a1}!={a2}" + +#: ../dialogs/ConnectionDialog.py:101 msgid "Propagate Name" -msgstr "" - -#: ../PLCControler.py:99 +msgstr "연결자 이름 수정" + +#: ../plcopen/types_enums.py:77 msgid "Properties" msgstr "속성" -#: ../Beremiz_service.py:442 +#: ../Beremiz_service.py:427 msgid "Publishing service on local network" -msgstr "" - -#: ../connectors/PYRO/__init__.py:118 +msgstr "로컬 네트워크에 서비스를 퍼블리싱하는 중" + +#: ../connectors/PYRO/__init__.py:126 #, python-format msgid "Pyro exception: %s\n" -msgstr "" - -#: ../Beremiz_service.py:429 -msgid "Pyro object's uri :" -msgstr "" - -#: ../Beremiz_service.py:428 +msgstr "Pyro 예외상황: %s\n" + +#: ../Beremiz_service.py:420 msgid "Pyro port :" -msgstr "" - -#: ../py_ext/PythonEditor.py:81 +msgstr "Pyro 포트:" + +#: ../py_ext/PythonEditor.py:84 msgid "Python code" -msgstr "" - -#: ../features.py:33 +msgstr "Python 코드" + +#: ../features.py:34 msgid "Python file" msgstr "파이썬 파일" -#: ../dialogs/ActionBlockDialog.py:39 +#: ../dialogs/ActionBlockDialog.py:42 msgid "Qualifier" msgstr "한정자" -#: ../BeremizIDE.py:238 ../PLCOpenEditor.py:130 ../Beremiz_service.py:275 +#: ../BeremizIDE.py:263 ../PLCOpenEditor.py:101 ../Beremiz_service.py:283 msgid "Quit" msgstr "프로그램 종료" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:225 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:227 msgid "Range:" msgstr "범위:" -#: ../ProjectController.py:1873 +#: ../ProjectController.py:1872 msgid "Raw IEC code" msgstr "IEC 코드" -#: ../BeremizIDE.py:1047 +#: ../BeremizIDE.py:1083 #, python-format msgid "Really delete node '%s'?" -msgstr "" - -#: ../IDEFrame.py:362 ../IDEFrame.py:422 +msgstr " 정말로 노드 '%s' 를 지우겠습니까?" + +#: ../connectors/WAMP/dialog.py:50 +msgid "Realm:" +msgstr "렐름:" + +#: ../IDEFrame.py:367 ../IDEFrame.py:424 msgid "Redo" msgstr "되돌리기 취소" -#: ../dialogs/SFCTransitionDialog.py:75 +#: ../dialogs/SFCTransitionDialog.py:76 msgid "Reference" msgstr "레퍼런스" -#: ../dialogs/DiscoveryDialog.py:107 ../IDEFrame.py:432 +#: ../dialogs/DiscoveryDialog.py:109 ../IDEFrame.py:434 msgid "Refresh" msgstr "새로고침" -#: ../dialogs/SearchInProjectDialog.py:66 +#: ../dialogs/SearchInProjectDialog.py:70 msgid "Regular expression" msgstr "정규 표현식" -#: ../dialogs/FindInPouDialog.py:96 +#: ../dialogs/FindInPouDialog.py:99 msgid "Regular expressions" -msgstr "" - -#: ../editors/Viewer.py:1603 +msgstr "정규 표현식" + +#: ../editors/Viewer.py:1636 msgid "Release value" msgstr "강제 데이터 입력 해제" @@ -2747,100 +2787,100 @@ msgid "Remainder (modulo)" msgstr "잔여 (모듈)" -#: ../BeremizIDE.py:1048 +#: ../BeremizIDE.py:1084 #, python-format msgid "Remove %s node" -msgstr "" - -#: ../IDEFrame.py:2419 +msgstr "%s 노드 제거" + +#: ../IDEFrame.py:2445 msgid "Remove Datatype" -msgstr "" - -#: ../IDEFrame.py:2424 +msgstr "데이터 타입 제거" + +#: ../IDEFrame.py:2450 msgid "Remove Pou" -msgstr "" - -#: ../dialogs/ActionBlockDialog.py:138 +msgstr "POU 제거" + +#: ../dialogs/ActionBlockDialog.py:144 msgid "Remove action" -msgstr "" - -#: ../editors/DataTypeEditor.py:353 +msgstr "액션 제거" + +#: ../editors/DataTypeEditor.py:365 msgid "Remove element" -msgstr "" - -#: ../editors/FileManagementPanel.py:63 +msgstr "엘리먼트 제거" + +#: ../editors/FileManagementPanel.py:66 msgid "Remove file from left folder" -msgstr "" - -#: ../editors/ResourceEditor.py:269 +msgstr "좌측 폴더로부터 파일 제거" + +#: ../editors/ResourceEditor.py:284 msgid "Remove instance" -msgstr "" - -#: ../canfestival/NetworkEditor.py:104 +msgstr "인스턴스 제거" + +#: ../canfestival/NetworkEditor.py:111 msgid "Remove slave" msgstr "슬레이브 제거" -#: ../editors/ResourceEditor.py:240 +#: ../editors/ResourceEditor.py:253 msgid "Remove task" -msgstr "" - -#: ../editors/CodeFileEditor.py:659 ../controls/VariablePanel.py:451 +msgstr "태스크 제거" + +#: ../editors/CodeFileEditor.py:655 ../controls/VariablePanel.py:482 msgid "Remove variable" -msgstr "" - -#: ../IDEFrame.py:1948 +msgstr "변수 제거" + +#: ../IDEFrame.py:1979 msgid "Rename" msgstr "이름 변경" -#: ../editors/FileManagementPanel.py:181 +#: ../editors/FileManagementPanel.py:187 msgid "Replace File" -msgstr "" - -#: ../editors/Viewer.py:561 +msgstr "파일 교체" + +#: ../editors/Viewer.py:598 msgid "Replace Wire by connections" -msgstr "" +msgstr "와이어를 연결자로 교체" #: ../plcopen/iec_std.csv:89 msgid "Replacement (within)" msgstr "내부 교체" -#: ../dialogs/LDElementDialog.py:76 +#: ../dialogs/LDElementDialog.py:79 msgid "Reset" msgstr "리셋 코일(Unlatch)" -#: ../editors/Viewer.py:642 +#: ../editors/Viewer.py:681 msgid "Reset Execution Order" msgstr "실행 순서 초기화" -#: ../IDEFrame.py:451 +#: ../IDEFrame.py:453 msgid "Reset Perspective" -msgstr "" - -#: ../controls/SearchResultPanel.py:105 +msgstr "풀 스크린 에디팅 모드에서 복귀" + +#: ../controls/SearchResultPanel.py:103 msgid "Reset search result" -msgstr "" - -#: ../BeremizIDE.py:979 ../PLCControler.py:99 +msgstr "검색 결과 재설정" + +#: ../BeremizIDE.py:1015 ../plcopen/types_enums.py:77 msgid "Resources" msgstr "리소스" -#: ../controls/VariablePanel.py:62 +#: ../controls/VariablePanel.py:77 msgid "Retain" msgstr "유지 변수" -#: ../controls/VariablePanel.py:424 +#: ../controls/VariablePanel.py:455 msgid "Return Type:" msgstr "반환(Return) 타입:" -#: ../editors/Viewer.py:546 +#: ../editors/Viewer.py:582 msgid "Right" msgstr "우측" -#: ../dialogs/LDPowerRailDialog.py:64 +#: ../dialogs/LDPowerRailDialog.py:65 msgid "Right PowerRail" msgstr "우측 전원 레일" -#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:520 +#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:555 msgid "Rising Edge" msgstr "라이징 엣지" @@ -2856,138 +2896,138 @@ msgid "Rounding up/down" msgstr "라운딩 업/다운" -#: ../ProjectController.py:1841 +#: ../ProjectController.py:1828 msgid "Run" msgstr "실행" -#: ../ProjectController.py:1099 +#: ../ProjectController.py:1127 msgid "Runtime IO extensions C code generation failed !\n" -msgstr "" - -#: ../ProjectController.py:1108 +msgstr "런타임 IO 확장 C 코드 생성에 실패했습니다 !\n" + +#: ../ProjectController.py:1136 msgid "Runtime library extensions C code generation failed !\n" -msgstr "" - -#: ../canfestival/SlaveEditor.py:61 ../canfestival/NetworkEditor.py:82 +msgstr "런타임 라이브러리 확장 C 코드 생성에 실패했습니다 !\n" + +#: ../canfestival/SlaveEditor.py:65 ../canfestival/NetworkEditor.py:89 msgid "SDO Client" msgstr "SDO 클라이언트" -#: ../canfestival/SlaveEditor.py:60 ../canfestival/NetworkEditor.py:81 +#: ../canfestival/SlaveEditor.py:64 ../canfestival/NetworkEditor.py:88 msgid "SDO Server" msgstr "SDO 서버" -#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144 +#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158 msgid "SFC" msgstr "SFC" -#: ../PLCGenerator.py:1392 +#: ../PLCGenerator.py:1433 #, python-brace-format msgid "SFC jump in pou \"{a1}\" refers to non-existent SFC step \"{a2}\"" -msgstr "" - -#: ../PLCGenerator.py:773 +msgstr "POU \"{a1}\"에 있는 SFC jump는 존재하지 않는 SFC 스텝 \"{a2}\"를 참조합니다." + +#: ../PLCGenerator.py:780 #, python-format msgid "SFC transition in POU \"%s\" must be connected." -msgstr "" - -#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 -#: ../dialogs/PouDialog.py:37 +msgstr "POU \"%s\" 안의 SFC 트랜지션은 연결이 되어야 합니다." + +#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 +#: ../dialogs/PouDialog.py:44 msgid "ST" msgstr "ST" -#: ../PLCOpenEditor.py:334 +#: ../PLCOpenEditor.py:308 msgid "ST files (*.st)|*.st|All files|*.*" msgstr "ST 파일 (*.st)|*.st|모든 파일|*.*" -#: ../svgui/svgui.py:128 +#: ../svgui/svgui.py:136 msgid "SVG files (*.svg)|*.svg|All files|*.*" msgstr "SVG 파일 (*.svg)|*svg|모든 파일|*.*" -#: ../features.py:35 +#: ../features.py:36 msgid "SVGUI" msgstr "SVGUI" -#: ../BeremizIDE.py:222 ../BeremizIDE.py:253 ../PLCOpenEditor.py:113 -#: ../PLCOpenEditor.py:148 +#: ../BeremizIDE.py:247 ../BeremizIDE.py:278 ../PLCOpenEditor.py:84 +#: ../PLCOpenEditor.py:119 msgid "Save" -msgstr "" - -#: ../BeremizIDE.py:254 ../PLCOpenEditor.py:115 ../PLCOpenEditor.py:149 +msgstr "저장" + +#: ../BeremizIDE.py:279 ../PLCOpenEditor.py:86 ../PLCOpenEditor.py:120 msgid "Save As..." -msgstr "" - -#: ../BeremizIDE.py:224 +msgstr "다른 이름으로 저장..." + +#: ../BeremizIDE.py:249 msgid "Save as" -msgstr "" - -#: ../ProjectController.py:511 +msgstr "다른 이름으로 저장" + +#: ../ProjectController.py:530 msgid "Save path is the same as path of a project! \n" -msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:69 +msgstr "저장 경로는 프로젝트 경로와 동일하여야 합니다!\n" + +#: ../dialogs/SearchInProjectDialog.py:73 msgid "Scope" msgstr "검색 범위" -#: ../IDEFrame.py:623 +#: ../IDEFrame.py:644 msgid "Search" msgstr "검색" -#: ../dialogs/SearchInProjectDialog.py:45 ../IDEFrame.py:382 -#: ../IDEFrame.py:428 +#: ../dialogs/SearchInProjectDialog.py:49 ../IDEFrame.py:384 +#: ../IDEFrame.py:430 msgid "Search in Project" msgstr "프로젝트 내부 검색" -#: ../dialogs/DurationEditorDialog.py:47 +#: ../dialogs/DurationEditorDialog.py:49 msgid "Seconds:" -msgstr "" - -#: ../IDEFrame.py:388 +msgstr "초:" + +#: ../IDEFrame.py:390 msgid "Select All" -msgstr "" - -#: ../editors/Viewer.py:289 ../editors/TextViewer.py:306 -#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:290 -#: ../controls/VariablePanel.py:350 +msgstr "전부 선택" + +#: ../editors/Viewer.py:331 ../editors/TextViewer.py:305 +#: ../controls/LocationCellEditor.py:101 ../controls/VariablePanel.py:315 +#: ../controls/VariablePanel.py:378 msgid "Select a variable class:" msgstr "변수 클래스 선택:" -#: ../ProjectController.py:1257 +#: ../ProjectController.py:1293 msgid "Select an editor:" -msgstr "" - -#: ../controls/PouInstanceVariablesPanel.py:281 +msgstr "에디터 선택" + +#: ../controls/PouInstanceVariablesPanel.py:292 msgid "Select an instance" -msgstr "" - -#: ../IDEFrame.py:607 +msgstr "인스턴스 선택" + +#: ../IDEFrame.py:628 msgid "Select an object" msgstr "오브젝트 선택" -#: ../ProjectController.py:518 +#: ../ProjectController.py:537 msgid "Selected directory already contains another project. Overwrite? \n" -msgstr "" +msgstr "선택한 디렉토리는 다른 프로젝트가 사용중입니다. 덮어쓰겠습니까?\n" #: ../plcopen/iec_std.csv:70 msgid "Selection" msgstr "선택" -#: ../dialogs/SFCDivergenceDialog.py:65 +#: ../dialogs/SFCDivergenceDialog.py:66 msgid "Selection Convergence" msgstr "수렴(Convergence) 선택" -#: ../dialogs/SFCDivergenceDialog.py:64 +#: ../dialogs/SFCDivergenceDialog.py:65 msgid "Selection Divergence" msgstr "벡터 발산(Divergence) 선택" -#: ../dialogs/DiscoveryDialog.py:82 +#: ../dialogs/DiscoveryDialog.py:135 msgid "Service Discovery" -msgstr "" - -#: ../dialogs/DiscoveryDialog.py:85 +msgstr "서비스 발견" + +#: ../dialogs/DiscoveryDialog.py:104 msgid "Services available:" msgstr "서비스 이용 가능:" -#: ../dialogs/LDElementDialog.py:76 +#: ../dialogs/LDElementDialog.py:79 msgid "Set" msgstr "셋팅 코일(Latch)" @@ -2999,27 +3039,27 @@ msgid "Shift right" msgstr "우측이로 이동(Shift)" -#: ../ProjectController.py:1867 +#: ../ProjectController.py:1863 msgid "Show IEC code generated by PLCGenerator" msgstr "PLCGenerator가 생성한 IEC 코드 보기" -#: ../canfestival/canfestival.py:389 +#: ../canfestival/canfestival.py:407 msgid "Show Master" msgstr "마스터 보기" -#: ../canfestival/canfestival.py:390 +#: ../canfestival/canfestival.py:408 msgid "Show Master generated by config_utils" msgstr "config_util(설정 유틸리티)에 의해 생성된 마스터 보기" -#: ../ProjectController.py:1865 +#: ../ProjectController.py:1862 msgid "Show code" msgstr "코드 보기" -#: ../dialogs/SFCDivergenceDialog.py:67 +#: ../dialogs/SFCDivergenceDialog.py:68 msgid "Simultaneous Convergence" msgstr "동시 수렴" -#: ../dialogs/SFCDivergenceDialog.py:66 +#: ../dialogs/SFCDivergenceDialog.py:67 msgid "Simultaneous Divergence" msgstr "동시 발산" @@ -3027,79 +3067,75 @@ msgid "Sine" msgstr "Sine" -#: ../editors/ResourceEditor.py:68 +#: ../editors/ResourceEditor.py:76 msgid "Single" msgstr "싱글" -#: ../targets/toolchain_makefile.py:126 +#: ../targets/toolchain_makefile.py:130 msgid "Source didn't change, no build.\n" -msgstr "" - -#: ../PLCGenerator.py:397 +msgstr "소스파일이 변경되지 않았습니다, 재빌드되지 않습니다.\n" + +#: ../PLCGenerator.py:404 #, python-brace-format msgid "" "Source signal has to be defined for single task '{a1}' in resource " "'{a2}.{a3}'." -msgstr "" +msgstr "소스 신호는 리소스 '{a2}.{a3}' 내의 단일 태스크 '{a1}' 에 대해서 정의되어야만 합니다. " #: ../plcopen/iec_std.csv:23 msgid "Square root (base 2)" msgstr "제곱근 (SQRT: base 2)" -#: ../plcopen/definitions.py:48 +#: ../plcopen/definitions.py:50 msgid "Standard function blocks" msgstr "기본 함수 블럭" -#: ../ProjectController.py:1843 ../Beremiz_service.py:263 +#: ../ProjectController.py:1829 ../Beremiz_service.py:271 msgid "Start PLC" msgstr "PLC 시작" -#: ../ProjectController.py:1046 +#: ../ProjectController.py:1074 #, python-format msgid "Start build in %s\n" msgstr "%s에서 빌드를 시작합니다\n" -#: ../ProjectController.py:1360 +#: ../ProjectController.py:1397 msgid "Started" -msgstr "" - -#: ../ProjectController.py:1648 +msgstr "시작됨" + +#: ../ProjectController.py:1633 msgid "Starting PLC\n" msgstr "PLC 시작중\n" -#: ../BeremizIDE.py:365 +#: ../BeremizIDE.py:393 msgid "Status ToolBar" -msgstr "" - -#: ../editors/Viewer.py:612 ../editors/Viewer.py:2391 +msgstr "툴바" + +#: ../editors/Viewer.py:651 ../editors/Viewer.py:2424 msgid "Step" -msgstr "" - -#: ../ProjectController.py:1846 +msgstr "스텝" + +#: ../ProjectController.py:1835 msgid "Stop" msgstr "정지" -#: ../Beremiz_service.py:264 +#: ../Beremiz_service.py:272 msgid "Stop PLC" msgstr "PLC 정지" -#: ../ProjectController.py:1848 +#: ../ProjectController.py:1836 msgid "Stop Running PLC" msgstr "작동중인 PLC 정지" -#: ../ProjectController.py:1361 +#: ../ProjectController.py:1398 msgid "Stopped" -msgstr "" - -#: ../ProjectController.py:1620 -msgid "Stopping debugger...\n" -msgstr "디버거 정지중...\n" - -#: ../editors/DataTypeEditor.py:54 +msgstr "멈춤" + +#: ../editors/DataTypeEditor.py:60 msgid "Structure" msgstr "구조" -#: ../editors/DataTypeEditor.py:54 +#: ../editors/DataTypeEditor.py:60 msgid "Subrange" msgstr "서브레인지" @@ -3107,39 +3143,39 @@ msgid "Subtraction" msgstr "뺄셈 연산" -#: ../ProjectController.py:1085 +#: ../ProjectController.py:1113 msgid "Successfully built.\n" msgstr "성공적으로 빌드 완료 되었습니다\n" -#: ../IDEFrame.py:447 +#: ../IDEFrame.py:449 msgid "Switch perspective" -msgstr "" - -#: ../dialogs/SearchInProjectDialog.py:165 ../dialogs/FindInPouDialog.py:115 +msgstr "풀 스크린 에디팅 모드로 전환" + +#: ../dialogs/SearchInProjectDialog.py:169 ../dialogs/FindInPouDialog.py:118 msgid "Syntax error in regular expression of pattern to search!" msgstr "정규 표현식에 적합하지 않은 검색어 입니다!" -#: ../dialogs/DiscoveryDialog.py:93 +#: ../dialogs/DiscoveryDialog.py:90 msgid "TYPE" -msgstr "" +msgstr "타입" #: ../plcopen/iec_std.csv:29 msgid "Tangent" msgstr "Tangent" -#: ../editors/ResourceEditor.py:83 +#: ../editors/ResourceEditor.py:97 msgid "Task" msgstr "태스크" -#: ../editors/ResourceEditor.py:235 +#: ../editors/ResourceEditor.py:248 msgid "Tasks:" msgstr "태스크:" -#: ../controls/VariablePanel.py:73 +#: ../controls/VariablePanel.py:91 msgid "Temp" msgstr "임시" -#: ../version.py:30 +#: ../version.py:35 msgid "" "The best place to ask questions about Beremiz/PLCOpenEditor\n" "is project's mailing list: beremiz-devel@lists.sourceforge.net\n" @@ -3150,30 +3186,39 @@ "You can subscribe to the list here:\n" "https://lists.sourceforge.net/lists/listinfo/beremiz-devel" msgstr "" - -#: ../editors/FileManagementPanel.py:180 +"Beremiz 및 PLCOpenEditor에 관한 질문들을 남길 수 있는 제일 좋은 장소는 프로젝트 메일링 리스트입니다: beremiz-devel@lists.sourceforge.net\n" +"\n" +"이곳은 메인 커뮤니티 지원 채널입니다. \n" +"글을 남기기 위해서는 메일링 리스트를 구독해야 합니다.\n" +"\n" +"메일링 리스트 구독은 다음 주소에서 가능합니다:\n" +"https://lists.sourceforge.net/lists/listinfo/beremiz-devel" + +#: ../editors/FileManagementPanel.py:186 #, python-format msgid "" "The file '%s' already exist.\n" "Do you want to replace it?" msgstr "" - -#: ../editors/LDViewer.py:882 +"파일 '%s' 가 이미 존재합니다. \n" +"정말 교체하겠습니까?" + +#: ../editors/LDViewer.py:893 msgid "The group of block must be coherent!" msgstr "블럭 그룹은 일관성을 가져야 합니다!" -#: ../BeremizIDE.py:542 ../IDEFrame.py:1015 +#: ../BeremizIDE.py:573 ../IDEFrame.py:1046 msgid "There are changes, do you want to save?" -msgstr "" - -#: ../IDEFrame.py:1658 ../IDEFrame.py:1677 +msgstr "변경된 사항이 있습니다, 저장하시겠습니까?" + +#: ../IDEFrame.py:1691 ../IDEFrame.py:1710 #, python-format msgid "" "There is a POU named \"%s\". This could cause a conflict. Do you wish to " "continue?" msgstr "\"%s\" POU 에 문제가 있을 수 있습니다. 계속 하시겠습니까?" -#: ../IDEFrame.py:1102 +#: ../IDEFrame.py:1133 msgid "" "There was a problem printing.\n" "Perhaps your current printer is not set correctly?" @@ -3181,14 +3226,14 @@ "인쇄 작업에 문제가 있습니다.\n" "프린터 설정을 확인하세요" -#: ../editors/LDViewer.py:891 +#: ../editors/LDViewer.py:902 msgid "This option isn't available yet!" msgstr "선택하신 옵션은 지원되지 않습니다!" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:565 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:567 #, python-format msgid "Tick: %d" -msgstr "" +msgstr "Tick: %d" #: ../plcopen/iec_std.csv:40 msgid "Time" @@ -3223,94 +3268,94 @@ msgid "Time-of-day subtraction" msgstr "하루의 시간 빼기" -#: ../dialogs/ForceVariableDialog.py:172 +#: ../dialogs/ForceVariableDialog.py:188 msgid "Toggle value" -msgstr "" - -#: ../editors/Viewer.py:548 +msgstr "값을 토글" + +#: ../editors/Viewer.py:584 msgid "Top" msgstr "상단" -#: ../ProjectController.py:1855 +#: ../ProjectController.py:1848 msgid "Transfer" msgstr "전송" -#: ../ProjectController.py:1857 +#: ../ProjectController.py:1849 msgid "Transfer PLC" msgstr "PLC에 전송" -#: ../ProjectController.py:1820 +#: ../ProjectController.py:1802 msgid "Transfer completed successfully.\n" msgstr "전송이 성공적으로 완료되었습니다\n" -#: ../ProjectController.py:1823 +#: ../ProjectController.py:1805 msgid "Transfer failed\n" msgstr "전송 실패\n" -#: ../editors/Viewer.py:613 ../editors/Viewer.py:2393 -#: ../editors/Viewer.py:2420 +#: ../editors/Viewer.py:652 ../editors/Viewer.py:2426 +#: ../editors/Viewer.py:2453 msgid "Transition" -msgstr "" - -#: ../PLCGenerator.py:1518 +msgstr "트랜지션" + +#: ../PLCGenerator.py:1564 #, python-format msgid "" "Transition \"%s\" body must contain an output variable or coil referring to " "its name" -msgstr "" - -#: ../dialogs/PouTransitionDialog.py:84 +msgstr "트랜지션 \"%s\" body는 출력 변수 또는 출력 변수의 이름을 참조하는 코일을 포함해야 합니다." + +#: ../dialogs/PouTransitionDialog.py:91 msgid "Transition Name" msgstr "트랜지션 이름" -#: ../dialogs/PouTransitionDialog.py:53 +#: ../dialogs/PouTransitionDialog.py:60 msgid "Transition Name:" msgstr "트랜지션 이름:" -#: ../PLCGenerator.py:1609 +#: ../PLCGenerator.py:1657 #, python-brace-format msgid "Transition with content \"{a1}\" not connected to a next step in \"{a2}\" POU" -msgstr "" - -#: ../PLCGenerator.py:1598 +msgstr "컨텐츠 \"{a1}\"의 트렌지션은 \"{a2}\" POU 내의 다음 스텝으로 연결되지 않았습니다. " + +#: ../PLCGenerator.py:1646 #, python-brace-format msgid "" "Transition with content \"{a1}\" not connected to a previous step in " "\"{a2}\" POU" -msgstr "" - -#: ../plcopen/plcopen.py:1323 +msgstr " 컨텐츠 \"{a1}\"의 트랜지션은 \"{a2}\" POU 내의 이전 스텝으로 연결되지 않았습니다. " + +#: ../plcopen/plcopen.py:1526 #, python-format msgid "Transition with name %s doesn't exist!" msgstr "%s 트랜지션 이름이 존재 하지 않습니다!" -#: ../PLCControler.py:98 +#: ../plcopen/types_enums.py:76 msgid "Transitions" msgstr "트랜지션" -#: ../dialogs/AboutDialog.py:131 +#: ../dialogs/AboutDialog.py:127 msgid "Translated by" -msgstr "" - -#: ../editors/ResourceEditor.py:68 +msgstr "번역자" + +#: ../editors/ResourceEditor.py:76 msgid "Triggering" msgstr "트리거링 스위치" -#: ../Beremiz_service.py:478 +#: ../Beremiz_service.py:490 msgid "Twisted unavailable." -msgstr "" - -#: ../dialogs/ActionBlockDialog.py:39 ../editors/ResourceEditor.py:83 -#: ../editors/DataTypeEditor.py:50 ../editors/CodeFileEditor.py:739 -#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +msgstr "Twisted 모듈을 이용할 수 없습니다." + +#: ../dialogs/ActionBlockDialog.py:42 ../editors/ResourceEditor.py:97 +#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:733 +#: ../controls/VariablePanel.py:61 msgid "Type" msgstr "타입" -#: ../dialogs/BrowseLocationsDialog.py:49 +#: ../dialogs/BrowseLocationsDialog.py:54 msgid "Type and derivated" -msgstr "" - -#: ../canfestival/config_utils.py:336 ../canfestival/config_utils.py:624 +msgstr "타입과 파생형 타입" + +#: ../canfestival/config_utils.py:359 ../canfestival/config_utils.py:666 #, python-format msgid "Type conflict for location \"%s\"" msgstr "\"%s\" 타입 에러" @@ -3319,179 +3364,233 @@ msgid "Type conversion" msgstr "변환 타입" -#: ../editors/DataTypeEditor.py:162 +#: ../editors/DataTypeEditor.py:170 msgid "Type infos:" msgstr "타입 정보:" -#: ../dialogs/BrowseLocationsDialog.py:50 +#: ../dialogs/BrowseLocationsDialog.py:55 msgid "Type strict" -msgstr "" - -#: ../dialogs/SFCDivergenceDialog.py:59 ../dialogs/SFCTransitionDialog.py:58 -#: ../dialogs/LDPowerRailDialog.py:57 ../dialogs/BrowseLocationsDialog.py:100 -#: ../dialogs/FBDBlockDialog.py:66 ../dialogs/ConnectionDialog.py:59 +msgstr "엄격한 형" + +#: ../dialogs/SFCDivergenceDialog.py:60 ../dialogs/SFCTransitionDialog.py:59 +#: ../dialogs/LDPowerRailDialog.py:58 ../dialogs/BrowseLocationsDialog.py:111 +#: ../dialogs/FBDBlockDialog.py:69 ../dialogs/ConnectionDialog.py:61 msgid "Type:" msgstr "타입:" -#: ../canfestival/config_utils.py:462 ../canfestival/config_utils.py:476 +#: ../connectors/PYRO/dialog.py:39 ../connectors/WAMP/dialog.py:42 +msgid "URI host:" +msgstr "URI 호스트:" + +#: ../connectors/PYRO/dialog.py:43 ../connectors/WAMP/dialog.py:46 +msgid "URI port:" +msgstr "URI 포트:" + +#: ../controls/UriLocationEditor.py:35 +msgid "URI type:" +msgstr "URI 종류:" + +#: ../canfestival/config_utils.py:500 ../canfestival/config_utils.py:515 #, python-format msgid "Unable to define PDO mapping for node %02x" msgstr "PDO 매핑 정의 에러:%02x" -#: ../targets/Xenomai/__init__.py:39 +#: ../targets/Xenomai/__init__.py:43 #, python-format msgid "Unable to get Xenomai's %s \n" msgstr "Xenomai의 %s 를 가져 올 수 없습니다\n" -#: ../PLCGenerator.py:961 ../PLCGenerator.py:1214 +#: ../PLCGenerator.py:974 ../PLCGenerator.py:1252 #, python-brace-format msgid "Undefined block type \"{a1}\" in \"{a2}\" POU" -msgstr "" - -#: ../PLCGenerator.py:254 +msgstr "\"{a2}\" POU에서 정의되지 않은 블록 타입 \"{a1}\"" + +#: ../PLCGenerator.py:261 #, python-format msgid "Undefined pou type \"%s\"" msgstr "\"%s\" 의 POU 타입이 정의되지 않았습니다" -#: ../IDEFrame.py:360 ../IDEFrame.py:421 +#: ../IDEFrame.py:365 ../IDEFrame.py:423 msgid "Undo" msgstr "되돌리기" -#: ../ProjectController.py:423 +#: ../ProjectController.py:442 msgid "Unknown" -msgstr "" - -#: ../editors/Viewer.py:394 +msgstr "알려지지 않은" + +#: ../editors/Viewer.py:437 #, python-format msgid "Unknown variable \"%s\" for this POU!" msgstr "\"%s\" 변수를 현재 POU에서 알 수 없습니다!" -#: ../ProjectController.py:420 ../ProjectController.py:421 +#: ../ProjectController.py:439 ../ProjectController.py:440 msgid "Unnamed" -msgstr "" - -#: ../PLCControler.py:638 +msgstr "이름이 없는" + +#: ../PLCControler.py:263 #, python-format msgid "Unnamed%d" msgstr "이름 없음%d" -#: ../controls/VariablePanel.py:284 +#: ../controls/VariablePanel.py:308 #, python-format msgid "Unrecognized data size \"%s\"" msgstr "\"%s\"의 데이터 크기를 알 수 없습니다" -#: ../editors/DataTypeEditor.py:630 ../controls/VariablePanel.py:827 +#: ../editors/DataTypeEditor.py:646 ../controls/VariablePanel.py:841 msgid "User Data Types" msgstr "사용자 데이터 타입" -#: ../canfestival/SlaveEditor.py:65 ../canfestival/NetworkEditor.py:86 +#: ../canfestival/SlaveEditor.py:69 ../canfestival/NetworkEditor.py:93 msgid "User Type" msgstr "사용자 타입" -#: ../PLCControler.py:97 +#: ../plcopen/types_enums.py:75 msgid "User-defined POUs" msgstr "사용자 정의 POU" -#: ../dialogs/ActionBlockDialog.py:39 +#: ../dialogs/ActionBlockDialog.py:42 msgid "Value" msgstr "데이터 값" -#: ../editors/DataTypeEditor.py:259 +#: ../editors/DataTypeEditor.py:267 msgid "Values:" msgstr "데이터 값:" -#: ../dialogs/ActionBlockDialog.py:43 ../editors/Viewer.py:585 -#: ../editors/Viewer.py:2423 +#: ../dialogs/ActionBlockDialog.py:47 ../editors/Viewer.py:622 +#: ../editors/Viewer.py:2456 msgid "Variable" msgstr "변수" -#: ../editors/Viewer.py:309 ../editors/Viewer.py:339 ../editors/Viewer.py:361 -#: ../editors/TextViewer.py:292 ../editors/TextViewer.py:343 -#: ../editors/TextViewer.py:366 ../controls/VariablePanel.py:329 +#: ../editors/Viewer.py:352 ../editors/Viewer.py:382 ../editors/Viewer.py:404 +#: ../editors/TextViewer.py:290 ../editors/TextViewer.py:344 +#: ../editors/TextViewer.py:367 ../controls/VariablePanel.py:355 msgid "Variable Drop" -msgstr "" - -#: ../dialogs/FBDVariableDialog.py:64 +msgstr "변수 드롭" + +#: ../dialogs/FBDVariableDialog.py:68 msgid "Variable Properties" msgstr "변수 속성" -#: ../editors/Viewer.py:289 ../editors/TextViewer.py:306 -#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:290 -#: ../controls/VariablePanel.py:350 +#: ../editors/Viewer.py:332 ../editors/TextViewer.py:306 +#: ../controls/LocationCellEditor.py:102 ../controls/VariablePanel.py:316 +#: ../controls/VariablePanel.py:379 msgid "Variable class" msgstr "변수 클래스" -#: ../editors/Viewer.py:396 ../editors/TextViewer.py:387 +#: ../editors/Viewer.py:439 ../editors/TextViewer.py:388 msgid "Variable don't belong to this POU!" msgstr "POU에 속하지 않는 변수 입니다!" -#: ../dialogs/LDElementDialog.py:89 +#: ../dialogs/LDElementDialog.py:92 msgid "Variable:" -msgstr "" - -#: ../controls/VariablePanel.py:72 +msgstr "변수:" + +#: ../controls/VariablePanel.py:90 msgid "Variables" msgstr "변수" -#: ../controls/ProjectPropertiesPanel.py:152 +#: ../controls/ProjectPropertiesPanel.py:166 msgid "Vertical:" msgstr "수직:" -#: ../Beremiz_service.py:588 +#: ../runtime/WampClient.py:113 +#, python-format +msgid "WAMP Client connection failed (%s) .. retrying .." +msgstr "WAMP 클라이언트 연결이 실패하였습니다 (%s) ...재시도 중..." + +#: ../runtime/WampClient.py:117 +#, python-format +msgid "WAMP Client connection lost (%s) .. retrying .." +msgstr "WAMP 클라이언트 연결이 끈겼습니다 (%s) ..재시도중.." + +#: ../connectors/WAMP/dialog.py:54 +msgid "WAMP ID:" +msgstr "WAMP 아이디:" + +#: ../runtime/WampClient.py:172 +msgid "WAMP client connecting to :" +msgstr "WAMP 클라이언트가 연결중입니다:" + +#: ../runtime/WampClient.py:148 +msgid "WAMP client connection not established!" +msgstr "WAMP 클라이언트 연결이 성립되지 않았습니다!" + +#: ../Beremiz_service.py:625 msgid "WAMP client startup failed. " -msgstr "" - -#: ../connectors/WAMP/__init__.py:91 +msgstr "WAMP 클라이언트의 시작이 실패했습니다." + +#: ../Beremiz_service.py:621 +msgid "WAMP config is incomplete." +msgstr "WAMP 설정이 불완전합니다." + +#: ../Beremiz_service.py:623 +msgid "WAMP config is missing." +msgstr "WAMP 설정이 누락되어 있습니다." + +#: ../connectors/WAMP/__init__.py:99 #, python-format msgid "WAMP connecting to URL : %s\n" -msgstr "" - -#: ../connectors/WAMP/__init__.py:131 +msgstr "WAMP URL에 연결중입니다: %s\n" + +#: ../connectors/WAMP/__init__.py:140 msgid "WAMP connection timeout" -msgstr "" - -#: ../connectors/WAMP/__init__.py:150 +msgstr "WAMP 연결 타임아웃" + +#: ../connectors/WAMP/__init__.py:158 #, python-format msgid "WAMP connection to '%s' failed.\n" -msgstr "" - -#: ../Beremiz_service.py:564 +msgstr "WAMP '%s'에 연결이 실패하였습니다.\n" + +#: ../Beremiz_service.py:595 msgid "WAMP import failed :" -msgstr "" - -#: ../wxglade_hmi/wxglade_hmi.py:37 +msgstr "WAMP 불러오기 실패:" + +#: ../runtime/WampClient.py:126 +msgid "WAMP load error: " +msgstr "WAMP 로드 에러:" + +#: ../runtime/WampClient.py:108 +msgid "WAMP session left" +msgstr "WAMP 세션 종료" + +#: ../wxglade_hmi/wxglade_hmi.py:44 msgid "WXGLADE GUI" msgstr "WXGLADE GUI" -#: ../dialogs/PouDialog.py:129 ../editors/LDViewer.py:891 +#: ../runtime/WampClient.py:137 +msgid "Wamp secret load error:" +msgstr "WAMP 비밀 로드 에러:" + +#: ../dialogs/PouDialog.py:137 ../editors/LDViewer.py:902 msgid "Warning" msgstr "경고" -#: ../ProjectController.py:707 +#: ../ProjectController.py:726 msgid "Warnings in ST/IL/SFC code generator :\n" msgstr "ST/IL/SFC 코드 생성기 경고:\n" -#: ../dialogs/SearchInProjectDialog.py:78 +#: ../dialogs/SearchInProjectDialog.py:82 msgid "Whole Project" msgstr "프로젝트 전체 검색" -#: ../controls/ProjectPropertiesPanel.py:120 +#: ../controls/ProjectPropertiesPanel.py:134 msgid "Width:" msgstr "폭:" -#: ../dialogs/FindInPouDialog.py:91 +#: ../dialogs/FindInPouDialog.py:94 msgid "Wrap search" -msgstr "" - -#: ../dialogs/AboutDialog.py:130 +msgstr "페이지 끝까지 검색한 후 처음으로 와서 다시 검색" + +#: ../dialogs/AboutDialog.py:126 msgid "Written by" -msgstr "" - -#: ../features.py:34 +msgstr "개발자" + +#: ../features.py:35 msgid "WxGlade GUI" msgstr "WxGlade GUI" -#: ../svgui/svgui.py:142 +#: ../svgui/svgui.py:150 msgid "" "You don't have write permissions.\n" "Open Inkscape anyway ?" @@ -3499,7 +3598,7 @@ "현재 쓰기 권한이 없습니다\n" "그래도 Inkscape를 열까요?" -#: ../wxglade_hmi/wxglade_hmi.py:154 +#: ../wxglade_hmi/wxglade_hmi.py:160 msgid "" "You don't have write permissions.\n" "Open wxGlade anyway ?" @@ -3507,7 +3606,7 @@ "현재 쓰기 권한이 없습니다\n" "그래도 WxGlade를 열까요?" -#: ../ProjectController.py:371 +#: ../ProjectController.py:390 msgid "" "You must have permission to work on the project\n" "Work on a project copy ?" @@ -3515,81 +3614,73 @@ "프로젝트 작업에는 권한이 필요합니다\n" "사본으로 작업하시겠습니까?" -#: ../editors/LDViewer.py:886 +#: ../editors/LDViewer.py:897 msgid "" "You must select the block or group of blocks around which a branch should be" " added!" msgstr "Branch를 추가할 블럭 또는 블럭 그룹을 선택해야 합니다!" -#: ../editors/LDViewer.py:666 +#: ../editors/LDViewer.py:677 msgid "You must select the wire where a contact should be added!" msgstr "접점에 추가될 와이어를 선택해야 합니다!" -#: ../dialogs/SFCStepNameDialog.py:48 ../dialogs/PouNameDialog.py:46 +#: ../dialogs/SFCStepNameDialog.py:52 ../dialogs/PouNameDialog.py:50 msgid "You must type a name!" msgstr "이름을 입력하세요!" -#: ../dialogs/ForceVariableDialog.py:193 +#: ../dialogs/ForceVariableDialog.py:209 msgid "You must type a value!" msgstr "데이터 값을 입력하세요!" -#: ../IDEFrame.py:438 +#: ../IDEFrame.py:440 msgid "Zoom" msgstr "확대(Zoom)" -#: ../dialogs/DurationEditorDialog.py:155 +#: ../dialogs/DurationEditorDialog.py:158 msgid "days" -msgstr "" - -#: ../PLCOpenEditor.py:343 +msgstr "일" + +#: ../PLCOpenEditor.py:317 #, python-format msgid "error: %s\n" msgstr "에러: %s\n" -#: ../util/ProcessLogger.py:169 +#: ../util/ProcessLogger.py:178 #, python-brace-format msgid "exited with status {a1} (pid {a2})\n" -msgstr "" - -#: ../PLCOpenEditor.py:406 ../PLCOpenEditor.py:408 -msgid "file : " -msgstr "파일 :" - -#: ../dialogs/PouDialog.py:32 +msgstr "상태 {a1}과 함께 종료되었음 (pid {a2})\n" + +#: ../dialogs/PouDialog.py:36 msgid "function" msgstr "함수" -#: ../PLCOpenEditor.py:409 -msgid "function : " -msgstr "함수 :" - -#: ../dialogs/PouDialog.py:32 +#: ../dialogs/PouDialog.py:36 msgid "functionBlock" msgstr "함수 블럭" -#: ../dialogs/DurationEditorDialog.py:155 +#: ../dialogs/DurationEditorDialog.py:158 msgid "hours" -msgstr "" - -#: ../PLCOpenEditor.py:409 -msgid "line : " -msgstr "라인 :" - -#: ../dialogs/DurationEditorDialog.py:157 +msgstr "시간" + +#: ../ProjectController.py:753 +msgid "matiec installation is not found\n" +msgstr "matiec 설치 경로를 찾을 수 없습니다.\n" + +#: ../dialogs/DurationEditorDialog.py:160 msgid "milliseconds" -msgstr "" - -#: ../dialogs/DurationEditorDialog.py:156 +msgstr "밀리초" + +#: ../dialogs/DurationEditorDialog.py:159 msgid "minutes" -msgstr "" - -#: ../dialogs/PouDialog.py:32 +msgstr "분" + +#: ../dialogs/PouDialog.py:36 msgid "program" msgstr "프로그램" -#: ../dialogs/DurationEditorDialog.py:156 +#: ../dialogs/DurationEditorDialog.py:159 msgid "seconds" -msgstr "" +msgstr "초" #: ../plcopen/iec_std.csv:84 msgid "string from the middle" @@ -3603,26 +3694,28 @@ msgid "string right of" msgstr "우측 문자열" -#: ../Beremiz.py:164 +#: ../Beremiz.py:167 msgid "update info unavailable." -msgstr "" - -#: ../PLCOpenEditor.py:341 +msgstr "업데이트 정보를 이용할 수 없습니다." + +#: ../PLCOpenEditor.py:315 #, python-format msgid "warning: %s\n" msgstr "경고: %s\n" -#: ../PLCControler.py:972 +#: ../PLCControler.py:576 #, python-brace-format msgid "{a1} \"{a2}\" can't be pasted as a {a3}." -msgstr "" - -#: ../ConfigTreeNode.py:56 +msgstr "{a1} \"{a2}\"는 {a3}으로 붙여넣을 수 없습니다." + +#: ../ConfigTreeNode.py:58 #, python-brace-format msgid "" -"{a1} XML file doesn't follow XSD schema at line %{a2}:\n" +"{a1} XML file doesn't follow XSD schema at line {a2}:\n" "{a3}" msgstr "" +"{a1} XML 파일은 XSD 스키마를 따르지 않습니다. 라인 넘버 {a2}:\n" +"{a3}" #: Extra XSD strings msgid "CanFestivalSlaveNode" @@ -3656,10 +3749,10 @@ msgstr "CAN 드라이버" msgid "Generic" -msgstr "" +msgstr "지너릭" msgid "Command" -msgstr "" +msgstr "명령" msgid "Xenomai" msgstr "Xenomai" @@ -3685,6 +3778,72 @@ msgid "Win32" msgstr "Win32" +msgid "ModbusRequest" +msgstr "Modbus 요청" + +msgid "SlaveID" +msgstr "슬레이브ID" + +msgid "Nr_of_Channels" +msgstr "채널 수" + +msgid "Start_Address" +msgstr "시작 주소" + +msgid "Timeout_in_ms" +msgstr "타임아웃_ms" + +msgid "MemoryArea" +msgstr "메모리공간" + +msgid "MemoryAreaType" +msgstr "MemoryArea 종류" + +msgid "ModbusTCPclient" +msgstr "ModbusTCP 클라이언트" + +msgid "Remote_IP_Address" +msgstr "원격 IP 주소" + +msgid "Remote_Port_Number" +msgstr "원격 포트 번호" + +msgid "Invocation_Rate_in_ms" +msgstr "ms당 호출비율" + +msgid "ModbusServerNode" +msgstr "Modbus 서버 노드" + +msgid "Local_IP_Address" +msgstr "로컬 IP 주소" + +msgid "Local_Port_Number" +msgstr "로컬 Port 번호" + +msgid "ModbusRTUclient" +msgstr "ModbusRTU 클라이언트" + +msgid "Serial_Port" +msgstr "시리얼 포트" + +msgid "Baud_Rate" +msgstr "보레이트" + +msgid "Parity" +msgstr "패리티" + +msgid "Stop_Bits" +msgstr "스탑 비트" + +msgid "ModbusRTUslave" +msgstr "ModbusRTU 슬레이브" + +msgid "ModbusRoot" +msgstr "Modbus 루트" + +msgid "MaxRemoteTCPclients" +msgstr "최대 원격 TCP 클라이언트" + msgid "BaseParams" msgstr "베이스 파라메터" @@ -3710,205 +3869,209 @@ msgstr "확장 모듈 제거 (Extension 제거)" msgid "%(codefile_name)s" -msgstr "" +msgstr "%(codefile_name)s" msgid "variables" -msgstr "" +msgstr "변수들" msgid "variable" -msgstr "" +msgstr "변수" msgid "name" -msgstr "" +msgstr "이름" msgid "type" -msgstr "" +msgstr "타입" msgid "class" -msgstr "" +msgstr "클래스" msgid "initial" -msgstr "" +msgstr "초기" msgid "desc" -msgstr "" +msgstr "설명" msgid "onchange" -msgstr "" +msgstr "값 변경 알림" msgid "opts" -msgstr "" +msgstr "옵션들" #: Extra TC6 documentation strings msgid "0 - current time, 1 - load time from PDT" -msgstr "" +msgstr "0 - 현재 시간, 1 - PDT로부터 시간 읽어오기" msgid "Preset datetime" -msgstr "" +msgstr "날짜 기본설정" msgid "Copy of IN" -msgstr "" +msgstr "IN의 복사" msgid "Datetime, current or relative to PDT" -msgstr "" +msgstr "태평양 일광 절약 시간 기준으로 현재 또는 그에 상대적인 현재 시간" msgid "" "The real time clock has many uses including time stamping, setting dates and" " times of day in batch reports, in alarm messages and so on." -msgstr "" +msgstr "실시간 시계는 타임 스탬핑, batch 리포트에서의 시간/날짜 설정, 알람 메세지 등과 같은 일에 사용됩니다. " msgid "1 = integrate, 0 = hold" -msgstr "" +msgstr "1 = 인테그레이트, 0 = 홀드" msgid "Overriding reset" -msgstr "" +msgstr "Overriding 리셋" msgid "Input variable" -msgstr "" +msgstr "입력 변수" msgid "Initial value" -msgstr "" +msgstr "초기값" msgid "Sampling period" -msgstr "" +msgstr "샘플링 주기" msgid "NOT R1" -msgstr "" +msgstr "R1이 아님" msgid "Integrated output" -msgstr "" +msgstr "적분된 출력" msgid "" "The integral function block integrates the value of input XIN over time." -msgstr "" +msgstr "적분 함수 블록은 시간에 따라 입력 XIN의 값을 적분합니다." msgid "0 = reset" -msgstr "" +msgstr "0 = 리셋" msgid "Input to be differentiated" -msgstr "" +msgstr "미분되어야 하는 입력" msgid "Differentiated output" -msgstr "" +msgstr "미분된 출력" msgid "" "The derivative function block produces an output XOUT proportional to the " "rate of change of the input XIN." -msgstr "" +msgstr "미분 함수 블록은 입력 XIN의 변화율에 비례하는 출력 XOUT을 생성합니다." msgid "0 - manual , 1 - automatic" -msgstr "" +msgstr "0 - 수동, 1 - 자동" msgid "Process variable" -msgstr "" +msgstr "프로세스 변수" msgid "Set point" -msgstr "" +msgstr "셋 포인트" msgid "Manual output adjustment - Typically from transfer station" -msgstr "" +msgstr "수동 출력값 조정 - 일반적으로 전송 스테이션으로부터" msgid "Proportionality constant" -msgstr "" +msgstr "비례 상수" msgid "Reset time" -msgstr "" +msgstr "시간 초기화" msgid "Derivative time constant" -msgstr "" +msgstr "미분 시간 상수" msgid "PV - SP" -msgstr "" +msgstr "PV-SP" msgid "FB for integral term" -msgstr "" +msgstr "적분항을 위한 함수 블록" msgid "FB for derivative term" -msgstr "" +msgstr "미분항을 위한 함수 블록" msgid "" "The PID (proportional, Integral, Derivative) function block provides the " "classical three term controller for closed loop control." -msgstr "" +msgstr "PID (비례, 적분, 미분) 함수 블록은 폐루프 제어를 위한 세 가지 항 제어기를 제공합니다. " msgid "0 - track X0, 1 - ramp to/track X1" -msgstr "" +msgstr "0 - X0 따라가기, 1 - X1 ramp / X1 따라가기 " msgid "Ramp duration" -msgstr "" +msgstr "Ramp 지속시간" msgid "BUSY = 1 during ramping period" -msgstr "" +msgstr "ramping 주기동안 BUSY = 1" msgid "Elapsed time of ramp" -msgstr "" +msgstr "ramp의 경과된 시간" msgid "The RAMP function block is modelled on example given in the standard." -msgstr "" +msgstr "RAMP 함수 블록은 표준에서 주어진 예제를 모델로 합니다." msgid "" "The hysteresis function block provides a hysteresis boolean output driven by" " the difference of two floating point (REAL) inputs XIN1 and XIN2." msgstr "" +"히스테리시스 기능 블록은 두 개의 부동 소수점 (REAL) 입력 XIN1 및 XIN2의 차이로 구동되는 히스테리시스 부울 출력을 " +"제공합니다." msgid "The SR bistable is a latch where the Set dominates." -msgstr "" +msgstr "SR bistable은 Set 도미넌트한 래치입니다." msgid "The RS bistable is a latch where the Reset dominates." -msgstr "" +msgstr "RS bistable은 Reset 도미넌트한 래치입니다." msgid "" "The semaphore provides a mechanism to allow software elements mutually " -"exclusive access to certain ressources." -msgstr "" +"exclusive access to certain resources." +msgstr "세마포어는 소프트웨어 엘리먼트들이 특정 자원에 접근에 대해 상호배제 매커니즘을 제공합니다." msgid "The output produces a single pulse when a rising edge is detected." -msgstr "" +msgstr "상승 엣지가 감지되면 출력은 단일한 펄스를 만들어냅니다. " msgid "The output produces a single pulse when a falling edge is detected." -msgstr "" +msgstr "하강 엣지가 검출되면 출력은 단일한 펄스를 만들어냅니다." msgid "" "The up-counter can be used to signal when a count has reached a maximum " "value." -msgstr "" +msgstr "업 카운터는 카운트가 최대값에 도달하였을때 신호를 주기 위해 사용될 수 있습니다. " msgid "" "The down-counter can be used to signal when a count has reached zero, on " "counting down from a preset value." -msgstr "" +msgstr "다운 카운터는 특정 값에서부터 감소하여 제로값이 될 때 신호를 주기 위해 사용될 수 있습니다. " msgid "" "The up-down counter has two inputs CU and CD. It can be used to both count " "up on one input and down on the other." msgstr "" +"업 다운 카운터는 두 개의 입력값 CU,CD을 가집니다. 입력값들은 하나의 입력을 업 카운트하거나 다운 카운트하는데 사용될 수 있습니다." +" " msgid "first input parameter" -msgstr "" +msgstr "첫번째 입력 파라메터" msgid "second input parameter" -msgstr "" +msgstr "두번째 입력 파라메터" msgid "first output parameter" -msgstr "" +msgstr "첫번째 출력 파라메터" msgid "second output parameter" -msgstr "" +msgstr "두번째 출력 파라메터" msgid "internal state: 0-reset, 1-counting, 2-set" -msgstr "" +msgstr "초기 상태: 0-리셋, 1-카운팅, 2-셋" msgid "" "The pulse timer can be used to generate output pulses of a given time " "duration." -msgstr "" +msgstr "펄스 타이머는 주어진 시간동안의 아웃풋 펄스 생성에 사용될 수 있습니다. " msgid "" "The on-delay timer can be used to delay setting an output true, for fixed " "period after an input becomes true." -msgstr "" +msgstr "온 딜레이 타이머는 입력이 참이 된 이후 고정된 시간 동안 출력 설정을 참으로 지연시키는데 사용될 수 있습니다. " msgid "" "The off-delay timer can be used to delay setting an output false, for fixed " "period after input goes false." -msgstr "" +msgstr "오프 딜레이 타이머는 입력이 거짓값이 된 이후 고정된 시간 동안 출력 설정을 거짓값으로 지연시키는데 사용될 수 있습니다. "