fix(strings): render "100%" not "100%%" in relay uptime and percent labels

Compose resources substitute only %N$s / %N$d and never unescape %%, so the
Android printf escape rendered literally ("100%% uptime", "12%% of all").
Unescape uptime, active_subs_share and podcast_value_split_percent in every
locale, teach the Compose escaping check to flag %% (Crowdin reintroduces
Android escapes on sync) and fix_escapes.py to repair it.

Also fix the uptime icon tint: successRate is 0..100 but was compared with
0.1 / 0.60, so every relay below 1% went red and everything else green.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Vitor Pamplona
2026-09-27 20:28:19 -04:00
co-authored by Claude Opus 5.5
parent 77cb10ecc2
commit 06abc6ff8e
58 changed files with 92 additions and 78 deletions
+5
View File
@@ -66,6 +66,11 @@ def find_violations(root: Path):
)
if n:
found[path]["raw line break/tab in a value"] += n
# Android's printf escape. Compose substitutes only %N$s / %N$d, so `%%`
# renders as two percent signs ("100%% uptime").
n = sum(m.group(2).count("%%") for m in STRING_TEXT.finditer(text))
if n:
found[path]["%%"] += n
return found
@@ -185,9 +185,9 @@ fun RelayStatusRow(
stringRes(Res.string.errors),
modifier = Size15Modifier,
tint =
if (successRate < 0.1) {
if (successRate < 10) {
MaterialTheme.colorScheme.redColorOnSecondSurface
} else if (successRate < 0.60) {
} else if (successRate < 60) {
MaterialTheme.colorScheme.warningColor
} else {
MaterialTheme.colorScheme.allGoodColor
@@ -3021,7 +3021,7 @@
<string name="upload_error_voice_message_exception">فشل رفع الصوت: %1$s</string>
<string name="upload_error_voice_message_failed">فشل رفع الرسالة الصوتية</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 غير مدعوم للرسائل الصوتية بعد</string>
<string name="uptime">%1$d%% وقت التشغيل</string>
<string name="uptime">%1$d% وقت التشغيل</string>
<string name="use_internal_tor">محرك Tor النشط</string>
<string name="use_internal_tor_explainer">استخدم الإصدار الداخلي أو Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">لا يمتلك المستخدم عنوان (Lightning Address) لاستقبال sats</string>
@@ -2897,7 +2897,7 @@
<string name="upload_error_voice_message_exception">ভয়েস আপলোড ব্যর্থ হয়েছে: %1$s</string>
<string name="upload_error_voice_message_failed">ভয়েস বার্তা আপলোড করতে ব্যর্থ হয়েছে</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 এখনও ভয়েস বার্তার জন্য সমর্থিত নয়</string>
<string name="uptime">%1$d%% আপটাইম</string>
<string name="uptime">%1$d% আপটাইম</string>
<string name="use_internal_tor">সক্রিয় Tor ইঞ্জিন</string>
<string name="use_internal_tor_explainer">অভ্যন্তরীণ সংস্করণ বা Orbot ব্যবহার করুন</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">স্যাট গ্রহণের জন্য ব্যবহারকারীর কোনো বিজলি-ঠিকানা দেওয়া নেই</string>
@@ -325,7 +325,7 @@
<string name="geocache_hunt_needs_caches">Přidejte alespoň jednu keš.</string>
<string name="geocache_publish_failed">Zveřejnění se nezdařilo. Zkontrolujte připojení k relayům a zkuste to znovu.</string>
<string name="podcast_value_zap_split_hint">Zapy na toto se rozdělují mezi:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Value-for-Value</string>
<string name="relay_monitor_rtt_open">Otevření</string>
<string name="relay_monitor_rtt_read">Čtení</string>
@@ -3114,7 +3114,7 @@
<item quantity="other">%1$d relayů</item>
</plurals>
<string name="active_subs_search_keywords">odběry subscriptions filtry relaye relay požadavky reqs připojení proč diagnostika</string>
<string name="active_subs_share">%1$d %% ze všech</string>
<string name="active_subs_share">%1$d % ze všech</string>
<string name="active_subs_title">Aktivní odběry relayů</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filtr zatím není přiřazen</item>
@@ -5352,7 +5352,7 @@
<string name="upload_error_voice_message_exception">Nahrávání hlasu selhalo: %1$s</string>
<string name="upload_error_voice_message_failed">Nepodařilo se nahrát hlasovou zprávu</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 zatím není pro hlasové zprávy podporován</string>
<string name="uptime">%1$d%% dostupnost</string>
<string name="uptime">%1$d% dostupnost</string>
<string name="use_internal_tor">Aktivní Tor Engine</string>
<string name="use_internal_tor_explainer">Použijte interní verzi nebo Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Uživatel nemá nastavenou LN adresu pro přijímání sats</string>
@@ -313,7 +313,7 @@
<string name="geocache_hunt_needs_caches">Füge mindestens einen Cache hinzu.</string>
<string name="geocache_publish_failed">Veröffentlichen fehlgeschlagen. Prüfe deine Relay-Verbindung und versuche es erneut.</string>
<string name="podcast_value_zap_split_hint">Zaps hierauf werden aufgeteilt zwischen:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Value-for-Value</string>
<string name="relay_monitor_rtt_open">Öffnen</string>
<string name="relay_monitor_rtt_read">Lesen</string>
@@ -3088,7 +3088,7 @@
<item quantity="other">%1$d Relays</item>
</plurals>
<string name="active_subs_search_keywords">abonnements subscriptions filter relays anfragen reqs verbindungen warum diagnose</string>
<string name="active_subs_share">%1$d %% von allen</string>
<string name="active_subs_share">%1$d % von allen</string>
<string name="active_subs_title">Aktive Relay-Abonnements</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d Filter ist noch nicht zugeordnet</item>
@@ -5136,7 +5136,7 @@
<string name="upload_error_voice_message_exception">Sprach-Upload fehlgeschlagen: %1$s</string>
<string name="upload_error_voice_message_failed">Sprachnachricht konnte nicht hochgeladen werden</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 wird für Sprachnachrichten noch nicht unterstützt</string>
<string name="uptime">%1$d%% Verfügbarkeit</string>
<string name="uptime">%1$d% Verfügbarkeit</string>
<string name="use_internal_tor">Aktiver Tor-Engine</string>
<string name="use_internal_tor_explainer">Verwende die interne Version oder Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Der Benutzer hat keine Lightning-Adresse eingerichtet, um Sats zu empfangen</string>
@@ -2988,7 +2988,7 @@
<string name="upload_error_voice_message_exception">Sprach-Upload fehlgeschlagen: %1$s</string>
<string name="upload_error_voice_message_failed">Sprachnachricht konnte nicht hochgeladen werden</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 wird für Sprachnachrichten noch nicht unterstützt</string>
<string name="uptime">%1$d%% Verfügbarkeit</string>
<string name="uptime">%1$d% Verfügbarkeit</string>
<string name="use_internal_tor">Aktiver Tor-Engine</string>
<string name="use_internal_tor_explainer">Verwenden Sie die interne Version oder Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Der Benutzer hat keine Lightning-Adresse eingerichtet, um Sats zu empfangen</string>
@@ -2846,7 +2846,7 @@
<string name="upload_error_voice_message_exception">Αποτυχία ανεβάσματος φωνητικού: %1$s</string>
<string name="upload_error_voice_message_failed">Αποτυχία ανεβάσματος φωνητικού μηνύματος</string>
<string name="upload_error_voice_message_nip95_not_supported">Το NIP-95 δεν υποστηρίζεται ακόμα για φωνητικά μηνύματα</string>
<string name="uptime">%1$d%% λειτουργία</string>
<string name="uptime">%1$d% λειτουργία</string>
<string name="use_internal_tor">Ενεργή μηχανή Tor</string>
<string name="use_internal_tor_explainer">Χρησιμοποιήστε την εσωτερική έκδοση ή το Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Ο χρήστης δεν έχει ορίσει διεύθυνση LN για να λαμβάνει sats</string>
@@ -2901,7 +2901,7 @@
<string name="upload_error_voice_message_exception">Voĉa alŝuto malsukcesis: %1$s</string>
<string name="upload_error_voice_message_failed">Malsukcesis alŝuti voĉan mesaĝon</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ankoraŭ ne estas subtenata por voĉaj mesaĝoj</string>
<string name="uptime">%1$d%% funkcia tempo</string>
<string name="uptime">%1$d% funkcia tempo</string>
<string name="use_internal_tor">Aktiva Tor-Motoro</string>
<string name="use_internal_tor_explainer">Uzu la internan version aŭ Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Uzanto ne havas lightning-adreson por ricevi satojn</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">Voĉa alŝuto malsukcesis: %1$s</string>
<string name="upload_error_voice_message_failed">Malsukcesis alŝuti voĉan mesaĝon</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ankoraŭ ne estas subtenata por voĉaj mesaĝoj</string>
<string name="uptime">%1$d%% funkcia tempo</string>
<string name="uptime">%1$d% funkcia tempo</string>
<string name="use_internal_tor">Aktiva Tor-Motoro</string>
<string name="use_internal_tor_explainer">Uzu la internan version aŭ Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Uzanto ne havas lightning-adreson por ricevi satojn</string>
@@ -2915,7 +2915,7 @@
<string name="upload_error_voice_message_exception">Error al cargar voz: %1$s</string>
<string name="upload_error_voice_message_failed">Error al cargar el mensaje de voz</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 aún no es compatible con mensajes de voz</string>
<string name="uptime">%1$d%% de disponibilidad</string>
<string name="uptime">%1$d% de disponibilidad</string>
<string name="use_internal_tor">Motor de Tor activo</string>
<string name="use_internal_tor_explainer">Usar la versión interna u Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">El usuario no tiene una configuración de dirección Lightning para recibir sats</string>
@@ -2908,7 +2908,7 @@
<string name="upload_error_voice_message_exception">Error al cargar voz: %1$s</string>
<string name="upload_error_voice_message_failed">Error al cargar el mensaje de voz</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 aún no es compatible con mensajes de voz</string>
<string name="uptime">%1$d%% de disponibilidad</string>
<string name="uptime">%1$d% de disponibilidad</string>
<string name="use_internal_tor">Motor de Tor activo</string>
<string name="use_internal_tor_explainer">Usar la versión interna u Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">El usuario no tiene configurada una dirección de Lightning para recibir sats</string>
@@ -2908,7 +2908,7 @@
<string name="upload_error_voice_message_exception">Error al cargar voz: %1$s</string>
<string name="upload_error_voice_message_failed">Error al cargar el mensaje de voz</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 aún no es compatible con mensajes de voz</string>
<string name="uptime">%1$d%% de disponibilidad</string>
<string name="uptime">%1$d% de disponibilidad</string>
<string name="use_internal_tor">Motor de Tor activo</string>
<string name="use_internal_tor_explainer">Usar la versión interna u Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">El usuario no tiene configurada una dirección de Lightning para recibir sats</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">Error al cargar voz: %1$s</string>
<string name="upload_error_voice_message_failed">Error al cargar el mensaje de voz</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 aún no es compatible con mensajes de voz</string>
<string name="uptime">%1$d%% de disponibilidad</string>
<string name="uptime">%1$d% de disponibilidad</string>
<string name="use_internal_tor">Motor de Tor activo</string>
<string name="use_internal_tor_explainer">Usar la versión interna u Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">El usuario no tiene una configuración de dirección Lightning para recibir sats</string>
@@ -2909,7 +2909,7 @@
<string name="upload_error_voice_message_exception">آپلود صوتی ناموفق بود: %1$s</string>
<string name="upload_error_voice_message_failed">آپلود پیام صوتی ناموفق بود</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 هنوز برای پیام‌های صوتی پشتیبانی نمی‌شود</string>
<string name="uptime">%1$d%% زمان فعالیت</string>
<string name="uptime">%1$d% زمان فعالیت</string>
<string name="use_internal_tor">موتور فعال تور</string>
<string name="use_internal_tor_explainer">استفاده از نسخه درونی یا Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">این کاربر آدرس لایتنینگ برای دریافت ساتوشی تنظیم نکرده است</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">آپلود صوتی ناموفق بود: %1$s</string>
<string name="upload_error_voice_message_failed">آپلود پیام صوتی ناموفق بود</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 هنوز برای پیام‌های صوتی پشتیبانی نمی‌شود</string>
<string name="uptime">%1$d%% زمان فعالیت</string>
<string name="uptime">%1$d% زمان فعالیت</string>
<string name="use_internal_tor">موتور فعال تور</string>
<string name="use_internal_tor_explainer">استفاده از نسخه درونی یا Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">این کاربر آدرس لایتنینگ برای دریافت ساتوشی تنظیم نکرده است</string>
@@ -2877,7 +2877,7 @@
<string name="upload_error_voice_message_exception">Ääniviesti epäonnistui: %1$s</string>
<string name="upload_error_voice_message_failed">Ääniviesti epäonnistui ladata</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ei tue ääniviestiä vielä</string>
<string name="uptime">%1$d%% käytettävyys</string>
<string name="uptime">%1$d% käytettävyys</string>
<string name="use_internal_tor">Aktiivinen Tor-moottori</string>
<string name="use_internal_tor_explainer">Käytä sisäistä versiota tai Orbotia</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Käyttäjällä ei ole asetettuna Lightning-osoitetta satsien vastaanottamiseksi</string>
@@ -2802,7 +2802,7 @@
<string name="upload_error_voice_message_exception">Échec de l'envoi de la voix : %1$s</string>
<string name="upload_error_voice_message_failed">Échec de l'envoi du message vocal</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 n'est pas encore supporté pour les messages vocaux</string>
<string name="uptime">%1$d%% de disponibilité</string>
<string name="uptime">%1$d% de disponibilité</string>
<string name="use_internal_tor">Activer le moteur Tor</string>
<string name="use_internal_tor_explainer">Utiliser la version interne ou Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">L'utilisateur n'a pas configuré d'adresse Lightning pour recevoir des sats</string>
@@ -3092,7 +3092,7 @@
<string name="upload_error_voice_message_exception">Échec de l'envoi de la voix : %1$s</string>
<string name="upload_error_voice_message_failed">Échec de l'envoi du message vocal</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 n'est pas encore supporté pour les messages vocaux</string>
<string name="uptime">%1$d%% de disponibilité</string>
<string name="uptime">%1$d% de disponibilité</string>
<string name="use_internal_tor">Activer le moteur Tor</string>
<string name="use_internal_tor_explainer">Utiliser la version interne ou Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">L'utilisateur n'a pas configuré d'adresse Lightning pour recevoir des sats</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">Échec de l'envoi de la voix : %1$s</string>
<string name="upload_error_voice_message_failed">Échec de l'envoi du message vocal</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 n'est pas encore supporté pour les messages vocaux</string>
<string name="uptime">%1$d%% de disponibilité</string>
<string name="uptime">%1$d% de disponibilité</string>
<string name="use_internal_tor">Activer le moteur Tor</string>
<string name="use_internal_tor_explainer">Utiliser la version interne ou Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">L'utilisateur n'a pas configuré d'adresse Lightning pour recevoir des sats</string>
@@ -5147,7 +5147,7 @@
<string name="upload_error_voice_message_exception">ध्वनि आरोहण असफल : %1$s</string>
<string name="upload_error_voice_message_failed">ध्वनि सन्देश आरोहण असफल</string>
<string name="upload_error_voice_message_nip95_not_supported">निप॰९५ का आलम्बन अभी नहीं है ध्वनि सन्देशों के लिए</string>
<string name="uptime">%1$d%% समय निरन्तर उपलब्ध</string>
<string name="uptime">%1$d% समय निरन्तर उपलब्ध</string>
<string name="use_internal_tor">सक्रिय टोर उपकरण</string>
<string name="use_internal_tor_explainer">आन्तरीय संस्करण का प्रयोग करें अथवा ओर्बोट</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">उपयोगकर्ता का कोई लैटनिंग पता स्थापित नहीं जिसपर साट्स प्राप्त कर सके</string>
@@ -313,7 +313,7 @@
<string name="geocache_hunt_needs_caches">Adjon hozzá legalább egy ládát.</string>
<string name="geocache_publish_failed">Nem sikerült közzétenni. Ellenőrizze a kapcsolatot az átjátszóval, és próbálja újra.</string>
<string name="podcast_value_zap_split_hint">Az erre küldött Zapek megoszlanak a következők között:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Értéket az értékért</string>
<string name="relay_monitor_rtt_open">Megnyitás</string>
<string name="relay_monitor_rtt_read">Olvasás</string>
@@ -3088,7 +3088,7 @@
<item quantity="other">%1$d átjátszó</item>
</plurals>
<string name="active_subs_search_keywords">előfizetések, szűrők, átjátszók, kérések, kapcsolatok, miért diagnosztika</string>
<string name="active_subs_share">%1$d%% az összesből</string>
<string name="active_subs_share">%1$d% az összesből</string>
<string name="active_subs_title">Aktív átjátszó-előfizetések</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d szűrő még nincs hozzárendelve</item>
@@ -5134,7 +5134,7 @@
<string name="upload_error_voice_message_exception">Nem sikerült feltölteni a hangüzenetet: %1$s</string>
<string name="upload_error_voice_message_failed">Nem sikerült feltölteni a hangüzenetet</string>
<string name="upload_error_voice_message_nip95_not_supported">A NIP-95 még nem támogatja a hangüzeneteket</string>
<string name="uptime">Üzemidő: %1$d%%</string>
<string name="uptime">Üzemidő: %1$d%</string>
<string name="use_internal_tor">Aktív Tor-motor</string>
<string name="use_internal_tor_explainer">Használja a beépített verziót vagy az Orbotot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">A felhasználó nem rendelkezik a satoshik fogadásához beállított lightning-címmel</string>
@@ -2915,7 +2915,7 @@
<string name="upload_error_voice_message_exception">Unggahan suara gagal: %1$s</string>
<string name="upload_error_voice_message_failed">Gagal mengunggah pesan suara</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 belum didukung untuk pesan suara</string>
<string name="uptime">%1$d%% uptime</string>
<string name="uptime">%1$d% uptime</string>
<string name="use_internal_tor">Mesin Tor Aktif</string>
<string name="use_internal_tor_explainer">Gunakan versi internal atau Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Pengguna tidak memiliki alamat lightning (LN) yang diatur untuk menerima sats</string>
@@ -2841,7 +2841,7 @@
<string name="upload_error_voice_message_exception">Caricamento vocale fallito: %1$s</string>
<string name="upload_error_voice_message_failed">Impossibile caricare il messaggio vocale</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 non è ancora supportato per i messaggi vocali</string>
<string name="uptime">%1$d%% di uptime</string>
<string name="uptime">%1$d% di uptime</string>
<string name="use_internal_tor">Motore Tor attivo</string>
<string name="use_internal_tor_explainer">Usa la versione interna o Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">L'utente non dispone di un indirizzo Lightning per ricevere sats</string>
@@ -2861,7 +2861,7 @@
<string name="upload_error_voice_message_exception">ボイスのアップロードに失敗しました: %1$s</string>
<string name="upload_error_voice_message_failed">ボイスメッセージのアップロードに失敗しました</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 はボイスメッセージにまだ対応していません</string>
<string name="uptime">%1$d%%稼働率</string>
<string name="uptime">%1$d%稼働率</string>
<string name="use_internal_tor">Tor エンジンを有効化</string>
<string name="use_internal_tor_explainer">内蔵版または Orbot を使用</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">satsを受け取るためのLightningアドレスが設定されていません</string>
@@ -2915,7 +2915,7 @@
<string name="upload_error_voice_message_exception">ボイスのアップロードに失敗しました: %1$s</string>
<string name="upload_error_voice_message_failed">ボイスメッセージのアップロードに失敗しました</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 はボイスメッセージにまだ対応していません</string>
<string name="uptime">%1$d%%稼働率</string>
<string name="uptime">%1$d%稼働率</string>
<string name="use_internal_tor">Tor エンジンを有効化</string>
<string name="use_internal_tor_explainer">内蔵版または Orbot を使用</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">satsを受け取るためのLightningアドレスが設定されていません</string>
@@ -2846,7 +2846,7 @@
<string name="upload_error_voice_message_exception">음성 업로드 실패: %1$s</string>
<string name="upload_error_voice_message_failed">음성 메시지 업로드에 실패했습니다</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95는 아직 음성 메시지를 지원하지 않습니다</string>
<string name="uptime">%1$d%% 업타임</string>
<string name="uptime">%1$d% 업타임</string>
<string name="use_internal_tor">내장 Tor 엔진</string>
<string name="use_internal_tor_explainer">내장 버전 또는 Orbot을 사용하세요</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">이 사용자는 sats를 받을 Lightning 주소가 설정되어 있지 않습니다</string>
@@ -2930,7 +2930,7 @@
<string name="upload_error_voice_message_exception">Balss augšupielāde neizdevās: %1$s</string>
<string name="upload_error_voice_message_failed">Neizdevās augšupielādēt balss ziņojumu</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 balss ziņojumiem vēl netiek atbalstīts</string>
<string name="uptime">%1$d%% darbalaiks</string>
<string name="uptime">%1$d% darbalaiks</string>
<string name="use_internal_tor">Aktīvs Tor dzinējs</string>
<string name="use_internal_tor_explainer">Izmantot iekšējo versiju vai Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Lietotājs nav iestatījis lightning adresi sats saņemšanai</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">Spraakbericht uploaden mislukt: %1$s</string>
<string name="upload_error_voice_message_failed">Spraakbericht uploaden mislukt</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 wordt nog niet ondersteund voor spraakberichten</string>
<string name="uptime">%1$d%% uptime</string>
<string name="uptime">%1$d% uptime</string>
<string name="use_internal_tor">Interne Tor-engine gebruiken</string>
<string name="use_internal_tor_explainer">Gebruik de ingebouwde versie van Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Deze gebruiker heeft geen Lightning-adres ingesteld om sats te ontvangen</string>
@@ -163,7 +163,7 @@
<string name="road_event_unknown">Weggebeurtenis</string>
<!-- NIP-CC geocaching (kinds 37516 / 7516) -->
<string name="podcast_value_zap_split_hint">Zaps hiervoor worden verdeeld over:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Value-for-Value</string>
<string name="relay_monitor_rtt_open">Openen</string>
<string name="relay_monitor_rtt_read">Lezen</string>
@@ -2615,7 +2615,7 @@
<item quantity="other">%1$d relays</item>
</plurals>
<string name="active_subs_search_keywords">abonnementen filters relays verzoeken reqs verbindingen waarom diagnostiek</string>
<string name="active_subs_share">%1$d%% van alles</string>
<string name="active_subs_share">%1$d% van alles</string>
<string name="active_subs_title">Actieve relay-abonnementen</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filter is nog niet toegewezen</item>
@@ -4567,7 +4567,7 @@
<string name="upload_error_voice_message_exception">Spraakbericht uploaden mislukt: %1$s</string>
<string name="upload_error_voice_message_failed">Spraakbericht uploaden mislukt</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 wordt nog niet ondersteund voor spraakberichten</string>
<string name="uptime">%1$d%% uptime</string>
<string name="uptime">%1$d% uptime</string>
<string name="use_internal_tor">Interne Tor-engine gebruiken</string>
<string name="use_internal_tor_explainer">Gebruik de ingebouwde versie van Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Deze gebruiker heeft geen Lightning-adres ingesteld om sats te ontvangen</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">Spraakbericht uploaden mislukt: %1$s</string>
<string name="upload_error_voice_message_failed">Spraakbericht uploaden mislukt</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 wordt nog niet ondersteund voor spraakberichten</string>
<string name="uptime">%1$d%% uptime</string>
<string name="uptime">%1$d% uptime</string>
<string name="use_internal_tor">Actieve Tor Engine</string>
<string name="use_internal_tor_explainer">Gebruik de interne versie van Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Gebruiker heeft geen Lightning Adress ingesteld om sats te ontvangen</string>
@@ -325,7 +325,7 @@
<string name="geocache_hunt_needs_caches">Dodaj co najmniej jedną skrzynkę.</string>
<string name="geocache_publish_failed">Nie można opublikować. Sprawdź połączenie z transmiterem i spróbuj ponownie.</string>
<string name="podcast_value_zap_split_hint">Zaps do tego są podzielone między:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Wartość-za-wartość</string>
<string name="relay_monitor_rtt_open">Otwórz</string>
<string name="relay_monitor_rtt_read">Odczyt</string>
@@ -3144,7 +3144,7 @@
<item quantity="other">%1$d transmitery</item>
</plurals>
<string name="active_subs_search_keywords">subskrypcje filtry przekaźniki, żądania (reqs) połączenia dlaczego diagnostyka</string>
<string name="active_subs_share">%1$d%% z wszystkich</string>
<string name="active_subs_share">%1$d% z wszystkich</string>
<string name="active_subs_title">Aktywne subskrypcje transmitera</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filtr nie został jeszcze przypisany</item>
@@ -5382,7 +5382,7 @@
<string name="upload_error_voice_message_exception">Nie udało się przesłać głosu: %1$s</string>
<string name="upload_error_voice_message_failed">Nie udało się przesłać wiadomości głosowej</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 nie jest jeszcze dostępny dla wiadomości głosowych</string>
<string name="uptime">Czas działania %1$d%%</string>
<string name="uptime">Czas działania %1$d%</string>
<string name="use_internal_tor">Aktywny silnik Tor</string>
<string name="use_internal_tor_explainer">Użyj wersji wewnętrznej lub Orbota</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Użytkownik nie ma skonfigurowanego adresu LN, aby odbierać satosze</string>
@@ -313,7 +313,7 @@
<string name="geocache_hunt_needs_caches">Adicione pelo menos um cache.</string>
<string name="geocache_publish_failed">Não foi possível publicar. Verifique sua conexão com os relays e tente novamente.</string>
<string name="podcast_value_zap_split_hint">Os zaps para isto são divididos entre:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Valor-para-Valor</string>
<string name="relay_monitor_rtt_open">Abrir</string>
<string name="relay_monitor_rtt_read">Leitura</string>
@@ -3088,7 +3088,7 @@
<item quantity="other">%1$d Relés</item>
</plurals>
<string name="active_subs_search_keywords">assinaturas subscriptions filtros relays requisições reqs conexões por que diagnóstico</string>
<string name="active_subs_share">%1$d%% de todos</string>
<string name="active_subs_share">%1$d% de todos</string>
<string name="active_subs_title">Assinaturas de relay ativas</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filtro ainda não foi atribuído</item>
@@ -5134,7 +5134,7 @@
<string name="upload_error_voice_message_exception">Falha no upload de voz: %1$s</string>
<string name="upload_error_voice_message_failed">Falha ao enviar mensagem de voz</string>
<string name="upload_error_voice_message_nip95_not_supported">O NIP-95 ainda não é suportado para mensagens de voz</string>
<string name="uptime">%1$d%% de disponibilidade</string>
<string name="uptime">%1$d% de disponibilidade</string>
<string name="use_internal_tor">Motor Tor Ativo</string>
<string name="use_internal_tor_explainer">Use a versão interna ou o Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Usuário não tem um endereço lightning configurado para receber sats</string>
@@ -2861,7 +2861,7 @@
<string name="upload_error_voice_message_exception">Falha no upload de voz: %1$s</string>
<string name="upload_error_voice_message_failed">Falha ao enviar mensagem de voz</string>
<string name="upload_error_voice_message_nip95_not_supported">O NIP-95 ainda não é suportado para mensagens de voz</string>
<string name="uptime">%1$d%% de disponibilidade</string>
<string name="uptime">%1$d% de disponibilidade</string>
<string name="use_internal_tor">Motor Tor Ativo</string>
<string name="use_internal_tor_explainer">Use a versão interna ou o Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Usuário não tem um endereço lightning configurado para receber sats</string>
@@ -2948,7 +2948,7 @@
<string name="upload_error_voice_message_exception">Ошибка загрузки голосового сообщения: %1$s</string>
<string name="upload_error_voice_message_failed">Неудалось загрузить голосовое сообщение</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 пока не поддерживается для голосовых сообщений</string>
<string name="uptime">%1$d%% времени работы</string>
<string name="uptime">%1$d% времени работы</string>
<string name="use_internal_tor">Встроенный движок Tor</string>
<string name="use_internal_tor_explainer">Использовать встроенную версию или Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Пользователь не установил Lightning адрес для получения чаевых</string>
@@ -2930,7 +2930,7 @@
<string name="upload_error_voice_message_exception">Ошибка загрузки голосового сообщения: %1$s</string>
<string name="upload_error_voice_message_failed">Не удалось загрузить голосовое сообщение</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 пока не поддерживается для голосовых сообщений</string>
<string name="uptime">%1$d%% времени работы</string>
<string name="uptime">%1$d% времени работы</string>
<string name="use_internal_tor">Встроенный движок Tor</string>
<string name="use_internal_tor_explainer">Использовать встроенную версию или Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">У пользователя не настроен Lightning-адрес для получения sats</string>
@@ -3026,7 +3026,7 @@
<string name="upload_error_voice_message_exception">Ошибка загрузки голосового сообщения: %1$s</string>
<string name="upload_error_voice_message_failed">Не удалось загрузить голосовое сообщение</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 пока не поддерживается для голосовых сообщений</string>
<string name="uptime">%1$d%% времени работы</string>
<string name="uptime">%1$d% времени работы</string>
<string name="use_internal_tor">Встроенный движок Tor</string>
<string name="use_internal_tor_explainer">Использовать встроенную версию или Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Пользователь не установил Lightning адрес для получения чаевых</string>
@@ -175,7 +175,7 @@
<string name="road_event_unknown">Dogodek na cesti</string>
<!-- NIP-CC geocaching (kinds 37516 / 7516) -->
<string name="podcast_value_zap_split_hint">Zapi bojo razdeljeni med:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Vrednost za vrednost</string>
<string name="relay_monitor_rtt_open">Odprto</string>
<string name="relay_monitor_rtt_read">Branje</string>
@@ -2800,7 +2800,7 @@
<item quantity="other">%1$d relejev</item>
</plurals>
<string name="active_subs_search_keywords">naročnine, filtri, releji, zahteve, povezave, zakaj, diagnostika</string>
<string name="active_subs_share">%1$d%% od vseh</string>
<string name="active_subs_share">%1$d% od vseh</string>
<string name="active_subs_title">Aktivne rele naročnine</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filter še ni dodeljen</item>
@@ -4940,7 +4940,7 @@
<string name="upload_error_voice_message_exception">Neuspešno nalaganje zvočnega posnetka: %1$s</string>
<string name="upload_error_voice_message_failed">Neuspešno nalaganje zvočnega sporočila</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 še ne podpira zvočnih posnetkov</string>
<string name="uptime">%1$d%% časa delovanja</string>
<string name="uptime">%1$d% časa delovanja</string>
<string name="use_internal_tor">Aktivni Tor stroj</string>
<string name="use_internal_tor_explainer">Uporabi interno različico ali Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Uporabnik nima nastavljenega "lightning" naslova za sprejem satoshi-jev</string>
@@ -2907,7 +2907,7 @@
<string name="upload_error_voice_message_exception">Otpremanje glasa nije uspelo: %1$s</string>
<string name="upload_error_voice_message_failed">Otpremanje glasovne poruke nije uspelo</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 još nije podržan za glasovne poruke</string>
<string name="uptime">%1$d%% dostupnost</string>
<string name="uptime">%1$d% dostupnost</string>
<string name="use_internal_tor">Aktivan Tor motor</string>
<string name="use_internal_tor_explainer">Koristite internu verziju ili Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Korisnik nema podešenu Lightning adresu za primanje sats-a</string>
@@ -313,7 +313,7 @@
<string name="geocache_hunt_needs_caches">Lägg till minst en cache.</string>
<string name="geocache_publish_failed">Kunde inte publicera. Kontrollera reläanslutningen och försök igen.</string>
<string name="podcast_value_zap_split_hint">Zaps till detta fördelas mellan:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Värde -för-värde</string>
<string name="relay_monitor_rtt_open">Öppna</string>
<string name="relay_monitor_rtt_read">Läs</string>
@@ -3088,7 +3088,7 @@
<item quantity="other">%1$d reläer</item>
</plurals>
<string name="active_subs_search_keywords">prenumerationer subscriptions filter reläer relay förfrågningar reqs anslutningar varför diagnostik</string>
<string name="active_subs_share">%1$d %% av alla</string>
<string name="active_subs_share">%1$d % av alla</string>
<string name="active_subs_title">Aktiva reläprenumerationer</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filter är inte kopplat ännu</item>
@@ -5134,7 +5134,7 @@
<string name="upload_error_voice_message_exception">Uppladdning av röst misslyckades: %1$s</string>
<string name="upload_error_voice_message_failed">Misslyckades med att ladda upp röstmeddelandet</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 stöds ännu inte för röstmeddelanden</string>
<string name="uptime">%1$d%% drifttid</string>
<string name="uptime">%1$d% drifttid</string>
<string name="use_internal_tor">Aktiv Tor Engine</string>
<string name="use_internal_tor_explainer">Använd den interna versionen eller Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Användaren har inte en Lightningadressinställning för att ta emot sats</string>
@@ -2882,7 +2882,7 @@
<string name="upload_error_voice_message_exception">Upakiaji wa sauti umeshindwa: %1$s</string>
<string name="upload_error_voice_message_failed">Imeshindwa kupakia ujumbe wa sauti</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 haijatarajiwa kwa ujumbe wa sauti bado</string>
<string name="uptime">%1$d%% wakati wa uendeshaji</string>
<string name="uptime">%1$d% wakati wa uendeshaji</string>
<string name="use_internal_tor">Injini ya Tor Inayofanya Kazi</string>
<string name="use_internal_tor_explainer">Tumia toleo la ndani au Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Mtumiaji hana anwani ya umeme iliyoandaliwa kupokea sati</string>
@@ -2870,7 +2870,7 @@
<string name="upload_error_voice_message_exception">குரல் பதிவேற்றம் தோல்வியடைந்தது: %1$s</string>
<string name="upload_error_voice_message_failed">குரல் செய்தியை பதிவேற்ற தோல்வியடைந்தது</string>
<string name="upload_error_voice_message_nip95_not_supported">குரல் செய்திகளுக்கு NIP-95 இன்னும் ஆதரிக்கப்படவில்லை</string>
<string name="uptime">%1$d%% இயக்க நேரம்</string>
<string name="uptime">%1$d% இயக்க நேரம்</string>
<string name="use_internal_tor">செயலில் Tor எஞ்சின்</string>
<string name="use_internal_tor_explainer">உள்ளமைக்கப்பட்ட பதிப்பு அல்லது Orbot பயன்படுத்தவும்</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">பயனர் ஸாட்கள் பெறுவதற்கு லைட்னிங் முகவரி அமைக்கவில்லை</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">குரல் பதிவேற்றம் தோல்வியடைந்தது: %1$s</string>
<string name="upload_error_voice_message_failed">குரல் செய்தியை பதிவேற்ற தோல்வியடைந்தது</string>
<string name="upload_error_voice_message_nip95_not_supported">குரல் செய்திகளுக்கு NIP-95 இன்னும் ஆதரிக்கப்படவில்லை</string>
<string name="uptime">%1$d%% இயக்க நேரம்</string>
<string name="uptime">%1$d% இயக்க நேரம்</string>
<string name="use_internal_tor">செயலில் Tor எஞ்சின்</string>
<string name="use_internal_tor_explainer">உள்ளமைக்கப்பட்ட பதிப்பு அல்லது Orbot பயன்படுத்தவும்</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">பயனர் ஸாட்கள் பெறுவதற்கு லைட்னிங் முகவரி அமைக்கவில்லை</string>
@@ -2710,7 +2710,7 @@
<string name="upload_error_voice_message_exception">การอัปโหลดเสียงล้มเหลว: %1$s</string>
<string name="upload_error_voice_message_failed">ไม่สามารถอัปโหลดข้อความเสียงได้</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ยังไม่รองรับข้อความเสียง</string>
<string name="uptime">เวลาทำงาน %1$d%%</string>
<string name="uptime">เวลาทำงาน %1$d%</string>
<string name="use_internal_tor">เครื่องยนต์ Tor ที่ใช้งานอยู่</string>
<string name="use_internal_tor_explainer">ใช้เวอร์ชันภายในหรือ Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">ผู้ใช้นี้ไม่ได้ตั้งค่า lightning address เพื่อรับ sats</string>
@@ -2915,7 +2915,7 @@
<string name="upload_error_voice_message_exception">การอัปโหลดเสียงล้มเหลว: %1$s</string>
<string name="upload_error_voice_message_failed">ไม่สามารถอัปโหลดข้อความเสียงได้</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ยังไม่รองรับข้อความเสียง</string>
<string name="uptime">เวลาทำงาน %1$d%%</string>
<string name="uptime">เวลาทำงาน %1$d%</string>
<string name="use_internal_tor">เครื่องยนต์ Tor ที่ใช้งานอยู่</string>
<string name="use_internal_tor_explainer">ใช้เวอร์ชันภายในหรือ Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">ผู้ใช้นี้ไม่ได้ตั้งค่า lightning address เพื่อรับ sats</string>
@@ -2877,7 +2877,7 @@
<string name="upload_error_voice_message_exception">Ses yükleme başarısız: %1$s</string>
<string name="upload_error_voice_message_failed">Sesli mesaj yüklenemedi</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 henüz sesli mesajlar için desteklenmiyor</string>
<string name="uptime">%1$d%% çalışma süresi</string>
<string name="uptime">%1$d% çalışma süresi</string>
<string name="use_internal_tor">Aktif Tor Motoru</string>
<string name="use_internal_tor_explainer">Dahili sürümü veya Orbot'u kullanın</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Kullanıcının sats alabileceği bir lightning adresi kurulu değil</string>
@@ -2952,7 +2952,7 @@
<string name="upload_error_voice_message_exception">Ses yükleme başarısız: %1$s</string>
<string name="upload_error_voice_message_failed">Sesli mesaj yüklenemedi</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 henüz sesli mesajlar için desteklenmiyor</string>
<string name="uptime">%1$d%% çalışma süresi</string>
<string name="uptime">%1$d% çalışma süresi</string>
<string name="use_internal_tor">Aktif Tor Motoru</string>
<string name="use_internal_tor_explainer">Dahili sürümü veya Orbot'u kullanın</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Kullanıcının sats alabileceği bir lightning adresi kurulu değil</string>
@@ -2935,7 +2935,7 @@
<string name="upload_error_voice_message_exception">Помилка завантаження голосу: %1$s</string>
<string name="upload_error_voice_message_failed">Не вдалося завантажити голосове повідомлення</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ще не підтримується для голосових повідомлень</string>
<string name="uptime">%1$d%% доступності</string>
<string name="uptime">%1$d% доступності</string>
<string name="use_internal_tor">Активний рушій Tor</string>
<string name="use_internal_tor_explainer">Використовувати вбудовану версію або Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Користувач не встановив Lightning адресу для отримання чайових</string>
@@ -3026,7 +3026,7 @@
<string name="upload_error_voice_message_exception">Помилка завантаження голосу: %1$s</string>
<string name="upload_error_voice_message_failed">Не вдалося завантажити голосове повідомлення</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ще не підтримується для голосових повідомлень</string>
<string name="uptime">%1$d%% доступності</string>
<string name="uptime">%1$d% доступності</string>
<string name="use_internal_tor">Активний рушій Tor</string>
<string name="use_internal_tor_explainer">Використовувати вбудовану версію або Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Користувач не встановив Lightning адресу для отримання чайових</string>
@@ -2886,7 +2886,7 @@
<string name="upload_error_voice_message_exception">Ovoz yuklash muvaffaqiyatsiz tugadi: %1$s</string>
<string name="upload_error_voice_message_failed">Ovozli xabarni yuklash muvaffaqiyatsiz tugadi</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 ovozli xabarlar uchun hali qo'llab-quvvatlanmaydi</string>
<string name="uptime">%1$d%% ishga tayyor vaqt</string>
<string name="uptime">%1$d% ishga tayyor vaqt</string>
<string name="use_internal_tor">Faol Tor Mexanizmi</string>
<string name="use_internal_tor_explainer">Ichki versiya yoki Orbot'dan foydalaning</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Foydalanuvchi sats qabul qilish uchun lightning manzilini o'rnatmagan</string>
@@ -2832,7 +2832,7 @@
<string name="upload_error_voice_message_exception">Tải lên giọng nói thất bại: %1$s</string>
<string name="upload_error_voice_message_failed">Không thể tải lên tin nhắn thoại</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 chưa được hỗ trợ cho tin nhắn thoại</string>
<string name="uptime">%1$d%% thời gian hoạt động</string>
<string name="uptime">%1$d% thời gian hoạt động</string>
<string name="use_internal_tor">Bật công cụ Tor</string>
<string name="use_internal_tor_explainer">Sử dụng phiên bản nội bộ hoặc Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">Người dùng chưa thiết lập địa chỉ Lightning để nhận sats</string>
@@ -126,7 +126,7 @@
<string name="road_event_unknown">道路事件</string>
<!-- NIP-CC geocaching (kinds 37516 / 7516) -->
<string name="podcast_value_zap_split_hint">对此的Zaps 在以下对象间分割:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">值对值</string>
<string name="relay_monitor_rtt_open">打开</string>
<string name="relay_monitor_rtt_read">读取</string>
@@ -3845,7 +3845,7 @@
<string name="upload_error_voice_message_exception">语音上传失败:%1$s</string>
<string name="upload_error_voice_message_failed">上传语音消息失败</string>
<string name="upload_error_voice_message_nip95_not_supported">语音消息尚不支持 NIP-95</string>
<string name="uptime">%1$d%% 运行时间</string>
<string name="uptime">%1$d% 运行时间</string>
<string name="use_internal_tor">启动 Tor</string>
<string name="use_internal_tor_explainer">使用内置 Tor 或者 Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">用户尚未设置闪电地址以接收聪</string>
@@ -2894,7 +2894,7 @@
<string name="upload_error_voice_message_exception">语音上传失败:%1$s</string>
<string name="upload_error_voice_message_failed">上传语音消息失败</string>
<string name="upload_error_voice_message_nip95_not_supported">语音消息尚不支持 NIP-95</string>
<string name="uptime">%1$d%% 运行时间</string>
<string name="uptime">%1$d% 运行时间</string>
<string name="use_internal_tor">启动 Tor</string>
<string name="use_internal_tor_explainer">使用内置 Tor 或者 Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">用户尚未設置閃電地址以接收聰</string>
@@ -2894,7 +2894,7 @@
<string name="upload_error_voice_message_exception">语音上传失败:%1$s</string>
<string name="upload_error_voice_message_failed">上传语音消息失败</string>
<string name="upload_error_voice_message_nip95_not_supported">语音消息尚不支持 NIP-95</string>
<string name="uptime">%1$d%% 运行时间</string>
<string name="uptime">%1$d% 运行时间</string>
<string name="use_internal_tor">启动 Tor</string>
<string name="use_internal_tor_explainer">使用内置 Tor 或者 Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">用户尚未设置闪电地址以接收聪</string>
@@ -2866,7 +2866,7 @@
<string name="upload_error_voice_message_exception">語音上傳失敗:%1$s</string>
<string name="upload_error_voice_message_failed">語音訊息上傳失敗</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 尚不支援語音訊息</string>
<string name="uptime">%1$d%% 正常運行時間</string>
<string name="uptime">%1$d% 正常運行時間</string>
<string name="use_internal_tor">啟用 Tor 引擎</string>
<string name="use_internal_tor_explainer">使用內建版本或 Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">用户尚未設置閃電地址以接收聰</string>
@@ -2951,7 +2951,7 @@
<string name="upload_error_voice_message_exception">语音上传失败:%1$s</string>
<string name="upload_error_voice_message_failed">上传语音消息失败</string>
<string name="upload_error_voice_message_nip95_not_supported">语音消息尚不支持 NIP-95</string>
<string name="uptime">%1$d%% 运行时间</string>
<string name="uptime">%1$d% 运行时间</string>
<string name="use_internal_tor">启动 Tor</string>
<string name="use_internal_tor_explainer">使用内置 Tor 或者 Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">用户尚未设置闪电地址以接收聪</string>
@@ -326,7 +326,7 @@
<string name="geocache_hunt_needs_caches">Add at least one cache.</string>
<string name="geocache_publish_failed">Could not publish. Check your relay connection and try again.</string>
<string name="podcast_value_zap_split_hint">Zaps to this are split between:</string>
<string name="podcast_value_split_percent">%1$d%%</string>
<string name="podcast_value_split_percent">%1$d%</string>
<string name="podcast_value_for_value">Value-for-Value</string>
<string name="relay_monitor_rtt_open">Open</string>
<string name="relay_monitor_rtt_read">Read</string>
@@ -3156,7 +3156,7 @@
<item quantity="other">%1$d relays</item>
</plurals>
<string name="active_subs_search_keywords">subscriptions filters relays requests reqs connections why diagnostics</string>
<string name="active_subs_share">%1$d%% of all</string>
<string name="active_subs_share">%1$d% of all</string>
<string name="active_subs_title">Active Relay Subscriptions</string>
<plurals name="active_subs_untagged">
<item quantity="one">%1$d filter is not attributed yet</item>
@@ -5254,7 +5254,7 @@
<string name="upload_error_voice_message_exception">Voice upload failed: %1$s</string>
<string name="upload_error_voice_message_failed">Failed to upload voice message</string>
<string name="upload_error_voice_message_nip95_not_supported">NIP-95 is not supported for voice messages yet</string>
<string name="uptime">%1$d%% uptime</string>
<string name="uptime">%1$d% uptime</string>
<string name="use_internal_tor">Active Tor Engine</string>
<string name="use_internal_tor_explainer">Use the internal version or Orbot</string>
<string name="user_does_not_have_a_lightning_address_setup_to_receive_sats">User does not have a lightning address set up to receive sats</string>
+11 -2
View File
@@ -78,8 +78,17 @@ def fix_text(text: str, unwrap_quotes: bool = True, source: str = None) -> str:
"""
if unwrap_quotes and len(text) >= 2 and text.startswith('"') and text.endswith('"'):
# Quoted: aapt kept this whitespace exactly, so Compose keeps it too.
return ANDROID_ONLY.sub(r"\1", text[1:-1])
return normalize_whitespace(ANDROID_ONLY.sub(r"\1", text), source)
return unescape_percent(ANDROID_ONLY.sub(r"\1", text[1:-1]))
return unescape_percent(normalize_whitespace(ANDROID_ONLY.sub(r"\1", text), source))
def unescape_percent(text: str) -> str:
"""`%%` is a printf escape Compose never resolves: `%1$d%%` renders `100%%`.
Compose substitutes only `%N$s`/`%N$d` and leaves every other `%` alone, so a
bare `%` is already literal. Idempotent.
"""
return text.replace("%%", "%")
def strip_android_only_attrs(src: str) -> tuple: