From 947fd705a72f68af82fa88680a98d9718acc6e66 Mon Sep 17 00:00:00 2001 From: Mew Pur Pur <85438892+MewPurPur@users.noreply.github.com> Date: Tue, 28 Jan 2025 19:31:39 +0200 Subject: [PATCH] Implement Show in File Manager option (#1093) --- assets/translations/GodSVG.pot | 303 +++++++++++------- assets/translations/bg.po | 341 +++++++++++--------- assets/translations/de.po | 369 ++++++++++++++-------- assets/translations/en.po | 303 +++++++++++------- assets/translations/fr.po | 362 +++++++++++++-------- assets/translations/nl.po | 362 +++++++++++++-------- assets/translations/ru.po | 369 ++++++++++++++-------- assets/translations/uk.po | 369 ++++++++++++++-------- assets/translations/zh.po | 369 ++++++++++++++-------- godot_only/scripts/update_translations.gd | 14 +- project.godot | 6 +- src/ui_parts/display.gd | 6 + src/ui_parts/display.tscn | 36 +-- src/ui_parts/editor_scene.tscn | 1 + src/ui_parts/global_actions.gd | 80 +++++ src/ui_parts/global_actions.tscn | 18 +- src/ui_parts/tab_bar.gd | 14 +- src/ui_widgets/code_editor.gd | 72 ----- src/ui_widgets/code_editor.tscn | 22 +- src/utils/FileUtils.gd | 2 +- src/utils/ShortcutUtils.gd | 10 +- src/utils/TranslationUtils.gd | 5 +- 22 files changed, 2093 insertions(+), 1340 deletions(-) diff --git a/assets/translations/GodSVG.pot b/assets/translations/GodSVG.pot index 1d082ad3..241f6fca 100644 --- a/assets/translations/GodSVG.pot +++ b/assets/translations/GodSVG.pot @@ -35,7 +35,7 @@ msgstr "" msgid "This requires GodSVG to connect to the internet." msgstr "" -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "" @@ -54,35 +54,58 @@ msgid "" "you want to proceed?" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +msgid "Close tab" +msgstr "" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "" @@ -119,6 +142,10 @@ msgstr "" msgid "6-digit hex" msgstr "" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "" @@ -139,18 +166,15 @@ msgstr "" msgid "This group has only one element." msgstr "" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "" @@ -162,6 +186,12 @@ msgstr "" msgid "Improper nesting." msgstr "" +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "" @@ -202,51 +232,6 @@ msgstr "" msgid "Third-party licenses" msgstr "" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "" @@ -275,32 +260,14 @@ msgstr "" msgid "Rasterized SVG" msgstr "" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "" - -#: src/ui_parts/display.gd -msgid "View savedata" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" msgstr "" #: src/ui_parts/element_container.gd @@ -311,11 +278,6 @@ msgstr "" msgid "Dimensions" msgstr "" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "" @@ -352,24 +314,57 @@ msgstr "" msgid "Preview image size is limited to {dimensions}" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" +#: src/ui_parts/global_actions.gd +msgid "Settings" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" msgstr "" -#: src/ui_parts/global_menu.gd -msgid "Snap" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" msgstr "" #: src/ui_parts/good_file_dialog.gd @@ -400,11 +395,6 @@ msgstr "" msgid "Select an image" msgstr "" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "" @@ -459,10 +449,6 @@ msgstr "" msgid "Import Problems" msgstr "" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "" @@ -479,6 +465,26 @@ msgstr "" msgid "Add element" msgstr "" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "" @@ -801,6 +807,30 @@ msgstr "" msgid "Vertical strip" msgstr "" +#: src/ui_parts/tab_bar.gd +msgid "Create tab" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close all other tabs" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +msgid "Create a new tab" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "" @@ -829,6 +859,18 @@ msgstr "" msgid "New versions" msgstr "" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -851,6 +893,14 @@ msgstr "" msgid "Paste" msgstr "" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "" @@ -867,6 +917,10 @@ msgstr "" msgid "Delete color" msgstr "" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "" + #: src/ui_widgets/good_color_picker.gd msgid "Color keywords" msgstr "" @@ -899,6 +953,11 @@ msgstr "" msgid "Apply Preset" msgstr "" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "" @@ -907,10 +966,6 @@ msgstr "" msgid "Absolute" msgstr "" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "" @@ -975,44 +1030,52 @@ msgstr "" msgid "Check if the file still exists in the selected file path." msgstr "" +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + #: src/utils/TranslationUtils.gd -msgid "Open SVG file" +msgid "Select the next tab" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Select all elements" +msgid "Select the previous tab" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" +msgid "Open SVG externally" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Delete the selection" +msgid "Show SVG in File Manager" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +msgid "Select all" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +msgid "Duplicate the selection" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Find" +msgid "Delete the selection" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Zoom in" +msgid "Move the selection up" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Zoom out" +msgid "Move the selection down" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Zoom reset" +msgid "Find" msgstr "" #: src/utils/TranslationUtils.gd diff --git a/assets/translations/bg.po b/assets/translations/bg.po index 0ba56c86..ea113729 100644 --- a/assets/translations/bg.po +++ b/assets/translations/bg.po @@ -35,7 +35,7 @@ msgstr "Провери за ъпдейти?" msgid "This requires GodSVG to connect to the internet." msgstr "Това изисква GodSVG да се свърже с интерната." -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "Добре" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "Експортирай SVG-то" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "Експортирай" @@ -56,35 +56,58 @@ msgstr "" "Графиката може да бъде експортирана само като SVG защото размерът не е " "определен. Искаш ли да продължиш?" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "Предупреждение!" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +msgid "Close tab" +msgstr "Затвори раздела" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "Възстанови" + +#: src/autoload/State.gd msgid "View In List" msgstr "Виж в Списъка" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "Дублирай" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "Превърни в" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "Премести нагоре" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "Премести надолу" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "Премахни" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "Вмъкни отпред" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "Последното състояние на този раздел не беше намерено." + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "Този раздел е свързан с пътеката {file_path}. Искаш ли да го възстановиш от тази пътека?" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "Компактен" @@ -121,6 +144,10 @@ msgstr "Хекс с 3 или 6 цифри" msgid "6-digit hex" msgstr "Хекс с 6 цифри" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "Незаписан" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "Коментар" @@ -141,18 +168,15 @@ msgstr "Тази група няма елементи." msgid "This group has only one element." msgstr "Тази група има само един елемент." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "Не е дефиниран \"id\" атрибут." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "Няма елемент под този градиент." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "Този градиент е едноцветен." @@ -164,6 +188,12 @@ msgstr "Текстът не описва SVG." msgid "Improper nesting." msgstr "Несъвместими тагове." +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "Затвори" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "Основател и мениджър на проекта" @@ -204,51 +234,6 @@ msgstr "Компоненти в Godot от трети лица" msgid "Third-party licenses" msgstr "Лицензи от трети партии" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "Предупреждение!" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "Отказ" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "Създай" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "Запиши SVG-то" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "Отвори файла" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "Рестартирай SVG-то" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "Премахни запазената пътека" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "Оптимизирай" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "Копирай всичкия текст" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "Изчисти SVG-то" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "Настройки" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "Графики" @@ -277,33 +262,15 @@ msgstr "Покажи дръжките" msgid "Rasterized SVG" msgstr "Растеризирай SVG" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "Относно приложението…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "Размер на захващането" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "Провери за ъпдейти" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "Направи дарение…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "Репозиторията на GodSVG" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "Уебсайта на GodSVG" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "Виж запазените данни" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "Отказ" #: src/ui_parts/element_container.gd msgid "New element" @@ -313,11 +280,6 @@ msgstr "Добави елемент" msgid "Dimensions" msgstr "Измерения" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "Неименуван" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "Размер" @@ -354,25 +316,58 @@ msgstr "Височина" msgid "Preview image size is limited to {dimensions}" msgstr "Размерът на визуализацията е ограничен до {dimensions}" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "Файл" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "Импортирай" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "Промени" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "Настройки" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "Инструмент" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "Оптимизирай" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "Гледка" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "Запиши SVG-то" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "Захващане" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "Рестартирай SVG-то" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "Отвори с външно приложение" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "Покажи във Файловия мениджър" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "Относно приложението…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "Провери за ъпдейти" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "Направи дарение…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "Репозиторията на GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "Уебсайта на GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "Виж запазените данни" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -402,11 +397,6 @@ msgstr "Избери XML файл" msgid "Select an image" msgstr "Избери изображение" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "Затвори" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "Избери" @@ -463,10 +453,6 @@ msgstr "Нова фигура" msgid "Import Problems" msgstr "Проблеми в импортирането" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "Импортирай" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "Непознат елемент" @@ -483,6 +469,26 @@ msgstr "Синтактична грешка" msgid "Add element" msgstr "Добави елемент" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "Файл" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "Промени" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "Инструмент" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "Гледка" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "Захващане" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "Форматиране" @@ -812,6 +818,30 @@ msgstr "Хоризонтален с два реда" msgid "Vertical strip" msgstr "Вертикална лента" +#: src/ui_parts/tab_bar.gd +msgid "Create tab" +msgstr "Създай раздел" + +#: src/ui_parts/tab_bar.gd +msgid "Close all other tabs" +msgstr "Затвори другите раздели" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "Затвори разделите отляво" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "Затвори разделите отдясно" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +msgid "Create a new tab" +msgstr "Създай нов раздел" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "Това SVG не е свързано с местоположение на компютъра." + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "Включи предварителните издания" @@ -840,6 +870,18 @@ msgstr "GodSVG е актуален." msgid "New versions" msgstr "Нови версии" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "Намали" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "Увеличи" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "Рестартирай мащаба" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -862,6 +904,14 @@ msgstr "Копирай" msgid "Paste" msgstr "Постави" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "Създай" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "Копирай всичкия текст" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "Търсене на цвят" @@ -878,6 +928,10 @@ msgstr "Промени името на цвета" msgid "Delete color" msgstr "Изтрий цвета" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "Неименуван" + #: src/ui_widgets/good_color_picker.gd msgid "Color keywords" msgstr "Ключови цветове" @@ -910,6 +964,11 @@ msgstr "Копирай като XML" msgid "Apply Preset" msgstr "Приложи шаблон" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "Относително" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "Няма пътека" @@ -918,10 +977,6 @@ msgstr "Няма пътека" msgid "Absolute" msgstr "Абсолютно" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "Относително" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "Няма точки" @@ -986,45 +1041,53 @@ msgstr "Файлът не можа да бъде отворен." msgid "Check if the file still exists in the selected file path." msgstr "Проверете дали файлът все още съществува на избраното място." +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "Импортираният файл вече се редактира в GodSVG." + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "Ако искаш да приложиш незаписаното състояние на файла, използвай \"Reset SVG\"." + #: src/utils/TranslationUtils.gd -msgid "Open SVG file" -msgstr "Отвори SVG файла" +msgid "Select the next tab" +msgstr "Избери раздела отпред" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "Избери всички елементи" +msgid "Select the previous tab" +msgstr "Избери раздела отзад" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "Дублирай избраните елементи" +msgid "Open SVG externally" +msgstr "Отвори SVG с външно приложение" #: src/utils/TranslationUtils.gd -msgid "Delete the selection" -msgstr "Изтрий селекцията" +msgid "Show SVG in File Manager" +msgstr "Покажи SVG-то във Файловия мениджър" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" -msgstr "Премести избраните елементи нагоре" +msgid "Select all" +msgstr "Избери всички" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" -msgstr "Премести избраните елементи надолу" +msgid "Duplicate the selection" +msgstr "Изтрий селекцията" #: src/utils/TranslationUtils.gd -msgid "Find" -msgstr "Намери" +msgid "Delete the selection" +msgstr "Изтрий селекцията" #: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "Увеличи" +msgid "Move the selection up" +msgstr "Премести селекцията нагоре" #: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "Намали" +msgid "Move the selection down" +msgstr "Премести селекцията надолу" #: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "Рестартирай мащаба" +msgid "Find" +msgstr "Намери" #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" @@ -1121,9 +1184,3 @@ msgstr "" #: src/utils/TranslationUtils.gd msgid "The file extension is empty. Only {extension_list} files are supported." msgstr "Форматът е празен. Единствено {extension_list} файловете са подържани." - -#~ msgid "Enable the color" -#~ msgstr "Включи цвета" - -#~ msgid "Disable the color" -#~ msgstr "Изключи цвета" diff --git a/assets/translations/de.po b/assets/translations/de.po index 30ff28be..f51c8ac7 100644 --- a/assets/translations/de.po +++ b/assets/translations/de.po @@ -35,7 +35,7 @@ msgstr "Nach Aktualisierungen suchen?" msgid "This requires GodSVG to connect to the internet." msgstr "Hierfür muss sich GodSVG mit dem Internet verbinden." -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "OK" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "SVG exportieren" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "Exportieren" @@ -54,35 +54,59 @@ msgid "" "you want to proceed?" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "Achtung!" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Close tab" +msgstr "Pfad schließen" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "Als Liste ansehen" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "Duplizieren" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "Konvertieren zu" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "Nach oben" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "Nach unten" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "Löschen" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "Danach einsetzen" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "Kompakt" @@ -119,6 +143,10 @@ msgstr "3-stelligen oder 6-stelligen Hex" msgid "6-digit hex" msgstr "6-stelligen Hex" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "Kommentar" @@ -140,18 +168,15 @@ msgstr "Diese Gruppe hat keine Elemente." msgid "This group has only one element." msgstr "Diese Gruppe hat nur ein Element." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "Kein \"id\" Attribut definiert." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "Keine Elemente unter diesem Farbverlauf." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "Dieser Farbverlauf ist einfarbig." @@ -163,6 +188,12 @@ msgstr "Beschreibt kein SVG." msgid "Improper nesting." msgstr "Ungültige Formatierung." +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "Schließen" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "Projektgründer und Manager" @@ -203,51 +234,6 @@ msgstr "Godot Drittanbieter-Komponente" msgid "Third-party licenses" msgstr "Drittanbieter-Lizenzen" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "Achtung!" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "Abbrechen" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "Erstellen" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "SVG speichern" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "Datei öffnen" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "SVG zurücksetzen" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "Speicherpfad löschen" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "Optimieren" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "Text kopieren" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "SVG zurücksetzen" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "Einstellungen" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "Visuelles" @@ -276,33 +262,15 @@ msgstr "Griffe anzeigen" msgid "Rasterized SVG" msgstr "SVG rasterisieren" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "Über…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "Rastergröße" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "Nach Aktualisierungen suchen" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "Spenden…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "GodSVG Repository" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "GodSVG Webseite" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "Speicherdaten anzeigen" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "Abbrechen" #: src/ui_parts/element_container.gd msgid "New element" @@ -312,11 +280,6 @@ msgstr "Neues Element" msgid "Dimensions" msgstr "" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "Unbenannt" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "Größe" @@ -353,25 +316,58 @@ msgstr "" msgid "Preview image size is limited to {dimensions}" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "Datei" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "Importieren" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "Bearbeiten" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "Einstellungen" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "Werkzeuge" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "Optimieren" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "Ansicht" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "SVG speichern" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "Einrasten" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "SVG zurücksetzen" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "Über…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "Nach Aktualisierungen suchen" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "Spenden…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "GodSVG Repository" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "GodSVG Webseite" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "Speicherdaten anzeigen" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -401,11 +397,6 @@ msgstr "XML Datei auswählen" msgid "Select an image" msgstr "Bild auswählen" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "Schließen" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "Auswählen" @@ -462,10 +453,6 @@ msgstr "Neue Form" msgid "Import Problems" msgstr "Probleme beim Importieren" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "Importieren" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "Unerkanntes Element" @@ -482,6 +469,26 @@ msgstr "Syntaxfehler" msgid "Add element" msgstr "Element hinzufügen" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "Datei" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "Bearbeiten" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "Werkzeuge" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "Ansicht" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "Einrasten" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "Formatierung" @@ -817,6 +824,33 @@ msgstr "Horizontale Linie zu" msgid "Vertical strip" msgstr "Vertikale Linue zu" +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Create tab" +msgstr "Erstellen" + +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Close all other tabs" +msgstr "Text kopieren" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Create a new tab" +msgstr "Neuen Ordner erstellen" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "Vorabversionen miteinbeziehen" @@ -845,6 +879,18 @@ msgstr "GodSVG ist auf dem neuesten Stand." msgid "New versions" msgstr "Neue Versionen" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "Herauszoomen" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "Hineinzoomen" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "Zoom zurücksetzen" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -867,6 +913,14 @@ msgstr "Kopieren" msgid "Paste" msgstr "Einfügen" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "Erstellen" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "Text kopieren" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "Farbe suchen" @@ -883,6 +937,10 @@ msgstr "Farbnamen ändern" msgid "Delete color" msgstr "Farbe löschen" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "Unbenannt" + #: src/ui_widgets/good_color_picker.gd #, fuzzy msgid "Color keywords" @@ -916,6 +974,11 @@ msgstr "Kopiere als XML" msgid "Apply Preset" msgstr "Voreinstellung anwenden" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "Relativ" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "Keine Pfaddaten" @@ -924,10 +987,6 @@ msgstr "Keine Pfaddaten" msgid "Absolute" msgstr "Absolut" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "Relativ" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "Keine Punkte" @@ -992,47 +1051,59 @@ msgstr "Die Datei konnte nicht geöffnet werden." msgid "Check if the file still exists in the selected file path." msgstr "Prüfen, ob die Datei im ausgewählten Dateipfad noch existiert." +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the next tab" +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the previous tab" +msgstr "" + #: src/utils/TranslationUtils.gd #, fuzzy -msgid "Open SVG file" -msgstr "Datei öffnen" +msgid "Open SVG externally" +msgstr "GodSVG-Repository öffnen" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "Alle Elemente auswählen" +msgid "Show SVG in File Manager" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "Ausgewählte Elemente duplizieren" +#, fuzzy +msgid "Select all" +msgstr "Auswählen" + +#: src/utils/TranslationUtils.gd +#, fuzzy +msgid "Duplicate the selection" +msgstr "Auswahl löschen" #: src/utils/TranslationUtils.gd msgid "Delete the selection" msgstr "Auswahl löschen" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +#, fuzzy +msgid "Move the selection up" msgstr "Ausgewählte Tags nach oben verschieben" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +#, fuzzy +msgid "Move the selection down" msgstr "Ausgewählte Tags nach unten verschieben" #: src/utils/TranslationUtils.gd msgid "Find" msgstr "Finden" -#: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "Hineinzoomen" - -#: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "Herauszoomen" - -#: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "Zoom zurücksetzen" - #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" msgstr "Rasterisiertes SVG anzeigen" @@ -1131,6 +1202,29 @@ msgstr "" "Die Dateierweiterung ist leer. Nur {extension_list} Dateien werden " "unterstützt." +#, fuzzy +#~ msgid "Add new tab" +#~ msgstr "Neues Element hinzufügen" + +#~ msgid "Open file" +#~ msgstr "Datei öffnen" + +#~ msgid "Clear saving path" +#~ msgstr "Speicherpfad löschen" + +#~ msgid "Clear SVG" +#~ msgstr "SVG zurücksetzen" + +#, fuzzy +#~ msgid "Open SVG file" +#~ msgstr "Datei öffnen" + +#~ msgid "Select all elements" +#~ msgstr "Alle Elemente auswählen" + +#~ msgid "Duplicate the selected elements" +#~ msgstr "Ausgewählte Elemente duplizieren" + #~ msgid "Enable the color" #~ msgstr "Farbe aktivieren" @@ -1192,9 +1286,6 @@ msgstr "" #~ msgid "New tag" #~ msgstr "Neues Element hinzufügen" -#~ msgid "Add new tag" -#~ msgstr "Neues Element hinzufügen" - #~ msgid "Paths" #~ msgstr "Pfade" diff --git a/assets/translations/en.po b/assets/translations/en.po index 84187b73..5f63add7 100644 --- a/assets/translations/en.po +++ b/assets/translations/en.po @@ -35,7 +35,7 @@ msgstr "" msgid "This requires GodSVG to connect to the internet." msgstr "" -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "" @@ -54,35 +54,58 @@ msgid "" "you want to proceed?" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +msgid "Close tab" +msgstr "" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "" @@ -119,6 +142,10 @@ msgstr "" msgid "6-digit hex" msgstr "" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "" @@ -139,18 +166,15 @@ msgstr "" msgid "This group has only one element." msgstr "" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "" @@ -162,6 +186,12 @@ msgstr "" msgid "Improper nesting." msgstr "" +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "" @@ -202,51 +232,6 @@ msgstr "" msgid "Third-party licenses" msgstr "" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "" @@ -275,32 +260,14 @@ msgstr "" msgid "Rasterized SVG" msgstr "" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "" - -#: src/ui_parts/display.gd -msgid "View savedata" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" msgstr "" #: src/ui_parts/element_container.gd @@ -311,11 +278,6 @@ msgstr "" msgid "Dimensions" msgstr "" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "" @@ -352,24 +314,57 @@ msgstr "" msgid "Preview image size is limited to {dimensions}" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" +#: src/ui_parts/global_actions.gd +msgid "Settings" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" msgstr "" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" msgstr "" -#: src/ui_parts/global_menu.gd -msgid "Snap" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" msgstr "" #: src/ui_parts/good_file_dialog.gd @@ -400,11 +395,6 @@ msgstr "" msgid "Select an image" msgstr "" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "" @@ -459,10 +449,6 @@ msgstr "" msgid "Import Problems" msgstr "" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "" @@ -479,6 +465,26 @@ msgstr "" msgid "Add element" msgstr "" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "" @@ -801,6 +807,30 @@ msgstr "" msgid "Vertical strip" msgstr "" +#: src/ui_parts/tab_bar.gd +msgid "Create tab" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close all other tabs" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +msgid "Create a new tab" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "" @@ -829,6 +859,18 @@ msgstr "" msgid "New versions" msgstr "" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -851,6 +893,14 @@ msgstr "" msgid "Paste" msgstr "" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "" @@ -867,6 +917,10 @@ msgstr "" msgid "Delete color" msgstr "" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "" + #: src/ui_widgets/good_color_picker.gd msgid "Color keywords" msgstr "" @@ -899,6 +953,11 @@ msgstr "" msgid "Apply Preset" msgstr "" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "" @@ -907,10 +966,6 @@ msgstr "" msgid "Absolute" msgstr "" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "" @@ -975,44 +1030,52 @@ msgstr "" msgid "Check if the file still exists in the selected file path." msgstr "" +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + #: src/utils/TranslationUtils.gd -msgid "Open SVG file" +msgid "Select the next tab" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Select all elements" +msgid "Select the previous tab" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" +msgid "Open SVG externally" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Delete the selection" +msgid "Show SVG in File Manager" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +msgid "Select all" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +msgid "Duplicate the selection" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Find" +msgid "Delete the selection" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Zoom in" +msgid "Move the selection up" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Zoom out" +msgid "Move the selection down" msgstr "" #: src/utils/TranslationUtils.gd -msgid "Zoom reset" +msgid "Find" msgstr "" #: src/utils/TranslationUtils.gd diff --git a/assets/translations/fr.po b/assets/translations/fr.po index cb6a1e09..c17d38e4 100644 --- a/assets/translations/fr.po +++ b/assets/translations/fr.po @@ -35,7 +35,7 @@ msgstr "Vérifier les mises à jour ?" msgid "This requires GodSVG to connect to the internet." msgstr "Ceci nécessite que GodSVG se connecte à Internet." -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "OK" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "Exporter en SVG" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "Exporter" @@ -56,35 +56,59 @@ msgstr "" "Le graphique ne peut être exporté qu'en SVG car sa taille n'est pas définie. " "Voulez-vous continuer?" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "Alerte !" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Close tab" +msgstr "Fermer le chemin" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "Voir en liste" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "Dupliquer" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "Convertir en" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "Remonter" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "Descendre" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "Supprimer" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "Insérer après" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "Compact" @@ -121,6 +145,10 @@ msgstr "Héxadécimal de 3 ou 6 chiffres" msgid "6-digit hex" msgstr "Héxadécimal de 6 chiffres" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "Commentaire" @@ -141,18 +169,15 @@ msgstr "Ce groupe n'a aucun élément." msgid "This group has only one element." msgstr "Ce groupe n'a qu'un seul élément." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "Aucun attribut « id » défini." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "Aucun élément en dessous de ce dégradé." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "Ce dégradé est une couleur solide." @@ -164,6 +189,12 @@ msgstr "Ne décrit pas un SVG." msgid "Improper nesting." msgstr "Formatage incorrect." +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "Fermer" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "Fondateur et gestionnaire du projet" @@ -204,51 +235,6 @@ msgstr "Composants Godot tiers" msgid "Third-party licenses" msgstr "Licences tierces" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "Alerte !" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "Annuler" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "Créer" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "Sauvegarder le SVG" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "Ouvrir le fichier" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "Rénitialiser le SVG" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "Vider le chemin d'enregistrement" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "Optimiser" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "Copier tout le texte" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "Vider le SVG" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "Paramètres" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "Visuels" @@ -277,33 +263,15 @@ msgstr "Montrer les poignées" msgid "Rasterized SVG" msgstr "Rastériser le SVG" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "À propos…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "Taille d'aimantation" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "Vérifier les mises à jour" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "Faire un don…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "Dépôt de GodSVG" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "Site web de GodSVG" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "Voir les données de sauvegarde" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "Annuler" #: src/ui_parts/element_container.gd msgid "New element" @@ -313,11 +281,6 @@ msgstr "Nouvel élément" msgid "Dimensions" msgstr "Dimensions" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "Sans nom" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "Taille" @@ -354,25 +317,58 @@ msgstr "Hauteur" msgid "Preview image size is limited to {dimensions}" msgstr "La taille de l'image de prévisualisation est limitée à {dimensions}" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "Fichier" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "Importer" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "Édition" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "Paramètres" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "Outil" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "Optimiser" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "Affichage" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "Sauvegarder le SVG" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "Aimanter" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "Rénitialiser le SVG" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "À propos…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "Vérifier les mises à jour" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "Faire un don…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "Dépôt de GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "Site web de GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "Voir les données de sauvegarde" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -402,11 +398,6 @@ msgstr "Sélectionner un fichier XML" msgid "Select an image" msgstr "Sélectionner une image" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "Fermer" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "Sélectionner" @@ -463,10 +454,6 @@ msgstr "Nouvelle forme" msgid "Import Problems" msgstr "Importer des problèmes" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "Importer" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "Élément non reconnu" @@ -483,6 +470,26 @@ msgstr "Erreur de syntaxe" msgid "Add element" msgstr "Ajouter un élément" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "Fichier" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "Édition" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "Outil" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "Affichage" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "Aimanter" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "Formatage" @@ -818,6 +825,33 @@ msgstr "Ligne horizontale vers" msgid "Vertical strip" msgstr "Ligne verticale vers" +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Create tab" +msgstr "Créer" + +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Close all other tabs" +msgstr "Copier tout le texte" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Create a new tab" +msgstr "Créer un nouveau dossier" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "Inclure les versions préliminaires" @@ -846,6 +880,18 @@ msgstr "GodSVG est à jour." msgid "New versions" msgstr "Nouvelles versions" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "Zoom arrière" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "Zoom avant" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "Rénitialisation de zoom" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -868,6 +914,14 @@ msgstr "Copier" msgid "Paste" msgstr "Coller" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "Créer" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "Copier tout le texte" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "Rechercher la couleur" @@ -884,6 +938,10 @@ msgstr "Éditer le nom de la couleur" msgid "Delete color" msgstr "Supprimer la couleur" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "Sans nom" + #: src/ui_widgets/good_color_picker.gd #, fuzzy msgid "Color keywords" @@ -917,6 +975,11 @@ msgstr "Copier en tant que XML" msgid "Apply Preset" msgstr "Appliquer le préréglage" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "Relatif" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "Aucune donnée de chemin" @@ -925,10 +988,6 @@ msgstr "Aucune donnée de chemin" msgid "Absolute" msgstr "Absolu" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "Relatif" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "Aucun point" @@ -993,47 +1052,59 @@ msgstr "Le fichier n'a pas pu être ouvert." msgid "Check if the file still exists in the selected file path." msgstr "Vérifiez si le fichier existe encore au chemin selectionné." +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the next tab" +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the previous tab" +msgstr "" + #: src/utils/TranslationUtils.gd #, fuzzy -msgid "Open SVG file" -msgstr "Ouvrir le fichier" +msgid "Open SVG externally" +msgstr "Ouvrir le dépôt de GodSVG" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "Sélectionner tous les éléments" +msgid "Show SVG in File Manager" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "Dupliquer les éléments sélectionnés" +#, fuzzy +msgid "Select all" +msgstr "Sélectionner" + +#: src/utils/TranslationUtils.gd +#, fuzzy +msgid "Duplicate the selection" +msgstr "Supprimer les éléments sélectionnés" #: src/utils/TranslationUtils.gd msgid "Delete the selection" msgstr "Supprimer les éléments sélectionnés" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +#, fuzzy +msgid "Move the selection up" msgstr "Remonter les éléments sélectionnés" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +#, fuzzy +msgid "Move the selection down" msgstr "Descendre les éléments sélectionnés" #: src/utils/TranslationUtils.gd msgid "Find" msgstr "Rechercher" -#: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "Zoom avant" - -#: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "Zoom arrière" - -#: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "Rénitialisation de zoom" - #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" msgstr "Montrer le SVG rastérisé" @@ -1132,6 +1203,25 @@ msgstr "" "L'extension de fichier est vide. Seuls les fichiers {extension_list} sont " "supportés." +#~ msgid "Open file" +#~ msgstr "Ouvrir le fichier" + +#~ msgid "Clear saving path" +#~ msgstr "Vider le chemin d'enregistrement" + +#~ msgid "Clear SVG" +#~ msgstr "Vider le SVG" + +#, fuzzy +#~ msgid "Open SVG file" +#~ msgstr "Ouvrir le fichier" + +#~ msgid "Select all elements" +#~ msgstr "Sélectionner tous les éléments" + +#~ msgid "Duplicate the selected elements" +#~ msgstr "Dupliquer les éléments sélectionnés" + #~ msgid "Enable the color" #~ msgstr "Activer la couleur" diff --git a/assets/translations/nl.po b/assets/translations/nl.po index 937cab71..c4891f10 100644 --- a/assets/translations/nl.po +++ b/assets/translations/nl.po @@ -35,7 +35,7 @@ msgstr "Voor updates controleren?" msgid "This requires GodSVG to connect to the internet." msgstr "Hiervoor moet GodSVG verbinding maken met het internet." -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "OK" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "Exporteer SVG" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "Exporteren" @@ -56,35 +56,59 @@ msgstr "" "Het beeld kan alleen maar als SVG geëxporteerd worden want zijn maat is niet " "gedefiniëerd. Wil je verder gaan?" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "Aandacht!" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Close tab" +msgstr "Pad sluiten" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "Bekijken In Lijst" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "Dupliceren" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "Omzetten Naar" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "Naar Boven" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "Naar Onder" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "Verwijderen" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "Erna Invoegen" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "Compact" @@ -121,6 +145,10 @@ msgstr "3-cijferig of 6-cijferige hex" msgid "6-digit hex" msgstr "6-cijferige hex" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "Commentaar" @@ -141,18 +169,15 @@ msgstr "Deze groep bevat geen elementen." msgid "This group has only one element." msgstr "Deze groep bevat maar één element." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "Geen \"id\" attribuut gedefineerd." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "Geen elementen onder deze kleurovergang." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "Deze kleurovergang is een vaste kleur." @@ -164,6 +189,12 @@ msgstr "Beschrijft geen SVG." msgid "Improper nesting." msgstr "Onjuiste nesting." +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "Afluiten" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "Projectoprichter en Manager" @@ -204,51 +235,6 @@ msgstr "Godot derde partij componenten" msgid "Third-party licenses" msgstr "Derde partij Licenties" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "Aandacht!" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "Annuleren" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "Creëren" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "SVG opslaan" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "Open bestand" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "SVG Resetten" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "Ontruim opslagpad" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "Optimaliseren" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "Kopiëer alle tekst" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "SVG ontruimen" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "Instellingen" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "Visuelen" @@ -277,33 +263,15 @@ msgstr "Handvaten weergeven" msgid "Rasterized SVG" msgstr "Gerasterd SVG" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "Betreffende…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "Maat inknappen" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "Nakijken voor updates" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "Doneren…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "GodSVG opslagplaats" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "GodSVG website" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "Bekijk opslaggegevens" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "Annuleren" #: src/ui_parts/element_container.gd msgid "New element" @@ -313,11 +281,6 @@ msgstr "Nieuw element" msgid "Dimensions" msgstr "Afmetingen" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "Onbenoemd" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "Maat" @@ -354,25 +317,58 @@ msgstr "Hoogte" msgid "Preview image size is limited to {dimensions}" msgstr "Voorbeeldafbeelding maat is beperkt tot {dimensions}" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "Bestand" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "Importeren" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "Bewerken" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "Instellingen" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "Gereedschap" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "Optimaliseren" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "Zicht" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "SVG opslaan" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "Knappen" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "SVG Resetten" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "Betreffende…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "Nakijken voor updates" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "Doneren…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "GodSVG opslagplaats" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "GodSVG website" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "Bekijk opslaggegevens" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -402,11 +398,6 @@ msgstr "Kies een XML bestand uit" msgid "Select an image" msgstr "Kies een afbeedling" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "Afluiten" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "Selecteren" @@ -463,10 +454,6 @@ msgstr "Nieuwe vorm" msgid "Import Problems" msgstr "Importproblemen" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "Importeren" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "Onherkende element" @@ -483,6 +470,26 @@ msgstr "Syntaxfout" msgid "Add element" msgstr "Element toevoegen" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "Bestand" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "Bewerken" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "Gereedschap" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "Zicht" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "Knappen" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "Formattering" @@ -813,6 +820,33 @@ msgstr "Horizontaal met twee rijen" msgid "Vertical strip" msgstr "Vertikale lijn" +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Create tab" +msgstr "Creëren" + +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Close all other tabs" +msgstr "Kopiëer alle tekst" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Create a new tab" +msgstr "Nieuwe map creëren" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "Voorpublicaties includen" @@ -841,6 +875,18 @@ msgstr "GodSVG is up-to-date." msgid "New versions" msgstr "Nieuwe versies" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "Uitzoomen" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "Inzoomen" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "Zoom resetten" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -863,6 +909,14 @@ msgstr "Kopiëren" msgid "Paste" msgstr "Plakken" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "Creëren" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "Kopiëer alle tekst" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "Zoekkleur" @@ -879,6 +933,10 @@ msgstr "Kleurnaam bewerken" msgid "Delete color" msgstr "Kleur verwijderen" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "Onbenoemd" + #: src/ui_widgets/good_color_picker.gd #, fuzzy msgid "Color keywords" @@ -912,6 +970,11 @@ msgstr "Als XML kopiëren" msgid "Apply Preset" msgstr "Voorinstelling toepassen" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "Relatief" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "Geen padgegevens" @@ -920,10 +983,6 @@ msgstr "Geen padgegevens" msgid "Absolute" msgstr "Absoluut" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "Relatief" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "Geen punten" @@ -988,45 +1047,58 @@ msgstr "Het bestand kon niet worden geopend." msgid "Check if the file still exists in the selected file path." msgstr "Kijk na of het bestand nog steeds bestaat in het gekozen bestandspad" +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + #: src/utils/TranslationUtils.gd -msgid "Open SVG file" -msgstr "Open SVG bestand" +msgid "Select the next tab" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "Selecteer alle elementen" +msgid "Select the previous tab" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "Dupliceer de gekozen elementen" +#, fuzzy +msgid "Open SVG externally" +msgstr "Open GodSVG opslagplaats" #: src/utils/TranslationUtils.gd -msgid "Delete the selection" -msgstr "Verwijder de selectie" +msgid "Show SVG in File Manager" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" -msgstr "Beweeg the gekozen elementen omhoog" +#, fuzzy +msgid "Select all" +msgstr "Selecteren" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" -msgstr "Beweeg the gekozen elementen omlaag" +#, fuzzy +msgid "Duplicate the selection" +msgstr "Verwijder de selectie" #: src/utils/TranslationUtils.gd -msgid "Find" -msgstr "Vind" +msgid "Delete the selection" +msgstr "Verwijder de selectie" #: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "Inzoomen" +#, fuzzy +msgid "Move the selection up" +msgstr "Beweeg the gekozen elementen omhoog" #: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "Uitzoomen" +#, fuzzy +msgid "Move the selection down" +msgstr "Beweeg the gekozen elementen omlaag" #: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "Zoom resetten" +msgid "Find" +msgstr "Vind" #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" @@ -1126,6 +1198,24 @@ msgstr "" "Deze bestandsextensie is leeg. Alleen {extension_list} bestanden zijn " "ondersteund." +#~ msgid "Open file" +#~ msgstr "Open bestand" + +#~ msgid "Clear saving path" +#~ msgstr "Ontruim opslagpad" + +#~ msgid "Clear SVG" +#~ msgstr "SVG ontruimen" + +#~ msgid "Open SVG file" +#~ msgstr "Open SVG bestand" + +#~ msgid "Select all elements" +#~ msgstr "Selecteer alle elementen" + +#~ msgid "Duplicate the selected elements" +#~ msgstr "Dupliceer de gekozen elementen" + #~ msgid "Enable the color" #~ msgstr "De kleur inschakelen" diff --git a/assets/translations/ru.po b/assets/translations/ru.po index 9b42f36b..deedffa6 100644 --- a/assets/translations/ru.po +++ b/assets/translations/ru.po @@ -36,7 +36,7 @@ msgstr "Проверить обновления?" msgid "This requires GodSVG to connect to the internet." msgstr "Для этого необходимо подключение к Интернету." -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "Хорошо" @@ -45,7 +45,7 @@ msgid "Export SVG" msgstr "Экспортировать SVG" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "Экспортовать" @@ -57,35 +57,59 @@ msgstr "" "Изображение можно экспортировать только как SVG, поскольку его размеры не " "заданы. Желаете продолжить?" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "Внимание!" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Close tab" +msgstr "Закрыть путь" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "Просмотреть в списке" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "Дублировать" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "Конвертировать в" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "Подвинуть вверх" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "Подвинуть вниз" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "Удалить" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "Вставить после" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "Компактно" @@ -122,6 +146,10 @@ msgstr "3 или 6 цифровое шестандацитиричное зна msgid "6-digit hex" msgstr "6 цифровое шестандцатяричное значение" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "Комментарий" @@ -142,18 +170,15 @@ msgstr "В этой групе нет элементов." msgid "This group has only one element." msgstr "В этой группе только один элемент." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "Атрибут \"id\" не определен." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "Нет елементов под этим градиентом." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "Этот градиент это обычный цвет." @@ -165,6 +190,12 @@ msgstr "Не является описанием SVG." msgid "Improper nesting." msgstr "Неправильное вложение." +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "Закрыть" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "Основатель и руководитель проекта" @@ -205,51 +236,6 @@ msgstr "Компоненты Godot от третьих лиц" msgid "Third-party licenses" msgstr "Лицензии третьих лиц" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "Внимание!" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "Отменить" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "Создать" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "Сохранить SVG" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "Открыть файл" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "Сбросить SVG" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "Очистить путь сохранения" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "Оптимизировать" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "Скопировать весь текст" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "Очистить SVG" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "Настройки" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "Внешний вид" @@ -278,33 +264,15 @@ msgstr "Показать ручки редактирования" msgid "Rasterized SVG" msgstr "Растеризовать SVG" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "Про программу…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "Размер привязки" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "Проверить обновления" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "Сделать пожертвование…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "Репозиторий GodSVG" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "Веб-сайт GodSVG" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "Просмотреть даные сохранения" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "Отменить" #: src/ui_parts/element_container.gd msgid "New element" @@ -314,11 +282,6 @@ msgstr "Новый элемент" msgid "Dimensions" msgstr "Размеры" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "Без названия" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "Размер" @@ -356,25 +319,58 @@ msgid "Preview image size is limited to {dimensions}" msgstr "" "Размер предварительного просмотра изображения ограничен до {dimensions}" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "Файл" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "Импортировать" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "Редактировать" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "Настройки" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "Инструмент" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "Оптимизировать" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "Просмотр" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "Сохранить SVG" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "Привязка" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "Сбросить SVG" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "Про программу…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "Проверить обновления" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "Сделать пожертвование…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "Репозиторий GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "Веб-сайт GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "Просмотреть даные сохранения" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -404,11 +400,6 @@ msgstr "Выбрать XML файл" msgid "Select an image" msgstr "Выбрать изображение" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "Закрыть" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "Выбрать" @@ -465,10 +456,6 @@ msgstr "Новая привязка" msgid "Import Problems" msgstr "Проблемы с импортированием" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "Импортировать" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "Неизвестный элемент" @@ -485,6 +472,26 @@ msgstr "Синтаксическая ошибка" msgid "Add element" msgstr "Добавить элемент" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "Файл" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "Редактировать" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "Инструмент" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "Просмотр" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "Привязка" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "Форматирование" @@ -819,6 +826,33 @@ msgstr "Горизонтальная линия до" msgid "Vertical strip" msgstr "Вертикальная линия до" +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Create tab" +msgstr "Создать" + +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Close all other tabs" +msgstr "Скопировать весь текст" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Create a new tab" +msgstr "Создать новую папку" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "Включить пре-релизы" @@ -847,6 +881,18 @@ msgstr "Установлена последняя версия GodSVG." msgid "New versions" msgstr "Новые версии" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "Отдалить масштаб" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "Приблизить масштаб" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "Сбросить масштаб" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -869,6 +915,14 @@ msgstr "Скопировать" msgid "Paste" msgstr "Вставить" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "Создать" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "Скопировать весь текст" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "Искать цвет" @@ -885,6 +939,10 @@ msgstr "Редактировать название цвета" msgid "Delete color" msgstr "Удалить цвет" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "Без названия" + #: src/ui_widgets/good_color_picker.gd #, fuzzy msgid "Color keywords" @@ -918,6 +976,11 @@ msgstr "Скопировать как XML" msgid "Apply Preset" msgstr "Принять пресет" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "Относительно" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "Нет данных пути" @@ -926,10 +989,6 @@ msgstr "Нет данных пути" msgid "Absolute" msgstr "Абсолютно" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "Относительно" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "Нет точек" @@ -994,47 +1053,59 @@ msgstr "Файл невозможно открыть." msgid "Check if the file still exists in the selected file path." msgstr "Проверить, если файл все еще существует по выбранному пути." +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the next tab" +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the previous tab" +msgstr "" + #: src/utils/TranslationUtils.gd #, fuzzy -msgid "Open SVG file" -msgstr "Открыть файл" +msgid "Open SVG externally" +msgstr "Открыть репозиторий GodSVG" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "Выбрать все элементы" +msgid "Show SVG in File Manager" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "Дублировать выбранные элементы" +#, fuzzy +msgid "Select all" +msgstr "Выбрать" + +#: src/utils/TranslationUtils.gd +#, fuzzy +msgid "Duplicate the selection" +msgstr "Удалить все выбранные теги" #: src/utils/TranslationUtils.gd msgid "Delete the selection" msgstr "Удалить все выбранные теги" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +#, fuzzy +msgid "Move the selection up" msgstr "Подвинуть вверх все выбранные теги" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +#, fuzzy +msgid "Move the selection down" msgstr "Подвинуть вниз все выбранные элементы" #: src/utils/TranslationUtils.gd msgid "Find" msgstr "Найти" -#: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "Приблизить масштаб" - -#: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "Отдалить масштаб" - -#: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "Сбросить масштаб" - #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" msgstr "Показать растеризованый SVG" @@ -1131,6 +1202,29 @@ msgstr "" msgid "The file extension is empty. Only {extension_list} files are supported." msgstr "Расширение файла пустое. Поддерживаются только {extension_list} файлы." +#, fuzzy +#~ msgid "Add new tab" +#~ msgstr "Добавить новый тег" + +#~ msgid "Open file" +#~ msgstr "Открыть файл" + +#~ msgid "Clear saving path" +#~ msgstr "Очистить путь сохранения" + +#~ msgid "Clear SVG" +#~ msgstr "Очистить SVG" + +#, fuzzy +#~ msgid "Open SVG file" +#~ msgstr "Открыть файл" + +#~ msgid "Select all elements" +#~ msgstr "Выбрать все элементы" + +#~ msgid "Duplicate the selected elements" +#~ msgstr "Дублировать выбранные элементы" + #~ msgid "Enable the color" #~ msgstr "Активировать цвет" @@ -1194,9 +1288,6 @@ msgstr "Расширение файла пустое. Поддерживаютс #~ msgid "New tag" #~ msgstr "Новый тег" -#~ msgid "Add new tag" -#~ msgstr "Добавить новый тег" - #~ msgid "Paths" #~ msgstr "Пути" diff --git a/assets/translations/uk.po b/assets/translations/uk.po index 84d72d33..1242430f 100644 --- a/assets/translations/uk.po +++ b/assets/translations/uk.po @@ -35,7 +35,7 @@ msgstr "Перевірити оновлення?" msgid "This requires GodSVG to connect to the internet." msgstr "Ця опція потребує інтернет-з'єднання." -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "Добре" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "Експортувати SVG" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "Експортувати" @@ -56,35 +56,59 @@ msgstr "" "Зображення можна експортувати тільки як SVG, оскільки його розміри не " "задані. Бажаєте продовжити?" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "Увага!" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Close tab" +msgstr "Закрити шлях" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "Переглянути списком" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "Дублювати" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "Конвертувати в" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "Пересунути вгору" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "Пересунути вниз" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "Видалити" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "Вставити після" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "Компактно" @@ -121,6 +145,10 @@ msgstr "3 або 6 значне шістнадцятирічне число" msgid "6-digit hex" msgstr "6 значне шістнадцятирічне число" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "Коментар" @@ -141,18 +169,15 @@ msgstr "Ця група не має елементів." msgid "This group has only one element." msgstr "Ця група має тільки один елемент." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "Не вказано \"id\" атрибуту." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "Немає елементів під цим градієнтом." -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "Цей градієнт це суцільний колір." @@ -164,6 +189,12 @@ msgstr "Не є описом SVG." msgid "Improper nesting." msgstr "Неправильне вкладення." +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "Закрити" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "Засновник і керівник проекту" @@ -204,51 +235,6 @@ msgstr "Компоненти Godot від третіх сторін" msgid "Third-party licenses" msgstr "Ліцензії третіх осіб" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "Увага!" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "Скасувати" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "Створити" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "Зберегти SVG" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "Відкрити файл" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "Скинути SVG" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "Очистити шлях збереження" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "Оптимізувати" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "Скопіювати весь текст" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "Очистити SVG" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "Налаштування" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "Зовнішній вигляд" @@ -278,33 +264,15 @@ msgstr "Показати ручки редагування" msgid "Rasterized SVG" msgstr "Растеризувати SVG" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "Про додаток…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "Розмір прилипання" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "Перевірити оновлення" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "Зробити пожертвування…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "Репозиторій GodSVG" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "Веб-сайт GodSVG" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "Переглянути дані збереження" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "Скасувати" #: src/ui_parts/element_container.gd msgid "New element" @@ -314,11 +282,6 @@ msgstr "Новий елемент" msgid "Dimensions" msgstr "Розміри" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "Без назви" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "Розмір" @@ -355,25 +318,58 @@ msgstr "Висота" msgid "Preview image size is limited to {dimensions}" msgstr "Розмір попереднього перегляду зображення обмежено до {dimensions}" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "Файл" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "Імпортувати" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "Редагування" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "Налаштування" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "Інструмент" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "Оптимізувати" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "Перегляд" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "Зберегти SVG" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "Прилипання" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "Скинути SVG" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "Про додаток…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "Перевірити оновлення" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "Зробити пожертвування…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "Репозиторій GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "Веб-сайт GodSVG" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "Переглянути дані збереження" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -403,11 +399,6 @@ msgstr "Обрати XML файл" msgid "Select an image" msgstr "Обрати зображення" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "Закрити" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "Обрати" @@ -464,10 +455,6 @@ msgstr "Нова форма" msgid "Import Problems" msgstr "Проблема з імпортуванням" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "Імпортувати" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "Невідомий елемент" @@ -484,6 +471,26 @@ msgstr "Синтаксична помилка" msgid "Add element" msgstr "Додати елемент" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "Файл" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "Редагування" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "Інструмент" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "Перегляд" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "Прилипання" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "Форматування" @@ -823,6 +830,33 @@ msgstr "Горизонтальна лінія до" msgid "Vertical strip" msgstr "Вертикальна лінія до" +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Create tab" +msgstr "Створити" + +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Close all other tabs" +msgstr "Скопіювати весь текст" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Create a new tab" +msgstr "Створити нову теку" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "Включати тестові версії" @@ -851,6 +885,18 @@ msgstr "GodSVG оновлено до останньої версії." msgid "New versions" msgstr "Нові версії" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "Зменшити масштаб" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "Збільшити масштаб" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "Скинути масштаб" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -873,6 +919,14 @@ msgstr "Скопіювати" msgid "Paste" msgstr "Вставити" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "Створити" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "Скопіювати весь текст" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "Шукати колір" @@ -889,6 +943,10 @@ msgstr "Редагувати назву кольору" msgid "Delete color" msgstr "Видалити колір" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "Без назви" + #: src/ui_widgets/good_color_picker.gd #, fuzzy msgid "Color keywords" @@ -922,6 +980,11 @@ msgstr "Скопіювати як XML" msgid "Apply Preset" msgstr "Застосувати пресет" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "Відносно" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "Немає даних шляху" @@ -930,10 +993,6 @@ msgstr "Немає даних шляху" msgid "Absolute" msgstr "Абсолютно" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "Відносно" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "Немає точок" @@ -998,47 +1057,59 @@ msgstr "Цей файл неможливо відкрити." msgid "Check if the file still exists in the selected file path." msgstr "Перевірити, чи файл все щє існує по обраному шляху." +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the next tab" +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the previous tab" +msgstr "" + #: src/utils/TranslationUtils.gd #, fuzzy -msgid "Open SVG file" -msgstr "Відкрити файл" +msgid "Open SVG externally" +msgstr "Відкрити репозиторій GodSVG" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "Обрати всі елементи" +msgid "Show SVG in File Manager" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "Дублювати обрані елементи" +#, fuzzy +msgid "Select all" +msgstr "Обрати" + +#: src/utils/TranslationUtils.gd +#, fuzzy +msgid "Duplicate the selection" +msgstr "Видалити усі обрані теги" #: src/utils/TranslationUtils.gd msgid "Delete the selection" msgstr "Видалити усі обрані теги" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +#, fuzzy +msgid "Move the selection up" msgstr "Пересунути всі обрані елементи вгору" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +#, fuzzy +msgid "Move the selection down" msgstr "Пересунути всі обрані елементи вниз" #: src/utils/TranslationUtils.gd msgid "Find" msgstr "Знайти" -#: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "Збільшити масштаб" - -#: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "Зменшити масштаб" - -#: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "Скинути масштаб" - #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" msgstr "Показати растеризуваний SVG" @@ -1136,6 +1207,29 @@ msgstr "" msgid "The file extension is empty. Only {extension_list} files are supported." msgstr "Розширення файлу порожнє. Тільки {extension_list} файли підтримуються." +#, fuzzy +#~ msgid "Add new tab" +#~ msgstr "Додати новий тег" + +#~ msgid "Open file" +#~ msgstr "Відкрити файл" + +#~ msgid "Clear saving path" +#~ msgstr "Очистити шлях збереження" + +#~ msgid "Clear SVG" +#~ msgstr "Очистити SVG" + +#, fuzzy +#~ msgid "Open SVG file" +#~ msgstr "Відкрити файл" + +#~ msgid "Select all elements" +#~ msgstr "Обрати всі елементи" + +#~ msgid "Duplicate the selected elements" +#~ msgstr "Дублювати обрані елементи" + #~ msgid "Enable the color" #~ msgstr "Активувати колір" @@ -1199,9 +1293,6 @@ msgstr "Розширення файлу порожнє. Тільки {extension_ #~ msgid "New tag" #~ msgstr "Новий тег" -#~ msgid "Add new tag" -#~ msgstr "Додати новий тег" - #~ msgid "Paths" #~ msgstr "Шляхи" diff --git a/assets/translations/zh.po b/assets/translations/zh.po index ffd4ca37..0304b580 100644 --- a/assets/translations/zh.po +++ b/assets/translations/zh.po @@ -35,7 +35,7 @@ msgstr "检查更新?" msgid "This requires GodSVG to connect to the internet." msgstr "这需要 GodSVG 连接互联网。" -#: src/autoload/HandlerGUI.gd src/ui_parts/alert_dialog.gd +#: src/autoload/HandlerGUI.gd src/ui_widgets/alert_dialog.gd msgid "OK" msgstr "确定" @@ -44,7 +44,7 @@ msgid "Export SVG" msgstr "导出 SVG" #: src/autoload/HandlerGUI.gd src/ui_parts/export_menu.gd -#: src/utils/TranslationUtils.gd +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd msgid "Export" msgstr "导出" @@ -54,35 +54,59 @@ msgid "" "you want to proceed?" msgstr "此图像只能以 SVG 格式导出,因为其大小未定义。您确定要继续吗?" -#: src/autoload/Indications.gd +#: src/autoload/State.gd src/ui_parts/good_file_dialog.gd +#: src/ui_widgets/alert_dialog.gd +msgid "Alert!" +msgstr "警告!" + +#: src/autoload/State.gd src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Close tab" +msgstr "闭合路径" + +#: src/autoload/State.gd +msgid "Restore" +msgstr "" + +#: src/autoload/State.gd msgid "View In List" msgstr "在列表中查看" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Duplicate" msgstr "克隆" -#: src/autoload/Indications.gd +#: src/autoload/State.gd msgid "Convert To" msgstr "转换为" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Up" msgstr "上移" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd msgid "Move Down" msgstr "下移" -#: src/autoload/Indications.gd src/ui_widgets/palette_config.gd +#: src/autoload/State.gd src/ui_widgets/palette_config.gd #: src/ui_widgets/setting_shortcut.gd src/ui_widgets/transform_popup.gd msgid "Delete" msgstr "删除" -#: src/autoload/Indications.gd src/ui_widgets/transform_popup.gd +#: src/autoload/State.gd src/ui_widgets/transform_popup.gd msgid "Insert After" msgstr "在后方插入" +#: src/autoload/State.gd +msgid "The last edited state of this tab could not be found." +msgstr "" + +#: src/autoload/State.gd +msgid "" +"The tab is bound to the file path {file_path}. Do you want to restore from " +"this path?" +msgstr "" + #: src/config_classes/Formatter.gd msgid "Compact" msgstr "压缩" @@ -119,6 +143,10 @@ msgstr "3 位或 6 位十六进制" msgid "6-digit hex" msgstr "6 位十六进制" +#: src/config_classes/TabData.gd +msgid "Unsaved" +msgstr "" + #: src/data_classes/BasicXNode.gd msgid "Comment" msgstr "注释" @@ -139,18 +167,15 @@ msgstr "此组内没有元素。" msgid "This group has only one element." msgstr "此组内只有一个元素。" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No \"id\" attribute defined." msgstr "\"id\" 属性未定义。" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "No elements under this gradient." msgstr "此渐变下没有 元素。" -#: src/data_classes/ElementLinearGradient.gd -#: src/data_classes/ElementRadialGradient.gd +#: src/data_classes/GradientUtils.gd msgid "This gradient is a solid color." msgstr "此渐变为单一颜色。" @@ -162,6 +187,12 @@ msgstr "文本不是 SVG 格式。" msgid "Improper nesting." msgstr "错误的嵌套。" +#: src/ui_parts/about_menu.gd src/ui_parts/good_file_dialog.gd +#: src/ui_parts/settings_menu.gd src/ui_parts/shortcut_panel_config.gd +#: src/ui_parts/update_menu.gd +msgid "Close" +msgstr "关闭" + #: src/ui_parts/about_menu.gd msgid "Project Founder and Manager" msgstr "项目创立者与管理者" @@ -202,51 +233,6 @@ msgstr "Godot 第三方组件" msgid "Third-party licenses" msgstr "第三方协议" -#: src/ui_parts/alert_dialog.gd src/ui_parts/good_file_dialog.gd -msgid "Alert!" -msgstr "警告!" - -#: src/ui_parts/choose_name_dialog.gd src/ui_parts/confirm_dialog.gd -#: src/ui_parts/export_menu.gd src/ui_parts/import_warning_menu.gd -msgid "Cancel" -msgstr "取消" - -#: src/ui_parts/choose_name_dialog.gd -msgid "Create" -msgstr "创建" - -#: src/ui_parts/code_editor.gd src/ui_parts/good_file_dialog.gd -msgid "Save SVG" -msgstr "保存 SVG" - -#: src/ui_parts/code_editor.gd -msgid "Open file" -msgstr "打开文件" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Reset SVG" -msgstr "重置 SVG" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear saving path" -msgstr "清除保存路径" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Optimize" -msgstr "优化" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Copy all text" -msgstr "复制所有文本" - -#: src/ui_parts/code_editor.gd src/utils/TranslationUtils.gd -msgid "Clear SVG" -msgstr "清除 SVG" - -#: src/ui_parts/display.gd -msgid "Settings" -msgstr "设置" - #: src/ui_parts/display.gd msgid "Visuals" msgstr "显示" @@ -275,33 +261,15 @@ msgstr "显示拖拽框" msgid "Rasterized SVG" msgstr "光栅化 SVG" -#: src/ui_parts/display.gd -msgid "About…" -msgstr "关于…" - #: src/ui_parts/display.gd msgid "Snap size" msgstr "吸附大小" -#: src/ui_parts/display.gd src/utils/TranslationUtils.gd -msgid "Check for updates" -msgstr "检查更新" - -#: src/ui_parts/display.gd -msgid "Donate…" -msgstr "捐赠…" - -#: src/ui_parts/display.gd -msgid "GodSVG repository" -msgstr "GodSVG 代码仓库" - -#: src/ui_parts/display.gd -msgid "GodSVG website" -msgstr "GodSVG 网站" - -#: src/ui_parts/display.gd -msgid "View savedata" -msgstr "查看保存的数据" +#: src/ui_parts/donate_menu.gd src/ui_parts/export_menu.gd +#: src/ui_parts/import_warning_menu.gd src/ui_widgets/choose_name_dialog.gd +#: src/ui_widgets/confirm_dialog.gd +msgid "Cancel" +msgstr "取消" #: src/ui_parts/element_container.gd msgid "New element" @@ -311,11 +279,6 @@ msgstr "新元素" msgid "Dimensions" msgstr "大小" -#: src/ui_parts/export_menu.gd src/ui_widgets/configure_color_popup.gd -#: src/ui_widgets/palette_config.gd -msgid "Unnamed" -msgstr "未命名" - #: src/ui_parts/export_menu.gd msgid "Size" msgstr "大小" @@ -352,25 +315,58 @@ msgstr "高度" msgid "Preview image size is limited to {dimensions}" msgstr "预览图像大小被限制到 {dimensions}" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "File" -msgstr "文件" +#: src/ui_parts/global_actions.gd src/ui_parts/import_warning_menu.gd +#: src/utils/TranslationUtils.gd +msgid "Import" +msgstr "导入" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Edit" -msgstr "编辑" +#: src/ui_parts/global_actions.gd +msgid "Settings" +msgstr "设置" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "Tool" -msgstr "工具" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Optimize" +msgstr "优化" -#: src/ui_parts/global_menu.gd src/ui_parts/settings_menu.gd -msgid "View" -msgstr "视图" +#: src/ui_parts/global_actions.gd src/ui_parts/good_file_dialog.gd +msgid "Save SVG" +msgstr "保存 SVG" -#: src/ui_parts/global_menu.gd -msgid "Snap" -msgstr "吸附" +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Reset SVG" +msgstr "重置 SVG" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Open externally" +msgstr "" + +#: src/ui_parts/global_actions.gd src/ui_parts/tab_bar.gd +msgid "Show in File Manager" +msgstr "" + +#: src/ui_parts/global_actions.gd +msgid "About…" +msgstr "关于…" + +#: src/ui_parts/global_actions.gd src/utils/TranslationUtils.gd +msgid "Check for updates" +msgstr "检查更新" + +#: src/ui_parts/global_actions.gd +msgid "Donate…" +msgstr "捐赠…" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG repository" +msgstr "GodSVG 代码仓库" + +#: src/ui_parts/global_actions.gd +msgid "GodSVG website" +msgstr "GodSVG 网站" + +#: src/ui_parts/global_actions.gd +msgid "View savedata" +msgstr "查看保存的数据" #: src/ui_parts/good_file_dialog.gd msgid "Go to parent folder" @@ -400,11 +396,6 @@ msgstr "选择 XML 文件" msgid "Select an image" msgstr "选择图像" -#: src/ui_parts/good_file_dialog.gd src/ui_parts/settings_menu.gd -#: src/ui_parts/shortcut_panel_config.gd src/ui_parts/update_menu.gd -msgid "Close" -msgstr "关闭" - #: src/ui_parts/good_file_dialog.gd msgid "Select" msgstr "选择" @@ -459,10 +450,6 @@ msgstr "新形状" msgid "Import Problems" msgstr "导入出错" -#: src/ui_parts/import_warning_menu.gd src/utils/TranslationUtils.gd -msgid "Import" -msgstr "导入" - #: src/ui_parts/import_warning_menu.gd msgid "Unrecognized element" msgstr "未知元素" @@ -479,6 +466,26 @@ msgstr "语法错误" msgid "Add element" msgstr "添加元素" +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "File" +msgstr "文件" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Edit" +msgstr "编辑" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "Tool" +msgstr "工具" + +#: src/ui_parts/mac_menu.gd src/ui_parts/settings_menu.gd +msgid "View" +msgstr "视图" + +#: src/ui_parts/mac_menu.gd +msgid "Snap" +msgstr "吸附" + #: src/ui_parts/settings_menu.gd msgid "Formatting" msgstr "格式化" @@ -809,6 +816,33 @@ msgstr "横线" msgid "Vertical strip" msgstr "竖线" +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Create tab" +msgstr "创建" + +#: src/ui_parts/tab_bar.gd +#, fuzzy +msgid "Close all other tabs" +msgstr "复制所有文本" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the left" +msgstr "" + +#: src/ui_parts/tab_bar.gd +msgid "Close tabs to the right" +msgstr "" + +#: src/ui_parts/tab_bar.gd src/utils/TranslationUtils.gd +#, fuzzy +msgid "Create a new tab" +msgstr "新建文件夹" + +#: src/ui_parts/tab_bar.gd +msgid "This SVG is not bound to a location on the computer yet." +msgstr "" + #: src/ui_parts/update_menu.gd msgid "Include prereleases" msgstr "包括预发布版本" @@ -837,6 +871,18 @@ msgstr "GodSVG 是最新版本。" msgid "New versions" msgstr "新版本" +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom out" +msgstr "缩小" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom in" +msgstr "放大" + +#: src/ui_parts/zoom_menu.gd src/utils/TranslationUtils.gd +msgid "Zoom reset" +msgstr "重置缩放" + #: src/ui_widgets/BetterLineEdit.gd src/ui_widgets/BetterTextEdit.gd #: src/utils/TranslationUtils.gd msgid "Undo" @@ -859,6 +905,14 @@ msgstr "复制" msgid "Paste" msgstr "粘贴" +#: src/ui_widgets/choose_name_dialog.gd +msgid "Create" +msgstr "创建" + +#: src/ui_widgets/code_editor.gd src/utils/TranslationUtils.gd +msgid "Copy all text" +msgstr "复制所有文本" + #: src/ui_widgets/color_popup.gd msgid "Search color" msgstr "搜索颜色" @@ -875,6 +929,10 @@ msgstr "编辑颜色名称" msgid "Delete color" msgstr "删除颜色" +#: src/ui_widgets/configure_color_popup.gd src/ui_widgets/palette_config.gd +msgid "Unnamed" +msgstr "未命名" + #: src/ui_widgets/good_color_picker.gd #, fuzzy msgid "Color keywords" @@ -908,6 +966,11 @@ msgstr "复制为 XML" msgid "Apply Preset" msgstr "应用预设" +#: src/ui_widgets/path_popup.gd src/ui_widgets/pathdata_field.gd +#: src/utils/TranslationUtils.gd +msgid "Relative" +msgstr "相对" + #: src/ui_widgets/pathdata_field.gd msgid "No path data" msgstr "没有路径数据" @@ -916,10 +979,6 @@ msgstr "没有路径数据" msgid "Absolute" msgstr "绝对" -#: src/ui_widgets/pathdata_field.gd src/utils/TranslationUtils.gd -msgid "Relative" -msgstr "相对" - #: src/ui_widgets/points_field.gd msgid "No points" msgstr "没有点" @@ -984,47 +1043,59 @@ msgstr "无法打开文件。" msgid "Check if the file still exists in the selected file path." msgstr "检查文件是否还存在于选中的路径。" +#: src/utils/FileUtils.gd +msgid "The imported file is already being edited inside GodSVG." +msgstr "" + +#: src/utils/FileUtils.gd +msgid "If you want to apply the unsaved file state, use \"Reset SVG\" instead." +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the next tab" +msgstr "" + +#: src/utils/TranslationUtils.gd +msgid "Select the previous tab" +msgstr "" + #: src/utils/TranslationUtils.gd #, fuzzy -msgid "Open SVG file" -msgstr "打开文件" +msgid "Open SVG externally" +msgstr "打开 GodSVG 代码仓库" #: src/utils/TranslationUtils.gd -msgid "Select all elements" -msgstr "选择所有元素" +msgid "Show SVG in File Manager" +msgstr "" #: src/utils/TranslationUtils.gd -msgid "Duplicate the selected elements" -msgstr "克隆选中的元素" +#, fuzzy +msgid "Select all" +msgstr "选择" + +#: src/utils/TranslationUtils.gd +#, fuzzy +msgid "Duplicate the selection" +msgstr "删除所选项" #: src/utils/TranslationUtils.gd msgid "Delete the selection" msgstr "删除所选项" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements up" +#, fuzzy +msgid "Move the selection up" msgstr "将选中的元素上移" #: src/utils/TranslationUtils.gd -msgid "Move the selected elements down" +#, fuzzy +msgid "Move the selection down" msgstr "将选中的元素下移" #: src/utils/TranslationUtils.gd msgid "Find" msgstr "查找" -#: src/utils/TranslationUtils.gd -msgid "Zoom in" -msgstr "放大" - -#: src/utils/TranslationUtils.gd -msgid "Zoom out" -msgstr "缩小" - -#: src/utils/TranslationUtils.gd -msgid "Zoom reset" -msgstr "重置缩放" - #: src/utils/TranslationUtils.gd msgid "Show rasterized SVG" msgstr "显示光栅化的 SVG" @@ -1120,6 +1191,29 @@ msgstr "" msgid "The file extension is empty. Only {extension_list} files are supported." msgstr "文件扩展名为空。只有 {extension_list} 内的文件受支持。" +#, fuzzy +#~ msgid "Add new tab" +#~ msgstr "添加新元素" + +#~ msgid "Open file" +#~ msgstr "打开文件" + +#~ msgid "Clear saving path" +#~ msgstr "清除保存路径" + +#~ msgid "Clear SVG" +#~ msgstr "清除 SVG" + +#, fuzzy +#~ msgid "Open SVG file" +#~ msgstr "打开文件" + +#~ msgid "Select all elements" +#~ msgstr "选择所有元素" + +#~ msgid "Duplicate the selected elements" +#~ msgstr "克隆选中的元素" + #~ msgid "Enable the color" #~ msgstr "启用该颜色" @@ -1181,9 +1275,6 @@ msgstr "文件扩展名为空。只有 {extension_list} 内的文件受支持。 #~ msgid "Unknown tag" #~ msgstr "未知的元素" -#~ msgid "Add new tag" -#~ msgstr "添加新元素" - #~ msgid "Paths" #~ msgstr "文件路径" diff --git a/godot_only/scripts/update_translations.gd b/godot_only/scripts/update_translations.gd index 5bacd223..2c21ae20 100644 --- a/godot_only/scripts/update_translations.gd +++ b/godot_only/scripts/update_translations.gd @@ -2,6 +2,8 @@ @tool extends EditorScript +const TRANSLATIONS_DIR = "assets/translations" + const HEADER = """#, fuzzy msgid \"\" msgstr \"\" @@ -82,28 +84,28 @@ func search_directory(dir: String) -> void: func update_translations() -> void: - var location := ProjectSettings.globalize_path("translations/GodSVG.pot") + var location := ProjectSettings.globalize_path(TRANSLATIONS_DIR + "/GodSVG.pot") var fa := FileAccess.open(location, FileAccess.WRITE) fa.store_string(HEADER) for msg in messages: fa.store_string(msg.to_string()) fa = null - print("Created translations/GodSVG.pot with %d strings" % (messages.size() + 1)) + print("Created " + TRANSLATIONS_DIR + "/GodSVG.pot with %d strings" % (messages.size() + 1)) - var files := DirAccess.get_files_at(ProjectSettings.globalize_path("translations")) + var files := DirAccess.get_files_at(ProjectSettings.globalize_path(TRANSLATIONS_DIR)) for file in files: if not (file.get_extension() == "po" or file == "GodSVG.pot"): continue var args := PackedStringArray(["--update", "--quiet", "--verbose", "--backup=off", - ProjectSettings.globalize_path("translations").path_join(file), location]) + ProjectSettings.globalize_path(TRANSLATIONS_DIR).path_join(file), location]) var output: Array = [] var result := OS.execute("msgmerge", args, output, true) if not result == -1: if file == "GodSVG.pot": continue elif not output.is_empty(): - print("Updated translations/%s: %s" % [file, output[0].rstrip("\n")]) + print("Updated " + TRANSLATIONS_DIR + "/%s: %s" % [file, output[0].rstrip("\n")]) else: - print("Updated translations%s" % file) + print("Updated " + TRANSLATIONS_DIR + "%s" % file) diff --git a/project.godot b/project.godot index 1ef92d6f..29910ed3 100644 --- a/project.godot +++ b/project.godot @@ -86,7 +86,11 @@ reset_svg={ "deadzone": 0.2, "events": [] } -open_svg={ +open_externally={ +"deadzone": 0.2, +"events": [] +} +open_in_folder={ "deadzone": 0.2, "events": [] } diff --git a/src/ui_parts/display.gd b/src/ui_parts/display.gd index 72526ace..47cd64a5 100644 --- a/src/ui_parts/display.gd +++ b/src/ui_parts/display.gd @@ -21,6 +21,7 @@ const ConfirmDialog := preload("res://src/ui_widgets/confirm_dialog.tscn") @onready var debug_container: MarginContainer = $ViewportPanel/DebugMargins @onready var debug_label: Label = %DebugContainer/DebugLabel @onready var input_debug_label: Label = %DebugContainer/InputDebugLabel +@onready var toolbar: PanelContainer = $ViewportPanel/VBoxContainer/Toolbar var reference_overlay := false @@ -68,6 +69,11 @@ func update_translations() -> void: "Snap size") func update_theme() -> void: + var toolbar_stylebox := StyleBoxFlat.new() + toolbar_stylebox.bg_color = ThemeUtils.overlay_panel_inner_color.lerp(Color.WHITE, 0.01) + toolbar_stylebox.set_content_margin_all(4) + toolbar.add_theme_stylebox_override("panel", toolbar_stylebox) + var frame := StyleBoxFlat.new() frame.draw_center = false frame.border_width_left = 2 diff --git a/src/ui_parts/display.tscn b/src/ui_parts/display.tscn index d57ba70c..13eabe9d 100644 --- a/src/ui_parts/display.tscn +++ b/src/ui_parts/display.tscn @@ -48,24 +48,20 @@ size_flags_vertical = 3 layout_mode = 2 theme_override_constants/separation = 0 -[node name="MarginContainer" type="MarginContainer" parent="ViewportPanel/VBoxContainer"] +[node name="Toolbar" type="PanelContainer" parent="ViewportPanel/VBoxContainer"] layout_mode = 2 -theme_override_constants/margin_left = 4 -theme_override_constants/margin_top = 4 -theme_override_constants/margin_right = 4 -theme_override_constants/margin_bottom = 4 -[node name="ViewportOptions" type="HBoxContainer" parent="ViewportPanel/VBoxContainer/MarginContainer"] +[node name="ViewportOptions" type="HBoxContainer" parent="ViewportPanel/VBoxContainer/Toolbar"] layout_mode = 2 alignment = 2 -[node name="LeftMenu" type="HBoxContainer" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions"] +[node name="LeftMenu" type="HBoxContainer" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions"] unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 2 theme_override_constants/separation = 5 -[node name="Visuals" type="Button" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu"] +[node name="Visuals" type="Button" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu"] layout_mode = 2 size_flags_horizontal = 2 focus_mode = 0 @@ -74,7 +70,7 @@ theme_type_variation = &"IconButton" icon = ExtResource("4_n3qjt") icon_alignment = 1 -[node name="Reference" type="Button" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu"] +[node name="Reference" type="Button" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu"] layout_mode = 2 size_flags_horizontal = 2 focus_mode = 0 @@ -83,11 +79,11 @@ theme_type_variation = &"IconButton" icon = ExtResource("4_2hiq7") icon_alignment = 1 -[node name="Snapping" type="HBoxContainer" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu"] +[node name="Snapping" type="HBoxContainer" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu"] layout_mode = 2 theme_override_constants/separation = 0 -[node name="SnapButton" type="Button" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu/Snapping"] +[node name="SnapButton" type="Button" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu/Snapping"] layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 @@ -97,7 +93,7 @@ icon = ExtResource("5_1k2cq") script = ExtResource("6_3v3ve") hover_pressed_stylebox = SubResource("StyleBoxFlat_eujxa") -[node name="SnapNumberEdit" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu/Snapping" instance=ExtResource("7_wrrfr")] +[node name="SnapNumberEdit" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu/Snapping" instance=ExtResource("7_wrrfr")] custom_minimum_size = Vector2(48, 22) layout_mode = 2 theme_type_variation = &"LeftConnectedLineEdit" @@ -106,7 +102,7 @@ editable = false min_value = 0.001 allow_lower = false -[node name="ZoomMenu" parent="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions" instance=ExtResource("8_xtdmn")] +[node name="ZoomMenu" parent="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions" instance=ExtResource("8_xtdmn")] unique_name_in_owner = true layout_mode = 2 @@ -121,7 +117,7 @@ unique_name_in_owner = true disable_3d = true handle_input_locally = false gui_snap_controls_to_pixels = false -size = Vector2i(1040, 587) +size = Vector2i(1040, 595) size_2d_override_stretch = true render_target_update_mode = 4 script = ExtResource("9_4xrk7") @@ -197,10 +193,10 @@ theme_override_constants/outline_size = 4 theme_override_font_sizes/font_size = 14 horizontal_alignment = 2 -[connection signal="pressed" from="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu/Visuals" to="." method="_on_visuals_button_pressed"] -[connection signal="pressed" from="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu/Reference" to="." method="_on_reference_pressed"] -[connection signal="toggled" from="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu/Snapping/SnapButton" to="." method="_on_snap_button_toggled"] -[connection signal="value_changed" from="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/LeftMenu/Snapping/SnapNumberEdit" to="." method="_on_snap_number_edit_value_changed"] -[connection signal="zoom_changed" from="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/ZoomMenu" to="ViewportPanel/VBoxContainer/ViewportContainer/Viewport" method="_on_zoom_changed"] -[connection signal="zoom_reset_pressed" from="ViewportPanel/VBoxContainer/MarginContainer/ViewportOptions/ZoomMenu" to="ViewportPanel/VBoxContainer/ViewportContainer/Viewport" method="center_frame"] +[connection signal="pressed" from="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu/Visuals" to="." method="_on_visuals_button_pressed"] +[connection signal="pressed" from="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu/Reference" to="." method="_on_reference_pressed"] +[connection signal="toggled" from="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu/Snapping/SnapButton" to="." method="_on_snap_button_toggled"] +[connection signal="value_changed" from="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/LeftMenu/Snapping/SnapNumberEdit" to="." method="_on_snap_number_edit_value_changed"] +[connection signal="zoom_changed" from="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/ZoomMenu" to="ViewportPanel/VBoxContainer/ViewportContainer/Viewport" method="_on_zoom_changed"] +[connection signal="zoom_reset_pressed" from="ViewportPanel/VBoxContainer/Toolbar/ViewportOptions/ZoomMenu" to="ViewportPanel/VBoxContainer/ViewportContainer/Viewport" method="center_frame"] [connection signal="size_changed" from="ViewportPanel/VBoxContainer/ViewportContainer/Viewport" to="ViewportPanel/VBoxContainer/ViewportContainer/Viewport" method="_on_size_changed"] diff --git a/src/ui_parts/editor_scene.tscn b/src/ui_parts/editor_scene.tscn index 784829be..62f54328 100644 --- a/src/ui_parts/editor_scene.tscn +++ b/src/ui_parts/editor_scene.tscn @@ -36,6 +36,7 @@ theme_override_constants/margin_bottom = 6 [node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/HSplitContainer/MarginContainer"] layout_mode = 2 +theme_override_constants/separation = 6 [node name="GlobalActions" parent="PanelContainer/HSplitContainer/MarginContainer/VBoxContainer" instance=ExtResource("3_852uu")] layout_mode = 2 diff --git a/src/ui_parts/global_actions.gd b/src/ui_parts/global_actions.gd index d5e4f1b5..068bfe33 100644 --- a/src/ui_parts/global_actions.gd +++ b/src/ui_parts/global_actions.gd @@ -4,6 +4,8 @@ extends HBoxContainer @onready var export_button: Button = $RightSide/ExportButton @onready var more_options: Button = $LeftSide/MoreOptions @onready var settings_button: Button = $LeftSide/SettingsButton +@onready var size_button: Button = $RightSide/SizeButton +@onready var file_button: Button = $RightSide/FileButton func update_translations() -> void: import_button.tooltip_text = Translator.translate("Import") @@ -13,12 +15,61 @@ func update_translations() -> void: func _ready() -> void: Configs.language_changed.connect(update_translations) update_translations() + + State.svg_changed.connect(update_size_button) + Configs.active_tab_file_path_changed.connect(update_file_button) + Configs.active_tab_changed.connect(update_file_button) + Configs.basic_colors_changed.connect(update_size_button_colors) + update_file_button() + + # Fix the size button sizing. + size_button.begin_bulk_theme_override() + for theming in ["normal", "hover", "pressed", "disabled"]: + var stylebox := size_button.get_theme_stylebox(theming).duplicate() + stylebox.content_margin_bottom = 0 + stylebox.content_margin_top = 0 + size_button.add_theme_stylebox_override(theming, stylebox) + size_button.end_bulk_theme_override() + import_button.pressed.connect(ShortcutUtils.fn("import")) export_button.pressed.connect(ShortcutUtils.fn("export")) more_options.pressed.connect(_on_more_options_pressed) + size_button.pressed.connect(_on_size_button_pressed) + file_button.pressed.connect(_on_file_button_pressed) settings_button.pressed.connect(ShortcutUtils.fn_call.bind("open_settings")) +func _on_size_button_pressed() -> void: + var btn_array: Array[Button] = [ + ContextPopup.create_button(Translator.translate("Optimize"), + ShortcutUtils.fn("optimize"), false, load("res://assets/icons/Compress.svg"), + "optimize")] + var context_popup := ContextPopup.new() + context_popup.setup(btn_array, true) + HandlerGUI.popup_under_rect_center(context_popup, size_button.get_global_rect(), + get_viewport()) + +func _on_file_button_pressed() -> void: + var btn_array: Array[Button] = [] + btn_array.append(ContextPopup.create_button(Translator.translate("Save SVG"), + FileUtils.save_svg, false, load("res://assets/icons/Save.svg"), "save")) + btn_array.append(ContextPopup.create_button(Translator.translate("Reset SVG"), + ShortcutUtils.fn("reset_svg"), + FileUtils.compare_svg_to_disk_contents() != FileUtils.FileState.DIFFERENT, + load("res://assets/icons/Reload.svg"), "reset_svg")) + btn_array.append(ContextPopup.create_button(Translator.translate("Open externally"), + ShortcutUtils.fn("open_externally"), + not FileAccess.file_exists(Configs.savedata.get_active_tab().svg_file_path), + load("res://assets/icons/OpenFile.svg"), "open_externally")) + btn_array.append(ContextPopup.create_button(Translator.translate("Show in File Manager"), + ShortcutUtils.fn("open_in_folder"), + not FileAccess.file_exists(Configs.savedata.get_active_tab().svg_file_path), + load("res://assets/icons/OpenFolder.svg"), "open_in_folder")) + var context_popup := ContextPopup.new() + context_popup.setup(btn_array, true, file_button.size.x, -1, PackedInt32Array([2])) + HandlerGUI.popup_under_rect_center(context_popup, file_button.get_global_rect(), + get_viewport()) + func _on_more_options_pressed() -> void: var can_show_savedata_folder := DisplayServer.has_feature( DisplayServer.FEATURE_NATIVE_DIALOG_FILE) @@ -58,3 +109,32 @@ func _on_more_options_pressed() -> void: func open_savedata_folder() -> void: OS.shell_show_in_file_manager(ProjectSettings.globalize_path("user://")) + + +func update_size_button() -> void: + var svg_text_size := State.svg_text.length() + size_button.text = String.humanize_size(svg_text_size) + size_button.tooltip_text = String.num_uint64(svg_text_size) + " B" + if State.root_element.optimize(true): + size_button.disabled = false + size_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND + update_size_button_colors() + else: + size_button.disabled = true + size_button.mouse_default_cursor_shape = Control.CURSOR_ARROW + size_button.remove_theme_color_override("font_color") + +func update_size_button_colors() -> void: + size_button.begin_bulk_theme_override() + for theming in ["font_color", "font_hover_color", "font_pressed_color"]: + size_button.add_theme_color_override(theming, + Configs.savedata.basic_color_warning.lerp(Color.WHITE, 0.5)) + size_button.end_bulk_theme_override() + +func update_file_button() -> void: + var file_name := State.transient_tab_path.get_file() if\ + not State.transient_tab_path.is_empty() else\ + Configs.savedata.get_active_tab().get_presented_name() + file_button.text = file_name + file_button.tooltip_text = file_name + Utils.set_max_text_width(file_button, 140.0, 12.0) diff --git a/src/ui_parts/global_actions.tscn b/src/ui_parts/global_actions.tscn index 9a680e63..2e581cc7 100644 --- a/src/ui_parts/global_actions.tscn +++ b/src/ui_parts/global_actions.tscn @@ -1,10 +1,11 @@ -[gd_scene load_steps=6 format=3 uid="uid://cxmrx6t4jkhyj"] +[gd_scene load_steps=7 format=3 uid="uid://cxmrx6t4jkhyj"] [ext_resource type="Script" uid="uid://cgbgw4ok5jxk5" path="res://src/ui_parts/global_actions.gd" id="1_x4rqo"] [ext_resource type="Texture2D" uid="uid://ccbta5q43jobk" path="res://assets/icons/More.svg" id="2_71075"] [ext_resource type="Texture2D" uid="uid://6ymbl3jqersp" path="res://assets/icons/Import.svg" id="2_giwu1"] [ext_resource type="Texture2D" uid="uid://d0uvwj0t44n6v" path="res://assets/icons/Export.svg" id="3_4ckhj"] [ext_resource type="Texture2D" uid="uid://ckkkgof1hcbld" path="res://assets/icons/Gear.svg" id="3_xl5uh"] +[ext_resource type="FontFile" uid="uid://dc0w4sx0h0fui" path="res://assets/fonts/FontBold.ttf" id="4_xl5uh"] [node name="GlobalActions" type="HBoxContainer"] offset_right = 52.0 @@ -36,6 +37,21 @@ icon_alignment = 1 [node name="RightSide" type="HBoxContainer" parent="."] layout_mode = 2 +[node name="SizeButton" type="Button" parent="RightSide"] +layout_mode = 2 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_type_variation = &"TranslucentButton" +theme_override_fonts/font = ExtResource("4_xl5uh") + +[node name="FileButton" type="Button" parent="RightSide"] +layout_mode = 2 +size_flags_horizontal = 2 +focus_mode = 0 +mouse_default_cursor_shape = 2 +theme_type_variation = &"FlatButton" +text_overrun_behavior = 3 + [node name="ImportButton" type="Button" parent="RightSide"] layout_mode = 2 focus_mode = 0 diff --git a/src/ui_parts/tab_bar.gd b/src/ui_parts/tab_bar.gd index 4211239b..73b89692 100644 --- a/src/ui_parts/tab_bar.gd +++ b/src/ui_parts/tab_bar.gd @@ -91,7 +91,7 @@ func _gui_input(event: InputEvent) -> void: if hovered_idx == -1: btn_arr.append(ContextPopup.create_button(Translator.translate("Create tab"), Configs.savedata.add_empty_tab, false, - load("res://assets/icons/CreateTab.svg"), "close_tab")) + load("res://assets/icons/CreateTab.svg"), "new_tab")) else: btn_arr.append(ContextPopup.create_button(Translator.translate("Close tab"), close_tab.bind(hovered_idx), false, null, "close_tab")) @@ -107,8 +107,16 @@ func _gui_input(event: InputEvent) -> void: Translator.translate("Close tabs to the right"), close_tabs_to_right.bind(hovered_idx), hovered_idx == Configs.savedata.get_tab_count() - 1, null)) + btn_arr.append(ContextPopup.create_button(Translator.translate("Open externally"), + ShortcutUtils.fn("open_externally"), + not FileAccess.file_exists(Configs.savedata.get_active_tab().svg_file_path), + load("res://assets/icons/OpenFile.svg"), "open_externally")) + btn_arr.append(ContextPopup.create_button(Translator.translate("Show in File Manager"), + ShortcutUtils.fn("open_in_folder"), + not FileAccess.file_exists(Configs.savedata.get_active_tab().svg_file_path), + load("res://assets/icons/OpenFolder.svg"), "open_in_folder")) var tab_popup := ContextPopup.new() - tab_popup.setup(btn_arr, true) + tab_popup.setup(btn_arr, true, -1, -1, PackedInt32Array([4])) if hovered_idx != -1: var tab_global_rect := get_tab_rect(hovered_idx) @@ -197,7 +205,7 @@ func activate() -> void: add_button.position = add_rect.position add_button.size = add_rect.size add_button.mouse_filter = Control.MOUSE_FILTER_PASS - add_button.tooltip_text = Translator.translate("Add new tab") + add_button.tooltip_text = Translator.translate("Create a new tab") add_child(add_button) active_controls.append(add_button) add_button.pressed.connect(Configs.savedata.add_empty_tab) diff --git a/src/ui_widgets/code_editor.gd b/src/ui_widgets/code_editor.gd index f598c821..4097d3b5 100644 --- a/src/ui_widgets/code_editor.gd +++ b/src/ui_widgets/code_editor.gd @@ -4,8 +4,6 @@ extends VBoxContainer @onready var code_edit: TextEdit = $ScriptEditor/SVGCodeEdit @onready var error_bar: PanelContainer = $ScriptEditor/ErrorBar @onready var error_label: RichTextLabel = $ScriptEditor/ErrorBar/Label -@onready var size_button: Button = %SizeButton -@onready var file_button: Button = %FileButton @onready var options_button: Button = %MetaActions/OptionsButton @@ -13,29 +11,16 @@ func _ready() -> void: Configs.theme_changed.connect(setup_theme) State.parsing_finished.connect(update_error) Configs.highlighting_colors_changed.connect(update_syntax_highlighter) - update_file_button() setup_theme() update_syntax_highlighter() code_edit.clear_undo_history() State.svg_changed.connect(auto_update_text) - Configs.active_tab_file_path_changed.connect(update_file_button) - Configs.active_tab_changed.connect(update_file_button) - Configs.basic_colors_changed.connect(update_size_button_colors) - # Fix the size button sizing. - size_button.begin_bulk_theme_override() - for theming in ["normal", "hover", "pressed", "disabled"]: - var stylebox := size_button.get_theme_stylebox(theming).duplicate() - stylebox.content_margin_bottom = 0 - stylebox.content_margin_top = 0 - size_button.add_theme_stylebox_override(theming, stylebox) - size_button.end_bulk_theme_override() func auto_update_text() -> void: if not code_edit.has_focus(): code_edit.text = State.svg_text code_edit.clear_undo_history() - update_size_button() func update_error(err_id: SVGParser.ParseError) -> void: if err_id == SVGParser.ParseError.OK: @@ -109,35 +94,6 @@ func setup_theme() -> void: error_bar.add_theme_stylebox_override("panel", bottom_stylebox) -func update_size_button() -> void: - var svg_text_size := State.svg_text.length() - size_button.text = String.humanize_size(svg_text_size) - size_button.tooltip_text = String.num_uint64(svg_text_size) + " B" - if State.root_element.optimize(true): - size_button.disabled = false - size_button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND - update_size_button_colors() - else: - size_button.disabled = true - size_button.mouse_default_cursor_shape = Control.CURSOR_ARROW - size_button.remove_theme_color_override("font_color") - -func update_size_button_colors() -> void: - size_button.begin_bulk_theme_override() - for theming in ["font_color", "font_hover_color", "font_pressed_color"]: - size_button.add_theme_color_override(theming, - Configs.savedata.basic_color_warning.lerp(Color.WHITE, 0.5)) - size_button.end_bulk_theme_override() - -func update_file_button() -> void: - var file_name := State.transient_tab_path.get_file() if\ - not State.transient_tab_path.is_empty() else\ - Configs.savedata.get_active_tab().get_presented_name() - file_button.text = file_name - file_button.tooltip_text = file_name - Utils.set_max_text_width(file_button, 140.0, 12.0) - - func _on_svg_code_edit_text_changed() -> void: State.apply_svg_text(code_edit.text, false) @@ -150,34 +106,6 @@ func _on_svg_code_edit_focus_entered() -> void: State.clear_all_selections() -func _on_file_button_pressed() -> void: - var btn_array: Array[Button] = [] - btn_array.append(ContextPopup.create_button(Translator.translate("Save SVG"), - FileUtils.save_svg, false, load("res://assets/icons/Save.svg"), "save")) - btn_array.append(ContextPopup.create_button(Translator.translate("Open file"), - ShortcutUtils.fn("open_svg"), - not FileAccess.file_exists(Configs.savedata.get_active_tab().svg_file_path), - load("res://assets/icons/OpenFile.svg"), "open_svg")) - btn_array.append(ContextPopup.create_button(Translator.translate("Reset SVG"), - ShortcutUtils.fn("reset_svg"), - FileUtils.compare_svg_to_disk_contents() != FileUtils.FileState.DIFFERENT, - load("res://assets/icons/Reload.svg"), "reset_svg")) - var context_popup := ContextPopup.new() - context_popup.setup(btn_array, true, file_button.size.x) - HandlerGUI.popup_under_rect_center(context_popup, file_button.get_global_rect(), - get_viewport()) - -func _on_size_button_pressed() -> void: - var btn_array: Array[Button] = [ - ContextPopup.create_button(Translator.translate("Optimize"), - ShortcutUtils.fn("optimize"), false, load("res://assets/icons/Compress.svg"), - "optimize")] - var context_popup := ContextPopup.new() - context_popup.setup(btn_array, true) - HandlerGUI.popup_under_rect_center(context_popup, size_button.get_global_rect(), - get_viewport()) - - func _on_options_button_pressed() -> void: var btn_array: Array[Button] = [] btn_array.append(ContextPopup.create_button( diff --git a/src/ui_widgets/code_editor.tscn b/src/ui_widgets/code_editor.tscn index c23238a8..38090d65 100644 --- a/src/ui_widgets/code_editor.tscn +++ b/src/ui_widgets/code_editor.tscn @@ -1,7 +1,6 @@ -[gd_scene load_steps=8 format=3 uid="uid://cr1fdlmbknnko"] +[gd_scene load_steps=7 format=3 uid="uid://cr1fdlmbknnko"] [ext_resource type="Script" uid="uid://c3q5dvxm6ro1m" path="res://src/ui_widgets/code_editor.gd" id="1_nffk0"] -[ext_resource type="FontFile" uid="uid://dc0w4sx0h0fui" path="res://assets/fonts/FontBold.ttf" id="2_hl52o"] [ext_resource type="FontFile" uid="uid://depydd16jq777" path="res://assets/fonts/FontMono.ttf" id="2_p4nol"] [ext_resource type="Texture2D" uid="uid://dthdjf4v2vlvg" path="res://assets/icons/CodeOptions.svg" id="4_sos04"] [ext_resource type="Script" uid="uid://dh5mir6i27u4u" path="res://src/ui_widgets/BetterTextEdit.gd" id="8_ser4i"] @@ -44,23 +43,6 @@ theme_override_styles/panel = SubResource("StyleBoxFlat_q56qh") layout_mode = 2 theme_override_constants/separation = 8 -[node name="SizeButton" type="Button" parent="PanelContainer/CodeButtons"] -unique_name_in_owner = true -layout_mode = 2 -focus_mode = 0 -mouse_default_cursor_shape = 2 -theme_type_variation = &"TranslucentButton" -theme_override_fonts/font = ExtResource("2_hl52o") - -[node name="FileButton" type="Button" parent="PanelContainer/CodeButtons"] -unique_name_in_owner = true -layout_mode = 2 -size_flags_horizontal = 2 -focus_mode = 0 -mouse_default_cursor_shape = 2 -theme_type_variation = &"FlatButton" -text_overrun_behavior = 3 - [node name="MetaActions" type="HBoxContainer" parent="PanelContainer/CodeButtons"] unique_name_in_owner = true layout_mode = 2 @@ -100,8 +82,6 @@ theme_override_fonts/normal_font = ExtResource("2_p4nol") theme_override_font_sizes/normal_font_size = 14 fit_content = true -[connection signal="pressed" from="PanelContainer/CodeButtons/SizeButton" to="." method="_on_size_button_pressed"] -[connection signal="pressed" from="PanelContainer/CodeButtons/FileButton" to="." method="_on_file_button_pressed"] [connection signal="pressed" from="PanelContainer/CodeButtons/MetaActions/OptionsButton" to="." method="_on_options_button_pressed"] [connection signal="focus_entered" from="ScriptEditor/SVGCodeEdit" to="." method="_on_svg_code_edit_focus_entered"] [connection signal="focus_exited" from="ScriptEditor/SVGCodeEdit" to="." method="_on_svg_code_edit_focus_exited"] diff --git a/src/utils/FileUtils.gd b/src/utils/FileUtils.gd index c944308b..ab8b278a 100644 --- a/src/utils/FileUtils.gd +++ b/src/utils/FileUtils.gd @@ -209,7 +209,7 @@ static func open_svg(file_path: String) -> void: OS.shell_open(file_path) static func open_svg_folder(file_path: String) -> void: - OS.shell_open(file_path.get_base_dir()) + OS.shell_show_in_file_manager(file_path) # Web stuff. diff --git a/src/utils/ShortcutUtils.gd b/src/utils/ShortcutUtils.gd index 8143c7fe..b3042b19 100644 --- a/src/utils/ShortcutUtils.gd +++ b/src/utils/ShortcutUtils.gd @@ -13,7 +13,8 @@ const _shortcut_categories_dict: Dictionary[String, Dictionary] = { "optimize": true, "copy_svg_text": true, "reset_svg": true, - "open_svg": true, + "open_externally": true, + "open_in_folder": true, }, "edit": { "undo": true, @@ -89,7 +90,9 @@ static func fn(shortcut: String) -> Callable: "copy_svg_text": return DisplayServer.clipboard_set.bind(State.svg_text) "optimize": return State.optimize "reset_svg": return FileUtils.reset_svg - "open_svg": return FileUtils.open_svg.bind( + "open_externally": return FileUtils.open_svg.bind( + Configs.savedata.get_active_tab().svg_file_path) + "open_in_folder": return FileUtils.open_svg_folder.bind( Configs.savedata.get_active_tab().svg_file_path) "redo": return Configs.savedata.get_active_tab().redo "undo": return Configs.savedata.get_active_tab().undo @@ -117,7 +120,8 @@ static func get_shortcut_icon(shortcut: String) -> CompressedTexture2D: "copy_svg_text": return load("res://assets/icons/Copy.svg") "optimize": return load("res://assets/icons/Compress.svg") "reset_svg", "zoom_reset": return load("res://assets/icons/Reload.svg") - "open_svg": return load("res://assets/icons/OpenFile.svg") + "open_externally": return load("res://assets/icons/OpenFile.svg") + "open_in_folder": return load("res://assets/icons/OpenFolder.svg") "undo": return load("res://assets/icons/Undo.svg") "redo": return load("res://assets/icons/Redo.svg") "duplicate": return load("res://assets/icons/Duplicate.svg") diff --git a/src/utils/TranslationUtils.gd b/src/utils/TranslationUtils.gd index c8b8ffe3..fc0e1bbf 100644 --- a/src/utils/TranslationUtils.gd +++ b/src/utils/TranslationUtils.gd @@ -6,13 +6,14 @@ static func get_shortcut_description(action_name: String) -> String: "import": return Translator.translate("Import") "save": return Translator.translate("Save") "close_tab": return Translator.translate("Close tab") - "new_tab": return Translator.translate("Create new tab") + "new_tab": return Translator.translate("Create a new tab") "select_next_tab": return Translator.translate("Select the next tab") "select_previous_tab": return Translator.translate("Select the previous tab") "optimize": return Translator.translate("Optimize") "copy_svg_text": return Translator.translate("Copy all text") "reset_svg": return Translator.translate("Reset SVG") - "open_svg": return Translator.translate("Open SVG file") + "open_externally": return Translator.translate("Open SVG externally") + "open_in_folder": return Translator.translate("Show SVG in File Manager") "undo": return Translator.translate("Undo") "redo": return Translator.translate("Redo") "select_all": return Translator.translate("Select all")