fix: added missing uk translation (#445)

Co-authored-by: Davide De Rosa <keeshux@gmail.com>
This commit is contained in:
Dmytro Chyrkin 2024-01-05 17:38:16 +02:00 committed by GitHub
parent 7295249cb8
commit 0b7b82129b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 32 additions and 37 deletions

View File

@ -4,6 +4,25 @@
// //
// Created by Davide De Rosa on 6/13/18. // Created by Davide De Rosa on 6/13/18.
// Copyright (c) 2023 Davide De Rosa. All rights reserved. // Copyright (c) 2023 Davide De Rosa. All rights reserved.
"global.strings.policy" = "Політики";
"global.strings.networks" = "Мережі";
"global.strings.edit" = "Редагувати";
"global.strings.unknown" = "Невідомо";
/* MARK: ProfileView -> EndpointView */
"endpoint.errors.endpoint_required" = "Будь ласка, оберіть точку підключення";
"on_demand.sections.policy.footer.any" = "в будь якій мережі";
"on_demand.sections.policy.footer.including" = "тільки в наступних мережах";
"on_demand.sections.policy.footer.excluding" = "виключаючі наступні мережі";
"on_demand.policy.any" = "Усі мережі";
"on_demand.policy.including" = "Включити";
"on_demand.policy.excluding" = "Виключити";
"settings.sections.icloud.footer" = "Виключіть синхронизацію щоб видалити. Для того шоб видалити дані з iCloud безпечно, зробіть це на усіх ваших пристроях. Це не вплине на локальні профілі.";
"settings.items.should_enable_cloud_syncing.caption" = "Синхронізація з iCloud";
"settings.items.erase_cloud_store.caption" = "Видалити збереженне в iCloud";
/* MARK: Global */ /* MARK: Global */
"global.strings.cancel" = "Скасувати"; "global.strings.cancel" = "Скасувати";
@ -64,6 +83,7 @@
"global.errors.missing_account" = "Відсутній обліковий запис"; "global.errors.missing_account" = "Відсутній обліковий запис";
"global.errors.missing_provider_server" = "Відсутнє розташування"; "global.errors.missing_provider_server" = "Відсутнє розташування";
"global.errors.missing_provider_preset" = "Відсутній пресет"; "global.errors.missing_provider_preset" = "Відсутній пресет";
"global.errors.tunnel_expired" = "Час на підключення закінчився";
/* MARK: Menus */ /* MARK: Menus */
@ -113,6 +133,7 @@
/* MARK: OrganizerView */ /* MARK: OrganizerView */
"organizer.sections.active" = "Використовується"; "organizer.sections.active" = "Використовується";
"organizer.sections.tv.profiles_list.header.p1" = "Відкрийте Passepartout на вашому iOS чи macOS пристрої та включіть перемикач \"Apple TV\" в профілі щоб він тут з'явився";
/* MARK: OrganizerView */ /* MARK: OrganizerView */
"organizer.empty.no_profiles" = "Немає профілів"; "organizer.empty.no_profiles" = "Немає профілів";
@ -144,6 +165,9 @@
"profile.sections.vpn.footer" = "З'єднання буде встановлено за потреби"; "profile.sections.vpn.footer" = "З'єднання буде встановлено за потреби";
"profile.sections.status.header" = "З'єднання"; "profile.sections.status.header" = "З'єднання";
"profile.sections.provider_infrastructure.footer" = "Останнє оновлення %@."; "profile.sections.provider_infrastructure.footer" = "Останнє оновлення %@.";
"profile.sections.tv.footer.encryption" = "Профілі зашифровано та доступні на вашому Apple TV через iCloud.";
"profile.sections.tv.footer.restricted.p1" = "Однак з’єднання розірветься через %d хвилин.";
"profile.sections.tv.footer.restricted.p2" = "Придбайте щоб зняти обмеження.";
"profile.sections.vpn_survives_sleep.footer" = "Вимкніть, щоб покращити використання акумулятора, може привести до тимчасових затримок у зв’язку з повторним підключенням після \"пробудження\"."; "profile.sections.vpn_survives_sleep.footer" = "Вимкніть, щоб покращити використання акумулятора, може привести до тимчасових затримок у зв’язку з повторним підключенням після \"пробудження\".";
"profile.sections.vpn_resolves_hostname.footer" = "Бажано в більшості мереж і обов’язково потрібне в деяких мережах IPv6. Вимкніть там, де DNS заблоковано, або для прискорення з'єднання, коли DNS повільно відповідає"; "profile.sections.vpn_resolves_hostname.footer" = "Бажано в більшості мереж і обов’язково потрібне в деяких мережах IPv6. Вимкніть там, де DNS заблоковано, або для прискорення з'єднання, коли DNS повільно відповідає";
"profile.sections.feedback.header" = "Відгук"; "profile.sections.feedback.header" = "Відгук";
@ -159,6 +183,8 @@
"profile.items.only_shows_favorites.caption" = "Показувати лише обрані місця"; "profile.items.only_shows_favorites.caption" = "Показувати лише обрані місця";
"profile.items.vpn_survives_sleep.caption" = "Залишати включеним під час сну"; "profile.items.vpn_survives_sleep.caption" = "Залишати включеним під час сну";
"profile.items.vpn_resolves_hostname.caption" = "Розпізнати ім’я хоста провайдера"; "profile.items.vpn_resolves_hostname.caption" = "Розпізнати ім’я хоста провайдера";
"profile.items.tv_sharing.caption.limited" = "Обмежено %d хвилинами";
"profile.items.expires_at.caption" = "Термін дії";
"profile.alerts.rename.title" = "Змінити назву профілю"; "profile.alerts.rename.title" = "Змінити назву профілю";
"profile.alerts.reconnect_vpn.message" = "Бажаєте заново підключитися до VPN?"; "profile.alerts.reconnect_vpn.message" = "Бажаєте заново підключитися до VPN?";
@ -202,7 +228,6 @@
"account.sections.guidance.footer.infrastructure.windscribe" = "Знайдіть ваші дані для входу %@ у OpenVPN Config Generator на веб-сайті."; "account.sections.guidance.footer.infrastructure.windscribe" = "Знайдіть ваші дані для входу %@ у OpenVPN Config Generator на веб-сайті.";
/* MARK: ProfileView -> EndpointView */ /* MARK: ProfileView -> EndpointView */
"endpoint.wireguard.items.peer.caption" = "Вузол"; "endpoint.wireguard.items.peer.caption" = "Вузол";
"endpoint.wireguard.items.preshared_key.caption" = "Спільний ключ"; "endpoint.wireguard.items.preshared_key.caption" = "Спільний ключ";
"endpoint.wireguard.items.allowed_ip.caption" = "Дозволений IP"; "endpoint.wireguard.items.allowed_ip.caption" = "Дозволений IP";
@ -255,9 +280,8 @@
"on_demand.items.active.caption" = "Довірені"; "on_demand.items.active.caption" = "Довірені";
"on_demand.items.mobile.caption" = "Мобільна мережа"; "on_demand.items.mobile.caption" = "Мобільна мережа";
"on_demand.items.ethernet.caption" = "Довірені ethernet підключення"; "on_demand.items.ethernet.caption" = "Довірені ethernet підключення";
"on_demand.items.ethernet.description" = "Увімкніть, щоб додати до довірених дротових підключень.";
"on_demand.items.policy.caption" = "Дов. мережа вимикає VPN";
"on_demand.items.policy.caption" = "Дов. мережа вимикає VPN";
/* MARK: ProfileView -> DiagnosticsView */ /* MARK: ProfileView -> DiagnosticsView */
"diagnostics.title" = "Диагностика"; "diagnostics.title" = "Диагностика";
@ -306,6 +330,7 @@
"paywall.items.full_version.extra_description" = "Всі провайдери (в тому числі майбутні)\n%@"; "paywall.items.full_version.extra_description" = "Всі провайдери (в тому числі майбутні)\n%@";
"paywall.items.restore.title" = "Відновити покупки"; "paywall.items.restore.title" = "Відновити покупки";
"paywall.items.restore.description" = "Якщо ви придбали цю програму чи функцію раніше, ви можете відновити покупки, і цей екран більше не відображатиметься"; "paywall.items.restore.description" = "Якщо ви придбали цю програму чи функцію раніше, ви можете відновити покупки, і цей екран більше не відображатиметься";
"paywall.alerts.purchase.appletv.success.message" = "Дякую! Ліміти по часу буде прибрано, щойно синхронізується iCloud. Зачекайте кілька секунд, а потім перезапустіть з’єднання в програмі на AppleTV.";
/* MARK: DonateView */ /* MARK: DonateView */

View File

@ -1,32 +0,0 @@
#!/bin/bash
APP_ROOT="Passepartout/App"
APP_SHARED_ROOT="Passepartout/AppShared"
DIST="l10n"
DIST_APP="$DIST/App"
DIST_META="$DIST/Meta"
OUTPUT="passepartout-translations.zip"
rm -rf $OUTPUT $DIST
mkdir -p $DIST_APP
mkdir -p $DIST_META
if [[ $1 == "all" ]]; then
cp $APP_SHARED_ROOT/en.lproj/Localizable.strings $DIST_APP/Localizable.txt
cp $APP_ROOT/Intents/en.lproj/Intents.strings $DIST_APP/Intents.txt
cp $APP_ROOT/en.lproj/InfoPlist.strings $DIST_APP/InfoPlist.txt
cp $APP_ROOT/fastlane/ios/metadata/en-US/name.txt $DIST_META
cp $APP_ROOT/fastlane/ios/metadata/en-US/subtitle.txt $DIST_META
cp $APP_ROOT/fastlane/ios/metadata/en-US/description.txt $DIST_META
elif [[ $2 == "new" ]]; then
grep -f templates/new-strings.txt $APP_SHARED_ROOT/en.lproj/Localizable.strings >$DIST_APP/Localizable.txt
grep -f templates/new-strings.txt $APP_ROOT/en.lproj/Intents.strings >$DIST_APP/Intents.txt
grep -f templates/new-strings.txt $APP_ROOT/en.lproj/InfoPlist.strings >$DIST_APP/InfoPlist.txt
else
echo "No argument given (all|new)"
exit
fi
cp templates/iaps.txt $DIST/Products.txt
zip -r $OUTPUT $DIST

View File

@ -1,6 +1,8 @@
#!/bin/bash #!/bin/bash
SRC="$1" SRC="$1"
DST="$2" DST="$2"
for LANG in "de" "el" "en" "es" "fr" "it" "nl" "pl" "pt" "ru" "sv" "zh-Hans"; do LANG_FOLDERS=`cd $DST && ls -d *.lproj`
for FOLDER in $LANG_FOLDERS; do
LANG="${FOLDER%.lproj}"
cp $SRC/$LANG/* $DST/$LANG.lproj cp $SRC/$LANG/* $DST/$LANG.lproj
done done

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
DIR="Passepartout/AppShared" DIR="Passepartout/App"
FILENAME="Localizable.strings" FILENAME="Localizable.strings"
LANG_BASE="en" LANG_BASE="en"