diff -r 1ee326651a74 -r 756d02cf78db i18n/Beremiz_ru_RU.po --- a/i18n/Beremiz_ru_RU.po Thu Feb 21 10:58:37 2019 +0300 +++ b/i18n/Beremiz_ru_RU.po Thu Feb 21 11:25:03 2019 +0300 @@ -3,14 +3,19 @@ # This file is distributed under the same license as the Beremiz package. # FIRST AUTHOR , YEAR. # +# Translators: +# Sergey Surkov , 2017 +# zx_alexis , 2017 +# Andrey Skvortsov , 2019 +# #, fuzzy msgid "" msgstr "" "Project-Id-Version: Beremiz\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-06-15 16:39+0300\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: zx_alexis , 2017\n" +"POT-Creation-Date: 2018-10-03 14:20+0300\n" +"PO-Revision-Date: 2017-06-13 13:14+0000\n" +"Last-Translator: Andrey Skvortsov , 2019\n" "Language-Team: Russian (Russia) (https://www.transifex.com/beremiz/teams/75746/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -43,37 +48,46 @@ "\n" "Traceback:\n" -#: ../controls/VariablePanel.py:90 +#: ../controls/VariablePanel.py:87 msgid " External" msgstr " Внешний" -#: ../controls/VariablePanel.py:89 +#: ../controls/VariablePanel.py:86 msgid " InOut" msgstr " Вход/Выход" -#: ../controls/VariablePanel.py:89 +#: ../controls/VariablePanel.py:86 msgid " Input" msgstr " Вход" -#: ../controls/VariablePanel.py:90 +#: ../controls/VariablePanel.py:87 msgid " Local" msgstr " Локальный" -#: ../controls/VariablePanel.py:89 +#: ../controls/VariablePanel.py:86 msgid " Output" msgstr " Выход" -#: ../controls/VariablePanel.py:91 +#: ../controls/VariablePanel.py:88 msgid " Temp" msgstr " Временный" -#: ../dialogs/PouTransitionDialog.py:101 ../dialogs/ProjectDialog.py:74 -#: ../dialogs/PouActionDialog.py:99 ../dialogs/PouDialog.py:122 +#: ../etherlab/etherlab.py:301 +#, python-format +msgid " (rev. %s)" +msgstr "(ревизия %s)" + +#: ../etherlab/CommonEtherCATFunction.py:1599 +msgid " Warning..." +msgstr " Предупреждение..." + +#: ../dialogs/PouTransitionDialog.py:100 ../dialogs/ProjectDialog.py:72 +#: ../dialogs/PouActionDialog.py:99 ../dialogs/PouDialog.py:157 #, python-format msgid " and %s" msgstr " и %s" -#: ../ProjectController.py:1182 +#: ../ProjectController.py:1236 msgid " generation failed !\n" msgstr "неудачная генерация кода!\n" @@ -97,7 +111,7 @@ msgid "\"%s\" can't use itself!" msgstr "\"%s\" не может использовать сам себя!!!" -#: ../IDEFrame.py:1688 ../IDEFrame.py:1707 +#: ../IDEFrame.py:1705 ../IDEFrame.py:1724 #, python-format msgid "\"%s\" config already exists!" msgstr "Конфигурация \"%s\" уже существует!!!" @@ -112,32 +126,32 @@ msgid "\"%s\" configuration doesn't exist !!!" msgstr "конфигурация \"%s\" не существует!!!" -#: ../IDEFrame.py:1638 +#: ../IDEFrame.py:1655 #, python-format msgid "\"%s\" data type already exists!" msgstr "Тип данных \"%s\" уже существует!!!" -#: ../dialogs/PouTransitionDialog.py:112 ../dialogs/BlockPreviewDialog.py:220 +#: ../dialogs/PouTransitionDialog.py:111 ../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 +#: ../controls/VariablePanel.py:424 #, python-format msgid "\"%s\" element for this pou already exists!" msgstr "Элемент с именем \"%s\" уже существует в этом POU!!!" -#: ../BeremizIDE.py:928 +#: ../BeremizIDE.py:925 #, python-format msgid "\"%s\" folder is not a valid Beremiz project\n" msgstr "Директория \"%s\" не является проектом Beremiz\n" -#: ../dialogs/SFCStepNameDialog.py:56 ../dialogs/PouTransitionDialog.py:108 +#: ../dialogs/SFCStepNameDialog.py:56 ../dialogs/PouTransitionDialog.py:107 #: ../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 +#: ../dialogs/PouActionDialog.py:106 ../dialogs/PouDialog.py:164 +#: ../etherlab/ConfigEditor.py:973 ../editors/ResourceEditor.py:481 +#: ../editors/ResourceEditor.py:518 ../editors/DataTypeEditor.py:571 +#: ../editors/DataTypeEditor.py:603 ../editors/CodeFileEditor.py:793 +#: ../controls/VariablePanel.py:798 ../IDEFrame.py:1646 #, python-format msgid "\"%s\" is a keyword. It can't be used!" msgstr "\"%s\" является ключевым словом и не может быть использован!" @@ -152,27 +166,28 @@ msgid "\"%s\" is not a valid folder!" msgstr "\"%s\" не является директорией!" -#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:106 +#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:105 #: ../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 +#: ../dialogs/PouActionDialog.py:104 ../dialogs/PouDialog.py:162 +#: ../etherlab/ConfigEditor.py:971 ../editors/ResourceEditor.py:479 +#: ../editors/ResourceEditor.py:516 ../editors/DataTypeEditor.py:601 +#: ../editors/CodeFileEditor.py:791 ../controls/VariablePanel.py:796 +#: ../IDEFrame.py:1644 #, python-format msgid "\"%s\" is not a valid identifier!" msgstr "\"%s\" неверный идентификатор!" -#: ../IDEFrame.py:2436 +#: ../IDEFrame.py:2454 #, python-format msgid "\"%s\" is used by one or more POUs. Do you wish to continue?" msgstr "\"%s\" используется одним или более POU. Продолжить?" -#: ../dialogs/BlockPreviewDialog.py:213 ../dialogs/PouDialog.py:131 +#: ../dialogs/BlockPreviewDialog.py:213 ../dialogs/PouDialog.py:166 #: ../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 +#: ../editors/TextViewer.py:374 ../controls/VariablePanel.py:363 +#: ../IDEFrame.py:1664 #, python-format msgid "\"%s\" pou already exists!" msgstr "POU \"%s\" уже существует!" @@ -201,7 +216,7 @@ "\"%s\" не является корректной размерностью массива! Правое значение должно " "быть больше левого." -#: ../PLCGenerator.py:1133 +#: ../PLCGenerator.py:1182 #, python-brace-format msgid "\"{a1}\" function cancelled in \"{a2}\" POU: No input connected" msgstr "Функция \"{a1}\" не используется в POU \"{a2}\": входы не подключены" @@ -221,35 +236,35 @@ msgid "\"{a1}\" resource doesn't exist in \"{a2}\" configuration !!!" msgstr "Ресурс \"{a1}\" отсутствует в конфигурации \"{a2}\"!!!" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:580 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:559 #, python-format msgid "%03gms" msgstr "%03gмс" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:571 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:550 #, python-format msgid "%dd" msgstr "%dд" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:61 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:572 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:189 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:551 #, python-format msgid "%dh" msgstr "%dч" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:60 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:573 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:188 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:552 #, python-format msgid "%dm" msgstr "%dм" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:58 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:186 #, python-format msgid "%dms" msgstr "%dмс" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:59 -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:574 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:187 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:553 #, python-format msgid "%ds" msgstr "%dc" @@ -282,7 +297,12 @@ msgid "%s body don't have text!" msgstr "Тело %s не содержит никакой текст!" -#: ../IDEFrame.py:388 +#: ../etherlab/ConfigEditor.py:856 +#, python-format +msgid "%s's nodes" +msgstr "узлы %s" + +#: ../IDEFrame.py:391 msgid "&Add Element" msgstr "&Добавить элемент" @@ -291,35 +311,35 @@ msgid "&Close" msgstr "&Закрыть" -#: ../IDEFrame.py:361 +#: ../IDEFrame.py:364 msgid "&Configuration" msgstr "&Конфигурация" -#: ../IDEFrame.py:350 +#: ../IDEFrame.py:353 msgid "&Data Type" msgstr "&Типы данных" -#: ../IDEFrame.py:392 +#: ../IDEFrame.py:395 msgid "&Delete" msgstr "&Удалить" -#: ../IDEFrame.py:342 +#: ../IDEFrame.py:345 msgid "&Display" msgstr "&Вид" -#: ../IDEFrame.py:341 +#: ../IDEFrame.py:344 msgid "&Edit" msgstr "&Редактировать" -#: ../IDEFrame.py:340 +#: ../IDEFrame.py:343 msgid "&File" msgstr "&Файл" -#: ../IDEFrame.py:352 +#: ../IDEFrame.py:355 msgid "&Function" msgstr "&Функции" -#: ../IDEFrame.py:343 +#: ../IDEFrame.py:346 msgid "&Help" msgstr "&Помощь" @@ -327,7 +347,7 @@ msgid "&License" msgstr "&Лицензия" -#: ../IDEFrame.py:356 +#: ../IDEFrame.py:359 msgid "&Program" msgstr "&Программы" @@ -339,10 +359,14 @@ msgid "&Recent Projects" msgstr "&Недавние проекты" -#: ../IDEFrame.py:358 +#: ../IDEFrame.py:361 msgid "&Resource" msgstr "&Ресурсы" +#: ../etherlab/ConfigEditor.py:450 +msgid "'Read from' and 'Write to' variables types are not compatible" +msgstr "Типы переменных «Чтение из» и «Запись в» несовместимы" + #: ../controls/SearchResultPanel.py:247 #, python-brace-format msgid "'{a1}' - {a2} match in project" @@ -353,7 +377,7 @@ msgid "'{a1}' - {a2} matches in project" msgstr "'{a1}' - {a2} совпадений в проекте" -#: ../connectors/PYRO/__init__.py:98 +#: ../connectors/PYRO/__init__.py:99 #, python-brace-format msgid "'{a1}' is located at {a2}\n" msgstr "'{a1}' находится {a2}\n" @@ -363,8 +387,8 @@ msgid "(%d matches)" msgstr "(%d совпадений)" -#: ../dialogs/PouTransitionDialog.py:103 ../dialogs/PouActionDialog.py:101 -#: ../dialogs/PouDialog.py:124 +#: ../dialogs/PouTransitionDialog.py:102 ../dialogs/PouActionDialog.py:101 +#: ../dialogs/PouDialog.py:159 #, python-format msgid ", %s" msgstr ", %s" @@ -389,8 +413,8 @@ msgid "1s" msgstr "1 сек" -#: ../dialogs/PouDialog.py:133 ../IDEFrame.py:1650 ../IDEFrame.py:1696 -#: ../IDEFrame.py:1715 +#: ../dialogs/PouDialog.py:168 ../IDEFrame.py:1667 ../IDEFrame.py:1713 +#: ../IDEFrame.py:1732 #, python-format msgid "" "A POU has an element named \"%s\". This could cause a conflict. Do you wish " @@ -399,9 +423,9 @@ "В POU присутствует элемент с именем \"%s\". Это может вызвать конфликт. " "Хотите продолжить?" -#: ../dialogs/SFCStepNameDialog.py:58 ../dialogs/PouTransitionDialog.py:110 +#: ../dialogs/SFCStepNameDialog.py:58 ../dialogs/PouTransitionDialog.py:109 #: ../dialogs/PouNameDialog.py:56 ../dialogs/PouActionDialog.py:108 -#: ../controls/VariablePanel.py:789 ../IDEFrame.py:1664 ../IDEFrame.py:1677 +#: ../controls/VariablePanel.py:800 ../IDEFrame.py:1681 ../IDEFrame.py:1694 #, python-format msgid "A POU named \"%s\" already exists!" msgstr "POU с именем \"%s\" уже существует!" @@ -411,21 +435,21 @@ msgid "A child named \"{a1}\" already exists -> \"{a2}\"\n" msgstr "Дочерний элемент с именем \"{a1}\" уже существует -> \"{a2}\"\n" -#: ../dialogs/BrowseLocationsDialog.py:229 +#: ../dialogs/BrowseLocationsDialog.py:228 msgid "A location must be selected!" msgstr "Необходимо выбрать размещение!" -#: ../editors/ResourceEditor.py:485 +#: ../editors/ResourceEditor.py:483 msgid "A task with the same name already exists!" msgstr "Задача с таким именем уже существует!" -#: ../dialogs/SFCStepNameDialog.py:60 ../controls/VariablePanel.py:791 -#: ../IDEFrame.py:1666 ../IDEFrame.py:1679 +#: ../dialogs/SFCStepNameDialog.py:60 ../controls/VariablePanel.py:802 +#: ../IDEFrame.py:1683 ../IDEFrame.py:1696 #, python-format msgid "A variable with \"%s\" as name already exists in this pou!" msgstr "Переменная с именем \"%s\" уже существует в этом POU!" -#: ../editors/CodeFileEditor.py:778 +#: ../editors/CodeFileEditor.py:797 #, python-format msgid "A variable with \"%s\" as name already exists!" msgstr "Переменная с именем \"%s\" уже существует!" @@ -438,11 +462,15 @@ msgid "Absolute number" msgstr "Абсолютный номер" +#: ../etherlab/ConfigEditor.py:48 +msgid "Access" +msgstr "Доступ" + #: ../dialogs/SFCStepDialog.py:75 ../dialogs/ActionBlockDialog.py:47 msgid "Action" msgstr "Действие" -#: ../editors/Viewer.py:653 ../editors/Viewer.py:2427 +#: ../editors/Viewer.py:656 ../editors/Viewer.py:2429 msgid "Action Block" msgstr "Блок действия" @@ -467,56 +495,64 @@ msgid "Actions:" msgstr "Действия:" -#: ../editors/Viewer.py:473 +#: ../editors/Viewer.py:484 msgid "Active" msgstr "Активный" #: ../canfestival/SlaveEditor.py:84 ../canfestival/NetworkEditor.py:108 -#: ../BeremizIDE.py:1001 ../editors/Viewer.py:686 +#: ../BeremizIDE.py:998 ../editors/Viewer.py:689 msgid "Add" msgstr "Добавить" -#: ../IDEFrame.py:1924 ../IDEFrame.py:1959 +#: ../IDEFrame.py:1941 ../IDEFrame.py:1976 msgid "Add Action" msgstr "Добавить действие" -#: ../features.py:33 +#: ../features.py:22 msgid "Add C code accessing located variables synchronously" msgstr "Добавить C-код с синхронным доступом к локальным переменным" -#: ../IDEFrame.py:1907 +#: ../IDEFrame.py:1924 msgid "Add Configuration" msgstr "Добавить конфигурацию" -#: ../IDEFrame.py:1887 +#: ../IDEFrame.py:1904 msgid "Add DataType" msgstr "Добавить тип данных" -#: ../editors/Viewer.py:609 +#: ../editors/Viewer.py:612 msgid "Add Divergence Branch" msgstr "Добавить ветвление" +#: ../etherlab/EthercatMaster.py:297 +msgid "Add Ethercat Slave" +msgstr "Добавить Ethercat устройство" + +#: ../etherlab/EthercatMaster.py:297 +msgid "Add Ethercat Slave to Master" +msgstr "Добавить Ethercat устройство к мастеру" + #: ../dialogs/DiscoveryDialog.py:121 msgid "Add IP" msgstr "Добавить IP адрес" -#: ../IDEFrame.py:1895 +#: ../IDEFrame.py:1912 msgid "Add POU" msgstr "Добавить POU" -#: ../features.py:34 +#: ../features.py:23 msgid "Add Python code executed asynchronously" msgstr "Добавить асинхронно вызываемый код на Python" -#: ../IDEFrame.py:1935 ../IDEFrame.py:1985 +#: ../IDEFrame.py:1952 ../IDEFrame.py:2002 msgid "Add Resource" msgstr "Добавить ресурс" -#: ../IDEFrame.py:1913 ../IDEFrame.py:1956 +#: ../IDEFrame.py:1930 ../IDEFrame.py:1973 msgid "Add Transition" msgstr "Добавить переход" -#: ../editors/Viewer.py:596 +#: ../editors/Viewer.py:599 msgid "Add Wire Segment" msgstr "Добавить провод" @@ -524,7 +560,7 @@ msgid "Add a new initial step" msgstr "Добавить новый исходный шаг" -#: ../editors/Viewer.py:2791 ../editors/SFCViewer.py:784 +#: ../editors/Viewer.py:2790 ../editors/SFCViewer.py:784 msgid "Add a new jump" msgstr "Добавить новый безусловный переход" @@ -532,7 +568,7 @@ msgid "Add a new step" msgstr "Добавить новый шаг" -#: ../features.py:35 +#: ../features.py:24 msgid "Add a simple WxGlade based GUI." msgstr "Добавить простой GUI на WxGlade " @@ -544,22 +580,49 @@ msgid "Add element" msgstr "Добавить элемент" -#: ../editors/ResourceEditor.py:283 +#: ../etherlab/ConfigEditor.py:1388 +msgid "Add file from ESI files database" +msgstr "Добавить файл из базы данных ESI файлов" + +#: ../etherlab/ConfigEditor.py:1360 +msgid "Add file to project" +msgstr "Добавить файл в проект" + +#: ../editors/ResourceEditor.py:281 msgid "Add instance" msgstr "Добавить экземпляр" +#: ../etherlab/ConfigEditor.py:652 +msgid "Add process variable" +msgstr "Добавить переменную" + #: ../canfestival/NetworkEditor.py:110 msgid "Add slave" msgstr "Добавить слэйв" -#: ../editors/ResourceEditor.py:252 +#: ../etherlab/ConfigEditor.py:679 +msgid "Add startup service variable" +msgstr "Добавить служебную переменную запуска" + +#: ../editors/ResourceEditor.py:250 msgid "Add task" msgstr "Добавить задачу" -#: ../editors/CodeFileEditor.py:654 ../controls/VariablePanel.py:481 +#: ../bacnet/BacnetSlaveEditor.py:811 ../editors/CodeFileEditor.py:672 +#: ../controls/VariablePanel.py:483 msgid "Add variable" msgstr "Добавить переменную" +#: ../etherlab/etherlab.py:186 +msgid "" +"Adding a PDO not defined in default configuration\n" +"for mapping needed location variables\n" +"(1 if possible)" +msgstr "" +"Добавление PDO, не определеного в конфигурации по умолчанию,\n" +"для отображения необходимых переменных\n" +"(1, если возможно)" + #: ../plcopen/iec_std.csv:33 msgid "Addition" msgstr "Сложение" @@ -568,27 +631,28 @@ msgid "Additional function blocks" msgstr "Дополнительные функциональные блоки" -#: ../editors/Viewer.py:669 +#: ../editors/Viewer.py:672 msgid "Adjust Block Size" msgstr "Скорректировать размер элемента" -#: ../editors/Viewer.py:1720 +#: ../editors/Viewer.py:1722 msgid "Alignment" msgstr "Выравнивание" #: ../dialogs/BrowseLocationsDialog.py:42 -#: ../dialogs/BrowseLocationsDialog.py:53 -#: ../dialogs/BrowseLocationsDialog.py:152 -#: ../dialogs/BrowseLocationsDialog.py:155 ../controls/LogViewer.py:307 -#: ../controls/VariablePanel.py:88 +#: ../dialogs/BrowseLocationsDialog.py:50 +#: ../dialogs/BrowseLocationsDialog.py:151 +#: ../dialogs/BrowseLocationsDialog.py:154 ../etherlab/ConfigEditor.py:65 +#: ../etherlab/ConfigEditor.py:853 ../controls/LogViewer.py:307 +#: ../controls/VariablePanel.py:85 msgid "All" msgstr "Все" -#: ../editors/FileManagementPanel.py:37 +#: ../editors/FileManagementPanel.py:51 msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv" msgstr "Все файлы (*.*)|*.*|CSV files (*.csv)|*.csv" -#: ../ProjectController.py:1670 +#: ../ProjectController.py:1752 msgid "Already connected. Please disconnect\n" msgstr "Уже подключен. Пожалуйста, отключитесь сначала.\n" @@ -601,6 +665,23 @@ msgid "An instance with the same name already exists!" msgstr "Экземпляр задачи с таким именем уже существует!" +#: ../etherlab/ConfigEditor.py:975 +#, python-format +msgid "An variable named \"%s\" already exists!" +msgstr "Переменная с именем «%s» уже существует!" + +#: ../bacnet/BacnetSlaveEditor.py:935 +msgid "Analog Input Objects" +msgstr "Объекты аналогового ввода" + +#: ../bacnet/BacnetSlaveEditor.py:934 +msgid "Analog Output Objects" +msgstr "Объекты аналогового вывода" + +#: ../bacnet/BacnetSlaveEditor.py:933 +msgid "Analog Value Objects" +msgstr "Объекты аналогового значения" + #: ../dialogs/ConnectionDialog.py:103 msgid "Apply name modification to all continuations with the same name" msgstr "Переименовать все цепи с тем же самым именем" @@ -622,7 +703,7 @@ msgstr "Математика" #: ../editors/DataTypeEditor.py:60 ../editors/DataTypeEditor.py:649 -#: ../controls/VariablePanel.py:872 +#: ../controls/VariablePanel.py:883 msgid "Array" msgstr "Массив" @@ -630,22 +711,34 @@ msgid "Assignment" msgstr "Присвоение" -#: ../dialogs/FBDVariableDialog.py:226 +#: ../dialogs/FBDVariableDialog.py:227 msgid "At least a variable or an expression must be selected!" msgstr "Переменная или выражение должно быть выбрано!" -#: ../controls/ProjectPropertiesPanel.py:111 +#: ../controls/ProjectPropertiesPanel.py:113 msgid "Author" msgstr "Автор" -#: ../controls/ProjectPropertiesPanel.py:108 +#: ../controls/ProjectPropertiesPanel.py:110 msgid "Author Name (optional):" msgstr "Имя автора (опционально):" +#: ../etherlab/EthercatCIA402Slave.py:125 +msgid "Axis Pos" +msgstr "Axis Pos" + +#: ../etherlab/EthercatCIA402Slave.py:118 +msgid "Axis Ref" +msgstr "Axis Ref" + #: ../dialogs/FindInPouDialog.py:80 msgid "Backward" msgstr "Назад" +#: ../features.py:19 +msgid "Bacnet support" +msgstr "Поддержка Bacnet" + #: ../canfestival/config_utils.py:365 ../canfestival/config_utils.py:672 #, python-format msgid "Bad location size : %s" @@ -656,14 +749,30 @@ msgid "Base Type:" msgstr "Базовый тип:" -#: ../editors/DataTypeEditor.py:639 ../controls/VariablePanel.py:830 +#: ../editors/DataTypeEditor.py:639 ../controls/VariablePanel.py:841 msgid "Base Types" msgstr "Базовые типы" -#: ../BeremizIDE.py:483 +#: ../BeremizIDE.py:479 msgid "Beremiz" msgstr "Beremiz" +#: ../runtime/NevowServer.py:201 +msgid "Beremiz Runtime Settings" +msgstr "Настройки системы исполнения Beremiz" + +#: ../bacnet/BacnetSlaveEditor.py:938 +msgid "Binary Input Objects" +msgstr "Дискретные входные объекты" + +#: ../bacnet/BacnetSlaveEditor.py:937 +msgid "Binary Output Objects" +msgstr "Дискретные выходные объекты" + +#: ../bacnet/BacnetSlaveEditor.py:936 +msgid "Binary Value Objects" +msgstr "Дискретные объекты " + #: ../plcopen/iec_std.csv:70 msgid "Binary selection (1 of 2)" msgstr "Бинарный выбор (1 или 2)" @@ -692,7 +801,7 @@ msgid "Bitwise inverting" msgstr "Битовое НЕ" -#: ../editors/Viewer.py:621 ../editors/Viewer.py:2440 +#: ../editors/Viewer.py:624 ../editors/Viewer.py:2442 msgid "Block" msgstr "Блок" @@ -704,11 +813,11 @@ msgid "Block name" msgstr "Имя блока" -#: ../editors/Viewer.py:586 +#: ../editors/Viewer.py:589 msgid "Bottom" msgstr "Низ" -#: ../ProjectController.py:1400 +#: ../runtime/PlcStatus.py:11 msgid "Broken" msgstr "Ошибка" @@ -717,27 +826,27 @@ msgid "Browse %s values library" msgstr "Просмотр %s значений библиотеки" -#: ../dialogs/BrowseLocationsDialog.py:72 +#: ../dialogs/BrowseLocationsDialog.py:69 msgid "Browse Locations" msgstr "Просмотр доступных МЭК-адресов" -#: ../ProjectController.py:1815 +#: ../ProjectController.py:1898 msgid "Build" msgstr "Сборка" -#: ../ProjectController.py:1335 +#: ../ProjectController.py:1397 msgid "Build directory already clean\n" msgstr "Директория сборки уже пуста\n" -#: ../ProjectController.py:1816 +#: ../ProjectController.py:1899 msgid "Build project into build folder" msgstr "Сборка проекта в директории сборки" -#: ../ProjectController.py:1108 +#: ../ProjectController.py:1155 msgid "C Build crashed !\n" msgstr "Крэш во время сборки C-кода!\n" -#: ../ProjectController.py:1105 +#: ../ProjectController.py:1152 msgid "C Build failed.\n" msgstr "Ошибка сборки C-кода.\n" @@ -745,7 +854,7 @@ msgid "C code" msgstr "C код " -#: ../ProjectController.py:1186 +#: ../ProjectController.py:1240 msgid "C code generated successfully.\n" msgstr "C-код успешно сгенерирован.\n" @@ -758,7 +867,7 @@ msgid "C compilation of %s failed.\n" msgstr "Ошибка компиляции %s.\n" -#: ../features.py:33 +#: ../features.py:22 msgid "C extension" msgstr "С-расширение" @@ -774,16 +883,20 @@ msgid "CANOpen slave" msgstr "CANOpen ведущий" -#: ../features.py:31 +#: ../features.py:18 msgid "CANopen support" msgstr "Поддержка CANOpen" +#: ../etherlab/ConfigEditor.py:858 +msgid "CIA402 nodes" +msgstr "Узлы CIA402" + #: ../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:291 +#: ../controls/VariablePanel.py:290 msgid "Can only give a location to local or global variables" msgstr "Можно задать адреса только локальным или глобальным переменным" @@ -792,7 +905,7 @@ msgid "Can't generate program to file %s!" msgstr "Нельзя сгенерировать программу в файл %s!" -#: ../controls/VariablePanel.py:289 +#: ../controls/VariablePanel.py:288 msgid "Can't give a location to a function block instance" msgstr "Нельзя задать размещение для экземпляра функционального блока" @@ -801,7 +914,7 @@ msgid "Can't save project to file %s!" msgstr "Нельзя сохранить проект в файл %s!" -#: ../controls/VariablePanel.py:339 +#: ../controls/VariablePanel.py:338 msgid "Can't set an initial value to a function block instance" msgstr "Нельзя задать исходное значение экземпляру функционального блока" @@ -815,11 +928,11 @@ msgid "Cannot find lower free IEC channel than %d\n" msgstr "Не удалось найти свободный МЭК-канал с номером меньше, чем %d\n" -#: ../connectors/PYRO/__init__.py:139 +#: ../connectors/PYRO/__init__.py:140 msgid "Cannot get PLC status - connection failed.\n" msgstr "Невозможно получить состояние ПЛК - ошибка подключения.\n" -#: ../ProjectController.py:967 +#: ../ProjectController.py:1013 msgid "Cannot open/parse VARIABLES.csv!\n" msgstr "Не удалось открыть/прочитать VARIABLES.csv\n" @@ -832,7 +945,7 @@ "Невозможно установить битовое смещение для не булевой переменной '{a1}' " "(ID:{a2},Idx:{a3},sIdx:{a4}))" -#: ../ProjectController.py:1761 +#: ../ProjectController.py:1842 msgid "Cannot transfer while PLC is running. Stop it now?" msgstr "Передача запрещена во время работы ПЛК. Остановить?" @@ -840,27 +953,27 @@ msgid "Case sensitive" msgstr "Регистрозависимый" -#: ../editors/Viewer.py:581 +#: ../editors/Viewer.py:584 msgid "Center" msgstr "Центр" -#: ../Beremiz_service.py:276 +#: ../Beremiz_service.py:289 msgid "Change IP of interface to bind" msgstr "Сменить IP-адрес интерфейса для привязки сокета" -#: ../Beremiz_service.py:275 +#: ../Beremiz_service.py:288 msgid "Change Name" msgstr "Сменить имя" -#: ../IDEFrame.py:1977 +#: ../IDEFrame.py:1994 msgid "Change POU Type To" msgstr "Сменить тип POU на" -#: ../Beremiz_service.py:277 +#: ../Beremiz_service.py:290 msgid "Change Port Number" msgstr "Сменить номер порта" -#: ../Beremiz_service.py:278 +#: ../Beremiz_service.py:291 msgid "Change working directory" msgstr "Сменить рабочую директорию" @@ -872,16 +985,21 @@ msgid "Choose a SVG file" msgstr "Выберите SVG-файл" -#: ../ProjectController.py:561 +#: ../etherlab/EtherCATManagementEditor.py:911 +#: ../etherlab/EtherCATManagementEditor.py:1306 +msgid "Choose a binary file" +msgstr "Выберите двоичный файл" + +#: ../ProjectController.py:582 msgid "Choose a directory to save project" msgstr "Выберите директорию, чтобы сохранить проект" -#: ../canfestival/canfestival.py:171 ../PLCOpenEditor.py:276 -#: ../PLCOpenEditor.py:308 ../PLCOpenEditor.py:357 +#: ../canfestival/canfestival.py:171 ../bacnet/bacnet.py:434 +#: ../PLCOpenEditor.py:276 ../PLCOpenEditor.py:308 ../PLCOpenEditor.py:357 msgid "Choose a file" msgstr "Выберите файл" -#: ../BeremizIDE.py:900 +#: ../BeremizIDE.py:897 msgid "Choose a project" msgstr "Выберите проект" @@ -890,19 +1008,23 @@ msgid "Choose a value for %s:" msgstr "Выберите значение для %s:" -#: ../Beremiz_service.py:333 +#: ../Beremiz_service.py:346 msgid "Choose a working directory " msgstr "Выберите рабочую директорию" -#: ../BeremizIDE.py:864 +#: ../etherlab/ConfigEditor.py:1234 +msgid "Choose an XML file" +msgstr "Выбирете XML файл" + +#: ../BeremizIDE.py:861 msgid "Choose an empty directory for new project" msgstr "Выберите пустой каталог для проекта" -#: ../ProjectController.py:468 +#: ../ProjectController.py:483 msgid "Chosen folder doesn't contain a program. It's not a valid project!" msgstr "Выбранная директория не содержит программы. Это некорректный проект!" -#: ../ProjectController.py:435 +#: ../ProjectController.py:450 msgid "Chosen folder isn't empty. You can't use it for a new project!" msgstr "" "Выбранная директория не пуста и не может использоваться для нового проекта!" @@ -911,15 +1033,15 @@ msgid "Class" msgstr "Класс" -#: ../controls/VariablePanel.py:472 +#: ../controls/VariablePanel.py:474 msgid "Class Filter:" msgstr "Фильтр класса:" -#: ../dialogs/FBDVariableDialog.py:74 +#: ../dialogs/FBDVariableDialog.py:75 msgid "Class:" msgstr "Класс:" -#: ../ProjectController.py:1821 +#: ../ProjectController.py:1904 msgid "Clean" msgstr "Очистить" @@ -927,32 +1049,33 @@ msgid "Clean log messages" msgstr "Очистить лог" -#: ../ProjectController.py:1822 +#: ../ProjectController.py:1905 msgid "Clean project build folder" msgstr "Очистить директорию сборки проекта" -#: ../ProjectController.py:1332 +#: ../ProjectController.py:1394 msgid "Cleaning the build directory\n" msgstr "Очистка директории сборки\n" -#: ../IDEFrame.py:437 +#: ../IDEFrame.py:439 msgid "Clear Errors" msgstr "Очистить ошибки" -#: ../editors/Viewer.py:680 +#: ../editors/Viewer.py:683 msgid "Clear Execution Order" msgstr "Очистить порядок исполнения" #: ../dialogs/SearchInProjectDialog.py:107 ../dialogs/FindInPouDialog.py:112 +#: ../etherlab/ConfigEditor.py:1361 msgid "Close" msgstr "Закрыть" -#: ../BeremizIDE.py:627 ../PLCOpenEditor.py:183 +#: ../BeremizIDE.py:623 ../PLCOpenEditor.py:183 msgid "Close Application" msgstr "Закрыть приложение" -#: ../BeremizIDE.py:253 ../BeremizIDE.py:566 ../PLCOpenEditor.py:81 -#: ../IDEFrame.py:1040 +#: ../BeremizIDE.py:253 ../BeremizIDE.py:562 ../PLCOpenEditor.py:81 +#: ../IDEFrame.py:1053 msgid "Close Project" msgstr "Закрыть проект" @@ -960,28 +1083,32 @@ msgid "Close Tab" msgstr "Закрыть вкладку" -#: ../editors/Viewer.py:638 ../editors/Viewer.py:2448 +#: ../editors/Viewer.py:641 ../editors/Viewer.py:2450 msgid "Coil" msgstr "Катушка" -#: ../editors/Viewer.py:659 ../editors/LDViewer.py:517 +#: ../editors/Viewer.py:662 ../editors/LDViewer.py:517 msgid "Comment" msgstr "Комментарий" +#: ../etherlab/ConfigEditor.py:66 +msgid "Communication Parameters" +msgstr "Коммуникационные параметры" + #: ../BeremizIDE.py:303 ../BeremizIDE.py:307 ../PLCOpenEditor.py:134 #: ../PLCOpenEditor.py:138 msgid "Community support" msgstr "Поддержка сообщества" -#: ../dialogs/ProjectDialog.py:65 +#: ../dialogs/ProjectDialog.py:63 msgid "Company Name" msgstr "Имя компании" -#: ../controls/ProjectPropertiesPanel.py:106 +#: ../controls/ProjectPropertiesPanel.py:108 msgid "Company Name (required):" msgstr "Компания (обязательно):" -#: ../controls/ProjectPropertiesPanel.py:107 +#: ../controls/ProjectPropertiesPanel.py:109 msgid "Company URL (optional):" msgstr "Сайт компании (опционально):" @@ -989,7 +1116,7 @@ msgid "Comparison" msgstr "Сравнение" -#: ../ProjectController.py:756 +#: ../ProjectController.py:787 msgid "Compiling IEC Program into C code...\n" msgstr "Компиляция МЭК-программы в C-код...\n" @@ -1015,25 +1142,25 @@ #: ../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 +#: ../editors/TextViewer.py:366 ../controls/VariablePanel.py:353 msgid "Confirm or change variable name" msgstr "Подтвердить или поменять имя переменной" -#: ../ProjectController.py:1842 +#: ../ProjectController.py:1925 msgid "Connect" msgstr "Подключиться" -#: ../ProjectController.py:1843 +#: ../ProjectController.py:1926 msgid "Connect to the target PLC" msgstr "Подключиться к целевому ПЛК" -#: ../ProjectController.py:1391 +#: ../ProjectController.py:1469 #, python-format msgid "Connected to URI: %s" msgstr "Подключен к URI: %s" -#: ../dialogs/SFCTransitionDialog.py:78 ../editors/Viewer.py:623 -#: ../editors/Viewer.py:2441 +#: ../dialogs/SFCTransitionDialog.py:78 ../editors/Viewer.py:626 +#: ../editors/Viewer.py:2443 msgid "Connection" msgstr "Подключение" @@ -1041,25 +1168,25 @@ msgid "Connection Properties" msgstr "Свойства подключения" -#: ../ProjectController.py:1691 +#: ../ProjectController.py:1773 msgid "Connection canceled!\n" msgstr "Подключение отменено!\n" -#: ../ProjectController.py:1714 +#: ../ProjectController.py:1797 #, python-format msgid "Connection failed to %s!\n" msgstr "Неудачное подключение к %s!\n" -#: ../connectors/PYRO/__init__.py:123 ../connectors/WAMP/__init__.py:120 +#: ../connectors/PYRO/__init__.py:124 ../connectors/WAMP/__init__.py:121 msgid "Connection lost!\n" msgstr "Подключение прервано!\n" -#: ../connectors/PYRO/__init__.py:110 +#: ../connectors/PYRO/__init__.py:111 #, python-format msgid "Connection to '%s' failed.\n" msgstr "Неудачное подключение к %s!\n" -#: ../dialogs/ConnectionDialog.py:67 ../editors/Viewer.py:1676 +#: ../dialogs/ConnectionDialog.py:67 ../editors/Viewer.py:1678 msgid "Connector" msgstr "Коннектор" @@ -1067,7 +1194,7 @@ msgid "Connectors:" msgstr "Коннекторы:" -#: ../BeremizIDE.py:378 +#: ../BeremizIDE.py:374 msgid "Console" msgstr "Консоль" @@ -1075,18 +1202,22 @@ msgid "Constant" msgstr "Константа" -#: ../editors/Viewer.py:634 ../editors/Viewer.py:2444 +#: ../editors/Viewer.py:637 ../editors/Viewer.py:2446 msgid "Contact" msgstr "Контакт" -#: ../controls/ProjectPropertiesPanel.py:217 +#: ../controls/ProjectPropertiesPanel.py:219 msgid "Content Description (optional):" msgstr "Описание содержимого (опционально):" -#: ../dialogs/ConnectionDialog.py:68 ../editors/Viewer.py:1677 +#: ../dialogs/ConnectionDialog.py:68 ../editors/Viewer.py:1679 msgid "Continuation" msgstr "Продолжение" +#: ../etherlab/EtherCATManagementEditor.py:37 +msgid "Control Byte" +msgstr "Байт управления" + #: ../plcopen/iec_std.csv:18 msgid "Conversion from BCD" msgstr "Преобразование из BCD" @@ -1103,20 +1234,20 @@ msgid "Conversion to time-of-day" msgstr "Преобразование во время суток" -#: ../editors/Viewer.py:695 ../controls/LogViewer.py:713 ../IDEFrame.py:372 -#: ../IDEFrame.py:427 +#: ../editors/Viewer.py:698 ../controls/LogViewer.py:713 ../IDEFrame.py:375 +#: ../IDEFrame.py:428 msgid "Copy" msgstr "Копировать" -#: ../IDEFrame.py:1964 +#: ../IDEFrame.py:1981 msgid "Copy POU" msgstr "Копировать POU" -#: ../editors/FileManagementPanel.py:68 +#: ../editors/FileManagementPanel.py:67 msgid "Copy file from left folder to right" msgstr "Скопировать файл с левой директории в правую" -#: ../editors/FileManagementPanel.py:67 +#: ../editors/FileManagementPanel.py:66 msgid "Copy file from right folder to left" msgstr "Скопировать файл с правой директории в левую" @@ -1138,6 +1269,16 @@ msgid "Couldn't import old %s file." msgstr "Невозможно импортировать старый файл %s." +#: ../etherlab/EthercatMaster.py:258 +#, python-format +msgid "Couldn't load %s network configuration file." +msgstr "Не удалось загрузить файл конфигурации сети %s." + +#: ../etherlab/EthercatMaster.py:279 +#, python-format +msgid "Couldn't load %s network process variables file." +msgstr "Не удалось загрузить файл сетевых переменных процесса %s." + #: ../ConfigTreeNode.py:630 #, python-brace-format msgid "" @@ -1156,15 +1297,24 @@ "Невозможно загрузить параметры confnode {a1}:\n" " {a2}" +#: ../etherlab/etherlab.py:264 +#, python-brace-format +msgid "" +"Couldn't load {a1} XML file:\n" +"{a2}" +msgstr "" +"Не удалось загрузить файл {a1} XML:\n" +"{А2}" + #: ../PLCControler.py:552 msgid "Couldn't paste non-POU object." msgstr "Невозможно вставить не-POU." -#: ../ProjectController.py:1636 +#: ../ProjectController.py:1717 msgid "Couldn't start PLC !\n" msgstr "Невозможно запустить ПЛК!\n" -#: ../ProjectController.py:1644 +#: ../ProjectController.py:1725 msgid "Couldn't stop PLC !\n" msgstr "Невозможно остановить ПЛК!\n" @@ -1172,43 +1322,43 @@ msgid "Create HMI" msgstr "Создать HMI" -#: ../dialogs/PouDialog.py:54 +#: ../dialogs/PouDialog.py:48 msgid "Create a new POU" msgstr "Создать новый POU" -#: ../dialogs/PouActionDialog.py:45 +#: ../dialogs/PouActionDialog.py:42 msgid "Create a new action" msgstr "Создать новое действие" -#: ../IDEFrame.py:166 +#: ../IDEFrame.py:313 msgid "Create a new action block" msgstr "Создать новый блок действие" -#: ../IDEFrame.py:115 ../IDEFrame.py:145 ../IDEFrame.py:178 +#: ../IDEFrame.py:262 ../IDEFrame.py:292 ../IDEFrame.py:325 msgid "Create a new block" msgstr "Создать новый блок" -#: ../IDEFrame.py:139 +#: ../IDEFrame.py:286 msgid "Create a new branch" msgstr "Создать новое ветвление" -#: ../IDEFrame.py:133 +#: ../IDEFrame.py:280 msgid "Create a new coil" msgstr "Создать новую катушку" -#: ../IDEFrame.py:109 ../IDEFrame.py:124 ../IDEFrame.py:154 +#: ../IDEFrame.py:256 ../IDEFrame.py:271 ../IDEFrame.py:301 msgid "Create a new comment" msgstr "Создать новый комментарий" -#: ../IDEFrame.py:118 ../IDEFrame.py:148 ../IDEFrame.py:181 +#: ../IDEFrame.py:265 ../IDEFrame.py:295 ../IDEFrame.py:328 msgid "Create a new connection" msgstr "Создать новое подключение" -#: ../IDEFrame.py:136 ../IDEFrame.py:187 +#: ../IDEFrame.py:283 ../IDEFrame.py:334 msgid "Create a new contact" msgstr "Создать новый контакт" -#: ../IDEFrame.py:169 +#: ../IDEFrame.py:316 msgid "Create a new divergence" msgstr "Создать новое ветвление" @@ -1216,43 +1366,55 @@ msgid "Create a new divergence or convergence" msgstr "Создать новое ветвление или объединение" -#: ../IDEFrame.py:157 +#: ../IDEFrame.py:304 msgid "Create a new initial step" msgstr "Создать исходный шаг" -#: ../IDEFrame.py:172 +#: ../IDEFrame.py:319 msgid "Create a new jump" msgstr "Создать новый безусловный переход" -#: ../IDEFrame.py:127 ../IDEFrame.py:184 +#: ../IDEFrame.py:274 ../IDEFrame.py:331 msgid "Create a new power rail" msgstr "Создать новую линию питания" -#: ../IDEFrame.py:130 +#: ../IDEFrame.py:277 msgid "Create a new rung" msgstr "Создать новую цепь" -#: ../IDEFrame.py:160 +#: ../IDEFrame.py:307 msgid "Create a new step" msgstr "Создать новый шаг" -#: ../dialogs/PouTransitionDialog.py:49 ../IDEFrame.py:163 +#: ../dialogs/PouTransitionDialog.py:45 ../IDEFrame.py:310 msgid "Create a new transition" msgstr "Создать новый переход" -#: ../IDEFrame.py:112 ../IDEFrame.py:142 ../IDEFrame.py:175 +#: ../IDEFrame.py:259 ../IDEFrame.py:289 ../IDEFrame.py:322 msgid "Create a new variable" msgstr "Создать новую переменную" +#: ../etherlab/etherlab.py:183 +msgid "Creating new PDO" +msgstr "Создание нового PDO" + #: ../dialogs/AboutDialog.py:109 msgid "Credits" msgstr "Благодарности" -#: ../Beremiz_service.py:424 +#: ../runtime/WampClient.py:400 +msgid "Current status" +msgstr "Текущий статус" + +#: ../Beremiz_service.py:437 msgid "Current working directory :" msgstr "Текущая рабочая директория :" -#: ../editors/Viewer.py:694 ../IDEFrame.py:370 ../IDEFrame.py:426 +#: ../runtime/WampClient.py:161 +msgid "Custom protocol options failed :" +msgstr "Ошибка в дополнительных параметрах протокола :" + +#: ../editors/Viewer.py:697 ../IDEFrame.py:373 ../IDEFrame.py:427 msgid "Cut" msgstr "Вырезать" @@ -1301,11 +1463,11 @@ msgid "Date subtraction" msgstr "Вычитание дат" -#: ../dialogs/DurationEditorDialog.py:46 +#: ../dialogs/DurationEditorDialog.py:57 msgid "Days:" msgstr "Дни:" -#: ../ProjectController.py:1729 +#: ../ProjectController.py:1809 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" msgstr "" "Отлаживаемая программа не соответствует программе в ПЛК - " @@ -1315,42 +1477,51 @@ msgid "Debug instance" msgstr "Отладка экземпляра" -#: ../editors/Viewer.py:490 +#: ../editors/Viewer.py:493 #, python-format msgid "Debug: %s" msgstr "Отладка: %s" -#: ../ProjectController.py:1471 +#: ../ProjectController.py:1548 #, python-format msgid "Debug: Unknown variable '%s'\n" msgstr "Отладка: неизвестная переменная '%s'\n" -#: ../ProjectController.py:1469 +#: ../ProjectController.py:1545 #, python-format msgid "Debug: Unsupported type to debug '%s'\n" msgstr "Отладка: неподдерживамый отладкой тип '%s'\n" -#: ../IDEFrame.py:660 +#: ../IDEFrame.py:666 msgid "Debugger" msgstr "Отладчик" -#: ../ProjectController.py:1726 +#: ../ProjectController.py:1805 msgid "Debugger ready\n" msgstr "Отладчик готов\n" -#: ../BeremizIDE.py:1004 ../editors/Viewer.py:670 ../IDEFrame.py:1993 +#: ../etherlab/EtherCATManagementEditor.py:37 +msgid "Default Size" +msgstr "Размер по умолчанию" + +#: ../etherlab/EthercatCFileGenerator.py:174 +#, python-format +msgid "Definition conflict for location \"%s\"" +msgstr "Конфликт определений для адреса «%s»" + +#: ../BeremizIDE.py:1001 ../editors/Viewer.py:673 ../IDEFrame.py:2010 msgid "Delete" msgstr "Удалить" -#: ../editors/Viewer.py:610 +#: ../editors/Viewer.py:613 msgid "Delete Divergence Branch" msgstr "Удалить ветвь" -#: ../editors/FileManagementPanel.py:157 +#: ../etherlab/ConfigEditor.py:1261 ../editors/FileManagementPanel.py:156 msgid "Delete File" msgstr "Удалить файл" -#: ../editors/Viewer.py:597 +#: ../editors/Viewer.py:600 msgid "Delete Wire Segment" msgstr "Удалить сегмент цепи" @@ -1366,11 +1537,12 @@ msgid "Derivation Type:" msgstr "Механизм создания типа:" -#: ../editors/CodeFileEditor.py:735 +#: ../etherlab/ConfigEditor.py:346 ../etherlab/ConfigEditor.py:465 +#: ../editors/CodeFileEditor.py:754 msgid "Description" msgstr "Описание" -#: ../controls/VariablePanel.py:463 +#: ../controls/VariablePanel.py:465 msgid "Description:" msgstr "Описание:" @@ -1382,7 +1554,7 @@ msgid "Direction" msgstr "Направление" -#: ../dialogs/BrowseLocationsDialog.py:102 +#: ../dialogs/BrowseLocationsDialog.py:101 msgid "Direction:" msgstr "Направление:" @@ -1390,19 +1562,19 @@ msgid "Directly" msgstr "Синоним" -#: ../ProjectController.py:1855 +#: ../ProjectController.py:1938 msgid "Disconnect" msgstr "Отключиться" -#: ../ProjectController.py:1856 +#: ../ProjectController.py:1939 msgid "Disconnect from PLC" msgstr "Отключиться от ПЛК" -#: ../ProjectController.py:1401 +#: ../runtime/PlcStatus.py:14 msgid "Disconnected" msgstr "Отключено" -#: ../editors/Viewer.py:654 ../editors/Viewer.py:2436 +#: ../editors/Viewer.py:657 ../editors/Viewer.py:2438 msgid "Divergence" msgstr "Ветвление" @@ -1410,7 +1582,7 @@ msgid "Division" msgstr "Деление" -#: ../editors/FileManagementPanel.py:156 +#: ../etherlab/ConfigEditor.py:1260 ../editors/FileManagementPanel.py:155 #, python-format msgid "Do you really want to delete the file '%s'?" msgstr "Вы действительно хотите удалить этот файл '%s'?" @@ -1423,15 +1595,31 @@ msgid "Done" msgstr "Завершено" +#: ../runtime/WampClient.py:384 +msgid "Download" +msgstr "Скачать" + #: ../dialogs/ActionBlockDialog.py:42 msgid "Duration" msgstr "Длительность" +#: ../bacnet/bacnet.py:437 +msgid "EDE files (*_EDE.csv)|*_EDE.csv|All files|*.*" +msgstr "EDE-файлы (* _EDE.csv) | * _EDE.csv | Все файлы | *. *" + #: ../canfestival/canfestival.py:174 msgid "EDS files (*.eds)|*.eds|All files|*.*" msgstr "Файлы EDS (*.eds)|*.eds|All files|*.*" -#: ../editors/Viewer.py:668 +#: ../etherlab/ConfigEditor.py:1342 +msgid "ESI Files Database management" +msgstr "Управление базой ESI-файлов" + +#: ../etherlab/ConfigEditor.py:1109 +msgid "ESI Files:" +msgstr "Файлы ESI:" + +#: ../editors/Viewer.py:671 msgid "Edit Block" msgstr "Редактировать блок" @@ -1443,7 +1631,7 @@ msgid "Edit Contact Values" msgstr "Редактировать значение контакта" -#: ../dialogs/DurationEditorDialog.py:62 +#: ../dialogs/DurationEditorDialog.py:54 msgid "Edit Duration" msgstr "Редактировать длительность" @@ -1463,11 +1651,11 @@ msgid "Edit array type properties" msgstr "Редактировать свойства массива" -#: ../editors/Viewer.py:2660 ../editors/Viewer.py:3102 +#: ../dialogs/CommentEditDialog.py:53 msgid "Edit comment" msgstr "Редактировать комментарий" -#: ../editors/FileManagementPanel.py:69 +#: ../editors/FileManagementPanel.py:68 msgid "Edit file" msgstr "Редактировать файл" @@ -1475,11 +1663,11 @@ msgid "Edit item" msgstr "Редактировать элемент" -#: ../editors/Viewer.py:3059 +#: ../editors/Viewer.py:3058 msgid "Edit jump target" msgstr "Редактирование безусловного перехода" -#: ../ProjectController.py:1873 +#: ../ProjectController.py:1956 msgid "Edit raw IEC code added to code generated by PLCGenerator" msgstr "" "Редактировать МЭК-код добавленный к коду сгенерированному PLCGenerator" @@ -1492,11 +1680,11 @@ msgid "Edit transition" msgstr "Редактировать переход" -#: ../IDEFrame.py:632 +#: ../IDEFrame.py:638 msgid "Editor ToolBar" msgstr "Редактор панели инструментов" -#: ../ProjectController.py:1294 +#: ../ProjectController.py:1355 msgid "Editor selection" msgstr "Редактор выделения" @@ -1504,7 +1692,7 @@ msgid "Elements :" msgstr "Элементы:" -#: ../ProjectController.py:1399 +#: ../runtime/PlcStatus.py:15 msgid "Empty" msgstr "Нет программы" @@ -1512,18 +1700,49 @@ msgid "Empty dimension isn't allowed." msgstr "Размер не должен быть нулевым" -#: ../Beremiz_service.py:341 +#: ../etherlab/EtherCATManagementEditor.py:37 +msgid "Enable" +msgstr "Разрешить" + +#: ../runtime/WampClient.py:410 +msgid "Enable WAMP connection" +msgstr "Разрешить WAMP подключение" + +#: ../Beremiz_service.py:354 msgid "Enter a name " msgstr "Введите имя" -#: ../Beremiz_service.py:326 +#: ../Beremiz_service.py:339 msgid "Enter a port number " msgstr "Введите номер порта" -#: ../Beremiz_service.py:317 +#: ../etherlab/EtherCATManagementEditor.py:627 +msgid "" +"Enter hex or dec value (if enter dec value, it automatically conversed hex " +"value)" +msgstr "" +"Введите десятичное или шестнадцатеричное значение (десятичное значение " +"автоматически преобразуется в шестнадцатеричное)" + +#: ../etherlab/EtherCATManagementEditor.py:1964 +msgid "Enter hex(0xnnnn) or dec(n) value" +msgstr "Введите шестнадцатеричное (0xnnnn) или десятичное (n) значение" + +#: ../Beremiz_service.py:330 msgid "Enter the IP of the interface to bind" msgstr "Введите IP-адрес используемого интерфейса" +#: ../etherlab/ConfigEditor.py:502 +msgid "Entry can't be write through SDO" +msgstr "Запись нельзя писать через SDO" + +#: ../etherlab/EthercatCFileGenerator.py:569 +#, python-brace-format +msgid "Entry index 0x{a1:.4x}, subindex 0x{a2:.2x} not mapped for device {a3}" +msgstr "" +"Запись с индексом 0x {a1: .4x}, субиндексом 0x {a2: .2x}, не сопоставлена " +"для устройства {a3}" + #: ../editors/DataTypeEditor.py:60 msgid "Enumerated" msgstr "Перечисление" @@ -1534,34 +1753,37 @@ #: ../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/DurationEditorDialog.py:125 +#: ../dialogs/DurationEditorDialog.py:172 +#: ../dialogs/PouTransitionDialog.py:113 ../dialogs/BlockPreviewDialog.py:237 +#: ../dialogs/ProjectDialog.py:78 ../dialogs/ArrayTypeDialog.py:114 +#: ../dialogs/PouNameDialog.py:58 ../dialogs/BrowseLocationsDialog.py:228 #: ../dialogs/BrowseValuesLibraryDialog.py:87 -#: ../dialogs/PouActionDialog.py:112 ../dialogs/PouDialog.py:143 +#: ../dialogs/PouActionDialog.py:112 ../dialogs/PouDialog.py:178 #: ../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 +#: ../etherlab/ConfigEditor.py:458 ../etherlab/ConfigEditor.py:510 +#: ../etherlab/ConfigEditor.py:981 ../etherlab/ConfigEditor.py:1047 +#: ../etherlab/ConfigEditor.py:1246 ../etherlab/ConfigEditor.py:1314 +#: ../etherlab/EthercatMaster.py:463 ../editors/ResourceEditor.py:468 +#: ../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:779 ../ProjectController.py:404 +#: ../ProjectController.py:548 ../ProjectController.py:557 +#: ../controls/FolderTree.py:222 ../controls/ProjectPropertiesPanel.py:308 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:163 #: ../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 +#: ../controls/VariablePanel.py:430 ../controls/VariablePanel.py:784 +#: ../util/ExceptionHandler.py:70 ../IDEFrame.py:1049 ../IDEFrame.py:1667 +#: ../IDEFrame.py:1708 ../IDEFrame.py:1713 ../IDEFrame.py:1727 +#: ../IDEFrame.py:1732 ../Beremiz_service.py:234 msgid "Error" msgstr "Ошибка" -#: ../ProjectController.py:811 +#: ../ProjectController.py:848 msgid "" "Error : At least one configuration and one resource must be declared in PLC " "!\n" @@ -1569,12 +1791,12 @@ "Ошибка: Как минимум одна конфигурация и один ресурс должны быть " "задекларированы в ПЛК!\n" -#: ../ProjectController.py:803 +#: ../ProjectController.py:838 #, python-format msgid "Error : IEC to C compiler returned %d\n" msgstr "Ошибка: компилятор МЭК в C вернул код ошибки %d\n" -#: ../ProjectController.py:731 +#: ../ProjectController.py:762 #, python-format msgid "" "Error in ST/IL/SFC code generator :\n" @@ -1586,7 +1808,25 @@ msgid "Error while saving \"%s\"\n" msgstr "Ошибка во время сохранения \"%s\"\n" -#: ../canfestival/canfestival.py:179 +#: ../bacnet/bacnet.py:581 +#, python-brace-format +msgid "" +"Error: BACnet server '{a1}.x: {a2}' contains objects with duplicate object " +"identifiers.\n" +msgstr "" +"Ошибка: BACnet-сервер '{a1} .x: {a2}' содержит объекты с повторяющимися " +"идентификаторами.\n" + +#: ../bacnet/bacnet.py:573 +#, python-brace-format +msgid "" +"Error: BACnet server '{a1}.x:{a2}' contains objects with duplicate object " +"names.\n" +msgstr "" +"Ошибка: BACnet-сервер '{a1} .x: {a2}' содержит объекты с повторяющимися " +"именами.\n" + +#: ../canfestival/canfestival.py:179 ../bacnet/bacnet.py:444 msgid "Error: Export slave failed\n" msgstr "Ошибка: неудачный экспорт ведомого\n" @@ -1607,7 +1847,23 @@ msgid "Error: No PLC built\n" msgstr "Ошибка: ПЛК не собран\n" -#: ../ProjectController.py:1708 +#: ../etherlab/ConfigEditor.py:269 +msgid "EtherCAT Management" +msgstr "Управление EtherCAT" + +#: ../features.py:20 +msgid "EtherCAT master" +msgstr "Мастер EtherCAT" + +#: ../etherlab/EthercatMaster.py:302 +msgid "Ethercat Slave Type" +msgstr "Тип устройства Ethercat" + +#: ../etherlab/ConfigEditor.py:267 +msgid "Ethercat node" +msgstr "Узел Ethercat" + +#: ../ProjectController.py:1791 #, python-format msgid "Exception while connecting %s!\n" msgstr "Исключение во время подключения %s!\n" @@ -1616,11 +1872,11 @@ msgid "Execution Control:" msgstr "Управление исполнением:" -#: ../dialogs/FBDVariableDialog.py:84 ../dialogs/FBDBlockDialog.py:111 +#: ../dialogs/FBDVariableDialog.py:85 ../dialogs/FBDBlockDialog.py:111 msgid "Execution Order:" msgstr "Порядок исполнения:" -#: ../features.py:36 +#: ../features.py:25 msgid "Experimental web based HMI" msgstr "Экспериментальный WEB-HMI" @@ -1632,44 +1888,48 @@ msgid "Exponentiation" msgstr "Взятие экспоненты" +#: ../bacnet/bacnet.py:156 +msgid "Export BACnet slave to EDE file" +msgstr "Экспорт ведомого устройства BACnet в файл EDE" + #: ../canfestival/canfestival.py:186 msgid "Export CanOpen slave to EDS file" msgstr "Экспортировать CanOpen ведомое устройство в EDS файл" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:246 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:243 msgid "Export graph values to clipboard" msgstr "Экспортировать график значений в буфер обмена" -#: ../canfestival/canfestival.py:185 +#: ../canfestival/canfestival.py:185 ../bacnet/bacnet.py:155 msgid "Export slave" msgstr "Экспортировать ведомое устройство" -#: ../dialogs/FBDVariableDialog.py:94 +#: ../dialogs/FBDVariableDialog.py:95 msgid "Expression:" msgstr "Выражение:" -#: ../controls/VariablePanel.py:90 +#: ../controls/VariablePanel.py:87 msgid "External" msgstr "Внешний" -#: ../ProjectController.py:826 +#: ../ProjectController.py:866 msgid "Extracting Located Variables...\n" msgstr "Экспорт локальных переменных...\n" #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 -#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158 +#: ../dialogs/PouDialog.py:128 ../controls/ProjectPropertiesPanel.py:161 msgid "FBD" msgstr "FBD" -#: ../ProjectController.py:1773 +#: ../ProjectController.py:1855 msgid "Failed : Must build before transfer.\n" msgstr "Ошибка: необходима сборка перед передачей.\n" -#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:556 +#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:559 msgid "Falling Edge" msgstr "Спадающий фронт" -#: ../ProjectController.py:1098 +#: ../ProjectController.py:1145 msgid "Fatal : cannot get builder.\n" msgstr "Ошибка: невозможно получить сборщик.\n" @@ -1678,12 +1938,12 @@ msgid "Fetching %s" msgstr "Проверка %s" -#: ../dialogs/DurationEditorDialog.py:167 +#: ../dialogs/DurationEditorDialog.py:169 #, python-format msgid "Field %s hasn't a valid value!" msgstr "Поле %s имеет неверное значение!" -#: ../dialogs/DurationEditorDialog.py:169 +#: ../dialogs/DurationEditorDialog.py:171 #, python-format msgid "Fields %s haven't a valid value!" msgstr "Поля %s имеют неверные значения!" @@ -1693,16 +1953,20 @@ msgid "File '%s' already exists!" msgstr "Файл '%s' уже существует!" +#: ../runtime/WampClient.py:407 +msgid "File containing secret for that ID" +msgstr "Файл, содержащий секрет для этого идентификатора" + #: ../dialogs/SearchInProjectDialog.py:102 ../dialogs/FindInPouDialog.py:40 -#: ../dialogs/FindInPouDialog.py:107 ../IDEFrame.py:377 +#: ../dialogs/FindInPouDialog.py:107 ../IDEFrame.py:380 msgid "Find" msgstr "Поиск" -#: ../IDEFrame.py:379 +#: ../IDEFrame.py:382 msgid "Find Next" msgstr "Поиск следующего" -#: ../IDEFrame.py:381 +#: ../IDEFrame.py:384 msgid "Find Previous" msgstr "Поиск предыдущего" @@ -1714,7 +1978,7 @@ msgid "Find:" msgstr "Поиск:" -#: ../editors/Viewer.py:1633 +#: ../editors/Viewer.py:1635 msgid "Force value" msgstr "Форсировать значение" @@ -1722,9 +1986,9 @@ msgid "Forcing Variable Value" msgstr "Форсировать значение переменной" -#: ../dialogs/SFCTransitionDialog.py:184 ../dialogs/PouTransitionDialog.py:104 -#: ../dialogs/ProjectDialog.py:79 ../dialogs/PouActionDialog.py:102 -#: ../dialogs/PouDialog.py:125 +#: ../dialogs/SFCTransitionDialog.py:184 ../dialogs/PouTransitionDialog.py:103 +#: ../dialogs/ProjectDialog.py:77 ../dialogs/PouActionDialog.py:102 +#: ../dialogs/PouDialog.py:160 #, python-format msgid "Form isn't complete. %s must be filled!" msgstr "Форма заполнена не полностью. %s необходимо заполнить!" @@ -1743,20 +2007,24 @@ msgid "Forward" msgstr "Вперед" -#: ../dialogs/SearchInProjectDialog.py:40 ../IDEFrame.py:1780 +#: ../IDEFrame.py:455 +msgid "Full screen" +msgstr "Полный экран" + +#: ../dialogs/SearchInProjectDialog.py:40 ../IDEFrame.py:1797 msgid "Function" msgstr "Функция" -#: ../IDEFrame.py:354 +#: ../IDEFrame.py:357 msgid "Function &Block" msgstr "Функциональный &блок" -#: ../dialogs/SearchInProjectDialog.py:41 ../IDEFrame.py:1779 -#: ../IDEFrame.py:1972 +#: ../dialogs/SearchInProjectDialog.py:41 ../IDEFrame.py:1796 +#: ../IDEFrame.py:1989 msgid "Function Block" msgstr "Функциональный блок" -#: ../controls/VariablePanel.py:868 +#: ../controls/VariablePanel.py:879 msgid "Function Block Types" msgstr "Типы функциональных блоков" @@ -1781,19 +2049,19 @@ msgid "Generate Program" msgstr "Сгенерировать программу" -#: ../ProjectController.py:722 +#: ../ProjectController.py:750 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n" msgstr "Генерация МЭК-61131 ST/IL/SFC кода ПЛК...\n" -#: ../controls/VariablePanel.py:91 +#: ../controls/VariablePanel.py:88 msgid "Global" msgstr "Глобальный" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:245 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:242 msgid "Go to current value" msgstr "Перейти к текущему значению" -#: ../controls/ProjectPropertiesPanel.py:189 +#: ../controls/ProjectPropertiesPanel.py:192 msgid "Graphics" msgstr "Графика" @@ -1805,32 +2073,36 @@ msgid "Greater than or equal to" msgstr "Больше или равно" -#: ../controls/ProjectPropertiesPanel.py:149 +#: ../controls/ProjectPropertiesPanel.py:152 msgid "Grid Resolution:" msgstr "Шаг сетки:" -#: ../runtime/NevowServer.py:192 +#: ../runtime/NevowServer.py:313 msgid "HTTP interface port :" msgstr "Порт HTTP-интерфейса :" -#: ../controls/ProjectPropertiesPanel.py:135 +#: ../controls/ProjectPropertiesPanel.py:138 msgid "Height:" msgstr "Высота:" -#: ../editors/FileManagementPanel.py:89 +#: ../editors/FileManagementPanel.py:88 msgid "Home Directory:" msgstr "Домашняя директория:" -#: ../controls/ProjectPropertiesPanel.py:165 +#: ../controls/ProjectPropertiesPanel.py:168 msgid "Horizontal:" msgstr "Горизонтальный:" -#: ../dialogs/DurationEditorDialog.py:47 +#: ../dialogs/DurationEditorDialog.py:58 msgid "Hours:" msgstr "Часы:" +#: ../runtime/WampClient.py:404 +msgid "ID" +msgstr "ID" + #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 -#: ../dialogs/PouDialog.py:44 +#: ../dialogs/PouDialog.py:128 msgid "IL" msgstr "IL" @@ -1838,54 +2110,66 @@ msgid "IP" msgstr "IP" -#: ../Beremiz_service.py:318 ../Beremiz_service.py:320 +#: ../Beremiz_service.py:331 ../Beremiz_service.py:333 msgid "IP is not valid!" msgstr "Неверный IP-адрес" +#: ../etherlab/ConfigEditor.py:1387 +msgid "Import ESI file" +msgstr "Импортировать файл ESI" + #: ../svgui/svgui.py:50 ../svgui/svgui.py:51 msgid "Import SVG" msgstr "Импорт SVG" -#: ../dialogs/FBDVariableDialog.py:41 ../editors/Viewer.py:1662 -#: ../controls/VariablePanel.py:89 +#: ../etherlab/ConfigEditor.py:1352 +msgid "Import file to ESI files database" +msgstr "Импортировать файл в базу данных файлов ESI" + +#: ../dialogs/FBDVariableDialog.py:64 ../editors/Viewer.py:1664 +#: ../controls/VariablePanel.py:86 msgid "InOut" msgstr "Вход/Выход" -#: ../PLCGenerator.py:1040 +#: ../PLCGenerator.py:1089 #, python-brace-format msgid "InOut variable {a1} in block {a2} in POU {a3} must be connected." msgstr "" "Входная/Выходная переменная {a1} в блоке {a2} в POU {a3} должна быть " "подключена." -#: ../editors/Viewer.py:473 +#: ../editors/Viewer.py:484 msgid "Inactive" msgstr "Неактивный" -#: ../controls/VariablePanel.py:300 +#: ../controls/VariablePanel.py:299 #, python-brace-format msgid "Incompatible data types between \"{a1}\" and \"{a2}\"" msgstr "\"{a1}\" и \"{a2}\" имеют несовместимые типы данных" -#: ../controls/VariablePanel.py:306 +#: ../controls/VariablePanel.py:305 #, python-format msgid "Incompatible size of data between \"%s\" and \"BOOL\"" msgstr "Несовместимый размер данных \"%s\" с типом \"BOOL\"" -#: ../controls/VariablePanel.py:310 +#: ../controls/VariablePanel.py:309 #, python-brace-format msgid "Incompatible size of data between \"{a1}\" and \"{a2}\"" msgstr "\"{a1}\" и \"{a2}\" имеют несовместимый размер данных" +#: ../etherlab/ConfigEditor.py:48 ../etherlab/ConfigEditor.py:465 +msgid "Index" +msgstr "Индекс" + #: ../dialogs/ActionBlockDialog.py:42 msgid "Indicator" msgstr "Индикатор" -#: ../editors/CodeFileEditor.py:734 +#: ../editors/CodeFileEditor.py:753 msgid "Initial" msgstr "Исходное значение" -#: ../editors/Viewer.py:650 +#: ../editors/Viewer.py:653 msgid "Initial Step" msgstr "Исходный шаг" @@ -1898,6 +2182,15 @@ msgid "Initial Value:" msgstr "Исходное значение:" +#: ../etherlab/EthercatCIA402Slave.py:119 +msgid "Initiate Drag'n drop of Axis ref located variable" +msgstr "Инициировать перетаскивание отображаемой переменной Axis ref" + +#: ../etherlab/EthercatCIA402Slave.py:126 +msgid "Initiate Drag'n drop of Network position located variable" +msgstr "" +"Инициировать перетаскивание отображаемой переменной сетевого положения" + #: ../svgui/svgui.py:56 msgid "Inkscape" msgstr "Inkscape" @@ -1906,11 +2199,11 @@ msgid "Inline" msgstr "Непосредственно" -#: ../dialogs/SFCStepDialog.py:73 ../dialogs/FBDVariableDialog.py:40 +#: ../dialogs/SFCStepDialog.py:73 ../dialogs/FBDVariableDialog.py:63 #: ../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 +#: ../editors/Viewer.py:1662 ../editors/TextViewer.py:307 +#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:86 +#: ../controls/VariablePanel.py:316 ../controls/VariablePanel.py:379 msgid "Input" msgstr "Вход" @@ -1927,11 +2220,11 @@ msgid "Instance with id %d doesn't exist!" msgstr "Экземпляр с id %d не существует!" -#: ../editors/ResourceEditor.py:279 +#: ../editors/ResourceEditor.py:277 msgid "Instances:" msgstr "Экземпляры:" -#: ../controls/VariablePanel.py:88 +#: ../controls/VariablePanel.py:85 msgid "Interface" msgstr "Интерфейс" @@ -1943,7 +2236,7 @@ msgid "Interval" msgstr "Интервал" -#: ../controls/ProjectPropertiesPanel.py:304 +#: ../controls/ProjectPropertiesPanel.py:306 msgid "" "Invalid URL!\n" "Please enter correct URL address." @@ -1965,14 +2258,26 @@ msgid "Invalid type \"{a1}\"-> {a2} != {a3} for location \"{a4}\"" msgstr "Неправильный тип \"{a1}\"-> {a2} != {a3} для \"{a4}\"" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:139 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:129 #: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:93 #: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:162 #, python-format msgid "Invalid value \"%s\" for debug variable" msgstr "Неверное значение \"%s\" для отлаживаемой переменной" -#: ../controls/VariablePanel.py:279 ../controls/VariablePanel.py:282 +#: ../etherlab/ConfigEditor.py:418 ../etherlab/ConfigEditor.py:421 +#: ../etherlab/ConfigEditor.py:452 +#, python-format +msgid "Invalid value \"%s\" for process variable" +msgstr "Недопустимое значение «%s» для переменной процесса" + +#: ../etherlab/ConfigEditor.py:480 ../etherlab/ConfigEditor.py:483 +#: ../etherlab/ConfigEditor.py:504 +#, python-format +msgid "Invalid value \"%s\" for startup command" +msgstr "Недопустимое значение «%s» для команды запуска" + +#: ../controls/VariablePanel.py:278 ../controls/VariablePanel.py:281 #, python-format msgid "Invalid value \"%s\" for variable grid element" msgstr "Неверное значение \"%s\" для значения размещения переменной" @@ -1987,7 +2292,12 @@ msgid "Invalid value \"{a1}\" for \"{a2}\" variable!" msgstr "Неверное значение \"{a1}\" для переменной \"{a2}\"!" -#: ../dialogs/DurationEditorDialog.py:124 +#: ../etherlab/CommonEtherCATFunction.py:31 +#, python-format +msgid "Invalid value for HexDecValue \"%s\"" +msgstr "Недопустимое значение для шестнадцатеричного/десятичного числа \"%s\"" + +#: ../dialogs/DurationEditorDialog.py:125 msgid "" "Invalid value!\n" "You must fill a numeric value." @@ -1999,12 +2309,12 @@ msgid "Is connection secure?" msgstr "Безопасное подключение?" -#: ../editors/Viewer.py:655 ../editors/Viewer.py:2425 +#: ../editors/Viewer.py:658 ../editors/Viewer.py:2427 msgid "Jump" msgstr "Безусловный переход" #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 -#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158 +#: ../dialogs/PouDialog.py:128 ../controls/ProjectPropertiesPanel.py:161 msgid "LD" msgstr "LD" @@ -2013,35 +2323,35 @@ msgid "Ladder element with id %d is on more than one rung." msgstr "Элемент лестничной диаграммы с id %d более чем на одной ступени." -#: ../dialogs/PouTransitionDialog.py:93 ../dialogs/PouActionDialog.py:91 -#: ../dialogs/PouDialog.py:113 +#: ../dialogs/PouTransitionDialog.py:92 ../dialogs/PouActionDialog.py:91 +#: ../dialogs/PouDialog.py:148 msgid "Language" msgstr "Язык" -#: ../controls/ProjectPropertiesPanel.py:206 +#: ../controls/ProjectPropertiesPanel.py:208 msgid "Language (optional):" msgstr "Язык (опционально):" -#: ../dialogs/PouTransitionDialog.py:67 ../dialogs/PouActionDialog.py:63 -#: ../dialogs/PouDialog.py:81 +#: ../dialogs/PouTransitionDialog.py:66 ../dialogs/PouActionDialog.py:63 +#: ../dialogs/PouDialog.py:79 msgid "Language:" msgstr "Язык:" -#: ../ProjectController.py:1779 +#: ../ProjectController.py:1861 msgid "Latest build already matches current target. Transfering anyway...\n" msgstr "" "Загружаемая программа совпадает с текущий программой в целевом ПЛК. Загрузка" " продолжена...\n" -#: ../Beremiz_service.py:281 +#: ../Beremiz_service.py:294 msgid "Launch WX GUI inspector" msgstr "Запустить WX GUI Inspector" -#: ../Beremiz_service.py:280 +#: ../Beremiz_service.py:293 msgid "Launch a live Python shell" msgstr "Запустить консоль Python" -#: ../editors/Viewer.py:580 +#: ../editors/Viewer.py:583 msgid "Left" msgstr "Слева" @@ -2061,7 +2371,7 @@ msgid "Less than or equal to" msgstr "Меньше либо равно" -#: ../IDEFrame.py:652 +#: ../IDEFrame.py:658 msgid "Library" msgstr "Библиотеки" @@ -2077,7 +2387,7 @@ msgid "Linking :\n" msgstr "Линковка:\n" -#: ../dialogs/DiscoveryDialog.py:115 ../controls/VariablePanel.py:90 +#: ../dialogs/DiscoveryDialog.py:115 ../controls/VariablePanel.py:87 msgid "Local" msgstr "Локальный" @@ -2085,7 +2395,7 @@ msgid "Local entries" msgstr "Локальные записи" -#: ../ProjectController.py:1685 +#: ../ProjectController.py:1767 msgid "Local service discovery failed!\n" msgstr "Локальный сервис не найден!\n" @@ -2093,28 +2403,44 @@ msgid "Location" msgstr "Адрес" -#: ../dialogs/BrowseLocationsDialog.py:79 +#: ../dialogs/BrowseLocationsDialog.py:78 msgid "Locations available:" msgstr "Доступные адреса:" +#: ../runtime/NevowServer.py:175 +msgid "Log message level" +msgstr "Уровень сообщений журнала" + #: ../plcopen/iec_std.csv:25 msgid "Logarithm to base 10" msgstr "Десятичный логарифм" -#: ../connectors/PYRO/__init__.py:102 +#: ../connectors/PYRO/__init__.py:103 #, python-format msgid "MDNS resolution failure for '%s'\n" msgstr "MDNS разрешение неудачно для '%s'\n" +#: ../etherlab/ConfigEditor.py:67 +msgid "Manufacturer Specific" +msgstr "Определяемые производителем" + #: ../canfestival/SlaveEditor.py:68 ../canfestival/NetworkEditor.py:92 msgid "Map Variable" msgstr "Отображение переменной" -#: ../features.py:31 +#: ../features.py:19 +msgid "Map located variables over Bacnet" +msgstr "Отображение переменных по Bacnet" + +#: ../features.py:18 msgid "Map located variables over CANopen" msgstr "Отображение переменных по CANopen" -#: ../features.py:32 +#: ../features.py:20 +msgid "Map located variables over EtherCAT" +msgstr "Отображение переменных по EtherCAT" + +#: ../features.py:21 msgid "Map located variables over Modbus" msgstr "Отображение переменных по Modbus" @@ -2122,12 +2448,28 @@ msgid "Master" msgstr "Ведущий" +#: ../etherlab/ConfigEditor.py:613 +msgid "Master State" +msgstr "Состояние Мастера" + #: ../ConfigTreeNode.py:544 #, python-brace-format msgid "Max count ({a1}) reached for this confnode of type {a2} " msgstr "" "Достигнуто максимальное количество ({a1}) для типа узла конфигурации {a2} " +#: ../etherlab/etherlab.py:173 +msgid "Max entries by PDO" +msgstr "Макс. количество записей по PDO" + +#: ../etherlab/etherlab.py:176 +msgid "" +"Maximal number of entries mapped in a PDO\n" +"including empty entries used for PDO alignment" +msgstr "" +"Максимальное количество записей, отображаемых в PDO\n" +"включая пустые записи, используемые для выравнивания PDO" + #: ../plcopen/iec_std.csv:71 msgid "Maximum" msgstr "Максимум" @@ -2138,26 +2480,34 @@ #: ../dialogs/BrowseLocationsDialog.py:45 ../editors/Viewer.py:333 #: ../editors/TextViewer.py:307 ../controls/LocationCellEditor.py:103 -#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380 +#: ../controls/VariablePanel.py:316 ../controls/VariablePanel.py:379 msgid "Memory" msgstr "Память" -#: ../IDEFrame.py:617 +#: ../IDEFrame.py:623 msgid "Menu ToolBar" msgstr "Меню" -#: ../dialogs/DurationEditorDialog.py:51 +#: ../runtime/NevowServer.py:176 +msgid "Message text" +msgstr "Текст сообщения" + +#: ../dialogs/DurationEditorDialog.py:62 msgid "Microseconds:" msgstr "Микросекунды:" -#: ../editors/Viewer.py:585 +#: ../editors/Viewer.py:588 msgid "Middle" msgstr "Посередине" -#: ../dialogs/DurationEditorDialog.py:50 +#: ../dialogs/DurationEditorDialog.py:61 msgid "Milliseconds:" msgstr "Миллисекунды:" +#: ../etherlab/etherlab.py:167 +msgid "Minimal size in bits between 2 pdo entries" +msgstr "Минимальный размер в битах между 2 записями pdo" + #: ../plcopen/iec_std.csv:72 msgid "Minimum" msgstr "Минимум" @@ -2166,15 +2516,15 @@ msgid "Minimum:" msgstr "Минимум:" -#: ../dialogs/DurationEditorDialog.py:48 +#: ../dialogs/DurationEditorDialog.py:59 msgid "Minutes:" msgstr "Минуты:" -#: ../controls/ProjectPropertiesPanel.py:231 +#: ../etherlab/etherlab.py:238 ../controls/ProjectPropertiesPanel.py:233 msgid "Miscellaneous" msgstr "Прочее" -#: ../features.py:32 +#: ../features.py:21 msgid "Modbus support" msgstr "Поддержка Modbus" @@ -2182,7 +2532,20 @@ msgid "Modifier:" msgstr "Модификатор:" -#: ../PLCGenerator.py:795 ../PLCGenerator.py:1269 +#: ../etherlab/ConfigEditor.py:1313 +#, python-format +msgid "Module %s must be an integer!" +msgstr "Модуль %s должен быть целым числом!" + +#: ../etherlab/ConfigEditor.py:1376 +msgid "Modules Library" +msgstr "Библиотека модулей" + +#: ../etherlab/ConfigEditor.py:1145 +msgid "Modules library:" +msgstr "Библиотека модулей:" + +#: ../PLCGenerator.py:795 ../PLCGenerator.py:1318 #, python-brace-format msgid "" "More than one connector found corresponding to \"{a1}\" continuation in " @@ -2211,23 +2574,31 @@ msgid "Move element up" msgstr "Переместить элементы выше" -#: ../editors/ResourceEditor.py:286 +#: ../editors/ResourceEditor.py:284 msgid "Move instance down" msgstr "Переместить экземпляр ниже" -#: ../editors/ResourceEditor.py:285 +#: ../editors/ResourceEditor.py:283 msgid "Move instance up" msgstr "Переместить экземпляр выше" -#: ../editors/ResourceEditor.py:255 +#: ../etherlab/ConfigEditor.py:655 +msgid "Move process variable down" +msgstr "Переместить переменную вниз" + +#: ../etherlab/ConfigEditor.py:654 +msgid "Move process variable up" +msgstr "Переместить переменную вверх" + +#: ../editors/ResourceEditor.py:253 msgid "Move task down" msgstr "Переместить задачу ниже" -#: ../editors/ResourceEditor.py:254 +#: ../editors/ResourceEditor.py:252 msgid "Move task up" msgstr "Переместить задачу выше" -#: ../IDEFrame.py:106 ../IDEFrame.py:121 ../IDEFrame.py:151 ../IDEFrame.py:192 +#: ../IDEFrame.py:253 ../IDEFrame.py:268 ../IDEFrame.py:298 ../IDEFrame.py:339 msgid "Move the view" msgstr "Переместить отображение" @@ -2235,14 +2606,28 @@ msgid "Move up" msgstr "Переместить выше" -#: ../editors/CodeFileEditor.py:657 ../controls/VariablePanel.py:484 +#: ../bacnet/BacnetSlaveEditor.py:814 ../editors/CodeFileEditor.py:675 +#: ../controls/VariablePanel.py:486 msgid "Move variable down" msgstr "Переместить переменную ниже" -#: ../editors/CodeFileEditor.py:656 ../controls/VariablePanel.py:483 +#: ../bacnet/BacnetSlaveEditor.py:813 ../editors/CodeFileEditor.py:674 +#: ../controls/VariablePanel.py:485 msgid "Move variable up" msgstr "Переместить переменную выше" +#: ../bacnet/BacnetSlaveEditor.py:941 +msgid "Multi-State Input Objects" +msgstr "Входы со многими состояниями" + +#: ../bacnet/BacnetSlaveEditor.py:940 +msgid "Multi-State Output Objects" +msgstr "Выходы со многими состояниями" + +#: ../bacnet/BacnetSlaveEditor.py:939 +msgid "Multi-State Value Objects" +msgstr "Значения со многими состояниями" + #: ../plcopen/iec_std.csv:74 msgid "Multiplexer (select 1 of N)" msgstr "Мультиплексор (1 в N)" @@ -2251,7 +2636,7 @@ msgid "Multiplication" msgstr "Умножение" -#: ../editors/FileManagementPanel.py:87 +#: ../editors/FileManagementPanel.py:86 msgid "My Computer:" msgstr "Мой компьютер:" @@ -2259,13 +2644,15 @@ msgid "NAME" msgstr "Имя" -#: ../editors/ResourceEditor.py:76 ../editors/ResourceEditor.py:97 -#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:732 +#: ../etherlab/EtherCATManagementEditor.py:37 ../etherlab/ConfigEditor.py:48 +#: ../etherlab/ConfigEditor.py:343 ../etherlab/ConfigEditor.py:1167 +#: ../editors/ResourceEditor.py:76 ../editors/ResourceEditor.py:94 +#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:751 #: ../controls/VariablePanel.py:59 msgid "Name" msgstr "Имя" -#: ../Beremiz_service.py:342 +#: ../Beremiz_service.py:355 msgid "Name must not be null!" msgstr "Имя не может быть null!" @@ -2278,15 +2665,19 @@ msgid "Natural logarithm" msgstr "Натуральный логарифм" -#: ../dialogs/LDElementDialog.py:78 ../editors/Viewer.py:554 +#: ../dialogs/LDElementDialog.py:78 ../editors/Viewer.py:557 msgid "Negated" msgstr "Инверсия" -#: ../Beremiz_service.py:610 +#: ../etherlab/ConfigEditor.py:612 +msgid "Network" +msgstr "Cеть" + +#: ../Beremiz_service.py:620 msgid "Nevow Web service failed. " msgstr "Ошибка Web сервиса Nevow. " -#: ../Beremiz_service.py:580 +#: ../Beremiz_service.py:596 msgid "Nevow/Athena import failed :" msgstr "Ошибка импорта Nevow/Athena :" @@ -2299,20 +2690,29 @@ msgid "New item" msgstr "Новый элемент" -#: ../editors/Viewer.py:553 +#: ../editors/Viewer.py:556 msgid "No Modifier" msgstr "Нет модификатора" -#: ../ProjectController.py:1808 +#: ../ProjectController.py:1891 msgid "No PLC to transfer (did build succeed ?)\n" msgstr "Нет ПЛК для передачи (была сборка успешна?)\n" -#: ../PLCGenerator.py:1678 +#: ../etherlab/EthercatCFileGenerator.py:504 +#, python-format +msgid "No Sync manager defined for %s!" +msgstr "Не определен менеджер синхронизации для %s!" + +#: ../PLCGenerator.py:1727 #, python-format msgid "No body defined in \"%s\" POU" msgstr "Нет тела для POU \"%s\"" -#: ../PLCGenerator.py:816 ../PLCGenerator.py:1281 +#: ../etherlab/CommonEtherCATFunction.py:1581 +msgid "No connected slaves" +msgstr "Нет подключенных подчиненных устройств" + +#: ../PLCGenerator.py:816 ../PLCGenerator.py:1330 #, python-brace-format msgid "No connector found corresponding to \"{a1}\" continuation in \"{a2}\" POU" msgstr "Не найден коннектор, соответствующий продолжению цепи \"{a1}\" в POU \"{a2}\"" @@ -2330,7 +2730,17 @@ msgid "No informations found for \"%s\" block" msgstr "Не найдена информация по блоку \"%s\"" -#: ../PLCGenerator.py:1232 +#: ../etherlab/EthercatCFileGenerator.py:224 +#, python-format +msgid "No informations found for device %s!" +msgstr "Информация об устройстве %s не найдена!" + +#: ../etherlab/EthercatCFileGenerator.py:515 +#, python-format +msgid "No more free PDO index available for %s!" +msgstr "Отсутствуют свободные индексы PDO для %s!" + +#: ../PLCGenerator.py:1281 #, python-brace-format msgid "" "No output {a1} variable found in block {a2} in POU {a3}. Connection must be " @@ -2341,11 +2751,21 @@ msgid "No search results available." msgstr "Ничего не найдено." +#: ../etherlab/ConfigEditor.py:1029 +#, python-format +msgid "No slave defined at position %d!" +msgstr "Для позиции %d не определено ведомое устройство!" + #: ../svgui/svgui.py:142 #, python-format msgid "No such SVG file: %s\n" msgstr "Нет такого SVG файла: %s\n" +#: ../etherlab/ConfigEditor.py:1245 +#, python-format +msgid "No such XML file: %s\n" +msgstr "Нет такого XML-файла: %s\n" + #: ../canfestival/config_utils.py:682 #, python-brace-format msgid "No such index/subindex ({a1},{a2}) (variable {a3})" @@ -2356,15 +2776,33 @@ msgid "No such index/subindex ({a1},{a2}) in ID : {a3} (variable {a4})" msgstr "Нет индекса/подиндекса ({a1},{a2}) в ID: {a3} (переменная {a4})" +#: ../etherlab/EthercatCFileGenerator.py:438 +#, python-format +msgid "No sync manager available for %s pdo!" +msgstr "Нет доступных менеджеров синхронизации для pdo %s!" + #: ../dialogs/BrowseValuesLibraryDialog.py:87 msgid "No valid value selected!" msgstr "Не выбрано допустимое значение!" -#: ../PLCGenerator.py:1676 +#: ../PLCGenerator.py:1725 #, python-format msgid "No variable defined in \"%s\" POU" msgstr "Переменная не определена в POU \"%s\"" +#: ../etherlab/ConfigEditor.py:606 +#, python-format +msgid "Node Position: %d" +msgstr "Позиция узла: %d" + +#: ../etherlab/ConfigEditor.py:697 +msgid "Node filter:" +msgstr "Фильтр узла:" + +#: ../etherlab/ConfigEditor.py:717 +msgid "Nodes variables filter:" +msgstr "Фильтр переменных узлов:" + #: ../canfestival/config_utils.py:379 #, python-brace-format msgid "Non existing node ID : {a1} (variable {a2})" @@ -2388,6 +2826,10 @@ msgid "Not equal to" msgstr "Не равно" +#: ../etherlab/EtherCATManagementEditor.py:361 +msgid "Now Uploading..." +msgstr "Выполняется загрузка ..." + #: ../dialogs/SFCDivergenceDialog.py:91 msgid "Number of sequences:" msgstr "Число ветвей:" @@ -2396,7 +2838,11 @@ msgid "Numerical" msgstr "Математические функции" -#: ../editors/CodeFileEditor.py:736 +#: ../bacnet/BacnetSlaveEditor.py:808 +msgid "Object Properties:" +msgstr "Свойства объекта:" + +#: ../editors/CodeFileEditor.py:755 msgid "OnChange" msgstr "При изменении" @@ -2413,7 +2859,7 @@ msgid "Open Inkscape" msgstr "Открыть Inkscape" -#: ../version.py:86 +#: ../version.py:88 msgid "" "Open Source framework for automation, implemented IEC 61131 IDE with " "constantly growing set of extensions and flexible PLC runtime." @@ -2422,11 +2868,11 @@ "из среды разработки программ по стандарту МЭК 61131 с постоянно " "расширяющимся набором плагинов и гибкой системой исполнения для ПЛК." -#: ../ProjectController.py:1879 +#: ../ProjectController.py:1962 msgid "Open a file explorer to manage project files" msgstr "Открыть файловый менеджер для просмотра файлов проекта" -#: ../wxglade_hmi/wxglade_hmi.py:161 +#: ../wxglade_hmi/wxglade_hmi.py:176 msgid "Open wxGlade" msgstr "Открыть wxGlade" @@ -2434,11 +2880,11 @@ msgid "Option" msgstr "Квалификатор" -#: ../dialogs/FindInPouDialog.py:84 ../editors/CodeFileEditor.py:737 +#: ../dialogs/FindInPouDialog.py:84 ../editors/CodeFileEditor.py:756 msgid "Options" msgstr "Настройки" -#: ../controls/ProjectPropertiesPanel.py:109 +#: ../controls/ProjectPropertiesPanel.py:111 msgid "Organization (optional):" msgstr "Организация (опционально):" @@ -2446,14 +2892,21 @@ msgid "Other Profile" msgstr "Другой профиль" -#: ../dialogs/SFCStepDialog.py:74 ../dialogs/FBDVariableDialog.py:42 +#: ../dialogs/SFCStepDialog.py:74 ../dialogs/FBDVariableDialog.py:65 #: ../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 +#: ../editors/Viewer.py:1663 ../editors/TextViewer.py:307 +#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:86 +#: ../controls/VariablePanel.py:316 ../controls/VariablePanel.py:379 msgid "Output" msgstr "Выход" +#: ../etherlab/EthercatCFileGenerator.py:170 +#, python-brace-format +msgid "" +"Output variables can't be defined with different locations ({a1} and {a2})" +msgstr "" +"Выходные переменные не могут быть определены в разных местах ({a1} и {a2})" + #: ../canfestival/SlaveEditor.py:67 ../canfestival/NetworkEditor.py:91 msgid "PDO Receive" msgstr "PDO приема" @@ -2462,26 +2915,39 @@ msgid "PDO Transmit" msgstr "PDO передачи" +#: ../etherlab/etherlab.py:164 +msgid "PDO alignment" +msgstr "Выравнивание PDO" + #: ../targets/toolchain_gcc.py:174 msgid "PLC :\n" msgstr "ПЛК:\n" -#: ../BeremizIDE.py:383 +#: ../BeremizIDE.py:379 msgid "PLC Log" msgstr "Лог ПЛК" -#: ../ProjectController.py:1082 +#: ../ProjectController.py:1129 msgid "PLC code generation failed !\n" msgstr "Неудачная генерация кода!\n" -#: ../Beremiz_service.py:305 +#: ../etherlab/EtherCATManagementEditor.py:250 +msgid "PLC is Not Started" +msgstr "ПЛК не запущен" + +#: ../Beremiz_service.py:318 msgid "PLC is empty or already started." msgstr "В ПЛК нет программы или он уже запущен." -#: ../Beremiz_service.py:312 +#: ../Beremiz_service.py:325 msgid "PLC is not started." msgstr "ПЛК незапущен." +#: ../etherlab/EtherCATManagementEditor.py:2160 +#: ../etherlab/CommonEtherCATFunction.py:1589 +msgid "PLC not connected!" +msgstr "ПЛК не подключен!" + #: ../PLCOpenEditor.py:180 ../PLCOpenEditor.py:293 #, python-brace-format msgid "" @@ -2513,28 +2979,28 @@ msgid "PORT" msgstr "Порт" -#: ../dialogs/PouDialog.py:109 +#: ../dialogs/PouDialog.py:144 msgid "POU Name" msgstr "Имя POU" -#: ../dialogs/PouDialog.py:66 +#: ../dialogs/PouDialog.py:64 msgid "POU Name:" msgstr "Имя POU:" -#: ../dialogs/PouDialog.py:111 +#: ../dialogs/PouDialog.py:146 msgid "POU Type" msgstr "Тип POU" -#: ../dialogs/PouDialog.py:73 +#: ../dialogs/PouDialog.py:71 msgid "POU Type:" msgstr "Тип POU:" -#: ../connectors/PYRO/__init__.py:52 +#: ../connectors/PYRO/__init__.py:53 #, python-format msgid "PYRO connecting to URI : %s\n" msgstr "PYRO подключение к URI: %s\n" -#: ../connectors/PYRO/__init__.py:68 +#: ../connectors/PYRO/__init__.py:69 #, python-format msgid "PYRO using certificates in '%s' \n" msgstr "PYRO использует сертификаты в '%s'\n" @@ -2543,11 +3009,11 @@ msgid "Page Setup" msgstr "Настройки страницы" -#: ../controls/ProjectPropertiesPanel.py:124 +#: ../controls/ProjectPropertiesPanel.py:127 msgid "Page Size (optional):" msgstr "Размер страницы (опционально):" -#: ../IDEFrame.py:2640 +#: ../IDEFrame.py:2660 #, python-format msgid "Page: %d" msgstr "Страница: %d" @@ -2556,11 +3022,11 @@ msgid "Parent instance" msgstr "Родительский экземпляр" -#: ../editors/Viewer.py:696 ../IDEFrame.py:374 ../IDEFrame.py:428 +#: ../editors/Viewer.py:699 ../IDEFrame.py:377 ../IDEFrame.py:429 msgid "Paste" msgstr "Вставить" -#: ../IDEFrame.py:1899 +#: ../IDEFrame.py:1916 msgid "Paste POU" msgstr "Вставить POU" @@ -2572,7 +3038,11 @@ msgid "Pin number:" msgstr "Номер пина:" -#: ../editors/Viewer.py:2792 ../editors/Viewer.py:3060 +#: ../runtime/NevowServer.py:163 +msgid "Platform" +msgstr "Платформа" + +#: ../editors/Viewer.py:2791 ../editors/Viewer.py:3059 #: ../editors/SFCViewer.py:785 msgid "Please choose a target" msgstr "Выберите цель перехода" @@ -2581,7 +3051,7 @@ msgid "Please enter a block name" msgstr "Введите имя блока" -#: ../editors/Viewer.py:2661 ../editors/Viewer.py:3103 +#: ../dialogs/CommentEditDialog.py:52 msgid "Please enter comment text" msgstr "Введите текст комментария" @@ -2590,7 +3060,8 @@ msgid "Please enter step name" msgstr "Введите имя шага" -#: ../dialogs/PouNameDialog.py:37 ../Beremiz_service.py:209 +#: ../dialogs/SFCStepNameDialog.py:37 ../dialogs/PouNameDialog.py:37 +#: ../Beremiz_service.py:222 msgid "Please enter text" msgstr "Введите текст" @@ -2599,15 +3070,19 @@ msgid "Please enter value for a \"%s\" variable:" msgstr "Введите значение для переменной \"%s\":" -#: ../Beremiz_service.py:327 +#: ../Beremiz_service.py:340 msgid "Port number must be 0 <= port <= 65535!" msgstr "Номер порта должен быть в диапазоне от 0 до 65535!" -#: ../Beremiz_service.py:327 +#: ../Beremiz_service.py:340 msgid "Port number must be an integer!" msgstr "Номер порта должен быть целым числом!" -#: ../editors/Viewer.py:633 ../editors/Viewer.py:2449 +#: ../etherlab/ConfigEditor.py:47 ../etherlab/ConfigEditor.py:465 +msgid "Position" +msgstr "Позиция" + +#: ../editors/Viewer.py:636 ../editors/Viewer.py:2451 msgid "Power Rail" msgstr "Шина питания" @@ -2628,7 +3103,7 @@ msgid "Print" msgstr "Печать" -#: ../IDEFrame.py:1110 +#: ../IDEFrame.py:1123 msgid "Print preview" msgstr "Предварительный просмотр" @@ -2640,33 +3115,37 @@ msgid "Priority:" msgstr "Приоритет:" -#: ../runtime/PLCObject.py:518 +#: ../runtime/PLCObject.py:523 #, python-format msgid "Problem starting PLC : error %d" msgstr "Проблема запуска ПЛК: ошибка %d" -#: ../dialogs/ProjectDialog.py:63 +#: ../etherlab/ConfigEditor.py:647 +msgid "Process variables mapped between nodes:" +msgstr "Переменные процесса отображаемые между узлами:" + +#: ../dialogs/ProjectDialog.py:61 msgid "Product Name" msgstr "Имя продукта" -#: ../controls/ProjectPropertiesPanel.py:90 +#: ../controls/ProjectPropertiesPanel.py:91 msgid "Product Name (required):" msgstr "Имя продукта (обязательно):" -#: ../controls/ProjectPropertiesPanel.py:92 +#: ../controls/ProjectPropertiesPanel.py:93 msgid "Product Release (optional):" msgstr "Релиз продукта (опционально):" -#: ../dialogs/ProjectDialog.py:64 +#: ../dialogs/ProjectDialog.py:62 msgid "Product Version" msgstr "Версия продукта" -#: ../controls/ProjectPropertiesPanel.py:91 +#: ../controls/ProjectPropertiesPanel.py:92 msgid "Product Version (required):" msgstr "Версия продукта (обязательно):" -#: ../dialogs/SearchInProjectDialog.py:42 ../IDEFrame.py:1778 -#: ../IDEFrame.py:1975 +#: ../dialogs/SearchInProjectDialog.py:42 ../IDEFrame.py:1795 +#: ../IDEFrame.py:1992 msgid "Program" msgstr "Программа" @@ -2682,7 +3161,7 @@ msgid "Programs can't be used by other POUs!" msgstr "Программы не могут использоваться другими POU!" -#: ../controls/ProjectPropertiesPanel.py:94 ../IDEFrame.py:601 +#: ../controls/ProjectPropertiesPanel.py:95 ../IDEFrame.py:607 msgid "Project" msgstr "Проект" @@ -2691,19 +3170,19 @@ msgid "Project '%s':" msgstr "Проект '%s':" -#: ../ProjectController.py:1878 +#: ../ProjectController.py:1961 msgid "Project Files" msgstr "Файлы проекта" -#: ../dialogs/ProjectDialog.py:62 +#: ../dialogs/ProjectDialog.py:60 msgid "Project Name" msgstr "Имя проекта" -#: ../controls/ProjectPropertiesPanel.py:88 +#: ../controls/ProjectPropertiesPanel.py:89 msgid "Project Name (required):" msgstr "Имя проекта (обязательно):" -#: ../controls/ProjectPropertiesPanel.py:89 +#: ../controls/ProjectPropertiesPanel.py:90 msgid "Project Version (optional):" msgstr "Версия проекта (опционально):" @@ -2732,16 +3211,16 @@ msgid "Properties" msgstr "Свойства" -#: ../Beremiz_service.py:427 +#: ../Beremiz_service.py:440 msgid "Publishing service on local network" msgstr "Сервис доступен в локальной сети" -#: ../connectors/PYRO/__init__.py:126 +#: ../connectors/PYRO/__init__.py:127 #, python-format msgid "Pyro exception: %s\n" msgstr "Исключение Pyro: %s\n" -#: ../Beremiz_service.py:420 +#: ../Beremiz_service.py:433 msgid "Pyro port :" msgstr "Порт Pyro :" @@ -2749,7 +3228,7 @@ msgid "Python code" msgstr "Код на python" -#: ../features.py:34 +#: ../features.py:23 msgid "Python file" msgstr "Python файл" @@ -2757,19 +3236,23 @@ msgid "Qualifier" msgstr "Спецификатор" -#: ../BeremizIDE.py:263 ../PLCOpenEditor.py:101 ../Beremiz_service.py:283 +#: ../BeremizIDE.py:263 ../PLCOpenEditor.py:101 ../Beremiz_service.py:296 msgid "Quit" msgstr "Выход" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:227 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:224 msgid "Range:" msgstr "Диапазон:" -#: ../ProjectController.py:1872 +#: ../ProjectController.py:1955 msgid "Raw IEC code" msgstr "МЭК-код" -#: ../BeremizIDE.py:1083 +#: ../etherlab/ConfigEditor.py:344 +msgid "Read from (nodeid, index, subindex)" +msgstr "Чтение из (узел, индекс, субиндекс)" + +#: ../BeremizIDE.py:1080 #, python-format msgid "Really delete node '%s'?" msgstr "Действительно удалить элемент '%s'?" @@ -2778,7 +3261,7 @@ msgid "Realm:" msgstr "Realm:" -#: ../IDEFrame.py:367 ../IDEFrame.py:424 +#: ../IDEFrame.py:370 ../IDEFrame.py:425 msgid "Redo" msgstr "Повторить" @@ -2786,10 +3269,14 @@ msgid "Reference" msgstr "Ссылка" -#: ../dialogs/DiscoveryDialog.py:109 ../IDEFrame.py:434 +#: ../dialogs/DiscoveryDialog.py:109 ../IDEFrame.py:436 msgid "Refresh" msgstr "Обновить" +#: ../etherlab/EtherCATManagementEditor.py:1965 +msgid "Register Modify Dialog" +msgstr "Диалог изменения записи" + #: ../dialogs/SearchInProjectDialog.py:70 msgid "Regular expression" msgstr "Регулярное выражение" @@ -2798,7 +3285,7 @@ msgid "Regular expressions" msgstr "Регулярные выражения" -#: ../editors/Viewer.py:1636 +#: ../editors/Viewer.py:1638 msgid "Release value" msgstr "Освободить значение" @@ -2806,16 +3293,16 @@ msgid "Remainder (modulo)" msgstr "Остаток от деления (modulo)" -#: ../BeremizIDE.py:1084 +#: ../BeremizIDE.py:1081 #, python-format msgid "Remove %s node" msgstr "Удалить %s элемент" -#: ../IDEFrame.py:2445 +#: ../IDEFrame.py:2463 msgid "Remove Datatype" msgstr "Удалить тип данных" -#: ../IDEFrame.py:2450 +#: ../IDEFrame.py:2468 msgid "Remove Pou" msgstr "Удалить POU" @@ -2827,35 +3314,52 @@ msgid "Remove element" msgstr "Удалить элемент" -#: ../editors/FileManagementPanel.py:66 +#: ../etherlab/ConfigEditor.py:1353 +msgid "Remove file from database" +msgstr "Удалить файл из базы данных" + +#: ../editors/FileManagementPanel.py:65 msgid "Remove file from left folder" msgstr "Удалить файл из левой директории" -#: ../editors/ResourceEditor.py:284 +#: ../etherlab/ConfigEditor.py:1389 +msgid "Remove file from library" +msgstr "Удалить файл из библиотеки" + +#: ../editors/ResourceEditor.py:282 msgid "Remove instance" msgstr "Удалить экземпляр" +#: ../etherlab/ConfigEditor.py:653 +msgid "Remove process variable" +msgstr "Удалить переменную процесса" + #: ../canfestival/NetworkEditor.py:111 msgid "Remove slave" msgstr "Удалить ведомое устройство" -#: ../editors/ResourceEditor.py:253 +#: ../etherlab/ConfigEditor.py:680 +msgid "Remove startup service variable" +msgstr "Удалить служебную переменную запуска" + +#: ../editors/ResourceEditor.py:251 msgid "Remove task" msgstr "Удалить задачу" -#: ../editors/CodeFileEditor.py:655 ../controls/VariablePanel.py:482 +#: ../bacnet/BacnetSlaveEditor.py:812 ../editors/CodeFileEditor.py:673 +#: ../controls/VariablePanel.py:484 msgid "Remove variable" msgstr "Удалить переменную" -#: ../IDEFrame.py:1979 +#: ../IDEFrame.py:1996 msgid "Rename" msgstr "Переименовать" -#: ../editors/FileManagementPanel.py:187 +#: ../editors/FileManagementPanel.py:186 msgid "Replace File" msgstr "Заменить файл" -#: ../editors/Viewer.py:598 +#: ../editors/Viewer.py:601 msgid "Replace Wire by connections" msgstr "Заменить цепь подключениями" @@ -2867,11 +3371,11 @@ msgid "Reset" msgstr "Сброс" -#: ../editors/Viewer.py:681 +#: ../editors/Viewer.py:684 msgid "Reset Execution Order" msgstr "Сбросить порядок исполнения" -#: ../IDEFrame.py:453 +#: ../IDEFrame.py:459 msgid "Reset Perspective" msgstr "Сбросить представление" @@ -2879,7 +3383,7 @@ msgid "Reset search result" msgstr "Сбросить результаты поиска" -#: ../BeremizIDE.py:1015 ../plcopen/types_enums.py:77 +#: ../BeremizIDE.py:1012 ../plcopen/types_enums.py:77 msgid "Resources" msgstr "Ресурсы" @@ -2887,11 +3391,11 @@ msgid "Retain" msgstr "Retain" -#: ../controls/VariablePanel.py:455 +#: ../controls/VariablePanel.py:457 msgid "Return Type:" msgstr "Возвращаемый тип:" -#: ../editors/Viewer.py:582 +#: ../editors/Viewer.py:585 msgid "Right" msgstr "Право" @@ -2899,7 +3403,7 @@ msgid "Right PowerRail" msgstr "Правая шина питания" -#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:555 +#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:558 msgid "Rising Edge" msgstr "Нарастающий фронт" @@ -2915,15 +3419,15 @@ msgid "Rounding up/down" msgstr "Округление вверх/вниз" -#: ../ProjectController.py:1828 +#: ../ProjectController.py:1911 msgid "Run" msgstr "Старт" -#: ../ProjectController.py:1127 +#: ../ProjectController.py:1175 msgid "Runtime IO extensions C code generation failed !\n" msgstr "Ошибка генерации C-кода для расширений ввода-вывода!\n" -#: ../ProjectController.py:1136 +#: ../ProjectController.py:1186 msgid "Runtime library extensions C code generation failed !\n" msgstr "Ошибка генерации C-кода для библиотеки расширений системы исполнения!\n" @@ -2935,11 +3439,11 @@ msgid "SDO Server" msgstr "SDO сервер" -#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158 +#: ../dialogs/PouDialog.py:128 ../controls/ProjectPropertiesPanel.py:161 msgid "SFC" msgstr "SFC" -#: ../PLCGenerator.py:1433 +#: ../PLCGenerator.py:1482 #, python-brace-format msgid "SFC jump in pou \"{a1}\" refers to non-existent SFC step \"{a2}\"" msgstr "" @@ -2952,7 +3456,7 @@ msgstr "SFC переход в POU \"%s\" должен быть подключен." #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36 -#: ../dialogs/PouDialog.py:44 +#: ../dialogs/PouDialog.py:128 msgid "ST" msgstr "ST" @@ -2964,7 +3468,7 @@ msgid "SVG files (*.svg)|*.svg|All files|*.*" msgstr "SVG файлы (*.svg)|*.svg|Все файлы|*.*" -#: ../features.py:36 +#: ../features.py:25 msgid "SVGUI" msgstr "SVGUI" @@ -2981,38 +3485,48 @@ msgid "Save as" msgstr "Сохранить как" -#: ../ProjectController.py:530 +#: ../etherlab/EtherCATManagementEditor.py:941 +#: ../etherlab/EtherCATManagementEditor.py:1289 +msgid "Save as..." +msgstr "Сохранить как..." + +#: ../ProjectController.py:546 msgid "Save path is the same as path of a project! \n" msgstr "Выбранный путь совпадает с путём проекта!\n" +#: ../etherlab/EthercatMaster.py:455 ../etherlab/EthercatMaster.py:764 +#: ../etherlab/EthercatMaster.py:765 +msgid "Scan Network" +msgstr "Сканировать сеть" + #: ../dialogs/SearchInProjectDialog.py:73 msgid "Scope" msgstr "Область действия" -#: ../IDEFrame.py:644 +#: ../IDEFrame.py:650 msgid "Search" msgstr "Поиск" -#: ../dialogs/SearchInProjectDialog.py:49 ../IDEFrame.py:384 -#: ../IDEFrame.py:430 +#: ../dialogs/SearchInProjectDialog.py:49 ../IDEFrame.py:387 +#: ../IDEFrame.py:431 msgid "Search in Project" msgstr "Поиск в проекте" -#: ../dialogs/DurationEditorDialog.py:49 +#: ../dialogs/DurationEditorDialog.py:60 msgid "Seconds:" msgstr "Секунды:" -#: ../IDEFrame.py:390 +#: ../IDEFrame.py:393 msgid "Select All" msgstr "Выделить все" #: ../editors/Viewer.py:331 ../editors/TextViewer.py:305 -#: ../controls/LocationCellEditor.py:101 ../controls/VariablePanel.py:315 -#: ../controls/VariablePanel.py:378 +#: ../controls/LocationCellEditor.py:101 ../controls/VariablePanel.py:314 +#: ../controls/VariablePanel.py:377 msgid "Select a variable class:" msgstr "Выберите класс переменной:" -#: ../ProjectController.py:1293 +#: ../ProjectController.py:1354 msgid "Select an editor:" msgstr "Выберите редактор:" @@ -3020,11 +3534,11 @@ msgid "Select an instance" msgstr "Выберите экземпляр" -#: ../IDEFrame.py:628 +#: ../IDEFrame.py:634 msgid "Select an object" msgstr "Выберите объект" -#: ../ProjectController.py:537 +#: ../ProjectController.py:555 msgid "Selected directory already contains another project. Overwrite? \n" msgstr "Выбранная директория уже содержит другой проект. Перезаписать?\n" @@ -3040,6 +3554,14 @@ msgid "Selection Divergence" msgstr "Альтернативное ветвление" +#: ../runtime/NevowServer.py:182 +msgid "Send" +msgstr "Отправить" + +#: ../runtime/NevowServer.py:181 +msgid "Send a message to the log" +msgstr "Отправить сообщение в журнал" + #: ../dialogs/DiscoveryDialog.py:135 msgid "Service Discovery" msgstr "Поиск сервиса" @@ -3048,7 +3570,7 @@ msgid "Services available:" msgstr "Доступные сервисы:" -#: ../dialogs/LDElementDialog.py:79 +#: ../dialogs/LDElementDialog.py:79 ../runtime/WampClient.py:434 msgid "Set" msgstr "Установить" @@ -3060,7 +3582,7 @@ msgid "Shift right" msgstr "Сдвиг вправо" -#: ../ProjectController.py:1863 +#: ../ProjectController.py:1946 msgid "Show IEC code generated by PLCGenerator" msgstr "Показать код, сгенерированный PLCGenerator" @@ -3072,7 +3594,7 @@ msgid "Show Master generated by config_utils" msgstr "Показать ведущий узел сгенерированный config_utils" -#: ../ProjectController.py:1862 +#: ../ProjectController.py:1945 msgid "Show code" msgstr "Показать код" @@ -3092,6 +3614,14 @@ msgid "Single" msgstr "Источник" +#: ../etherlab/EtherCATManagementEditor.py:361 +msgid "Slave SDO Monitoring" +msgstr "Мониторинг ведомых SDO" + +#: ../etherlab/ConfigEditor.py:135 +msgid "Slave entries" +msgstr "Ведомые записи" + #: ../targets/toolchain_makefile.py:130 msgid "Source didn't change, no build.\n" msgstr "Исходные файлы не изменились, сборка не нужна.\n" @@ -3112,44 +3642,56 @@ msgid "Standard function blocks" msgstr "Стандартные функциональные блоки" -#: ../ProjectController.py:1829 ../Beremiz_service.py:271 +#: ../etherlab/ConfigEditor.py:68 +msgid "Standardized Device Profile" +msgstr "Стандартизованный профиль устройства" + +#: ../etherlab/EtherCATManagementEditor.py:37 +msgid "Start Address" +msgstr "Начальный адрес" + +#: ../ProjectController.py:1912 ../Beremiz_service.py:284 msgid "Start PLC" msgstr "Запустить ПЛК" -#: ../ProjectController.py:1074 +#: ../ProjectController.py:1121 #, python-format msgid "Start build in %s\n" msgstr "Сборка запущена в %s\n" -#: ../ProjectController.py:1397 +#: ../runtime/PlcStatus.py:12 msgid "Started" msgstr "Работа" -#: ../ProjectController.py:1633 +#: ../ProjectController.py:1714 msgid "Starting PLC\n" msgstr "ПЛК запускается\n" -#: ../BeremizIDE.py:393 +#: ../etherlab/ConfigEditor.py:674 +msgid "Startup service variables assignments:" +msgstr "Назначение переменных службы запуска:" + +#: ../BeremizIDE.py:389 msgid "Status ToolBar" msgstr "Панель статуса" -#: ../editors/Viewer.py:651 ../editors/Viewer.py:2424 +#: ../editors/Viewer.py:654 ../editors/Viewer.py:2426 msgid "Step" msgstr "Шаг" -#: ../ProjectController.py:1835 +#: ../ProjectController.py:1918 msgid "Stop" msgstr "Стоп" -#: ../Beremiz_service.py:272 +#: ../Beremiz_service.py:285 msgid "Stop PLC" msgstr "Остановить ПЛК" -#: ../ProjectController.py:1836 +#: ../ProjectController.py:1919 msgid "Stop Running PLC" msgstr "Остановить запущенный ПЛК" -#: ../ProjectController.py:1398 +#: ../runtime/PlcStatus.py:13 msgid "Stopped" msgstr "Стоп" @@ -3157,6 +3699,14 @@ msgid "Structure" msgstr "Структура" +#: ../etherlab/ConfigEditor.py:48 +msgid "SubIndex" +msgstr "Cубиндекс" + +#: ../etherlab/ConfigEditor.py:465 +msgid "Subindex" +msgstr "Subindex" + #: ../editors/DataTypeEditor.py:60 msgid "Subrange" msgstr "Поддиапазон" @@ -3165,11 +3715,11 @@ msgid "Subtraction" msgstr "Вычитание" -#: ../ProjectController.py:1113 +#: ../ProjectController.py:1160 msgid "Successfully built.\n" msgstr "Сборка прошла успешно.\n" -#: ../IDEFrame.py:449 +#: ../IDEFrame.py:451 msgid "Switch perspective" msgstr "Сменить представление" @@ -3185,19 +3735,19 @@ msgid "Tangent" msgstr "Тангенс" -#: ../editors/ResourceEditor.py:97 +#: ../editors/ResourceEditor.py:94 msgid "Task" msgstr "Задача" -#: ../editors/ResourceEditor.py:248 +#: ../editors/ResourceEditor.py:246 msgid "Tasks:" msgstr "Задачи:" -#: ../controls/VariablePanel.py:91 +#: ../controls/VariablePanel.py:88 msgid "Temp" msgstr "Временный" -#: ../version.py:35 +#: ../version.py:37 msgid "" "The best place to ask questions about Beremiz/PLCOpenEditor\n" "is project's mailing list: beremiz-devel@lists.sourceforge.net\n" @@ -3219,7 +3769,15 @@ "Вы можете подписаться на список рассылки здесь:\n" "https://lists.sourceforge.net/lists/listinfo/beremiz-devel" -#: ../editors/FileManagementPanel.py:186 +#: ../etherlab/EthercatMaster.py:454 +msgid "" +"The current network configuration will be deleted.\n" +"Do you want to continue?" +msgstr "" +"Текущая конфигурация сети будет удалена.\n" +"Вы хотите продолжить?" + +#: ../editors/FileManagementPanel.py:185 #, python-format msgid "" "The file '%s' already exist.\n" @@ -3228,15 +3786,20 @@ "Файл '%s' уже существует.\n" "Вы хотите заменить его?" +#: ../etherlab/EtherCATManagementEditor.py:928 +#: ../etherlab/EtherCATManagementEditor.py:1320 +msgid "The file does not exist!" +msgstr "Файл не существует!" + #: ../editors/LDViewer.py:893 msgid "The group of block must be coherent!" msgstr "Группа блоков должна быть связанной!" -#: ../BeremizIDE.py:573 ../IDEFrame.py:1046 +#: ../BeremizIDE.py:569 ../IDEFrame.py:1059 msgid "There are changes, do you want to save?" msgstr "Хотите сохранить изменения?" -#: ../IDEFrame.py:1691 ../IDEFrame.py:1710 +#: ../IDEFrame.py:1708 ../IDEFrame.py:1727 #, python-format msgid "" "There is a POU named \"%s\". This could cause a conflict. Do you wish to " @@ -3245,7 +3808,7 @@ "Существует POU с именем \"%s\". Это может вызвать конфликт. Хотите " "продолжить?" -#: ../IDEFrame.py:1133 +#: ../IDEFrame.py:1146 msgid "" "There was a problem printing.\n" "Perhaps your current printer is not set correctly?" @@ -3257,7 +3820,7 @@ msgid "This option isn't available yet!" msgstr "Это опция еще не доступна!" -#: ../controls/DebugVariablePanel/DebugVariablePanel.py:567 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:546 #, python-format msgid "Tick: %d" msgstr "Цикл: %d" @@ -3295,36 +3858,40 @@ msgid "Time-of-day subtraction" msgstr "Вычитание времени суток" +#: ../IDEFrame.py:432 +msgid "Toggle fullscreen mode" +msgstr "Переключить полноэкранный режим" + #: ../dialogs/ForceVariableDialog.py:188 msgid "Toggle value" msgstr "Переключить значение" -#: ../editors/Viewer.py:584 +#: ../editors/Viewer.py:587 msgid "Top" msgstr "Верх" -#: ../ProjectController.py:1848 +#: ../ProjectController.py:1931 msgid "Transfer" msgstr "Передать" -#: ../ProjectController.py:1849 +#: ../ProjectController.py:1932 msgid "Transfer PLC" msgstr "Передать ПЛК" -#: ../ProjectController.py:1802 +#: ../ProjectController.py:1884 msgid "Transfer completed successfully.\n" msgstr "Передача успешно завершена.\n" -#: ../ProjectController.py:1805 +#: ../ProjectController.py:1887 msgid "Transfer failed\n" msgstr "Ошибка передачи\n" -#: ../editors/Viewer.py:652 ../editors/Viewer.py:2426 -#: ../editors/Viewer.py:2453 +#: ../editors/Viewer.py:655 ../editors/Viewer.py:2428 +#: ../editors/Viewer.py:2455 msgid "Transition" msgstr "Переход" -#: ../PLCGenerator.py:1564 +#: ../PLCGenerator.py:1613 #, python-format msgid "" "Transition \"%s\" body must contain an output variable or coil referring to " @@ -3333,20 +3900,20 @@ "Тело перехода \"%s\" должно содержать выходную переменную или катушку, " "ссылающуюся на его имя" -#: ../dialogs/PouTransitionDialog.py:91 +#: ../dialogs/PouTransitionDialog.py:90 msgid "Transition Name" msgstr "Имя перехода" -#: ../dialogs/PouTransitionDialog.py:60 +#: ../dialogs/PouTransitionDialog.py:59 msgid "Transition Name:" msgstr "Имя перехода:" -#: ../PLCGenerator.py:1657 +#: ../PLCGenerator.py:1706 #, python-brace-format msgid "Transition with content \"{a1}\" not connected to a next step in \"{a2}\" POU" msgstr "Переход с содержимым \"{a1}\" не подключен к следующему шагу в POU \"{a2}\"" -#: ../PLCGenerator.py:1646 +#: ../PLCGenerator.py:1695 #, python-brace-format msgid "" "Transition with content \"{a1}\" not connected to a previous step in " @@ -3370,17 +3937,17 @@ msgid "Triggering" msgstr "Запуск" -#: ../Beremiz_service.py:490 +#: ../Beremiz_service.py:503 msgid "Twisted unavailable." msgstr "Модуль Twisted недоступен." -#: ../dialogs/ActionBlockDialog.py:42 ../editors/ResourceEditor.py:97 -#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:733 -#: ../controls/VariablePanel.py:61 +#: ../dialogs/ActionBlockDialog.py:42 ../etherlab/ConfigEditor.py:48 +#: ../editors/ResourceEditor.py:94 ../editors/DataTypeEditor.py:55 +#: ../editors/CodeFileEditor.py:752 ../controls/VariablePanel.py:61 msgid "Type" msgstr "Тип" -#: ../dialogs/BrowseLocationsDialog.py:54 +#: ../dialogs/BrowseLocationsDialog.py:51 msgid "Type and derivated" msgstr "Тип и его производные" @@ -3397,16 +3964,25 @@ msgid "Type infos:" msgstr "Информация о типе:" -#: ../dialogs/BrowseLocationsDialog.py:55 +#: ../etherlab/EthercatCFileGenerator.py:76 +#, python-format +msgid "Type of location \"%s\" not yet supported!" +msgstr "Тип адреса \"%s\" пока не поддерживается!" + +#: ../dialogs/BrowseLocationsDialog.py:52 msgid "Type strict" msgstr "Только данный тип" #: ../dialogs/SFCDivergenceDialog.py:60 ../dialogs/SFCTransitionDialog.py:59 -#: ../dialogs/LDPowerRailDialog.py:58 ../dialogs/BrowseLocationsDialog.py:111 +#: ../dialogs/LDPowerRailDialog.py:58 ../dialogs/BrowseLocationsDialog.py:110 #: ../dialogs/FBDBlockDialog.py:69 ../dialogs/ConnectionDialog.py:61 msgid "Type:" msgstr "Тип:" +#: ../runtime/WampClient.py:129 +msgid "TypeError register option: {}" +msgstr "TypeError настроек регистрации : {}" + #: ../connectors/PYRO/dialog.py:39 ../connectors/WAMP/dialog.py:42 msgid "URI host:" msgstr "Узел:" @@ -3429,7 +4005,17 @@ msgid "Unable to get Xenomai's %s \n" msgstr "Невозможно получить Xenomai %s\n" -#: ../PLCGenerator.py:974 ../PLCGenerator.py:1252 +#: ../bacnet/bacnet.py:430 +#, python-format +msgid "Unable to load file \"%s\"!" +msgstr "Не удалось загрузить файл «%s»!" + +#: ../bacnet/bacnet.py:420 +#, python-format +msgid "Unable to save to file \"%s\"!" +msgstr "Не удалось сохранить файл «%s»!" + +#: ../PLCGenerator.py:1023 ../PLCGenerator.py:1301 #, python-brace-format msgid "Undefined block type \"{a1}\" in \"{a2}\" POU" msgstr "Неопределенный тип блока \"{a1}\" в POU \"{a2}\"" @@ -3439,20 +4025,27 @@ msgid "Undefined pou type \"%s\"" msgstr "Неопределенный тип POU \"%s\"" -#: ../IDEFrame.py:365 ../IDEFrame.py:423 +#: ../IDEFrame.py:368 ../IDEFrame.py:424 msgid "Undo" msgstr "Отмена" -#: ../ProjectController.py:442 +#: ../ProjectController.py:457 msgid "Unknown" msgstr "Неизвестно" +#: ../etherlab/EthercatCFileGenerator.py:470 +#, python-brace-format +msgid "Unknown entry index 0x{a1:.4x}, subindex 0x{a2:.2x} for device {a3}" +msgstr "" +"Неизвестная запись индекс 0x {a1: .4x}, субиндекс 0x {a2: .2x} для " +"устройства {a3}" + #: ../editors/Viewer.py:437 #, python-format msgid "Unknown variable \"%s\" for this POU!" msgstr "Неизвестная переменная \"%s\" для этого POU!" -#: ../ProjectController.py:439 ../ProjectController.py:440 +#: ../ProjectController.py:454 ../ProjectController.py:455 msgid "Unnamed" msgstr "Unnamed" @@ -3461,12 +4054,20 @@ msgid "Unnamed%d" msgstr "Unnamed%d" -#: ../controls/VariablePanel.py:308 +#: ../controls/VariablePanel.py:307 #, python-format msgid "Unrecognized data size \"%s\"" msgstr "Неопределенный размер данных \"%s\"" -#: ../editors/DataTypeEditor.py:646 ../controls/VariablePanel.py:841 +#: ../etherlab/EtherCATManagementEditor.py:2080 +msgid "Update" +msgstr "Обновить" + +#: ../runtime/WampClient.py:380 +msgid "Upload:" +msgstr "Загрузить:" + +#: ../editors/DataTypeEditor.py:646 ../controls/VariablePanel.py:852 msgid "User Data Types" msgstr "Пользовательские типы данных" @@ -3478,7 +4079,7 @@ msgid "User-defined POUs" msgstr "Пользовательские POU" -#: ../dialogs/ActionBlockDialog.py:42 +#: ../dialogs/ActionBlockDialog.py:42 ../etherlab/ConfigEditor.py:465 msgid "Value" msgstr "Значение" @@ -3486,24 +4087,29 @@ msgid "Values:" msgstr "Значения:" -#: ../dialogs/ActionBlockDialog.py:47 ../editors/Viewer.py:622 -#: ../editors/Viewer.py:2456 +#: ../dialogs/ActionBlockDialog.py:47 ../editors/Viewer.py:625 +#: ../editors/Viewer.py:2458 msgid "Variable" msgstr "Переменная" #: ../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 +#: ../editors/TextViewer.py:367 ../controls/VariablePanel.py:354 msgid "Variable Drop" msgstr "Перетаскивание переменной" -#: ../dialogs/FBDVariableDialog.py:68 +#: ../etherlab/ConfigEditor.py:70 +#, python-format +msgid "Variable Index: #x%4.4X" +msgstr "Индекс переменной: # x%4.4X" + +#: ../dialogs/FBDVariableDialog.py:58 msgid "Variable Properties" msgstr "Свойства переменных" #: ../editors/Viewer.py:332 ../editors/TextViewer.py:306 -#: ../controls/LocationCellEditor.py:102 ../controls/VariablePanel.py:316 -#: ../controls/VariablePanel.py:379 +#: ../controls/LocationCellEditor.py:102 ../controls/VariablePanel.py:315 +#: ../controls/VariablePanel.py:378 msgid "Variable class" msgstr "Класс переменной" @@ -3511,24 +4117,28 @@ msgid "Variable don't belong to this POU!" msgstr "Переменная не принадлежит этому POU!" +#: ../etherlab/ConfigEditor.py:280 +msgid "Variable entries:" +msgstr "Записи переменных:" + #: ../dialogs/LDElementDialog.py:92 msgid "Variable:" msgstr "Переменная:" -#: ../controls/VariablePanel.py:90 +#: ../controls/VariablePanel.py:87 msgid "Variables" msgstr "Переменные" -#: ../controls/ProjectPropertiesPanel.py:166 +#: ../controls/ProjectPropertiesPanel.py:169 msgid "Vertical:" msgstr "Вертикальный:" -#: ../runtime/WampClient.py:113 +#: ../runtime/WampClient.py:170 #, python-format msgid "WAMP Client connection failed (%s) .. retrying .." msgstr "Неудачное подключение WAMP (%s) .. повтор .." -#: ../runtime/WampClient.py:117 +#: ../runtime/WampClient.py:179 #, python-format msgid "WAMP Client connection lost (%s) .. retrying .." msgstr "WAMP соединение потеряно (%s) .. переподключение .." @@ -3537,49 +4147,66 @@ msgid "WAMP ID:" msgstr "WAMP ID:" -#: ../runtime/WampClient.py:172 +#: ../runtime/WampClient.py:413 +msgid "WAMP Server URL" +msgstr "URL-адрес сервера WAMP" + +#: ../runtime/WampClient.py:276 +msgid "WAMP authentication has no secret configured" +msgstr "Не настроен пароль для аутентификации WAMP" + +#: ../runtime/WampClient.py:304 +msgid "WAMP client can not connect to :" +msgstr "Клиент WAMP не может подключиться к:" + +#: ../runtime/WampClient.py:301 msgid "WAMP client connecting to :" msgstr "WAMP клиент подключается к :" -#: ../runtime/WampClient.py:148 -msgid "WAMP client connection not established!" -msgstr "Не удалось выполнить WAMP подключение!" - -#: ../Beremiz_service.py:625 +#: ../Beremiz_service.py:628 msgid "WAMP client startup failed. " 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 +#: ../runtime/WampClient.py:206 +msgid "WAMP configuration error : missing '{}' parameter." +msgstr "Ошибка конфигурации WAMP: отсутствует параметр «{}»." + +#: ../runtime/WampClient.py:192 +msgid "WAMP configuration error:" +msgstr "Ошибка конфигурации WAMP:" + +#: ../connectors/WAMP/__init__.py:100 #, python-format msgid "WAMP connecting to URL : %s\n" msgstr "WAMP подключение к URI: %s\n" -#: ../connectors/WAMP/__init__.py:140 +#: ../connectors/WAMP/__init__.py:141 msgid "WAMP connection timeout" msgstr "Тайм-аут WAMP подключения " -#: ../connectors/WAMP/__init__.py:158 +#: ../connectors/WAMP/__init__.py:159 #, python-format msgid "WAMP connection to '%s' failed.\n" msgstr "Не удалось установить WAMP подключение к %s.\n" -#: ../Beremiz_service.py:595 +#: ../runtime/WampClient.py:280 +msgid "WAMP deactivated in configuration" +msgstr "WAMP отключен в конфигурации" + +#: ../Beremiz_service.py:605 msgid "WAMP import failed :" msgstr "Ошибка импорта WAMP :" -#: ../runtime/WampClient.py:126 -msgid "WAMP load error: " -msgstr "Ошибка загрузки WAMP:" - -#: ../runtime/WampClient.py:108 +#: ../runtime/WampClient.py:241 +msgid "WAMP secret empty" +msgstr "Пустой пароль WAMP" + +#: ../runtime/WampClient.py:139 +#, python-format +msgid "WAMP session joined (%s) by:" +msgstr "Сессия WAMP присоединилась (%s) к: " + +#: ../runtime/WampClient.py:146 msgid "WAMP session left" msgstr "Завершение сеанса WAMP" @@ -3587,15 +4214,29 @@ msgid "WXGLADE GUI" msgstr "WXGLADE GUI" -#: ../runtime/WampClient.py:137 -msgid "Wamp secret load error:" -msgstr "Ошибка загрузки секретной информации Wamp:" - -#: ../dialogs/PouDialog.py:137 ../editors/LDViewer.py:902 +#: ../runtime/WampClient.py:432 +msgid "Wamp Settings" +msgstr "Настройки Wamp" + +#: ../dialogs/PouDialog.py:172 ../editors/LDViewer.py:902 msgid "Warning" msgstr "Предупреждение" -#: ../ProjectController.py:726 +#: ../etherlab/EthercatCFileGenerator.py:405 +#: ../etherlab/EthercatCFileGenerator.py:571 +msgid "Warning: " +msgstr "Предупреждение:" + +#: ../wxglade_hmi/wxglade_hmi.py:166 +msgid "" +"Warning: WxGlade HMI has no object with name identical to extension name, " +"and no python code is provided in start section to create object.\n" +msgstr "" +"Предупреждение: WxGlade HMI не имеет объекта с именем, идентичным имени " +"расширения, и в начале раздела для создания объекта не предоставляется код " +"python.\n" + +#: ../ProjectController.py:756 msgid "Warnings in ST/IL/SFC code generator :\n" msgstr "Предупреждения в ST/IL/SFC коде генераторе:\n" @@ -3603,7 +4244,7 @@ msgid "Whole Project" msgstr "Весь проект" -#: ../controls/ProjectPropertiesPanel.py:134 +#: ../controls/ProjectPropertiesPanel.py:137 msgid "Width:" msgstr "Ширина:" @@ -3611,14 +4252,47 @@ msgid "Wrap search" msgstr "Продолжить поиск сначала" +#: ../etherlab/ConfigEditor.py:345 +msgid "Write to (nodeid, index, subindex)" +msgstr "Запись в (узел, индекс, субиндекс)" + #: ../dialogs/AboutDialog.py:126 msgid "Written by" msgstr "Авторы" -#: ../features.py:35 +#: ../etherlab/EthercatCFileGenerator.py:409 +#: ../etherlab/EthercatCFileGenerator.py:499 +#, python-format +msgid "Wrong direction for location \"%s\"!" +msgstr "Неправильное направление для адреса «%s»!" + +#: ../etherlab/EthercatCFileGenerator.py:400 +#: ../etherlab/EthercatCFileGenerator.py:487 +#, python-format +msgid "Wrong type for location \"%s\"!" +msgstr "Неверный тип для адреса «%s»!" + +#: ../features.py:24 msgid "WxGlade GUI" msgstr "WxGlade GUI" +#: ../etherlab/ConfigEditor.py:1236 +msgid "XML files (*.xml)|*.xml|All files|*.*" +msgstr "XML файлы (*.xml)|*.xml|Все файлы|*.*" + +#: ../etherlab/EtherCATManagementEditor.py:652 +msgid "You can input only hex, dec value" +msgstr "Вы можете ввести только шестнадцатеричное или десятичное значение" + +#: ../etherlab/EtherCATManagementEditor.py:1999 +msgid "You can't modify it. This register is read-only or it's not connected." +msgstr "" +"Вы не можете изменить это. Этот регистр только для чтения или не подключен." + +#: ../etherlab/EtherCATManagementEditor.py:648 +msgid "You cannot SDO download this state" +msgstr "Вы не можете загрузить это состояние через SDO" + #: ../svgui/svgui.py:150 msgid "" "You don't have write permissions.\n" @@ -3627,7 +4301,7 @@ "У вас недостаточно прав для записи.\n" "Открыть Inkscape все равно?" -#: ../wxglade_hmi/wxglade_hmi.py:160 +#: ../wxglade_hmi/wxglade_hmi.py:175 msgid "" "You don't have write permissions.\n" "Open wxGlade anyway ?" @@ -3635,7 +4309,13 @@ "У вас недостаточно прав для записи.\n" "Открыть wxGlade все равно?" -#: ../ProjectController.py:390 +#: ../etherlab/EtherCATManagementEditor.py:2002 +msgid "You entered wrong value. You can enter dec or hex value only." +msgstr "" +"Вы ввели неверное значение. Вы можете ввести только десятичное или " +"шестнадцатеричное значение." + +#: ../ProjectController.py:403 msgid "" "You must have permission to work on the project\n" "Work on a project copy ?" @@ -3662,11 +4342,21 @@ msgid "You must type a value!" msgstr "Введите значение!" -#: ../IDEFrame.py:440 +#: ../IDEFrame.py:442 msgid "Zoom" msgstr "Приближение" -#: ../dialogs/DurationEditorDialog.py:158 +#: ../etherlab/EtherCATManagementEditor.py:911 +#: ../etherlab/EtherCATManagementEditor.py:1307 +msgid "bin files (*.bin)|*.bin" +msgstr "bin файлы (* .bin) | * .bin" + +#: ../etherlab/EtherCATManagementEditor.py:942 +#: ../etherlab/EtherCATManagementEditor.py:1290 +msgid "bin files (*.bin)|*.bin|All files|*.*" +msgstr "bin файлы (* .bin) | * .bin | Все файлы | *. *" + +#: ../dialogs/DurationEditorDialog.py:159 msgid "days" msgstr "дни" @@ -3680,35 +4370,39 @@ msgid "exited with status {a1} (pid {a2})\n" msgstr "завершился с кодом {a1} (pid {a2})\n" -#: ../dialogs/PouDialog.py:36 +#: ../dialogs/PouDialog.py:110 msgid "function" msgstr "функция" -#: ../dialogs/PouDialog.py:36 +#: ../dialogs/PouDialog.py:110 msgid "functionBlock" msgstr "функциональный блок" -#: ../dialogs/DurationEditorDialog.py:158 +#: ../dialogs/DurationEditorDialog.py:159 msgid "hours" msgstr "часы" -#: ../ProjectController.py:753 +#: ../ProjectController.py:784 msgid "matiec installation is not found\n" msgstr "Установка matiec не найдена\n" -#: ../dialogs/DurationEditorDialog.py:160 +#: ../dialogs/DurationEditorDialog.py:162 +msgid "microseconds" +msgstr "микросекунд" + +#: ../dialogs/DurationEditorDialog.py:161 msgid "milliseconds" msgstr "милисекунды" -#: ../dialogs/DurationEditorDialog.py:159 +#: ../dialogs/DurationEditorDialog.py:160 msgid "minutes" msgstr "минуты" -#: ../dialogs/PouDialog.py:36 +#: ../dialogs/PouDialog.py:110 msgid "program" msgstr "программа" -#: ../dialogs/DurationEditorDialog.py:159 +#: ../dialogs/DurationEditorDialog.py:160 msgid "seconds" msgstr "секунды" @@ -3724,6 +4418,10 @@ msgid "string right of" msgstr "строка справа от " +#: ../etherlab/EtherCATManagementEditor.py:323 +msgid "update" +msgstr "обновить" + #: ../Beremiz.py:167 msgid "update info unavailable." msgstr "информация об обновлениях недоступна." @@ -3776,6 +4474,33 @@ msgid "CAN_Driver" msgstr "CAN драйвер" +msgid "BACnetServerNode" +msgstr "Узел BACnet сервера" + +msgid "Network_Interface" +msgstr "Сетевой интерфейс" + +msgid "UDP_Port_Number" +msgstr "UDP порт" + +msgid "BACnet_Communication_Control_Password" +msgstr "Пароль для подключением BACnet" + +msgid "BACnet_Device_ID" +msgstr "Адрес BACnet устройства" + +msgid "BACnet_Device_Name" +msgstr "Имя BACnet устройства" + +msgid "BACnet_Device_Location" +msgstr "Расположение BACnet устройства" + +msgid "BACnet_Device_Description" +msgstr "Описание BACnet устройства" + +msgid "BACnet_Device_Application_Software_Version" +msgstr "Версия ПО BACnet устройства" + msgid "Generic" msgstr "Generic" @@ -3872,6 +4597,24 @@ msgid "MaxRemoteTCPclients" msgstr "Максимальное количество TCP клиентов" +msgid "CIA402SlaveParams" +msgstr "CIA402SlaveParams" + +msgid "Enable%s" +msgstr "Разрешить %s" + +msgid "ProcessVariables" +msgstr "ProcessVariables" + +msgid "variable" +msgstr "переменная" + +msgid "ReadFrom" +msgstr "Чтение из" + +msgid "WriteTo" +msgstr "Запись в" + msgid "BaseParams" msgstr "Базовые параметры" @@ -3902,9 +4645,6 @@ msgid "variables" msgstr "переменные" -msgid "variable" -msgstr "переменная" - msgid "name" msgstr "имя"