# HG changeset patch # User Andrey Skvortsov # Date 1461158453 -10800 # Node ID 00fb79aba7acebfe8f14bb0f2b029523990e2cbc # Parent 789acd7cc34725bc74300d9d0b1209f6b8ecf709 add i18n for couple of strings in TextViewer.py add source file for Russian translation update messages.pot and app.fil update Russian translation diff -r 789acd7cc347 -r 00fb79aba7ac editors/TextViewer.py --- a/editors/TextViewer.py Wed Apr 20 16:14:25 2016 +0300 +++ b/editors/TextViewer.py Wed Apr 20 16:20:53 2016 +0300 @@ -258,7 +258,7 @@ blockinputs = None if values[1] != "function": if blockname == "": - dialog = wx.TextEntryDialog(self.ParentWindow, "Block name", "Please enter a block name", "", wx.OK|wx.CANCEL|wx.CENTRE) + dialog = wx.TextEntryDialog(self.ParentWindow, _("Block name"), _("Please enter a block name"), "", wx.OK|wx.CANCEL|wx.CENTRE) if dialog.ShowModal() == wx.ID_OK: blockname = dialog.GetValue() else: diff -r 789acd7cc347 -r 00fb79aba7ac i18n/Beremiz_ru_RU.mo Binary file i18n/Beremiz_ru_RU.mo has changed diff -r 789acd7cc347 -r 00fb79aba7ac i18n/Beremiz_ru_RU.po --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/i18n/Beremiz_ru_RU.po Wed Apr 20 16:20:53 2016 +0300 @@ -0,0 +1,3635 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: Beremiz\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-04-20 13:39+0300\n" +"PO-Revision-Date: 2016-04-20 16:06+0300\n" +"Last-Translator: \n" +"Language-Team: Andrey Skvortsov \n" +"Language: ru_RU\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.7.1\n" + +#: ../PLCOpenEditor.py:396 +msgid "" +"\n" +"An error has occurred.\n" +"\n" +"Click OK to save an error report.\n" +"\n" +"Please be kind enough to send this file to:\n" +"edouard.tisserant@gmail.com\n" +"\n" +"Error:\n" +msgstr "" +"\n" +"Произошла ошибка.\n" +"\n" +"Нажмите OK, чтобы сохранить репорт об ошибке.\n" +"\n" +"Будьте так добры, пошлите этот файл:\n" +"edouard.tisserant@gmail.com\n" +"\n" +"Ошибка:\n" + +#: ../Beremiz.py:1157 +#, python-format +msgid "" +"\n" +"An unhandled exception (bug) occured. Bug report saved at :\n" +"(%s)\n" +"\n" +"Please be kind enough to send this file to:\n" +"beremiz-devel@lists.sourceforge.net\n" +"\n" +"You should now restart Beremiz.\n" +"\n" +"Traceback:\n" +msgstr "" +"\n" +"Произошла невосстанавливаемая ошибка (bug). Отчет об ошибке сохранен:\n" +"(%s)\n" +"\n" +"Будьте добры, отправьте этот файл по адресу\n" +"beremiz-devel@lists.sourceforge.net\n" +"\n" +"Для дальнейшей работы перезапустите Beremiz.\n" +"\n" +"Traceback:\n" + +#: ../controls/VariablePanel.py:72 +msgid " External" +msgstr "Внешний" + +#: ../controls/VariablePanel.py:71 +msgid " InOut" +msgstr "Вход/Выход" + +#: ../controls/VariablePanel.py:71 +msgid " Input" +msgstr "Вход" + +#: ../controls/VariablePanel.py:72 +msgid " Local" +msgstr "Локальный" + +#: ../controls/VariablePanel.py:71 +msgid " Output" +msgstr "Выход" + +#: ../controls/VariablePanel.py:73 +msgid " Temp" +msgstr "Временный" + +#: ../PLCOpenEditor.py:406 +msgid " : " +msgstr "" + +#: ../dialogs/PouTransitionDialog.py:94 ../dialogs/PouActionDialog.py:91 +#: ../dialogs/PouDialog.py:113 +#, python-format +msgid " and %s" +msgstr "и %s" + +#: ../ProjectController.py:1027 +msgid " generation failed !\n" +msgstr "неудачная генерация кода!\n" + +#: ../plcopen/plcopen.py:883 +#, python-format +msgid "\"%s\" Data Type doesn't exist !!!" +msgstr "Тип данных \"%s\" не существует!!!" + +#: ../plcopen/plcopen.py:901 +#, python-format +msgid "\"%s\" POU already exists !!!" +msgstr "POU \"%s\" уже существует!!!" + +#: ../plcopen/plcopen.py:922 +#, python-format +msgid "\"%s\" POU doesn't exist !!!" +msgstr "POU \"%s\" не найден!!!" + +#: ../editors/Viewer.py:242 +#, python-format +msgid "\"%s\" can't use itself!" +msgstr "\"%s\" не может использовать сам себя!!!" + +#: ../IDEFrame.py:1618 ../IDEFrame.py:1637 +#, python-format +msgid "\"%s\" config already exists!" +msgstr "Конфигурация \"%s\" уже существует!!!" + +#: ../plcopen/plcopen.py:471 +#, python-format +msgid "\"%s\" configuration already exists !!!" +msgstr "Конфигурация \"%s\" уже существует!!!" + +#: ../IDEFrame.py:1572 +#, python-format +msgid "\"%s\" data type already exists!" +msgstr "Тип данных \"%s\" уже существует!!!" + +#: ../dialogs/PouTransitionDialog.py:105 ../dialogs/BlockPreviewDialog.py:219 +#: ../dialogs/PouActionDialog.py:102 ../editors/Viewer.py:258 +#: ../editors/Viewer.py:326 ../editors/Viewer.py:350 ../editors/Viewer.py:370 +#: ../editors/TextViewer.py:270 ../editors/TextViewer.py:299 +#: ../controls/VariablePanel.py:386 +#, python-format +msgid "\"%s\" element for this pou already exists!" +msgstr "Элемент с именем \"%s\" уже существует в этом POU!!!" + +#: ../Beremiz.py:964 +#, python-format +msgid "\"%s\" folder is not a valid Beremiz project\n" +msgstr "Директория \"%s\" не является проектом Beremiz\n" + +#: ../PLCGenerator.py:1091 +#, python-format +msgid "\"%s\" function cancelled in \"%s\" POU: No input connected" +msgstr "Функция \"%s\" не используется в POU \"%s\": входы не подключены" + +#: ../dialogs/SFCStepNameDialog.py:51 ../dialogs/PouTransitionDialog.py:101 +#: ../dialogs/BlockPreviewDialog.py:207 ../dialogs/PouNameDialog.py:49 +#: ../dialogs/PouActionDialog.py:98 ../dialogs/PouDialog.py:120 +#: ../editors/DataTypeEditor.py:554 ../editors/DataTypeEditor.py:583 +#: ../editors/CodeFileEditor.py:750 ../controls/VariablePanel.py:733 +#: ../IDEFrame.py:1563 +#, python-format +msgid "\"%s\" is a keyword. It can't be used!" +msgstr "\"%s\" является ключевым словом и не может быть использован!" + +#: ../editors/Viewer.py:246 +#, python-format +msgid "\"%s\" is already used by \"%s\"!" +msgstr "\"%s\" уже используется \"%s\"!" + +#: ../plcopen/plcopen.py:2405 +#, python-format +msgid "\"%s\" is an invalid value!" +msgstr "\"%s\" недопустимое значение!" + +#: ../PLCOpenEditor.py:332 ../PLCOpenEditor.py:369 +#, python-format +msgid "\"%s\" is not a valid folder!" +msgstr "\"%s\" не является директорией!" + +#: ../dialogs/SFCStepNameDialog.py:49 ../dialogs/PouTransitionDialog.py:99 +#: ../dialogs/BlockPreviewDialog.py:203 ../dialogs/PouNameDialog.py:47 +#: ../dialogs/PouActionDialog.py:96 ../dialogs/PouDialog.py:118 +#: ../editors/DataTypeEditor.py:578 ../editors/CodeFileEditor.py:748 +#: ../controls/VariablePanel.py:731 ../IDEFrame.py:1561 +#, python-format +msgid "\"%s\" is not a valid identifier!" +msgstr "\"%s\" неверный идентификатор!" + +#: ../IDEFrame.py:2364 +#, python-format +msgid "\"%s\" is used by one or more POUs. Do you wish to continue?" +msgstr "\"%s\" используется более чем одним POU. Продолжить?" + +#: ../dialogs/BlockPreviewDialog.py:211 ../dialogs/PouDialog.py:122 +#: ../editors/Viewer.py:256 ../editors/Viewer.py:311 ../editors/Viewer.py:341 +#: ../editors/Viewer.py:363 ../editors/TextViewer.py:268 +#: ../editors/TextViewer.py:297 ../editors/TextViewer.py:348 +#: ../editors/TextViewer.py:371 ../controls/VariablePanel.py:328 +#: ../IDEFrame.py:1581 +#, python-format +msgid "\"%s\" pou already exists!" +msgstr "POU \"%s\" уже существует!" + +#: ../plcopen/plcopen.py:495 +#, python-format +msgid "\"%s\" resource already exists in \"%s\" configuration !!!" +msgstr "Ресурс \"%s\" уже существует в конфигурации \"%s\"!!!" + +#: ../plcopen/plcopen.py:512 +#, python-format +msgid "\"%s\" resource doesn't exist in \"%s\" configuration !!!" +msgstr "Ресурс \"%s\" отсутствует в конфигурации \"%s\"!!!" + +#: ../dialogs/SFCStepNameDialog.py:57 +#, python-format +msgid "\"%s\" step already exists!" +msgstr "Шаг \"%s\" уже существует!" + +#: ../editors/DataTypeEditor.py:549 +#, python-format +msgid "\"%s\" value already defined!" +msgstr "\"%s\" значение уже задано!" + +#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:744 +#, python-format +msgid "\"%s\" value isn't a valid array dimension!" +msgstr "\"%s\" не является корректной размерностью для массива! " + +#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:751 +#, python-format +msgid "" +"\"%s\" value isn't a valid array dimension!\n" +"Right value must be greater than left value." +msgstr "\"%s\" не является корректной размерностью массива! Правое значение должно быть больше левого." + +msgid "%(codefile_name)s" +msgstr "%(codefile_name)" + +#: ../PLCControler.py:970 +#, python-format +msgid "%s \"%s\" can't be pasted as a %s." +msgstr "%s \"%s\" не может быть вставлен как %s." + +#: ../PLCControler.py:1530 +#, python-format +msgid "%s Data Types" +msgstr "%s типы данных" + +#: ../PLCControler.py:1513 +#, python-format +msgid "%s POUs" +msgstr "%s POU" + +#: ../canfestival/SlaveEditor.py:46 ../canfestival/NetworkEditor.py:67 +#, python-format +msgid "%s Profile" +msgstr "%s профиль" + +#: ../ConfigTreeNode.py:32 +#, python-format +msgid "" +"%s XML file doesn't follow XSD schema at line %d:\n" +"%s" +msgstr "" +"%s XML файл не следует XSD-схеме в строке %d:\n" +"%s" + +#: ../plcopen/plcopen.py:1638 ../plcopen/plcopen.py:1645 +#: ../plcopen/plcopen.py:1657 ../plcopen/plcopen.py:1665 +#: ../plcopen/plcopen.py:1675 +#, python-format +msgid "%s body don't have instances!" +msgstr "Тело %s не содержит экземпляров!" + +#: ../plcopen/plcopen.py:1693 ../plcopen/plcopen.py:1700 +#: ../plcopen/plcopen.py:1707 +#, python-format +msgid "%s body don't have text!" +msgstr "Тело %s не содержит никакой текст!" + +#: ../IDEFrame.py:362 +msgid "&Add Element" +msgstr "&Добавить элемент" + +#: ../IDEFrame.py:332 +msgid "&Configuration" +msgstr "&Конфигурация" + +#: ../IDEFrame.py:321 +msgid "&Data Type" +msgstr "&Типы данных" + +#: ../IDEFrame.py:366 +msgid "&Delete" +msgstr "&Удалить" + +#: ../IDEFrame.py:313 +msgid "&Display" +msgstr "&Вид" + +#: ../IDEFrame.py:312 +msgid "&Edit" +msgstr "&Редактировать" + +#: ../IDEFrame.py:311 +msgid "&File" +msgstr "&Файл" + +#: ../IDEFrame.py:323 +msgid "&Function" +msgstr "&Функции" + +#: ../IDEFrame.py:314 +msgid "&Help" +msgstr "&Помощь" + +#: ../IDEFrame.py:327 +msgid "&Program" +msgstr "&Программы" + +#: ../PLCOpenEditor.py:119 +msgid "&Properties" +msgstr "&Свойства" + +#: ../Beremiz.py:317 +msgid "&Recent Projects" +msgstr "&Недавние проекты" + +#: ../IDEFrame.py:329 +msgid "&Resource" +msgstr "&Ресурсы" + +#: ../controls/SearchResultPanel.py:252 +#, python-format +msgid "'%s' - %d match in project" +msgstr "'%s'- %d совпадений в проекте" + +#: ../controls/SearchResultPanel.py:254 +#, python-format +msgid "'%s' - %d matches in project" +msgstr "'%s' - %d совпадений в проекте" + +#: ../connectors/PYRO/__init__.py:86 +#, python-format +msgid "'%s' is located at %s\n" +msgstr "'%s' находится %s\n" + +#: ../controls/SearchResultPanel.py:304 +#, python-format +msgid "(%d matches)" +msgstr "(%d совпадений)" + +#: ../PLCOpenEditor.py:384 ../PLCOpenEditor.py:386 ../PLCOpenEditor.py:387 +msgid ", " +msgstr "" + +#: ../dialogs/PouTransitionDialog.py:96 ../dialogs/PouActionDialog.py:93 +#: ../dialogs/PouDialog.py:115 +#, python-format +msgid ", %s" +msgstr "" + +#: ../PLCOpenEditor.py:382 +msgid ". " +msgstr "" + +#: ../controls/LogViewer.py:278 +msgid "1d" +msgstr "1 день" + +#: ../controls/LogViewer.py:279 +msgid "1h" +msgstr "1 час" + +#: ../controls/LogViewer.py:280 +msgid "1m" +msgstr "1 мин" + +#: ../controls/LogViewer.py:281 +msgid "1s" +msgstr "1 сек" + +#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1584 ../IDEFrame.py:1626 +#: ../IDEFrame.py:1645 +#, python-format +msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?" +msgstr "В POU присутствует элемент с именем \"%s\". Это может вызвать конфликт. Хотите продолжить?" + +#: ../dialogs/SFCStepNameDialog.py:53 ../dialogs/PouTransitionDialog.py:103 +#: ../dialogs/PouNameDialog.py:51 ../dialogs/PouActionDialog.py:100 +#: ../controls/VariablePanel.py:735 ../IDEFrame.py:1596 ../IDEFrame.py:1607 +#, python-format +msgid "A POU named \"%s\" already exists!" +msgstr "POU с именем \"%s\" уже существует!" + +#: ../ConfigTreeNode.py:400 +#, python-format +msgid "A child named \"%s\" already exist -> \"%s\"\n" +msgstr "Дочерний элемент с именем \"%s\" уже существует -> \"%s\"\n" + +#: ../dialogs/BrowseLocationsDialog.py:211 +msgid "A location must be selected!" +msgstr "Необходимо выбрать размещение!" + +#: ../dialogs/SFCStepNameDialog.py:55 ../controls/VariablePanel.py:737 +#: ../IDEFrame.py:1598 ../IDEFrame.py:1609 +#, python-format +msgid "A variable with \"%s\" as name already exists in this pou!" +msgstr "Переменная с именем \"%s\" уже существует в этом POU!" + +#: ../editors/CodeFileEditor.py:754 +#, python-format +msgid "A variable with \"%s\" as name already exists!" +msgstr "Переменная с именем \"%s\" уже существует!" + +#: ../PLCOpenEditor.py:152 ../Beremiz.py:374 +msgid "About" +msgstr "О программе" + +#: ../Beremiz.py:999 +msgid "About Beremiz" +msgstr "О Beremiz" + +#: ../PLCOpenEditor.py:346 +msgid "About PLCOpenEditor" +msgstr "О PLCOpenEditor" + +#: ../plcopen/iec_std.csv:22 +msgid "Absolute number" +msgstr "Абсолютный номер" + +#: ../dialogs/SFCStepDialog.py:71 ../dialogs/ActionBlockDialog.py:42 +msgid "Action" +msgstr "Действие" + +#: ../editors/Viewer.py:551 ../editors/Viewer.py:2069 +msgid "Action Block" +msgstr "Блок действия" + +#: ../dialogs/PouActionDialog.py:81 +msgid "Action Name" +msgstr "Имя действия" + +#: ../dialogs/PouActionDialog.py:49 +msgid "Action Name:" +msgstr "Имя действия:" + +#: ../plcopen/plcopen.py:1356 +#, python-format +msgid "Action with name %s doesn't exist!" +msgstr "Действие с именем %s не существует!" + +#: ../PLCControler.py:96 +msgid "Actions" +msgstr "Действия" + +#: ../dialogs/ActionBlockDialog.py:133 +msgid "Actions:" +msgstr "Действия:" + +#: ../editors/Viewer.py:1087 +msgid "Active" +msgstr "Активный" + +#: ../canfestival/SlaveEditor.py:57 ../canfestival/NetworkEditor.py:78 +#: ../editors/Viewer.py:584 ../Beremiz.py:1026 +msgid "Add" +msgstr "Добавить" + +#: ../IDEFrame.py:1858 ../IDEFrame.py:1893 +msgid "Add Action" +msgstr "Добавить действие" + +#: ../features.py:8 +msgid "Add C code accessing located variables synchronously" +msgstr "Добавить C-код с синхронным доступом к локальным переменным" + +#: ../IDEFrame.py:1841 +msgid "Add Configuration" +msgstr "Добавить конфигурацию" + +#: ../IDEFrame.py:1821 +msgid "Add DataType" +msgstr "Добавить тип данных" + +#: ../editors/Viewer.py:509 +msgid "Add Divergence Branch" +msgstr "Добавить ветвление" + +#: ../dialogs/DiscoveryDialog.py:115 +msgid "Add IP" +msgstr "Добавить IP адрес" + +#: ../IDEFrame.py:1829 +msgid "Add POU" +msgstr "Добавить POU" + +#: ../features.py:9 +msgid "Add Python code executed asynchronously" +msgstr "Добавить асинхронно вызываемый код на Python" + +#: ../IDEFrame.py:1869 ../IDEFrame.py:1919 +msgid "Add Resource" +msgstr "Добавить ресурс" + +#: ../IDEFrame.py:1847 ../IDEFrame.py:1890 +msgid "Add Transition" +msgstr "Добавить переход" + +#: ../editors/Viewer.py:496 +msgid "Add Wire Segment" +msgstr "Добавить провод" + +#: ../editors/SFCViewer.py:359 +msgid "Add a new initial step" +msgstr "Добавить новый исходный шаг" + +#: ../editors/Viewer.py:2672 ../editors/SFCViewer.py:696 +msgid "Add a new jump" +msgstr "Добавить новый безусловный переход" + +#: ../editors/SFCViewer.py:381 +msgid "Add a new step" +msgstr "Добавить новый шаг" + +#: ../features.py:10 +msgid "Add a simple WxGlade based GUI." +msgstr "Добавить простой GUI на WxGlade " + +#: ../dialogs/ActionBlockDialog.py:137 +msgid "Add action" +msgstr "Добавить действие" + +#: ../editors/DataTypeEditor.py:351 +msgid "Add element" +msgstr "Добавить элемент" + +#: ../editors/ResourceEditor.py:268 +msgid "Add instance" +msgstr "Добавить экземпляр" + +#: ../canfestival/NetworkEditor.py:80 +msgid "Add slave" +msgstr "Добавить слэйв" + +#: ../editors/ResourceEditor.py:239 +msgid "Add task" +msgstr "Добавить задачу" + +#: ../editors/CodeFileEditor.py:640 ../controls/VariablePanel.py:440 +msgid "Add variable" +msgstr "Добавить переменную" + +#: ../plcopen/iec_std.csv:33 +msgid "Addition" +msgstr "Сложение" + +#: ../plcopen/definitions.py:22 +msgid "Additional function blocks" +msgstr "Дополнительные функциональные блоки" + +#: ../editors/Viewer.py:567 +msgid "Adjust Block Size" +msgstr "Скорректировать размер элемента" + +#: ../editors/Viewer.py:1612 +msgid "Alignment" +msgstr "Выравнивание" + +#: ../dialogs/BrowseLocationsDialog.py:34 +#: ../dialogs/BrowseLocationsDialog.py:42 +#: ../dialogs/BrowseLocationsDialog.py:135 +#: ../dialogs/BrowseLocationsDialog.py:138 ../controls/LogViewer.py:297 +#: ../controls/VariablePanel.py:70 +msgid "All" +msgstr "Все" + +#: ../editors/FileManagementPanel.py:35 +msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv" +msgstr "Все файлы (*.*)|*.*|CSV files (*.csv)|*.csv" + +#: ../ProjectController.py:1523 +msgid "Already connected. Please disconnect\n" +msgstr "Уже подключен. Пожалуйста, отключитесь сначала.\n" + +#: ../editors/DataTypeEditor.py:593 +#, python-format +msgid "An element named \"%s\" already exists in this structure!" +msgstr "Поле с именем \"%s\" уже существует в данной структуре!" + +#: ../dialogs/ConnectionDialog.py:96 +msgid "Apply name modification to all continuations with the same name" +msgstr "Переименовать все цепи с тем же самым именем" + +#: ../plcopen/iec_std.csv:31 +msgid "Arc cosine" +msgstr "Арккосинус" + +#: ../plcopen/iec_std.csv:30 +msgid "Arc sine" +msgstr "Арксинус" + +#: ../plcopen/iec_std.csv:32 +msgid "Arc tangent" +msgstr "Арктангенс" + +#: ../plcopen/iec_std.csv:33 +msgid "Arithmetic" +msgstr "Математика" + +#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:634 +#: ../controls/VariablePanel.py:811 +msgid "Array" +msgstr "Массив" + +#: ../plcopen/iec_std.csv:39 +msgid "Assignment" +msgstr "Присвоение" + +#: ../dialogs/FBDVariableDialog.py:217 +msgid "At least a variable or an expression must be selected!" +msgstr "Переменная или выражение должно быть выбрано!" + +#: ../controls/ProjectPropertiesPanel.py:99 +msgid "Author" +msgstr "Автор" + +#: ../controls/ProjectPropertiesPanel.py:96 +msgid "Author Name (optional):" +msgstr "Имя автора (опционально):" + +#: ../dialogs/FindInPouDialog.py:78 +msgid "Backward" +msgstr "Назад" + +#: ../util/Zeroconf.py:599 +msgid "Bad domain name (circular) at " +msgstr "Неправильное доменное имя (ответ) в " + +#: ../util/Zeroconf.py:602 +msgid "Bad domain name at " +msgstr "Неправильное доменное имя в" + +#: ../canfestival/config_utils.py:342 ../canfestival/config_utils.py:624 +#, python-format +msgid "Bad location size : %s" +msgstr "Неправильный размер: %s" + +#: ../dialogs/ArrayTypeDialog.py:55 ../editors/DataTypeEditor.py:174 +#: ../editors/DataTypeEditor.py:204 ../editors/DataTypeEditor.py:296 +msgid "Base Type:" +msgstr "Базовый тип:" + +#: ../editors/DataTypeEditor.py:624 ../controls/VariablePanel.py:769 +msgid "Base Types" +msgstr "Базовые типы" + +msgid "BaseParams" +msgstr "Базовые параметры" + +#: ../Beremiz.py:529 +msgid "Beremiz" +msgstr "" + +msgid "BeremizRoot" +msgstr "Настройки Beremiz " + +#: ../plcopen/iec_std.csv:70 +msgid "Binary selection (1 of 2)" +msgstr "Бинарный выбор (1 или 2)" + +#: ../plcopen/iec_std.csv:62 +msgid "Bit-shift" +msgstr "Сдвиговые операции" + +#: ../plcopen/iec_std.csv:66 +msgid "Bitwise" +msgstr "Битовые операции" + +#: ../plcopen/iec_std.csv:66 +msgid "Bitwise AND" +msgstr "Битовое И" + +#: ../plcopen/iec_std.csv:67 +msgid "Bitwise OR" +msgstr "Битовое ИЛИ" + +#: ../plcopen/iec_std.csv:68 +msgid "Bitwise XOR" +msgstr "Исключающее ИЛИ" + +#: ../plcopen/iec_std.csv:69 +msgid "Bitwise inverting" +msgstr "Битовое НЕ" + +#: ../editors/Viewer.py:521 ../editors/Viewer.py:2073 +msgid "Block" +msgstr "Блок" + +#: ../dialogs/FBDBlockDialog.py:59 +msgid "Block Properties" +msgstr "Свойства блока" + +#: ../editors/TextViewer.py:261 +msgid "Block name" +msgstr "Имя блока" + +#: ../editors/Viewer.py:487 +msgid "Bottom" +msgstr "Низ" + +#: ../dialogs/BrowseValuesLibraryDialog.py:37 +#, python-format +msgid "Browse %s values library" +msgstr "" + +#: ../dialogs/BrowseLocationsDialog.py:60 +msgid "Browse Locations" +msgstr "Просмотр директорий" + +#: ../ProjectController.py:1668 +msgid "Build" +msgstr "Сборка" + +#: ../ProjectController.py:1166 +msgid "Build directory already clean\n" +msgstr "Директория сборки уже пуста\n" + +#: ../ProjectController.py:1669 +msgid "Build project into build folder" +msgstr "Сборка проекта в директории сборки" + +#: ../ProjectController.py:956 +msgid "C Build crashed !\n" +msgstr "Крэш во время сборки C-кода!\n" + +#: ../ProjectController.py:953 +msgid "C Build failed.\n" +msgstr "Ошибка сборки C-кода.\n" + +#: ../c_ext/CFileEditor.py:40 +msgid "C code" +msgstr "C код " + +#: ../ProjectController.py:1031 +msgid "C code generated successfully.\n" +msgstr "C-код успешно сгенерирован.\n" + +#: ../targets/toolchain_makefile.py:108 +msgid "C compilation failed.\n" +msgstr "Ошибка компиляции.\n" + +#: ../targets/toolchain_gcc.py:132 +#, python-format +msgid "C compilation of %s failed.\n" +msgstr "Ошибка компиляции %s.\n" + +#: ../features.py:8 +msgid "C extension" +msgstr "С-расширение" + +#: ../canfestival/NetworkEditor.py:29 +msgid "CANOpen network" +msgstr "Сеть CANOpen" + +#: ../canfestival/SlaveEditor.py:21 +msgid "CANOpen slave" +msgstr "CANOpen ведущий" + +msgid "CAN_Baudrate" +msgstr "Скорость CAN" + +msgid "CAN_Device" +msgstr "CAN устройство" + +msgid "CAN_Driver" +msgstr "CAN драйвер" + +#: ../features.py:7 +msgid "CANopen support" +msgstr "Поддержка CANOpen" + +msgid "CFLAGS" +msgstr "" + +#: ../plcopen/plcopen.py:1580 ../plcopen/plcopen.py:1594 +#: ../plcopen/plcopen.py:1615 ../plcopen/plcopen.py:1631 +msgid "Can only generate execution order on FBD networks!" +msgstr "Можно сгенерировать порядок исполнения только для FBD!" + +#: ../controls/VariablePanel.py:259 +msgid "Can only give a location to local or global variables" +msgstr "Можно задать размещение только локальным или глобальным переменны" + +#: ../PLCOpenEditor.py:327 +#, python-format +msgid "Can't generate program to file %s!" +msgstr "Нельзя сгенерировать программу в файл %s!" + +#: ../controls/VariablePanel.py:257 +msgid "Can't give a location to a function block instance" +msgstr "Нельзя задать размещение для экземпляра функционального блока" + +#: ../PLCOpenEditor.py:367 +#, python-format +msgid "Can't save project to file %s!" +msgstr "Нельзя сохранить проект в файл %s!" + +#: ../controls/VariablePanel.py:303 +msgid "Can't set an initial value to a function block instance" +msgstr "Нельзя задать исходное значение экземпляру функционального блока" + +msgid "CanFestivalInstance" +msgstr "" + +msgid "CanFestivalNode" +msgstr "" + +#: Extra XSD strings +msgid "CanFestivalSlaveNode" +msgstr "" + +#: ../ConfigTreeNode.py:504 +#, python-format +msgid "Cannot create child %s of type %s " +msgstr "Нельзя создать дочерний элемент %s типа %s" + +#: ../ConfigTreeNode.py:429 +#, python-format +msgid "Cannot find lower free IEC channel than %d\n" +msgstr "Не удалось найти свободный МЭК-канал с номером меньше чем %d\n" + +#: ../connectors/PYRO/__init__.py:127 +msgid "Cannot get PLC status - connection failed.\n" +msgstr "Невозможно получить состояние ПЛК - ошибка подключения.\n" + +#: ../ProjectController.py:817 +msgid "Cannot open/parse VARIABLES.csv!\n" +msgstr "Не удалось открыть/прочитать VARIABLES.csv\n" + +#: ../canfestival/config_utils.py:372 +#, python-format +msgid "Cannot set bit offset for non bool '%s' variable (ID:%d,Idx:%x,sIdx:%x))" +msgstr "Невозможно установить битовое смещение для небулевой переменной '%s' (ID:%d,Idx:%x,sIdx:%x))" + +#: ../dialogs/SearchInProjectDialog.py:67 ../dialogs/FindInPouDialog.py:87 +msgid "Case sensitive" +msgstr "Регистрозависимый" + +#: ../editors/Viewer.py:482 +msgid "Center" +msgstr "Центр" + +#: ../Beremiz_service.py:245 +msgid "Change IP of interface to bind" +msgstr "Сменить IP-адрес интерфейса для привязки сокета" + +#: ../Beremiz_service.py:244 +msgid "Change Name" +msgstr "Сменить имя" + +#: ../IDEFrame.py:1911 +msgid "Change POU Type To" +msgstr "Сменить тип POU на" + +#: ../Beremiz_service.py:246 +msgid "Change Port Number" +msgstr "Сменить номер порта" + +#: ../Beremiz_service.py:247 +msgid "Change working directory" +msgstr "Сменить рабочую директорию" + +#: ../plcopen/iec_std.csv:81 +msgid "Character string" +msgstr "Символьные строки" + +#: ../svgui/svgui.py:101 +msgid "Choose a SVG file" +msgstr "Выберете SVG-файл" + +#: ../ProjectController.py:420 +msgid "Choose a directory to save project" +msgstr "Выберете директорию, чтобы сохранить проект" + +#: ../canfestival/canfestival.py:136 ../PLCOpenEditor.py:285 +#: ../PLCOpenEditor.py:317 ../PLCOpenEditor.py:361 +msgid "Choose a file" +msgstr "Выберете файл" + +#: ../Beremiz.py:901 ../Beremiz.py:936 +msgid "Choose a project" +msgstr "Выберете проект" + +#: ../dialogs/BrowseValuesLibraryDialog.py:42 +#, python-format +msgid "Choose a value for %s:" +msgstr "Выберете значение для %s:" + +#: ../Beremiz_service.py:293 +msgid "Choose a working directory " +msgstr "Выберете рабочую директорию" + +#: ../ProjectController.py:334 +msgid "Chosen folder doesn't contain a program. It's not a valid project!" +msgstr "Выбранная директория не содержит программы. Это некорректный проект!" + +#: ../ProjectController.py:301 +msgid "Chosen folder isn't empty. You can't use it for a new project!" +msgstr "Выбранная директория не пуста и не может использоваться для нового проекта!" + +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +msgid "Class" +msgstr "Класс" + +#: ../controls/VariablePanel.py:431 +msgid "Class Filter:" +msgstr "Фильтр класса:" + +#: ../dialogs/FBDVariableDialog.py:69 +msgid "Class:" +msgstr "Класс:" + +#: ../ProjectController.py:1672 +msgid "Clean" +msgstr "Очистить" + +#: ../controls/LogViewer.py:317 +msgid "Clean log messages" +msgstr "Очистить лог" + +#: ../ProjectController.py:1674 +msgid "Clean project build folder" +msgstr "Очистить директорию сборки проекта" + +#: ../ProjectController.py:1163 +msgid "Cleaning the build directory\n" +msgstr "Очистка директории сборки\n" + +#: ../IDEFrame.py:411 +msgid "Clear Errors" +msgstr "Очистить ошибки" + +#: ../editors/Viewer.py:577 +msgid "Clear Execution Order" +msgstr "Очистить порядок исполнения" + +#: ../dialogs/FindInPouDialog.py:110 +msgid "Close" +msgstr "Закрыть" + +#: ../PLCOpenEditor.py:192 ../Beremiz.py:669 +msgid "Close Application" +msgstr "Закрыть приложение" + +#: ../PLCOpenEditor.py:102 ../Beremiz.py:326 ../Beremiz.py:613 +#: ../IDEFrame.py:984 +msgid "Close Project" +msgstr "Закрыть проект" + +#: ../PLCOpenEditor.py:100 ../Beremiz.py:324 +msgid "Close Tab" +msgstr "Закрыть вкладку" + +#: ../editors/Viewer.py:537 ../editors/Viewer.py:2084 +msgid "Coil" +msgstr "Катушка" + +msgid "Command" +msgstr "Комманда" + +#: ../editors/Viewer.py:557 ../editors/LDViewer.py:506 +msgid "Comment" +msgstr "Комментарий" + +#: ../controls/ProjectPropertiesPanel.py:94 +msgid "Company Name (required):" +msgstr "Компания (обязательно):" + +#: ../controls/ProjectPropertiesPanel.py:95 +msgid "Company URL (optional):" +msgstr "Сайт компании (опционально):" + +#: ../plcopen/iec_std.csv:75 +msgid "Comparison" +msgstr "Сравнение" + +msgid "Compiler" +msgstr "Компилятор" + +#: ../ProjectController.py:609 +msgid "Compiling IEC Program into C code...\n" +msgstr "Компиляция МЭК-программы в C-код...\n" + +#: ../plcopen/iec_std.csv:85 +msgid "Concatenation" +msgstr "Объединение" + +#: ../editors/ConfTreeNodeEditor.py:206 +msgid "Config" +msgstr "Конфигурация" + +#: ../editors/ProjectNodeEditor.py:13 +msgid "Config variables" +msgstr "Конфигурационные переменные" + +#: ../dialogs/SearchInProjectDialog.py:47 +msgid "Configuration" +msgstr "Конфигурация" + +#: ../PLCControler.py:97 +msgid "Configurations" +msgstr "Конфигурации" + +#: ../editors/Viewer.py:303 ../editors/Viewer.py:333 ../editors/Viewer.py:355 +#: ../editors/TextViewer.py:289 ../editors/TextViewer.py:340 +#: ../editors/TextViewer.py:363 ../controls/VariablePanel.py:318 +msgid "Confirm or change variable name" +msgstr "Подтвердить или поменять имя переменной" + +#: ../ProjectController.py:1687 +msgid "Connect" +msgstr "Подключиться" + +#: ../ProjectController.py:1688 +msgid "Connect to the target PLC" +msgstr "Подключиться к целевому ПЛК" + +#: ../ProjectController.py:1212 +#, python-format +msgid "Connected to URI: %s" +msgstr "Подключен к URI: %s" + +#: ../dialogs/SFCTransitionDialog.py:75 ../editors/Viewer.py:523 +#: ../editors/Viewer.py:2075 +msgid "Connection" +msgstr "Подключение" + +#: ../dialogs/ConnectionDialog.py:52 +msgid "Connection Properties" +msgstr "Свойства подключение" + +#: ../ProjectController.py:1547 +msgid "Connection canceled!\n" +msgstr "Подключение отменено!\n" + +#: ../ProjectController.py:1572 +#, python-format +msgid "Connection failed to %s!\n" +msgstr "Неудачное подключение к %s!\n" + +#: ../connectors/PYRO/__init__.py:98 +#, python-format +msgid "Connection to '%s' failed.\n" +msgstr "Неудачное подключение к %s!\n" + +#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1569 +msgid "Connector" +msgstr "Коннектор" + +#: ../dialogs/SFCStepDialog.py:64 +msgid "Connectors:" +msgstr "Коннекторы:" + +#: ../Beremiz.py:436 +msgid "Console" +msgstr "Консоль" + +#: ../controls/VariablePanel.py:60 +msgid "Constant" +msgstr "Константа" + +#: ../editors/Viewer.py:533 ../editors/Viewer.py:2080 +msgid "Contact" +msgstr "Контакт" + +#: ../controls/ProjectPropertiesPanel.py:197 +msgid "Content Description (optional):" +msgstr "Описание содержимого (опционально):" + +#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1570 +msgid "Continuation" +msgstr "Продолжение" + +#: ../plcopen/iec_std.csv:18 +msgid "Conversion from BCD" +msgstr "Преобразование из BCD" + +#: ../plcopen/iec_std.csv:19 +msgid "Conversion to BCD" +msgstr "Преобразование в BCD" + +#: ../plcopen/iec_std.csv:21 +msgid "Conversion to date" +msgstr "Преобразование в дату" + +#: ../plcopen/iec_std.csv:20 +msgid "Conversion to time-of-day" +msgstr "Преобразование во время суток" + +#: ../editors/Viewer.py:593 ../controls/LogViewer.py:692 ../IDEFrame.py:346 +#: ../IDEFrame.py:401 +msgid "Copy" +msgstr "Копировать" + +#: ../IDEFrame.py:1898 +msgid "Copy POU" +msgstr "Копировать POU" + +#: ../editors/FileManagementPanel.py:65 +msgid "Copy file from left folder to right" +msgstr "Скопировать файл с левой директории в правую" + +#: ../editors/FileManagementPanel.py:64 +msgid "Copy file from right folder to left" +msgstr "Скопировать файл с правой директории в левую" + +#: ../plcopen/iec_std.csv:28 +msgid "Cosine" +msgstr "Косинус" + +#: ../ConfigTreeNode.py:626 +#, python-format +msgid "" +"Could not add child \"%s\", type %s :\n" +"%s\n" +msgstr "" +"Невозможно добавить дочерний элемент \"%s\", тип %s:\n" +"%s\n" + +#: ../py_ext/PythonFileCTNMixin.py:53 +#, python-format +msgid "Couldn't import old %s file." +msgstr "Невозможно импортировать старый файл %s." + +#: ../ConfigTreeNode.py:598 +#, python-format +msgid "" +"Couldn't load confnode base parameters %s :\n" +" %s" +msgstr "Невозможно загрузить базовые параметры confnode %s: %s" + +#: ../ConfigTreeNode.py:614 ../CodeFileTreeNode.py:99 +#, python-format +msgid "" +"Couldn't load confnode parameters %s :\n" +" %s" +msgstr "Невозможно загрузить параметры confnode %s: %s" + +#: ../PLCControler.py:946 +msgid "Couldn't paste non-POU object." +msgstr "Невозможно вставить не-POU." + +#: ../ProjectController.py:1486 +msgid "Couldn't start PLC !\n" +msgstr "Невозможно запустить ПЛК!\n" + +#: ../ProjectController.py:1494 +msgid "Couldn't stop PLC !\n" +msgstr "Невозможно остановить ПЛК!\n" + +#: ../ProjectController.py:1458 +msgid "Couldn't stop debugger.\n" +msgstr "Невозможно остановить отладчик.\n" + +#: ../svgui/svgui.py:23 +msgid "Create HMI" +msgstr "Создать HMI" + +#: ../dialogs/PouDialog.py:45 +msgid "Create a new POU" +msgstr "Создать новый POU" + +#: ../dialogs/PouActionDialog.py:38 +msgid "Create a new action" +msgstr "Создать новое действие" + +#: ../IDEFrame.py:135 +msgid "Create a new action block" +msgstr "Создать новый блок действие" + +#: ../IDEFrame.py:84 ../IDEFrame.py:114 ../IDEFrame.py:147 +msgid "Create a new block" +msgstr "Создать новый блок" + +#: ../IDEFrame.py:108 +msgid "Create a new branch" +msgstr "Создать новое ветвление" + +#: ../IDEFrame.py:102 +msgid "Create a new coil" +msgstr "Создать новую катушку" + +#: ../IDEFrame.py:78 ../IDEFrame.py:93 ../IDEFrame.py:123 +msgid "Create a new comment" +msgstr "Создать новый комментарий" + +#: ../IDEFrame.py:87 ../IDEFrame.py:117 ../IDEFrame.py:150 +msgid "Create a new connection" +msgstr "Создать новое подключение" + +#: ../IDEFrame.py:105 ../IDEFrame.py:156 +msgid "Create a new contact" +msgstr "Создать новый контакт" + +#: ../IDEFrame.py:138 +msgid "Create a new divergence" +msgstr "Создать новое ветвление" + +#: ../dialogs/SFCDivergenceDialog.py:51 +msgid "Create a new divergence or convergence" +msgstr "Создать новое ветвление или объединение" + +#: ../IDEFrame.py:126 +msgid "Create a new initial step" +msgstr "Создать исходный шаг" + +#: ../IDEFrame.py:141 +msgid "Create a new jump" +msgstr "Создать новый переход" + +#: ../IDEFrame.py:96 ../IDEFrame.py:153 +msgid "Create a new power rail" +msgstr "Создать новую линию питания" + +#: ../IDEFrame.py:99 +msgid "Create a new rung" +msgstr "Создать новую цепь" + +#: ../IDEFrame.py:129 +msgid "Create a new step" +msgstr "Создать новый шаг" + +#: ../dialogs/PouTransitionDialog.py:42 ../IDEFrame.py:132 +msgid "Create a new transition" +msgstr "Создать новый переход" + +#: ../IDEFrame.py:81 ../IDEFrame.py:111 ../IDEFrame.py:144 +msgid "Create a new variable" +msgstr "Создать новую переменную" + +#: ../editors/Viewer.py:592 ../IDEFrame.py:344 ../IDEFrame.py:400 +msgid "Cut" +msgstr "Вырезать" + +#: ../editors/ResourceEditor.py:72 +msgid "Cyclic" +msgstr "Циклический" + +#: ../plcopen/iec_std.csv:42 ../plcopen/iec_std.csv:44 +#: ../plcopen/iec_std.csv:46 ../plcopen/iec_std.csv:50 +#: ../plcopen/iec_std.csv:52 ../plcopen/iec_std.csv:54 +#: ../plcopen/iec_std.csv:56 ../plcopen/iec_std.csv:58 +#: ../plcopen/iec_std.csv:60 +msgid "DEPRECATED" +msgstr "УСТАРЕЛО" + +#: ../canfestival/SlaveEditor.py:53 ../canfestival/NetworkEditor.py:74 +msgid "DS-301 Profile" +msgstr "Профиль DS-301" + +#: ../canfestival/SlaveEditor.py:54 ../canfestival/NetworkEditor.py:75 +msgid "DS-302 Profile" +msgstr "Профиль DS-302" + +#: ../dialogs/SearchInProjectDialog.py:43 +msgid "Data Type" +msgstr "Тип данных" + +#: ../PLCControler.py:96 +msgid "Data Types" +msgstr "Типы данных" + +#: ../plcopen/iec_std.csv:16 +msgid "Data type conversion" +msgstr "Преобразование типов данных" + +#: ../plcopen/iec_std.csv:44 ../plcopen/iec_std.csv:45 +msgid "Date addition" +msgstr "Сложение дат" + +#: ../plcopen/iec_std.csv:56 ../plcopen/iec_std.csv:57 +#: ../plcopen/iec_std.csv:58 ../plcopen/iec_std.csv:59 +msgid "Date and time subtraction" +msgstr "Вычитание даты и времени" + +#: ../plcopen/iec_std.csv:50 ../plcopen/iec_std.csv:51 +msgid "Date subtraction" +msgstr "Вычитание дат" + +#: ../dialogs/DurationEditorDialog.py:43 +msgid "Days:" +msgstr "Дни:" + +#: ../ProjectController.py:1594 +msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" +msgstr "Отлаживаемая программа не соответствует программе в ПЛК - остановите/загрузите/запустите, чтобы разрешить отладку\n" + +#: ../controls/PouInstanceVariablesPanel.py:134 +msgid "Debug instance" +msgstr "Отладка экземпляра" + +#: ../editors/Viewer.py:1104 ../editors/Viewer.py:3596 +#, python-format +msgid "Debug: %s" +msgstr "Отладка: %s" + +#: ../ProjectController.py:1247 +#, python-format +msgid "Debug: Unknown variable '%s'\n" +msgstr "Отладка: неизвестная переменная '%s'\n" + +#: ../ProjectController.py:1245 +#, python-format +msgid "Debug: Unsupported type to debug '%s'\n" +msgstr "Отладка: неподдерживамый отладкой тип '%s'\n" + +#: ../IDEFrame.py:614 +msgid "Debugger" +msgstr "Отладчик" + +#: ../ProjectController.py:1427 +msgid "Debugger disabled\n" +msgstr "Отладчик запрещен\n" + +#: ../ProjectController.py:1591 +msgid "Debugger ready\n" +msgstr "Отладчик готов\n" + +#: ../ProjectController.py:1460 +msgid "Debugger stopped.\n" +msgstr "Отладчик остановлен.\n" + +#: ../editors/Viewer.py:568 ../Beremiz.py:1030 ../IDEFrame.py:1927 +msgid "Delete" +msgstr "Удалить" + +#: ../editors/Viewer.py:510 +msgid "Delete Divergence Branch" +msgstr "Удалить ветвь" + +#: ../editors/FileManagementPanel.py:153 +msgid "Delete File" +msgstr "Удалить файл" + +#: ../editors/Viewer.py:497 +msgid "Delete Wire Segment" +msgstr "Удалить сегмент цепи" + +#: ../controls/CustomEditableListBox.py:41 +msgid "Delete item" +msgstr "Удалить" + +#: ../plcopen/iec_std.csv:88 +msgid "Deletion (within)" +msgstr "Удаление подстроки" + +#: ../editors/DataTypeEditor.py:152 +msgid "Derivation Type:" +msgstr "Механизм создания типа:" + +#: ../plcopen/definitions.py:41 +msgid "" +"Derivative\n" +"The derivative function block produces an output XOUT proportional to the rate of change of the input XIN." +msgstr "" +"Производная\n" +"Функциональный блок формирует выход XOUT пропорционально частоте изменения входа XIN." + +#: ../controls/VariablePanel.py:422 +msgid "Description:" +msgstr "Описание:" + +#: ../dialogs/ArrayTypeDialog.py:61 ../editors/DataTypeEditor.py:320 +msgid "Dimensions:" +msgstr "Размеры:" + +#: ../dialogs/FindInPouDialog.py:67 +msgid "Direction" +msgstr "Неправление" + +#: ../dialogs/BrowseLocationsDialog.py:85 +msgid "Direction:" +msgstr "Направление:" + +#: ../editors/DataTypeEditor.py:54 +msgid "Directly" +msgstr "Синоним" + +msgid "Disable_Extensions" +msgstr "Запретить расширения" + +#: ../ProjectController.py:1696 +msgid "Disconnect" +msgstr "Отключиться" + +#: ../ProjectController.py:1698 +msgid "Disconnect from PLC" +msgstr "Отключиться от ПЛК" + +#: ../editors/Viewer.py:552 ../editors/Viewer.py:2061 +msgid "Divergence" +msgstr "Ветвление" + +#: ../plcopen/iec_std.csv:36 +msgid "Division" +msgstr "Деление" + +#: ../editors/FileManagementPanel.py:152 +#, python-format +msgid "Do you really want to delete the file '%s'?" +msgstr "Вы действительно хотите удалить этот файл '%s'?" + +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +msgid "Documentation" +msgstr "Описание" + +#: ../PLCOpenEditor.py:321 +msgid "Done" +msgstr "Завершено" + +#: ../plcopen/definitions.py:34 +msgid "" +"Down-counter\n" +"The down-counter can be used to signal when a count has reached zero, on counting down from a preset value." +msgstr "" +"Декрементный счетчик\n" +"Декрементный счетчик может использоваться, когда необходимо сигнализировать, что счетчик достиг нулевого значения с исходного заданного значения." + +#: ../dialogs/ActionBlockDialog.py:38 +msgid "Duration" +msgstr "Длительность" + +#: ../canfestival/canfestival.py:139 +msgid "EDS files (*.eds)|*.eds|All files|*.*" +msgstr "Файлы EDS (*.eds)|*.eds|All files|*.*" + +#: ../editors/Viewer.py:566 +msgid "Edit Block" +msgstr "Редактировать блок" + +#: ../dialogs/LDElementDialog.py:56 +msgid "Edit Coil Values" +msgstr "Редактировать значение катушки" + +#: ../dialogs/LDElementDialog.py:54 +msgid "Edit Contact Values" +msgstr "Редактировать значение контакта" + +#: ../dialogs/DurationEditorDialog.py:59 +msgid "Edit Duration" +msgstr "Редактировать длительность" + +#: ../dialogs/SFCStepDialog.py:49 +msgid "Edit Step" +msgstr "Редактировать шаг" + +#: ../wxglade_hmi/wxglade_hmi.py:12 +msgid "Edit a WxWidgets GUI with WXGlade" +msgstr "Редактировать WxWidgets GUI с помощью WXGlade" + +#: ../dialogs/ActionBlockDialog.py:121 +msgid "Edit action block properties" +msgstr "Редактировать свойства блока действия" + +#: ../dialogs/ArrayTypeDialog.py:45 +msgid "Edit array type properties" +msgstr "Редактировать свойства массива" + +#: ../editors/Viewer.py:2541 ../editors/Viewer.py:2952 +msgid "Edit comment" +msgstr "Редактировать комментарий" + +#: ../editors/FileManagementPanel.py:66 +msgid "Edit file" +msgstr "Редактировать файл" + +#: ../controls/CustomEditableListBox.py:39 +msgid "Edit item" +msgstr "Редактировать элемент" + +#: ../editors/Viewer.py:2916 +msgid "Edit jump target" +msgstr "Редактирование безусловного перехода" + +#: ../ProjectController.py:1710 +msgid "Edit raw IEC code added to code generated by PLCGenerator" +msgstr "Редактировать МЭК-код добавленный к коду сгенерированному PLCGenerator" + +#: ../editors/SFCViewer.py:725 +msgid "Edit step name" +msgstr "Редактировать имя шага" + +#: ../dialogs/SFCTransitionDialog.py:50 +msgid "Edit transition" +msgstr "Редактировать переход" + +#: ../IDEFrame.py:586 +msgid "Editor ToolBar" +msgstr "Редактор панели инструментов" + +#: ../ProjectController.py:1126 +msgid "Editor selection" +msgstr "Редактор выделения" + +#: ../editors/DataTypeEditor.py:347 +msgid "Elements :" +msgstr "Элементы:" + +#: ../IDEFrame.py:341 +msgid "Enable Undo/Redo" +msgstr "Разрешить отмену и повтор операций" + +msgid "Enabled" +msgstr "Разрешено" + +#: ../Beremiz_service.py:299 +msgid "Enter a name " +msgstr "Введите имя" + +#: ../Beremiz_service.py:286 +msgid "Enter a port number " +msgstr "Введите номер порта" + +#: ../Beremiz_service.py:277 +msgid "Enter the IP of the interface to bind" +msgstr "Введите IP-адрес используемого интерфейса" + +#: ../editors/DataTypeEditor.py:54 +msgid "Enumerated" +msgstr "Перечисление" + +#: ../plcopen/iec_std.csv:77 +msgid "Equal to" +msgstr "Равно" + +#: ../dialogs/ForceVariableDialog.py:179 +#: ../dialogs/SearchInProjectDialog.py:157 ../dialogs/SFCStepNameDialog.py:59 +#: ../dialogs/DurationEditorDialog.py:121 +#: ../dialogs/DurationEditorDialog.py:163 ../dialogs/PouTransitionDialog.py:107 +#: ../dialogs/BlockPreviewDialog.py:236 ../dialogs/ProjectDialog.py:71 +#: ../dialogs/ArrayTypeDialog.py:97 ../dialogs/ArrayTypeDialog.py:103 +#: ../dialogs/PouNameDialog.py:53 ../dialogs/BrowseLocationsDialog.py:211 +#: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouActionDialog.py:104 +#: ../dialogs/PouDialog.py:134 ../PLCOpenEditor.py:328 ../PLCOpenEditor.py:333 +#: ../PLCOpenEditor.py:407 ../PLCOpenEditor.py:417 ../editors/Viewer.py:419 +#: ../editors/LDViewer.py:666 ../editors/LDViewer.py:882 +#: ../editors/LDViewer.py:886 ../editors/DataTypeEditor.py:549 +#: ../editors/DataTypeEditor.py:554 ../editors/DataTypeEditor.py:578 +#: ../editors/DataTypeEditor.py:583 ../editors/DataTypeEditor.py:593 +#: ../editors/DataTypeEditor.py:744 ../editors/DataTypeEditor.py:751 +#: ../editors/TextViewer.py:387 ../editors/CodeFileEditor.py:763 +#: ../ProjectController.py:269 ../controls/FolderTree.py:217 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:166 +#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:137 +#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:225 +#: ../controls/VariablePanel.py:392 ../controls/VariablePanel.py:754 +#: ../Beremiz.py:1169 ../IDEFrame.py:978 ../IDEFrame.py:1584 +#: ../IDEFrame.py:1621 ../IDEFrame.py:1626 ../IDEFrame.py:1640 +#: ../IDEFrame.py:1645 ../Beremiz_service.py:190 +msgid "Error" +msgstr "Ошибка" + +#: ../ProjectController.py:663 +msgid "Error : At least one configuration and one resource must be declared in PLC !\n" +msgstr "Ошибка: Как минимум одна конфигурация и один ресурс должны быть задекларированы в ПЛК!\n" + +#: ../ProjectController.py:655 +#, python-format +msgid "Error : IEC to C compiler returned %d\n" +msgstr "Ошибка: компилятор МЭК в C вернул код ошибки %d\n" + +#: ../ProjectController.py:589 +#, python-format +msgid "" +"Error in ST/IL/SFC code generator :\n" +"%s\n" +msgstr "Ошибка в ST/IL/SFC кодогенераторе: %s\n" + +#: ../ConfigTreeNode.py:192 +#, python-format +msgid "Error while saving \"%s\"\n" +msgstr "Ошибка во время сохранения \"%s\"\n" + +#: ../canfestival/canfestival.py:144 +msgid "Error: Export slave failed\n" +msgstr "Ошибка: неудачный экспорт ведомого\n" + +#: ../canfestival/canfestival.py:345 +msgid "Error: No Master generated\n" +msgstr "Ошибка: мастер не сгенерирован\n" + +#: ../canfestival/canfestival.py:340 +msgid "Error: No PLC built\n" +msgstr "Ошибка: ПЛК не собран\n" + +#: ../ProjectController.py:1566 +#, python-format +msgid "Exception while connecting %s!\n" +msgstr "Исключение во время подключения %s!\n" + +#: ../dialogs/FBDBlockDialog.py:117 +msgid "Execution Control:" +msgstr "Управление исполнением:" + +#: ../dialogs/FBDVariableDialog.py:79 ../dialogs/FBDBlockDialog.py:105 +msgid "Execution Order:" +msgstr "Порядок исполнения:" + +#: ../features.py:11 +msgid "Experimental web based HMI" +msgstr "Экспериментальный WEB-HMI" + +#: ../plcopen/iec_std.csv:38 +msgid "Exponent" +msgstr "Экспонента" + +#: ../plcopen/iec_std.csv:26 +msgid "Exponentiation" +msgstr "Взятие экспоненты" + +#: ../canfestival/canfestival.py:150 +msgid "Export CanOpen slave to EDS file" +msgstr "Экспортировать CanOpen ведомое устройство в EDS файл" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:243 +msgid "Export graph values to clipboard" +msgstr "Экспортировать график значений в буфер обмена" + +#: ../canfestival/canfestival.py:149 +msgid "Export slave" +msgstr "Экспортировать ведомое устройство" + +#: ../dialogs/FBDVariableDialog.py:89 +msgid "Expression:" +msgstr "Выражение:" + +#: ../controls/VariablePanel.py:72 +msgid "External" +msgstr "Внешний" + +#: ../ProjectController.py:676 +msgid "Extracting Located Variables...\n" +msgstr "Экспорт локальных переменных...\n" + +#: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 +#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143 +msgid "FBD" +msgstr "" + +#: ../ProjectController.py:1629 +msgid "Failed : Must build before transfer.\n" +msgstr "Ошибка: необходима сборка перед передачей.\n" + +#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:458 +msgid "Falling Edge" +msgstr "Спадающий фронт" + +#: ../plcopen/definitions.py:32 +msgid "" +"Falling edge detector\n" +"The output produces a single pulse when a falling edge is detected." +msgstr "" +"Детектор падающего фронта\n" +"На выходе формируется одиночный импульс, если обнаружен падающий фронт." + +#: ../ProjectController.py:946 +msgid "Fatal : cannot get builder.\n" +msgstr "Ошибка: невозможно получить сборщик.\n" + +#: ../dialogs/DurationEditorDialog.py:160 +#, python-format +msgid "Field %s hasn't a valid value!" +msgstr "Поле %s имеет неверное значение!" + +#: ../dialogs/DurationEditorDialog.py:162 +#, python-format +msgid "Fields %s haven't a valid value!" +msgstr "Поля %s имеют неверные значения!" + +#: ../controls/FolderTree.py:216 +#, python-format +msgid "File '%s' already exists!" +msgstr "Файл '%s' уже существует!" + +#: ../dialogs/FindInPouDialog.py:35 ../dialogs/FindInPouDialog.py:105 +#: ../IDEFrame.py:351 +msgid "Find" +msgstr "Поиск" + +#: ../IDEFrame.py:353 +msgid "Find Next" +msgstr "Поиск следующего" + +#: ../IDEFrame.py:355 +msgid "Find Previous" +msgstr "Поиск предыдущего" + +#: ../plcopen/iec_std.csv:90 +msgid "Find position" +msgstr "Поиск позиции" + +#: ../dialogs/FindInPouDialog.py:57 +msgid "Find:" +msgstr "Поиск:" + +#: ../connectors/PYRO/__init__.py:159 +msgid "Force runtime reload\n" +msgstr "Принудительный перезапуск системы исполнения\n" + +#: ../editors/Viewer.py:1528 +msgid "Force value" +msgstr "Фиксировать значение" + +#: ../dialogs/ForceVariableDialog.py:162 +msgid "Forcing Variable Value" +msgstr "Форсировать значение переменной" + +#: ../dialogs/SFCTransitionDialog.py:178 ../dialogs/PouTransitionDialog.py:97 +#: ../dialogs/ProjectDialog.py:70 ../dialogs/PouActionDialog.py:94 +#: ../dialogs/PouDialog.py:116 +#, python-format +msgid "Form isn't complete. %s must be filled!" +msgstr "Форма заполнена неполностью. %s должен быть заполнен!" + +#: ../dialogs/SFCStepDialog.py:141 ../dialogs/FBDBlockDialog.py:232 +#: ../dialogs/ConnectionDialog.py:160 +msgid "Form isn't complete. Name must be filled!" +msgstr "Форма заполнена неполностью. Имя должно быть заполнено!" + +#: ../dialogs/SearchInProjectDialog.py:145 +msgid "Form isn't complete. Pattern to search must be filled!" +msgstr "Форма заполнена неполностью. Шаблон поиска должен быть заполнен!" + +#: ../dialogs/FBDBlockDialog.py:228 +msgid "Form isn't complete. Valid block type must be selected!" +msgstr "Форма заполнена неполностью. Должен быть выбран корректный тип блока!" + +#: ../dialogs/FindInPouDialog.py:73 +msgid "Forward" +msgstr "Вперед" + +#: ../dialogs/SearchInProjectDialog.py:44 ../IDEFrame.py:1714 +msgid "Function" +msgstr "Функция" + +#: ../IDEFrame.py:325 +msgid "Function &Block" +msgstr "Функциональный &блок" + +#: ../dialogs/SearchInProjectDialog.py:45 ../IDEFrame.py:1713 +#: ../IDEFrame.py:1906 +msgid "Function Block" +msgstr "Функциональный блок" + +#: ../controls/VariablePanel.py:807 +msgid "Function Block Types" +msgstr "Типы функциональных блоков" + +#: ../PLCControler.py:95 +msgid "Function Blocks" +msgstr "Функциональные блоки" + +#: ../editors/Viewer.py:244 +msgid "Function Blocks can't be used in Functions!" +msgstr "Функциональные блоки не могут использоваться в функциях!" + +#: ../PLCControler.py:2336 +#, python-format +msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!" +msgstr "Функциональный блок \"%s\" не может быть вставлен в функцию!!!" + +#: ../PLCControler.py:95 +msgid "Functions" +msgstr "Функции" + +#: ../PLCOpenEditor.py:109 +msgid "Generate Program" +msgstr "Сгенерировать программу" + +#: ../ProjectController.py:580 +msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n" +msgstr "Генерация МЭК-61131 ST/IL/SFC кода ПЛК...\n" + +msgid "Generic" +msgstr "" + +#: ../controls/VariablePanel.py:73 +msgid "Global" +msgstr "Глобальный" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:242 +msgid "Go to current value" +msgstr "Перейти к текущему значению" + +#: ../controls/ProjectPropertiesPanel.py:173 +msgid "Graphics" +msgstr "Графика" + +#: ../plcopen/iec_std.csv:75 +msgid "Greater than" +msgstr "Больше" + +#: ../plcopen/iec_std.csv:76 +msgid "Greater than or equal to" +msgstr "Больше или равно" + +#: ../controls/ProjectPropertiesPanel.py:134 +msgid "Grid Resolution:" +msgstr "Шаг сетки:" + +#: ../controls/ProjectPropertiesPanel.py:120 +msgid "Height:" +msgstr "Высота:" + +#: ../editors/FileManagementPanel.py:85 +msgid "Home Directory:" +msgstr "Домашняя директория:" + +#: ../controls/ProjectPropertiesPanel.py:150 +msgid "Horizontal:" +msgstr "Горизонтальный:" + +#: ../dialogs/DurationEditorDialog.py:44 +msgid "Hours:" +msgstr "Часы:" + +#: ../plcopen/definitions.py:44 +msgid "" +"Hysteresis\n" +"The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2." +msgstr "" +"Гистерезис\n" +"Функциональный блок формирует дискретный выход с гистерезисом в зависимости от разницы двух вещественных входов XIN1 и XIN2." + +msgid "IEC_Channel" +msgstr "МЭК-канал" + +#: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 +#: ../dialogs/PouDialog.py:36 +msgid "IL" +msgstr "" + +#: ../Beremiz_service.py:278 ../Beremiz_service.py:279 +msgid "IP is not valid!" +msgstr "Неверный IP-адрес" + +#: ../svgui/svgui.py:18 ../svgui/svgui.py:19 +msgid "Import SVG" +msgstr "Импорт SVG" + +#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1555 +#: ../controls/VariablePanel.py:71 +msgid "InOut" +msgstr "Вход/Выход" + +#: ../editors/Viewer.py:1087 +msgid "Inactive" +msgstr "Неактивный" + +#: ../controls/VariablePanel.py:268 +#, python-format +msgid "Incompatible data types between \"%s\" and \"%s\"" +msgstr "\"%s\" и \"%s\" имеют несовместимые типы данных" + +#: ../controls/VariablePanel.py:277 +#, python-format +msgid "Incompatible size of data between \"%s\" and \"%s\"" +msgstr "\"%s\" и \"%s\" имеют несовместимый размер данных" + +#: ../controls/VariablePanel.py:273 +#, python-format +msgid "Incompatible size of data between \"%s\" and \"BOOL\"" +msgstr "Несовместимый размер данных \"%s\" с типом \"BOOL\"" + +#: ../dialogs/ActionBlockDialog.py:38 +msgid "Indicator" +msgstr "Индикатор" + +#: ../editors/Viewer.py:548 ../editors/Viewer.py:2058 +msgid "Initial Step" +msgstr "Исходный шаг" + +#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 +#: ../controls/VariablePanel.py:54 +msgid "Initial Value" +msgstr "Исходное значение" + +#: ../editors/DataTypeEditor.py:184 ../editors/DataTypeEditor.py:215 +#: ../editors/DataTypeEditor.py:271 ../editors/DataTypeEditor.py:309 +msgid "Initial Value:" +msgstr "Исходное значение:" + +#: ../svgui/svgui.py:22 +msgid "Inkscape" +msgstr "" + +#: ../dialogs/SFCTransitionDialog.py:74 ../dialogs/ActionBlockDialog.py:42 +msgid "Inline" +msgstr "Непосредственно" + +#: ../dialogs/SFCStepDialog.py:69 ../dialogs/FBDVariableDialog.py:37 +#: ../dialogs/BrowseLocationsDialog.py:35 ../editors/Viewer.py:1553 +#: ../controls/VariablePanel.py:71 +msgid "Input" +msgstr "Вход" + +#: ../dialogs/FBDBlockDialog.py:93 +msgid "Inputs:" +msgstr "Входы:" + +#: ../plcopen/iec_std.csv:87 +msgid "Insertion (into)" +msgstr "Вставка подстроки" + +#: ../plcopen/plcopen.py:1684 +#, python-format +msgid "Instance with id %d doesn't exist!" +msgstr "Экземпляр с id %d не существует!" + +#: ../editors/ResourceEditor.py:264 +msgid "Instances:" +msgstr "Экземпляры:" + +#: ../plcopen/definitions.py:40 +msgid "" +"Integral\n" +"The integral function block integrates the value of input XIN over time." +msgstr "" +"Интеграл\n" +"Функциональный блок интегрирует входное значение XIN во времени." + +#: ../controls/VariablePanel.py:70 +msgid "Interface" +msgstr "Интерфейс" + +#: ../editors/ResourceEditor.py:72 +msgid "Interrupt" +msgstr "Прерывание" + +#: ../editors/ResourceEditor.py:68 +msgid "Interval" +msgstr "Интервал" + +#: ../PLCControler.py:2324 +msgid "Invalid plcopen element(s)!!!" +msgstr "Некорректный PlcOpen элемент(ы)!!!" + +#: ../canfestival/config_utils.py:377 ../canfestival/config_utils.py:638 +#, python-format +msgid "Invalid type \"%s\"-> %d != %d for location\"%s\"" +msgstr "Неправильный тип \"%s\"->\"%d != %d для \"%s\"" + +#: ../dialogs/ForceVariableDialog.py:177 +#, python-format +msgid "Invalid value \"%s\" for \"%s\" variable!" +msgstr "Неверное значение \"%s\" для переменной \"%s\"!" + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:132 +#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:92 +#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:160 +#, python-format +msgid "Invalid value \"%s\" for debug variable" +msgstr "Неверное значение \"%s\" для отлаживаемой переменной" + +#: ../controls/VariablePanel.py:247 ../controls/VariablePanel.py:250 +#, python-format +msgid "Invalid value \"%s\" for variable grid element" +msgstr "" + +#: ../editors/Viewer.py:229 ../editors/Viewer.py:232 +#, python-format +msgid "Invalid value \"%s\" for viewer block" +msgstr "" + +#: ../dialogs/DurationEditorDialog.py:121 +msgid "" +"Invalid value!\n" +"You must fill a numeric value." +msgstr "" +"Неверное значение!\n" +"Необходимо ввести числовое значение." + +#: ../editors/Viewer.py:553 ../editors/Viewer.py:2062 +msgid "Jump" +msgstr "Переход" + +#: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 +#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143 +msgid "LD" +msgstr "" + +msgid "LDFLAGS" +msgstr "" + +#: ../editors/LDViewer.py:215 ../editors/LDViewer.py:231 +#, python-format +msgid "Ladder element with id %d is on more than one rung." +msgstr "Элемент лестничной диаграммы с id %d более чем на одной ступени." + +#: ../dialogs/PouTransitionDialog.py:86 ../dialogs/PouActionDialog.py:83 +#: ../dialogs/PouDialog.py:104 +msgid "Language" +msgstr "Язык" + +#: ../controls/ProjectPropertiesPanel.py:186 +msgid "Language (optional):" +msgstr "Язык (опционально):" + +#: ../dialogs/PouTransitionDialog.py:60 ../dialogs/PouActionDialog.py:56 +#: ../dialogs/PouDialog.py:73 +msgid "Language:" +msgstr "Язык:" + +#: ../ProjectController.py:1635 +msgid "Latest build already matches current target. Transfering anyway...\n" +msgstr "Загружаемая программа совпадает с текущий программой в целевом ПЛК. Загрузка продолжена...\n" + +#: ../Beremiz_service.py:250 +msgid "Launch WX GUI inspector" +msgstr "Запустить WX GUI Inspector" + +#: ../Beremiz_service.py:249 +msgid "Launch a live Python shell" +msgstr "Запустить консоль Python" + +#: ../editors/Viewer.py:481 +msgid "Left" +msgstr "Слева" + +#: ../dialogs/LDPowerRailDialog.py:61 +msgid "Left PowerRail" +msgstr "Левая шина питания" + +#: ../plcopen/iec_std.csv:81 +msgid "Length of string" +msgstr "Длина строки" + +#: ../plcopen/iec_std.csv:78 +msgid "Less than" +msgstr "Меньше" + +#: ../plcopen/iec_std.csv:79 +msgid "Less than or equal to" +msgstr "Меньше либо равно" + +msgid "Libraries" +msgstr "Библиотеки" + +#: ../IDEFrame.py:606 +msgid "Library" +msgstr "Библиотека" + +#: ../plcopen/iec_std.csv:73 +msgid "Limitation" +msgstr "Ограничение" + +msgid "Linker" +msgstr "Линковщик" + +#: ../targets/toolchain_gcc.py:142 +msgid "Linking :\n" +msgstr "Линковка:\n" + +msgid "Linux" +msgstr "GNU/Linux" + +#: ../dialogs/DiscoveryDialog.py:110 ../controls/VariablePanel.py:72 +msgid "Local" +msgstr "Локальный" + +#: ../canfestival/canfestival.py:322 +msgid "Local entries" +msgstr "Локальные записи" + +#: ../ProjectController.py:1541 +msgid "Local service discovery failed!\n" +msgstr "Локальный сервис не найден!\n" + +#: ../controls/VariablePanel.py:53 +msgid "Location" +msgstr "Размещение" + +#: ../dialogs/BrowseLocationsDialog.py:67 +msgid "Locations available:" +msgstr "Доступные размещения:" + +#: ../plcopen/iec_std.csv:25 +msgid "Logarithm to base 10" +msgstr "Десятичный логарифм" + +#: ../connectors/PYRO/__init__.py:90 +#, python-format +msgid "MDNS resolution failure for '%s'\n" +msgstr "MDNS разрешение неудачно для '%s'\n" + +#: ../canfestival/SlaveEditor.py:41 ../canfestival/NetworkEditor.py:62 +msgid "Map Variable" +msgstr "Отображение переменной" + +#: ../features.py:7 +msgid "Map located variables over CANopen" +msgstr "Отображение переменных по CANopen" + +#: ../canfestival/NetworkEditor.py:83 +msgid "Master" +msgstr "Ведущий" + +#: ../ConfigTreeNode.py:514 +#, python-format +msgid "Max count (%d) reached for this confnode of type %s " +msgstr "Достигнуто максимальное количество (%d) для типа узла конфигурации %s" + +#: ../plcopen/iec_std.csv:71 +msgid "Maximum" +msgstr "Максимум" + +#: ../editors/DataTypeEditor.py:238 +msgid "Maximum:" +msgstr "Максимум:" + +#: ../dialogs/BrowseLocationsDialog.py:37 +msgid "Memory" +msgstr "Память" + +#: ../IDEFrame.py:574 +msgid "Menu ToolBar" +msgstr "Меню" + +#: ../dialogs/DurationEditorDialog.py:48 +msgid "Microseconds:" +msgstr "Микросекунды:" + +#: ../editors/Viewer.py:486 +msgid "Middle" +msgstr "Посередине" + +#: ../dialogs/DurationEditorDialog.py:47 +msgid "Milliseconds:" +msgstr "Миллисекунды:" + +#: ../plcopen/iec_std.csv:72 +msgid "Minimum" +msgstr "Минимум" + +#: ../editors/DataTypeEditor.py:225 +msgid "Minimum:" +msgstr "Минимум:" + +#: ../dialogs/DurationEditorDialog.py:45 +msgid "Minutes:" +msgstr "Минуты:" + +#: ../controls/ProjectPropertiesPanel.py:210 +msgid "Miscellaneous" +msgstr "Прочее" + +#: ../dialogs/LDElementDialog.py:63 +msgid "Modifier:" +msgstr "Модификатор:" + +#: ../PLCGenerator.py:778 ../PLCGenerator.py:1217 +#, python-format +msgid "More than one connector found corresponding to \"%s\" continuation in \"%s\" POU" +msgstr "Более одного коннектора соответствуют продолжению цепи \"%s\" в POU \"%s\"" + +#: ../dialogs/ActionBlockDialog.py:140 +msgid "Move action down" +msgstr "Переместить действие ниже" + +#: ../dialogs/ActionBlockDialog.py:139 +msgid "Move action up" +msgstr "Переместить действие выше" + +#: ../controls/CustomEditableListBox.py:43 +msgid "Move down" +msgstr "Переместить ниже" + +#: ../editors/DataTypeEditor.py:354 +msgid "Move element down" +msgstr "Переместить элемент ниже" + +#: ../editors/DataTypeEditor.py:353 +msgid "Move element up" +msgstr "Переместить элементы выше" + +#: ../editors/ResourceEditor.py:271 +msgid "Move instance down" +msgstr "Переместить экземпляр ниже" + +#: ../editors/ResourceEditor.py:270 +msgid "Move instance up" +msgstr "Переместить экземпляр выше" + +#: ../editors/ResourceEditor.py:242 +msgid "Move task down" +msgstr "Переместить задачу ниже" + +#: ../editors/ResourceEditor.py:241 +msgid "Move task up" +msgstr "Переместить задачу выше" + +#: ../IDEFrame.py:75 ../IDEFrame.py:90 ../IDEFrame.py:120 ../IDEFrame.py:161 +msgid "Move the view" +msgstr "Переместить отображение" + +#: ../controls/CustomEditableListBox.py:42 +msgid "Move up" +msgstr "Переместить выше" + +#: ../editors/CodeFileEditor.py:643 ../controls/VariablePanel.py:443 +msgid "Move variable down" +msgstr "Переместить переменную ниже" + +#: ../editors/CodeFileEditor.py:642 ../controls/VariablePanel.py:442 +msgid "Move variable up" +msgstr "Переместить переменную выше" + +#: ../plcopen/iec_std.csv:74 +msgid "Multiplexer (select 1 of N)" +msgstr "Мультиплексор (1 в N)" + +#: ../plcopen/iec_std.csv:34 +msgid "Multiplication" +msgstr "Умножение" + +#: ../editors/FileManagementPanel.py:83 +msgid "My Computer:" +msgstr "Мой компьютер:" + +#: ../editors/ResourceEditor.py:68 ../editors/ResourceEditor.py:83 +#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 +#: ../controls/VariablePanel.py:54 +msgid "Name" +msgstr "Имя" + +#: ../Beremiz_service.py:300 +msgid "Name must not be null!" +msgstr "Имя не может быть null!" + +#: ../dialogs/SFCStepDialog.py:55 ../dialogs/FBDBlockDialog.py:83 +#: ../dialogs/ConnectionDialog.py:75 +msgid "Name:" +msgstr "Имя:" + +#: ../plcopen/iec_std.csv:24 +msgid "Natural logarithm" +msgstr "Натуральный логарифм" + +#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:456 +msgid "Negated" +msgstr "Инверсия" + +#: ../PLCOpenEditor.py:96 ../PLCOpenEditor.py:138 ../Beremiz.py:314 +#: ../Beremiz.py:349 +msgid "New" +msgstr "Новый" + +#: ../controls/CustomEditableListBox.py:40 +msgid "New item" +msgstr "Новый элемент" + +#: ../editors/Viewer.py:455 +msgid "No Modifier" +msgstr "Нет модификатора" + +#: ../ProjectController.py:1662 +msgid "No PLC to transfer (did build succeed ?)\n" +msgstr "Нет ПЛК для передачи (была сборка успешна?)\n" + +#: ../PLCGenerator.py:1608 +#, python-format +msgid "No body defined in \"%s\" POU" +msgstr "Нет тела для POU \"%s\"" + +#: ../PLCGenerator.py:797 ../PLCGenerator.py:1227 +#, python-format +msgid "No connector found corresponding to \"%s\" continuation in \"%s\" POU" +msgstr "Не найден коннектор, соответствующий продолжению цепи \"%s\" в POU \"%s\"" + +#: ../PLCOpenEditor.py:340 +msgid "" +"No documentation available.\n" +"Coming soon." +msgstr "" +"Документация отсутствует.\n" +"В разработке." + +#: ../PLCGenerator.py:819 +#, python-format +msgid "No informations found for \"%s\" block" +msgstr "Не найдена информация по блоку \"%s\"" + +#: ../PLCGenerator.py:1183 +#, python-format +msgid "No output %s variable found in block %s in POU %s. Connection must be broken" +msgstr "Выходная переменная %s не найдена в блоке %s в POU %s." + +#: ../controls/SearchResultPanel.py:169 +msgid "No search results available." +msgstr "Ничего не найдено." + +#: ../svgui/svgui.py:107 +#, python-format +msgid "No such SVG file: %s\n" +msgstr "Нет такого SVG файла: %s\n" + +#: ../canfestival/config_utils.py:633 +#, python-format +msgid "No such index/subindex (%x,%x) (variable %s)" +msgstr "Нет индекса/подиндекса (%x,%x) (переменная %s)" + +#: ../canfestival/config_utils.py:362 +#, python-format +msgid "No such index/subindex (%x,%x) in ID : %d (variable %s)" +msgstr "Нет индекса/подиндекса (%x,%x) в ID: %d (переменная %s)" + +#: ../dialogs/BrowseValuesLibraryDialog.py:83 +msgid "No valid value selected!" +msgstr "Не выбрано допустимое значение!" + +#: ../PLCGenerator.py:1606 +#, python-format +msgid "No variable defined in \"%s\" POU" +msgstr "Переменная не определена в POU \"%s\"" + +msgid "NodeId" +msgstr "ID узла" + +#: ../canfestival/config_utils.py:355 +#, python-format +msgid "Non existing node ID : %d (variable %s)" +msgstr "Несуществующий ID узла: %d (переменная %s)" + +#: ../controls/VariablePanel.py:64 +msgid "Non-Retain" +msgstr "Не-Retain" + +#: ../dialogs/LDElementDialog.py:75 +msgid "Normal" +msgstr "Обычный" + +#: ../canfestival/config_utils.py:384 +#, python-format +msgid "Not PDO mappable variable : '%s' (ID:%d,Idx:%x,sIdx:%x))" +msgstr "Не переменная для отображения в PDO: '%s' (ID:%d,Idx:%x,sIdx:%x))" + +#: ../plcopen/iec_std.csv:80 +msgid "Not equal to" +msgstr "Не равно" + +#: ../dialogs/SFCDivergenceDialog.py:78 +msgid "Number of sequences:" +msgstr "Число ветвей:" + +#: ../plcopen/iec_std.csv:22 +msgid "Numerical" +msgstr "Математические функции" + +#: ../plcopen/definitions.py:38 +msgid "" +"Off-delay timer\n" +"The off-delay timer can be used to delay setting an output false, for fixed period after input goes false." +msgstr "" +"Таймер выключения\n" +"Таймер выключения может быть использован, чтобы внести задержку установки выхода в FALSE на фиксированный период времени после того, как вход стал FALSE." + +#: ../plcopen/definitions.py:37 +msgid "" +"On-delay timer\n" +"The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true." +msgstr "" +"Таймер включения\n" +"Таймер выключения может быть использован, чтобы внести задержку установки выхода в TRUE на фиксированный период времени после того, как вход стал TRUE." + +#: ../dialogs/SearchInProjectDialog.py:93 +msgid "Only Elements" +msgstr "Только элементы" + +#: ../PLCOpenEditor.py:98 ../PLCOpenEditor.py:139 ../Beremiz.py:316 +#: ../Beremiz.py:350 +msgid "Open" +msgstr "Открыть" + +#: ../svgui/svgui.py:116 +msgid "Open Inkscape" +msgstr "Открыть Inkscape" + +#: ../ProjectController.py:1714 +msgid "Open a file explorer to manage project files" +msgstr "Открыть файловый менеджер для просмотра файлов проекта" + +#: ../wxglade_hmi/wxglade_hmi.py:114 +msgid "Open wxGlade" +msgstr "Открыть wxGlade" + +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 +msgid "Option" +msgstr "Настройка" + +#: ../dialogs/FindInPouDialog.py:82 +msgid "Options" +msgstr "Настройки" + +#: ../controls/ProjectPropertiesPanel.py:97 +msgid "Organization (optional):" +msgstr "Организация (опционально):" + +#: ../canfestival/SlaveEditor.py:51 ../canfestival/NetworkEditor.py:72 +msgid "Other Profile" +msgstr "Другой профиль" + +#: ../dialogs/SFCStepDialog.py:70 ../dialogs/FBDVariableDialog.py:39 +#: ../dialogs/BrowseLocationsDialog.py:36 ../editors/Viewer.py:1554 +#: ../controls/VariablePanel.py:71 +msgid "Output" +msgstr "Выход" + +#: ../canfestival/SlaveEditor.py:40 ../canfestival/NetworkEditor.py:61 +msgid "PDO Receive" +msgstr "PDO приема" + +#: ../canfestival/SlaveEditor.py:39 ../canfestival/NetworkEditor.py:60 +msgid "PDO Transmit" +msgstr "PDO передачи" + +#: ../plcopen/definitions.py:42 +msgid "" +"PID\n" +"The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control." +msgstr "" +"ПИД\n" +"ПИД (Пропорциональный Интегральный Дифференциальный) ФБ - классический регулятор, используемый в системах с обратной связью." + +#: ../targets/toolchain_gcc.py:107 +msgid "PLC :\n" +msgstr "ПЛК:\n" + +#: ../Beremiz.py:441 +msgid "PLC Log" +msgstr "Лог ПЛК" + +#: ../ProjectController.py:930 +msgid "PLC code generation failed !\n" +msgstr "Неудачная генерация кода!\n" + +#: ../PLCOpenEditor.py:189 ../PLCOpenEditor.py:302 +#, python-format +msgid "" +"PLC syntax error at line %d:\n" +"%s" +msgstr "" +"Синтаксическая ошибка в строке %d:\n" +"%s" + +#: ../PLCOpenEditor.py:285 ../PLCOpenEditor.py:361 +msgid "PLCOpen files (*.xml)|*.xml|All files|*.*" +msgstr "PLCOpen файлы (*.xml)|*.xml|All files|*.*" + +#: ../PLCOpenEditor.py:146 ../PLCOpenEditor.py:202 +msgid "PLCOpenEditor" +msgstr "" + +#: ../dialogs/PouDialog.py:100 +msgid "POU Name" +msgstr "Имя POU" + +#: ../dialogs/PouDialog.py:58 +msgid "POU Name:" +msgstr "Имя POU:" + +#: ../dialogs/PouDialog.py:102 +msgid "POU Type" +msgstr "Тип POU" + +#: ../dialogs/PouDialog.py:65 +msgid "POU Type:" +msgstr "Тип POU:" + +#: ../connectors/PYRO/__init__.py:41 +#, python-format +msgid "PYRO connecting to URI : %s\n" +msgstr "PYRO подключение к URI: %s\n" + +#: ../connectors/PYRO/__init__.py:57 +#, python-format +msgid "PYRO using certificates in '%s' \n" +msgstr "PYRO использует сертификаты в '%s'\n" + +#: ../PLCOpenEditor.py:112 ../Beremiz.py:329 +msgid "Page Setup" +msgstr "Настройки страницы" + +#: ../controls/ProjectPropertiesPanel.py:110 +msgid "Page Size (optional):" +msgstr "Размер страницы (опционально):" + +#: ../IDEFrame.py:2567 +#, python-format +msgid "Page: %d" +msgstr "Страница: %d" + +#: ../controls/PouInstanceVariablesPanel.py:124 +msgid "Parent instance" +msgstr "Родительский экземпляр" + +#: ../editors/Viewer.py:594 ../IDEFrame.py:348 ../IDEFrame.py:402 +msgid "Paste" +msgstr "Вставить" + +#: ../IDEFrame.py:1833 +msgid "Paste POU" +msgstr "Вставить POU" + +#: ../dialogs/SearchInProjectDialog.py:64 +msgid "Pattern to search:" +msgstr "Шаблон поиска:" + +#: ../dialogs/LDPowerRailDialog.py:72 +msgid "Pin number:" +msgstr "Номер пина:" + +#: ../editors/Viewer.py:2672 ../editors/Viewer.py:2916 +#: ../editors/SFCViewer.py:696 +msgid "Please choose a target" +msgstr "Выберете цель перехода" + +#: ../editors/TextViewer.py:261 +msgid "Please enter a block name" +msgstr "Введите имя блока" + +#: ../editors/Viewer.py:2542 ../editors/Viewer.py:2953 +msgid "Please enter comment text" +msgstr "Введите текст комментария" + +#: ../editors/SFCViewer.py:359 ../editors/SFCViewer.py:381 +#: ../editors/SFCViewer.py:725 +msgid "Please enter step name" +msgstr "Введите имя шага" + +#: ../dialogs/ForceVariableDialog.py:163 +#, python-format +msgid "Please enter value for a \"%s\" variable:" +msgstr "Введите значение для переменной \"%s\":" + +#: ../Beremiz_service.py:287 +msgid "Port number must be 0 <= port <= 65535!" +msgstr "Номер порта должен быть в диапазоне от 0 до 65535!" + +#: ../Beremiz_service.py:287 +msgid "Port number must be an integer!" +msgstr "Номер порта должен быть целым числом!" + +#: ../editors/Viewer.py:532 ../editors/Viewer.py:2085 +msgid "Power Rail" +msgstr "Шина питания" + +#: ../dialogs/LDPowerRailDialog.py:49 +msgid "Power Rail Properties" +msgstr "Свойства шины питания" + +#: ../PLCOpenEditor.py:114 ../Beremiz.py:331 +msgid "Preview" +msgstr "Просмотр" + +#: ../dialogs/BlockPreviewDialog.py:57 +msgid "Preview:" +msgstr "Просмотр:" + +#: ../PLCOpenEditor.py:116 ../PLCOpenEditor.py:142 ../Beremiz.py:333 +#: ../Beremiz.py:353 +msgid "Print" +msgstr "Печать" + +#: ../IDEFrame.py:1050 +msgid "Print preview" +msgstr "Предварительный просмотр" + +#: ../editors/ResourceEditor.py:68 +msgid "Priority" +msgstr "Приоритет" + +#: ../dialogs/SFCTransitionDialog.py:88 +msgid "Priority:" +msgstr "Приоритет:" + +#: ../runtime/PLCObject.py:369 +#, python-format +msgid "Problem starting PLC : error %d" +msgstr "Проблема запуска ПЛК: ошибка %d" + +#: ../controls/ProjectPropertiesPanel.py:80 +msgid "Product Name (required):" +msgstr "Имя продукта (обязательно):" + +#: ../controls/ProjectPropertiesPanel.py:82 +msgid "Product Release (optional):" +msgstr "Релиз продукта (опцинально):" + +#: ../controls/ProjectPropertiesPanel.py:81 +msgid "Product Version (required):" +msgstr "Версия продукта (обязательно):" + +#: ../dialogs/SearchInProjectDialog.py:46 ../IDEFrame.py:1712 +#: ../IDEFrame.py:1909 +msgid "Program" +msgstr "Программа" + +#: ../PLCOpenEditor.py:330 +msgid "Program was successfully generated!" +msgstr "Программа успешно сгенерирована!" + +#: ../PLCControler.py:96 +msgid "Programs" +msgstr "Программы" + +#: ../editors/Viewer.py:238 +msgid "Programs can't be used by other POUs!" +msgstr "Программы не могут использоваться другими POU!" + +#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:559 +msgid "Project" +msgstr "Проект" + +#: ../controls/SearchResultPanel.py:173 +#, python-format +msgid "Project '%s':" +msgstr "Проект '%s':" + +#: ../ProjectController.py:1713 +msgid "Project Files" +msgstr "Файлы проекта" + +#: ../controls/ProjectPropertiesPanel.py:78 +msgid "Project Name (required):" +msgstr "Имя проекта (обязательно):" + +#: ../controls/ProjectPropertiesPanel.py:79 +msgid "Project Version (optional):" +msgstr "Версия проекта (опционально):" + +#: ../PLCControler.py:3157 +msgid "" +"Project file syntax error:\n" +"\n" +msgstr "" +"Синтаксическая ошибка в файле проекта:\n" +"\n" + +#: ../dialogs/ProjectDialog.py:32 ../editors/ProjectNodeEditor.py:14 +msgid "Project properties" +msgstr "Свойства проекта" + +#: ../ConfigTreeNode.py:540 +#, python-format +msgid "Project tree layout do not match confnode.xml %s!=%s " +msgstr "Дерево проекта не соответствует confnode.xml %s!=%s" + +#: ../dialogs/ConnectionDialog.py:94 +msgid "Propagate Name" +msgstr "Для всей цепи" + +#: ../PLCControler.py:97 +msgid "Properties" +msgstr "Свойства" + +#: ../plcopen/definitions.py:36 +msgid "" +"Pulse timer\n" +"The pulse timer can be used to generate output pulses of a given time duration." +msgstr "" +"Генератор импульсов\n" +"Функциональный блок используется для генерации выходных импульсов заданной длительности." + +#: ../py_ext/PythonEditor.py:57 +msgid "Python code" +msgstr "Код на python" + +#: ../features.py:9 +msgid "Python file" +msgstr "Python файл" + +#: ../dialogs/ActionBlockDialog.py:38 +msgid "Qualifier" +msgstr "Спецификатор" + +#: ../PLCOpenEditor.py:122 ../Beremiz.py:336 ../Beremiz_service.py:252 +msgid "Quit" +msgstr "Выход" + +#: ../plcopen/definitions.py:29 +msgid "" +"RS bistable\n" +"The RS bistable is a latch where the Reset dominates." +msgstr "" +"RS триггер\n" +"RS триггер - переключатель с доминантой выключения." + +#: ../plcopen/definitions.py:43 +msgid "" +"Ramp\n" +"The RAMP function block is modelled on example given in the standard." +msgstr "" +"Ограничитель скорости изменения сигнала\n" +"Функциональный блок написан согласно примеру, приведенному в стандарте." + +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:225 +msgid "Range:" +msgstr "Диапазон:" + +#: ../ProjectController.py:1709 +msgid "Raw IEC code" +msgstr "МЭК-код" + +#: ../plcopen/definitions.py:39 +msgid "" +"Real time clock\n" +"The real time clock has many uses including time stamping, setting dates and times of day in batch reports, in alarm messages and so on." +msgstr "" +"RTC часы\n" +"Часы реального времени используется для получения меток времени, установки даты и времени дня в отчетах, сообщениях об авариях и пр." + +#: ../Beremiz.py:1109 +#, python-format +msgid "Really delete node '%s'?" +msgstr "Действительно удалить элемент '%s'?" + +#: ../IDEFrame.py:338 ../IDEFrame.py:398 +msgid "Redo" +msgstr "Повторить" + +#: ../dialogs/SFCTransitionDialog.py:73 +msgid "Reference" +msgstr "Ссылка" + +#: ../dialogs/DiscoveryDialog.py:105 ../IDEFrame.py:408 +msgid "Refresh" +msgstr "Обновить" + +#: ../dialogs/SearchInProjectDialog.py:73 +msgid "Regular expression" +msgstr "Регулярное выражение" + +#: ../dialogs/FindInPouDialog.py:97 +msgid "Regular expressions" +msgstr "Регулярные выражения" + +#: ../editors/Viewer.py:1531 +msgid "Release value" +msgstr "Освободить значение" + +#: ../plcopen/iec_std.csv:37 +msgid "Remainder (modulo)" +msgstr "Остаток от деления (modulo)" + +#: ../Beremiz.py:1110 +#, python-format +msgid "Remove %s node" +msgstr "Удалить %s элемент" + +#: ../IDEFrame.py:2373 +msgid "Remove Datatype" +msgstr "Удалить тип данных" + +#: ../IDEFrame.py:2378 +msgid "Remove Pou" +msgstr "Удалить POU" + +#: ../dialogs/ActionBlockDialog.py:138 +msgid "Remove action" +msgstr "Удалить действие" + +#: ../editors/DataTypeEditor.py:352 +msgid "Remove element" +msgstr "Удалить элемент" + +#: ../editors/FileManagementPanel.py:63 +msgid "Remove file from left folder" +msgstr "Удалить файл из левой директории" + +#: ../editors/ResourceEditor.py:269 +msgid "Remove instance" +msgstr "Удалить экземпляр" + +#: ../canfestival/NetworkEditor.py:81 +msgid "Remove slave" +msgstr "Удалить ведомое устройство" + +#: ../editors/ResourceEditor.py:240 +msgid "Remove task" +msgstr "Удалить задачу" + +#: ../editors/CodeFileEditor.py:641 ../controls/VariablePanel.py:441 +msgid "Remove variable" +msgstr "Удалить переменную" + +#: ../IDEFrame.py:1913 +msgid "Rename" +msgstr "Переименовать" + +#: ../editors/FileManagementPanel.py:181 +msgid "Replace File" +msgstr "Заменить файл" + +#: ../editors/Viewer.py:498 +msgid "Replace Wire by connections" +msgstr "Заменить цепь подключениями" + +#: ../plcopen/iec_std.csv:89 +msgid "Replacement (within)" +msgstr "Замена подстроки" + +#: ../dialogs/LDElementDialog.py:76 +msgid "Reset" +msgstr "Сброс" + +#: ../editors/Viewer.py:578 +msgid "Reset Execution Order" +msgstr "Сбросить порядок исполнения" + +#: ../IDEFrame.py:423 +msgid "Reset Perspective" +msgstr "Сбросить представление" + +#: ../controls/SearchResultPanel.py:105 +msgid "Reset search result" +msgstr "Сбросить результаты поиска" + +#: ../PLCControler.py:97 ../Beremiz.py:1041 +msgid "Resources" +msgstr "Ресурсы" + +#: ../controls/VariablePanel.py:62 +msgid "Retain" +msgstr "" + +#: ../controls/VariablePanel.py:414 +msgid "Return Type:" +msgstr "Возвращаемый тип:" + +#: ../editors/Viewer.py:483 +msgid "Right" +msgstr "Право" + +#: ../dialogs/LDPowerRailDialog.py:62 +msgid "Right PowerRail" +msgstr "Правая шина питания" + +#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:457 +msgid "Rising Edge" +msgstr "Нарастающий фронт" + +#: ../plcopen/definitions.py:31 +msgid "" +"Rising edge detector\n" +"The output produces a single pulse when a rising edge is detected." +msgstr "" +"Детектор нарастающего фронта\n" +"На выходе формируется одиночный импульс, если обнаружен нарастающий фронт." + +#: ../plcopen/iec_std.csv:65 +msgid "Rotate left" +msgstr "Циклический сдвиг влево" + +#: ../plcopen/iec_std.csv:64 +msgid "Rotate right" +msgstr "Циклический сдвиг вправо" + +#: ../plcopen/iec_std.csv:17 +msgid "Rounding up/down" +msgstr "Округление вверх/вниз" + +#: ../ProjectController.py:1677 +msgid "Run" +msgstr "Старт" + +#: ../ProjectController.py:975 +msgid "Runtime IO extensions C code generation failed !\n" +msgstr "Ошибка генерации C-кода для расширений ввода-вывода!\n" + +#: ../ProjectController.py:984 +msgid "Runtime library extensions C code generation failed !\n" +msgstr "Ошибка генерации C-кода для библиотеки расширений системы исполнения!\n" + +#: ../canfestival/SlaveEditor.py:38 ../canfestival/NetworkEditor.py:59 +msgid "SDO Client" +msgstr "SDO клиент" + +#: ../canfestival/SlaveEditor.py:37 ../canfestival/NetworkEditor.py:58 +msgid "SDO Server" +msgstr "SDO сервер" + +#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143 +msgid "SFC" +msgstr "" + +#: ../plcopen/definitions.py:28 +msgid "" +"SR bistable\n" +"The SR bistable is a latch where the Set dominates." +msgstr "" +"SR триггер\n" +"SR триггер - переключатель с доминантой включения." + +#: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 +#: ../dialogs/PouDialog.py:36 +msgid "ST" +msgstr "" + +#: ../PLCOpenEditor.py:317 +msgid "ST files (*.st)|*.st|All files|*.*" +msgstr "ST файлы (*.st)|*.st|Все файлы|*.*" + +#: ../svgui/svgui.py:101 +msgid "SVG files (*.svg)|*.svg|All files|*.*" +msgstr "SVG файлы (*.svg)|*.svg|Все файлы|*.*" + +#: ../features.py:11 +msgid "SVGUI" +msgstr "" + +#: ../PLCOpenEditor.py:105 ../PLCOpenEditor.py:140 ../Beremiz.py:320 +#: ../Beremiz.py:351 +msgid "Save" +msgstr "Сохранить" + +#: ../PLCOpenEditor.py:107 ../PLCOpenEditor.py:141 ../Beremiz.py:352 +msgid "Save As..." +msgstr "Сохранить как..." + +#: ../Beremiz.py:322 +msgid "Save as" +msgstr "Сохранить как" + +#: ../dialogs/SearchInProjectDialog.py:76 +msgid "Scope" +msgstr "Область действия" + +#: ../dialogs/SearchInProjectDialog.py:105 ../IDEFrame.py:598 +msgid "Search" +msgstr "Поиск" + +#: ../dialogs/SearchInProjectDialog.py:52 ../IDEFrame.py:358 ../IDEFrame.py:404 +msgid "Search in Project" +msgstr "Поиск в проекте" + +#: ../dialogs/DurationEditorDialog.py:46 +msgid "Seconds:" +msgstr "Секунды:" + +#: ../IDEFrame.py:364 +msgid "Select All" +msgstr "Выделить все" + +#: ../editors/Viewer.py:284 ../editors/TextViewer.py:304 +#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:280 +#: ../controls/VariablePanel.py:340 +msgid "Select a variable class:" +msgstr "" + +#: ../ProjectController.py:1126 +msgid "Select an editor:" +msgstr "Выберете редактор:" + +#: ../controls/PouInstanceVariablesPanel.py:276 +msgid "Select an instance" +msgstr "Выберете экземпляр" + +#: ../IDEFrame.py:582 +msgid "Select an object" +msgstr "Выберете объект" + +#: ../plcopen/iec_std.csv:70 +msgid "Selection" +msgstr "Выбор" + +#: ../dialogs/SFCDivergenceDialog.py:65 +msgid "Selection Convergence" +msgstr "Альтернативное объединение" + +#: ../dialogs/SFCDivergenceDialog.py:64 +msgid "Selection Divergence" +msgstr "Альтернативное ветвление" + +#: ../plcopen/definitions.py:30 +msgid "" +"Semaphore\n" +"The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources." +msgstr "" +"Семафор\n" +"Семафор предоставляет собой программный механизм синхронизации для обеспечения исключительного доступа к определенным ресурсам." + +#: ../dialogs/DiscoveryDialog.py:84 +msgid "Services available:" +msgstr "Сервисы доступны:" + +#: ../dialogs/LDElementDialog.py:76 +msgid "Set" +msgstr "Установить" + +#: ../plcopen/iec_std.csv:62 +msgid "Shift left" +msgstr "Сдвиг влево" + +#: ../plcopen/iec_std.csv:63 +msgid "Shift right" +msgstr "Сдвиг вправо" + +#: ../ProjectController.py:1703 +msgid "Show IEC code generated by PLCGenerator" +msgstr "Показать год, сгенерированный PLCGenerator" + +#: ../canfestival/canfestival.py:363 +msgid "Show Master" +msgstr "Показать ведущего" + +#: ../canfestival/canfestival.py:364 +msgid "Show Master generated by config_utils" +msgstr "Показать ведущий узел сгенерированный config_utils" + +#: ../ProjectController.py:1701 +msgid "Show code" +msgstr "Показать код" + +#: ../dialogs/SFCDivergenceDialog.py:67 +msgid "Simultaneous Convergence" +msgstr "Параллельное объединение" + +#: ../dialogs/SFCDivergenceDialog.py:66 +msgid "Simultaneous Divergence" +msgstr "Параллельное ветвление" + +#: ../plcopen/iec_std.csv:27 +msgid "Sine" +msgstr "Синус" + +#: ../editors/ResourceEditor.py:68 +msgid "Single" +msgstr "Источник прерывания" + +#: ../targets/toolchain_makefile.py:112 +msgid "Source didn't change, no build.\n" +msgstr "Исходные файлы не изменились, сборка не нужна.\n" + +#: ../plcopen/iec_std.csv:23 +msgid "Square root (base 2)" +msgstr "Квадратный корень" + +#: ../plcopen/definitions.py:21 +msgid "Standard function blocks" +msgstr "Стандартные функциональные блоки" + +#: ../ProjectController.py:1679 ../Beremiz_service.py:240 +msgid "Start PLC" +msgstr "Запустить ПЛК" + +#: ../ProjectController.py:922 +#, python-format +msgid "Start build in %s\n" +msgstr "Сборка запущена в %s\n" + +#: ../ProjectController.py:1483 +msgid "Starting PLC\n" +msgstr "ПЛК запускается\\n\n" + +#: ../Beremiz.py:451 +msgid "Status ToolBar" +msgstr "Панель статуса" + +#: ../editors/Viewer.py:549 ../editors/Viewer.py:2059 +msgid "Step" +msgstr "Шаг" + +#: ../ProjectController.py:1682 +msgid "Stop" +msgstr "Стоп" + +#: ../Beremiz_service.py:241 +msgid "Stop PLC" +msgstr "Остановить ПЛК" + +#: ../ProjectController.py:1684 +msgid "Stop Running PLC" +msgstr "Остановить запущенный ПЛК" + +#: ../ProjectController.py:1455 +msgid "Stopping debugger...\n" +msgstr "Остановка отладчика...\n" + +#: ../editors/DataTypeEditor.py:54 +msgid "Structure" +msgstr "Структура" + +#: ../editors/DataTypeEditor.py:54 +msgid "Subrange" +msgstr "Поддиапазон" + +#: ../plcopen/iec_std.csv:35 +msgid "Subtraction" +msgstr "Вычитание" + +#: ../ProjectController.py:961 +msgid "Successfully built.\n" +msgstr "Сборка прошла успешно.\n" + +msgid "Sync_Align" +msgstr "" + +msgid "Sync_Align_Ratio" +msgstr "" + +msgid "Sync_TPDOs" +msgstr "" + +#: ../dialogs/SearchInProjectDialog.py:154 +msgid "Syntax error in regular expression of pattern to search!" +msgstr "Синтаксическая ошибка в регулярном выражении шаблона поиска!" + +#: ../plcopen/iec_std.csv:29 +msgid "Tangent" +msgstr "Тангенс" + +msgid "TargetType" +msgstr "Целевая платформа" + +#: ../editors/ResourceEditor.py:83 +msgid "Task" +msgstr "Задача" + +#: ../editors/ResourceEditor.py:235 +msgid "Tasks:" +msgstr "Задачи:" + +#: ../controls/VariablePanel.py:73 +msgid "Temp" +msgstr "Временный" + +#: ../editors/FileManagementPanel.py:180 +#, python-format +msgid "" +"The file '%s' already exist.\n" +"Do you want to replace it?" +msgstr "" +"Файл '%s' уже существует.\n" +"Вы хотите заменить его?" + +#: ../editors/LDViewer.py:882 +msgid "The group of block must be coherent!" +msgstr "" + +#: ../Beremiz.py:616 ../IDEFrame.py:986 +msgid "There are changes, do you want to save?" +msgstr "Хотите сохранить изменения?" + +#: ../IDEFrame.py:1621 ../IDEFrame.py:1640 +#, python-format +msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?" +msgstr "Существует POU с именем \"%s\". Это может вызвать конфликт. Хотите продолжить?" + +#: ../IDEFrame.py:1073 +msgid "" +"There was a problem printing.\n" +"Perhaps your current printer is not set correctly?" +msgstr "" +"Произошла проблема во время печати.\n" +"Возможно, текущий принтер не настроен?" + +#: ../editors/LDViewer.py:891 +msgid "This option isn't available yet!" +msgstr "Это опция еще не доступна!" + +#: ../plcopen/iec_std.csv:40 +msgid "Time" +msgstr "Время" + +#: ../plcopen/iec_std.csv:40 ../plcopen/iec_std.csv:41 +msgid "Time addition" +msgstr "Сложение времени" + +#: ../plcopen/iec_std.csv:86 +msgid "Time concatenation" +msgstr "Объединение времен" + +#: ../plcopen/iec_std.csv:60 ../plcopen/iec_std.csv:61 +msgid "Time division" +msgstr "Деление времени" + +#: ../plcopen/iec_std.csv:46 ../plcopen/iec_std.csv:47 +msgid "Time multiplication" +msgstr "Умножение времени" + +#: ../plcopen/iec_std.csv:48 ../plcopen/iec_std.csv:49 +msgid "Time subtraction" +msgstr "Вычитание времени" + +#: ../plcopen/iec_std.csv:42 ../plcopen/iec_std.csv:43 +msgid "Time-of-day addition" +msgstr "Сложение времени суток" + +#: ../plcopen/iec_std.csv:52 ../plcopen/iec_std.csv:53 +#: ../plcopen/iec_std.csv:54 ../plcopen/iec_std.csv:55 +msgid "Time-of-day subtraction" +msgstr "Вычитание времени суток" + +#: ../editors/Viewer.py:485 +msgid "Top" +msgstr "Верх" + +#: ../ProjectController.py:1691 +msgid "Transfer" +msgstr "Передать" + +#: ../ProjectController.py:1693 +msgid "Transfer PLC" +msgstr "Передать ПЛК" + +#: ../ProjectController.py:1658 +msgid "Transfer completed successfully.\n" +msgstr "Передача успешно завершена.\n" + +#: ../ProjectController.py:1660 +msgid "Transfer failed\n" +msgstr "Ошибка передачи\n" + +#: ../editors/Viewer.py:550 ../editors/Viewer.py:2060 ../editors/Viewer.py:2089 +msgid "Transition" +msgstr "Переход" + +#: ../PLCGenerator.py:1499 +#, python-format +msgid "Transition \"%s\" body must contain an output variable or coil referring to its name" +msgstr "Тело перехода \"%s\" должно содержать выходную переменную или катушку, ссылающуюся на его имя" + +#: ../dialogs/PouTransitionDialog.py:84 +msgid "Transition Name" +msgstr "Имя перехода" + +#: ../dialogs/PouTransitionDialog.py:53 +msgid "Transition Name:" +msgstr "Имя перехода:" + +#: ../PLCGenerator.py:1588 +#, python-format +msgid "Transition with content \"%s\" not connected to a next step in \"%s\" POU" +msgstr "Переход с содержимым \"%s\" не подключен к следующему шагу в POU \"%s\"" + +#: ../PLCGenerator.py:1579 +#, python-format +msgid "Transition with content \"%s\" not connected to a previous step in \"%s\" POU" +msgstr "Переход с содержимым \"%s\" не подключен к предыдущему шагу в POU \"%s\"" + +#: ../plcopen/plcopen.py:1315 +#, python-format +msgid "Transition with name %s doesn't exist!" +msgstr "Переход с именем %s отсутствует!" + +#: ../PLCControler.py:96 +msgid "Transitions" +msgstr "Переходы" + +#: ../editors/ResourceEditor.py:68 +msgid "Triggering" +msgstr "Запуск" + +#: ../dialogs/ActionBlockDialog.py:38 ../editors/ResourceEditor.py:83 +#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 +#: ../controls/VariablePanel.py:54 +msgid "Type" +msgstr "Тип" + +#: ../dialogs/BrowseLocationsDialog.py:43 +msgid "Type and derivated" +msgstr "Тип и его производные" + +#: ../canfestival/config_utils.py:336 ../canfestival/config_utils.py:618 +#, python-format +msgid "Type conflict for location \"%s\"" +msgstr "Конфликт типов \"%s\"" + +#: ../plcopen/iec_std.csv:16 +msgid "Type conversion" +msgstr "Преобразование типов" + +#: ../editors/DataTypeEditor.py:161 +msgid "Type infos:" +msgstr "Информация о типе:" + +#: ../dialogs/BrowseLocationsDialog.py:44 +msgid "Type strict" +msgstr "Только данный тип" + +#: ../dialogs/SFCDivergenceDialog.py:57 ../dialogs/SFCTransitionDialog.py:56 +#: ../dialogs/LDPowerRailDialog.py:55 ../dialogs/BrowseLocationsDialog.py:94 +#: ../dialogs/FBDBlockDialog.py:65 ../dialogs/ConnectionDialog.py:58 +msgid "Type:" +msgstr "Тип:" + +msgid "URI_location" +msgstr "URI системы исполнения" + +#: ../canfestival/config_utils.py:456 ../canfestival/config_utils.py:470 +#, python-format +msgid "Unable to define PDO mapping for node %02x" +msgstr "Невозможно определить отображение PDO для узла %02x" + +#: ../targets/Xenomai/__init__.py:15 +#, python-format +msgid "Unable to get Xenomai's %s \n" +msgstr "Невозможно получить Xenomai %s\n" + +#: ../PLCGenerator.py:951 ../PLCGenerator.py:1202 +#, python-format +msgid "Undefined block type \"%s\" in \"%s\" POU" +msgstr "Неопределенный тип блока \"%s\" в POU \"%s\"" + +#: ../PLCGenerator.py:254 +#, python-format +msgid "Undefined pou type \"%s\"" +msgstr "Неопределенный тип POU \"%s\"" + +#: ../IDEFrame.py:336 ../IDEFrame.py:397 +msgid "Undo" +msgstr "Отмена" + +#: ../ProjectController.py:308 +msgid "Unknown" +msgstr "Неизвестно" + +#: ../editors/Viewer.py:389 +#, python-format +msgid "Unknown variable \"%s\" for this POU!" +msgstr "Неизвестная переменная \"%s\" для этого POU!" + +#: ../ProjectController.py:305 ../ProjectController.py:306 +msgid "Unnamed" +msgstr "" + +#: ../PLCControler.py:636 +#, python-format +msgid "Unnamed%d" +msgstr "" + +#: ../controls/VariablePanel.py:275 +#, python-format +msgid "Unrecognized data size \"%s\"" +msgstr "Неопределенный размер данных \"%s\"" + +#: ../plcopen/definitions.py:33 +msgid "" +"Up-counter\n" +"The up-counter can be used to signal when a count has reached a maximum value." +msgstr "" +"Инкрементный счетчик\n" +"Инкрементный счетчик может использоваться, когда необходимо сигнализировать, что счетчик достиг максимального значения." + +#: ../plcopen/definitions.py:35 +msgid "" +"Up-down counter\n" +"The up-down counter has two inputs CU and CD. It can be used to both count up on one input and down on the other." +msgstr "" +"Инкрементный/декрементный счетчик\n" +"Инкрементный/декрементный счетчик имеет два входа CU и CD. Он может использоваться для счета вверх по одному входу и для счета низ по другому." + +#: ../editors/DataTypeEditor.py:631 ../controls/VariablePanel.py:780 +msgid "User Data Types" +msgstr "Пользовательские типы данных" + +#: ../canfestival/SlaveEditor.py:42 ../canfestival/NetworkEditor.py:63 +msgid "User Type" +msgstr "Пользовательский тип" + +#: ../PLCControler.py:95 +msgid "User-defined POUs" +msgstr "Пользовательские POU" + +#: ../dialogs/ActionBlockDialog.py:38 +msgid "Value" +msgstr "Значение" + +#: ../editors/DataTypeEditor.py:258 +msgid "Values:" +msgstr "Значения:" + +#: ../dialogs/ActionBlockDialog.py:42 ../editors/Viewer.py:522 +#: ../editors/Viewer.py:2074 +msgid "Variable" +msgstr "Переменная" + +#: ../dialogs/FBDVariableDialog.py:63 +msgid "Variable Properties" +msgstr "Свойства переменных" + +#: ../editors/Viewer.py:284 ../editors/TextViewer.py:304 +#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:280 +#: ../controls/VariablePanel.py:340 +msgid "Variable class" +msgstr "" + +#: ../editors/Viewer.py:391 ../editors/TextViewer.py:385 +msgid "Variable don't belong to this POU!" +msgstr "Переменная не принадлежит этому POU!" + +#: ../dialogs/LDElementDialog.py:89 +msgid "Variable:" +msgstr "Переменная:" + +#: ../controls/VariablePanel.py:72 +msgid "Variables" +msgstr "Переменные" + +#: ../controls/ProjectPropertiesPanel.py:151 +msgid "Vertical:" +msgstr "Вертикальный:" + +#: ../connectors/WAMP/__init__.py:88 +#, python-format +msgid "WAMP connecting to URL : %s\n" +msgstr "WAMP подключение к URI: %s\n" + +#: ../connectors/WAMP/__init__.py:128 +msgid "WAMP connection timeout" +msgstr "Тайм-аут WAMP подключения " + +#: ../connectors/WAMP/__init__.py:147 +#, python-format +msgid "WAMP connection to '%s' failed.\n" +msgstr "Не удалось установить WAMP подключение к %s.\n" + +#: ../wxglade_hmi/wxglade_hmi.py:11 +msgid "WXGLADE GUI" +msgstr "" + +#: ../dialogs/PouDialog.py:128 ../editors/LDViewer.py:891 +msgid "Warning" +msgstr "Предупреждение" + +#: ../ProjectController.py:584 +msgid "Warnings in ST/IL/SFC code generator :\n" +msgstr "Предупреждения в ST/IL/SFC коде генераторе:\n" + +#: ../dialogs/SearchInProjectDialog.py:85 +msgid "Whole Project" +msgstr "Целый проект" + +#: ../controls/ProjectPropertiesPanel.py:119 +msgid "Width:" +msgstr "Ширина:" + +msgid "Win32" +msgstr "" + +#: ../dialogs/FindInPouDialog.py:92 +msgid "Wrap search" +msgstr "Продолжить поиск сначала" + +#: ../features.py:10 +msgid "WxGlade GUI" +msgstr "" + +msgid "XenoConfig" +msgstr "Настройки Xenomai" + +msgid "Xenomai" +msgstr "" + +#: ../svgui/svgui.py:115 +msgid "" +"You don't have write permissions.\n" +"Open Inkscape anyway ?" +msgstr "" +"У вас недостаточно прав для записи.\n" +"Открыть Inkscape все равно?" + +#: ../wxglade_hmi/wxglade_hmi.py:113 +msgid "" +"You don't have write permissions.\n" +"Open wxGlade anyway ?" +msgstr "" +"У вас недостаточно прав для записи.\n" +"Открыть wxGlade все равно?" + +#: ../ProjectController.py:268 +msgid "" +"You must have permission to work on the project\n" +"Work on a project copy ?" +msgstr "" +"Вы должны иметь права на запись, чтобы работать с проектом\n" +"Работать с копией проекта?" + +#: ../editors/LDViewer.py:886 +msgid "You must select the block or group of blocks around which a branch should be added!" +msgstr "Выберете блок или группу блоков, вокруг которых нужно добавить ветвление!" + +#: ../editors/LDViewer.py:666 +msgid "You must select the wire where a contact should be added!" +msgstr "Выберете провод, куда должен быть добавлен контакт!" + +#: ../dialogs/SFCStepNameDialog.py:47 ../dialogs/PouNameDialog.py:45 +msgid "You must type a name!" +msgstr "Введите имя!" + +#: ../dialogs/ForceVariableDialog.py:175 +msgid "You must type a value!" +msgstr "Введите значение!" + +#: ../IDEFrame.py:414 +msgid "Zoom" +msgstr "Приближение" + +msgid "class" +msgstr "класс" + +msgid "desc" +msgstr "" + +#: ../PLCOpenEditor.py:326 +#, python-format +msgid "error: %s\n" +msgstr "ошибка: %s\n" + +#: ../util/ProcessLogger.py:166 +#, python-format +msgid "exited with status %s (pid %s)\n" +msgstr "завершился с кодом %s (pid %s)\n" + +#: ../PLCOpenEditor.py:384 ../PLCOpenEditor.py:386 +msgid "file : " +msgstr "файл:" + +#: ../dialogs/PouDialog.py:31 +msgid "function" +msgstr "функция" + +#: ../PLCOpenEditor.py:387 +msgid "function : " +msgstr "функция: " + +#: ../dialogs/PouDialog.py:31 +msgid "functionBlock" +msgstr "функциональный блок" + +msgid "initial" +msgstr "исходный" + +#: ../PLCOpenEditor.py:387 +msgid "line : " +msgstr "строка:" + +msgid "name" +msgstr "имя" + +msgid "onchange" +msgstr "" + +msgid "opts" +msgstr "" + +#: ../dialogs/PouDialog.py:31 +msgid "program" +msgstr "программа" + +#: ../plcopen/iec_std.csv:84 +msgid "string from the middle" +msgstr "строка из середины" + +#: ../plcopen/iec_std.csv:82 +msgid "string left of" +msgstr "строка слева от " + +#: ../plcopen/iec_std.csv:83 +msgid "string right of" +msgstr "строка справа от " + +msgid "type" +msgstr "тип" + +msgid "variable" +msgstr "переменная" + +msgid "variables" +msgstr "переменные" + +#: ../PLCOpenEditor.py:324 +#, python-format +msgid "warning: %s\n" +msgstr "предупреждение: %s\n" + +#~ msgid "\"%s\" element can't be pasted here!!!" +#~ msgstr "Элемент \"%s\" не может быть вставлен сюда!!!" + +#~ msgid "... debugger recovered\n" +#~ msgstr "... отладчик восстановлен\n" + +#~ msgid "Clear the graph values" +#~ msgstr "Очистить значения на графике" + +#~ msgid "IEC-61131-3 code generation failed !\n" +#~ msgstr "Неудачная генерация МЭК-61131-3 кода!\n" + +#~ msgid "Move debug variable down" +#~ msgstr "Переместить отлаживаемую переменную ниже" + +#~ msgid "Move debug variable up" +#~ msgstr "Переместить отлаживаемую переменную выше" + +#~ msgid "No PLC project found" +#~ msgstr "Не найден проект ПЛК" + +#~ msgid "No output variable found" +#~ msgstr "Выходная переменная не найдена" + +#~ msgid "Position:" +#~ msgstr "Позиция:" + +#~ msgid "Remove debug variable" +#~ msgstr "Удалить отлаживаемую переменную" + +#~ msgid "Reset zoom and offset" +#~ msgstr "Сбросить приближение и смещение" + +#~ msgid "Tick" +#~ msgstr "Тик" + +#~ msgid "Values" +#~ msgstr "Значения" + +#~ msgid "Waiting debugger to recover...\n" +#~ msgstr "Ожидание восстановления отладчика...\n" + +#~ msgid "Zoom:" +#~ msgstr "Приближение:" diff -r 789acd7cc347 -r 00fb79aba7ac i18n/app.fil --- a/i18n/app.fil Wed Apr 20 16:14:25 2016 +0300 +++ b/i18n/app.fil Wed Apr 20 16:20:53 2016 +0300 @@ -1,94 +1,115 @@ -../runtime/ServicePublisher.py -../runtime/PLCObject.py +../canfestival/canfestival.py ../canfestival/SlaveEditor.py ../canfestival/config_utils.py -../canfestival/canfestival.py ../canfestival/NetworkEditor.py -../Beremiz_service.py +../dialogs/LDElementDialog.py +../dialogs/ForceVariableDialog.py +../dialogs/SearchInProjectDialog.py +../dialogs/SFCStepDialog.py +../dialogs/SFCStepNameDialog.py +../dialogs/FindInPouDialog.py +../dialogs/SFCDivergenceDialog.py +../dialogs/SFCTransitionDialog.py +../dialogs/DurationEditorDialog.py +../dialogs/PouTransitionDialog.py +../dialogs/FBDVariableDialog.py +../dialogs/BlockPreviewDialog.py +../dialogs/ProjectDialog.py +../dialogs/LDPowerRailDialog.py +../dialogs/ArrayTypeDialog.py +../dialogs/PouNameDialog.py +../dialogs/BrowseLocationsDialog.py +../dialogs/FBDBlockDialog.py +../dialogs/ConnectionDialog.py +../dialogs/BrowseValuesLibraryDialog.py +../dialogs/ActionBlockDialog.py +../dialogs/PouActionDialog.py +../dialogs/DiscoveryDialog.py +../dialogs/PouDialog.py +../graphics/RubberBand.py +../graphics/FBD_Objects.py +../graphics/DebugDataConsumer.py +../graphics/ToolTipProducer.py +../graphics/LD_Objects.py +../graphics/SFC_Objects.py +../graphics/GraphicCommons.py +../connectors/PYRO/__init__.py +../connectors/__init__.py +../connectors/WAMP/__init__.py +../targets/Generic/XSD +../targets/XSD_toolchain_makefile +../targets/Xenomai/__init__.py +../targets/Xenomai/XSD +../targets/XSD_toolchain_gcc +../targets/__init__.py +../targets/toolchain_gcc.py +../targets/toolchain_makefile.py +../targets/Linux/XSD +../targets/Win32/XSD +../PLCControler.py +../PLCOpenEditor.py +../py_ext/PythonEditor.py +../py_ext/PythonFileCTNMixin.py +../wxglade_hmi/wxglade_hmi.py +../runtime/NevowServer.py +../runtime/PLCObject.py +../runtime/ServicePublisher.py +../ConfigTreeNode.py +../editors/ConfTreeNodeEditor.py +../editors/ResourceEditor.py +../editors/Viewer.py +../editors/LDViewer.py +../editors/DataTypeEditor.py +../editors/IECCodeViewer.py +../editors/TextViewer.py +../editors/ProjectNodeEditor.py +../editors/EditorPanel.py +../editors/DebugViewer.py +../editors/SFCViewer.py +../editors/FileManagementPanel.py +../editors/CodeFileEditor.py +../ProjectController.py ../controls/LocationCellEditor.py -../controls/CustomTree.py +../controls/SearchResultPanel.py +../controls/PouInstanceVariablesPanel.py +../controls/CustomTable.py +../controls/LibraryPanel.py +../controls/CustomToolTip.py +../controls/LogViewer.py +../controls/FolderTree.py +../controls/ProjectPropertiesPanel.py +../controls/DebugVariablePanel/DebugVariablePanel.py +../controls/DebugVariablePanel/DebugVariableViewer.py +../controls/DebugVariablePanel/DebugVariableTextViewer.py +../controls/DebugVariablePanel/DebugVariableGraphicViewer.py +../controls/DebugVariablePanel/GraphButton.py +../controls/DebugVariablePanel/DebugVariableItem.py +../controls/TextCtrlAutoComplete.py +../controls/DurationCellEditor.py +../controls/CustomStyledTextCtrl.py ../controls/VariablePanel.py ../controls/CustomGrid.py -../controls/SearchResultPanel.py -../controls/LibraryPanel.py -../controls/TextCtrlAutoComplete.py -../controls/DebugVariablePanel.py -../controls/PouInstanceVariablesPanel.py -../controls/DurationCellEditor.py -../controls/CustomTable.py +../controls/CustomTree.py ../controls/CustomEditableListBox.py -../controls/ProjectPropertiesPanel.py -../IDEFrame.py +../CodeFileTreeNode.py +../docutil/dochtml.py +../c_ext/CFileEditor.py +../xmlclass/xsdschema.py +../xmlclass/xmlclass.py ../Beremiz.py +../POULibrary.py +../util/MiniTextControler.py +../util/Zeroconf.py +../util/misc.py +../util/ProcessLogger.py +../features.py ../svgui/svgui.py ../svgui/svgui_server.py ../svgui/svguilib.py -../xmlclass/xmlclass.py -../xmlclass/xsdschema.py -../PLCOpenEditor.py -../c_ext/CFileEditor.py -../c_ext/c_ext.py -../ConfigTreeNode.py -../wxglade_hmi/wxglade_hmi.py -../PLCGenerator.py -../docutil/dochtml.py -../editors/ProjectNodeEditor.py -../editors/ConfTreeNodeEditor.py -../editors/TextViewer.py -../editors/DataTypeEditor.py -../editors/GraphicViewer.py -../editors/ResourceEditor.py -../editors/Viewer.py -../editors/LDViewer.py -../editors/SFCViewer.py -../editors/EditorPanel.py -../editors/FileManagementPanel.py -../graphics/GraphicCommons.py -../graphics/LD_Objects.py -../graphics/SFC_Objects.py -../graphics/FBD_Objects.py -../PLCControler.py -../connectors/__init__.py -../connectors/PYRO/__init__.py -../targets/toolchain_gcc.py -../targets/__init__.py -../targets/Linux/XSD -../targets/XSD_toolchain_gcc -../targets/Win32/XSD -../targets/Xenomai/__init__.py -../targets/Xenomai/XSD -../features.py -../ProjectController.py -../POULibrary.py -../dialogs/PouNameDialog.py -../dialogs/SFCDivergenceDialog.py -../dialogs/LDPowerRailDialog.py -../dialogs/PouTransitionDialog.py -../dialogs/BrowseLocationsDialog.py -../dialogs/DiscoveryDialog.py -../dialogs/ProjectDialog.py -../dialogs/SFCStepNameDialog.py -../dialogs/ConnectionDialog.py -../dialogs/FBDVariableDialog.py -../dialogs/PouActionDialog.py -../dialogs/BrowseValuesLibraryDialog.py -../dialogs/PouDialog.py -../dialogs/ActionBlockDialog.py -../dialogs/SFCTransitionDialog.py -../dialogs/LDElementDialog.py -../dialogs/DurationEditorDialog.py -../dialogs/FindInPouDialog.py -../dialogs/SearchInProjectDialog.py -../dialogs/SFCStepDialog.py -../dialogs/ArrayTypeDialog.py -../dialogs/FBDBlockDialog.py -../dialogs/ForceVariableDialog.py -../util/ProcessLogger.py -../util/MiniTextControler.py -../util/Zeroconf.py -../util/misc.py ../plcopen/iec_std.csv ../plcopen/structures.py ../plcopen/plcopen.py -../py_ext/PythonFileCTNMixin.py -../py_ext/PythonEditor.py +../plcopen/definitions.py +../IDEFrame.py +../PLCGenerator.py +../Beremiz_service.py diff -r 789acd7cc347 -r 00fb79aba7ac i18n/messages.pot --- a/i18n/messages.pot Wed Apr 20 16:14:25 2016 +0300 +++ b/i18n/messages.pot Wed Apr 20 16:20:53 2016 +0300 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-03-26 22:55+0100\n" +"POT-Creation-Date: 2016-04-20 13:39+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,7 +17,7 @@ "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: ../PLCOpenEditor.py:405 +#: ../PLCOpenEditor.py:396 msgid "" "\n" "An error has occurred.\n" @@ -30,7 +30,7 @@ "Error:\n" msgstr "" -#: ../Beremiz.py:1119 +#: ../Beremiz.py:1157 #, python-format msgid "" "\n" @@ -45,164 +45,158 @@ "Traceback:\n" msgstr "" -#: ../controls/VariablePanel.py:77 +#: ../controls/VariablePanel.py:72 msgid " External" msgstr "" -#: ../controls/VariablePanel.py:76 +#: ../controls/VariablePanel.py:71 msgid " InOut" msgstr "" -#: ../controls/VariablePanel.py:76 +#: ../controls/VariablePanel.py:71 msgid " Input" msgstr "" -#: ../controls/VariablePanel.py:77 +#: ../controls/VariablePanel.py:72 msgid " Local" msgstr "" -#: ../controls/VariablePanel.py:76 +#: ../controls/VariablePanel.py:71 msgid " Output" msgstr "" -#: ../controls/VariablePanel.py:78 +#: ../controls/VariablePanel.py:73 msgid " Temp" msgstr "" -#: ../PLCOpenEditor.py:415 +#: ../PLCOpenEditor.py:406 msgid " : " msgstr "" #: ../dialogs/PouTransitionDialog.py:94 ../dialogs/PouActionDialog.py:91 -#: ../dialogs/PouDialog.py:111 ../dialogs/SFCTransitionDialog.py:144 +#: ../dialogs/PouDialog.py:113 #, python-format msgid " and %s" msgstr "" -#: ../ProjectController.py:917 +#: ../ProjectController.py:1027 msgid " generation failed !\n" msgstr "" -#: ../plcopen/plcopen.py:1051 +#: ../plcopen/plcopen.py:883 #, python-format msgid "\"%s\" Data Type doesn't exist !!!" msgstr "" -#: ../plcopen/plcopen.py:1069 +#: ../plcopen/plcopen.py:901 #, python-format msgid "\"%s\" POU already exists !!!" msgstr "" -#: ../plcopen/plcopen.py:1090 +#: ../plcopen/plcopen.py:922 #, python-format msgid "\"%s\" POU doesn't exist !!!" msgstr "" -#: ../editors/Viewer.py:234 +#: ../editors/Viewer.py:242 #, python-format msgid "\"%s\" can't use itself!" msgstr "" -#: ../IDEFrame.py:1587 ../IDEFrame.py:1606 +#: ../IDEFrame.py:1618 ../IDEFrame.py:1637 #, python-format msgid "\"%s\" config already exists!" msgstr "" -#: ../plcopen/plcopen.py:315 +#: ../plcopen/plcopen.py:471 #, python-format msgid "\"%s\" configuration already exists !!!" msgstr "" -#: ../IDEFrame.py:1541 +#: ../IDEFrame.py:1572 #, python-format msgid "\"%s\" data type already exists!" msgstr "" -#: ../PLCControler.py:2165 ../PLCControler.py:2169 -#, python-format -msgid "\"%s\" element can't be pasted here!!!" -msgstr "" - -#: ../editors/TextViewer.py:298 ../editors/TextViewer.py:318 -#: ../editors/Viewer.py:250 ../dialogs/PouTransitionDialog.py:105 -#: ../dialogs/ConnectionDialog.py:157 ../dialogs/PouActionDialog.py:102 -#: ../dialogs/FBDBlockDialog.py:162 +#: ../dialogs/PouTransitionDialog.py:105 ../dialogs/BlockPreviewDialog.py:219 +#: ../dialogs/PouActionDialog.py:102 ../editors/Viewer.py:258 +#: ../editors/Viewer.py:326 ../editors/Viewer.py:350 ../editors/Viewer.py:370 +#: ../editors/TextViewer.py:270 ../editors/TextViewer.py:299 +#: ../controls/VariablePanel.py:386 #, python-format msgid "\"%s\" element for this pou already exists!" msgstr "" -#: ../Beremiz.py:921 +#: ../Beremiz.py:964 #, python-format msgid "\"%s\" folder is not a valid Beremiz project\n" msgstr "" -#: ../plcopen/structures.py:105 +#: ../PLCGenerator.py:1091 #, python-format msgid "\"%s\" function cancelled in \"%s\" POU: No input connected" msgstr "" -#: ../controls/VariablePanel.py:659 ../IDEFrame.py:1532 +#: ../dialogs/SFCStepNameDialog.py:51 ../dialogs/PouTransitionDialog.py:101 +#: ../dialogs/BlockPreviewDialog.py:207 ../dialogs/PouNameDialog.py:49 +#: ../dialogs/PouActionDialog.py:98 ../dialogs/PouDialog.py:120 #: ../editors/DataTypeEditor.py:554 ../editors/DataTypeEditor.py:583 -#: ../dialogs/PouNameDialog.py:49 ../dialogs/PouTransitionDialog.py:101 -#: ../dialogs/SFCStepNameDialog.py:51 ../dialogs/ConnectionDialog.py:153 -#: ../dialogs/FBDVariableDialog.py:199 ../dialogs/PouActionDialog.py:98 -#: ../dialogs/PouDialog.py:118 ../dialogs/SFCStepDialog.py:122 -#: ../dialogs/FBDBlockDialog.py:158 +#: ../editors/CodeFileEditor.py:750 ../controls/VariablePanel.py:733 +#: ../IDEFrame.py:1563 #, python-format msgid "\"%s\" is a keyword. It can't be used!" msgstr "" -#: ../editors/Viewer.py:238 +#: ../editors/Viewer.py:246 #, python-format msgid "\"%s\" is already used by \"%s\"!" msgstr "" -#: ../plcopen/plcopen.py:2836 +#: ../plcopen/plcopen.py:2405 #, python-format msgid "\"%s\" is an invalid value!" msgstr "" -#: ../PLCOpenEditor.py:341 ../PLCOpenEditor.py:378 +#: ../PLCOpenEditor.py:332 ../PLCOpenEditor.py:369 #, python-format msgid "\"%s\" is not a valid folder!" msgstr "" -#: ../controls/VariablePanel.py:657 ../IDEFrame.py:1530 -#: ../editors/DataTypeEditor.py:578 ../dialogs/PouNameDialog.py:47 -#: ../dialogs/PouTransitionDialog.py:99 ../dialogs/SFCStepNameDialog.py:49 -#: ../dialogs/ConnectionDialog.py:151 ../dialogs/PouActionDialog.py:96 -#: ../dialogs/PouDialog.py:116 ../dialogs/SFCStepDialog.py:120 -#: ../dialogs/FBDBlockDialog.py:156 +#: ../dialogs/SFCStepNameDialog.py:49 ../dialogs/PouTransitionDialog.py:99 +#: ../dialogs/BlockPreviewDialog.py:203 ../dialogs/PouNameDialog.py:47 +#: ../dialogs/PouActionDialog.py:96 ../dialogs/PouDialog.py:118 +#: ../editors/DataTypeEditor.py:578 ../editors/CodeFileEditor.py:748 +#: ../controls/VariablePanel.py:731 ../IDEFrame.py:1561 #, python-format msgid "\"%s\" is not a valid identifier!" msgstr "" -#: ../IDEFrame.py:221 ../IDEFrame.py:2313 ../IDEFrame.py:2332 -#, python-format -msgid "\"%s\" is used by one or more POUs. It can't be removed!" -msgstr "" - -#: ../controls/VariablePanel.py:313 ../IDEFrame.py:1550 -#: ../editors/TextViewer.py:296 ../editors/TextViewer.py:316 -#: ../editors/TextViewer.py:353 ../editors/Viewer.py:248 -#: ../editors/Viewer.py:293 ../editors/Viewer.py:311 -#: ../dialogs/ConnectionDialog.py:155 ../dialogs/PouDialog.py:120 -#: ../dialogs/FBDBlockDialog.py:160 +#: ../IDEFrame.py:2364 +#, python-format +msgid "\"%s\" is used by one or more POUs. Do you wish to continue?" +msgstr "" + +#: ../dialogs/BlockPreviewDialog.py:211 ../dialogs/PouDialog.py:122 +#: ../editors/Viewer.py:256 ../editors/Viewer.py:311 ../editors/Viewer.py:341 +#: ../editors/Viewer.py:363 ../editors/TextViewer.py:268 +#: ../editors/TextViewer.py:297 ../editors/TextViewer.py:348 +#: ../editors/TextViewer.py:371 ../controls/VariablePanel.py:328 +#: ../IDEFrame.py:1581 #, python-format msgid "\"%s\" pou already exists!" msgstr "" -#: ../plcopen/plcopen.py:346 +#: ../plcopen/plcopen.py:495 #, python-format msgid "\"%s\" resource already exists in \"%s\" configuration !!!" msgstr "" -#: ../plcopen/plcopen.py:362 +#: ../plcopen/plcopen.py:512 #, python-format msgid "\"%s\" resource doesn't exist in \"%s\" configuration !!!" msgstr "" -#: ../dialogs/SFCStepNameDialog.py:57 ../dialogs/SFCStepDialog.py:128 +#: ../dialogs/SFCStepNameDialog.py:57 #, python-format msgid "\"%s\" step already exists!" msgstr "" @@ -212,34 +206,29 @@ msgid "\"%s\" value already defined!" msgstr "" -#: ../editors/DataTypeEditor.py:744 ../dialogs/ArrayTypeDialog.py:97 +#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:744 #, python-format msgid "\"%s\" value isn't a valid array dimension!" msgstr "" -#: ../editors/DataTypeEditor.py:751 ../dialogs/ArrayTypeDialog.py:103 +#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:751 #, python-format msgid "" "\"%s\" value isn't a valid array dimension!\n" "Right value must be greater than left value." msgstr "" -#: ../PLCControler.py:847 +#: ../PLCControler.py:970 #, python-format msgid "%s \"%s\" can't be pasted as a %s." msgstr "" -#: ../PLCControler.py:1476 +#: ../PLCControler.py:1530 #, python-format msgid "%s Data Types" msgstr "" -#: ../editors/GraphicViewer.py:278 -#, python-format -msgid "%s Graphics" -msgstr "" - -#: ../PLCControler.py:1471 +#: ../PLCControler.py:1513 #, python-format msgid "%s POUs" msgstr "" @@ -249,67 +238,75 @@ msgid "%s Profile" msgstr "" -#: ../plcopen/plcopen.py:1790 ../plcopen/plcopen.py:1800 -#: ../plcopen/plcopen.py:1810 ../plcopen/plcopen.py:1820 -#: ../plcopen/plcopen.py:1829 +#: ../ConfigTreeNode.py:32 +#, python-format +msgid "" +"%s XML file doesn't follow XSD schema at line %d:\n" +"%s" +msgstr "" + +#: ../plcopen/plcopen.py:1638 ../plcopen/plcopen.py:1645 +#: ../plcopen/plcopen.py:1657 ../plcopen/plcopen.py:1665 +#: ../plcopen/plcopen.py:1675 #, python-format msgid "%s body don't have instances!" msgstr "" -#: ../plcopen/plcopen.py:1852 ../plcopen/plcopen.py:1859 +#: ../plcopen/plcopen.py:1693 ../plcopen/plcopen.py:1700 +#: ../plcopen/plcopen.py:1707 #, python-format msgid "%s body don't have text!" msgstr "" -#: ../IDEFrame.py:369 +#: ../IDEFrame.py:362 msgid "&Add Element" msgstr "" -#: ../IDEFrame.py:339 +#: ../IDEFrame.py:332 msgid "&Configuration" msgstr "" -#: ../IDEFrame.py:330 +#: ../IDEFrame.py:321 msgid "&Data Type" msgstr "" -#: ../IDEFrame.py:373 +#: ../IDEFrame.py:366 msgid "&Delete" msgstr "" -#: ../IDEFrame.py:322 +#: ../IDEFrame.py:313 msgid "&Display" msgstr "" -#: ../IDEFrame.py:321 +#: ../IDEFrame.py:312 msgid "&Edit" msgstr "" -#: ../IDEFrame.py:320 +#: ../IDEFrame.py:311 msgid "&File" msgstr "" -#: ../IDEFrame.py:332 +#: ../IDEFrame.py:323 msgid "&Function" msgstr "" -#: ../IDEFrame.py:323 +#: ../IDEFrame.py:314 msgid "&Help" msgstr "" -#: ../IDEFrame.py:336 +#: ../IDEFrame.py:327 msgid "&Program" msgstr "" -#: ../PLCOpenEditor.py:129 +#: ../PLCOpenEditor.py:119 msgid "&Properties" msgstr "" -#: ../Beremiz.py:312 +#: ../Beremiz.py:317 msgid "&Recent Projects" msgstr "" -#: ../Beremiz.py:354 +#: ../IDEFrame.py:329 msgid "&Resource" msgstr "" @@ -323,7 +320,7 @@ msgid "'%s' - %d matches in project" msgstr "" -#: ../connectors/PYRO/__init__.py:51 +#: ../connectors/PYRO/__init__.py:86 #, python-format msgid "'%s' is located at %s\n" msgstr "" @@ -333,62 +330,78 @@ msgid "(%d matches)" msgstr "" -#: ../PLCOpenEditor.py:393 ../PLCOpenEditor.py:395 ../PLCOpenEditor.py:396 +#: ../PLCOpenEditor.py:384 ../PLCOpenEditor.py:386 ../PLCOpenEditor.py:387 msgid ", " msgstr "" #: ../dialogs/PouTransitionDialog.py:96 ../dialogs/PouActionDialog.py:93 -#: ../dialogs/PouDialog.py:113 ../dialogs/SFCTransitionDialog.py:146 +#: ../dialogs/PouDialog.py:115 #, python-format msgid ", %s" msgstr "" -#: ../PLCOpenEditor.py:391 +#: ../PLCOpenEditor.py:382 msgid ". " msgstr "" -#: ../ProjectController.py:1294 -msgid "... debugger recovered\n" -msgstr "" - -#: ../IDEFrame.py:1553 ../IDEFrame.py:1595 ../IDEFrame.py:1614 -#: ../dialogs/PouDialog.py:122 +#: ../controls/LogViewer.py:278 +msgid "1d" +msgstr "" + +#: ../controls/LogViewer.py:279 +msgid "1h" +msgstr "" + +#: ../controls/LogViewer.py:280 +msgid "1m" +msgstr "" + +#: ../controls/LogViewer.py:281 +msgid "1s" +msgstr "" + +#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1584 ../IDEFrame.py:1626 +#: ../IDEFrame.py:1645 #, python-format msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?" msgstr "" -#: ../controls/VariablePanel.py:661 ../IDEFrame.py:1565 ../IDEFrame.py:1576 -#: ../dialogs/PouNameDialog.py:51 ../dialogs/PouTransitionDialog.py:103 -#: ../dialogs/SFCStepNameDialog.py:53 ../dialogs/PouActionDialog.py:100 -#: ../dialogs/SFCStepDialog.py:124 +#: ../dialogs/SFCStepNameDialog.py:53 ../dialogs/PouTransitionDialog.py:103 +#: ../dialogs/PouNameDialog.py:51 ../dialogs/PouActionDialog.py:100 +#: ../controls/VariablePanel.py:735 ../IDEFrame.py:1596 ../IDEFrame.py:1607 #, python-format msgid "A POU named \"%s\" already exists!" msgstr "" -#: ../ConfigTreeNode.py:388 +#: ../ConfigTreeNode.py:400 #, python-format msgid "A child named \"%s\" already exist -> \"%s\"\n" msgstr "" -#: ../dialogs/BrowseLocationsDialog.py:212 +#: ../dialogs/BrowseLocationsDialog.py:211 msgid "A location must be selected!" msgstr "" -#: ../controls/VariablePanel.py:663 ../IDEFrame.py:1567 ../IDEFrame.py:1578 -#: ../dialogs/SFCStepNameDialog.py:55 ../dialogs/SFCStepDialog.py:126 +#: ../dialogs/SFCStepNameDialog.py:55 ../controls/VariablePanel.py:737 +#: ../IDEFrame.py:1598 ../IDEFrame.py:1609 #, python-format msgid "A variable with \"%s\" as name already exists in this pou!" msgstr "" -#: ../Beremiz.py:364 ../PLCOpenEditor.py:162 +#: ../editors/CodeFileEditor.py:754 +#, python-format +msgid "A variable with \"%s\" as name already exists!" +msgstr "" + +#: ../PLCOpenEditor.py:152 ../Beremiz.py:374 msgid "About" msgstr "" -#: ../Beremiz.py:957 +#: ../Beremiz.py:999 msgid "About Beremiz" msgstr "" -#: ../PLCOpenEditor.py:355 +#: ../PLCOpenEditor.py:346 msgid "About PLCOpenEditor" msgstr "" @@ -396,11 +409,11 @@ msgid "Absolute number" msgstr "" -#: ../dialogs/ActionBlockDialog.py:41 ../dialogs/SFCStepDialog.py:69 +#: ../dialogs/SFCStepDialog.py:71 ../dialogs/ActionBlockDialog.py:42 msgid "Action" msgstr "" -#: ../editors/Viewer.py:494 +#: ../editors/Viewer.py:551 ../editors/Viewer.py:2069 msgid "Action Block" msgstr "" @@ -412,29 +425,29 @@ msgid "Action Name:" msgstr "" -#: ../plcopen/plcopen.py:1490 +#: ../plcopen/plcopen.py:1356 #, python-format msgid "Action with name %s doesn't exist!" msgstr "" -#: ../PLCControler.py:95 +#: ../PLCControler.py:96 msgid "Actions" msgstr "" -#: ../dialogs/ActionBlockDialog.py:134 +#: ../dialogs/ActionBlockDialog.py:133 msgid "Actions:" msgstr "" -#: ../editors/Viewer.py:999 +#: ../editors/Viewer.py:1087 msgid "Active" msgstr "" #: ../canfestival/SlaveEditor.py:57 ../canfestival/NetworkEditor.py:78 -#: ../Beremiz.py:987 ../editors/Viewer.py:527 +#: ../editors/Viewer.py:584 ../Beremiz.py:1026 msgid "Add" msgstr "" -#: ../IDEFrame.py:1801 ../IDEFrame.py:1832 +#: ../IDEFrame.py:1858 ../IDEFrame.py:1893 msgid "Add Action" msgstr "" @@ -442,15 +455,15 @@ msgid "Add C code accessing located variables synchronously" msgstr "" -#: ../IDEFrame.py:1784 +#: ../IDEFrame.py:1841 msgid "Add Configuration" msgstr "" -#: ../IDEFrame.py:1764 +#: ../IDEFrame.py:1821 msgid "Add DataType" msgstr "" -#: ../editors/Viewer.py:452 +#: ../editors/Viewer.py:509 msgid "Add Divergence Branch" msgstr "" @@ -458,7 +471,7 @@ msgid "Add IP" msgstr "" -#: ../IDEFrame.py:1772 +#: ../IDEFrame.py:1829 msgid "Add POU" msgstr "" @@ -466,15 +479,15 @@ msgid "Add Python code executed asynchronously" msgstr "" -#: ../IDEFrame.py:1812 ../IDEFrame.py:1858 +#: ../IDEFrame.py:1869 ../IDEFrame.py:1919 msgid "Add Resource" msgstr "" -#: ../IDEFrame.py:1790 ../IDEFrame.py:1829 +#: ../IDEFrame.py:1847 ../IDEFrame.py:1890 msgid "Add Transition" msgstr "" -#: ../editors/Viewer.py:441 +#: ../editors/Viewer.py:496 msgid "Add Wire Segment" msgstr "" @@ -482,7 +495,7 @@ msgid "Add a new initial step" msgstr "" -#: ../editors/Viewer.py:2363 ../editors/SFCViewer.py:696 +#: ../editors/Viewer.py:2672 ../editors/SFCViewer.py:696 msgid "Add a new jump" msgstr "" @@ -494,7 +507,7 @@ msgid "Add a simple WxGlade based GUI." msgstr "" -#: ../dialogs/ActionBlockDialog.py:138 +#: ../dialogs/ActionBlockDialog.py:137 msgid "Add action" msgstr "" @@ -502,7 +515,7 @@ msgid "Add element" msgstr "" -#: ../editors/ResourceEditor.py:259 +#: ../editors/ResourceEditor.py:268 msgid "Add instance" msgstr "" @@ -510,11 +523,11 @@ msgid "Add slave" msgstr "" -#: ../editors/ResourceEditor.py:230 +#: ../editors/ResourceEditor.py:239 msgid "Add task" msgstr "" -#: ../controls/VariablePanel.py:380 ../c_ext/CFileEditor.py:517 +#: ../editors/CodeFileEditor.py:640 ../controls/VariablePanel.py:440 msgid "Add variable" msgstr "" @@ -522,22 +535,23 @@ msgid "Addition" msgstr "" -#: ../plcopen/structures.py:249 +#: ../plcopen/definitions.py:22 msgid "Additional function blocks" msgstr "" -#: ../editors/Viewer.py:510 +#: ../editors/Viewer.py:567 msgid "Adjust Block Size" msgstr "" -#: ../editors/Viewer.py:1458 +#: ../editors/Viewer.py:1612 msgid "Alignment" msgstr "" -#: ../controls/VariablePanel.py:75 ../dialogs/BrowseLocationsDialog.py:34 -#: ../dialogs/BrowseLocationsDialog.py:43 -#: ../dialogs/BrowseLocationsDialog.py:136 -#: ../dialogs/BrowseLocationsDialog.py:139 +#: ../dialogs/BrowseLocationsDialog.py:34 +#: ../dialogs/BrowseLocationsDialog.py:42 +#: ../dialogs/BrowseLocationsDialog.py:135 +#: ../dialogs/BrowseLocationsDialog.py:138 ../controls/LogViewer.py:297 +#: ../controls/VariablePanel.py:70 msgid "All" msgstr "" @@ -545,7 +559,7 @@ msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv" msgstr "" -#: ../ProjectController.py:1373 +#: ../ProjectController.py:1523 msgid "Already connected. Please disconnect\n" msgstr "" @@ -554,7 +568,7 @@ msgid "An element named \"%s\" already exists in this structure!" msgstr "" -#: ../dialogs/ConnectionDialog.py:98 +#: ../dialogs/ConnectionDialog.py:96 msgid "Apply name modification to all continuations with the same name" msgstr "" @@ -574,8 +588,8 @@ msgid "Arithmetic" msgstr "" -#: ../controls/VariablePanel.py:732 ../editors/DataTypeEditor.py:54 -#: ../editors/DataTypeEditor.py:634 +#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:634 +#: ../controls/VariablePanel.py:811 msgid "Array" msgstr "" @@ -583,7 +597,7 @@ msgid "Assignment" msgstr "" -#: ../dialogs/FBDVariableDialog.py:197 +#: ../dialogs/FBDVariableDialog.py:217 msgid "At least a variable or an expression must be selected!" msgstr "" @@ -595,7 +609,7 @@ msgid "Author Name (optional):" msgstr "" -#: ../dialogs/FindInPouDialog.py:72 +#: ../dialogs/FindInPouDialog.py:78 msgid "Backward" msgstr "" @@ -607,21 +621,21 @@ msgid "Bad domain name at " msgstr "" -#: ../canfestival/config_utils.py:341 ../canfestival/config_utils.py:623 +#: ../canfestival/config_utils.py:342 ../canfestival/config_utils.py:624 #, python-format msgid "Bad location size : %s" msgstr "" -#: ../editors/DataTypeEditor.py:174 ../editors/DataTypeEditor.py:204 -#: ../editors/DataTypeEditor.py:296 ../dialogs/ArrayTypeDialog.py:55 +#: ../dialogs/ArrayTypeDialog.py:55 ../editors/DataTypeEditor.py:174 +#: ../editors/DataTypeEditor.py:204 ../editors/DataTypeEditor.py:296 msgid "Base Type:" msgstr "" -#: ../controls/VariablePanel.py:702 ../editors/DataTypeEditor.py:624 +#: ../editors/DataTypeEditor.py:624 ../controls/VariablePanel.py:769 msgid "Base Types" msgstr "" -#: ../Beremiz.py:511 +#: ../Beremiz.py:529 msgid "Beremiz" msgstr "" @@ -653,15 +667,19 @@ msgid "Bitwise inverting" msgstr "" -#: ../editors/Viewer.py:464 +#: ../editors/Viewer.py:521 ../editors/Viewer.py:2073 msgid "Block" msgstr "" -#: ../dialogs/FBDBlockDialog.py:38 +#: ../dialogs/FBDBlockDialog.py:59 msgid "Block Properties" msgstr "" -#: ../editors/Viewer.py:433 +#: ../editors/TextViewer.py:261 +msgid "Block name" +msgstr "" + +#: ../editors/Viewer.py:487 msgid "Bottom" msgstr "" @@ -670,38 +688,42 @@ msgid "Browse %s values library" msgstr "" -#: ../dialogs/BrowseLocationsDialog.py:61 +#: ../dialogs/BrowseLocationsDialog.py:60 msgid "Browse Locations" msgstr "" -#: ../ProjectController.py:1519 +#: ../ProjectController.py:1668 msgid "Build" msgstr "" -#: ../ProjectController.py:1079 +#: ../ProjectController.py:1166 msgid "Build directory already clean\n" msgstr "" -#: ../ProjectController.py:1520 +#: ../ProjectController.py:1669 msgid "Build project into build folder" msgstr "" -#: ../ProjectController.py:937 +#: ../ProjectController.py:956 msgid "C Build crashed !\n" msgstr "" -#: ../ProjectController.py:934 +#: ../ProjectController.py:953 msgid "C Build failed.\n" msgstr "" -#: ../c_ext/CFileEditor.py:731 +#: ../c_ext/CFileEditor.py:40 msgid "C code" msgstr "" -#: ../ProjectController.py:922 +#: ../ProjectController.py:1031 msgid "C code generated successfully.\n" msgstr "" +#: ../targets/toolchain_makefile.py:108 +msgid "C compilation failed.\n" +msgstr "" + #: ../targets/toolchain_gcc.py:132 #, python-format msgid "C compilation of %s failed.\n" @@ -723,81 +745,81 @@ msgid "CANopen support" msgstr "" -#: ../plcopen/plcopen.py:1732 ../plcopen/plcopen.py:1746 -#: ../plcopen/plcopen.py:1767 ../plcopen/plcopen.py:1783 +#: ../plcopen/plcopen.py:1580 ../plcopen/plcopen.py:1594 +#: ../plcopen/plcopen.py:1615 ../plcopen/plcopen.py:1631 msgid "Can only generate execution order on FBD networks!" msgstr "" -#: ../controls/VariablePanel.py:256 +#: ../controls/VariablePanel.py:259 msgid "Can only give a location to local or global variables" msgstr "" -#: ../PLCOpenEditor.py:336 +#: ../PLCOpenEditor.py:327 #, python-format msgid "Can't generate program to file %s!" msgstr "" -#: ../controls/VariablePanel.py:254 +#: ../controls/VariablePanel.py:257 msgid "Can't give a location to a function block instance" msgstr "" -#: ../PLCOpenEditor.py:376 +#: ../PLCOpenEditor.py:367 #, python-format msgid "Can't save project to file %s!" msgstr "" -#: ../controls/VariablePanel.py:300 +#: ../controls/VariablePanel.py:303 msgid "Can't set an initial value to a function block instance" msgstr "" -#: ../ConfigTreeNode.py:490 +#: ../ConfigTreeNode.py:504 #, python-format msgid "Cannot create child %s of type %s " msgstr "" -#: ../ConfigTreeNode.py:417 +#: ../ConfigTreeNode.py:429 #, python-format msgid "Cannot find lower free IEC channel than %d\n" msgstr "" -#: ../connectors/PYRO/__init__.py:92 +#: ../connectors/PYRO/__init__.py:127 msgid "Cannot get PLC status - connection failed.\n" msgstr "" -#: ../ProjectController.py:737 +#: ../ProjectController.py:817 msgid "Cannot open/parse VARIABLES.csv!\n" msgstr "" -#: ../canfestival/config_utils.py:371 +#: ../canfestival/config_utils.py:372 #, python-format msgid "Cannot set bit offset for non bool '%s' variable (ID:%d,Idx:%x,sIdx:%x))" msgstr "" -#: ../dialogs/FindInPouDialog.py:81 ../dialogs/SearchInProjectDialog.py:67 +#: ../dialogs/SearchInProjectDialog.py:67 ../dialogs/FindInPouDialog.py:87 msgid "Case sensitive" msgstr "" -#: ../editors/Viewer.py:428 +#: ../editors/Viewer.py:482 msgid "Center" msgstr "" -#: ../Beremiz_service.py:326 +#: ../Beremiz_service.py:245 msgid "Change IP of interface to bind" msgstr "" -#: ../Beremiz_service.py:325 +#: ../Beremiz_service.py:244 msgid "Change Name" msgstr "" -#: ../IDEFrame.py:1850 +#: ../IDEFrame.py:1911 msgid "Change POU Type To" msgstr "" -#: ../Beremiz_service.py:327 +#: ../Beremiz_service.py:246 msgid "Change Port Number" msgstr "" -#: ../Beremiz_service.py:328 +#: ../Beremiz_service.py:247 msgid "Change working directory" msgstr "" @@ -805,20 +827,20 @@ msgid "Character string" msgstr "" -#: ../svgui/svgui.py:92 +#: ../svgui/svgui.py:101 msgid "Choose a SVG file" msgstr "" -#: ../ProjectController.py:364 +#: ../ProjectController.py:420 msgid "Choose a directory to save project" msgstr "" -#: ../canfestival/canfestival.py:136 ../PLCOpenEditor.py:294 -#: ../PLCOpenEditor.py:326 ../PLCOpenEditor.py:370 +#: ../canfestival/canfestival.py:136 ../PLCOpenEditor.py:285 +#: ../PLCOpenEditor.py:317 ../PLCOpenEditor.py:361 msgid "Choose a file" msgstr "" -#: ../Beremiz.py:858 ../Beremiz.py:893 +#: ../Beremiz.py:901 ../Beremiz.py:936 msgid "Choose a project" msgstr "" @@ -827,72 +849,76 @@ msgid "Choose a value for %s:" msgstr "" -#: ../Beremiz_service.py:378 +#: ../Beremiz_service.py:293 msgid "Choose a working directory " msgstr "" -#: ../ProjectController.py:288 +#: ../ProjectController.py:334 msgid "Chosen folder doesn't contain a program. It's not a valid project!" msgstr "" -#: ../ProjectController.py:255 +#: ../ProjectController.py:301 msgid "Chosen folder isn't empty. You can't use it for a new project!" msgstr "" -#: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59 +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 msgid "Class" msgstr "" -#: ../controls/VariablePanel.py:371 +#: ../controls/VariablePanel.py:431 msgid "Class Filter:" msgstr "" -#: ../dialogs/FBDVariableDialog.py:62 +#: ../dialogs/FBDVariableDialog.py:69 msgid "Class:" msgstr "" -#: ../ProjectController.py:1523 +#: ../ProjectController.py:1672 msgid "Clean" msgstr "" -#: ../ProjectController.py:1525 +#: ../controls/LogViewer.py:317 +msgid "Clean log messages" +msgstr "" + +#: ../ProjectController.py:1674 msgid "Clean project build folder" msgstr "" -#: ../ProjectController.py:1076 +#: ../ProjectController.py:1163 msgid "Cleaning the build directory\n" msgstr "" -#: ../IDEFrame.py:416 +#: ../IDEFrame.py:411 msgid "Clear Errors" msgstr "" -#: ../editors/Viewer.py:520 +#: ../editors/Viewer.py:577 msgid "Clear Execution Order" msgstr "" -#: ../editors/GraphicViewer.py:125 -msgid "Clear the graph values" -msgstr "" - -#: ../Beremiz.py:633 ../PLCOpenEditor.py:202 +#: ../dialogs/FindInPouDialog.py:110 +msgid "Close" +msgstr "" + +#: ../PLCOpenEditor.py:192 ../Beremiz.py:669 msgid "Close Application" msgstr "" -#: ../IDEFrame.py:972 ../Beremiz.py:321 ../Beremiz.py:587 -#: ../PLCOpenEditor.py:112 +#: ../PLCOpenEditor.py:102 ../Beremiz.py:326 ../Beremiz.py:613 +#: ../IDEFrame.py:984 msgid "Close Project" msgstr "" -#: ../Beremiz.py:319 ../PLCOpenEditor.py:110 +#: ../PLCOpenEditor.py:100 ../Beremiz.py:324 msgid "Close Tab" msgstr "" -#: ../editors/Viewer.py:480 +#: ../editors/Viewer.py:537 ../editors/Viewer.py:2084 msgid "Coil" msgstr "" -#: ../editors/Viewer.py:500 ../editors/LDViewer.py:506 +#: ../editors/Viewer.py:557 ../editors/LDViewer.py:506 msgid "Comment" msgstr "" @@ -908,7 +934,7 @@ msgid "Comparison" msgstr "" -#: ../ProjectController.py:552 +#: ../ProjectController.py:609 msgid "Compiling IEC Program into C code...\n" msgstr "" @@ -916,7 +942,7 @@ msgid "Concatenation" msgstr "" -#: ../editors/ConfTreeNodeEditor.py:249 +#: ../editors/ConfTreeNodeEditor.py:206 msgid "Config" msgstr "" @@ -928,67 +954,69 @@ msgid "Configuration" msgstr "" -#: ../PLCControler.py:96 +#: ../PLCControler.py:97 msgid "Configurations" msgstr "" -#: ../ProjectController.py:1538 +#: ../editors/Viewer.py:303 ../editors/Viewer.py:333 ../editors/Viewer.py:355 +#: ../editors/TextViewer.py:289 ../editors/TextViewer.py:340 +#: ../editors/TextViewer.py:363 ../controls/VariablePanel.py:318 +msgid "Confirm or change variable name" +msgstr "" + +#: ../ProjectController.py:1687 msgid "Connect" msgstr "" -#: ../ProjectController.py:1539 +#: ../ProjectController.py:1688 msgid "Connect to the target PLC" msgstr "" -#: ../ProjectController.py:1125 +#: ../ProjectController.py:1212 #, python-format msgid "Connected to URI: %s" msgstr "" -#: ../connectors/PYRO/__init__.py:40 -#, python-format -msgid "Connecting to URI : %s\n" -msgstr "" - -#: ../editors/Viewer.py:466 ../dialogs/SFCTransitionDialog.py:76 +#: ../dialogs/SFCTransitionDialog.py:75 ../editors/Viewer.py:523 +#: ../editors/Viewer.py:2075 msgid "Connection" msgstr "" -#: ../dialogs/ConnectionDialog.py:37 +#: ../dialogs/ConnectionDialog.py:52 msgid "Connection Properties" msgstr "" -#: ../ProjectController.py:1397 +#: ../ProjectController.py:1547 msgid "Connection canceled!\n" msgstr "" -#: ../ProjectController.py:1422 +#: ../ProjectController.py:1572 #, python-format msgid "Connection failed to %s!\n" msgstr "" -#: ../connectors/PYRO/__init__.py:63 +#: ../connectors/PYRO/__init__.py:98 #, python-format msgid "Connection to '%s' failed.\n" msgstr "" -#: ../editors/Viewer.py:1426 ../dialogs/ConnectionDialog.py:56 +#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1569 msgid "Connector" msgstr "" -#: ../dialogs/SFCStepDialog.py:58 +#: ../dialogs/SFCStepDialog.py:64 msgid "Connectors:" msgstr "" -#: ../Beremiz.py:420 +#: ../Beremiz.py:436 msgid "Console" msgstr "" -#: ../controls/VariablePanel.py:65 +#: ../controls/VariablePanel.py:60 msgid "Constant" msgstr "" -#: ../editors/Viewer.py:476 +#: ../editors/Viewer.py:533 ../editors/Viewer.py:2080 msgid "Contact" msgstr "" @@ -996,7 +1024,7 @@ msgid "Content Description (optional):" msgstr "" -#: ../editors/Viewer.py:1427 ../dialogs/ConnectionDialog.py:61 +#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1570 msgid "Continuation" msgstr "" @@ -1016,11 +1044,12 @@ msgid "Conversion to time-of-day" msgstr "" -#: ../IDEFrame.py:353 ../IDEFrame.py:406 ../editors/Viewer.py:536 +#: ../editors/Viewer.py:593 ../controls/LogViewer.py:692 ../IDEFrame.py:346 +#: ../IDEFrame.py:401 msgid "Copy" msgstr "" -#: ../IDEFrame.py:1837 +#: ../IDEFrame.py:1898 msgid "Copy POU" msgstr "" @@ -1036,48 +1065,53 @@ msgid "Cosine" msgstr "" -#: ../ConfigTreeNode.py:602 +#: ../ConfigTreeNode.py:626 #, python-format msgid "" "Could not add child \"%s\", type %s :\n" "%s\n" msgstr "" -#: ../ConfigTreeNode.py:579 +#: ../py_ext/PythonFileCTNMixin.py:53 +#, python-format +msgid "Couldn't import old %s file." +msgstr "" + +#: ../ConfigTreeNode.py:598 #, python-format msgid "" "Couldn't load confnode base parameters %s :\n" " %s" msgstr "" -#: ../ConfigTreeNode.py:590 +#: ../ConfigTreeNode.py:614 ../CodeFileTreeNode.py:99 #, python-format msgid "" "Couldn't load confnode parameters %s :\n" " %s" msgstr "" -#: ../PLCControler.py:819 ../PLCControler.py:856 +#: ../PLCControler.py:946 msgid "Couldn't paste non-POU object." msgstr "" -#: ../ProjectController.py:1344 +#: ../ProjectController.py:1486 msgid "Couldn't start PLC !\n" msgstr "" -#: ../ProjectController.py:1352 +#: ../ProjectController.py:1494 msgid "Couldn't stop PLC !\n" msgstr "" -#: ../ProjectController.py:1321 +#: ../ProjectController.py:1458 msgid "Couldn't stop debugger.\n" msgstr "" -#: ../svgui/svgui.py:22 +#: ../svgui/svgui.py:23 msgid "Create HMI" msgstr "" -#: ../dialogs/PouDialog.py:43 +#: ../dialogs/PouDialog.py:45 msgid "Create a new POU" msgstr "" @@ -1085,71 +1119,71 @@ msgid "Create a new action" msgstr "" -#: ../IDEFrame.py:142 +#: ../IDEFrame.py:135 msgid "Create a new action block" msgstr "" -#: ../IDEFrame.py:91 ../IDEFrame.py:121 ../IDEFrame.py:154 +#: ../IDEFrame.py:84 ../IDEFrame.py:114 ../IDEFrame.py:147 msgid "Create a new block" msgstr "" -#: ../IDEFrame.py:115 +#: ../IDEFrame.py:108 msgid "Create a new branch" msgstr "" -#: ../IDEFrame.py:109 +#: ../IDEFrame.py:102 msgid "Create a new coil" msgstr "" -#: ../IDEFrame.py:85 ../IDEFrame.py:100 ../IDEFrame.py:130 +#: ../IDEFrame.py:78 ../IDEFrame.py:93 ../IDEFrame.py:123 msgid "Create a new comment" msgstr "" -#: ../IDEFrame.py:94 ../IDEFrame.py:124 ../IDEFrame.py:157 +#: ../IDEFrame.py:87 ../IDEFrame.py:117 ../IDEFrame.py:150 msgid "Create a new connection" msgstr "" -#: ../IDEFrame.py:112 ../IDEFrame.py:163 +#: ../IDEFrame.py:105 ../IDEFrame.py:156 msgid "Create a new contact" msgstr "" -#: ../IDEFrame.py:145 +#: ../IDEFrame.py:138 msgid "Create a new divergence" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:36 +#: ../dialogs/SFCDivergenceDialog.py:51 msgid "Create a new divergence or convergence" msgstr "" -#: ../IDEFrame.py:133 +#: ../IDEFrame.py:126 msgid "Create a new initial step" msgstr "" -#: ../IDEFrame.py:148 +#: ../IDEFrame.py:141 msgid "Create a new jump" msgstr "" -#: ../IDEFrame.py:103 ../IDEFrame.py:160 +#: ../IDEFrame.py:96 ../IDEFrame.py:153 msgid "Create a new power rail" msgstr "" -#: ../IDEFrame.py:106 +#: ../IDEFrame.py:99 msgid "Create a new rung" msgstr "" -#: ../IDEFrame.py:136 +#: ../IDEFrame.py:129 msgid "Create a new step" msgstr "" -#: ../IDEFrame.py:139 ../dialogs/PouTransitionDialog.py:42 +#: ../dialogs/PouTransitionDialog.py:42 ../IDEFrame.py:132 msgid "Create a new transition" msgstr "" -#: ../IDEFrame.py:88 ../IDEFrame.py:118 ../IDEFrame.py:151 +#: ../IDEFrame.py:81 ../IDEFrame.py:111 ../IDEFrame.py:144 msgid "Create a new variable" msgstr "" -#: ../IDEFrame.py:351 ../IDEFrame.py:405 ../editors/Viewer.py:535 +#: ../editors/Viewer.py:592 ../IDEFrame.py:344 ../IDEFrame.py:400 msgid "Cut" msgstr "" @@ -1177,7 +1211,7 @@ msgid "Data Type" msgstr "" -#: ../PLCControler.py:95 +#: ../PLCControler.py:96 msgid "Data Types" msgstr "" @@ -1202,50 +1236,50 @@ msgid "Days:" msgstr "" -#: ../ProjectController.py:1444 +#: ../ProjectController.py:1594 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" msgstr "" -#: ../controls/PouInstanceVariablesPanel.py:59 +#: ../controls/PouInstanceVariablesPanel.py:134 msgid "Debug instance" msgstr "" -#: ../editors/Viewer.py:1016 ../editors/Viewer.py:3326 +#: ../editors/Viewer.py:1104 ../editors/Viewer.py:3596 #, python-format msgid "Debug: %s" msgstr "" -#: ../ProjectController.py:1153 +#: ../ProjectController.py:1247 #, python-format msgid "Debug: Unknown variable '%s'\n" msgstr "" -#: ../ProjectController.py:1151 +#: ../ProjectController.py:1245 #, python-format msgid "Debug: Unsupported type to debug '%s'\n" msgstr "" -#: ../IDEFrame.py:612 +#: ../IDEFrame.py:614 msgid "Debugger" msgstr "" -#: ../ProjectController.py:1311 +#: ../ProjectController.py:1427 msgid "Debugger disabled\n" msgstr "" -#: ../ProjectController.py:1441 +#: ../ProjectController.py:1591 msgid "Debugger ready\n" msgstr "" -#: ../ProjectController.py:1323 +#: ../ProjectController.py:1460 msgid "Debugger stopped.\n" msgstr "" -#: ../IDEFrame.py:1866 ../Beremiz.py:991 ../editors/Viewer.py:511 +#: ../editors/Viewer.py:568 ../Beremiz.py:1030 ../IDEFrame.py:1927 msgid "Delete" msgstr "" -#: ../editors/Viewer.py:453 +#: ../editors/Viewer.py:510 msgid "Delete Divergence Branch" msgstr "" @@ -1253,7 +1287,7 @@ msgid "Delete File" msgstr "" -#: ../editors/Viewer.py:442 +#: ../editors/Viewer.py:497 msgid "Delete Wire Segment" msgstr "" @@ -1269,25 +1303,25 @@ msgid "Derivation Type:" msgstr "" -#: ../plcopen/structures.py:263 +#: ../plcopen/definitions.py:41 msgid "" "Derivative\n" "The derivative function block produces an output XOUT proportional to the rate of change of the input XIN." msgstr "" -#: ../controls/VariablePanel.py:362 +#: ../controls/VariablePanel.py:422 msgid "Description:" msgstr "" -#: ../editors/DataTypeEditor.py:320 ../dialogs/ArrayTypeDialog.py:61 +#: ../dialogs/ArrayTypeDialog.py:61 ../editors/DataTypeEditor.py:320 msgid "Dimensions:" msgstr "" -#: ../dialogs/FindInPouDialog.py:61 +#: ../dialogs/FindInPouDialog.py:67 msgid "Direction" msgstr "" -#: ../dialogs/BrowseLocationsDialog.py:86 +#: ../dialogs/BrowseLocationsDialog.py:85 msgid "Direction:" msgstr "" @@ -1295,15 +1329,15 @@ msgid "Directly" msgstr "" -#: ../ProjectController.py:1547 +#: ../ProjectController.py:1696 msgid "Disconnect" msgstr "" -#: ../ProjectController.py:1549 +#: ../ProjectController.py:1698 msgid "Disconnect from PLC" msgstr "" -#: ../editors/Viewer.py:495 +#: ../editors/Viewer.py:552 ../editors/Viewer.py:2061 msgid "Divergence" msgstr "" @@ -1316,21 +1350,21 @@ msgid "Do you really want to delete the file '%s'?" msgstr "" -#: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59 +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 msgid "Documentation" msgstr "" -#: ../PLCOpenEditor.py:330 +#: ../PLCOpenEditor.py:321 msgid "Done" msgstr "" -#: ../plcopen/structures.py:226 +#: ../plcopen/definitions.py:34 msgid "" "Down-counter\n" "The down-counter can be used to signal when a count has reached zero, on counting down from a preset value." msgstr "" -#: ../dialogs/ActionBlockDialog.py:37 +#: ../dialogs/ActionBlockDialog.py:38 msgid "Duration" msgstr "" @@ -1338,15 +1372,15 @@ msgid "EDS files (*.eds)|*.eds|All files|*.*" msgstr "" -#: ../editors/Viewer.py:509 +#: ../editors/Viewer.py:566 msgid "Edit Block" msgstr "" -#: ../dialogs/LDElementDialog.py:41 +#: ../dialogs/LDElementDialog.py:56 msgid "Edit Coil Values" msgstr "" -#: ../dialogs/LDElementDialog.py:38 +#: ../dialogs/LDElementDialog.py:54 msgid "Edit Contact Values" msgstr "" @@ -1354,7 +1388,7 @@ msgid "Edit Duration" msgstr "" -#: ../dialogs/SFCStepDialog.py:35 +#: ../dialogs/SFCStepDialog.py:49 msgid "Edit Step" msgstr "" @@ -1362,7 +1396,7 @@ msgid "Edit a WxWidgets GUI with WXGlade" msgstr "" -#: ../dialogs/ActionBlockDialog.py:122 +#: ../dialogs/ActionBlockDialog.py:121 msgid "Edit action block properties" msgstr "" @@ -1370,8 +1404,7 @@ msgid "Edit array type properties" msgstr "" -#: ../editors/Viewer.py:2186 ../editors/Viewer.py:2188 -#: ../editors/Viewer.py:2706 ../editors/Viewer.py:2708 +#: ../editors/Viewer.py:2541 ../editors/Viewer.py:2952 msgid "Edit comment" msgstr "" @@ -1383,11 +1416,11 @@ msgid "Edit item" msgstr "" -#: ../editors/Viewer.py:2670 +#: ../editors/Viewer.py:2916 msgid "Edit jump target" msgstr "" -#: ../ProjectController.py:1561 +#: ../ProjectController.py:1710 msgid "Edit raw IEC code added to code generated by PLCGenerator" msgstr "" @@ -1395,15 +1428,15 @@ msgid "Edit step name" msgstr "" -#: ../dialogs/SFCTransitionDialog.py:38 +#: ../dialogs/SFCTransitionDialog.py:50 msgid "Edit transition" msgstr "" -#: ../IDEFrame.py:584 +#: ../IDEFrame.py:586 msgid "Editor ToolBar" msgstr "" -#: ../ProjectController.py:1039 +#: ../ProjectController.py:1126 msgid "Editor selection" msgstr "" @@ -1411,19 +1444,19 @@ msgid "Elements :" msgstr "" -#: ../IDEFrame.py:348 +#: ../IDEFrame.py:341 msgid "Enable Undo/Redo" msgstr "" -#: ../Beremiz_service.py:385 +#: ../Beremiz_service.py:299 msgid "Enter a name " msgstr "" -#: ../Beremiz_service.py:370 +#: ../Beremiz_service.py:286 msgid "Enter a port number " msgstr "" -#: ../Beremiz_service.py:360 +#: ../Beremiz_service.py:277 msgid "Enter the IP of the interface to bind" msgstr "" @@ -1435,50 +1468,50 @@ msgid "Equal to" msgstr "" -#: ../Beremiz_service.py:271 ../controls/VariablePanel.py:332 -#: ../controls/VariablePanel.py:681 ../controls/DebugVariablePanel.py:379 -#: ../IDEFrame.py:966 ../IDEFrame.py:1553 ../IDEFrame.py:1590 -#: ../IDEFrame.py:1595 ../IDEFrame.py:1609 ../IDEFrame.py:1614 -#: ../IDEFrame.py:2290 ../Beremiz.py:1131 ../PLCOpenEditor.py:337 -#: ../PLCOpenEditor.py:342 ../PLCOpenEditor.py:416 ../PLCOpenEditor.py:426 -#: ../editors/TextViewer.py:369 ../editors/DataTypeEditor.py:549 +#: ../dialogs/ForceVariableDialog.py:179 +#: ../dialogs/SearchInProjectDialog.py:157 ../dialogs/SFCStepNameDialog.py:59 +#: ../dialogs/DurationEditorDialog.py:121 +#: ../dialogs/DurationEditorDialog.py:163 ../dialogs/PouTransitionDialog.py:107 +#: ../dialogs/BlockPreviewDialog.py:236 ../dialogs/ProjectDialog.py:71 +#: ../dialogs/ArrayTypeDialog.py:97 ../dialogs/ArrayTypeDialog.py:103 +#: ../dialogs/PouNameDialog.py:53 ../dialogs/BrowseLocationsDialog.py:211 +#: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouActionDialog.py:104 +#: ../dialogs/PouDialog.py:134 ../PLCOpenEditor.py:328 ../PLCOpenEditor.py:333 +#: ../PLCOpenEditor.py:407 ../PLCOpenEditor.py:417 ../editors/Viewer.py:419 +#: ../editors/LDViewer.py:666 ../editors/LDViewer.py:882 +#: ../editors/LDViewer.py:886 ../editors/DataTypeEditor.py:549 #: ../editors/DataTypeEditor.py:554 ../editors/DataTypeEditor.py:578 #: ../editors/DataTypeEditor.py:583 ../editors/DataTypeEditor.py:593 #: ../editors/DataTypeEditor.py:744 ../editors/DataTypeEditor.py:751 -#: ../editors/Viewer.py:365 ../editors/LDViewer.py:666 -#: ../editors/LDViewer.py:882 ../editors/LDViewer.py:886 -#: ../ProjectController.py:225 ../dialogs/PouNameDialog.py:53 -#: ../dialogs/PouTransitionDialog.py:107 -#: ../dialogs/BrowseLocationsDialog.py:212 ../dialogs/ProjectDialog.py:71 -#: ../dialogs/SFCStepNameDialog.py:59 ../dialogs/ConnectionDialog.py:159 -#: ../dialogs/FBDVariableDialog.py:201 ../dialogs/PouActionDialog.py:104 -#: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouDialog.py:132 -#: ../dialogs/SFCTransitionDialog.py:147 -#: ../dialogs/DurationEditorDialog.py:121 -#: ../dialogs/DurationEditorDialog.py:163 -#: ../dialogs/SearchInProjectDialog.py:157 ../dialogs/SFCStepDialog.py:130 -#: ../dialogs/ArrayTypeDialog.py:97 ../dialogs/ArrayTypeDialog.py:103 -#: ../dialogs/FBDBlockDialog.py:164 ../dialogs/ForceVariableDialog.py:179 +#: ../editors/TextViewer.py:387 ../editors/CodeFileEditor.py:763 +#: ../ProjectController.py:269 ../controls/FolderTree.py:217 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:166 +#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:137 +#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:225 +#: ../controls/VariablePanel.py:392 ../controls/VariablePanel.py:754 +#: ../Beremiz.py:1169 ../IDEFrame.py:978 ../IDEFrame.py:1584 +#: ../IDEFrame.py:1621 ../IDEFrame.py:1626 ../IDEFrame.py:1640 +#: ../IDEFrame.py:1645 ../Beremiz_service.py:190 msgid "Error" msgstr "" -#: ../ProjectController.py:601 +#: ../ProjectController.py:663 msgid "Error : At least one configuration and one resource must be declared in PLC !\n" msgstr "" -#: ../ProjectController.py:593 +#: ../ProjectController.py:655 #, python-format msgid "Error : IEC to C compiler returned %d\n" msgstr "" -#: ../ProjectController.py:534 +#: ../ProjectController.py:589 #, python-format msgid "" "Error in ST/IL/SFC code generator :\n" "%s\n" msgstr "" -#: ../ConfigTreeNode.py:183 +#: ../ConfigTreeNode.py:192 #, python-format msgid "Error while saving \"%s\"\n" msgstr "" @@ -1495,16 +1528,16 @@ msgid "Error: No PLC built\n" msgstr "" -#: ../ProjectController.py:1416 +#: ../ProjectController.py:1566 #, python-format msgid "Exception while connecting %s!\n" msgstr "" -#: ../dialogs/FBDBlockDialog.py:95 +#: ../dialogs/FBDBlockDialog.py:117 msgid "Execution Control:" msgstr "" -#: ../dialogs/FBDVariableDialog.py:76 ../dialogs/FBDBlockDialog.py:87 +#: ../dialogs/FBDVariableDialog.py:79 ../dialogs/FBDBlockDialog.py:105 msgid "Execution Order:" msgstr "" @@ -1524,7 +1557,7 @@ msgid "Export CanOpen slave to EDS file" msgstr "" -#: ../controls/DebugVariablePanel.py:1472 ../editors/GraphicViewer.py:144 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:243 msgid "Export graph values to clipboard" msgstr "" @@ -1532,39 +1565,38 @@ msgid "Export slave" msgstr "" -#: ../dialogs/FBDVariableDialog.py:69 +#: ../dialogs/FBDVariableDialog.py:89 msgid "Expression:" msgstr "" -#: ../controls/VariablePanel.py:77 +#: ../controls/VariablePanel.py:72 msgid "External" msgstr "" -#: ../ProjectController.py:605 +#: ../ProjectController.py:676 msgid "Extracting Located Variables...\n" msgstr "" -#: ../controls/ProjectPropertiesPanel.py:143 #: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 -#: ../dialogs/PouDialog.py:36 +#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143 msgid "FBD" msgstr "" -#: ../ProjectController.py:1480 +#: ../ProjectController.py:1629 msgid "Failed : Must build before transfer.\n" msgstr "" -#: ../editors/Viewer.py:404 ../dialogs/LDElementDialog.py:84 +#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:458 msgid "Falling Edge" msgstr "" -#: ../plcopen/structures.py:216 +#: ../plcopen/definitions.py:32 msgid "" "Falling edge detector\n" "The output produces a single pulse when a falling edge is detected." msgstr "" -#: ../ProjectController.py:927 +#: ../ProjectController.py:946 msgid "Fatal : cannot get builder.\n" msgstr "" @@ -1578,16 +1610,21 @@ msgid "Fields %s haven't a valid value!" msgstr "" -#: ../IDEFrame.py:358 ../dialogs/FindInPouDialog.py:30 -#: ../dialogs/FindInPouDialog.py:99 +#: ../controls/FolderTree.py:216 +#, python-format +msgid "File '%s' already exists!" +msgstr "" + +#: ../dialogs/FindInPouDialog.py:35 ../dialogs/FindInPouDialog.py:105 +#: ../IDEFrame.py:351 msgid "Find" msgstr "" -#: ../IDEFrame.py:360 +#: ../IDEFrame.py:353 msgid "Find Next" msgstr "" -#: ../IDEFrame.py:362 +#: ../IDEFrame.py:355 msgid "Find Previous" msgstr "" @@ -1595,15 +1632,15 @@ msgid "Find position" msgstr "" -#: ../dialogs/FindInPouDialog.py:51 +#: ../dialogs/FindInPouDialog.py:57 msgid "Find:" msgstr "" -#: ../connectors/PYRO/__init__.py:125 +#: ../connectors/PYRO/__init__.py:159 msgid "Force runtime reload\n" msgstr "" -#: ../controls/DebugVariablePanel.py:1934 ../editors/Viewer.py:1385 +#: ../editors/Viewer.py:1528 msgid "Force value" msgstr "" @@ -1611,14 +1648,15 @@ msgid "Forcing Variable Value" msgstr "" -#: ../dialogs/PouTransitionDialog.py:97 ../dialogs/ProjectDialog.py:70 -#: ../dialogs/PouActionDialog.py:94 ../dialogs/PouDialog.py:114 -#: ../dialogs/SFCTransitionDialog.py:147 +#: ../dialogs/SFCTransitionDialog.py:178 ../dialogs/PouTransitionDialog.py:97 +#: ../dialogs/ProjectDialog.py:70 ../dialogs/PouActionDialog.py:94 +#: ../dialogs/PouDialog.py:116 #, python-format msgid "Form isn't complete. %s must be filled!" msgstr "" -#: ../dialogs/ConnectionDialog.py:149 ../dialogs/FBDBlockDialog.py:154 +#: ../dialogs/SFCStepDialog.py:141 ../dialogs/FBDBlockDialog.py:232 +#: ../dialogs/ConnectionDialog.py:160 msgid "Form isn't complete. Name must be filled!" msgstr "" @@ -1626,60 +1664,61 @@ msgid "Form isn't complete. Pattern to search must be filled!" msgstr "" -#: ../dialogs/FBDBlockDialog.py:152 +#: ../dialogs/FBDBlockDialog.py:228 msgid "Form isn't complete. Valid block type must be selected!" msgstr "" -#: ../dialogs/FindInPouDialog.py:67 +#: ../dialogs/FindInPouDialog.py:73 msgid "Forward" msgstr "" -#: ../dialogs/SearchInProjectDialog.py:44 +#: ../dialogs/SearchInProjectDialog.py:44 ../IDEFrame.py:1714 msgid "Function" msgstr "" -#: ../IDEFrame.py:334 +#: ../IDEFrame.py:325 msgid "Function &Block" msgstr "" -#: ../IDEFrame.py:1845 ../dialogs/SearchInProjectDialog.py:45 +#: ../dialogs/SearchInProjectDialog.py:45 ../IDEFrame.py:1713 +#: ../IDEFrame.py:1906 msgid "Function Block" msgstr "" -#: ../controls/VariablePanel.py:744 +#: ../controls/VariablePanel.py:807 msgid "Function Block Types" msgstr "" -#: ../PLCControler.py:94 +#: ../PLCControler.py:95 msgid "Function Blocks" msgstr "" -#: ../editors/Viewer.py:236 +#: ../editors/Viewer.py:244 msgid "Function Blocks can't be used in Functions!" msgstr "" -#: ../PLCControler.py:2180 +#: ../PLCControler.py:2336 #, python-format msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!" msgstr "" -#: ../PLCControler.py:94 +#: ../PLCControler.py:95 msgid "Functions" msgstr "" -#: ../PLCOpenEditor.py:119 +#: ../PLCOpenEditor.py:109 msgid "Generate Program" msgstr "" -#: ../ProjectController.py:524 +#: ../ProjectController.py:580 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n" msgstr "" -#: ../controls/VariablePanel.py:78 +#: ../controls/VariablePanel.py:73 msgid "Global" msgstr "" -#: ../controls/DebugVariablePanel.py:1471 ../editors/GraphicViewer.py:131 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:242 msgid "Go to current value" msgstr "" @@ -1715,63 +1754,59 @@ msgid "Hours:" msgstr "" -#: ../plcopen/structures.py:278 +#: ../plcopen/definitions.py:44 msgid "" "Hysteresis\n" "The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2." msgstr "" -#: ../ProjectController.py:851 -msgid "IEC-61131-3 code generation failed !\n" -msgstr "" - #: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 #: ../dialogs/PouDialog.py:36 msgid "IL" msgstr "" -#: ../Beremiz_service.py:361 ../Beremiz_service.py:362 +#: ../Beremiz_service.py:278 ../Beremiz_service.py:279 msgid "IP is not valid!" msgstr "" -#: ../svgui/svgui.py:17 ../svgui/svgui.py:18 +#: ../svgui/svgui.py:18 ../svgui/svgui.py:19 msgid "Import SVG" msgstr "" -#: ../controls/VariablePanel.py:76 ../editors/Viewer.py:1412 -#: ../dialogs/FBDVariableDialog.py:34 +#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1555 +#: ../controls/VariablePanel.py:71 msgid "InOut" msgstr "" -#: ../editors/Viewer.py:999 +#: ../editors/Viewer.py:1087 msgid "Inactive" msgstr "" -#: ../controls/VariablePanel.py:265 +#: ../controls/VariablePanel.py:268 #, python-format msgid "Incompatible data types between \"%s\" and \"%s\"" msgstr "" -#: ../controls/VariablePanel.py:274 +#: ../controls/VariablePanel.py:277 #, python-format msgid "Incompatible size of data between \"%s\" and \"%s\"" msgstr "" -#: ../controls/VariablePanel.py:270 +#: ../controls/VariablePanel.py:273 #, python-format msgid "Incompatible size of data between \"%s\" and \"BOOL\"" msgstr "" -#: ../dialogs/ActionBlockDialog.py:37 +#: ../dialogs/ActionBlockDialog.py:38 msgid "Indicator" msgstr "" -#: ../editors/Viewer.py:491 +#: ../editors/Viewer.py:548 ../editors/Viewer.py:2058 msgid "Initial Step" msgstr "" -#: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59 -#: ../editors/DataTypeEditor.py:50 +#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 +#: ../controls/VariablePanel.py:54 msgid "Initial Value" msgstr "" @@ -1780,22 +1815,21 @@ msgid "Initial Value:" msgstr "" -#: ../svgui/svgui.py:21 +#: ../svgui/svgui.py:22 msgid "Inkscape" msgstr "" -#: ../dialogs/ActionBlockDialog.py:41 ../dialogs/SFCTransitionDialog.py:66 -#: ../dialogs/SFCTransitionDialog.py:137 +#: ../dialogs/SFCTransitionDialog.py:74 ../dialogs/ActionBlockDialog.py:42 msgid "Inline" msgstr "" -#: ../controls/VariablePanel.py:76 ../editors/Viewer.py:1410 -#: ../dialogs/BrowseLocationsDialog.py:35 ../dialogs/FBDVariableDialog.py:33 -#: ../dialogs/SFCStepDialog.py:61 +#: ../dialogs/SFCStepDialog.py:69 ../dialogs/FBDVariableDialog.py:37 +#: ../dialogs/BrowseLocationsDialog.py:35 ../editors/Viewer.py:1553 +#: ../controls/VariablePanel.py:71 msgid "Input" msgstr "" -#: ../dialogs/FBDBlockDialog.py:78 +#: ../dialogs/FBDBlockDialog.py:93 msgid "Inputs:" msgstr "" @@ -1803,22 +1837,22 @@ msgid "Insertion (into)" msgstr "" -#: ../plcopen/plcopen.py:1843 +#: ../plcopen/plcopen.py:1684 #, python-format msgid "Instance with id %d doesn't exist!" msgstr "" -#: ../editors/ResourceEditor.py:255 +#: ../editors/ResourceEditor.py:264 msgid "Instances:" msgstr "" -#: ../plcopen/structures.py:258 +#: ../plcopen/definitions.py:40 msgid "" "Integral\n" "The integral function block integrates the value of input XIN over time." msgstr "" -#: ../controls/VariablePanel.py:75 +#: ../controls/VariablePanel.py:70 msgid "Interface" msgstr "" @@ -1830,11 +1864,11 @@ msgid "Interval" msgstr "" -#: ../PLCControler.py:2157 ../PLCControler.py:2195 +#: ../PLCControler.py:2324 msgid "Invalid plcopen element(s)!!!" msgstr "" -#: ../canfestival/config_utils.py:376 ../canfestival/config_utils.py:637 +#: ../canfestival/config_utils.py:377 ../canfestival/config_utils.py:638 #, python-format msgid "Invalid type \"%s\"-> %d != %d for location\"%s\"" msgstr "" @@ -1844,17 +1878,19 @@ msgid "Invalid value \"%s\" for \"%s\" variable!" msgstr "" -#: ../controls/DebugVariablePanel.py:319 ../controls/DebugVariablePanel.py:322 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:132 +#: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:92 +#: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:160 #, python-format msgid "Invalid value \"%s\" for debug variable" msgstr "" -#: ../controls/VariablePanel.py:244 ../controls/VariablePanel.py:247 +#: ../controls/VariablePanel.py:247 ../controls/VariablePanel.py:250 #, python-format msgid "Invalid value \"%s\" for variable grid element" msgstr "" -#: ../editors/Viewer.py:221 ../editors/Viewer.py:224 +#: ../editors/Viewer.py:229 ../editors/Viewer.py:232 #, python-format msgid "Invalid value \"%s\" for viewer block" msgstr "" @@ -1865,13 +1901,12 @@ "You must fill a numeric value." msgstr "" -#: ../editors/Viewer.py:496 +#: ../editors/Viewer.py:553 ../editors/Viewer.py:2062 msgid "Jump" msgstr "" -#: ../controls/ProjectPropertiesPanel.py:143 #: ../dialogs/PouTransitionDialog.py:35 ../dialogs/PouActionDialog.py:31 -#: ../dialogs/PouDialog.py:36 +#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143 msgid "LD" msgstr "" @@ -1881,7 +1916,7 @@ msgstr "" #: ../dialogs/PouTransitionDialog.py:86 ../dialogs/PouActionDialog.py:83 -#: ../dialogs/PouDialog.py:102 +#: ../dialogs/PouDialog.py:104 msgid "Language" msgstr "" @@ -1890,27 +1925,27 @@ msgstr "" #: ../dialogs/PouTransitionDialog.py:60 ../dialogs/PouActionDialog.py:56 -#: ../dialogs/PouDialog.py:71 +#: ../dialogs/PouDialog.py:73 msgid "Language:" msgstr "" -#: ../ProjectController.py:1486 +#: ../ProjectController.py:1635 msgid "Latest build already matches current target. Transfering anyway...\n" msgstr "" -#: ../Beremiz_service.py:331 +#: ../Beremiz_service.py:250 msgid "Launch WX GUI inspector" msgstr "" -#: ../Beremiz_service.py:330 +#: ../Beremiz_service.py:249 msgid "Launch a live Python shell" msgstr "" -#: ../editors/Viewer.py:427 +#: ../editors/Viewer.py:481 msgid "Left" msgstr "" -#: ../dialogs/LDPowerRailDialog.py:55 +#: ../dialogs/LDPowerRailDialog.py:61 msgid "Left PowerRail" msgstr "" @@ -1926,7 +1961,7 @@ msgid "Less than or equal to" msgstr "" -#: ../IDEFrame.py:604 +#: ../IDEFrame.py:606 msgid "Library" msgstr "" @@ -1938,7 +1973,7 @@ msgid "Linking :\n" msgstr "" -#: ../controls/VariablePanel.py:77 ../dialogs/DiscoveryDialog.py:110 +#: ../dialogs/DiscoveryDialog.py:110 ../controls/VariablePanel.py:72 msgid "Local" msgstr "" @@ -1946,15 +1981,15 @@ msgid "Local entries" msgstr "" -#: ../ProjectController.py:1391 +#: ../ProjectController.py:1541 msgid "Local service discovery failed!\n" msgstr "" -#: ../controls/VariablePanel.py:58 +#: ../controls/VariablePanel.py:53 msgid "Location" msgstr "" -#: ../dialogs/BrowseLocationsDialog.py:68 +#: ../dialogs/BrowseLocationsDialog.py:67 msgid "Locations available:" msgstr "" @@ -1962,7 +1997,7 @@ msgid "Logarithm to base 10" msgstr "" -#: ../connectors/PYRO/__init__.py:55 +#: ../connectors/PYRO/__init__.py:90 #, python-format msgid "MDNS resolution failure for '%s'\n" msgstr "" @@ -1979,7 +2014,7 @@ msgid "Master" msgstr "" -#: ../ConfigTreeNode.py:500 +#: ../ConfigTreeNode.py:514 #, python-format msgid "Max count (%d) reached for this confnode of type %s " msgstr "" @@ -1996,7 +2031,7 @@ msgid "Memory" msgstr "" -#: ../IDEFrame.py:572 +#: ../IDEFrame.py:574 msgid "Menu ToolBar" msgstr "" @@ -2004,7 +2039,7 @@ msgid "Microseconds:" msgstr "" -#: ../editors/Viewer.py:432 +#: ../editors/Viewer.py:486 msgid "Middle" msgstr "" @@ -2028,31 +2063,23 @@ msgid "Miscellaneous" msgstr "" -#: ../dialogs/LDElementDialog.py:59 +#: ../dialogs/LDElementDialog.py:63 msgid "Modifier:" msgstr "" -#: ../PLCGenerator.py:732 ../PLCGenerator.py:975 +#: ../PLCGenerator.py:778 ../PLCGenerator.py:1217 #, python-format msgid "More than one connector found corresponding to \"%s\" continuation in \"%s\" POU" msgstr "" -#: ../dialogs/ActionBlockDialog.py:141 +#: ../dialogs/ActionBlockDialog.py:140 msgid "Move action down" msgstr "" -#: ../dialogs/ActionBlockDialog.py:140 +#: ../dialogs/ActionBlockDialog.py:139 msgid "Move action up" msgstr "" -#: ../controls/DebugVariablePanel.py:1532 -msgid "Move debug variable down" -msgstr "" - -#: ../controls/DebugVariablePanel.py:1531 -msgid "Move debug variable up" -msgstr "" - #: ../controls/CustomEditableListBox.py:43 msgid "Move down" msgstr "" @@ -2065,23 +2092,23 @@ msgid "Move element up" msgstr "" -#: ../editors/ResourceEditor.py:262 +#: ../editors/ResourceEditor.py:271 msgid "Move instance down" msgstr "" -#: ../editors/ResourceEditor.py:261 +#: ../editors/ResourceEditor.py:270 msgid "Move instance up" msgstr "" -#: ../editors/ResourceEditor.py:233 +#: ../editors/ResourceEditor.py:242 msgid "Move task down" msgstr "" -#: ../editors/ResourceEditor.py:232 +#: ../editors/ResourceEditor.py:241 msgid "Move task up" msgstr "" -#: ../IDEFrame.py:82 ../IDEFrame.py:97 ../IDEFrame.py:127 ../IDEFrame.py:168 +#: ../IDEFrame.py:75 ../IDEFrame.py:90 ../IDEFrame.py:120 ../IDEFrame.py:161 msgid "Move the view" msgstr "" @@ -2089,11 +2116,11 @@ msgid "Move up" msgstr "" -#: ../controls/VariablePanel.py:383 ../c_ext/CFileEditor.py:520 +#: ../editors/CodeFileEditor.py:643 ../controls/VariablePanel.py:443 msgid "Move variable down" msgstr "" -#: ../controls/VariablePanel.py:382 ../c_ext/CFileEditor.py:519 +#: ../editors/CodeFileEditor.py:642 ../controls/VariablePanel.py:442 msgid "Move variable up" msgstr "" @@ -2109,19 +2136,18 @@ msgid "My Computer:" msgstr "" -#: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59 -#: ../editors/DataTypeEditor.py:50 ../editors/ResourceEditor.py:68 -#: ../editors/ResourceEditor.py:77 +#: ../editors/ResourceEditor.py:68 ../editors/ResourceEditor.py:83 +#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 +#: ../controls/VariablePanel.py:54 msgid "Name" msgstr "" -#: ../Beremiz_service.py:386 +#: ../Beremiz_service.py:300 msgid "Name must not be null!" msgstr "" -#: ../dialogs/ConnectionDialog.py:65 ../dialogs/FBDVariableDialog.py:89 -#: ../dialogs/LDElementDialog.py:88 ../dialogs/SFCStepDialog.py:51 -#: ../dialogs/FBDBlockDialog.py:70 +#: ../dialogs/SFCStepDialog.py:55 ../dialogs/FBDBlockDialog.py:83 +#: ../dialogs/ConnectionDialog.py:75 msgid "Name:" msgstr "" @@ -2129,12 +2155,12 @@ msgid "Natural logarithm" msgstr "" -#: ../editors/Viewer.py:402 ../dialogs/LDElementDialog.py:67 +#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:456 msgid "Negated" msgstr "" -#: ../Beremiz.py:309 ../Beremiz.py:344 ../PLCOpenEditor.py:106 -#: ../PLCOpenEditor.py:148 +#: ../PLCOpenEditor.py:96 ../PLCOpenEditor.py:138 ../Beremiz.py:314 +#: ../Beremiz.py:349 msgid "New" msgstr "" @@ -2142,58 +2168,55 @@ msgid "New item" msgstr "" -#: ../editors/Viewer.py:401 +#: ../editors/Viewer.py:455 msgid "No Modifier" msgstr "" -#: ../PLCControler.py:3054 -msgid "No PLC project found" -msgstr "" - -#: ../ProjectController.py:1513 +#: ../ProjectController.py:1662 msgid "No PLC to transfer (did build succeed ?)\n" msgstr "" -#: ../PLCGenerator.py:1360 +#: ../PLCGenerator.py:1608 #, python-format msgid "No body defined in \"%s\" POU" msgstr "" -#: ../PLCGenerator.py:751 ../PLCGenerator.py:984 +#: ../PLCGenerator.py:797 ../PLCGenerator.py:1227 #, python-format msgid "No connector found corresponding to \"%s\" continuation in \"%s\" POU" msgstr "" -#: ../PLCOpenEditor.py:349 +#: ../PLCOpenEditor.py:340 msgid "" "No documentation available.\n" "Coming soon." msgstr "" -#: ../PLCGenerator.py:773 +#: ../PLCGenerator.py:819 #, python-format msgid "No informations found for \"%s\" block" msgstr "" -#: ../plcopen/structures.py:166 -msgid "No output variable found" +#: ../PLCGenerator.py:1183 +#, python-format +msgid "No output %s variable found in block %s in POU %s. Connection must be broken" msgstr "" #: ../controls/SearchResultPanel.py:169 msgid "No search results available." msgstr "" -#: ../svgui/svgui.py:98 +#: ../svgui/svgui.py:107 #, python-format msgid "No such SVG file: %s\n" msgstr "" -#: ../canfestival/config_utils.py:632 +#: ../canfestival/config_utils.py:633 #, python-format msgid "No such index/subindex (%x,%x) (variable %s)" msgstr "" -#: ../canfestival/config_utils.py:361 +#: ../canfestival/config_utils.py:362 #, python-format msgid "No such index/subindex (%x,%x) in ID : %d (variable %s)" msgstr "" @@ -2202,25 +2225,25 @@ msgid "No valid value selected!" msgstr "" -#: ../PLCGenerator.py:1358 +#: ../PLCGenerator.py:1606 #, python-format msgid "No variable defined in \"%s\" POU" msgstr "" -#: ../canfestival/config_utils.py:354 +#: ../canfestival/config_utils.py:355 #, python-format msgid "Non existing node ID : %d (variable %s)" msgstr "" -#: ../controls/VariablePanel.py:69 +#: ../controls/VariablePanel.py:64 msgid "Non-Retain" msgstr "" -#: ../dialogs/LDElementDialog.py:62 +#: ../dialogs/LDElementDialog.py:75 msgid "Normal" msgstr "" -#: ../canfestival/config_utils.py:383 +#: ../canfestival/config_utils.py:384 #, python-format msgid "Not PDO mappable variable : '%s' (ID:%d,Idx:%x,sIdx:%x))" msgstr "" @@ -2229,7 +2252,7 @@ msgid "Not equal to" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:80 +#: ../dialogs/SFCDivergenceDialog.py:78 msgid "Number of sequences:" msgstr "" @@ -2237,13 +2260,13 @@ msgid "Numerical" msgstr "" -#: ../plcopen/structures.py:246 +#: ../plcopen/definitions.py:38 msgid "" "Off-delay timer\n" "The off-delay timer can be used to delay setting an output false, for fixed period after input goes false." msgstr "" -#: ../plcopen/structures.py:241 +#: ../plcopen/definitions.py:37 msgid "" "On-delay timer\n" "The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true." @@ -2253,28 +2276,28 @@ msgid "Only Elements" msgstr "" -#: ../Beremiz.py:311 ../Beremiz.py:345 ../PLCOpenEditor.py:108 -#: ../PLCOpenEditor.py:149 +#: ../PLCOpenEditor.py:98 ../PLCOpenEditor.py:139 ../Beremiz.py:316 +#: ../Beremiz.py:350 msgid "Open" msgstr "" -#: ../svgui/svgui.py:107 +#: ../svgui/svgui.py:116 msgid "Open Inkscape" msgstr "" -#: ../ProjectController.py:1565 +#: ../ProjectController.py:1714 msgid "Open a file explorer to manage project files" msgstr "" -#: ../wxglade_hmi/wxglade_hmi.py:109 +#: ../wxglade_hmi/wxglade_hmi.py:114 msgid "Open wxGlade" msgstr "" -#: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59 +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 msgid "Option" msgstr "" -#: ../dialogs/FindInPouDialog.py:76 +#: ../dialogs/FindInPouDialog.py:82 msgid "Options" msgstr "" @@ -2286,9 +2309,9 @@ msgid "Other Profile" msgstr "" -#: ../controls/VariablePanel.py:76 ../editors/Viewer.py:1411 -#: ../dialogs/BrowseLocationsDialog.py:36 ../dialogs/FBDVariableDialog.py:35 -#: ../dialogs/SFCStepDialog.py:65 +#: ../dialogs/SFCStepDialog.py:70 ../dialogs/FBDVariableDialog.py:39 +#: ../dialogs/BrowseLocationsDialog.py:36 ../editors/Viewer.py:1554 +#: ../controls/VariablePanel.py:71 msgid "Output" msgstr "" @@ -2300,7 +2323,7 @@ msgid "PDO Transmit" msgstr "" -#: ../plcopen/structures.py:268 +#: ../plcopen/definitions.py:42 msgid "" "PID\n" "The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control." @@ -2310,35 +2333,56 @@ msgid "PLC :\n" msgstr "" -#: ../Beremiz.py:425 +#: ../Beremiz.py:441 msgid "PLC Log" msgstr "" -#: ../PLCOpenEditor.py:294 ../PLCOpenEditor.py:370 +#: ../ProjectController.py:930 +msgid "PLC code generation failed !\n" +msgstr "" + +#: ../PLCOpenEditor.py:189 ../PLCOpenEditor.py:302 +#, python-format +msgid "" +"PLC syntax error at line %d:\n" +"%s" +msgstr "" + +#: ../PLCOpenEditor.py:285 ../PLCOpenEditor.py:361 msgid "PLCOpen files (*.xml)|*.xml|All files|*.*" msgstr "" -#: ../PLCOpenEditor.py:156 ../PLCOpenEditor.py:212 +#: ../PLCOpenEditor.py:146 ../PLCOpenEditor.py:202 msgid "PLCOpenEditor" msgstr "" -#: ../dialogs/PouDialog.py:98 +#: ../dialogs/PouDialog.py:100 msgid "POU Name" msgstr "" -#: ../dialogs/PouDialog.py:56 +#: ../dialogs/PouDialog.py:58 msgid "POU Name:" msgstr "" -#: ../dialogs/PouDialog.py:100 +#: ../dialogs/PouDialog.py:102 msgid "POU Type" msgstr "" -#: ../dialogs/PouDialog.py:63 +#: ../dialogs/PouDialog.py:65 msgid "POU Type:" msgstr "" -#: ../Beremiz.py:324 ../PLCOpenEditor.py:122 +#: ../connectors/PYRO/__init__.py:41 +#, python-format +msgid "PYRO connecting to URI : %s\n" +msgstr "" + +#: ../connectors/PYRO/__init__.py:57 +#, python-format +msgid "PYRO using certificates in '%s' \n" +msgstr "" + +#: ../PLCOpenEditor.py:112 ../Beremiz.py:329 msgid "Page Setup" msgstr "" @@ -2346,20 +2390,20 @@ msgid "Page Size (optional):" msgstr "" -#: ../IDEFrame.py:2492 +#: ../IDEFrame.py:2567 #, python-format msgid "Page: %d" msgstr "" -#: ../controls/PouInstanceVariablesPanel.py:48 +#: ../controls/PouInstanceVariablesPanel.py:124 msgid "Parent instance" msgstr "" -#: ../IDEFrame.py:355 ../IDEFrame.py:407 ../editors/Viewer.py:537 +#: ../editors/Viewer.py:594 ../IDEFrame.py:348 ../IDEFrame.py:402 msgid "Paste" msgstr "" -#: ../IDEFrame.py:1776 +#: ../IDEFrame.py:1833 msgid "Paste POU" msgstr "" @@ -2367,17 +2411,20 @@ msgid "Pattern to search:" msgstr "" -#: ../dialogs/LDPowerRailDialog.py:64 +#: ../dialogs/LDPowerRailDialog.py:72 msgid "Pin number:" msgstr "" -#: ../editors/Viewer.py:2363 ../editors/Viewer.py:2670 +#: ../editors/Viewer.py:2672 ../editors/Viewer.py:2916 #: ../editors/SFCViewer.py:696 msgid "Please choose a target" msgstr "" -#: ../editors/Viewer.py:2186 ../editors/Viewer.py:2188 -#: ../editors/Viewer.py:2706 ../editors/Viewer.py:2708 +#: ../editors/TextViewer.py:261 +msgid "Please enter a block name" +msgstr "" + +#: ../editors/Viewer.py:2542 ../editors/Viewer.py:2953 msgid "Please enter comment text" msgstr "" @@ -2391,43 +2438,36 @@ msgid "Please enter value for a \"%s\" variable:" msgstr "" -#: ../Beremiz_service.py:371 +#: ../Beremiz_service.py:287 msgid "Port number must be 0 <= port <= 65535!" msgstr "" -#: ../Beremiz_service.py:371 +#: ../Beremiz_service.py:287 msgid "Port number must be an integer!" msgstr "" -#: ../editors/GraphicViewer.py:105 -msgid "Position:" -msgstr "" - -#: ../editors/Viewer.py:475 +#: ../editors/Viewer.py:532 ../editors/Viewer.py:2085 msgid "Power Rail" msgstr "" -#: ../dialogs/LDPowerRailDialog.py:36 +#: ../dialogs/LDPowerRailDialog.py:49 msgid "Power Rail Properties" msgstr "" -#: ../Beremiz.py:326 ../PLCOpenEditor.py:124 +#: ../PLCOpenEditor.py:114 ../Beremiz.py:331 msgid "Preview" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:93 ../dialogs/LDPowerRailDialog.py:78 -#: ../dialogs/ConnectionDialog.py:78 ../dialogs/FBDVariableDialog.py:97 -#: ../dialogs/SFCTransitionDialog.py:96 ../dialogs/LDElementDialog.py:101 -#: ../dialogs/SFCStepDialog.py:79 ../dialogs/FBDBlockDialog.py:103 +#: ../dialogs/BlockPreviewDialog.py:57 msgid "Preview:" msgstr "" -#: ../Beremiz.py:328 ../Beremiz.py:348 ../PLCOpenEditor.py:126 -#: ../PLCOpenEditor.py:152 +#: ../PLCOpenEditor.py:116 ../PLCOpenEditor.py:142 ../Beremiz.py:333 +#: ../Beremiz.py:353 msgid "Print" msgstr "" -#: ../IDEFrame.py:1038 +#: ../IDEFrame.py:1050 msgid "Print preview" msgstr "" @@ -2435,11 +2475,11 @@ msgid "Priority" msgstr "" -#: ../dialogs/SFCTransitionDialog.py:83 +#: ../dialogs/SFCTransitionDialog.py:88 msgid "Priority:" msgstr "" -#: ../runtime/PLCObject.py:318 +#: ../runtime/PLCObject.py:369 #, python-format msgid "Problem starting PLC : error %d" msgstr "" @@ -2456,23 +2496,24 @@ msgid "Product Version (required):" msgstr "" -#: ../IDEFrame.py:1848 ../dialogs/SearchInProjectDialog.py:46 +#: ../dialogs/SearchInProjectDialog.py:46 ../IDEFrame.py:1712 +#: ../IDEFrame.py:1909 msgid "Program" msgstr "" -#: ../PLCOpenEditor.py:339 +#: ../PLCOpenEditor.py:330 msgid "Program was successfully generated!" msgstr "" -#: ../PLCControler.py:95 +#: ../PLCControler.py:96 msgid "Programs" msgstr "" -#: ../editors/Viewer.py:230 +#: ../editors/Viewer.py:238 msgid "Programs can't be used by other POUs!" msgstr "" -#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:557 +#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:559 msgid "Project" msgstr "" @@ -2481,7 +2522,7 @@ msgid "Project '%s':" msgstr "" -#: ../ProjectController.py:1564 +#: ../ProjectController.py:1713 msgid "Project Files" msgstr "" @@ -2493,36 +2534,36 @@ msgid "Project Version (optional):" msgstr "" -#: ../PLCControler.py:3041 +#: ../PLCControler.py:3157 msgid "" "Project file syntax error:\n" "\n" msgstr "" -#: ../editors/ProjectNodeEditor.py:14 ../dialogs/ProjectDialog.py:32 +#: ../dialogs/ProjectDialog.py:32 ../editors/ProjectNodeEditor.py:14 msgid "Project properties" msgstr "" -#: ../ConfigTreeNode.py:526 +#: ../ConfigTreeNode.py:540 #, python-format msgid "Project tree layout do not match confnode.xml %s!=%s " msgstr "" -#: ../dialogs/ConnectionDialog.py:96 +#: ../dialogs/ConnectionDialog.py:94 msgid "Propagate Name" msgstr "" -#: ../PLCControler.py:96 +#: ../PLCControler.py:97 msgid "Properties" msgstr "" -#: ../plcopen/structures.py:236 +#: ../plcopen/definitions.py:36 msgid "" "Pulse timer\n" "The pulse timer can be used to generate output pulses of a given time duration." msgstr "" -#: ../py_ext/PythonEditor.py:61 +#: ../py_ext/PythonEditor.py:57 msgid "Python code" msgstr "" @@ -2530,54 +2571,54 @@ msgid "Python file" msgstr "" -#: ../dialogs/ActionBlockDialog.py:37 +#: ../dialogs/ActionBlockDialog.py:38 msgid "Qualifier" msgstr "" -#: ../Beremiz_service.py:333 ../Beremiz.py:331 ../PLCOpenEditor.py:132 +#: ../PLCOpenEditor.py:122 ../Beremiz.py:336 ../Beremiz_service.py:252 msgid "Quit" msgstr "" -#: ../plcopen/structures.py:201 +#: ../plcopen/definitions.py:29 msgid "" "RS bistable\n" "The RS bistable is a latch where the Reset dominates." msgstr "" -#: ../plcopen/structures.py:273 +#: ../plcopen/definitions.py:43 msgid "" "Ramp\n" "The RAMP function block is modelled on example given in the standard." msgstr "" -#: ../controls/DebugVariablePanel.py:1462 ../editors/GraphicViewer.py:89 +#: ../controls/DebugVariablePanel/DebugVariablePanel.py:225 msgid "Range:" msgstr "" -#: ../ProjectController.py:1560 +#: ../ProjectController.py:1709 msgid "Raw IEC code" msgstr "" -#: ../plcopen/structures.py:253 +#: ../plcopen/definitions.py:39 msgid "" "Real time clock\n" "The real time clock has many uses including time stamping, setting dates and times of day in batch reports, in alarm messages and so on." msgstr "" -#: ../Beremiz.py:1072 +#: ../Beremiz.py:1109 #, python-format msgid "Really delete node '%s'?" msgstr "" -#: ../IDEFrame.py:345 ../IDEFrame.py:403 +#: ../IDEFrame.py:338 ../IDEFrame.py:398 msgid "Redo" msgstr "" -#: ../dialogs/SFCTransitionDialog.py:57 ../dialogs/SFCTransitionDialog.py:135 +#: ../dialogs/SFCTransitionDialog.py:73 msgid "Reference" msgstr "" -#: ../IDEFrame.py:413 ../dialogs/DiscoveryDialog.py:105 +#: ../dialogs/DiscoveryDialog.py:105 ../IDEFrame.py:408 msgid "Refresh" msgstr "" @@ -2585,11 +2626,11 @@ msgid "Regular expression" msgstr "" -#: ../dialogs/FindInPouDialog.py:91 +#: ../dialogs/FindInPouDialog.py:97 msgid "Regular expressions" msgstr "" -#: ../controls/DebugVariablePanel.py:1938 ../editors/Viewer.py:1388 +#: ../editors/Viewer.py:1531 msgid "Release value" msgstr "" @@ -2597,19 +2638,23 @@ msgid "Remainder (modulo)" msgstr "" -#: ../Beremiz.py:1073 +#: ../Beremiz.py:1110 #, python-format msgid "Remove %s node" msgstr "" -#: ../dialogs/ActionBlockDialog.py:139 +#: ../IDEFrame.py:2373 +msgid "Remove Datatype" +msgstr "" + +#: ../IDEFrame.py:2378 +msgid "Remove Pou" +msgstr "" + +#: ../dialogs/ActionBlockDialog.py:138 msgid "Remove action" msgstr "" -#: ../controls/DebugVariablePanel.py:1530 -msgid "Remove debug variable" -msgstr "" - #: ../editors/DataTypeEditor.py:352 msgid "Remove element" msgstr "" @@ -2618,7 +2663,7 @@ msgid "Remove file from left folder" msgstr "" -#: ../editors/ResourceEditor.py:260 +#: ../editors/ResourceEditor.py:269 msgid "Remove instance" msgstr "" @@ -2626,15 +2671,15 @@ msgid "Remove slave" msgstr "" -#: ../editors/ResourceEditor.py:231 +#: ../editors/ResourceEditor.py:240 msgid "Remove task" msgstr "" -#: ../controls/VariablePanel.py:381 ../c_ext/CFileEditor.py:518 +#: ../editors/CodeFileEditor.py:641 ../controls/VariablePanel.py:441 msgid "Remove variable" msgstr "" -#: ../IDEFrame.py:1852 +#: ../IDEFrame.py:1913 msgid "Rename" msgstr "" @@ -2642,6 +2687,10 @@ msgid "Replace File" msgstr "" +#: ../editors/Viewer.py:498 +msgid "Replace Wire by connections" +msgstr "" + #: ../plcopen/iec_std.csv:89 msgid "Replacement (within)" msgstr "" @@ -2650,11 +2699,11 @@ msgid "Reset" msgstr "" -#: ../editors/Viewer.py:521 +#: ../editors/Viewer.py:578 msgid "Reset Execution Order" msgstr "" -#: ../IDEFrame.py:428 +#: ../IDEFrame.py:423 msgid "Reset Perspective" msgstr "" @@ -2662,35 +2711,31 @@ msgid "Reset search result" msgstr "" -#: ../editors/GraphicViewer.py:137 -msgid "Reset zoom and offset" -msgstr "" - -#: ../PLCControler.py:96 +#: ../PLCControler.py:97 ../Beremiz.py:1041 msgid "Resources" msgstr "" -#: ../controls/VariablePanel.py:67 +#: ../controls/VariablePanel.py:62 msgid "Retain" msgstr "" -#: ../controls/VariablePanel.py:354 +#: ../controls/VariablePanel.py:414 msgid "Return Type:" msgstr "" -#: ../editors/Viewer.py:429 +#: ../editors/Viewer.py:483 msgid "Right" msgstr "" -#: ../dialogs/LDPowerRailDialog.py:60 +#: ../dialogs/LDPowerRailDialog.py:62 msgid "Right PowerRail" msgstr "" -#: ../editors/Viewer.py:403 ../dialogs/LDElementDialog.py:80 +#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:457 msgid "Rising Edge" msgstr "" -#: ../plcopen/structures.py:211 +#: ../plcopen/definitions.py:31 msgid "" "Rising edge detector\n" "The output produces a single pulse when a rising edge is detected." @@ -2708,12 +2753,16 @@ msgid "Rounding up/down" msgstr "" -#: ../ProjectController.py:1528 +#: ../ProjectController.py:1677 msgid "Run" msgstr "" -#: ../ProjectController.py:865 ../ProjectController.py:874 -msgid "Runtime extensions C code generation failed !\n" +#: ../ProjectController.py:975 +msgid "Runtime IO extensions C code generation failed !\n" +msgstr "" + +#: ../ProjectController.py:984 +msgid "Runtime library extensions C code generation failed !\n" msgstr "" #: ../canfestival/SlaveEditor.py:38 ../canfestival/NetworkEditor.py:59 @@ -2724,11 +2773,11 @@ msgid "SDO Server" msgstr "" -#: ../controls/ProjectPropertiesPanel.py:143 ../dialogs/PouDialog.py:36 +#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143 msgid "SFC" msgstr "" -#: ../plcopen/structures.py:196 +#: ../plcopen/definitions.py:28 msgid "" "SR bistable\n" "The SR bistable is a latch where the Set dominates." @@ -2739,11 +2788,11 @@ msgid "ST" msgstr "" -#: ../PLCOpenEditor.py:326 +#: ../PLCOpenEditor.py:317 msgid "ST files (*.st)|*.st|All files|*.*" msgstr "" -#: ../svgui/svgui.py:92 +#: ../svgui/svgui.py:101 msgid "SVG files (*.svg)|*.svg|All files|*.*" msgstr "" @@ -2751,16 +2800,16 @@ msgid "SVGUI" msgstr "" -#: ../Beremiz.py:315 ../Beremiz.py:346 ../PLCOpenEditor.py:115 -#: ../PLCOpenEditor.py:150 +#: ../PLCOpenEditor.py:105 ../PLCOpenEditor.py:140 ../Beremiz.py:320 +#: ../Beremiz.py:351 msgid "Save" msgstr "" -#: ../Beremiz.py:347 ../PLCOpenEditor.py:117 ../PLCOpenEditor.py:151 +#: ../PLCOpenEditor.py:107 ../PLCOpenEditor.py:141 ../Beremiz.py:352 msgid "Save As..." msgstr "" -#: ../Beremiz.py:317 +#: ../Beremiz.py:322 msgid "Save as" msgstr "" @@ -2768,12 +2817,11 @@ msgid "Scope" msgstr "" -#: ../IDEFrame.py:596 ../dialogs/SearchInProjectDialog.py:105 +#: ../dialogs/SearchInProjectDialog.py:105 ../IDEFrame.py:598 msgid "Search" msgstr "" -#: ../IDEFrame.py:365 ../IDEFrame.py:409 -#: ../dialogs/SearchInProjectDialog.py:52 +#: ../dialogs/SearchInProjectDialog.py:52 ../IDEFrame.py:358 ../IDEFrame.py:404 msgid "Search in Project" msgstr "" @@ -2781,24 +2829,25 @@ msgid "Seconds:" msgstr "" -#: ../IDEFrame.py:371 +#: ../IDEFrame.py:364 msgid "Select All" msgstr "" -#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:277 -#: ../editors/TextViewer.py:323 ../editors/Viewer.py:275 +#: ../editors/Viewer.py:284 ../editors/TextViewer.py:304 +#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:280 +#: ../controls/VariablePanel.py:340 msgid "Select a variable class:" msgstr "" -#: ../ProjectController.py:1039 +#: ../ProjectController.py:1126 msgid "Select an editor:" msgstr "" -#: ../controls/PouInstanceVariablesPanel.py:209 +#: ../controls/PouInstanceVariablesPanel.py:276 msgid "Select an instance" msgstr "" -#: ../IDEFrame.py:580 +#: ../IDEFrame.py:582 msgid "Select an object" msgstr "" @@ -2806,15 +2855,15 @@ msgid "Selection" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:62 +#: ../dialogs/SFCDivergenceDialog.py:65 msgid "Selection Convergence" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:55 +#: ../dialogs/SFCDivergenceDialog.py:64 msgid "Selection Divergence" msgstr "" -#: ../plcopen/structures.py:206 +#: ../plcopen/definitions.py:30 msgid "" "Semaphore\n" "The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources." @@ -2824,7 +2873,7 @@ msgid "Services available:" msgstr "" -#: ../dialogs/LDElementDialog.py:72 +#: ../dialogs/LDElementDialog.py:76 msgid "Set" msgstr "" @@ -2836,7 +2885,7 @@ msgid "Shift right" msgstr "" -#: ../ProjectController.py:1554 +#: ../ProjectController.py:1703 msgid "Show IEC code generated by PLCGenerator" msgstr "" @@ -2848,15 +2897,15 @@ msgid "Show Master generated by config_utils" msgstr "" -#: ../ProjectController.py:1552 +#: ../ProjectController.py:1701 msgid "Show code" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:74 +#: ../dialogs/SFCDivergenceDialog.py:67 msgid "Simultaneous Convergence" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:68 +#: ../dialogs/SFCDivergenceDialog.py:66 msgid "Simultaneous Divergence" msgstr "" @@ -2868,48 +2917,52 @@ msgid "Single" msgstr "" +#: ../targets/toolchain_makefile.py:112 +msgid "Source didn't change, no build.\n" +msgstr "" + #: ../plcopen/iec_std.csv:23 msgid "Square root (base 2)" msgstr "" -#: ../plcopen/structures.py:192 +#: ../plcopen/definitions.py:21 msgid "Standard function blocks" msgstr "" -#: ../Beremiz_service.py:321 ../ProjectController.py:1530 +#: ../ProjectController.py:1679 ../Beremiz_service.py:240 msgid "Start PLC" msgstr "" -#: ../ProjectController.py:843 +#: ../ProjectController.py:922 #, python-format msgid "Start build in %s\n" msgstr "" -#: ../ProjectController.py:1341 +#: ../ProjectController.py:1483 msgid "Starting PLC\n" msgstr "" -#: ../Beremiz.py:435 +#: ../Beremiz.py:451 msgid "Status ToolBar" msgstr "" -#: ../editors/Viewer.py:492 +#: ../editors/Viewer.py:549 ../editors/Viewer.py:2059 msgid "Step" msgstr "" -#: ../ProjectController.py:1533 +#: ../ProjectController.py:1682 msgid "Stop" msgstr "" -#: ../Beremiz_service.py:322 +#: ../Beremiz_service.py:241 msgid "Stop PLC" msgstr "" -#: ../ProjectController.py:1535 +#: ../ProjectController.py:1684 msgid "Stop Running PLC" msgstr "" -#: ../ProjectController.py:1318 +#: ../ProjectController.py:1455 msgid "Stopping debugger...\n" msgstr "" @@ -2925,7 +2978,7 @@ msgid "Subtraction" msgstr "" -#: ../ProjectController.py:942 +#: ../ProjectController.py:961 msgid "Successfully built.\n" msgstr "" @@ -2937,15 +2990,15 @@ msgid "Tangent" msgstr "" -#: ../editors/ResourceEditor.py:77 +#: ../editors/ResourceEditor.py:83 msgid "Task" msgstr "" -#: ../editors/ResourceEditor.py:226 +#: ../editors/ResourceEditor.py:235 msgid "Tasks:" msgstr "" -#: ../controls/VariablePanel.py:78 +#: ../controls/VariablePanel.py:73 msgid "Temp" msgstr "" @@ -2960,16 +3013,16 @@ msgid "The group of block must be coherent!" msgstr "" -#: ../IDEFrame.py:974 ../Beremiz.py:590 +#: ../Beremiz.py:616 ../IDEFrame.py:986 msgid "There are changes, do you want to save?" msgstr "" -#: ../IDEFrame.py:1590 ../IDEFrame.py:1609 +#: ../IDEFrame.py:1621 ../IDEFrame.py:1640 #, python-format msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?" msgstr "" -#: ../IDEFrame.py:1061 +#: ../IDEFrame.py:1073 msgid "" "There was a problem printing.\n" "Perhaps your current printer is not set correctly?" @@ -2979,10 +3032,6 @@ msgid "This option isn't available yet!" msgstr "" -#: ../editors/GraphicViewer.py:278 -msgid "Tick" -msgstr "" - #: ../plcopen/iec_std.csv:40 msgid "Time" msgstr "" @@ -3016,31 +3065,31 @@ msgid "Time-of-day subtraction" msgstr "" -#: ../editors/Viewer.py:431 +#: ../editors/Viewer.py:485 msgid "Top" msgstr "" -#: ../ProjectController.py:1542 +#: ../ProjectController.py:1691 msgid "Transfer" msgstr "" -#: ../ProjectController.py:1544 +#: ../ProjectController.py:1693 msgid "Transfer PLC" msgstr "" -#: ../ProjectController.py:1509 +#: ../ProjectController.py:1658 msgid "Transfer completed successfully.\n" msgstr "" -#: ../ProjectController.py:1511 +#: ../ProjectController.py:1660 msgid "Transfer failed\n" msgstr "" -#: ../editors/Viewer.py:493 +#: ../editors/Viewer.py:550 ../editors/Viewer.py:2060 ../editors/Viewer.py:2089 msgid "Transition" msgstr "" -#: ../PLCGenerator.py:1252 +#: ../PLCGenerator.py:1499 #, python-format msgid "Transition \"%s\" body must contain an output variable or coil referring to its name" msgstr "" @@ -3053,22 +3102,22 @@ msgid "Transition Name:" msgstr "" -#: ../PLCGenerator.py:1340 +#: ../PLCGenerator.py:1588 #, python-format msgid "Transition with content \"%s\" not connected to a next step in \"%s\" POU" msgstr "" -#: ../PLCGenerator.py:1331 +#: ../PLCGenerator.py:1579 #, python-format msgid "Transition with content \"%s\" not connected to a previous step in \"%s\" POU" msgstr "" -#: ../plcopen/plcopen.py:1447 +#: ../plcopen/plcopen.py:1315 #, python-format msgid "Transition with name %s doesn't exist!" msgstr "" -#: ../PLCControler.py:95 +#: ../PLCControler.py:96 msgid "Transitions" msgstr "" @@ -3076,17 +3125,17 @@ msgid "Triggering" msgstr "" -#: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59 -#: ../editors/DataTypeEditor.py:50 ../editors/ResourceEditor.py:77 -#: ../dialogs/ActionBlockDialog.py:37 +#: ../dialogs/ActionBlockDialog.py:38 ../editors/ResourceEditor.py:83 +#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53 +#: ../controls/VariablePanel.py:54 msgid "Type" msgstr "" -#: ../dialogs/BrowseLocationsDialog.py:44 +#: ../dialogs/BrowseLocationsDialog.py:43 msgid "Type and derivated" msgstr "" -#: ../canfestival/config_utils.py:335 ../canfestival/config_utils.py:617 +#: ../canfestival/config_utils.py:336 ../canfestival/config_utils.py:618 #, python-format msgid "Type conflict for location \"%s\"" msgstr "" @@ -3099,76 +3148,76 @@ msgid "Type infos:" msgstr "" -#: ../dialogs/BrowseLocationsDialog.py:45 +#: ../dialogs/BrowseLocationsDialog.py:44 msgid "Type strict" msgstr "" -#: ../dialogs/SFCDivergenceDialog.py:51 ../dialogs/LDPowerRailDialog.py:51 -#: ../dialogs/BrowseLocationsDialog.py:95 ../dialogs/ConnectionDialog.py:52 -#: ../dialogs/SFCTransitionDialog.py:53 ../dialogs/FBDBlockDialog.py:48 +#: ../dialogs/SFCDivergenceDialog.py:57 ../dialogs/SFCTransitionDialog.py:56 +#: ../dialogs/LDPowerRailDialog.py:55 ../dialogs/BrowseLocationsDialog.py:94 +#: ../dialogs/FBDBlockDialog.py:65 ../dialogs/ConnectionDialog.py:58 msgid "Type:" msgstr "" -#: ../canfestival/config_utils.py:455 ../canfestival/config_utils.py:469 +#: ../canfestival/config_utils.py:456 ../canfestival/config_utils.py:470 #, python-format msgid "Unable to define PDO mapping for node %02x" msgstr "" -#: ../targets/Xenomai/__init__.py:14 +#: ../targets/Xenomai/__init__.py:15 #, python-format msgid "Unable to get Xenomai's %s \n" msgstr "" -#: ../PLCGenerator.py:904 ../PLCGenerator.py:963 +#: ../PLCGenerator.py:951 ../PLCGenerator.py:1202 #, python-format msgid "Undefined block type \"%s\" in \"%s\" POU" msgstr "" -#: ../PLCGenerator.py:252 +#: ../PLCGenerator.py:254 #, python-format msgid "Undefined pou type \"%s\"" msgstr "" -#: ../IDEFrame.py:343 ../IDEFrame.py:402 +#: ../IDEFrame.py:336 ../IDEFrame.py:397 msgid "Undo" msgstr "" -#: ../ProjectController.py:262 +#: ../ProjectController.py:308 msgid "Unknown" msgstr "" -#: ../editors/Viewer.py:335 +#: ../editors/Viewer.py:389 #, python-format msgid "Unknown variable \"%s\" for this POU!" msgstr "" -#: ../ProjectController.py:259 ../ProjectController.py:260 +#: ../ProjectController.py:305 ../ProjectController.py:306 msgid "Unnamed" msgstr "" -#: ../PLCControler.py:305 +#: ../PLCControler.py:636 #, python-format msgid "Unnamed%d" msgstr "" -#: ../controls/VariablePanel.py:272 +#: ../controls/VariablePanel.py:275 #, python-format msgid "Unrecognized data size \"%s\"" msgstr "" -#: ../plcopen/structures.py:221 +#: ../plcopen/definitions.py:33 msgid "" "Up-counter\n" "The up-counter can be used to signal when a count has reached a maximum value." msgstr "" -#: ../plcopen/structures.py:231 +#: ../plcopen/definitions.py:35 msgid "" "Up-down counter\n" "The up-down counter has two inputs CU and CD. It can be used to both count up on one input and down on the other." msgstr "" -#: ../controls/VariablePanel.py:712 ../editors/DataTypeEditor.py:631 +#: ../editors/DataTypeEditor.py:631 ../controls/VariablePanel.py:780 msgid "User Data Types" msgstr "" @@ -3176,41 +3225,42 @@ msgid "User Type" msgstr "" -#: ../PLCControler.py:94 +#: ../PLCControler.py:95 msgid "User-defined POUs" msgstr "" -#: ../controls/DebugVariablePanel.py:58 ../dialogs/ActionBlockDialog.py:37 +#: ../dialogs/ActionBlockDialog.py:38 msgid "Value" msgstr "" -#: ../editors/GraphicViewer.py:278 -msgid "Values" -msgstr "" - #: ../editors/DataTypeEditor.py:258 msgid "Values:" msgstr "" -#: ../controls/DebugVariablePanel.py:58 ../editors/Viewer.py:465 -#: ../dialogs/ActionBlockDialog.py:41 +#: ../dialogs/ActionBlockDialog.py:42 ../editors/Viewer.py:522 +#: ../editors/Viewer.py:2074 msgid "Variable" msgstr "" -#: ../dialogs/FBDVariableDialog.py:47 +#: ../dialogs/FBDVariableDialog.py:63 msgid "Variable Properties" msgstr "" -#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:277 -#: ../editors/TextViewer.py:323 ../editors/Viewer.py:275 +#: ../editors/Viewer.py:284 ../editors/TextViewer.py:304 +#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:280 +#: ../controls/VariablePanel.py:340 msgid "Variable class" msgstr "" -#: ../editors/TextViewer.py:367 ../editors/Viewer.py:337 +#: ../editors/Viewer.py:391 ../editors/TextViewer.py:385 msgid "Variable don't belong to this POU!" msgstr "" -#: ../controls/VariablePanel.py:77 +#: ../dialogs/LDElementDialog.py:89 +msgid "Variable:" +msgstr "" + +#: ../controls/VariablePanel.py:72 msgid "Variables" msgstr "" @@ -3218,19 +3268,29 @@ msgid "Vertical:" msgstr "" +#: ../connectors/WAMP/__init__.py:88 +#, python-format +msgid "WAMP connecting to URL : %s\n" +msgstr "" + +#: ../connectors/WAMP/__init__.py:128 +msgid "WAMP connection timeout" +msgstr "" + +#: ../connectors/WAMP/__init__.py:147 +#, python-format +msgid "WAMP connection to '%s' failed.\n" +msgstr "" + #: ../wxglade_hmi/wxglade_hmi.py:11 msgid "WXGLADE GUI" msgstr "" -#: ../ProjectController.py:1302 -msgid "Waiting debugger to recover...\n" -msgstr "" - -#: ../editors/LDViewer.py:891 ../dialogs/PouDialog.py:126 +#: ../dialogs/PouDialog.py:128 ../editors/LDViewer.py:891 msgid "Warning" msgstr "" -#: ../ProjectController.py:529 +#: ../ProjectController.py:584 msgid "Warnings in ST/IL/SFC code generator :\n" msgstr "" @@ -3242,7 +3302,7 @@ msgid "Width:" msgstr "" -#: ../dialogs/FindInPouDialog.py:86 +#: ../dialogs/FindInPouDialog.py:92 msgid "Wrap search" msgstr "" @@ -3250,19 +3310,19 @@ msgid "WxGlade GUI" msgstr "" -#: ../svgui/svgui.py:106 +#: ../svgui/svgui.py:115 msgid "" "You don't have write permissions.\n" "Open Inkscape anyway ?" msgstr "" -#: ../wxglade_hmi/wxglade_hmi.py:108 +#: ../wxglade_hmi/wxglade_hmi.py:113 msgid "" "You don't have write permissions.\n" "Open wxGlade anyway ?" msgstr "" -#: ../ProjectController.py:224 +#: ../ProjectController.py:268 msgid "" "You must have permission to work on the project\n" "Work on a project copy ?" @@ -3276,8 +3336,7 @@ msgid "You must select the wire where a contact should be added!" msgstr "" -#: ../dialogs/PouNameDialog.py:45 ../dialogs/SFCStepNameDialog.py:47 -#: ../dialogs/SFCStepDialog.py:118 +#: ../dialogs/SFCStepNameDialog.py:47 ../dialogs/PouNameDialog.py:45 msgid "You must type a name!" msgstr "" @@ -3285,25 +3344,21 @@ msgid "You must type a value!" msgstr "" -#: ../IDEFrame.py:419 +#: ../IDEFrame.py:414 msgid "Zoom" msgstr "" -#: ../editors/GraphicViewer.py:97 -msgid "Zoom:" -msgstr "" - -#: ../PLCOpenEditor.py:335 +#: ../PLCOpenEditor.py:326 #, python-format msgid "error: %s\n" msgstr "" -#: ../util/ProcessLogger.py:161 +#: ../util/ProcessLogger.py:166 #, python-format msgid "exited with status %s (pid %s)\n" msgstr "" -#: ../PLCOpenEditor.py:393 ../PLCOpenEditor.py:395 +#: ../PLCOpenEditor.py:384 ../PLCOpenEditor.py:386 msgid "file : " msgstr "" @@ -3311,7 +3366,7 @@ msgid "function" msgstr "" -#: ../PLCOpenEditor.py:396 +#: ../PLCOpenEditor.py:387 msgid "function : " msgstr "" @@ -3319,7 +3374,7 @@ msgid "functionBlock" msgstr "" -#: ../PLCOpenEditor.py:396 +#: ../PLCOpenEditor.py:387 msgid "line : " msgstr "" @@ -3339,7 +3394,7 @@ msgid "string right of" msgstr "" -#: ../PLCOpenEditor.py:333 +#: ../PLCOpenEditor.py:324 #, python-format msgid "warning: %s\n" msgstr "" @@ -3376,15 +3431,36 @@ msgid "CAN_Driver" msgstr "" -msgid "CExtension" +msgid "Generic" +msgstr "" + +msgid "Command" +msgstr "" + +msgid "Xenomai" +msgstr "" + +msgid "XenoConfig" +msgstr "" + +msgid "Compiler" msgstr "" msgid "CFLAGS" msgstr "" +msgid "Linker" +msgstr "" + msgid "LDFLAGS" msgstr "" +msgid "Linux" +msgstr "" + +msgid "Win32" +msgstr "" + msgid "BaseParams" msgstr "" @@ -3394,24 +3470,6 @@ msgid "Enabled" msgstr "" -msgid "Linux" -msgstr "" - -msgid "Compiler" -msgstr "" - -msgid "Linker" -msgstr "" - -msgid "Win32" -msgstr "" - -msgid "Xenomai" -msgstr "" - -msgid "XenoConfig" -msgstr "" - msgid "BeremizRoot" msgstr "" @@ -3426,3 +3484,33 @@ msgid "Disable_Extensions" msgstr "" + +msgid "%(codefile_name)s" +msgstr "" + +msgid "variables" +msgstr "" + +msgid "variable" +msgstr "" + +msgid "name" +msgstr "" + +msgid "type" +msgstr "" + +msgid "class" +msgstr "" + +msgid "initial" +msgstr "" + +msgid "desc" +msgstr "" + +msgid "onchange" +msgstr "" + +msgid "opts" +msgstr "" diff -r 789acd7cc347 -r 00fb79aba7ac locale/ru_RU/LC_MESSAGES/Beremiz.mo Binary file locale/ru_RU/LC_MESSAGES/Beremiz.mo has changed