From 66539798e6c51addf2fefdb82c09e602ed2f799b Mon Sep 17 00:00:00 2001 From: camellan Date: Sat, 15 Jun 2019 20:03:20 +0400 Subject: [PATCH] Update Russian translation --- FlatCAMApp.py | 4 +- flatcamGUI/GUIElements.py | 2 +- locale/ru/LC_MESSAGES/strings.mo | Bin 105638 -> 169348 bytes locale/ru/LC_MESSAGES/strings.po | 1406 ++++++++++++++++++------------ locale_template/strings.pot | 4 + 5 files changed, 840 insertions(+), 576 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 6849e678..dd5773fe 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -1833,7 +1833,7 @@ class App(QtCore.QObject): self.shell.setWindowTitle("FlatCAM Shell") self.shell.resize(*self.defaults["global_shell_shape"]) self.shell.append_output("FlatCAM %s (c)2014-2019 Juan Pablo Caram " % self.version) - self.shell.append_output("(Type help to get started)\n\n") + self.shell.append_output(_("(Type help to get started)\n\n")) self.init_tcl() @@ -8044,7 +8044,7 @@ class App(QtCore.QObject): This behavior works only within main thread, errors with promissed tasks can be catched and detected only with log. - TODO: this problem have to be addressed somehow, maybe rewrite promissing to be blocking somehow for + TODO: this problem have to be addressed somehow, maybe rewrite promissing to be blocking somehow for TCL shell. Kamil's comment: I will rewrite existing TCL commands from time to time to follow this rules. diff --git a/flatcamGUI/GUIElements.py b/flatcamGUI/GUIElements.py index 89a24ace..be90969a 100644 --- a/flatcamGUI/GUIElements.py +++ b/flatcamGUI/GUIElements.py @@ -680,7 +680,7 @@ class FCTextAreaExtended(QtWidgets.QTextEdit): if character == "#": # delete # self.textCursor().deletePreviousChar() - # delete white space + # delete white space self.moveCursor(QtGui.QTextCursor.NextWord,QtGui.QTextCursor.KeepAnchor) self.textCursor().removeSelectedText() else: diff --git a/locale/ru/LC_MESSAGES/strings.mo b/locale/ru/LC_MESSAGES/strings.mo index 496bf459585179c6a6bcb10b352d2952d38645b0..5efa1776e2b5a2ad1e7b08c8f8e83035092ca6fa 100644 GIT binary patch literal 169348 zcmdSBcX(7)8@IbN2$)b5K@b$(fIyHGs!9YTB%v9K3DQJyl1#!tG7~csswiT`u3*7} z*adsc!fJ@Kw*+nnkAmlhJZ}{Q zUfv?lYXb+uc5nog-F~nwJkW72+!?tMc7>fPt~h~ram8}u7t7x)rX zdcK66;7?HDv|Vh&@8mcDDxOl<0an8u;3BASPK5G*3G4=Mhsy8sPX5R-w8W;XyJIh? z^!9^UaHx|3Rz81mA*6-%n8CY`4^=vxnoJ zQ1R>s75-c(e@8g^9JnL$b+8+J1S-6D9Dj!0k+(n0>hqxN$3TTQ8@7iDsQ6bvwTIPE z;oJ^o{~T2LeF(e4-=OSwTxR3#3nh<+vYQH(|0q;E3!u_>GE{t5LY2d9j!!zi>G-u{ zi^Dx{SL`}Ng*z0g-A#ZhhZ%5tc&OtFsBl+7#eX?eK5laEPeJ*A!|_wcpJ6!-ywwr3 zaolGe>3R8ZB~-rdfNJMY!QSw7$BY%Wy!yfl^!vdD@LD($_CCtcHSh7;jvxBw1>cffr38C1G=KGw!J01ihU1#{psSPeJ8oneRLY`nSfT;x6Bp>QKq z`iqXY{b+xvdWgXm@HnXSp9sgnbKth{UB^%1-pJpzN2DXK(p!(A~sC?Z3RUWrH{R2?(Z*qJO zwn6?DDx5!|^40cao9@9-;f;npU^!H}8ll2D0V;pzI(a=*y6%Ae-~&+pK7&4NcZ!|2 z@*F2YwW}CZIu=32cQjNzp9z(ZYhf>V3)~gH3ajDIa59{8Ds2Q_2iw8#pz@t@nk}y^ zsBvX`sCw!Jv*2D%KN`+JJ^*T*yB4bco`4$v-i0dvpJ8vf!|AsD?+rB%hoQnf5}I^F z`M(w_-H*b3;iry!oMHXXgYv%$?gDRuitjl%0Dc7Jf2UP;TpJGiBhQCBz_X#;H#qq} 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 A>Hq)$ diff --git a/locale/ru/LC_MESSAGES/strings.po b/locale/ru/LC_MESSAGES/strings.po index 999d4e7d..97c05b2f 100644 --- a/locale/ru/LC_MESSAGES/strings.po +++ b/locale/ru/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-09 17:10+0300\n" -"PO-Revision-Date: 2019-06-09 21:57+0400\n" +"POT-Creation-Date: 2019-06-11 23:00+0300\n" +"PO-Revision-Date: 2019-06-15 19:59+0400\n" "Last-Translator: Andrey Kultyapov \n" "Language-Team: \n" "Language: ru\n" @@ -28,26 +28,34 @@ msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR] Не удалось найти языковые файлы. Строки приложения отсутствуют." -#: FlatCAMApp.py:2019 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:1836 +msgid "" +"(Type help to get started)\n" +"\n" +msgstr "" +"(Введите help для начала работы.)\n" +"\n" + +#: FlatCAMApp.py:2018 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:299 flatcamTools/ToolPcbWizard.py:322 msgid "Open cancelled." -msgstr "Открытие завершено." +msgstr "Открытие отменено." -#: FlatCAMApp.py:2033 +#: FlatCAMApp.py:2032 msgid "Open Config file failed." msgstr "Не удалось открыть файл конфигурации." -#: FlatCAMApp.py:2047 +#: FlatCAMApp.py:2046 msgid "Open Script file failed." msgstr "Ошибка открытия файла сценария." -#: FlatCAMApp.py:2236 +#: FlatCAMApp.py:2235 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Выберите объект Geometry, Gerber или Excellon для " "редактирования." -#: FlatCAMApp.py:2246 +#: FlatCAMApp.py:2245 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -57,97 +65,97 @@ msgstr "" "невозможно.\n" "Редактируйте только одну геометрию за раз." -#: FlatCAMApp.py:2290 +#: FlatCAMApp.py:2289 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Редактор активирован ..." -#: FlatCAMApp.py:2308 +#: FlatCAMApp.py:2307 msgid "Do you want to save the edited object?" msgstr "Вы хотите сохранить редактируемый объект?" -#: FlatCAMApp.py:2309 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Закрыть редактор" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5882 +#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5881 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Да" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:5883 +#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5882 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Нет" -#: FlatCAMApp.py:2314 FlatCAMApp.py:3406 FlatCAMApp.py:3738 FlatCAMApp.py:5884 +#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3737 FlatCAMApp.py:5883 msgid "Cancel" msgstr "Отмена" -#: FlatCAMApp.py:2341 +#: FlatCAMApp.py:2340 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Объект пуст после редактирования." -#: FlatCAMApp.py:2363 FlatCAMApp.py:2382 FlatCAMApp.py:2394 +#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Выберите объект Gerber, Geometry или Excellon для обновления." -#: FlatCAMApp.py:2366 +#: FlatCAMApp.py:2365 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s обновлён, возврат в приложение ..." -#: FlatCAMApp.py:2731 +#: FlatCAMApp.py:2730 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Не удаётся загрузить файл настроек." -#: FlatCAMApp.py:2743 +#: FlatCAMApp.py:2742 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERRORr] Не удаётся прочитать файл настроек." -#: FlatCAMApp.py:2764 FlatCAMApp.py:2768 +#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 msgid "Import FlatCAM Preferences" msgstr "Импорт настроек FlatCAM" -#: FlatCAMApp.py:2774 +#: FlatCAMApp.py:2773 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Импорт настроек FlatCAM отменен." -#: FlatCAMApp.py:2782 FlatCAMApp.py:2836 FlatCAMApp.py:3283 +#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл значений по умолчанию." -#: FlatCAMApp.py:2790 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл значений по умолчанию." -#: FlatCAMApp.py:2793 +#: FlatCAMApp.py:2792 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Значения по умолчанию импортированы из %s" -#: FlatCAMApp.py:2808 FlatCAMApp.py:2813 +#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 msgid "Export FlatCAM Preferences" msgstr "Экспорт настроек FlatCAM" -#: FlatCAMApp.py:2820 +#: FlatCAMApp.py:2819 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." -msgstr "[WARNING_NOTCL] Экспорт настроек FlatCAM завершён." +msgstr "[WARNING_NOTCL] Экспорт настроек FlatCAM отменён." -#: FlatCAMApp.py:2855 FlatCAMApp.py:3337 +#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать значения по умолчанию в файл." -#: FlatCAMApp.py:2908 +#: FlatCAMApp.py:2907 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Не удалось открыть файл истории файлов для записи." -#: FlatCAMApp.py:2985 camlib.py:4443 +#: FlatCAMApp.py:2984 camlib.py:4454 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:2986 +#: FlatCAMApp.py:2985 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -156,11 +164,11 @@ msgstr "" "Объект ({kind}) не выполнен, потому что: {error} \n" "\n" -#: FlatCAMApp.py:3006 +#: FlatCAMApp.py:3005 msgid "Converting units to " msgstr "Конвертирование единиц в " -#: FlatCAMApp.py:3085 FlatCAMApp.py:3088 FlatCAMApp.py:3091 FlatCAMApp.py:3094 +#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3188 +#: FlatCAMApp.py:3187 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -191,31 +199,31 @@ msgstr "" "a>
ЗАГРУЗИТЬ можно отсюда.
" -#: FlatCAMApp.py:3341 +#: FlatCAMApp.py:3340 msgid "[success] Defaults saved." msgstr "[success] Значения по умолчанию сохранены." -#: FlatCAMApp.py:3362 +#: FlatCAMApp.py:3361 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл с исходными значениями." -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3370 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл с исходными значениями." -#: FlatCAMApp.py:3385 +#: FlatCAMApp.py:3384 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать исходные значения в файл." -#: FlatCAMApp.py:3389 +#: FlatCAMApp.py:3388 msgid "Factory defaults saved." msgstr "Исходные значения сохранены." -#: FlatCAMApp.py:3394 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Приложение сохраняет проект. Пожалуйста, подождите ..." -#: FlatCAMApp.py:3399 +#: FlatCAMApp.py:3398 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -223,11 +231,11 @@ msgstr "" "Есть файлы/объекты, измененные в FlatCAM.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:3402 FlatCAMApp.py:5880 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5879 msgid "Save changes" msgstr "Сохранить изменения" -#: FlatCAMApp.py:3469 +#: FlatCAMApp.py:3468 msgid "" "[ERROR] Failed join. The Geometry objects are of different types.\n" "At least one is MultiGeo type and the other is SingleGeo type. A possibility " @@ -243,70 +251,70 @@ msgstr "" "потеряна, и результат может не соответствовать ожидаемому. \n" "Проверьте сгенерированный GCODE." -#: FlatCAMApp.py:3510 +#: FlatCAMApp.py:3509 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Неудача. Присоединение Excellon работает только на объектах " "Excellon." -#: FlatCAMApp.py:3532 +#: FlatCAMApp.py:3531 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Неудача. Объединение Gerber работает только на объектах Gerber." -#: FlatCAMApp.py:3547 FlatCAMApp.py:3572 +#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Неудалось. Выберите объект Geometry и попробуйте снова." -#: FlatCAMApp.py:3551 FlatCAMApp.py:3576 +#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Ожидается FlatCAMGeometry, получено %s" -#: FlatCAMApp.py:3564 +#: FlatCAMApp.py:3563 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Объект Geometry был преобразован в тип MultiGeo." -#: FlatCAMApp.py:3590 +#: FlatCAMApp.py:3589 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Объект Geometry был преобразован в тип SingleGeo." -#: FlatCAMApp.py:3737 FlatCAMApp.py:4573 FlatCAMApp.py:6155 FlatCAMApp.py:6166 -#: FlatCAMApp.py:6406 FlatCAMApp.py:6416 +#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6154 FlatCAMApp.py:6165 +#: FlatCAMApp.py:6405 FlatCAMApp.py:6415 msgid "Ok" msgstr "Да" -#: FlatCAMApp.py:3779 +#: FlatCAMApp.py:3778 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Конвертирование единиц в %s" -#: FlatCAMApp.py:3790 +#: FlatCAMApp.py:3789 msgid "[WARNING_NOTCL] Units conversion cancelled." -msgstr "[WARNING_NOTCL] Преобразование единиц завершено." +msgstr "[WARNING_NOTCL] Преобразование единиц отменено." -#: FlatCAMApp.py:4442 +#: FlatCAMApp.py:4441 msgid "Open file" msgstr "Открыть файл" -#: FlatCAMApp.py:4473 FlatCAMApp.py:4478 +#: FlatCAMApp.py:4472 FlatCAMApp.py:4477 msgid "Export G-Code ..." msgstr "Экспорт G-Code …" -#: FlatCAMApp.py:4481 +#: FlatCAMApp.py:4480 msgid "[WARNING_NOTCL] Export Code cancelled." -msgstr "[WARNING_NOTCL] Экспорт Code завершён." +msgstr "[WARNING_NOTCL] Экспорт Code отменён." -#: FlatCAMApp.py:4491 +#: FlatCAMApp.py:4490 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Нет такого файла или каталога" -#: FlatCAMApp.py:4498 +#: FlatCAMApp.py:4497 #, python-format msgid "Saved to: %s" msgstr "Сохранёно в: %s" -#: FlatCAMApp.py:4561 FlatCAMApp.py:4594 FlatCAMApp.py:4605 FlatCAMApp.py:4616 +#: FlatCAMApp.py:4560 FlatCAMApp.py:4593 FlatCAMApp.py:4604 FlatCAMApp.py:4615 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -315,12 +323,12 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите диаметр инструмента с ненулевым " "значением в float формате." -#: FlatCAMApp.py:4566 FlatCAMApp.py:4599 FlatCAMApp.py:4610 FlatCAMApp.py:4621 +#: FlatCAMApp.py:4565 FlatCAMApp.py:4598 FlatCAMApp.py:4609 FlatCAMApp.py:4620 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." -msgstr "[WARNING_NOTCL] Добавление инструмента завершено ..." +msgstr "[WARNING_NOTCL] Добавление инструмента отменено ..." -#: FlatCAMApp.py:4569 +#: FlatCAMApp.py:4568 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -329,35 +337,35 @@ msgstr "" "«Дополнительно».\n" "Перейдите в Настройки -> Основные парам. - Показать дополнительные параметры." -#: FlatCAMApp.py:4682 +#: FlatCAMApp.py:4681 msgid "Object(s) deleted ..." msgstr "Объект(ы) удален ..." -#: FlatCAMApp.py:4686 +#: FlatCAMApp.py:4685 msgid "Failed. No object(s) selected..." msgstr "Нудача. Объекты не выбраны ..." -#: FlatCAMApp.py:4688 +#: FlatCAMApp.py:4687 msgid "Save the work in Editor and try again ..." msgstr "Сохраните работу в редакторе и попробуйте снова ..." -#: FlatCAMApp.py:4701 +#: FlatCAMApp.py:4700 msgid "Click to set the origin ..." -msgstr "Кликните, чтобы указать начало ..." +msgstr "Кликните, чтобы указать начало координат ..." -#: FlatCAMApp.py:4713 +#: FlatCAMApp.py:4712 msgid "Jump to ..." msgstr "Перейти к ..." -#: FlatCAMApp.py:4714 +#: FlatCAMApp.py:4713 msgid "Enter the coordinates in format X,Y:" msgstr "Введите координаты в формате X, Y:" -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4720 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Неверные координаты. Введите координаты в формате: X, Y" -#: FlatCAMApp.py:4739 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4738 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3645 #: flatcamEditors/FlatCAMGeoEditor.py:3659 @@ -371,84 +379,84 @@ msgstr "Неверные координаты. Введите координат msgid "[success] Done." msgstr "[success] Готово." -#: FlatCAMApp.py:4871 FlatCAMApp.py:4938 +#: FlatCAMApp.py:4870 FlatCAMApp.py:4937 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] Объект не выбран. Выберите объект и попробуйте снова." -#: FlatCAMApp.py:4979 +#: FlatCAMApp.py:4978 msgid "[success] Origin set ..." -msgstr "[success] Начало установлено ..." +msgstr "[success] Начало координат установлено ..." -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:4998 msgid "Preferences" msgstr "Настройки" -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5018 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Y." -#: FlatCAMApp.py:5044 +#: FlatCAMApp.py:5043 msgid "[success] Flip on Y axis done." msgstr "[success] Отражение по оси Y завершено." -#: FlatCAMApp.py:5046 FlatCAMApp.py:5086 +#: FlatCAMApp.py:5045 FlatCAMApp.py:5085 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5331 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Из-за %s, операция переворота не была выполнена." -#: FlatCAMApp.py:5059 +#: FlatCAMApp.py:5058 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Х." -#: FlatCAMApp.py:5084 +#: FlatCAMApp.py:5083 msgid "[success] Flip on X axis done." msgstr "[success] Отражение по оси Х завершено." -#: FlatCAMApp.py:5099 +#: FlatCAMApp.py:5098 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Не выбран ни один объект для вращения." -#: FlatCAMApp.py:5102 FlatCAMApp.py:5147 FlatCAMApp.py:5178 +#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 msgid "Transform" msgstr "Трансформация" -#: FlatCAMApp.py:5102 FlatCAMApp.py:5147 FlatCAMApp.py:5178 +#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 msgid "Enter the Angle value:" msgstr "Введите значение угла:" -#: FlatCAMApp.py:5132 +#: FlatCAMApp.py:5131 msgid "[success] Rotation done." msgstr "[success] Вращение завершено." -#: FlatCAMApp.py:5134 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5262 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Из-за %s вращение не было выполнено." -#: FlatCAMApp.py:5145 +#: FlatCAMApp.py:5144 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Не выбран ни один объект для наклона/сдвига по оси X." -#: FlatCAMApp.py:5166 +#: FlatCAMApp.py:5165 msgid "[success] Skew on X axis done." msgstr "[success] Наклон по оси X выполнен." -#: FlatCAMApp.py:5176 +#: FlatCAMApp.py:5175 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." -msgstr "" +msgstr "[WARNING_NOTCL] Нет объекта, выбранного для наклона/сдвига по оси Y." -#: FlatCAMApp.py:5197 +#: FlatCAMApp.py:5196 msgid "[success] Skew on Y axis done." -msgstr "" +msgstr "[success] Наклон по оси Y выполнен." -#: FlatCAMApp.py:5266 +#: FlatCAMApp.py:5265 msgid "Grid On/Off" msgstr "Сетка вкл/откл" -#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5278 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4853 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -458,7 +466,7 @@ msgstr "Сетка вкл/откл" msgid "Add" msgstr "Добавить" -#: FlatCAMApp.py:5280 FlatCAMObj.py:3306 +#: FlatCAMApp.py:5279 FlatCAMObj.py:3270 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -467,15 +475,15 @@ msgstr "Добавить" msgid "Delete" msgstr "Удалить" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5292 msgid "New Grid ..." msgstr "Новая сетка ..." -#: FlatCAMApp.py:5294 +#: FlatCAMApp.py:5293 msgid "Enter a Grid Value:" msgstr "Введите размер сетки:" -#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 +#: FlatCAMApp.py:5301 FlatCAMApp.py:5328 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -483,48 +491,48 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите значение сетки с ненулевым значением в " "float формате." -#: FlatCAMApp.py:5308 +#: FlatCAMApp.py:5307 msgid "[success] New Grid added ..." msgstr "[success] Новая сетка добавлена ..." -#: FlatCAMApp.py:5311 +#: FlatCAMApp.py:5310 msgid "[WARNING_NOTCL] Grid already exists ..." -msgstr "" +msgstr "[WARNING_NOTCL] Сетка уже существует ..." -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5313 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." -msgstr "" +msgstr "[WARNING_NOTCL] Добавление новой сетки отменено ..." -#: FlatCAMApp.py:5336 +#: FlatCAMApp.py:5335 msgid "[ERROR_NOTCL] Grid Value does not exist ..." -msgstr "" +msgstr "[ERROR_NOTCL] Значение сетки не существует ..." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5338 msgid "[success] Grid Value deleted ..." -msgstr "" +msgstr "[success] Значение сетки удалено ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5341 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." -msgstr "" +msgstr "[WARNING_NOTCL] Удаление значения сетки отменено ..." -#: FlatCAMApp.py:5381 +#: FlatCAMApp.py:5380 msgid "[WARNING_NOTCL] No object selected to copy it's name" -msgstr "" +msgstr "[WARNING_NOTCL] Нет объекта, выбранного для копирования его имени" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5384 msgid "Name copied on clipboard ..." msgstr "Имя скопировано в буфер обмена ..." -#: FlatCAMApp.py:5678 FlatCAMApp.py:5681 FlatCAMApp.py:5684 FlatCAMApp.py:5687 -#: FlatCAMApp.py:5702 FlatCAMApp.py:5705 FlatCAMApp.py:5708 FlatCAMApp.py:5711 -#: FlatCAMApp.py:5751 FlatCAMApp.py:5754 FlatCAMApp.py:5757 FlatCAMApp.py:5760 +#: FlatCAMApp.py:5677 FlatCAMApp.py:5680 FlatCAMApp.py:5683 FlatCAMApp.py:5686 +#: FlatCAMApp.py:5701 FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 +#: FlatCAMApp.py:5750 FlatCAMApp.py:5753 FlatCAMApp.py:5756 FlatCAMApp.py:5759 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} выбран" -#: FlatCAMApp.py:5877 +#: FlatCAMApp.py:5876 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -534,216 +542,229 @@ msgstr "" "Создание нового проекта удалит их.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:5898 +#: FlatCAMApp.py:5897 msgid "[success] New Project created..." msgstr "[success] Новый проект создан ..." -#: FlatCAMApp.py:6014 FlatCAMApp.py:6017 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6013 FlatCAMApp.py:6016 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Открыть Gerber" -#: FlatCAMApp.py:6022 +#: FlatCAMApp.py:6021 msgid "[WARNING_NOTCL] Open Gerber cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие Gerber отменено." -#: FlatCAMApp.py:6043 FlatCAMApp.py:6046 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6042 FlatCAMApp.py:6045 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Открыть Excellon" -#: FlatCAMApp.py:6051 +#: FlatCAMApp.py:6050 msgid "[WARNING_NOTCL] Open Excellon cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие Excellon отменено." -#: FlatCAMApp.py:6073 FlatCAMApp.py:6076 +#: FlatCAMApp.py:6072 FlatCAMApp.py:6075 msgid "Open G-Code" msgstr "Открыть G-Code" -#: FlatCAMApp.py:6081 +#: FlatCAMApp.py:6080 msgid "[WARNING_NOTCL] Open G-Code cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие G-Code отменено." -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6098 FlatCAMApp.py:6101 msgid "Open Project" msgstr "Открыть проект" -#: FlatCAMApp.py:6110 +#: FlatCAMApp.py:6109 msgid "[WARNING_NOTCL] Open Project cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие проекта отменено." -#: FlatCAMApp.py:6129 FlatCAMApp.py:6132 +#: FlatCAMApp.py:6128 FlatCAMApp.py:6131 msgid "Open Configuration File" msgstr "Открыть файл конфигурации" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6135 msgid "[WARNING_NOTCL] Open Config cancelled." -msgstr "[WARNING_NOTCL] Открытие конфигурации завершено." +msgstr "[WARNING_NOTCL] Открытие конфигурации отменено." -#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 FlatCAMApp.py:8552 FlatCAMApp.py:8572 -#: FlatCAMApp.py:8593 FlatCAMApp.py:8615 +#: FlatCAMApp.py:6150 FlatCAMApp.py:6401 FlatCAMApp.py:8551 FlatCAMApp.py:8571 +#: FlatCAMApp.py:8592 FlatCAMApp.py:8614 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Нет выбранных объектов." -#: FlatCAMApp.py:6152 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 msgid "Please Select a Geometry object to export" msgstr "Выберите объект Geometry для экспорта" -#: FlatCAMApp.py:6163 +#: FlatCAMApp.py:6162 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" +"[ERROR_NOTCL] Можно использовать только объекты Geometry, Gerber и CNCJob." -#: FlatCAMApp.py:6176 FlatCAMApp.py:6180 +#: FlatCAMApp.py:6175 FlatCAMApp.py:6179 msgid "Export SVG" msgstr "Экспорт SVG" -#: FlatCAMApp.py:6185 +#: FlatCAMApp.py:6184 msgid "[WARNING_NOTCL] Export SVG cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт SVG отменён." -#: FlatCAMApp.py:6204 +#: FlatCAMApp.py:6203 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" +"[WARNING_NOTCL] Данные должны быть 3D массивом с последним размером 3 или 4" -#: FlatCAMApp.py:6210 FlatCAMApp.py:6214 +#: FlatCAMApp.py:6209 FlatCAMApp.py:6213 msgid "Export PNG Image" msgstr "Экспорт PNG изображения" -#: FlatCAMApp.py:6219 +#: FlatCAMApp.py:6218 msgid "Export PNG cancelled." -msgstr "Экспорт PNG завершён." +msgstr "Экспорт PNG отменён." -#: FlatCAMApp.py:6238 +#: FlatCAMApp.py:6237 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6243 FlatCAMApp.py:6366 +#: FlatCAMApp.py:6242 FlatCAMApp.py:6365 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" +"[ERROR_NOTCL] Ошибка. Только объекты Gerber могут быть сохранены как файлы " +"Gerber..." -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6254 msgid "Save Gerber source file" msgstr "Сохранить исходный файл Gerber" -#: FlatCAMApp.py:6260 +#: FlatCAMApp.py:6259 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Сохранение исходного кода файла Gerber отменено." -#: FlatCAMApp.py:6279 +#: FlatCAMApp.py:6278 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" +"[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите Excellon объект для " +"экспорта." -#: FlatCAMApp.py:6284 FlatCAMApp.py:6325 +#: FlatCAMApp.py:6283 FlatCAMApp.py:6324 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" +"[ERROR_NOTCL] Ошибка. Только объекты Excellon могут быть сохранены как файлы " +"Excellon..." -#: FlatCAMApp.py:6292 FlatCAMApp.py:6296 +#: FlatCAMApp.py:6291 FlatCAMApp.py:6295 msgid "Save Excellon source file" msgstr "Сохранить исходный файл Excellon" -#: FlatCAMApp.py:6301 +#: FlatCAMApp.py:6300 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Сохранение исходного кода файла Excellon отменено." -#: FlatCAMApp.py:6320 +#: FlatCAMApp.py:6319 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" +"[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите Excellon объект для " +"экспорта." -#: FlatCAMApp.py:6333 FlatCAMApp.py:6337 +#: FlatCAMApp.py:6332 FlatCAMApp.py:6336 msgid "Export Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:6342 +#: FlatCAMApp.py:6341 msgid "[WARNING_NOTCL] Export Excellon cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт Excellon отменен." -#: FlatCAMApp.py:6361 +#: FlatCAMApp.py:6360 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6378 +#: FlatCAMApp.py:6373 FlatCAMApp.py:6377 msgid "Export Gerber" msgstr "Экспорт Gerber" -#: FlatCAMApp.py:6383 +#: FlatCAMApp.py:6382 msgid "[WARNING_NOTCL] Export Gerber cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт Gerber отменен." -#: FlatCAMApp.py:6413 +#: FlatCAMApp.py:6412 msgid "[ERROR_NOTCL] Only Geometry objects can be used." -msgstr "" +msgstr "[ERROR_NOTCL] Можно использовать только объекты Geometry." -#: FlatCAMApp.py:6427 FlatCAMApp.py:6431 +#: FlatCAMApp.py:6426 FlatCAMApp.py:6430 msgid "Export DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6436 msgid "[WARNING_NOTCL] Export DXF cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт DXF отменен." -#: FlatCAMApp.py:6457 FlatCAMApp.py:6460 +#: FlatCAMApp.py:6456 FlatCAMApp.py:6459 msgid "Import SVG" msgstr "Импорт SVG" -#: FlatCAMApp.py:6469 +#: FlatCAMApp.py:6468 msgid "[WARNING_NOTCL] Open SVG cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие SVG отменено." -#: FlatCAMApp.py:6488 FlatCAMApp.py:6492 +#: FlatCAMApp.py:6487 FlatCAMApp.py:6491 msgid "Import DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:6501 +#: FlatCAMApp.py:6500 msgid "[WARNING_NOTCL] Open DXF cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие DXF отменено." -#: FlatCAMApp.py:6519 +#: FlatCAMApp.py:6518 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6539 +#: FlatCAMApp.py:6538 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" +"[WARNING_NOTCL] Выберите файл Gerber или Excellon для просмотра исходного " +"кода файла." -#: FlatCAMApp.py:6546 +#: FlatCAMApp.py:6545 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" +"[WARNING_NOTCL] Нет выбранного объекта, для просмотра исходного кода файла." -#: FlatCAMApp.py:6554 +#: FlatCAMApp.py:6553 msgid "Source Editor" msgstr "Редактор исходного кода" -#: FlatCAMApp.py:6564 +#: FlatCAMApp.py:6563 #, python-format msgid "[ERROR]App.on_view_source() -->%s" -msgstr "" +msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6576 FlatCAMApp.py:7718 FlatCAMObj.py:5587 +#: FlatCAMApp.py:6575 FlatCAMApp.py:7717 FlatCAMObj.py:5551 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Редактор кода" -#: FlatCAMApp.py:6588 +#: FlatCAMApp.py:6587 msgid "Script Editor" msgstr "Редактор сценариев" -#: FlatCAMApp.py:6591 +#: FlatCAMApp.py:6590 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -787,216 +808,226 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6614 FlatCAMApp.py:6617 +#: FlatCAMApp.py:6613 FlatCAMApp.py:6616 msgid "Open TCL script" msgstr "Открыть сценарий TCL" -#: FlatCAMApp.py:6625 +#: FlatCAMApp.py:6624 msgid "[WARNING_NOTCL] Open TCL script cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие сценария отменено." -#: FlatCAMApp.py:6637 +#: FlatCAMApp.py:6636 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" -msgstr "" +msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6663 FlatCAMApp.py:6666 +#: FlatCAMApp.py:6662 FlatCAMApp.py:6665 msgid "Run TCL script" msgstr "Запустить сценарий TCL" -#: FlatCAMApp.py:6674 +#: FlatCAMApp.py:6673 msgid "[WARNING_NOTCL] Run TCL script cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Запуск сценария отменен." -#: FlatCAMApp.py:6724 FlatCAMApp.py:6728 +#: FlatCAMApp.py:6723 FlatCAMApp.py:6727 msgid "Save Project As ..." msgstr "Сохранить проект как..." -#: FlatCAMApp.py:6725 +#: FlatCAMApp.py:6724 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6733 +#: FlatCAMApp.py:6732 msgid "[WARNING_NOTCL] Save Project cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Сохранение проекта отменено." -#: FlatCAMApp.py:6777 +#: FlatCAMApp.py:6776 msgid "Exporting SVG" msgstr "Экспортирование SVG" -#: FlatCAMApp.py:6811 FlatCAMApp.py:6917 FlatCAMApp.py:7032 +#: FlatCAMApp.py:6810 FlatCAMApp.py:6916 FlatCAMApp.py:7031 #, python-format msgid "[success] SVG file exported to %s" -msgstr "" +msgstr "[success] Файл SVG экспортируется в %s" -#: FlatCAMApp.py:6842 FlatCAMApp.py:6963 +#: FlatCAMApp.py:6841 FlatCAMApp.py:6962 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" -msgstr "" +msgstr "[WARNING_NOTCL] Нет объекта Box. Используйте взамен %s" -#: FlatCAMApp.py:6920 FlatCAMApp.py:7035 +#: FlatCAMApp.py:6919 FlatCAMApp.py:7034 msgid "Generating Film ... Please wait." msgstr "Создание фильма ... Пожалуйста, подождите." -#: FlatCAMApp.py:7183 +#: FlatCAMApp.py:7182 #, python-format msgid "[success] Excellon file exported to %s" -msgstr "" +msgstr "[success] Файл Excellon экспортируется в %s" -#: FlatCAMApp.py:7190 +#: FlatCAMApp.py:7189 msgid "Exporting Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:7195 FlatCAMApp.py:7202 +#: FlatCAMApp.py:7194 FlatCAMApp.py:7201 msgid "[ERROR_NOTCL] Could not export Excellon file." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Excellon." -#: FlatCAMApp.py:7300 +#: FlatCAMApp.py:7299 #, python-format msgid "[success] Gerber file exported to %s" -msgstr "" +msgstr "[success] Файл Gerber экспортируется в %s" -#: FlatCAMApp.py:7307 +#: FlatCAMApp.py:7306 msgid "Exporting Gerber" msgstr "Экспортирование Gerber" -#: FlatCAMApp.py:7312 FlatCAMApp.py:7319 +#: FlatCAMApp.py:7311 FlatCAMApp.py:7318 msgid "[ERROR_NOTCL] Could not export Gerber file." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Gerber." -#: FlatCAMApp.py:7359 +#: FlatCAMApp.py:7358 #, python-format msgid "[success] DXF file exported to %s" -msgstr "" +msgstr "[success] Файл DXF экспортируется в %s" -#: FlatCAMApp.py:7365 +#: FlatCAMApp.py:7364 msgid "Exporting DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:7370 FlatCAMApp.py:7377 +#: FlatCAMApp.py:7369 FlatCAMApp.py:7376 msgid "[[WARNING_NOTCL]] Could not export DXF file." -msgstr "" +msgstr "[WARNING_NOTCL] Не удалось экспортировать файл DXF." -#: FlatCAMApp.py:7397 FlatCAMApp.py:7439 FlatCAMApp.py:7483 +#: FlatCAMApp.py:7396 FlatCAMApp.py:7438 FlatCAMApp.py:7482 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" +"[ERROR_NOTCL] В качестве параметра выбран не поддерживаемый тип. " +"Поддерживаются только Geometry и Gerber" -#: FlatCAMApp.py:7407 +#: FlatCAMApp.py:7406 msgid "Importing SVG" msgstr "Импортирование SVG" -#: FlatCAMApp.py:7418 FlatCAMApp.py:7460 FlatCAMApp.py:7503 FlatCAMApp.py:7580 -#: FlatCAMApp.py:7641 FlatCAMApp.py:7704 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7417 FlatCAMApp.py:7459 FlatCAMApp.py:7502 FlatCAMApp.py:7579 +#: FlatCAMApp.py:7640 FlatCAMApp.py:7703 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Открыт: %s" -#: FlatCAMApp.py:7449 +#: FlatCAMApp.py:7448 msgid "Importing DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:7491 +#: FlatCAMApp.py:7490 msgid "Importing Image" msgstr "Импорт изображения" -#: FlatCAMApp.py:7532 FlatCAMApp.py:7534 +#: FlatCAMApp.py:7531 FlatCAMApp.py:7533 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть файл: %s" -#: FlatCAMApp.py:7537 +#: FlatCAMApp.py:7536 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось проанализировать файл: {name}. {error}" -#: FlatCAMApp.py:7544 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7543 FlatCAMObj.py:4230 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:7553 +#: FlatCAMApp.py:7552 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" +"[ERROR_NOTCL] Объект не является файлом Gerber или пустым. Прерывание " +"создания объекта." -#: FlatCAMApp.py:7561 +#: FlatCAMApp.py:7560 msgid "Opening Gerber" msgstr "Открытие Gerber" -#: FlatCAMApp.py:7571 +#: FlatCAMApp.py:7570 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -msgstr "" +msgstr "[ERROR_NOTCL] Открыть Gerber не удалось. Вероятно это не Gerber файл." -#: FlatCAMApp.py:7604 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7603 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." -msgstr "" +msgstr "[ERROR_NOTCL] Это не Excellon файл." -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7606 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удается открыть файл: %s" -#: FlatCAMApp.py:7612 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7611 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" +"[ERROR_NOTCL] Произошла внутренняя ошибка. Смотрите коммандную строку.\n" -#: FlatCAMApp.py:7625 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7624 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Геометрия не найдена в файле: %s" -#: FlatCAMApp.py:7628 +#: FlatCAMApp.py:7627 msgid "Opening Excellon." msgstr "Открытие Excellon." -#: FlatCAMApp.py:7634 +#: FlatCAMApp.py:7633 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" +"[ERROR_NOTCL] Не удалось открыть файл Excellon. Вероятно это не файл " +"Excellon." -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7670 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть %s" -#: FlatCAMApp.py:7681 +#: FlatCAMApp.py:7680 msgid "[ERROR_NOTCL] This is not GCODE" -msgstr "" +msgstr "[ERROR_NOTCL] Это не GCODE" -#: FlatCAMApp.py:7687 +#: FlatCAMApp.py:7686 msgid "Opening G-Code." msgstr "Открытие G-Code." -#: FlatCAMApp.py:7695 +#: FlatCAMApp.py:7694 msgid "" "[ERROR_NOTCL] Failed to create CNCJob Object. Probable not a GCode file.\n" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" msgstr "" +"[ERROR_NOTCL] Не удалось создать объект CNCJob. Вероятно это не файл GCode.\n" +" Попытка создать объект Flatcam CNCJob из файла G-кода не удалась во время " +"обработки" -#: FlatCAMApp.py:7735 +#: FlatCAMApp.py:7734 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть файл конфигурации: %s" -#: FlatCAMApp.py:7761 FlatCAMApp.py:7778 +#: FlatCAMApp.py:7760 FlatCAMApp.py:7777 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть файл проекта: %s" -#: FlatCAMApp.py:7801 +#: FlatCAMApp.py:7800 #, python-format msgid "[success] Project loaded from: %s" -msgstr "" +msgstr "[success] Проект загружен из: %s" -#: FlatCAMApp.py:7906 +#: FlatCAMApp.py:7905 msgid "Available commands:\n" msgstr "Доступные команды:\n" -#: FlatCAMApp.py:7908 +#: FlatCAMApp.py:7907 msgid "" "\n" "\n" @@ -1008,27 +1039,27 @@ msgstr "" "Для дополнительной информации ведите help <имя_команды> .\n" "Пример: help open_gerber" -#: FlatCAMApp.py:8058 +#: FlatCAMApp.py:8057 msgid "Shows list of commands." msgstr "Показывает список команд." -#: FlatCAMApp.py:8115 +#: FlatCAMApp.py:8114 msgid "[ERROR_NOTCL] Failed to load recent item list." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось загрузить список недавних файлов." -#: FlatCAMApp.py:8122 +#: FlatCAMApp.py:8121 msgid "[ERROR_NOTCL] Failed to parse recent item list." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось прочитать список недавних файлов." -#: FlatCAMApp.py:8166 +#: FlatCAMApp.py:8165 msgid "Clear Recent files" msgstr "Очистить список" -#: FlatCAMApp.py:8183 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8182 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Список сочетаний клавиш" -#: FlatCAMApp.py:8190 +#: FlatCAMApp.py:8189 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1077,24 +1108,71 @@ msgid "" "\n" " " msgstr "" +"\n" +"

Вкладка \"Выбранное\" - выбранный " +"элемент на вкладке \"Проект\"

\n" +"\n" +"

Детали:
\n" +"Нормальный порядок при работе в FlatCAM заключается в следующем:

\n" +"\n" +"
    \n" +"\t
  1. Загрузите/импортируйте файл Gerber, " +"Excellon, Gcode, DXF, растровое изображение или SVG в FlatCAM, используя " +"меню, панели инструментов, сочетания клавиш или просто перетаскивая файлы в " +"окно программы.
    \n" +"\t
    \n" +"\tВы также можете загрузить FlatCAM проект дважды щелкнув " +"файл проекта, перетащив его в окно программы или через ссылки меню/панелей " +"инструментов, предлагаемых в приложении.

    \n" +"\t 
  2. \n" +"\t
  3. После того, как объект стал доступен на " +"вкладке \"Проект\", выберите его, а затем сосредоточьте внимание на " +"вкладке \"Выбранное\" (еще проще-дважды щелкнуть мышью на " +"имени объекта на вкладке \"Проект\" ), во вкладке \"Выбранное\" будут обновлены свойства объекта в соответствии с его видом: Gerber, " +"Excellon, Geometry или объект CNCJob.
    \n" +"\t
    \n" +"\tЕсли выбор объекта выполняется на холсте одним щелчком мыши, а " +"вкладка \"Выбранное\"находится в фокусе, свойства объекта " +"снова будут отображаться на вкладке \"Выбранное\". Кроме того, двойной " +"щелчок по объекту на холсте откроет вкладку \"Выбранное\" и " +"заполнит ее, даже если она была не в фокусе.
    \n" +"\t
    \n" +"\tВы можете изменить параметры на этом экране, и порядок будет таким:
    \n" +"\t
    \n" +"\tGerber/Excellon Object -> Change Param -> Generate " +"Geometry -> Geometry Object -> Add tools (change " +"param in Selected Tab) -> Generate CNCJob -> CNCJob Object -> Verify GCode (through Edit CNC Code) and/or append/prepend to " +"GCode (again, done in SELECTED TAB) -> Save GCode
  4. \n" +"
\n" +"\n" +"

Список сочетаний клавиш доступен через " +"пункт меню Помощь -> Список быстрых клавиш или " +"через клавишу: F3.

\n" +"\n" +" " -#: FlatCAMApp.py:8294 +#: FlatCAMApp.py:8293 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" +"[WARNING_NOTCL] Не удалось проверить обновление программы. Отсутствует " +"интернет подключение ." -#: FlatCAMApp.py:8301 +#: FlatCAMApp.py:8300 msgid "[ERROR_NOTCL] Could not parse information about latest version." -msgstr "" +msgstr "[ERROR_NOTCL] Не удается обработать информацию о последней версии." -#: FlatCAMApp.py:8311 +#: FlatCAMApp.py:8310 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM в актуальном состоянии!" -#: FlatCAMApp.py:8316 +#: FlatCAMApp.py:8315 msgid "Newer Version Available" msgstr "Доступна новая версия" -#: FlatCAMApp.py:8317 +#: FlatCAMApp.py:8316 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1102,79 +1180,85 @@ msgstr "" "Новая версия FlatCAM доступна для загрузки:\n" "\n" -#: FlatCAMApp.py:8319 +#: FlatCAMApp.py:8318 msgid "info" msgstr "инфо" -#: FlatCAMApp.py:8338 +#: FlatCAMApp.py:8337 msgid "[success] All plots disabled." -msgstr "" +msgstr "[success] Все участки отключены." -#: FlatCAMApp.py:8344 +#: FlatCAMApp.py:8343 msgid "[success] All non selected plots disabled." -msgstr "" +msgstr "[success] Все невыбранные участки отключены.." -#: FlatCAMApp.py:8350 +#: FlatCAMApp.py:8349 msgid "[success] All plots enabled." -msgstr "" +msgstr "[success] Все участки включены." -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8355 msgid "[success] Selected plots enabled..." -msgstr "" +msgstr "[success] Выбранные участки включены..." -#: FlatCAMApp.py:8364 +#: FlatCAMApp.py:8363 msgid "[success] Selected plots disabled..." -msgstr "" +msgstr "[success] Выбранные участки отключены..." -#: FlatCAMApp.py:8374 FlatCAMApp.py:8387 +#: FlatCAMApp.py:8373 FlatCAMApp.py:8386 msgid "Working ..." msgstr "Обработка…" -#: FlatCAMApp.py:8421 +#: FlatCAMApp.py:8420 msgid "Saving FlatCAM Project" msgstr "Сохранение проекта FlatCAM" -#: FlatCAMApp.py:8442 FlatCAMApp.py:8473 +#: FlatCAMApp.py:8441 FlatCAMApp.py:8472 #, python-format msgid "[success] Project saved to: %s" -msgstr "" +msgstr "[success] Проект сохранён в: %s" -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8459 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" +"[ERROR_NOTCL] Не удалось проверить файл проекта: %s. Повторите попытку " +"сохранения." -#: FlatCAMApp.py:8467 +#: FlatCAMApp.py:8466 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" +"[ERROR_NOTCL] Не удалось проанализировать сохраняемый файл проекта: %s. " +"Повторите попытку сохранения." -#: FlatCAMApp.py:8475 +#: FlatCAMApp.py:8474 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" +"[ERROR_NOTCL] Не удалось сохранить файл проекта: %s. Повторите попытку " +"сохранения." #: FlatCAMObj.py:202 #, python-brace-format msgid "[success] Name changed from {old} to {new}" -msgstr "" +msgstr "[success] Имя изменено с {old} на {new}" -#: FlatCAMObj.py:546 FlatCAMObj.py:2031 FlatCAMObj.py:3311 FlatCAMObj.py:5484 +#: FlatCAMObj.py:545 FlatCAMObj.py:2031 FlatCAMObj.py:3275 FlatCAMObj.py:5448 msgid "Basic" msgstr "Базовый" -#: FlatCAMObj.py:558 FlatCAMObj.py:2047 FlatCAMObj.py:3333 FlatCAMObj.py:5490 +#: FlatCAMObj.py:557 FlatCAMObj.py:2047 FlatCAMObj.py:3297 FlatCAMObj.py:5454 msgid "Advanced" msgstr "Расширенный" -#: FlatCAMObj.py:921 FlatCAMObj.py:976 +#: FlatCAMObj.py:920 FlatCAMObj.py:975 #, python-format msgid "[success] Isolation geometry created: %s" -msgstr "" +msgstr "[success] Создана геометрия изоляции: %s" -#: FlatCAMObj.py:1155 +#: FlatCAMObj.py:1154 msgid "Plotting Apertures" -msgstr "" +msgstr "Создание отверстия" #: FlatCAMObj.py:1870 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" @@ -1182,11 +1266,11 @@ msgstr "Всего отверстий" #: FlatCAMObj.py:1896 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" -msgstr "Всего ячеек" +msgstr "Всего пазов" -#: FlatCAMObj.py:2103 FlatCAMObj.py:3384 FlatCAMObj.py:3682 FlatCAMObj.py:3869 -#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 -#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2103 FlatCAMObj.py:3348 FlatCAMObj.py:3646 FlatCAMObj.py:3833 +#: FlatCAMObj.py:3846 FlatCAMObj.py:3963 FlatCAMObj.py:4380 FlatCAMObj.py:4618 +#: FlatCAMObj.py:5031 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1203,17 +1287,19 @@ msgstr "Всего ячеек" #: flatcamTools/ToolPanelize.py:435 flatcamTools/ToolPanelize.py:446 #: flatcamTools/ToolSolderPaste.py:756 flatcamTools/ToolSolderPaste.py:827 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." -msgstr "" +msgstr "[ERROR_NOTCL] Неправильно введен формат значения, используйте числа." #: FlatCAMObj.py:2327 FlatCAMObj.py:2418 FlatCAMObj.py:2540 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" +"[ERROR_NOTCL] Пожалуйста, выберите один или несколько инструментов из списка " +"и попробуйте еще раз." #: FlatCAMObj.py:2334 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." -msgstr "" +msgstr "[ERROR_NOTCL] Сверло больше, чем размер отверстия. Отмена." #: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 msgid "Tool_nr" @@ -1229,191 +1315,221 @@ msgstr "Диаметр" #: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 msgid "Drills_Nr" -msgstr "№ сверла" +msgstr "№ отверстия" #: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 msgid "Slots_Nr" -msgstr "№ ячейки" +msgstr "№ паза" #: FlatCAMObj.py:2428 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" +"[ERROR_NOTCL] Инструмент для прорезания пазов больше, чем размер отверстия. " +"Отмена." -#: FlatCAMObj.py:2602 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 +#: FlatCAMObj.py:2602 FlatCAMObj.py:4268 FlatCAMObj.py:4484 FlatCAMObj.py:4801 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" msgstr "" +"[ERROR_NOTCL] Неправильный формат значения для self.defaults[\"z_pdepth\"] " +"или self.options[\"z_pdepth\"]" -#: FlatCAMObj.py:2614 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 +#: FlatCAMObj.py:2614 FlatCAMObj.py:4280 FlatCAMObj.py:4496 FlatCAMObj.py:4813 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" msgstr "" +"[ERROR_NOTCL] Неправильный формат значения для self.defaults[\"feedrate_probe" +"\"] или self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2646 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 +#: FlatCAMObj.py:2646 FlatCAMObj.py:4689 FlatCAMObj.py:4694 FlatCAMObj.py:4844 msgid "Generating CNC Code" msgstr "Генерация кода ЧПУ" -#: FlatCAMObj.py:2672 FlatCAMObj.py:5026 camlib.py:5151 camlib.py:5610 -#: camlib.py:5873 +#: FlatCAMObj.py:2672 FlatCAMObj.py:4990 camlib.py:5164 camlib.py:5623 +#: camlib.py:5886 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" "but now there is only one value, not two. " msgstr "" +"[ERROR] Поле X, Y смены инструмента в Правка - > Параметры должно быть в " +"формате (x, y)\n" +"но теперь есть только одно значение, а не два. " -#: FlatCAMObj.py:3020 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 +#: FlatCAMObj.py:2984 FlatCAMObj.py:3889 FlatCAMObj.py:3890 FlatCAMObj.py:3899 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:3020 FlatCAMObj.py:3269 FlatCAMObj.py:3549 +#: FlatCAMObj.py:2984 FlatCAMObj.py:3233 FlatCAMObj.py:3513 msgid "Rough" msgstr "Грубый" -#: FlatCAMObj.py:3020 +#: FlatCAMObj.py:2984 msgid "Finish" msgstr "Конец" -#: FlatCAMObj.py:3304 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3268 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Копировать" -#: FlatCAMObj.py:3519 +#: FlatCAMObj.py:3483 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" +"[ERROR_NOTCL] Пожалуйста, введите нужный диаметр инструмента в формате числа " +"с плавающей точкой." -#: FlatCAMObj.py:3592 +#: FlatCAMObj.py:3556 msgid "[success] Tool added in Tool Table." -msgstr "" +msgstr "[success] Инструмент добавлен в таблицу инструментов." -#: FlatCAMObj.py:3597 +#: FlatCAMObj.py:3561 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" +"[ERROR_NOTCL] Добавлен инструмент по умолчанию. Введен неправильный формат " +"значения." -#: FlatCAMObj.py:3627 FlatCAMObj.py:3637 +#: FlatCAMObj.py:3591 FlatCAMObj.py:3601 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." -msgstr "" +msgstr "[WARNING_NOTCL] Ошибка. Выберите инструмент для копирования." -#: FlatCAMObj.py:3666 +#: FlatCAMObj.py:3630 msgid "[success] Tool was copied in Tool Table." -msgstr "" +msgstr "[success] Инструмент скопирован в таблицу инструментов." -#: FlatCAMObj.py:3699 +#: FlatCAMObj.py:3663 msgid "[success] Tool was edited in Tool Table." -msgstr "" +msgstr "[success] Инструмент был изменён в таблице инструментов." -#: FlatCAMObj.py:3730 FlatCAMObj.py:3740 +#: FlatCAMObj.py:3694 FlatCAMObj.py:3704 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." -msgstr "" +msgstr "[WARNING_NOTCL] Ошибка. Выберите инструмент для удаления." -#: FlatCAMObj.py:3764 +#: FlatCAMObj.py:3728 msgid "[success] Tool was deleted in Tool Table." -msgstr "" +msgstr "[success] Инструмент был удален из таблицы инструментов." -#: FlatCAMObj.py:4185 +#: FlatCAMObj.py:4149 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" +"[WARNING_NOTCL] Эта Geometry не может быть обработана, так как это %s " +"геометрия." -#: FlatCAMObj.py:4202 +#: FlatCAMObj.py:4166 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат ввода диаметра инструмента, используйте цифры." -#: FlatCAMObj.py:4229 +#: FlatCAMObj.py:4193 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." -msgstr "" +msgstr "[ERROR_NOTCL] Ошибка. Инструмент не выбран в таблице инструментов ..." -#: FlatCAMObj.py:4267 +#: FlatCAMObj.py:4231 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -msgstr "" +msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 +#: FlatCAMObj.py:4389 FlatCAMObj.py:4627 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." msgstr "" +"[WARNING] Смещение выбранного в таблице инструментов инструмента не " +"указано.\n" +"Добавьте смещение инструмента или измените тип смещения." -#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4508 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -msgstr "" +msgstr "[ERROR_NOTCL] Отмена. Пустой файл, он не имеет геометрии..." -#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3335 camlib.py:3344 +#: FlatCAMObj.py:4877 FlatCAMObj.py:4887 camlib.py:3347 camlib.py:3356 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" +"[ERROR_NOTCL] Коэффициент масштабирования должен быть числом: целочисленным " +"или с плавающей запятой." -#: FlatCAMObj.py:4961 +#: FlatCAMObj.py:4925 msgid "[success] Geometry Scale done." -msgstr "" +msgstr "[success] Масштабирование Geometry выполнено." -#: FlatCAMObj.py:4978 camlib.py:3414 +#: FlatCAMObj.py:4942 camlib.py:3425 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" +"[ERROR_NOTCL] Необходима пара значений (x,y). Возможно, вы ввели только одно " +"значение в поле \"Смещение\"." -#: FlatCAMObj.py:4998 +#: FlatCAMObj.py:4962 msgid "[success] Geometry Offset done." -msgstr "" +msgstr "[success] Смещение Geometry выполнено." -#: FlatCAMObj.py:5552 FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5516 FlatCAMObj.py:5521 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Экспорт GCode ..." -#: FlatCAMObj.py:5563 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5527 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт GCode отменен ..." -#: FlatCAMObj.py:5576 +#: FlatCAMObj.py:5540 #, python-format msgid "[success] Machine Code file saved to: %s" -msgstr "" +msgstr "[success] Файл GCode сохранён в: %s" -#: FlatCAMObj.py:5598 +#: FlatCAMObj.py:5562 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -msgstr "" +msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5715 +#: FlatCAMObj.py:5679 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." msgstr "" +"[WARNING_NOTCL] CNCJob объект %s не может быть обработан, так как он " +"является объектом CNCJob." -#: FlatCAMObj.py:5768 +#: FlatCAMObj.py:5732 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" -msgstr "" +msgstr "[ERROR_NOTCL] G-code не имеет кода единиц измерения: G20 или G21" -#: FlatCAMObj.py:5781 +#: FlatCAMObj.py:5745 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." msgstr "" +"[ERROR_NOTCL] Отмена. Пользовательский код смены инструмента включен, но он " +"пуст." -#: FlatCAMObj.py:5788 +#: FlatCAMObj.py:5752 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" +"[success] G-code смены инструмента был заменен на пользовательский код." -#: FlatCAMObj.py:5803 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5767 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" -msgstr "" +msgstr "[WARNING_NOTCL] Нет такого файла или каталога" -#: FlatCAMObj.py:5823 FlatCAMObj.py:5835 +#: FlatCAMObj.py:5787 FlatCAMObj.py:5799 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" msgstr "" +"[WARNING_NOTCL] Используемый файл постпроцессора должен иметь имя: " +"'toolchange_custom'" -#: FlatCAMObj.py:5841 +#: FlatCAMObj.py:5805 msgid "[ERROR] There is no postprocessor file." -msgstr "" +msgstr "[ERROR] Это не файл постпроцессора." #: ObjectCollection.py:420 #, python-brace-format @@ -1423,85 +1539,90 @@ msgstr "Объект переименован из {old} в {new}" #: ObjectCollection.py:759 #, python-format msgid "[ERROR] Cause of error: %s" -msgstr "" +msgstr "[ERROR] Причина ошибки: %s" -#: camlib.py:198 +#: camlib.py:197 msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "" +"[ERROR_NOTCL] self.solid_geometry не является базовой геометрией или списком." -#: camlib.py:1381 +#: camlib.py:1391 msgid "[success] Object was mirrored ..." -msgstr "" +msgstr "[success] Объект был отзеркалирован ..." -#: camlib.py:1383 +#: camlib.py:1393 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось зеркалировать. Объект не выбран" -#: camlib.py:1419 +#: camlib.py:1429 msgid "[success] Object was rotated ..." -msgstr "" +msgstr "[success] Объект был повернут ..." -#: camlib.py:1421 +#: camlib.py:1431 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось повернуть. Объект не выбран" -#: camlib.py:1455 +#: camlib.py:1465 msgid "[success] Object was skewed ..." -msgstr "" +msgstr "[success] Объект был наклонён ..." -#: camlib.py:1457 +#: camlib.py:1467 msgid "[ERROR_NOTCL] Failed to skew. No object selected" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось наклонить. Объект не выбран" -#: camlib.py:2717 camlib.py:2802 +#: camlib.py:2727 camlib.py:2812 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" -msgstr "" +msgstr "[WARNING] Координаты отсутствуют, строка игнорируется: %s" -#: camlib.py:2718 camlib.py:2803 +#: camlib.py:2728 camlib.py:2813 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" -msgstr "" +msgstr "[WARNING_NOTCL] Файл GERBER может быть поврежден. Проверьте файл !!!" -#: camlib.py:2767 +#: camlib.py:2777 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " "are parser errors. Line number: %s" msgstr "" +"[ERROR] Региону не хватает точек. Файл будет обработан, но есть ошибки " +"разбора. Номер строки: %s" -#: camlib.py:3159 +#: camlib.py:3169 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" "%s:" msgstr "" +"[ERROR]Ошибка разбора Gerber.\n" +"%s:" -#: camlib.py:3381 +#: camlib.py:3393 msgid "[success] Gerber Scale done." -msgstr "" +msgstr "[success] Масштабирование Gerber выполнено." -#: camlib.py:3447 +#: camlib.py:3458 msgid "[success] Gerber Offset done." -msgstr "" +msgstr "[success] Смещение Gerber выполнено." -#: camlib.py:3501 +#: camlib.py:3512 msgid "[success] Gerber Mirror done." -msgstr "" +msgstr "[success] Зеркалирование Gerber выполнено." -#: camlib.py:3547 +#: camlib.py:3558 msgid "[success] Gerber Skew done." -msgstr "" +msgstr "[success] Наклон Gerber выполнен." -#: camlib.py:3585 +#: camlib.py:3596 msgid "[success] Gerber Rotate done." -msgstr "" +msgstr "[success] Вращение Gerber выполнено." -#: camlib.py:3864 +#: camlib.py:3875 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Это метка GCODE: %s" -#: camlib.py:3979 +#: camlib.py:3990 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1511,27 +1632,38 @@ msgid "" "The user needs to edit the resulting Excellon object and change the " "diameters to reflect the real diameters." msgstr "" +"[WARNING] Нет информации о диаметре инструмента. Смотрите коммандную строку\n" +"Событие изменения инструмента: T%s было найдено, но в файле Excellon нет " +"информации о диаметрах инструмента, поэтому приложение попытается загрузить " +"его с помощью некоторых \"поддельных\" диаметров.\n" +"Пользователю необходимо отредактировать полученный объект Excellon и " +"изменить диаметры, чтобы отразить реальные диаметры." -#: camlib.py:4444 +#: camlib.py:4455 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" "Parsing Failed. Line {l_nr}: {line}\n" msgstr "" +"[ERROR] Ошибка разбора Excellon.\n" +"Ошибка разбора. Строка {l_nr}: {line}\n" -#: camlib.py:4521 +#: camlib.py:4534 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" "Check the resulting GCode." msgstr "" +"[WARNING] Excellon.create_geometry() ->расположение отверстия было пропущено " +"из-за отсутствия связанного инструмента.\n" +"Проверьте полученный GCode." -#: camlib.py:5060 +#: camlib.py:5073 #, python-format msgid "[ERROR] There is no such parameter: %s" -msgstr "" +msgstr "[ERROR] Такого параметра нет: %s" -#: camlib.py:5130 +#: camlib.py:5143 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1539,28 +1671,37 @@ msgid "" "therefore the app will convert the value to negative. Check the resulting " "CNC code (Gcode etc)." msgstr "" +"[WARNING] Параметр \"Глубина резания\" имеет положительное значение. " +"Значение глубины, которую нужно просверлить в материале.\n" +"Параметр \"Глубина резания\" должен иметь отрицательное значение, " +"предполагая, что это опечатка, приложение преобразует значение в " +"отрицательное. Проверьте полученный CNC code (Gcode и т. д.)." -#: camlib.py:5137 camlib.py:5633 camlib.py:5896 +#: camlib.py:5150 camlib.py:5646 camlib.py:5909 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" +"[WARNING] Параметр \"Глубина резания\" равен нулю. Обрезки не будет , " +"пропускается файл %s " -#: camlib.py:5366 camlib.py:5463 camlib.py:5521 +#: camlib.py:5379 camlib.py:5476 camlib.py:5534 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." -msgstr "" +msgstr "[ERROR_NOTCL] загруженный файл Excellon не имеет отверстий ..." -#: camlib.py:5468 +#: camlib.py:5481 msgid "[ERROR_NOTCL] Wrong optimization type selected." -msgstr "" +msgstr "[ERROR_NOTCL] Выбран неправильный тип оптимизации." -#: camlib.py:5621 camlib.py:5884 +#: camlib.py:5634 camlib.py:5897 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." msgstr "" +"[ERROR_NOTCL] Параметр \"Глубина резания\" равен None или пуст. Скорее всего " +"неудачное сочетание других параметров." -#: camlib.py:5626 camlib.py:5889 +#: camlib.py:5639 camlib.py:5902 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1568,12 +1709,17 @@ msgid "" "therefore the app will convert the value to negative.Check the resulting CNC " "code (Gcode etc)." msgstr "" +"[WARNING] Параметр \"Глубина резания\" имеет положительное значение. " +"Значение глубины, которую нужно просверлить в материале.\n" +"Параметр \"Глубина резания\" должен иметь отрицательное значение, " +"предполагая, что это опечатка, приложение преобразует значение в " +"отрицательное. Проверьте полученный CNC code (Gcode и т. д.)." -#: camlib.py:5638 camlib.py:5901 +#: camlib.py:5651 camlib.py:5914 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." -msgstr "" +msgstr "[ERROR_NOTCL] Параметр \"Отвод по Z\" равен None или пуст." -#: camlib.py:5642 camlib.py:5905 +#: camlib.py:5655 camlib.py:5918 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1581,34 +1727,45 @@ msgid "" "therefore the app will convert the value to positive.Check the resulting CNC " "code (Gcode etc)." msgstr "" +"[WARNING] Параметр \"Отвод по Z\" имеет отрицательное значение. Это значение " +"высоты для перемещения между разрезами.\n" +"Параметр \"Отвод по Z\" должен иметь положительное значение. Предполагая, " +"что это опечатка, приложение преобразует значение в положительное. Проверьте " +"полученный CNC code (Gcode и т. д.)." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5662 camlib.py:5925 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" msgstr "" +"[WARNING] Параметр \"Отвод по Z\" равен нулю. Это опасно, пропускается файл " +"%s" -#: camlib.py:5779 +#: camlib.py:5792 #, python-format msgid "[ERROR]Expected a Geometry, got %s" -msgstr "" +msgstr "[ERROR]Ожидалась Geometry, получили %s" -#: camlib.py:5785 +#: camlib.py:5798 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." msgstr "" +"[ERROR_NOTCL] Попытка создать CNC Job из объекта Geometry без solid_geometry." -#: camlib.py:5824 +#: camlib.py:5837 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" "Raise the value (in module) and try again." msgstr "" +"[ERROR_NOTCL] Значение смещения инструмента слишком отрицательно для " +"current_geometry.\n" +"Увеличте значение (в модуле) и повторите попытку." -#: camlib.py:6036 +#: camlib.py:6049 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." -msgstr "" +msgstr "[ERROR_NOTCL] В геометрии SolderPaste нет данных инструмента." #: flatcamEditors/FlatCAMExcEditor.py:37 flatcamEditors/FlatCAMExcEditor.py:143 #: flatcamEditors/FlatCAMGrbEditor.py:229 @@ -1618,7 +1775,7 @@ msgstr "Нажмите для размещения ..." #: flatcamEditors/FlatCAMExcEditor.py:46 msgid "[WARNING_NOTCL] To add a drill first select a tool" -msgstr "" +msgstr "[WARNING_NOTCL] Чтобы добавить отверстие, сначала выберите инструмент" #: flatcamEditors/FlatCAMExcEditor.py:62 flatcamEditors/FlatCAMExcEditor.py:165 #: flatcamEditors/FlatCAMExcEditor.py:450 @@ -1636,10 +1793,12 @@ msgstr "[success] Готово. Сверло добавлено." #: flatcamEditors/FlatCAMExcEditor.py:150 msgid "[WARNING_NOTCL] To add an Drill Array first select a tool in Tool Table" msgstr "" +"[WARNING_NOTCL] Чтобы добавить массив отверстий, сначала выберите инструмент " +"в таблице инструментов" #: flatcamEditors/FlatCAMExcEditor.py:182 msgid "Click on the Drill Circular Array Start position" -msgstr "" +msgstr "Нажмите на начальную позицию кругового массива отверстий" #: flatcamEditors/FlatCAMExcEditor.py:204 #: flatcamEditors/FlatCAMGrbEditor.py:494 @@ -1647,19 +1806,22 @@ msgid "" "[ERROR_NOTCL] The value is not Float. Check for comma instead of dot " "separator." msgstr "" +"[ERROR_NOTCL] Это не значение с плавающей точкой. Проверьте наличие запятой " +"в качестве разделителя." #: flatcamEditors/FlatCAMExcEditor.py:207 #, python-format msgid "[ERROR_NOTCL] The value is mistyped. Check the value. %s" -msgstr "" +msgstr "[ERROR_NOTCL] Значение введено с ошибкой. Проверьте значение. %s" #: flatcamEditors/FlatCAMExcEditor.py:305 msgid "[WARNING_NOTCL] Too many drills for the selected spacing angle." msgstr "" +"[WARNING_NOTCL] Слишком много отверстий для выбранного интервала угла ." #: flatcamEditors/FlatCAMExcEditor.py:322 msgid "[success] Done. Drill Array added." -msgstr "" +msgstr "[success] Готово. Массив отверстий добавлен." #: flatcamEditors/FlatCAMExcEditor.py:333 msgid "Click on the Drill(s) to resize ..." @@ -1669,14 +1831,16 @@ msgstr "Нажмите на сверло для изменения размер msgid "" "[ERROR_NOTCL] Resize drill(s) failed. Please enter a diameter for resize." msgstr "" +"[ERROR_NOTCL] Не удалось изменить размер отверстий. Пожалуйста введите " +"диаметр для изменения размера." #: flatcamEditors/FlatCAMExcEditor.py:424 msgid "[success] Done. Drill Resize completed." -msgstr "" +msgstr "[success] Готово. Изменение размера отверстий выполнено." #: flatcamEditors/FlatCAMExcEditor.py:427 msgid "[WARNING_NOTCL] Cancelled. No drills selected for resize ..." -msgstr "" +msgstr "[WARNING_NOTCL] Отмена. Не выбраны отверстия для изменения размера..." #: flatcamEditors/FlatCAMExcEditor.py:452 #: flatcamEditors/FlatCAMGrbEditor.py:1778 @@ -1685,11 +1849,11 @@ msgstr "Кликните на конечную точку ..." #: flatcamEditors/FlatCAMExcEditor.py:507 msgid "[success] Done. Drill(s) Move completed." -msgstr "" +msgstr "[success] Готово. Перемещение отверстий завершено." #: flatcamEditors/FlatCAMExcEditor.py:592 msgid "[success] Done. Drill(s) copied." -msgstr "" +msgstr "[success] Готово. Отверстия скопированы." #: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5026 msgid "Excellon Editor" @@ -1889,26 +2053,30 @@ msgid "" "[WARNING_NOTCL] Tool already in the original or actual tool list.\n" "Save and reedit Excellon if you need to add this tool. " msgstr "" +"[WARNING_NOTCL] Инструмент уже есть в исходном или фактическом списке " +"инструментов.\n" +"Сохраните и повторно отредактируйте Excellon, если вам нужно добавить этот " +"инструмент." #: flatcamEditors/FlatCAMExcEditor.py:1496 flatcamGUI/FlatCAMGUI.py:2997 #, python-brace-format msgid "[success] Added new tool with dia: {dia} {units}" -msgstr "" +msgstr "[success] Добавлен новый инструмент с диаметром: {dia} {units}" #: flatcamEditors/FlatCAMExcEditor.py:1528 msgid "[WARNING_NOTCL] Select a tool in Tool Table" -msgstr "" +msgstr "[WARNING_NOTCL] Выберите инструмент в таблице инструментов" #: flatcamEditors/FlatCAMExcEditor.py:1560 #, python-brace-format msgid "[success] Deleted tool with dia: {del_dia} {units}" -msgstr "" +msgstr "[success] Удален инструмент с диаметром: {del_dia} {units}" #: flatcamEditors/FlatCAMExcEditor.py:2074 msgid "" "[ERROR_NOTCL] There are no Tools definitions in the file. Aborting Excellon " "creation." -msgstr "" +msgstr "[ERROR_NOTCL] В файле нет инструментов. Прерывание создания Excellon." #: flatcamEditors/FlatCAMExcEditor.py:2083 msgid "Creating Excellon." @@ -1916,15 +2084,15 @@ msgstr "Создание Excellon." #: flatcamEditors/FlatCAMExcEditor.py:2092 msgid "[success] Excellon editing finished." -msgstr "" +msgstr "[success] Редактирование Excellon завершено." #: flatcamEditors/FlatCAMExcEditor.py:2109 msgid "[WARNING_NOTCL] Cancelled. There is no Tool/Drill selected" -msgstr "" +msgstr "[WARNING_NOTCL] Отмена. Инструмент/сверло не выбрано" #: flatcamEditors/FlatCAMExcEditor.py:2637 msgid "[success] Done. Drill(s) deleted." -msgstr "" +msgstr "[success] Готово. Отверстия удалены." #: flatcamEditors/FlatCAMExcEditor.py:2705 #: flatcamEditors/FlatCAMGrbEditor.py:4340 @@ -1934,12 +2102,12 @@ msgstr "Нажмите на центральную позицию кругово #: flatcamEditors/FlatCAMGeoEditor.py:80 #: flatcamEditors/FlatCAMGrbEditor.py:2416 msgid "Buffer distance:" -msgstr "Буферное расстояние:" +msgstr "Расстояние буфера:" #: flatcamEditors/FlatCAMGeoEditor.py:81 #: flatcamEditors/FlatCAMGrbEditor.py:2417 msgid "Buffer corner:" -msgstr "" +msgstr "Угол буфера:" #: flatcamEditors/FlatCAMGeoEditor.py:83 msgid "" @@ -1971,20 +2139,20 @@ msgstr "Скошенный" #: flatcamEditors/FlatCAMGeoEditor.py:98 msgid "Buffer Interior" -msgstr "" +msgstr "Буфер внутри" #: flatcamEditors/FlatCAMGeoEditor.py:100 msgid "Buffer Exterior" -msgstr "" +msgstr "Буфер снаружи" #: flatcamEditors/FlatCAMGeoEditor.py:106 msgid "Full Buffer" -msgstr "" +msgstr "Полный буфер" #: flatcamEditors/FlatCAMGeoEditor.py:127 #: flatcamEditors/FlatCAMGeoEditor.py:2682 msgid "Buffer Tool" -msgstr "" +msgstr "Буфер" #: flatcamEditors/FlatCAMGeoEditor.py:138 #: flatcamEditors/FlatCAMGeoEditor.py:155 @@ -1997,6 +2165,8 @@ msgid "" "[WARNING_NOTCL] Buffer distance value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение расстояния буфера или оно имеет " +"неправильный формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:343 msgid "Text Tool" @@ -2126,7 +2296,7 @@ msgstr "Рисование" #: flatcamEditors/FlatCAMGeoEditor.py:563 msgid "[WARNING_NOTCL] Paint cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Рисование отменено. Фугура не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:574 flatcamTools/ToolCutOut.py:355 #: flatcamTools/ToolCutOut.py:518 flatcamTools/ToolCutOut.py:657 @@ -2135,17 +2305,23 @@ msgid "" "[WARNING_NOTCL] Tool diameter value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение диаметра инструмента или оно имеет " +"неправильный формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:585 msgid "" "[WARNING_NOTCL] Overlap value is missing or wrong format. Add it and retry." msgstr "" +"[WARNING_NOTCL] Значение перекрытия отсутствует или оно имеет неправильный " +"формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:597 msgid "" "[WARNING_NOTCL] Margin distance value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Значение отступа отсутствует или оно имеет неправильный " +"формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:606 #: flatcamEditors/FlatCAMGeoEditor.py:2707 @@ -2343,6 +2519,10 @@ msgid "" "and the center of the biggest bounding box\n" "of the selected shapes when unchecked." msgstr "" +"Масштаб выбранной фигуры(фигур)\n" +"использует точку начала координат, если флажок включен,\n" +"и центр самой большой ограничительной рамки\n" +"выбранных фигур, если флажок снят." #: flatcamEditors/FlatCAMGeoEditor.py:835 #: flatcamEditors/FlatCAMGrbEditor.py:4751 flatcamTools/ToolTransform.py:238 @@ -2467,47 +2647,62 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1054 #: flatcamEditors/FlatCAMGrbEditor.py:4980 msgid "[WARNING_NOTCL] Transformation cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Трансформация отменена. Фигура не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:1075 #: flatcamEditors/FlatCAMGrbEditor.py:5000 flatcamTools/ToolTransform.py:468 msgid "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для поворота, используйте " +"числа." #: flatcamEditors/FlatCAMGeoEditor.py:1112 #: flatcamEditors/FlatCAMGrbEditor.py:5043 flatcamTools/ToolTransform.py:502 msgid "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для наклона по X, " +"используйте числа." #: flatcamEditors/FlatCAMGeoEditor.py:1133 #: flatcamEditors/FlatCAMGrbEditor.py:5070 flatcamTools/ToolTransform.py:520 msgid "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для наклона поY, " +"используйте числа." #: flatcamEditors/FlatCAMGeoEditor.py:1154 #: flatcamEditors/FlatCAMGrbEditor.py:5097 flatcamTools/ToolTransform.py:538 msgid "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для масштабирования по X, " +"используйте числа." #: flatcamEditors/FlatCAMGeoEditor.py:1191 #: flatcamEditors/FlatCAMGrbEditor.py:5138 flatcamTools/ToolTransform.py:572 msgid "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для масштабирования по Y, " +"используйте числа." #: flatcamEditors/FlatCAMGeoEditor.py:1223 #: flatcamEditors/FlatCAMGrbEditor.py:5176 flatcamTools/ToolTransform.py:601 msgid "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для смещения по X, " +"используйте числа." #: flatcamEditors/FlatCAMGeoEditor.py:1244 #: flatcamEditors/FlatCAMGrbEditor.py:5202 flatcamTools/ToolTransform.py:619 msgid "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для смещения по Y, " +"используйте числа." #: flatcamEditors/FlatCAMGeoEditor.py:1262 #: flatcamEditors/FlatCAMGrbEditor.py:5225 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" msgstr "" +"[WARNING_NOTCL] Фигура не выбрана. Пожалуйста, выберите фигуру для поворота!" #: flatcamEditors/FlatCAMGeoEditor.py:1265 #: flatcamEditors/FlatCAMGrbEditor.py:5228 flatcamTools/ToolTransform.py:640 @@ -2523,6 +2718,8 @@ msgstr "[success] Готово. Поворот выполнен." #: flatcamEditors/FlatCAMGrbEditor.py:5278 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" msgstr "" +"[WARNING_NOTCL] Фигура не выбрана. Пожалуйста, выберите фигуру для " +"переворота!" #: flatcamEditors/FlatCAMGeoEditor.py:1312 #: flatcamEditors/FlatCAMGrbEditor.py:5281 flatcamTools/ToolTransform.py:691 @@ -2543,6 +2740,8 @@ msgstr "[success] Отражение по оси Х завершёно ..." #: flatcamEditors/FlatCAMGrbEditor.py:5346 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" msgstr "" +"[WARNING_NOTCL] Фигура не выбрана. Пожалуйста, выберите фигуру для сдвига/" +"наклона!" #: flatcamEditors/FlatCAMGeoEditor.py:1367 #: flatcamEditors/FlatCAMGrbEditor.py:5349 flatcamTools/ToolTransform.py:760 @@ -2553,18 +2752,20 @@ msgstr "Применение наклона" #: flatcamEditors/FlatCAMGrbEditor.py:5382 flatcamTools/ToolTransform.py:791 #, python-format msgid "[success] Skew on the %s axis done ..." -msgstr "" +msgstr "[success] Наклон по оси %s выполнен ..." #: flatcamEditors/FlatCAMGeoEditor.py:1396 #: flatcamEditors/FlatCAMGrbEditor.py:5386 flatcamTools/ToolTransform.py:795 #, python-format msgid "[ERROR_NOTCL] Due of %s, Skew action was not executed." -msgstr "" +msgstr "[ERROR_NOTCL] Из-за %s наклон не был выполнен." #: flatcamEditors/FlatCAMGeoEditor.py:1407 #: flatcamEditors/FlatCAMGrbEditor.py:5405 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" msgstr "" +"[WARNING_NOTCL] Фигура не выбрана. Пожалуйста, выберите фигуру для " +"масштабирования!" #: flatcamEditors/FlatCAMGeoEditor.py:1410 #: flatcamEditors/FlatCAMGrbEditor.py:5408 flatcamTools/ToolTransform.py:809 @@ -2575,18 +2776,19 @@ msgstr "Применение масштабирования" #: flatcamEditors/FlatCAMGrbEditor.py:5444 flatcamTools/ToolTransform.py:848 #, python-format msgid "[success] Scale on the %s axis done ..." -msgstr "" +msgstr "[success] Масштабирование по оси %s выполнено ..." #: flatcamEditors/FlatCAMGeoEditor.py:1446 #: flatcamEditors/FlatCAMGrbEditor.py:5447 flatcamTools/ToolTransform.py:851 #, python-format msgid "[ERROR_NOTCL] Due of %s, Scale action was not executed." -msgstr "" +msgstr "[ERROR_NOTCL] Из-за %s, операция масштабирования не была выполнена." #: flatcamEditors/FlatCAMGeoEditor.py:1455 #: flatcamEditors/FlatCAMGrbEditor.py:5460 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" msgstr "" +"[WARNING_NOTCL] Фигура не выбрана. Пожалуйста, выберите фигуру для смещения!" #: flatcamEditors/FlatCAMGeoEditor.py:1458 #: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:861 @@ -2597,13 +2799,13 @@ msgstr "Применение смещения" #: flatcamEditors/FlatCAMGrbEditor.py:5484 flatcamTools/ToolTransform.py:880 #, python-format msgid "[success] Offset on the %s axis done ..." -msgstr "" +msgstr "[success] Смещение по оси %s выполнено ..." #: flatcamEditors/FlatCAMGeoEditor.py:1473 #: flatcamEditors/FlatCAMGrbEditor.py:5488 flatcamTools/ToolTransform.py:884 #, python-format msgid "[ERROR_NOTCL] Due of %s, Offset action was not executed." -msgstr "" +msgstr "[ERROR_NOTCL] Из-за %s операция смещения не была выполнена." #: flatcamEditors/FlatCAMGeoEditor.py:1477 #: flatcamEditors/FlatCAMGrbEditor.py:5492 @@ -2622,12 +2824,12 @@ msgstr "Введите значение угла (градусы):" #: flatcamEditors/FlatCAMGeoEditor.py:1487 #: flatcamEditors/FlatCAMGrbEditor.py:5502 msgid "[success] Geometry shape rotate done..." -msgstr "" +msgstr "[success] Вращение фигуры выполнено..." #: flatcamEditors/FlatCAMGeoEditor.py:1492 #: flatcamEditors/FlatCAMGrbEditor.py:5507 msgid "[WARNING_NOTCL] Geometry shape rotate cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Вращение фигуры отменено..." #: flatcamEditors/FlatCAMGeoEditor.py:1498 #: flatcamEditors/FlatCAMGrbEditor.py:5513 @@ -2645,12 +2847,12 @@ msgstr "Введите значение расстояния (%s):" #: flatcamEditors/FlatCAMGeoEditor.py:1508 #: flatcamEditors/FlatCAMGrbEditor.py:5523 msgid "[success] Geometry shape offset on X axis done..." -msgstr "" +msgstr "[success] Смещение формы по оси X выполнено..." #: flatcamEditors/FlatCAMGeoEditor.py:1512 #: flatcamEditors/FlatCAMGrbEditor.py:5527 msgid "[WARNING_NOTCL] Geometry shape offset X cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Смещение формы по оси X отменено..." #: flatcamEditors/FlatCAMGeoEditor.py:1517 #: flatcamEditors/FlatCAMGrbEditor.py:5532 @@ -2660,12 +2862,12 @@ msgstr "Смещение по оси Y ..." #: flatcamEditors/FlatCAMGeoEditor.py:1527 #: flatcamEditors/FlatCAMGrbEditor.py:5542 msgid "[success] Geometry shape offset on Y axis done..." -msgstr "" +msgstr "[success] Смещение формы по оси Y выполнено..." #: flatcamEditors/FlatCAMGeoEditor.py:1531 #: flatcamEditors/FlatCAMGrbEditor.py:5546 msgid "[WARNING_NOTCL] Geometry shape offset Y cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Смещение формы по оси Y отменено..." #: flatcamEditors/FlatCAMGeoEditor.py:1534 #: flatcamEditors/FlatCAMGrbEditor.py:5549 @@ -2675,12 +2877,12 @@ msgstr "Наклон по оси X ..." #: flatcamEditors/FlatCAMGeoEditor.py:1544 #: flatcamEditors/FlatCAMGrbEditor.py:5559 msgid "[success] Geometry shape skew on X axis done..." -msgstr "" +msgstr "[success] Наклон формы по оси X выполнен..." #: flatcamEditors/FlatCAMGeoEditor.py:1548 #: flatcamEditors/FlatCAMGrbEditor.py:5563 msgid "[WARNING_NOTCL] Geometry shape skew X cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Наклон формы по оси X отменён..." #: flatcamEditors/FlatCAMGeoEditor.py:1551 #: flatcamEditors/FlatCAMGrbEditor.py:5566 @@ -2690,12 +2892,12 @@ msgstr "Наклон по оси Y ..." #: flatcamEditors/FlatCAMGeoEditor.py:1561 #: flatcamEditors/FlatCAMGrbEditor.py:5576 msgid "[success] Geometry shape skew on Y axis done..." -msgstr "" +msgstr "[success] Наклон формы по оси Y выполнен..." #: flatcamEditors/FlatCAMGeoEditor.py:1565 #: flatcamEditors/FlatCAMGrbEditor.py:5580 msgid "[WARNING_NOTCL] Geometry shape skew Y cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Наклон формы по оси Y отменён..." #: flatcamEditors/FlatCAMGeoEditor.py:1929 #: flatcamEditors/FlatCAMGeoEditor.py:1980 @@ -2711,7 +2913,7 @@ msgstr "Для завершения щелкните по периметру ... #: flatcamEditors/FlatCAMGeoEditor.py:1965 msgid "[success] Done. Adding Circle completed." -msgstr "" +msgstr "[success] Готово. Добавление круга завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2000 #: flatcamEditors/FlatCAMGrbEditor.py:1462 @@ -2766,7 +2968,7 @@ msgstr "Режим: Центр -> Старт -> Стоп. Нажмите на ц #: flatcamEditors/FlatCAMGeoEditor.py:2179 msgid "[success] Done. Arc completed." -msgstr "" +msgstr "[success] Готово. Дуга завершена." #: flatcamEditors/FlatCAMGeoEditor.py:2198 #: flatcamEditors/FlatCAMGeoEditor.py:2251 @@ -2780,7 +2982,7 @@ msgstr "Нажмите на противоположном углу для за #: flatcamEditors/FlatCAMGeoEditor.py:2232 msgid "[success] Done. Rectangle completed." -msgstr "" +msgstr "[success] Готово. Прямоугольник завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2258 msgid "Click on next Point or click right mouse button to complete ..." @@ -2790,22 +2992,24 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2286 msgid "[success] Done. Polygon completed." -msgstr "" +msgstr "[success] Готово. Полигон завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2296 #: flatcamEditors/FlatCAMGeoEditor.py:2342 #: flatcamEditors/FlatCAMGrbEditor.py:1058 #: flatcamEditors/FlatCAMGrbEditor.py:1252 msgid "Backtracked one point ..." -msgstr "" +msgstr "Отступ на одну точку ..." #: flatcamEditors/FlatCAMGeoEditor.py:2324 msgid "[success] Done. Path completed." -msgstr "" +msgstr "[success] Готово. Путь завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2447 msgid "[WARNING_NOTCL] MOVE: No shape selected. Select a shape to move ..." msgstr "" +"[WARNING_NOTCL] ПЕРЕМЕЩЕНИЕ: Фигура не выбрана. Выберите фигуру для " +"перемещения ..." #: flatcamEditors/FlatCAMGeoEditor.py:2449 #: flatcamEditors/FlatCAMGeoEditor.py:2461 @@ -2818,11 +3022,11 @@ msgstr " Нажмите на конечную точку ..." #: flatcamEditors/FlatCAMGeoEditor.py:2486 msgid "[success] Done. Geometry(s) Move completed." -msgstr "" +msgstr "[success] Готово. Перемещение Geometry завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2606 msgid "[success] Done. Geometry(s) Copy completed." -msgstr "" +msgstr "[success] Готово. Копирование Geometry завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2640 #, python-format @@ -2830,45 +3034,47 @@ msgid "" "[ERROR]Font not supported. Only Regular, Bold, Italic and BoldItalic are " "supported. Error: %s" msgstr "" +"[ERROR] Шрифт не поддерживается. Поддерживаются только обычный, полужирный, " +"курсив и полужирный курсив. Ошибка: %s" #: flatcamEditors/FlatCAMGeoEditor.py:2650 msgid "[success] Done. Adding Text completed." -msgstr "" +msgstr "[success] Готово. Добавление текста завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2678 msgid "Create buffer geometry ..." -msgstr "" +msgstr "Создание геометрии буфера ..." #: flatcamEditors/FlatCAMGeoEditor.py:2689 #: flatcamEditors/FlatCAMGeoEditor.py:2715 #: flatcamEditors/FlatCAMGeoEditor.py:2741 msgid "[WARNING_NOTCL] Buffer cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Создание буфера отменено. Фигура не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:2711 #: flatcamEditors/FlatCAMGrbEditor.py:4442 msgid "[success] Done. Buffer Tool completed." -msgstr "" +msgstr "[success] Готово. Создание буфера завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2737 msgid "[success] Done. Buffer Int Tool completed." -msgstr "" +msgstr "[success] Готово. Внутренний буфер создан." #: flatcamEditors/FlatCAMGeoEditor.py:2763 msgid "[success] Done. Buffer Ext Tool completed." -msgstr "" +msgstr "[success] Готово. Внешний буфер создан." #: flatcamEditors/FlatCAMGeoEditor.py:2798 #: flatcamEditors/FlatCAMGrbEditor.py:1983 msgid "Select a shape to act as deletion area ..." -msgstr "" +msgstr "Выберите фигуру в качестве области для удаления ..." #: flatcamEditors/FlatCAMGeoEditor.py:2800 #: flatcamEditors/FlatCAMGeoEditor.py:2819 #: flatcamEditors/FlatCAMGeoEditor.py:2825 #: flatcamEditors/FlatCAMGrbEditor.py:1985 msgid "Click to pick-up the erase shape..." -msgstr "" +msgstr "Кликните, что бы выбрать фигуру для стирания ..." #: flatcamEditors/FlatCAMGeoEditor.py:2829 #: flatcamEditors/FlatCAMGrbEditor.py:2042 @@ -2878,26 +3084,28 @@ msgstr "Нажмите для очистки ..." #: flatcamEditors/FlatCAMGeoEditor.py:2858 #: flatcamEditors/FlatCAMGrbEditor.py:2075 msgid "[success] Done. Eraser tool action completed." -msgstr "" +msgstr "[success] Готово. Действие инструмента стирания завершено.." #: flatcamEditors/FlatCAMGeoEditor.py:2901 msgid "Create Paint geometry ..." -msgstr "" +msgstr "Создать геометрию окрашивания ..." #: flatcamEditors/FlatCAMGeoEditor.py:2915 #: flatcamEditors/FlatCAMGrbEditor.py:2217 msgid "Shape transformations ..." -msgstr "" +msgstr "Преобразования фигуры ..." #: flatcamEditors/FlatCAMGeoEditor.py:3416 #, python-brace-format msgid "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" msgstr "" +"[WARNING_NOTCL] Редактирование MultiGeo Geometry, инструментом: {tool} с " +"диаметром: {dia}" #: flatcamEditors/FlatCAMGeoEditor.py:3793 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Копирование отменено. Форма не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 @@ -2912,6 +3120,8 @@ msgid "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." msgstr "" +"[WARNING_NOTCL] Выберите по крайней мере 2 geo элемента, что-бы сделать " +"пересечение." #: flatcamEditors/FlatCAMGeoEditor.py:4163 #: flatcamEditors/FlatCAMGeoEditor.py:4201 @@ -2920,45 +3130,49 @@ msgid "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" msgstr "" +"[ERROR_NOTCL] Отрицательное значение буфера не принимается. Используйте " +"внутренний буфер для создания \"внутри\" формы" #: flatcamEditors/FlatCAMGeoEditor.py:4172 #: flatcamEditors/FlatCAMGeoEditor.py:4210 #: flatcamEditors/FlatCAMGeoEditor.py:4285 msgid "[WARNING_NOTCL] Nothing selected for buffering." -msgstr "" +msgstr "[WARNING_NOTCL] Ничего не выбрано для создания буфера." #: flatcamEditors/FlatCAMGeoEditor.py:4176 #: flatcamEditors/FlatCAMGeoEditor.py:4214 #: flatcamEditors/FlatCAMGeoEditor.py:4289 msgid "[WARNING_NOTCL] Invalid distance for buffering." -msgstr "" +msgstr "[WARNING_NOTCL] Недопустимое расстояние для создания буфера." #: flatcamEditors/FlatCAMGeoEditor.py:4186 #: flatcamEditors/FlatCAMGeoEditor.py:4298 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." msgstr "" +"[ERROR_NOTCL] Ошибка, результат нулевой. Выберите другое значение буфера." #: flatcamEditors/FlatCAMGeoEditor.py:4194 msgid "[success] Full buffer geometry created." -msgstr "" +msgstr "[success] Создана геометрия полного буфера" #: flatcamEditors/FlatCAMGeoEditor.py:4224 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." msgstr "" +"[ERROR_NOTCL] Ошибка, результат нулевой. Выберите меньшее значение буфера." #: flatcamEditors/FlatCAMGeoEditor.py:4239 msgid "[success] Interior buffer geometry created." -msgstr "" +msgstr "[success] Создана геометрия внутреннего буфера." #: flatcamEditors/FlatCAMGeoEditor.py:4310 msgid "[success] Exterior buffer geometry created." -msgstr "" +msgstr "[success] Создана геометрия внешнего буфера." #: flatcamEditors/FlatCAMGeoEditor.py:4374 msgid "[WARNING_NOTCL] Nothing selected for painting." -msgstr "" +msgstr "[WARNING_NOTCL] Ничего не выбрано для рисования." #: flatcamEditors/FlatCAMGeoEditor.py:4380 msgid "[WARNING] Invalid value for {}" @@ -2969,6 +3183,8 @@ msgid "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." msgstr "" +"[ERROR_NOTCL] Окраска не выполнена. Значение перекрытия должно быть меньше " +"1,00 (100%)." #: flatcamEditors/FlatCAMGeoEditor.py:4445 #, python-format @@ -2977,20 +3193,26 @@ msgid "" "different method of Paint\n" "%s" msgstr "" +"[ERROR] Окраска не выполнена. Попробуйте другую комбинацию параметров. Или " +"другой способ рисования\n" +"%s" #: flatcamEditors/FlatCAMGeoEditor.py:4456 msgid "[success] Paint done." -msgstr "" +msgstr "[success] Окраска выполнена." #: flatcamEditors/FlatCAMGrbEditor.py:200 msgid "[WARNING_NOTCL] To add an Pad first select a aperture in Aperture Table" msgstr "" +"[WARNING_NOTCL] Чтобы добавить площадку, сначала выберите отверстие в " +"таблице отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:206 #: flatcamEditors/FlatCAMGrbEditor.py:398 msgid "" "[WARNING_NOTCL] Aperture size is zero. It needs to be greater than zero." msgstr "" +"[WARNING_NOTCL] Размер отверстия равен нулю. Он должен быть больше нуля." #: flatcamEditors/FlatCAMGrbEditor.py:357 #: flatcamEditors/FlatCAMGrbEditor.py:662 @@ -3001,28 +3223,30 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:369 msgid "[success] Done. Adding Pad completed." -msgstr "" +msgstr "[success] Готово. Добавление площадки завершено." #: flatcamEditors/FlatCAMGrbEditor.py:391 msgid "" "[WARNING_NOTCL] To add an Pad Array first select a aperture in Aperture Table" msgstr "" +"[WARNING_NOTCL] Чтобы добавить массив площадок, сначала выберите отверстие в " +"таблице отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:468 msgid "Click on the Pad Circular Array Start position" -msgstr "" +msgstr "Нажмите на начальную точку кругового массива контактных площадок" #: flatcamEditors/FlatCAMGrbEditor.py:497 msgid "[ERROR_NOTCL] The value is mistyped. Check the value." -msgstr "" +msgstr "[ERROR_NOTCL] Значение введено с ошибкой. Проверьте значение." #: flatcamEditors/FlatCAMGrbEditor.py:687 msgid "[WARNING_NOTCL] Too many Pads for the selected spacing angle." -msgstr "" +msgstr "[WARNING_NOTCL] Слишком много площадок для выбранного интервала угла." #: flatcamEditors/FlatCAMGrbEditor.py:709 msgid "[success] Done. Pad Array added." -msgstr "" +msgstr "[success] Done. Pad Array added." #: flatcamEditors/FlatCAMGrbEditor.py:730 msgid "Select shape(s) and then click ..." @@ -3030,17 +3254,19 @@ msgstr "Выберите фигуры, а затем нажмите ..." #: flatcamEditors/FlatCAMGrbEditor.py:741 msgid "[ERROR_NOTCL] Failed. Nothing selected." -msgstr "" +msgstr "[ERROR_NOTCL] Ошибка. Ничего не выбрано." #: flatcamEditors/FlatCAMGrbEditor.py:756 msgid "" "[WARNING_NOTCL] Failed. Poligonize works only on geometries belonging to the " "same aperture." msgstr "" +"[WARNING_NOTCL] Неудачный. Полигонизация работает только с геометриями, " +"принадлежащими к одному отверстию." #: flatcamEditors/FlatCAMGrbEditor.py:809 msgid "[success] Done. Poligonize completed." -msgstr "" +msgstr "[success] Готово. Полигонизация выполнена." #: flatcamEditors/FlatCAMGrbEditor.py:860 #: flatcamEditors/FlatCAMGrbEditor.py:1075 @@ -3083,27 +3309,27 @@ msgstr "Угловой режим 5: свободный угол ..." #: flatcamEditors/FlatCAMGrbEditor.py:1284 #: flatcamEditors/FlatCAMGrbEditor.py:1323 msgid "Track Mode 1: 45 degrees ..." -msgstr "" +msgstr "Режим дорожки 1: 45 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1264 #: flatcamEditors/FlatCAMGrbEditor.py:1318 msgid "Track Mode 2: Reverse 45 degrees ..." -msgstr "" +msgstr "Режим дорожки 2: реверс 45 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1269 #: flatcamEditors/FlatCAMGrbEditor.py:1313 msgid "Track Mode 3: 90 degrees ..." -msgstr "" +msgstr "Режим дорожки 3: 90 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1274 #: flatcamEditors/FlatCAMGrbEditor.py:1308 msgid "Track Mode 4: Reverse 90 degrees ..." -msgstr "" +msgstr "Режим дорожки 4: реверс 90 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1279 #: flatcamEditors/FlatCAMGrbEditor.py:1303 msgid "Track Mode 5: Free angle ..." -msgstr "" +msgstr "Режим дорожки 5: свободный угол ..." #: flatcamEditors/FlatCAMGrbEditor.py:1683 msgid "Scale the selected Gerber apertures ..." @@ -3111,19 +3337,19 @@ msgstr "Масштабирование выбранных отверстий Ger #: flatcamEditors/FlatCAMGrbEditor.py:1725 msgid "Buffer the selected apertures ..." -msgstr "" +msgstr "Создание буфера для выбранных отверстий ..." #: flatcamEditors/FlatCAMGrbEditor.py:1769 msgid "[WARNING_NOTCL] Nothing selected to move ..." -msgstr "" +msgstr "[WARNING_NOTCL] Ничего не выбрано для перемещения ..." #: flatcamEditors/FlatCAMGrbEditor.py:1892 msgid "[success] Done. Apertures Move completed." -msgstr "" +msgstr "[success] Готово. Перемещение отверстий завершено." #: flatcamEditors/FlatCAMGrbEditor.py:1968 msgid "[success] Done. Apertures copied." -msgstr "" +msgstr "[success] Готово. Отверстия скопированы." #: flatcamEditors/FlatCAMGrbEditor.py:2259 flatcamGUI/FlatCAMGUI.py:1604 #: flatcamGUI/FlatCAMGUI.py:4323 @@ -3169,7 +3395,7 @@ msgstr "Код отверстия" #: flatcamEditors/FlatCAMGrbEditor.py:2299 flatcamGUI/ObjectUI.py:236 msgid "Type of aperture: circular, rectangle, macros etc" -msgstr "" +msgstr "Тип отверстия: круг, прямоугольник, макросы и т.д." #: flatcamEditors/FlatCAMGrbEditor.py:2301 #: flatcamEditors/FlatCAMGrbEditor.py:2334 flatcamGUI/ObjectUI.py:238 @@ -3256,11 +3482,11 @@ msgstr "Удаляет отверстие в таблице отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:2404 msgid "Buffer Aperture:" -msgstr "" +msgstr "Буфер отверстия:" #: flatcamEditors/FlatCAMGrbEditor.py:2406 msgid "Buffer a aperture in the aperture list" -msgstr "" +msgstr "Создаёт буфер для отверстия в списке отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:2419 msgid "" @@ -3270,52 +3496,61 @@ msgid "" " - 'Beveled:' the corner is a line that directly connects the features " "meeting in the corner" msgstr "" +"Существует 3 типа углов:\n" +" - 'Круг': угол закруглен.\n" +" - 'Квадрат': угол встречается под острым углом.\n" +" - 'Скошенный:' угол-это линия, которая непосредственно соединяет элементы, " +"встречающиеся в углу" #: flatcamEditors/FlatCAMGrbEditor.py:2434 flatcamGUI/FlatCAMGUI.py:717 #: flatcamGUI/FlatCAMGUI.py:1946 msgid "Buffer" -msgstr "Буффер" +msgstr "Буфер" #: flatcamEditors/FlatCAMGrbEditor.py:2448 msgid "Scale Aperture:" -msgstr "" +msgstr "Масштаб. отверстий:" #: flatcamEditors/FlatCAMGrbEditor.py:2450 msgid "Scale a aperture in the aperture list" -msgstr "" +msgstr "Масштабирование отверстия в списке отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:2458 msgid "Scale factor:" -msgstr "" +msgstr "Коэффициент масш.:" #: flatcamEditors/FlatCAMGrbEditor.py:2460 msgid "" "The factor by which to scale the selected aperture.\n" "Values can be between 0.0000 and 999.9999" msgstr "" +"Коэффициент масштабирования выбранного отверстия.\n" +"Значения могут быть между 0.0000 и 999.9999" #: flatcamEditors/FlatCAMGrbEditor.py:2488 flatcamGUI/FlatCAMGUI.py:707 #: flatcamGUI/FlatCAMGUI.py:1936 msgid "Add Pad Array" -msgstr "" +msgstr "Добавить массив контактных площадок" #: flatcamEditors/FlatCAMGrbEditor.py:2490 msgid "Add an array of pads (linear or circular array)" -msgstr "" +msgstr "Добавляет массив контактных площадок (линейный или круговой массив)" #: flatcamEditors/FlatCAMGrbEditor.py:2496 msgid "" "Select the type of pads array to create.\n" "It can be Linear X(Y) or Circular" msgstr "" +"Выбор типа массива контактных площадок.\n" +"Он может быть линейным X (Y) или круговым" #: flatcamEditors/FlatCAMGrbEditor.py:2507 msgid "Nr of pads:" -msgstr "" +msgstr "№ площ.:" #: flatcamEditors/FlatCAMGrbEditor.py:2509 msgid "Specify how many pads to be in the array." -msgstr "" +msgstr "Укажите, сколько контактных площадок должно быть в массиве." #: flatcamEditors/FlatCAMGrbEditor.py:2986 #: flatcamEditors/FlatCAMGrbEditor.py:2990 @@ -3323,56 +3558,63 @@ msgid "" "[WARNING_NOTCL] Aperture code value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение кода отверстия или оно имеет " +"неправильный формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:3026 msgid "" "[WARNING_NOTCL] Aperture dimensions value is missing or wrong format. Add it " "in format (width, height) and retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение размера отверстия или оно имеет " +"неправильный формат. Добавьте его в формате (ширина, высота) и повторите " +"попытку." #: flatcamEditors/FlatCAMGrbEditor.py:3038 msgid "" "[WARNING_NOTCL] Aperture size value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение размера отверстия или оно имеет " +"неправильный формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:3049 msgid "[WARNING_NOTCL] Aperture already in the aperture table." -msgstr "" +msgstr "[WARNING_NOTCL] Отверстие уже присутствует в таблице отверстий." #: flatcamEditors/FlatCAMGrbEditor.py:3056 #, python-brace-format msgid "[success] Added new aperture with code: {apid}" -msgstr "" +msgstr "[success] Добавлено новое отверстие с кодом: {apid}" #: flatcamEditors/FlatCAMGrbEditor.py:3084 msgid "[WARNING_NOTCL] Select an aperture in Aperture Table" -msgstr "" +msgstr "[WARNING_NOTCL] Выберите отверстие в таблице отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:3090 #, python-format msgid "[WARNING_NOTCL] Select an aperture in Aperture Table --> %s" -msgstr "" +msgstr "[WARNING_NOTCL] Выберите отверстие в таблице отверстий --> %s" #: flatcamEditors/FlatCAMGrbEditor.py:3113 #, python-brace-format msgid "[success] Deleted aperture with code: {del_dia}" -msgstr "" +msgstr "[success] Удалено отверстие с кодом: {del_dia}" #: flatcamEditors/FlatCAMGrbEditor.py:3533 #, python-format msgid "Adding aperture: %s geo ..." -msgstr "" +msgstr "Добавление отверстия: %s geo ..." #: flatcamEditors/FlatCAMGrbEditor.py:3718 msgid "" "[ERROR_NOTCL] There are no Aperture definitions in the file. Aborting Gerber " "creation." -msgstr "" +msgstr "[ERROR_NOTCL] В файле нет отверстий. Прерывание создания Gerber." #: flatcamEditors/FlatCAMGrbEditor.py:3721 msgid "[ERROR] An internal error has occurred. See shell.\n" -msgstr "" +msgstr "[ERROR] Произошла внутренняя ошибка. Смотрите коммандную строку.\n" #: flatcamEditors/FlatCAMGrbEditor.py:3726 msgid "Creating Gerber." @@ -3380,41 +3622,47 @@ msgstr "Создание Gerber." #: flatcamEditors/FlatCAMGrbEditor.py:3734 msgid "[success] Gerber editing finished." -msgstr "" +msgstr "[success] Редактирование Gerber завершено." #: flatcamEditors/FlatCAMGrbEditor.py:3750 msgid "[WARNING_NOTCL] Cancelled. No aperture is selected" -msgstr "" +msgstr "[WARNING_NOTCL] Отмена. Нет выбранных отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:4270 msgid "[ERROR_NOTCL] Failed. No aperture geometry is selected." -msgstr "" +msgstr "[ERROR_NOTCL] Ошибка. Не выбрана геометрия отверстий." #: flatcamEditors/FlatCAMGrbEditor.py:4278 msgid "[success] Done. Apertures geometry deleted." -msgstr "" +msgstr "[success] Готово. Геометрия отверстий удалена." #: flatcamEditors/FlatCAMGrbEditor.py:4427 msgid "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." msgstr "" +"[WARNING_NOTCL] Нет отверстий для создания буфера. Выберите хотя бы одно " +"отверстие и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:4456 msgid "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение коэффициента масштабирования или оно " +"имеет неправильный формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:4486 msgid "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." msgstr "" +"[WARNING_NOTCL] Нет отверстий для масштабирования. Выберите хотя бы одно " +"отверстие и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:4502 msgid "[success] Done. Scale Tool completed." -msgstr "" +msgstr "[success] Готово. Масштабирование выполнено." #: flatcamGUI/FlatCAMGUI.py:50 msgid "&File" @@ -3507,6 +3755,9 @@ msgid "" "enabling the automation of certain\n" "functions of FlatCAM." msgstr "" +"Будет запущен открытый сценарий\n" +"включающий автоматизацию некоторых\n" +"функций FlatCAM." #: flatcamGUI/FlatCAMGUI.py:138 msgid "Import" @@ -3683,7 +3934,7 @@ msgstr "&Удалить\tDEL" #: flatcamGUI/FlatCAMGUI.py:295 msgid "Se&t Origin\tO" -msgstr "" +msgstr "Ук&азать начало координат\tO" #: flatcamGUI/FlatCAMGUI.py:296 msgid "Jump to Location\tJ" @@ -3735,11 +3986,11 @@ msgstr "&Вид" #: flatcamGUI/FlatCAMGUI.py:350 msgid "Enable all plots\tALT+1" -msgstr "Включить все чертежи\tALT+1" +msgstr "Включить все участки\tALT+1" #: flatcamGUI/FlatCAMGUI.py:352 msgid "Disable all plots\tALT+2" -msgstr "Отключить все чертежи\tALT+2" +msgstr "Отключить все участки\tALT+2" #: flatcamGUI/FlatCAMGUI.py:354 msgid "Disable non-selected\tALT+3" @@ -3767,11 +4018,11 @@ msgstr "&Во весь экран\tALT+F10" #: flatcamGUI/FlatCAMGUI.py:368 msgid "&Toggle Plot Area\tCTRL+F10" -msgstr "&Чертёж\tCTRL+F10" +msgstr "&Рабочая область\tCTRL+F10" #: flatcamGUI/FlatCAMGUI.py:370 msgid "&Toggle Project/Sel/Tool\t`" -msgstr "&Проект/Выбр./Инструм.\t`" +msgstr "&Боковая панель\t`" #: flatcamGUI/FlatCAMGUI.py:373 msgid "&Toggle Grid Snap\tG" @@ -3783,7 +4034,7 @@ msgstr "&Оси\tSHIFT+G" #: flatcamGUI/FlatCAMGUI.py:378 msgid "Toggle Workspace\tSHIFT+W" -msgstr "Рабочее пространство\tSHIFT+W" +msgstr "Границы рабочего пространства\tSHIFT+W" #: flatcamGUI/FlatCAMGUI.py:381 msgid "&Tool" @@ -3843,15 +4094,15 @@ msgstr "Добавить текст\tT" #: flatcamGUI/FlatCAMGUI.py:416 msgid "Polygon Union\tU" -msgstr "" +msgstr "Объединение полигонов\tU" #: flatcamGUI/FlatCAMGUI.py:418 msgid "Polygon Intersection\tE" -msgstr "" +msgstr "Пересечение полигонов\tE" #: flatcamGUI/FlatCAMGUI.py:420 msgid "Polygon Subtraction\tS" -msgstr "" +msgstr "Вычитание полигонов\tS" #: flatcamGUI/FlatCAMGUI.py:424 msgid "Cut Path\tX" @@ -3871,11 +4122,11 @@ msgstr "Переместить\tM" #: flatcamGUI/FlatCAMGUI.py:433 msgid "Buffer Tool\tB" -msgstr "" +msgstr "Буфер\tB" #: flatcamGUI/FlatCAMGUI.py:436 msgid "Paint Tool\tI" -msgstr "" +msgstr "Рисование\tI" #: flatcamGUI/FlatCAMGUI.py:439 msgid "Transform Tool\tALT+R" @@ -3883,7 +4134,7 @@ msgstr "Трансформация\tALT+R" #: flatcamGUI/FlatCAMGUI.py:443 msgid "Toggle Corner Snap\tK" -msgstr "" +msgstr "Привязка к углу\tK" #: flatcamGUI/FlatCAMGUI.py:446 msgid ">Excellon Editor<" @@ -3899,7 +4150,7 @@ msgstr "Добавить сверло\tD" #: flatcamGUI/FlatCAMGUI.py:456 msgid "Resize Drill(S)\tR" -msgstr "" +msgstr "Изменить размер отверстия\tR" #: flatcamGUI/FlatCAMGUI.py:458 flatcamGUI/FlatCAMGUI.py:496 msgid "Copy\tC" @@ -3919,11 +4170,11 @@ msgstr ">Редактор Gerber<" #: flatcamGUI/FlatCAMGUI.py:472 msgid "Add Pad\tP" -msgstr "" +msgstr "Добавить площадку\tP" #: flatcamGUI/FlatCAMGUI.py:474 msgid "Add Pad Array\tA" -msgstr "" +msgstr "Добавить массив площадок\tA" #: flatcamGUI/FlatCAMGUI.py:476 msgid "Add Track\tT" @@ -3935,7 +4186,7 @@ msgstr "Добавить регион\tN" #: flatcamGUI/FlatCAMGUI.py:482 msgid "Poligonize\tALT+N" -msgstr "" +msgstr "Полигонизация\tALT+N" #: flatcamGUI/FlatCAMGUI.py:484 msgid "Add SemiDisc\tE" @@ -3947,7 +4198,7 @@ msgstr "Добавить диск\tD" #: flatcamGUI/FlatCAMGUI.py:488 msgid "Buffer\tB" -msgstr "" +msgstr "Буфер\tB" #: flatcamGUI/FlatCAMGUI.py:490 msgid "Scale\tS" @@ -3959,11 +4210,11 @@ msgstr "Трансформировать\tALT+R" #: flatcamGUI/FlatCAMGUI.py:519 msgid "Enable Plot" -msgstr "Включить чертёж" +msgstr "Включить участок" #: flatcamGUI/FlatCAMGUI.py:520 flatcamGUI/FlatCAMGUI.py:1577 msgid "Disable Plot" -msgstr "Отключить чертёж" +msgstr "Отключить участок" #: flatcamGUI/FlatCAMGUI.py:522 msgid "Generate CNC" @@ -4056,7 +4307,7 @@ msgstr "&Перерисовать объект" #: flatcamGUI/FlatCAMGUI.py:629 flatcamGUI/FlatCAMGUI.py:1852 msgid "&Clear plot" -msgstr "&Очистить чертёж" +msgstr "&Очистить участок" #: flatcamGUI/FlatCAMGUI.py:630 flatcamGUI/FlatCAMGUI.py:1853 msgid "Zoom In" @@ -4167,11 +4418,11 @@ msgstr "Добавить текст" #: flatcamGUI/FlatCAMGUI.py:682 flatcamGUI/FlatCAMGUI.py:1910 msgid "Add Buffer" -msgstr "" +msgstr "Добавить буфер" #: flatcamGUI/FlatCAMGUI.py:683 flatcamGUI/FlatCAMGUI.py:1911 msgid "Paint Shape" -msgstr "" +msgstr "Нарисовать фигуру" #: flatcamGUI/FlatCAMGUI.py:684 flatcamGUI/FlatCAMGUI.py:719 #: flatcamGUI/FlatCAMGUI.py:1912 flatcamGUI/FlatCAMGUI.py:1948 @@ -4213,7 +4464,7 @@ msgstr "Переместить объект " #: flatcamGUI/FlatCAMGUI.py:706 flatcamGUI/FlatCAMGUI.py:1935 msgid "Add Pad" -msgstr "" +msgstr "Добавить площадку" #: flatcamGUI/FlatCAMGUI.py:708 flatcamGUI/FlatCAMGUI.py:1937 msgid "Add Track" @@ -4225,7 +4476,7 @@ msgstr "Добавить регион" #: flatcamGUI/FlatCAMGUI.py:711 flatcamGUI/FlatCAMGUI.py:1940 msgid "Poligonize" -msgstr "" +msgstr "Полигонизация" #: flatcamGUI/FlatCAMGUI.py:713 flatcamGUI/FlatCAMGUI.py:1942 msgid "SemiDisc" @@ -4247,17 +4498,19 @@ msgstr "Привязка к сетке" #: flatcamGUI/FlatCAMGUI.py:737 flatcamGUI/FlatCAMGUI.py:1966 msgid "Grid X snapping distance" -msgstr "" +msgstr "Размер сетки по X" #: flatcamGUI/FlatCAMGUI.py:742 flatcamGUI/FlatCAMGUI.py:1971 msgid "Grid Y snapping distance" -msgstr "" +msgstr "Размер сетки по Y" #: flatcamGUI/FlatCAMGUI.py:748 flatcamGUI/FlatCAMGUI.py:1977 msgid "" "When active, value on Grid_X\n" "is copied to the Grid_Y value." msgstr "" +"Если активен, значение на Grid_X\n" +"копируется в значение Grid_Y." #: flatcamGUI/FlatCAMGUI.py:754 flatcamGUI/FlatCAMGUI.py:1983 msgid "Snap to corner" @@ -4278,7 +4531,7 @@ msgstr "Выбранное" #: flatcamGUI/FlatCAMGUI.py:815 flatcamGUI/FlatCAMGUI.py:823 msgid "Plot Area" -msgstr "Чертёж" +msgstr "Рабочая область" #: flatcamGUI/FlatCAMGUI.py:847 msgid "General" @@ -4306,7 +4559,7 @@ msgstr "GEOMETRY" #: flatcamGUI/FlatCAMGUI.py:896 msgid "CNC-JOB" -msgstr "" +msgstr "CNC-JOB" #: flatcamGUI/FlatCAMGUI.py:905 msgid "TOOLS" @@ -4324,6 +4577,11 @@ msgid "" "FlatCAM automatically save a 'factory_defaults' file\n" "on the first start. Do not delete that file." msgstr "" +"Импорт полного набора настроек FlatCAM из файла,\n" +"ранее сохранённого на жестком диске.\n" +"\n" +"FlatCAM автоматически создаёт файл factory_defaults\n" +"при первом запуске. Не удаляйте этот файл." #: flatcamGUI/FlatCAMGUI.py:932 msgid "Export Preferences" @@ -4334,6 +4592,8 @@ msgid "" "Export a full set of FlatCAM settings in a file\n" "that is saved on HDD." msgstr "" +"Экспорт полного набора настроек FlatCAM в файл\n" +"который сохраняется на жестком диске." #: flatcamGUI/FlatCAMGUI.py:940 msgid "Open Pref Folder" @@ -4341,7 +4601,7 @@ msgstr "Открыть папку настроек" #: flatcamGUI/FlatCAMGUI.py:943 msgid "Open the folder where FlatCAM save the preferences files." -msgstr "" +msgstr "Открывает папку, в которой FlatCAM сохраняет файлы настроек." #: flatcamGUI/FlatCAMGUI.py:951 msgid "Save Preferences" @@ -4981,7 +5241,7 @@ msgstr "Вид" #: flatcamGUI/FlatCAMGUI.py:1593 msgid "Clear Plot" -msgstr "Очистить чертёж" +msgstr "Очистить участок" #: flatcamGUI/FlatCAMGUI.py:1594 msgid "Replot" @@ -5005,11 +5265,11 @@ msgstr "Вырезать" #: flatcamGUI/FlatCAMGUI.py:1605 msgid "Pad" -msgstr "" +msgstr "Площадка" #: flatcamGUI/FlatCAMGUI.py:1606 msgid "Pad Array" -msgstr "" +msgstr "Массив площадок" #: flatcamGUI/FlatCAMGUI.py:1607 msgid "Track" @@ -5021,7 +5281,7 @@ msgstr "Регион" #: flatcamGUI/FlatCAMGUI.py:1610 msgid "Exc Editor" -msgstr "" +msgstr "Редактор Excellon" #: flatcamGUI/FlatCAMGUI.py:1611 msgid "Add Drill" @@ -5105,7 +5365,7 @@ msgstr "Внимание" #: flatcamGUI/FlatCAMGUI.py:2434 flatcamGUI/FlatCAMGUI.py:2633 #: flatcamGUI/FlatCAMGUI.py:2844 msgid "[WARNING_NOTCL] Cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Отмена." #: flatcamGUI/FlatCAMGUI.py:2499 msgid "" @@ -5622,7 +5882,7 @@ msgstr "Окрашивать полигоны разными цветами." #: flatcamGUI/FlatCAMGUI.py:4016 flatcamGUI/FlatCAMGUI.py:4367 #: flatcamGUI/FlatCAMGUI.py:5157 flatcamGUI/ObjectUI.py:172 msgid "Plot" -msgstr "Чертёж" +msgstr "Участок" #: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5159 #: flatcamGUI/ObjectUI.py:174 flatcamGUI/ObjectUI.py:546 @@ -6098,7 +6358,7 @@ msgstr "Смена инструмента Z :" #: flatcamGUI/FlatCAMGUI.py:4655 flatcamGUI/FlatCAMGUI.py:5272 msgid "Toolchange Z position." -msgstr "" +msgstr "Позиция Z смены инструмента." #: flatcamGUI/FlatCAMGUI.py:4661 msgid "Feedrate:" @@ -6240,11 +6500,11 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:4810 flatcamGUI/FlatCAMGUI.py:5375 msgid "Toolchange X,Y:" -msgstr "" +msgstr "Смена инструмента X,Y:" #: flatcamGUI/FlatCAMGUI.py:4812 flatcamGUI/FlatCAMGUI.py:5377 msgid "Toolchange X,Y position." -msgstr "" +msgstr "Позиция X,Y смены инструмента." #: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5384 #: flatcamGUI/ObjectUI.py:634 @@ -6743,7 +7003,7 @@ msgstr "CNC Job дополн." #: flatcamGUI/FlatCAMGUI.py:5707 flatcamGUI/ObjectUI.py:1523 msgid "Toolchange G-Code:" -msgstr "" +msgstr "G-Code смены инструмента:" #: flatcamGUI/FlatCAMGUI.py:5709 msgid "" @@ -6795,15 +7055,15 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:5751 flatcamGUI/ObjectUI.py:1571 msgid "x_toolchange = X coord for Toolchange" -msgstr "" +msgstr "x_toolchange = координата X для смены инструмента" #: flatcamGUI/FlatCAMGUI.py:5752 flatcamGUI/ObjectUI.py:1572 msgid "y_toolchange = Y coord for Toolchange" -msgstr "" +msgstr "y_toolchange = координата Y для смены инструмента" #: flatcamGUI/FlatCAMGUI.py:5753 flatcamGUI/ObjectUI.py:1573 msgid "z_toolchange = Z coord for Toolchange" -msgstr "" +msgstr "z_toolchange = координата Z для смены инструмента" #: flatcamGUI/FlatCAMGUI.py:5754 msgid "z_cut = Z depth for the cut" @@ -7428,7 +7688,7 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:200 msgid "Z Toolchange:" -msgstr "" +msgstr "Z смены инструмента:" #: flatcamGUI/FlatCAMGUI.py:6581 flatcamTools/ToolSolderPaste.py:202 msgid "The height (Z) for tool (nozzle) change." @@ -7436,7 +7696,7 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:208 msgid "XY Toolchange:" -msgstr "" +msgstr "XY смены инструмента:" #: flatcamGUI/FlatCAMGUI.py:6590 flatcamTools/ToolSolderPaste.py:210 msgid "" @@ -7775,11 +8035,11 @@ msgstr "Таблица инструментов" #: flatcamGUI/ObjectUI.py:556 msgid "Drills" -msgstr "Свёрла" +msgstr "Отверстия" #: flatcamGUI/ObjectUI.py:556 msgid "Slots" -msgstr "Ячейки" +msgstr "Пазы" #: flatcamGUI/ObjectUI.py:557 msgid "Offset Z" @@ -8215,11 +8475,11 @@ msgstr "" #: flatcamGUI/ObjectUI.py:1472 msgid "Update Plot" -msgstr "Обновить чертёж" +msgstr "Обновить участок" #: flatcamGUI/ObjectUI.py:1474 msgid "Update the plot." -msgstr "Обновление чертёжа." +msgstr "Обновление участка." #: flatcamGUI/ObjectUI.py:1481 msgid "Export CNC Code:" @@ -9064,22 +9324,22 @@ msgstr "" msgid "Stop" msgstr "Конечн." -#: flatcamTools/ToolMeasurement.py:55 -msgid "Dx:" -msgstr "Дистанция по X:" - -#: flatcamTools/ToolMeasurement.py:58 -msgid "Dy:" -msgstr "Дистанция по Y:" - #: flatcamTools/ToolMeasurement.py:53 flatcamTools/ToolMeasurement.py:70 msgid "This is the measuring Stop point coordinates." msgstr "" +#: flatcamTools/ToolMeasurement.py:55 +msgid "Dx:" +msgstr "Дистанция по X:" + #: flatcamTools/ToolMeasurement.py:56 flatcamTools/ToolMeasurement.py:74 msgid "This is the distance measured over the X axis." msgstr "" +#: flatcamTools/ToolMeasurement.py:58 +msgid "Dy:" +msgstr "Дистанция по Y:" + #: flatcamTools/ToolMeasurement.py:59 flatcamTools/ToolMeasurement.py:79 msgid "This is the distance measured over the Y axis." msgstr "" @@ -9593,7 +9853,7 @@ msgstr "" #: flatcamTools/ToolPanelize.py:370 #, python-format msgid "[WARNING_NOTCL]No object Box. Using instead %s" -msgstr "" +msgstr "[WARNING_NOTCL]Нет объекта Box. Используйте взамен %s" #: flatcamTools/ToolPanelize.py:453 msgid "" diff --git a/locale_template/strings.pot b/locale_template/strings.pot index cfb7147a..a0af088c 100644 --- a/locale_template/strings.pot +++ b/locale_template/strings.pot @@ -27,6 +27,10 @@ msgstr "" msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" +#: FlatCAMApp.py:1836 +msgid "(Type help to get started)\n\n" +msgstr "" + #: FlatCAMApp.py:2018 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:299 flatcamTools/ToolPcbWizard.py:322 msgid "Open cancelled."