From 5df0b8783fa2bacb2b1db7b40c2160e303cc90f0 Mon Sep 17 00:00:00 2001 From: Simple16 Date: Fri, 2 Jan 2026 00:10:09 +0500 Subject: [PATCH] Updating the translation for the WINE download window --- documentation/localization_guide/README.md | 6 +- documentation/localization_guide/README.ru.md | 6 +- portprotonqt/get_wine_module.py | 10 +- .../locales/de_DE/LC_MESSAGES/messages.mo | Bin 451 -> 451 bytes .../locales/de_DE/LC_MESSAGES/messages.po | 181 +++++++++++---- .../locales/es_ES/LC_MESSAGES/messages.mo | Bin 451 -> 451 bytes .../locales/es_ES/LC_MESSAGES/messages.po | 181 +++++++++++---- portprotonqt/locales/messages.pot | 181 +++++++++++---- .../locales/ru_RU/LC_MESSAGES/messages.mo | Bin 37257 -> 39289 bytes .../locales/ru_RU/LC_MESSAGES/messages.po | 214 +++++++++++++----- 10 files changed, 573 insertions(+), 206 deletions(-) diff --git a/documentation/localization_guide/README.md b/documentation/localization_guide/README.md index 58d9621..5b6ce25 100644 --- a/documentation/localization_guide/README.md +++ b/documentation/localization_guide/README.md @@ -21,9 +21,9 @@ Current translation status: | Locale | Progress | Translated | | :----- | -------: | ---------: | -| [de_DE](./de_DE/LC_MESSAGES/messages.po) | 0% | 0 of 341 | -| [es_ES](./es_ES/LC_MESSAGES/messages.po) | 0% | 0 of 341 | -| [ru_RU](./ru_RU/LC_MESSAGES/messages.po) | 100% | 341 of 341 | +| [de_DE](./de_DE/LC_MESSAGES/messages.po) | 0% | 0 of 368 | +| [es_ES](./es_ES/LC_MESSAGES/messages.po) | 0% | 0 of 368 | +| [ru_RU](./ru_RU/LC_MESSAGES/messages.po) | 100% | 368 of 368 | --- diff --git a/documentation/localization_guide/README.ru.md b/documentation/localization_guide/README.ru.md index 2035e30..5a0a75e 100644 --- a/documentation/localization_guide/README.ru.md +++ b/documentation/localization_guide/README.ru.md @@ -21,9 +21,9 @@ | Локаль | Прогресс | Переведено | | :----- | -------: | ---------: | -| [de_DE](./de_DE/LC_MESSAGES/messages.po) | 0% | 0 из 341 | -| [es_ES](./es_ES/LC_MESSAGES/messages.po) | 0% | 0 из 341 | -| [ru_RU](./ru_RU/LC_MESSAGES/messages.po) | 100% | 341 из 341 | +| [de_DE](./de_DE/LC_MESSAGES/messages.po) | 0% | 0 из 368 | +| [es_ES](./es_ES/LC_MESSAGES/messages.po) | 0% | 0 из 368 | +| [ru_RU](./ru_RU/LC_MESSAGES/messages.po) | 100% | 368 из 368 | --- diff --git a/portprotonqt/get_wine_module.py b/portprotonqt/get_wine_module.py index 004bf39..e3fe33e 100644 --- a/portprotonqt/get_wine_module.py +++ b/portprotonqt/get_wine_module.py @@ -485,7 +485,7 @@ class ProtonManager(QDialog): table = QTableWidget() table.verticalHeader().setVisible(False) table.setColumnCount(2) # Только Checkbox и Имя - table.setHorizontalHeaderLabels(['', 'Asset Name']) + table.setHorizontalHeaderLabels(['', _('Asset Name')]) table.setEditTriggers(QAbstractItemView.EditTrigger.NoEditTriggers) header = table.horizontalHeader() @@ -591,7 +591,7 @@ class ProtonManager(QDialog): checkbox.setEnabled(False) asset_name_item.setFlags(asset_name_item.flags() & ~Qt.ItemFlag.ItemIsEnabled) # Add "(installed)" suffix to indicate it's already installed - asset_name_item.setText(f"{display_name} (installed)") + asset_name_item.setText(_('{display_name} (installed)').format(display_name=display_name)) table.setItem(row_index, 1, asset_name_item) @@ -695,7 +695,7 @@ class ProtonManager(QDialog): def update_selection_display(self): """Обновляем отображение выбора""" if self.selected_assets: - selection_text = f"Selected {len(self.selected_assets)} assets:\n" + selection_text = _('Selected {} assets:\n').format(len(self.selected_assets)) for i, asset_data in enumerate(self.selected_assets.values(), 1): selection_text += f"{i}. {asset_data['source_name'].upper()} - {asset_data['asset_name']}\n" @@ -837,8 +837,8 @@ class ProtonManager(QDialog): def update_extraction_progress(progress): self.download_progress.setValue(progress) # Update the info label to show current progress during extraction - eta_text = f", ETA: {current_eta}s" if current_eta > 0 else "" - speed_text = f", Speed: {current_speed:.1f}MB/s" if current_speed > 0 else "" + eta_text = _(', ETA: {}s').format(current_eta) if current_eta > 0 else "" + speed_text = _(', Speed: {:.1f}MB/s').format(current_speed) if current_speed > 0 else "" self.download_info_label.setText(_("Extracting: {0}{1}{2}").format( asset_data['asset_name'], speed_text, eta_text)) diff --git a/portprotonqt/locales/de_DE/LC_MESSAGES/messages.mo b/portprotonqt/locales/de_DE/LC_MESSAGES/messages.mo index d47dfcc1cbc5f3ffff0d4cc090d521050614db40..d588111cd82f453e20eeed2168bff66e67c52576 100644 GIT binary patch delta 24 ecmX@ie3*GcH?Ntlfgunn7#Uj`S#F%6%?JQm1qP-7 delta 24 fcmX@ie3*GcH?OI#p`os^fr6p2m65^58QP2hS>^_w diff --git a/portprotonqt/locales/de_DE/LC_MESSAGES/messages.po b/portprotonqt/locales/de_DE/LC_MESSAGES/messages.po index 9d75ade..295255e 100644 --- a/portprotonqt/locales/de_DE/LC_MESSAGES/messages.po +++ b/portprotonqt/locales/de_DE/LC_MESSAGES/messages.po @@ -1,15 +1,15 @@ # German (Germany) translations for PortProtonQt. -# Copyright (C) 2025 boria138 +# Copyright (C) 2026 boria138 # This file is distributed under the same license as the PortProtonQt # project. -# FIRST AUTHOR , 2025. +# FIRST AUTHOR , 2026. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-11-30 13:20+0500\n" +"POT-Creation-Date: 2026-01-01 23:29+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: de_DE\n" @@ -256,6 +256,52 @@ msgstr "" msgid "Select All" msgstr "" +msgid "Back" +msgstr "" + +msgid "LAST LAUNCH" +msgstr "" + +msgid "PLAY TIME" +msgstr "" + +msgid "MAIN STORY" +msgstr "" + +msgid "MAIN + SIDES" +msgstr "" + +msgid "COMPLETIONIST" +msgstr "" + +msgid "full" +msgstr "" + +msgid "partial" +msgstr "" + +msgid "none" +msgstr "" + +#, python-brace-format +msgid "Gamepad Support: {0}" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Play" +msgstr "" + +msgid "Settings" +msgstr "" + +msgid "Reinstall" +msgstr "" + +msgid "Install" +msgstr "" + msgid "Open" msgstr "" @@ -271,9 +317,6 @@ msgstr "" msgid "Toggle" msgstr "" -msgid "Install" -msgstr "" - msgid "Force Install" msgstr "" @@ -360,9 +403,6 @@ msgstr "" msgid "Fonts" msgstr "" -msgid "Settings" -msgstr "" - msgid "Winetricks not found. Please try again." msgstr "" @@ -456,6 +496,89 @@ msgstr "" msgid "Pending" msgstr "" +msgid "Get other Wine" +msgstr "" + +msgid "Selected assets:" +msgstr "" + +msgid "No assets selected" +msgstr "" + +msgid "Downloading: " +msgstr "" + +msgid "Download Selected" +msgstr "" + +msgid "Clear All" +msgstr "" + +msgid "Asset Name" +msgstr "" + +#, python-brace-format +msgid "{display_name} (installed)" +msgstr "" + +#, python-brace-format +msgid "Selected {} assets:\n" +msgstr "" + +msgid "Downloading in Progress" +msgstr "" + +msgid "Cannot clear selection while extraction is in progress." +msgstr "" + +msgid "No Selection" +msgstr "" + +msgid "Please select at least one archive to download." +msgstr "" + +msgid "Please wait for current downloading to complete." +msgstr "" + +msgid "Downloading Complete" +msgstr "" + +msgid "All selected archives have been downloaded!" +msgstr "" + +#, python-brace-format +msgid "Downloading: {0} ({1}%)" +msgstr "" + +#, python-brace-format +msgid "Extracting: {0}" +msgstr "" + +#, python-brace-format +msgid ", ETA: {}s" +msgstr "" + +#, python-brace-format +msgid ", Speed: {:.1f}MB/s" +msgstr "" + +#, python-brace-format +msgid "Extracting: {0}{1}{2}" +msgstr "" + +msgid "Extraction Error" +msgstr "" + +#, python-brace-format +msgid "Failed to extract archive: {0}" +msgstr "" + +msgid "Operation Cancelled" +msgstr "" + +msgid "Download or extraction has been cancelled." +msgstr "" + msgid "Unknown Game" msgstr "" @@ -477,9 +600,6 @@ msgstr "" msgid "Themes" msgstr "" -msgid "Back" -msgstr "" - msgid "Fullscreen" msgstr "" @@ -566,6 +686,9 @@ msgstr "" msgid "Clear Prefix" msgstr "" +msgid "Download other WINE" +msgstr "" + msgid "Launching tool..." msgstr "" @@ -782,40 +905,6 @@ msgstr "" msgid "Executable not found: {0}" msgstr "" -msgid "LAST LAUNCH" -msgstr "" - -msgid "PLAY TIME" -msgstr "" - -msgid "MAIN STORY" -msgstr "" - -msgid "MAIN + SIDES" -msgstr "" - -msgid "COMPLETIONIST" -msgstr "" - -msgid "full" -msgstr "" - -msgid "partial" -msgstr "" - -msgid "none" -msgstr "" - -#, python-brace-format -msgid "Gamepad Support: {0}" -msgstr "" - -msgid "Stop" -msgstr "" - -msgid "Play" -msgstr "" - #, python-brace-format msgid "Executable not found for EGS game: {0}" msgstr "" diff --git a/portprotonqt/locales/es_ES/LC_MESSAGES/messages.mo b/portprotonqt/locales/es_ES/LC_MESSAGES/messages.mo index 5671d27a30a73f9d1ce5bb42847487acfdcf16b4..dc4b1ca229fe4578b1771713d8ff59ad91e0b556 100644 GIT binary patch delta 24 ecmX@ie3*GcH?Ntlfgunn7#Uj`S#F%6%?JQm1qP-7 delta 24 fcmX@ie3*GcH?OI#p`os^fr6p2m65^58QP2hS>^_w diff --git a/portprotonqt/locales/es_ES/LC_MESSAGES/messages.po b/portprotonqt/locales/es_ES/LC_MESSAGES/messages.po index 513cadd..129fca6 100644 --- a/portprotonqt/locales/es_ES/LC_MESSAGES/messages.po +++ b/portprotonqt/locales/es_ES/LC_MESSAGES/messages.po @@ -1,15 +1,15 @@ # Spanish (Spain) translations for PortProtonQt. -# Copyright (C) 2025 boria138 +# Copyright (C) 2026 boria138 # This file is distributed under the same license as the PortProtonQt # project. -# FIRST AUTHOR , 2025. +# FIRST AUTHOR , 2026. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-11-30 13:20+0500\n" +"POT-Creation-Date: 2026-01-01 23:29+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: es_ES\n" @@ -256,6 +256,52 @@ msgstr "" msgid "Select All" msgstr "" +msgid "Back" +msgstr "" + +msgid "LAST LAUNCH" +msgstr "" + +msgid "PLAY TIME" +msgstr "" + +msgid "MAIN STORY" +msgstr "" + +msgid "MAIN + SIDES" +msgstr "" + +msgid "COMPLETIONIST" +msgstr "" + +msgid "full" +msgstr "" + +msgid "partial" +msgstr "" + +msgid "none" +msgstr "" + +#, python-brace-format +msgid "Gamepad Support: {0}" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Play" +msgstr "" + +msgid "Settings" +msgstr "" + +msgid "Reinstall" +msgstr "" + +msgid "Install" +msgstr "" + msgid "Open" msgstr "" @@ -271,9 +317,6 @@ msgstr "" msgid "Toggle" msgstr "" -msgid "Install" -msgstr "" - msgid "Force Install" msgstr "" @@ -360,9 +403,6 @@ msgstr "" msgid "Fonts" msgstr "" -msgid "Settings" -msgstr "" - msgid "Winetricks not found. Please try again." msgstr "" @@ -456,6 +496,89 @@ msgstr "" msgid "Pending" msgstr "" +msgid "Get other Wine" +msgstr "" + +msgid "Selected assets:" +msgstr "" + +msgid "No assets selected" +msgstr "" + +msgid "Downloading: " +msgstr "" + +msgid "Download Selected" +msgstr "" + +msgid "Clear All" +msgstr "" + +msgid "Asset Name" +msgstr "" + +#, python-brace-format +msgid "{display_name} (installed)" +msgstr "" + +#, python-brace-format +msgid "Selected {} assets:\n" +msgstr "" + +msgid "Downloading in Progress" +msgstr "" + +msgid "Cannot clear selection while extraction is in progress." +msgstr "" + +msgid "No Selection" +msgstr "" + +msgid "Please select at least one archive to download." +msgstr "" + +msgid "Please wait for current downloading to complete." +msgstr "" + +msgid "Downloading Complete" +msgstr "" + +msgid "All selected archives have been downloaded!" +msgstr "" + +#, python-brace-format +msgid "Downloading: {0} ({1}%)" +msgstr "" + +#, python-brace-format +msgid "Extracting: {0}" +msgstr "" + +#, python-brace-format +msgid ", ETA: {}s" +msgstr "" + +#, python-brace-format +msgid ", Speed: {:.1f}MB/s" +msgstr "" + +#, python-brace-format +msgid "Extracting: {0}{1}{2}" +msgstr "" + +msgid "Extraction Error" +msgstr "" + +#, python-brace-format +msgid "Failed to extract archive: {0}" +msgstr "" + +msgid "Operation Cancelled" +msgstr "" + +msgid "Download or extraction has been cancelled." +msgstr "" + msgid "Unknown Game" msgstr "" @@ -477,9 +600,6 @@ msgstr "" msgid "Themes" msgstr "" -msgid "Back" -msgstr "" - msgid "Fullscreen" msgstr "" @@ -566,6 +686,9 @@ msgstr "" msgid "Clear Prefix" msgstr "" +msgid "Download other WINE" +msgstr "" + msgid "Launching tool..." msgstr "" @@ -782,40 +905,6 @@ msgstr "" msgid "Executable not found: {0}" msgstr "" -msgid "LAST LAUNCH" -msgstr "" - -msgid "PLAY TIME" -msgstr "" - -msgid "MAIN STORY" -msgstr "" - -msgid "MAIN + SIDES" -msgstr "" - -msgid "COMPLETIONIST" -msgstr "" - -msgid "full" -msgstr "" - -msgid "partial" -msgstr "" - -msgid "none" -msgstr "" - -#, python-brace-format -msgid "Gamepad Support: {0}" -msgstr "" - -msgid "Stop" -msgstr "" - -msgid "Play" -msgstr "" - #, python-brace-format msgid "Executable not found for EGS game: {0}" msgstr "" diff --git a/portprotonqt/locales/messages.pot b/portprotonqt/locales/messages.pot index f916213..7abed58 100644 --- a/portprotonqt/locales/messages.pot +++ b/portprotonqt/locales/messages.pot @@ -1,15 +1,15 @@ # Translations template for PortProtonQt. -# Copyright (C) 2025 boria138 +# Copyright (C) 2026 boria138 # This file is distributed under the same license as the PortProtonQt # project. -# FIRST AUTHOR , 2025. +# FIRST AUTHOR , 2026. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PortProtonQt 0.1.1\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-11-30 13:20+0500\n" +"POT-Creation-Date: 2026-01-01 23:29+0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -254,6 +254,52 @@ msgstr "" msgid "Select All" msgstr "" +msgid "Back" +msgstr "" + +msgid "LAST LAUNCH" +msgstr "" + +msgid "PLAY TIME" +msgstr "" + +msgid "MAIN STORY" +msgstr "" + +msgid "MAIN + SIDES" +msgstr "" + +msgid "COMPLETIONIST" +msgstr "" + +msgid "full" +msgstr "" + +msgid "partial" +msgstr "" + +msgid "none" +msgstr "" + +#, python-brace-format +msgid "Gamepad Support: {0}" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Play" +msgstr "" + +msgid "Settings" +msgstr "" + +msgid "Reinstall" +msgstr "" + +msgid "Install" +msgstr "" + msgid "Open" msgstr "" @@ -269,9 +315,6 @@ msgstr "" msgid "Toggle" msgstr "" -msgid "Install" -msgstr "" - msgid "Force Install" msgstr "" @@ -358,9 +401,6 @@ msgstr "" msgid "Fonts" msgstr "" -msgid "Settings" -msgstr "" - msgid "Winetricks not found. Please try again." msgstr "" @@ -454,6 +494,89 @@ msgstr "" msgid "Pending" msgstr "" +msgid "Get other Wine" +msgstr "" + +msgid "Selected assets:" +msgstr "" + +msgid "No assets selected" +msgstr "" + +msgid "Downloading: " +msgstr "" + +msgid "Download Selected" +msgstr "" + +msgid "Clear All" +msgstr "" + +msgid "Asset Name" +msgstr "" + +#, python-brace-format +msgid "{display_name} (installed)" +msgstr "" + +#, python-brace-format +msgid "Selected {} assets:\n" +msgstr "" + +msgid "Downloading in Progress" +msgstr "" + +msgid "Cannot clear selection while extraction is in progress." +msgstr "" + +msgid "No Selection" +msgstr "" + +msgid "Please select at least one archive to download." +msgstr "" + +msgid "Please wait for current downloading to complete." +msgstr "" + +msgid "Downloading Complete" +msgstr "" + +msgid "All selected archives have been downloaded!" +msgstr "" + +#, python-brace-format +msgid "Downloading: {0} ({1}%)" +msgstr "" + +#, python-brace-format +msgid "Extracting: {0}" +msgstr "" + +#, python-brace-format +msgid ", ETA: {}s" +msgstr "" + +#, python-brace-format +msgid ", Speed: {:.1f}MB/s" +msgstr "" + +#, python-brace-format +msgid "Extracting: {0}{1}{2}" +msgstr "" + +msgid "Extraction Error" +msgstr "" + +#, python-brace-format +msgid "Failed to extract archive: {0}" +msgstr "" + +msgid "Operation Cancelled" +msgstr "" + +msgid "Download or extraction has been cancelled." +msgstr "" + msgid "Unknown Game" msgstr "" @@ -475,9 +598,6 @@ msgstr "" msgid "Themes" msgstr "" -msgid "Back" -msgstr "" - msgid "Fullscreen" msgstr "" @@ -564,6 +684,9 @@ msgstr "" msgid "Clear Prefix" msgstr "" +msgid "Download other WINE" +msgstr "" + msgid "Launching tool..." msgstr "" @@ -780,40 +903,6 @@ msgstr "" msgid "Executable not found: {0}" msgstr "" -msgid "LAST LAUNCH" -msgstr "" - -msgid "PLAY TIME" -msgstr "" - -msgid "MAIN STORY" -msgstr "" - -msgid "MAIN + SIDES" -msgstr "" - -msgid "COMPLETIONIST" -msgstr "" - -msgid "full" -msgstr "" - -msgid "partial" -msgstr "" - -msgid "none" -msgstr "" - -#, python-brace-format -msgid "Gamepad Support: {0}" -msgstr "" - -msgid "Stop" -msgstr "" - -msgid "Play" -msgstr "" - #, python-brace-format msgid "Executable not found for EGS game: {0}" msgstr "" diff --git a/portprotonqt/locales/ru_RU/LC_MESSAGES/messages.mo b/portprotonqt/locales/ru_RU/LC_MESSAGES/messages.mo index 40e23d0cccd1fba4945933fd4c54b1a775238f31..dbbd4897a23d452d835e9e34d644acd7009bb03b 100644 GIT binary patch delta 7797 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 delta 5881 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 diff --git a/portprotonqt/locales/ru_RU/LC_MESSAGES/messages.po b/portprotonqt/locales/ru_RU/LC_MESSAGES/messages.po index 8eaa4fc..5bcc520 100644 --- a/portprotonqt/locales/ru_RU/LC_MESSAGES/messages.po +++ b/portprotonqt/locales/ru_RU/LC_MESSAGES/messages.po @@ -1,15 +1,15 @@ # Russian (Russia) translations for PortProtonQt. -# Copyright (C) 2025 boria138 +# Copyright (C) 2026 boria138 # This file is distributed under the same license as the PortProtonQt # project. -# FIRST AUTHOR , 2025. +# FIRST AUTHOR , 2026. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-11-30 13:20+0500\n" +"POT-Creation-Date: 2026-01-01 23:29+0500\n" "PO-Revision-Date: 2025-11-30 13:18+0500\n" "Last-Translator: \n" "Language: ru_RU\n" @@ -263,6 +263,53 @@ msgstr "Удалить" msgid "Select All" msgstr "Выбрать всё" +msgid "Back" +msgstr "Назад" + +msgid "LAST LAUNCH" +msgstr "Последний запуск" + +msgid "PLAY TIME" +msgstr "Время игры" + +msgid "MAIN STORY" +msgstr "СЮЖЕТ" + +msgid "MAIN + SIDES" +msgstr "СЮЖЕТ + ПОБОЧКИ" + +msgid "COMPLETIONIST" +msgstr "100%" + +msgid "full" +msgstr "полная" + +msgid "partial" +msgstr "частичная" + +msgid "none" +msgstr "отсутствует" + +#, python-brace-format +msgid "Gamepad Support: {0}" +msgstr "Поддержка геймпадов: {0}" + +msgid "Stop" +msgstr "Остановить" + +msgid "Play" +msgstr "Играть" + +msgid "Settings" +msgstr "Настройки" + +#, fuzzy +msgid "Reinstall" +msgstr "Установить" + +msgid "Install" +msgstr "Установить" + msgid "Open" msgstr "Открыть" @@ -278,9 +325,6 @@ msgstr "Отмена" msgid "Toggle" msgstr "Переключить" -msgid "Install" -msgstr "Установить" - msgid "Force Install" msgstr "Принудительно установить" @@ -367,9 +411,6 @@ msgstr "Описание" msgid "Fonts" msgstr "Шрифты" -msgid "Settings" -msgstr "Настройки" - msgid "Winetricks not found. Please try again." msgstr "Winetricks не найден. Повторите попытку." @@ -416,7 +457,7 @@ msgid "Info" msgstr "Информация" msgid "No changes to apply." -msgstr "Изменений для применения нет." +msgstr "Нет изменений для применения." msgid "Failed to apply changes. Check logs." msgstr "Не удалось применить изменения. Проверьте логи." @@ -463,6 +504,99 @@ msgstr "Бронза" msgid "Pending" msgstr "В ожидании" +msgid "Get other Wine" +msgstr "Загрузка другого WINE" + +#, fuzzy +msgid "Selected assets:" +msgstr "Выбранные WINE:" + +#, fuzzy +msgid "No assets selected" +msgstr "WINE не выбраны" + +#, fuzzy +msgid "Downloading: " +msgstr "Скачивание:" + +#, fuzzy +msgid "Download Selected" +msgstr "Установить выбранное" + +#, fuzzy +msgid "Clear All" +msgstr "Очистить выбранное" + +#, fuzzy +msgid "Asset Name" +msgstr "Наименование WINE" + +#, python-brace-format +msgid "{display_name} (installed)" +msgstr "{display_name} (установлено)" + +#, fuzzy, python-brace-format +msgid "Selected {} assets:\n" +msgstr "Выбранно {} WINE:\n" + +#, fuzzy +msgid "Downloading in Progress" +msgstr "Скачивание" + +msgid "Cannot clear selection while extraction is in progress." +msgstr "Невозможно очистить выделение во время распаковки." + +#, fuzzy +msgid "No Selection" +msgstr "Не выбрано" + +msgid "Please select at least one archive to download." +msgstr "Пожалуйста выберите хотя бы один архив для скачивания." + +msgid "Please wait for current downloading to complete." +msgstr "Пожалуйста подождите завершения скачивания." + +#, fuzzy +msgid "Downloading Complete" +msgstr "Скачивание завершено" + +msgid "All selected archives have been downloaded!" +msgstr "Все выбранные архивы успешно загружены!" + +#, python-brace-format +msgid "Downloading: {0} ({1}%)" +msgstr "Загрузка: {0} ({1}%)" + +#, fuzzy, python-brace-format +msgid "Extracting: {0}" +msgstr "Распаковка {0}" + +#, fuzzy, python-brace-format +msgid ", ETA: {}s" +msgstr ", Расчетное время: {}с" + +#, fuzzy, python-brace-format +msgid ", Speed: {:.1f}MB/s" +msgstr ", Скорость: {:.1f}МБ/с" + +#, python-brace-format +msgid "Extracting: {0}{1}{2}" +msgstr "Распаковка: {0}{1}{2}" + +#, fuzzy +msgid "Extraction Error" +msgstr "Ошибка распаковки" + +#, fuzzy, python-brace-format +msgid "Failed to extract archive: {0}" +msgstr "Не удалось запустить игру: {0}" + +msgid "Operation Cancelled" +msgstr "Операция отменена" + +msgid "Download or extraction has been cancelled." +msgstr "Скачивание или распаковка успешно отменена." + msgid "Unknown Game" msgstr "Неизвестная игра" @@ -476,7 +610,7 @@ msgid "Auto Install" msgstr "Автоустановка" msgid "Wine Settings" -msgstr "Настройки wine" +msgstr "Настройки WINE" msgid "PortProton Settings" msgstr "Настройки PortProton" @@ -484,9 +618,6 @@ msgstr "Настройки PortProton" msgid "Themes" msgstr "Темы" -msgid "Back" -msgstr "Назад" - msgid "Fullscreen" msgstr "Полный экран" @@ -541,13 +672,13 @@ msgid "Added '{name}'" msgstr "'{name}' добавлен(а)" msgid "Compatibility tool:" -msgstr "Инструмент совместимости:" +msgstr "WINE:" msgid "Prefix:" msgstr "Префикс:" msgid "Wine Configuration" -msgstr "Конфигурация Wine" +msgstr "Конфигурация WINE" msgid "Registry Editor" msgstr "Редактор реестра" @@ -565,7 +696,7 @@ msgid "Load Prefix Backup" msgstr "Загрузить резервную копию префикса" msgid "Delete Compatibility Tool" -msgstr "Удалить Инструмент совместимости" +msgstr "Удалить WINE" msgid "Delete Prefix" msgstr "Удалить Префикс" @@ -573,6 +704,9 @@ msgstr "Удалить Префикс" msgid "Clear Prefix" msgstr "Очистить Префикс" +msgid "Download other WINE" +msgstr "Скачать другие WINE" + msgid "Launching tool..." msgstr "Запуск инструмента..." @@ -639,11 +773,11 @@ msgstr "Вы уверены, что хотите удалить инструме #, python-brace-format msgid "Compatibility tool '{}' deleted." -msgstr "Инструмент совместимости «{}» удален." +msgstr "WINE «{}» удален." #, python-brace-format msgid "Failed to delete compatibility tool: {}" -msgstr "Не удалось удалить инструмент совместимости: {}" +msgstr "Не удалось удалить WINE: {}" msgid "Main PortProton parameters..." msgstr "Основные параметры PortProton..." @@ -791,40 +925,6 @@ msgstr "Ошибка при применение темы '{0}'" msgid "Executable not found: {0}" msgstr "Исполняемый файл не найден: {0}" -msgid "LAST LAUNCH" -msgstr "Последний запуск" - -msgid "PLAY TIME" -msgstr "Время игры" - -msgid "MAIN STORY" -msgstr "СЮЖЕТ" - -msgid "MAIN + SIDES" -msgstr "СЮЖЕТ + ПОБОЧКИ" - -msgid "COMPLETIONIST" -msgstr "100%" - -msgid "full" -msgstr "полная" - -msgid "partial" -msgstr "частичная" - -msgid "none" -msgstr "отсутствует" - -#, python-brace-format -msgid "Gamepad Support: {0}" -msgstr "Поддержка геймпадов: {0}" - -msgid "Stop" -msgstr "Остановить" - -msgid "Play" -msgstr "Играть" - #, python-brace-format msgid "Executable not found for EGS game: {0}" msgstr "Не найден исполняемый файл для игры EGS: {0}" @@ -989,22 +1089,22 @@ msgid "Use WineD3D Vulkan backend (Damavand)" msgstr "Использовать бэкенд Vulkan WineD3D (Damavand)" msgid "Use bundled dxvk/vkd3d from Wine/Proton" -msgstr "Использовать встроенные dxvk/vkd3d из Wine/Proton" +msgstr "Использовать встроенные dxvk/vkd3d из WINE/Proton" msgid "Use async dxvk-sarek (experimental)" msgstr "Использовать асинхронный dxvk-sarek (экспериментально)" msgid "Wine Version" -msgstr "Версия Wine" +msgstr "Версия WINE" msgid "Select the Wine or Proton version to use for this executable." -msgstr "Выбор версии Wine или Proton для использования с этим исполняемым файлом." +msgstr "Выбор версии WINE или Proton для использования с этим исполняемым файлом." msgid "Prefix Name" msgstr "Имя префикса" msgid "Specify the Wine prefix to run this game with" -msgstr "Укажите префикс Wine для запуска этой игры" +msgstr "Укажите префикс WINE для запуска этой игры" msgid "Newest" msgstr "Новейший"