mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-10 00:16:59 +00:00
Merge pull request #3029 from davotoula/i18n-cs-de-pt-sv-and-correct-0-entries-for-english
Calendar Translations (cs, de, pt-BR, sv) and skill update
This commit is contained in:
@@ -74,7 +74,14 @@ Before presenting results, **scan the missing English strings** for two red-flag
|
||||
1. **Hardcoded `"1"` next to a noun.** A new English string like `"1 reply"`, `"1 follower"`, or `"1 minute ago"` almost always belongs in a `<plurals>` resource — not a `<string>`. Hardcoding `1` in English forces every translator to either also hardcode `1` (breaking languages where the `one` category covers other numbers, e.g. some Slavic languages) or to silently change the meaning.
|
||||
2. **A `%d` / `%1$d` placeholder in a clearly singular/plural sentence** (e.g. `"%1$d reply"`, `"%d follower"`). Even though the placeholder is parameterised, English-only `one`/`other` agreement won't survive translation into languages that need `few`/`many`.
|
||||
|
||||
Also **audit existing `<plurals>` resources** for the same anti-pattern — any locale's `quantity="one"` item that hardcodes the literal `1` (instead of using a `%d` / `%1$d` placeholder) is broken for languages where the `one` CLDR category covers more than just `n=1` (Russian, Ukrainian, Croatian, etc.). Flag and offer to fix:
|
||||
Also **audit existing `<plurals>` resources** for two anti-patterns:
|
||||
|
||||
1. **`quantity="one"` items that hardcode the literal `1`** (instead of using a `%d` / `%1$d` placeholder) — broken for languages where the `one` CLDR category covers more than just `n=1` (Russian, Ukrainian, Croatian, etc.).
|
||||
2. **`quantity="zero"` items in any locale that doesn't natively use the `zero` CLDR category** — i.e. **everything except Arabic (`ar`) and Welsh (`cy`)**. ICU/CLDR maps `count=0` to `other` for English and all the locales we ship to (cs, de, pt-BR, sv, etc.), so `<item quantity="zero">` is **dead code** there: `getQuantityString(id, 0)` will pick `other`, never the zero entry, and the visible runtime string ends up `"…0 items"` instead of the intended `"…no items"`.
|
||||
|
||||
If a UX genuinely wants special "no items" wording at count=0, that has to be a call-site `if (count == 0)` branch to a separate `<string>`, **not** a `quantity="zero"` plural item.
|
||||
|
||||
Flag and offer to fix:
|
||||
|
||||
```bash
|
||||
# Scan every locale's strings.xml for <item quantity="one"> entries that
|
||||
@@ -96,6 +103,27 @@ for f in amethyst/src/main/res/values/strings.xml amethyst/src/main/res/values-*
|
||||
done
|
||||
```
|
||||
|
||||
Then scan for dead `quantity="zero"` entries. CLDR's `zero` category is integer-bearing only in **Arabic (`ar`)** and **Welsh (`cy`)**. In every other locale, count=0 falls through to `other`, so a `<item quantity="zero">` entry is dead and likely a translator/author bug (or it silently never fires):
|
||||
|
||||
```bash
|
||||
for f in amethyst/src/main/res/values/strings.xml amethyst/src/main/res/values-*/strings.xml; do
|
||||
# Skip Arabic and Welsh — they natively use the zero category.
|
||||
case "$f" in
|
||||
*values-ar*|*values-cy*) continue ;;
|
||||
esac
|
||||
awk -v file="$f" '
|
||||
/<plurals/ { in_plurals = 1; name = $0; sub(/.*name="/, "", name); sub(/".*/, "", name) }
|
||||
in_plurals && /quantity="zero"/ {
|
||||
text = $0; sub(/^[^>]*>/, "", text); sub(/<.*$/, "", text)
|
||||
print file ": <plurals name=\"" name "\"> zero=\"" text "\""
|
||||
}
|
||||
/<\/plurals>/ { in_plurals = 0 }
|
||||
' "$f"
|
||||
done
|
||||
```
|
||||
|
||||
For each hit, warn the user that the entry is unreachable in that locale. The fix is to **remove the `<item quantity="zero">`** and, if the UX wanted distinct wording for count=0, add a separate `<string>` plus an `if (count == 0)` branch at the call site (see "Plurals: handle with care" below).
|
||||
|
||||
Quick scan over the missing keys:
|
||||
|
||||
```bash
|
||||
@@ -147,6 +175,14 @@ When adding or proposing **`<plurals>`** entries, follow these rules:
|
||||
- Arabic (`ar`): `zero`, `one`, `two`, `few`, `many`, `other`
|
||||
- German / Swedish / Brazilian Portuguese: `one`, `other`
|
||||
- When a missing string contains a count placeholder and is conceptually a singular/plural pair, **flag it before translating** — it may belong as a `<plurals>` resource rather than a single `<string>`. Surface this to the user before proposing translations.
|
||||
- **Do not use `quantity="zero"` outside Arabic (`ar`) and Welsh (`cy`).** CLDR's `zero` category is integer-bearing only in those two languages. Android calls `PluralRules.select(0)` for the device locale; in English/German/Czech/Polish/Russian/Swedish/Portuguese/etc. it returns `other`, so the explicit `<item quantity="zero">` is never picked at runtime and the user sees `"…0 items"` instead of the intended wording. If the design calls for "no items" at count=0, model it as a separate `<string>` and an `if (count == 0)` branch at the call site:
|
||||
```kotlin
|
||||
val label = if (count == 0) {
|
||||
stringRes(R.string.foo_no_items, dateLabel)
|
||||
} else {
|
||||
pluralStringResource(R.plurals.foo_items, count, dateLabel, count)
|
||||
}
|
||||
```
|
||||
- Reference: [Android `<plurals>` docs](https://developer.android.com/guide/topics/resources/string-resource#Plurals) and [CLDR plural rules](https://unicode-org.github.io/cldr-staging/charts/latest/supplemental/language_plural_rules.html).
|
||||
|
||||
**Then ask the user:** "Would you like me to translate these missing strings into [list of target locales]?"
|
||||
@@ -165,4 +201,5 @@ When adding translated strings to locale files:
|
||||
- **Diffing each locale separately** — only diff against `cs-rCZ`; assume the same keys are missing everywhere
|
||||
- **Inserting strings in a specific position** — always append at the bottom; ordering is handled separately
|
||||
- **Hardcoding `"1"` in a `<plurals>` `quantity="one"` item** — always use the count placeholder; otherwise non-English `one` categories produce wrong text
|
||||
- **Copying English's `one`/`other` set into every locale** — each language must include all CLDR plural categories it uses (e.g. Czech needs `one`, `few`, `many`, `other`)
|
||||
- **Copying English's `one`/`other` set into every locale** — each language must include all CLDR plural categories it uses (e.g. Czech needs `one`, `few`, `many`, `other`)
|
||||
- **Using `<item quantity="zero">` to special-case count=0** — outside Arabic and Welsh, this entry is unreachable: ICU/CLDR maps 0 → `other`, so the runtime never picks the zero item and the user sees `"…0 items"`. Special-case at the call site with a separate `<string>` instead.
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (c) 2025 Vitor Pamplona
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
|
||||
* Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
package com.vitorpamplona.amethyst.ui.screen.loggedIn.calendars
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.res.pluralStringResource
|
||||
import com.vitorpamplona.amethyst.R
|
||||
import com.vitorpamplona.amethyst.ui.stringRes
|
||||
|
||||
// Picks calendar_day_a11y_no_events when count is 0 because ICU/CLDR maps 0 to
|
||||
// the `other` category for every locale we ship, which would otherwise render
|
||||
// "[date], 0 events" instead of "[date], no events".
|
||||
@Composable
|
||||
fun calendarDayA11yLabel(
|
||||
dateLabel: String,
|
||||
count: Int,
|
||||
): String =
|
||||
if (count == 0) {
|
||||
stringRes(R.string.calendar_day_a11y_no_events, dateLabel)
|
||||
} else {
|
||||
pluralStringResource(R.plurals.calendar_day_a11y_events, count, dateLabel, count)
|
||||
}
|
||||
+1
-3
@@ -46,7 +46,6 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.pluralStringResource
|
||||
import androidx.compose.ui.semantics.Role
|
||||
import androidx.compose.ui.semantics.contentDescription
|
||||
import androidx.compose.ui.semantics.semantics
|
||||
@@ -266,8 +265,7 @@ private fun DayCell(
|
||||
MaterialTheme.colorScheme.surface
|
||||
}
|
||||
|
||||
val baseDescription =
|
||||
pluralStringResource(R.plurals.calendar_day_a11y_events, totalEventCount, dateLabel, totalEventCount)
|
||||
val baseDescription = calendarDayA11yLabel(dateLabel, totalEventCount)
|
||||
val todaySuffix = stringRes(R.string.calendar_day_a11y_today_suffix)
|
||||
val selectedSuffix = stringRes(R.string.calendar_day_a11y_selected_suffix)
|
||||
val a11y =
|
||||
|
||||
+1
-2
@@ -44,7 +44,6 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.pluralStringResource
|
||||
import androidx.compose.ui.semantics.Role
|
||||
import androidx.compose.ui.semantics.contentDescription
|
||||
import androidx.compose.ui.semantics.semantics
|
||||
@@ -202,7 +201,7 @@ private fun WeekStrip(
|
||||
}
|
||||
|
||||
val dateLabel = formatLongDate(date.atStartOfDay(ZoneId.systemDefault()).toEpochSecond())
|
||||
val baseA11y = pluralStringResource(R.plurals.calendar_day_a11y_events, count, dateLabel, count)
|
||||
val baseA11y = calendarDayA11yLabel(dateLabel, count)
|
||||
val todaySuffix = stringRes(R.string.calendar_day_a11y_today_suffix)
|
||||
val selectedSuffix = stringRes(R.string.calendar_day_a11y_selected_suffix)
|
||||
val a11y =
|
||||
|
||||
@@ -2647,4 +2647,156 @@
|
||||
<string name="nowhere_link_card_message">Nowhere Zpráva</string>
|
||||
<string name="nowhere_link_card_art">Nowhere Umění</string>
|
||||
<string name="nowhere_link_card_forum">Nowhere Fórum</string>
|
||||
<plurals name="calendar_reminder_settings_lead_choice">
|
||||
<item quantity="one">%1$d min</item>
|
||||
<item quantity="few">%1$d min</item>
|
||||
<item quantity="many">%1$d min</item>
|
||||
<item quantity="other">%1$d min</item>
|
||||
</plurals>
|
||||
<string name="calendars">Kalendáře</string>
|
||||
<string name="calendar_all_day">Celodenní</string>
|
||||
<string name="calendar_continues">Pokračuje</string>
|
||||
<string name="calendar_untitled">(bez názvu)</string>
|
||||
<string name="calendar_no_events">Žádné události</string>
|
||||
<string name="calendar_no_events_today">V tento den nejsou žádné události</string>
|
||||
<string name="calendar_nav_jump_to_today">Skočit na dnešek</string>
|
||||
<string name="calendar_nav_next_day">Další den</string>
|
||||
<string name="calendar_nav_next_week">Další týden</string>
|
||||
<string name="calendar_nav_next_month">Další měsíc</string>
|
||||
<string name="calendar_nav_previous_day">Předchozí den</string>
|
||||
<string name="calendar_nav_previous_week">Předchozí týden</string>
|
||||
<string name="calendar_nav_previous_month">Předchozí měsíc</string>
|
||||
<string name="calendar_view_day">Den</string>
|
||||
<string name="calendar_view_week">Týden</string>
|
||||
<string name="calendar_view_month">Měsíc</string>
|
||||
<string name="calendar_view_feed">Kanál</string>
|
||||
<string name="calendar_section_past">Minulé</string>
|
||||
<string name="calendar_section_upcoming">Nadcházející</string>
|
||||
<string name="calendar_empty_feed">Z vybraného kanálu zatím nejsou žádné nadcházející ani minulé události.</string>
|
||||
<string name="calendar_empty_feed_title">Váš kalendář je prázdný</string>
|
||||
<string name="calendar_empty_feed_subtitle">Události sdílené lidmi, které sledujete, se zobrazí zde. Klepnutím na tlačítko + vytvořte vlastní.</string>
|
||||
<string name="calendar_empty_day_title">Nic naplánováno</string>
|
||||
<string name="calendar_empty_day_subtitle">V tento den nejsou žádné události. Klepnutím na + přidejte.</string>
|
||||
<string name="calendar_empty_week_title">Tento týden nic</string>
|
||||
<string name="calendar_empty_week_subtitle">V tomto týdnu nejsou žádné události.</string>
|
||||
<string name="calendar_empty_collections">Zatím žádné kalendářové seznamy.</string>
|
||||
<string name="calendar_empty_collections_title">Zatím žádné seznamy</string>
|
||||
<string name="calendar_empty_collections_subtitle">Spojte události dohromady — sérii setkání, sekci konference, plán vašeho týmu. Klepnutím na + vytvořte nový.</string>
|
||||
<string name="calendar_day_a11y_selected_suffix">vybráno</string>
|
||||
<string name="calendar_day_a11y_today_suffix">dnes</string>
|
||||
<string name="calendar_day_of_total">Den %1$d z %2$d</string>
|
||||
<string name="calendar_fab_toggle">Zobrazit možnosti vytvoření</string>
|
||||
<string name="calendar_fab_new_event">Vytvořit novou událost kalendáře</string>
|
||||
<string name="calendar_fab_new_collection">Vytvořit nový kalendář</string>
|
||||
<string name="new_calendar_collection">Nový kalendář</string>
|
||||
<string name="new_calendar_event">Nová událost kalendáře</string>
|
||||
<string name="edit_calendar_collection">Upravit kalendář</string>
|
||||
<string name="edit_calendar_event">Upravit událost kalendáře</string>
|
||||
<string name="calendar_collection_title">Název</string>
|
||||
<string name="calendar_collection_description">Popis</string>
|
||||
<string name="calendar_collection_invalid">Název je povinný.</string>
|
||||
<string name="calendar_collection_empty_members">V tomto kalendáři zatím nejsou žádné události.</string>
|
||||
<string name="calendar_collection_no_events_yet">Zatím jste nevytvořili žádné události.</string>
|
||||
<string name="calendar_collection_events_section">Události v tomto kalendáři (%1$d)</string>
|
||||
<string name="calendar_collection_delete">Smazat kalendář</string>
|
||||
<string name="calendar_collection_delete_confirm_title">Smazat tento kalendář?</string>
|
||||
<string name="calendar_collection_delete_confirm_message">Kalendář bude odstraněn. Události v něm nebudou smazány.</string>
|
||||
<string name="calendar_event_title">Název</string>
|
||||
<string name="calendar_event_summary">Shrnutí</string>
|
||||
<string name="calendar_event_location">Místo</string>
|
||||
<string name="calendar_event_start">Začátek</string>
|
||||
<string name="calendar_event_end">Konec</string>
|
||||
<string name="calendar_event_end_before_start">Konec musí být po začátku.</string>
|
||||
<string name="calendar_event_all_day">Celodenní událost</string>
|
||||
<string name="calendar_event_all_day_locked">Uzamčeno během úprav — změna by vytvořila novou událost.</string>
|
||||
<string name="calendar_event_hashtags">Hashtagy (oddělené čárkou)</string>
|
||||
<string name="calendar_event_image">URL obrázku</string>
|
||||
<string name="calendar_event_pick_date">Vybrat datum</string>
|
||||
<string name="calendar_event_pick_time">Vybrat čas</string>
|
||||
<string name="calendar_event_pick_image">Vybrat obrázek</string>
|
||||
<string name="calendar_event_image_upload_failed">Nahrání obrázku selhalo</string>
|
||||
<string name="calendar_event_image_upload_failed_body">Vybraný obrázek se nepodařilo nahrát. Zkuste to znovu nebo vložte URL.</string>
|
||||
<string name="calendar_event_loading">Načítání události…</string>
|
||||
<string name="calendar_event_invalid">Název a začátek jsou povinné.</string>
|
||||
<string name="calendar_event_in_calendars">V kalendářích (%1$d)</string>
|
||||
<string name="calendar_event_in_no_calendars">Zatím není součástí žádného kalendáře.</string>
|
||||
<string name="calendar_event_participants_section">Účastníci (%1$d)</string>
|
||||
<string name="calendar_participants_section">Účastníci (%1$d)</string>
|
||||
<string name="calendar_event_participant_input">Hledat jméno, npub nebo nip-05</string>
|
||||
<string name="calendar_event_participant_invalid">Zadejte platný npub… nebo 64znakový hex pubkey.</string>
|
||||
<string name="calendar_event_participant_remove">Odebrat účastníka</string>
|
||||
<string name="calendar_filter_all">Všechny kalendáře</string>
|
||||
<string name="calendar_filter_no_calendars">Zatím jste nevytvořili žádný kalendář.</string>
|
||||
<string name="calendar_filter_sheet_title">Zobrazit události z…</string>
|
||||
<string name="calendar_add_to_calendar_title">Přidat do kalendáře</string>
|
||||
<string name="calendar_add_to_calendar_action">Přidat do jednoho z vašich kalendářů</string>
|
||||
<string name="calendar_add_to_calendar_none">Zatím jste nevytvořili žádný kalendář.</string>
|
||||
<string name="calendar_add_to_phone_calendar">Přidat do kalendáře v telefonu</string>
|
||||
<string name="calendar_share_nostr">Sdílet jako Nostr odkaz</string>
|
||||
<string name="calendar_share_nostr_title">Sdílet odkaz na kalendář</string>
|
||||
<string name="calendar_export_event">Exportovat do kalendáře (.ics)</string>
|
||||
<string name="calendar_export_share_title">Sdílet událost kalendáře</string>
|
||||
<string name="calendar_open_in_maps">Otevřít v mapách</string>
|
||||
<string name="calendar_open_link">Otevřít odkaz</string>
|
||||
<string name="calendar_relative_ongoing">Probíhá nyní</string>
|
||||
<string name="calendar_relative_ongoing_with_end">%1$s · končí %2$s</string>
|
||||
<string name="calendar_rsvp_section">RSVP (%1$d)</string>
|
||||
<string name="calendar_rsvp_going">Účastním se</string>
|
||||
<string name="calendar_rsvp_going_prefixed">✓ Účastním se</string>
|
||||
<string name="calendar_rsvp_maybe">Možná</string>
|
||||
<string name="calendar_rsvp_maybe_prefixed">\? Možná</string>
|
||||
<string name="calendar_rsvp_not_going">Nemůžu</string>
|
||||
<string name="calendar_rsvp_not_going_prefixed">✗ Nemůžu</string>
|
||||
<string name="calendar_rsvp_none">Zatím žádné RSVP.</string>
|
||||
<string name="calendar_reminder_channel_id">calendar_reminders</string>
|
||||
<string name="calendar_reminder_channel_name">Připomenutí kalendáře</string>
|
||||
<string name="calendar_reminder_channel_description">Upozornění, když je událost, které se účastníte, blízko začátku.</string>
|
||||
<string name="calendar_reminder_default_title">Událost kalendáře</string>
|
||||
<string name="calendar_reminder_settings_title">Připomenutí kalendáře</string>
|
||||
<string name="calendar_reminder_settings_enabled_title">Posílat připomenutí</string>
|
||||
<string name="calendar_reminder_settings_enabled_subtitle">Oznámení se spustí, když je událost, které se účastníte, blízko začátku.</string>
|
||||
<string name="calendar_reminder_settings_lead_title">Doba předstihu připomenutí</string>
|
||||
<string name="calendar_reminder_settings_lead_subtitle">Kolik minut před událostí chcete být upozorněni.</string>
|
||||
<string name="route_calendars">Kalendáře</string>
|
||||
<string name="route_calendar_collections">Seznamy kalendářů</string>
|
||||
<string name="route_calendar_event_detail">Detail události</string>
|
||||
<string name="onchain_zap_description">On-chain Bitcoin zap</string>
|
||||
<string name="onchain_zap_pending">Čeká na potvrzení</string>
|
||||
<string name="new_amount_in_sats_onchain">Nová on-chain částka v sats</string>
|
||||
<string name="quick_zap_amounts_onchain">Rychlé částky on-chain zapů</string>
|
||||
<string name="quick_zap_amounts_onchain_explainer">On-chain zapy platí poplatky těžařům, takže částky jsou obvykle vyšší než u Lightningu. Klepnutím na částku ji odstraníte.</string>
|
||||
<string name="send_onchain_instead">Odeslat on-chain</string>
|
||||
<string name="wallet_no_transactions_for_filter">Žádné transakce neodpovídají tomuto filtru</string>
|
||||
<string name="wallet_onchain_copy_dialog_confirm">Zkopírovat adresu</string>
|
||||
<string name="wallet_onchain_no_address">Pro tento účet není k dispozici žádná on-chain adresa.</string>
|
||||
<string name="wallet_onchain_no_backend">Není nakonfigurován žádný on-chain backend.</string>
|
||||
<string name="wallet_onchain_pending">Čeká</string>
|
||||
<string name="wallet_onchain_public_chip">Veřejné</string>
|
||||
<string name="wallet_onchain_public_dialog_title">Tato peněženka je veřejná</string>
|
||||
<string name="wallet_onchain_public_dialog_body">Vaše Taproot adresa je odvozena z vašeho veřejného klíče Nostr, takže kdokoli, kdo zná váš npub, může vidět zůstatek této peněženky a historii transakcí na blockchainu.\n\nAbyste zachovali soukromí, vkládejte do této peněženky a vybírejte z ní prostředky z nesoukromých účtů, jako jsou burzy. Nikdy nemíchejte tyto prostředky se svými studenými peněženkami a zacházejte s nimi jako s penězi, které můžete ztratit, protože kdokoli, kdo má pod kontrolou váš nsec, je může utratit.</string>
|
||||
<string name="wallet_onchain_public_dialog_confirm">Rozumím</string>
|
||||
<string name="wallet_onchain_transactions">On-chain transakce</string>
|
||||
<string name="nowhere_link_card_drop">Nowhere Drop</string>
|
||||
<plurals name="calendar_collection_count">
|
||||
<item quantity="one">%1$d událost</item>
|
||||
<item quantity="few">%1$d události</item>
|
||||
<item quantity="many">%1$d událostí</item>
|
||||
<item quantity="other">%1$d událostí</item>
|
||||
</plurals>
|
||||
<plurals name="calendar_day_a11y_events">
|
||||
<item quantity="one">%1$s, %2$d událost</item>
|
||||
<item quantity="few">%1$s, %2$d události</item>
|
||||
<item quantity="many">%1$s, %2$d událostí</item>
|
||||
<item quantity="other">%1$s, %2$d událostí</item>
|
||||
</plurals>
|
||||
<string name="calendar_day_a11y_no_events">%1$s, žádné události</string>
|
||||
<plurals name="calendar_reminder_body">
|
||||
<item quantity="one">Začíná za %1$d minutu</item>
|
||||
<item quantity="few">Začíná za %1$d minuty</item>
|
||||
<item quantity="many">Začíná za %1$d minut</item>
|
||||
<item quantity="other">Začíná za %1$d minut</item>
|
||||
</plurals>
|
||||
<string name="contact_list_screen_title">Seznam sledování</string>
|
||||
<string name="contact_list_screen_title_with_count">Seznam sledování (%1$d)</string>
|
||||
<string name="contact_list_containing_label">Seznam sledování (%1$d):</string>
|
||||
</resources>
|
||||
|
||||
@@ -2621,4 +2621,153 @@ anz der Bedingungen ist erforderlich</string>
|
||||
<string name="nowhere_link_card_store">Nowhere Shop</string>
|
||||
<string name="nowhere_link_card_message">Nowhere Nachricht</string>
|
||||
<string name="nowhere_link_card_art">Nowhere Kunst</string>
|
||||
<plurals name="calendar_reminder_settings_lead_choice">
|
||||
<item quantity="one">%1$d Min.</item>
|
||||
<item quantity="other">%1$d Min.</item>
|
||||
</plurals>
|
||||
<string name="calendars">Kalender</string>
|
||||
<string name="calendar_all_day">Ganztägig</string>
|
||||
<string name="calendar_continues">Geht weiter</string>
|
||||
<string name="calendar_untitled">(ohne Titel)</string>
|
||||
<string name="calendar_no_events">Keine Termine</string>
|
||||
<string name="calendar_no_events_today">Keine Termine an diesem Tag</string>
|
||||
<string name="calendar_nav_jump_to_today">Zu heute springen</string>
|
||||
<string name="calendar_nav_next_day">Nächster Tag</string>
|
||||
<string name="calendar_nav_next_week">Nächste Woche</string>
|
||||
<string name="calendar_nav_next_month">Nächster Monat</string>
|
||||
<string name="calendar_nav_previous_day">Vorheriger Tag</string>
|
||||
<string name="calendar_nav_previous_week">Vorherige Woche</string>
|
||||
<string name="calendar_nav_previous_month">Vorheriger Monat</string>
|
||||
<string name="calendar_view_day">Tag</string>
|
||||
<string name="calendar_view_week">Woche</string>
|
||||
<string name="calendar_view_month">Monat</string>
|
||||
<string name="calendar_view_feed">Feed</string>
|
||||
<string name="calendar_section_past">Vergangen</string>
|
||||
<string name="calendar_section_upcoming">Bevorstehend</string>
|
||||
<string name="calendar_empty_feed">Noch keine bevorstehenden oder vergangenen Kalendertermine aus deinem ausgewählten Feed.</string>
|
||||
<string name="calendar_empty_feed_title">Dein Kalender ist leer</string>
|
||||
<string name="calendar_empty_feed_subtitle">Termine, die von Personen geteilt werden, denen du folgst, erscheinen hier. Tippe auf +, um eigene zu erstellen.</string>
|
||||
<string name="calendar_empty_day_title">Nichts geplant</string>
|
||||
<string name="calendar_empty_day_subtitle">Keine Termine an diesem Tag. Tippe auf +, um einen hinzuzufügen.</string>
|
||||
<string name="calendar_empty_week_title">Nichts diese Woche</string>
|
||||
<string name="calendar_empty_week_subtitle">Keine Termine in dieser Woche.</string>
|
||||
<string name="calendar_empty_collections">Noch keine Kalenderlisten.</string>
|
||||
<string name="calendar_empty_collections_title">Noch keine Listen</string>
|
||||
<string name="calendar_empty_collections_subtitle">Gruppiere Termine — eine Meetup-Reihe, ein Konferenz-Track, die Roadmap deines Teams. Tippe auf +, um eine zu erstellen.</string>
|
||||
<string name="calendar_day_a11y_selected_suffix">ausgewählt</string>
|
||||
<string name="calendar_day_a11y_today_suffix">heute</string>
|
||||
<string name="calendar_day_of_total">Tag %1$d von %2$d</string>
|
||||
<string name="calendar_fab_toggle">Erstellungsoptionen anzeigen</string>
|
||||
<string name="calendar_fab_new_event">Neuen Kalendertermin erstellen</string>
|
||||
<string name="calendar_fab_new_collection">Neuen Kalender erstellen</string>
|
||||
<string name="new_calendar_collection">Neuer Kalender</string>
|
||||
<string name="new_calendar_event">Neuer Kalendertermin</string>
|
||||
<string name="edit_calendar_collection">Kalender bearbeiten</string>
|
||||
<string name="edit_calendar_event">Kalendertermin bearbeiten</string>
|
||||
<string name="calendar_collection_title">Titel</string>
|
||||
<string name="calendar_collection_description">Beschreibung</string>
|
||||
<string name="calendar_collection_invalid">Ein Titel ist erforderlich.</string>
|
||||
<string name="calendar_collection_empty_members">Noch keine Termine in diesem Kalender.</string>
|
||||
<string name="calendar_collection_no_events_yet">Du hast noch keine Kalendertermine erstellt.</string>
|
||||
<string name="calendar_collection_events_section">Termine in diesem Kalender (%1$d)</string>
|
||||
<string name="calendar_collection_delete">Kalender löschen</string>
|
||||
<string name="calendar_collection_delete_confirm_title">Diesen Kalender löschen?</string>
|
||||
<string name="calendar_collection_delete_confirm_message">Die Kalenderliste wird entfernt. Termine darin werden nicht gelöscht.</string>
|
||||
<string name="calendar_event_title">Titel</string>
|
||||
<string name="calendar_event_summary">Zusammenfassung</string>
|
||||
<string name="calendar_event_location">Ort</string>
|
||||
<string name="calendar_event_start">Beginnt</string>
|
||||
<string name="calendar_event_end">Endet</string>
|
||||
<string name="calendar_event_end_before_start">Ende muss nach Beginn sein.</string>
|
||||
<string name="calendar_event_all_day">Ganztägiger Termin</string>
|
||||
<string name="calendar_event_all_day_locked">Während der Bearbeitung gesperrt — eine Änderung würde stattdessen einen neuen Termin erstellen.</string>
|
||||
<string name="calendar_event_hashtags">Hashtags (durch Komma getrennt)</string>
|
||||
<string name="calendar_event_image">Bild-URL</string>
|
||||
<string name="calendar_event_pick_date">Datum wählen</string>
|
||||
<string name="calendar_event_pick_time">Zeit wählen</string>
|
||||
<string name="calendar_event_pick_image">Bild wählen</string>
|
||||
<string name="calendar_event_image_upload_failed">Bild-Upload fehlgeschlagen</string>
|
||||
<string name="calendar_event_image_upload_failed_body">Das gewählte Bild konnte nicht hochgeladen werden. Versuche es erneut oder füge eine URL ein.</string>
|
||||
<string name="calendar_event_loading">Termin wird geladen…</string>
|
||||
<string name="calendar_event_invalid">Titel und Start sind erforderlich.</string>
|
||||
<string name="calendar_event_in_calendars">In Kalendern (%1$d)</string>
|
||||
<string name="calendar_event_in_no_calendars">Noch nicht Teil eines Kalenders.</string>
|
||||
<string name="calendar_event_participants_section">Teilnehmer (%1$d)</string>
|
||||
<string name="calendar_participants_section">Teilnehmer (%1$d)</string>
|
||||
<string name="calendar_event_participant_input">Name, npub oder nip-05 suchen</string>
|
||||
<string name="calendar_event_participant_invalid">Gib einen gültigen npub… oder 64-stelligen hex pubkey ein.</string>
|
||||
<string name="calendar_event_participant_remove">Teilnehmer entfernen</string>
|
||||
<string name="calendar_filter_all">Alle Kalender</string>
|
||||
<string name="calendar_filter_no_calendars">Du hast noch keine Kalender erstellt.</string>
|
||||
<string name="calendar_filter_sheet_title">Termine anzeigen aus…</string>
|
||||
<string name="calendar_add_to_calendar_title">Zu einem Kalender hinzufügen</string>
|
||||
<string name="calendar_add_to_calendar_action">Zu einem deiner Kalender hinzufügen</string>
|
||||
<string name="calendar_add_to_calendar_none">Du hast noch keine Kalender erstellt.</string>
|
||||
<string name="calendar_add_to_phone_calendar">Zum Telefonkalender hinzufügen</string>
|
||||
<string name="calendar_share_nostr">Als Nostr-Link teilen</string>
|
||||
<string name="calendar_share_nostr_title">Kalender-Link teilen</string>
|
||||
<string name="calendar_export_event">In Kalender exportieren (.ics)</string>
|
||||
<string name="calendar_export_share_title">Kalendertermin teilen</string>
|
||||
<string name="calendar_open_in_maps">In Karten öffnen</string>
|
||||
<string name="calendar_open_link">Link öffnen</string>
|
||||
<string name="calendar_relative_ongoing">Findet jetzt statt</string>
|
||||
<string name="calendar_relative_ongoing_with_end">%1$s · endet %2$s</string>
|
||||
<string name="calendar_rsvp_section">RSVPs (%1$d)</string>
|
||||
<string name="calendar_rsvp_going">Komme</string>
|
||||
<string name="calendar_rsvp_going_prefixed">✓ Komme</string>
|
||||
<string name="calendar_rsvp_maybe">Vielleicht</string>
|
||||
<string name="calendar_rsvp_maybe_prefixed">\? Vielleicht</string>
|
||||
<string name="calendar_rsvp_not_going">Komme nicht</string>
|
||||
<string name="calendar_rsvp_not_going_prefixed">✗ Komme nicht</string>
|
||||
<string name="calendar_rsvp_none">Noch keine Antworten.</string>
|
||||
<string name="calendar_reminder_channel_id">calendar_reminders</string>
|
||||
<string name="calendar_reminder_channel_name">Kalendererinnerungen</string>
|
||||
<string name="calendar_reminder_channel_description">Hinweis, wenn ein Termin, an dem du teilnimmst, bald beginnt.</string>
|
||||
<string name="calendar_reminder_default_title">Kalendertermin</string>
|
||||
<string name="calendar_reminder_settings_title">Kalendererinnerungen</string>
|
||||
<string name="calendar_reminder_settings_enabled_title">Erinnerungen senden</string>
|
||||
<string name="calendar_reminder_settings_enabled_subtitle">Eine Benachrichtigung wird angezeigt, wenn ein Termin, an dem du teilnimmst, bald beginnt.</string>
|
||||
<string name="calendar_reminder_settings_lead_title">Vorlaufzeit der Erinnerung</string>
|
||||
<string name="calendar_reminder_settings_lead_subtitle">Wie viele Minuten vor dem Termin du benachrichtigt werden möchtest.</string>
|
||||
<string name="route_calendars">Kalender</string>
|
||||
<string name="route_calendar_collections">Kalenderlisten</string>
|
||||
<string name="route_calendar_event_detail">Termindetails</string>
|
||||
<string name="onchain_zap_description">On-Chain-Bitcoin-Zap</string>
|
||||
<string name="onchain_zap_pending">Wartet auf Bestätigung</string>
|
||||
<string name="new_amount_in_sats_onchain">Neuer On-Chain-Betrag in Sats</string>
|
||||
<string name="quick_zap_amounts_onchain">Schnelle On-Chain-Zap-Beträge</string>
|
||||
<string name="quick_zap_amounts_onchain_explainer">On-Chain-Zaps zahlen Miner-Gebühren, daher sind die Beträge meist größer als bei Lightning. Tippe auf einen Betrag, um ihn zu entfernen.</string>
|
||||
<string name="send_onchain_instead">Stattdessen On-Chain senden</string>
|
||||
<string name="wallet_no_transactions_for_filter">Keine Transaktionen entsprechen diesem Filter</string>
|
||||
<string name="wallet_onchain_copy_dialog_confirm">Adresse kopieren</string>
|
||||
<string name="wallet_onchain_no_address">Keine On-Chain-Adresse für dieses Konto verfügbar.</string>
|
||||
<string name="wallet_onchain_no_backend">Kein On-Chain-Backend konfiguriert.</string>
|
||||
<string name="wallet_onchain_pending">Ausstehend</string>
|
||||
<string name="wallet_onchain_public_chip">Öffentlich</string>
|
||||
<string name="wallet_onchain_public_dialog_title">Diese Wallet ist öffentlich</string>
|
||||
<string name="wallet_onchain_public_dialog_body">Deine Taproot-Adresse wird aus deinem öffentlichen Nostr-Schlüssel abgeleitet, daher kann jeder, der deinen npub kennt, den Saldo und die Transaktionshistorie dieser Wallet in der Blockchain einsehen.\n\nUm deine Privatsphäre zu wahren, lade diese Wallet von nicht-privaten Konten (z. B. Börsen) auf und sende Mittel auch nur an solche Konten zurück. Vermische diese Mittel niemals mit deinen Cold Wallets und behandle sie wie Geld, das du verlieren kannst, da jeder, der die Kontrolle über deinen nsec hat, die Mittel ausgeben kann.</string>
|
||||
<string name="wallet_onchain_public_dialog_confirm">Verstanden</string>
|
||||
<string name="wallet_onchain_transactions">On-Chain-Transaktionen</string>
|
||||
<string name="nowhere_link_card_drop">Nowhere Drop</string>
|
||||
<plurals name="calendar_collection_count">
|
||||
<item quantity="one">%1$d Termin</item>
|
||||
<item quantity="other">%1$d Termine</item>
|
||||
</plurals>
|
||||
<plurals name="calendar_day_a11y_events">
|
||||
<item quantity="one">%1$s, %2$d Termin</item>
|
||||
<item quantity="other">%1$s, %2$d Termine</item>
|
||||
</plurals>
|
||||
<string name="calendar_day_a11y_no_events">%1$s, keine Termine</string>
|
||||
<plurals name="calendar_reminder_body">
|
||||
<item quantity="one">Beginnt in %1$d Minute</item>
|
||||
<item quantity="other">Beginnt in %1$d Minuten</item>
|
||||
</plurals>
|
||||
<string name="contact_list_screen_title">Folgenliste</string>
|
||||
<string name="contact_list_screen_title_with_count">Folgenliste (%1$d)</string>
|
||||
<string name="contact_list_containing_label">Folgenliste (%1$d Nutzer):</string>
|
||||
<string name="git_repo_section_links">Links</string>
|
||||
<string name="git_repo_tab_issues">Issues</string>
|
||||
<string name="nowhere_link_card_event">Nowhere Event</string>
|
||||
<string name="nowhere_link_card_forum">Nowhere Forum</string>
|
||||
<string name="nowhere_link_card_petition">Nowhere Petition</string>
|
||||
</resources>
|
||||
|
||||
@@ -2619,4 +2619,150 @@
|
||||
<string name="nowhere_link_card_message">Nowhere Mensagem</string>
|
||||
<string name="nowhere_link_card_art">Nowhere Arte</string>
|
||||
<string name="nowhere_link_card_forum">Nowhere Fórum</string>
|
||||
<plurals name="calendar_reminder_settings_lead_choice">
|
||||
<item quantity="one">%1$d min</item>
|
||||
<item quantity="other">%1$d min</item>
|
||||
</plurals>
|
||||
<string name="calendars">Calendários</string>
|
||||
<string name="calendar_all_day">Dia inteiro</string>
|
||||
<string name="calendar_continues">Continua</string>
|
||||
<string name="calendar_untitled">(sem título)</string>
|
||||
<string name="calendar_no_events">Sem eventos</string>
|
||||
<string name="calendar_no_events_today">Sem eventos neste dia</string>
|
||||
<string name="calendar_nav_jump_to_today">Ir para hoje</string>
|
||||
<string name="calendar_nav_next_day">Próximo dia</string>
|
||||
<string name="calendar_nav_next_week">Próxima semana</string>
|
||||
<string name="calendar_nav_next_month">Próximo mês</string>
|
||||
<string name="calendar_nav_previous_day">Dia anterior</string>
|
||||
<string name="calendar_nav_previous_week">Semana anterior</string>
|
||||
<string name="calendar_nav_previous_month">Mês anterior</string>
|
||||
<string name="calendar_view_day">Dia</string>
|
||||
<string name="calendar_view_week">Semana</string>
|
||||
<string name="calendar_view_month">Mês</string>
|
||||
<string name="calendar_view_feed">Feed</string>
|
||||
<string name="calendar_section_past">Passados</string>
|
||||
<string name="calendar_section_upcoming">Próximos</string>
|
||||
<string name="calendar_empty_feed">Ainda não há eventos de calendário (futuros ou passados) do feed selecionado.</string>
|
||||
<string name="calendar_empty_feed_title">Seu calendário está vazio</string>
|
||||
<string name="calendar_empty_feed_subtitle">Eventos compartilhados por pessoas que você segue aparecem aqui. Toque no botão + para criar os seus.</string>
|
||||
<string name="calendar_empty_day_title">Nada agendado</string>
|
||||
<string name="calendar_empty_day_subtitle">Sem eventos neste dia. Toque em + para adicionar um.</string>
|
||||
<string name="calendar_empty_week_title">Nada esta semana</string>
|
||||
<string name="calendar_empty_week_subtitle">Nenhum evento nesta semana.</string>
|
||||
<string name="calendar_empty_collections">Ainda não há listas de calendário.</string>
|
||||
<string name="calendar_empty_collections_title">Ainda não há listas</string>
|
||||
<string name="calendar_empty_collections_subtitle">Agrupe eventos — uma série de encontros, uma trilha de conferência, o roteiro da sua equipe. Toque em + para criar uma.</string>
|
||||
<string name="calendar_day_a11y_selected_suffix">selecionado</string>
|
||||
<string name="calendar_day_a11y_today_suffix">hoje</string>
|
||||
<string name="calendar_day_of_total">Dia %1$d de %2$d</string>
|
||||
<string name="calendar_fab_toggle">Mostrar opções de criação</string>
|
||||
<string name="calendar_fab_new_event">Criar um novo evento de calendário</string>
|
||||
<string name="calendar_fab_new_collection">Criar um novo calendário</string>
|
||||
<string name="new_calendar_collection">Novo calendário</string>
|
||||
<string name="new_calendar_event">Novo evento de calendário</string>
|
||||
<string name="edit_calendar_collection">Editar calendário</string>
|
||||
<string name="edit_calendar_event">Editar evento de calendário</string>
|
||||
<string name="calendar_collection_title">Título</string>
|
||||
<string name="calendar_collection_description">Descrição</string>
|
||||
<string name="calendar_collection_invalid">Um título é obrigatório.</string>
|
||||
<string name="calendar_collection_empty_members">Nenhum evento neste calendário ainda.</string>
|
||||
<string name="calendar_collection_no_events_yet">Você ainda não criou nenhum evento de calendário.</string>
|
||||
<string name="calendar_collection_events_section">Eventos neste calendário (%1$d)</string>
|
||||
<string name="calendar_collection_delete">Excluir calendário</string>
|
||||
<string name="calendar_collection_delete_confirm_title">Excluir este calendário?</string>
|
||||
<string name="calendar_collection_delete_confirm_message">O calendário será removido. Os eventos dentro dele não serão excluídos.</string>
|
||||
<string name="calendar_event_title">Título</string>
|
||||
<string name="calendar_event_summary">Resumo</string>
|
||||
<string name="calendar_event_location">Local</string>
|
||||
<string name="calendar_event_start">Começa</string>
|
||||
<string name="calendar_event_end">Termina</string>
|
||||
<string name="calendar_event_end_before_start">O término deve ser após o início.</string>
|
||||
<string name="calendar_event_all_day">Evento de dia inteiro</string>
|
||||
<string name="calendar_event_all_day_locked">Bloqueado durante edição — alterar isto criaria um novo evento.</string>
|
||||
<string name="calendar_event_hashtags">Hashtags (separadas por vírgula)</string>
|
||||
<string name="calendar_event_image">URL da imagem</string>
|
||||
<string name="calendar_event_pick_date">Escolher data</string>
|
||||
<string name="calendar_event_pick_time">Escolher hora</string>
|
||||
<string name="calendar_event_pick_image">Escolher imagem</string>
|
||||
<string name="calendar_event_image_upload_failed">Falha no envio da imagem</string>
|
||||
<string name="calendar_event_image_upload_failed_body">A imagem escolhida não pôde ser enviada. Tente novamente ou cole uma URL.</string>
|
||||
<string name="calendar_event_loading">Carregando evento…</string>
|
||||
<string name="calendar_event_invalid">Título e início são obrigatórios.</string>
|
||||
<string name="calendar_event_in_calendars">Em calendários (%1$d)</string>
|
||||
<string name="calendar_event_in_no_calendars">Ainda não faz parte de nenhum calendário.</string>
|
||||
<string name="calendar_event_participants_section">Participantes (%1$d)</string>
|
||||
<string name="calendar_participants_section">Participantes (%1$d)</string>
|
||||
<string name="calendar_event_participant_input">Buscar nome, npub ou nip-05</string>
|
||||
<string name="calendar_event_participant_invalid">Insira um npub… válido ou pubkey hex de 64 caracteres.</string>
|
||||
<string name="calendar_event_participant_remove">Remover participante</string>
|
||||
<string name="calendar_filter_all">Todos os calendários</string>
|
||||
<string name="calendar_filter_no_calendars">Você ainda não criou nenhum calendário.</string>
|
||||
<string name="calendar_filter_sheet_title">Mostrar eventos de…</string>
|
||||
<string name="calendar_add_to_calendar_title">Adicionar a um calendário</string>
|
||||
<string name="calendar_add_to_calendar_action">Adicionar a um dos seus calendários</string>
|
||||
<string name="calendar_add_to_calendar_none">Você ainda não criou nenhum calendário.</string>
|
||||
<string name="calendar_add_to_phone_calendar">Adicionar ao calendário do telefone</string>
|
||||
<string name="calendar_share_nostr">Compartilhar como link Nostr</string>
|
||||
<string name="calendar_share_nostr_title">Compartilhar link do calendário</string>
|
||||
<string name="calendar_export_event">Exportar para calendário (.ics)</string>
|
||||
<string name="calendar_export_share_title">Compartilhar evento de calendário</string>
|
||||
<string name="calendar_open_in_maps">Abrir no mapa</string>
|
||||
<string name="calendar_open_link">Abrir link</string>
|
||||
<string name="calendar_relative_ongoing">Acontecendo agora</string>
|
||||
<string name="calendar_relative_ongoing_with_end">%1$s · termina %2$s</string>
|
||||
<string name="calendar_rsvp_section">RSVPs (%1$d)</string>
|
||||
<string name="calendar_rsvp_going">Vou</string>
|
||||
<string name="calendar_rsvp_going_prefixed">✓ Vou</string>
|
||||
<string name="calendar_rsvp_maybe">Talvez</string>
|
||||
<string name="calendar_rsvp_maybe_prefixed">\? Talvez</string>
|
||||
<string name="calendar_rsvp_not_going">Não vou</string>
|
||||
<string name="calendar_rsvp_not_going_prefixed">✗ Não vou</string>
|
||||
<string name="calendar_rsvp_none">Sem RSVPs ainda.</string>
|
||||
<string name="calendar_reminder_channel_id">calendar_reminders</string>
|
||||
<string name="calendar_reminder_channel_name">Lembretes de calendário</string>
|
||||
<string name="calendar_reminder_channel_description">Aviso quando um evento do qual você participa está prestes a começar.</string>
|
||||
<string name="calendar_reminder_default_title">Evento de calendário</string>
|
||||
<string name="calendar_reminder_settings_title">Lembretes de calendário</string>
|
||||
<string name="calendar_reminder_settings_enabled_title">Enviar lembretes</string>
|
||||
<string name="calendar_reminder_settings_enabled_subtitle">Uma notificação é disparada quando um evento do qual você participa está prestes a começar.</string>
|
||||
<string name="calendar_reminder_settings_lead_title">Antecedência do lembrete</string>
|
||||
<string name="calendar_reminder_settings_lead_subtitle">Quantos minutos antes do evento você quer ser notificado.</string>
|
||||
<string name="route_calendars">Calendários</string>
|
||||
<string name="route_calendar_collections">Listas de calendário</string>
|
||||
<string name="route_calendar_event_detail">Detalhes do evento</string>
|
||||
<string name="onchain_zap_description">Zap Bitcoin on-chain</string>
|
||||
<string name="onchain_zap_pending">Aguardando confirmação</string>
|
||||
<string name="new_amount_in_sats_onchain">Novo valor on-chain em sats</string>
|
||||
<string name="quick_zap_amounts_onchain">Valores rápidos de zap on-chain</string>
|
||||
<string name="quick_zap_amounts_onchain_explainer">Zaps on-chain pagam taxas de mineradores, por isso os valores costumam ser maiores que no Lightning. Toque num valor para removê-lo.</string>
|
||||
<string name="send_onchain_instead">Enviar on-chain em vez disso</string>
|
||||
<string name="wallet_no_transactions_for_filter">Nenhuma transação corresponde a este filtro</string>
|
||||
<string name="wallet_onchain_copy_dialog_confirm">Copiar endereço</string>
|
||||
<string name="wallet_onchain_no_address">Nenhum endereço on-chain disponível para esta conta.</string>
|
||||
<string name="wallet_onchain_no_backend">Nenhum backend on-chain configurado.</string>
|
||||
<string name="wallet_onchain_pending">Pendente</string>
|
||||
<string name="wallet_onchain_public_chip">Pública</string>
|
||||
<string name="wallet_onchain_public_dialog_title">Esta carteira é pública</string>
|
||||
<string name="wallet_onchain_public_dialog_body">Seu endereço Taproot é derivado da sua chave pública Nostr, então qualquer pessoa que conheça seu npub pode ver o saldo e o histórico de transações desta carteira no blockchain.\n\nPara preservar sua privacidade, abasteça esta carteira a partir de contas não privadas (como corretoras) e envie os fundos de volta para elas. Nunca misture esses fundos com suas carteiras frias e trate-os como dinheiro que você pode perder, pois qualquer um que controle seu nsec pode gastar os fundos.</string>
|
||||
<string name="wallet_onchain_public_dialog_confirm">Entendi</string>
|
||||
<string name="wallet_onchain_transactions">Transações on-chain</string>
|
||||
<string name="nowhere_link_card_drop">Nowhere Drop</string>
|
||||
<plurals name="calendar_collection_count">
|
||||
<item quantity="one">%1$d evento</item>
|
||||
<item quantity="other">%1$d eventos</item>
|
||||
</plurals>
|
||||
<plurals name="calendar_day_a11y_events">
|
||||
<item quantity="one">%1$s, %2$d evento</item>
|
||||
<item quantity="other">%1$s, %2$d eventos</item>
|
||||
</plurals>
|
||||
<string name="calendar_day_a11y_no_events">%1$s, sem eventos</string>
|
||||
<plurals name="calendar_reminder_body">
|
||||
<item quantity="one">Começa em %1$d minuto</item>
|
||||
<item quantity="other">Começa em %1$d minutos</item>
|
||||
</plurals>
|
||||
<string name="contact_list_screen_title">Lista de seguidos</string>
|
||||
<string name="contact_list_screen_title_with_count">Lista de seguidos (%1$d)</string>
|
||||
<string name="contact_list_containing_label">Lista de seguidos contendo %1$d usuário(s):</string>
|
||||
<string name="git_repo_section_links">Links</string>
|
||||
<string name="git_repo_tab_issues">Issues</string>
|
||||
</resources>
|
||||
|
||||
@@ -2619,4 +2619,149 @@
|
||||
<string name="nowhere_link_card_petition">Nowhere Namninsamling</string>
|
||||
<string name="nowhere_link_card_message">Nowhere Meddelande</string>
|
||||
<string name="nowhere_link_card_art">Nowhere Konst</string>
|
||||
<plurals name="calendar_reminder_settings_lead_choice">
|
||||
<item quantity="one">%1$d min</item>
|
||||
<item quantity="other">%1$d min</item>
|
||||
</plurals>
|
||||
<string name="calendars">Kalendrar</string>
|
||||
<string name="calendar_all_day">Heldag</string>
|
||||
<string name="calendar_continues">Fortsätter</string>
|
||||
<string name="calendar_untitled">(utan titel)</string>
|
||||
<string name="calendar_no_events">Inga händelser</string>
|
||||
<string name="calendar_no_events_today">Inga händelser denna dag</string>
|
||||
<string name="calendar_nav_jump_to_today">Hoppa till idag</string>
|
||||
<string name="calendar_nav_next_day">Nästa dag</string>
|
||||
<string name="calendar_nav_next_week">Nästa vecka</string>
|
||||
<string name="calendar_nav_next_month">Nästa månad</string>
|
||||
<string name="calendar_nav_previous_day">Föregående dag</string>
|
||||
<string name="calendar_nav_previous_week">Föregående vecka</string>
|
||||
<string name="calendar_nav_previous_month">Föregående månad</string>
|
||||
<string name="calendar_view_day">Dag</string>
|
||||
<string name="calendar_view_week">Vecka</string>
|
||||
<string name="calendar_view_month">Månad</string>
|
||||
<string name="calendar_view_feed">Flöde</string>
|
||||
<string name="calendar_section_past">Tidigare</string>
|
||||
<string name="calendar_section_upcoming">Kommande</string>
|
||||
<string name="calendar_empty_feed">Inga kommande eller tidigare kalenderhändelser från ditt valda flöde än.</string>
|
||||
<string name="calendar_empty_feed_title">Din kalender är tom</string>
|
||||
<string name="calendar_empty_feed_subtitle">Händelser delade av personer du följer dyker upp här. Tryck på +-knappen för att skapa egna.</string>
|
||||
<string name="calendar_empty_day_title">Inget schemalagt</string>
|
||||
<string name="calendar_empty_day_subtitle">Inga händelser denna dag. Tryck på + för att lägga till en.</string>
|
||||
<string name="calendar_empty_week_title">Inget den här veckan</string>
|
||||
<string name="calendar_empty_week_subtitle">Inga händelser denna vecka.</string>
|
||||
<string name="calendar_empty_collections">Inga kalenderlistor än.</string>
|
||||
<string name="calendar_empty_collections_title">Inga listor än</string>
|
||||
<string name="calendar_empty_collections_subtitle">Gruppera händelser tillsammans — en träffserie, ett konferensspår, ditt teams färdplan. Tryck på + för att skapa en.</string>
|
||||
<string name="calendar_day_a11y_selected_suffix">vald</string>
|
||||
<string name="calendar_day_a11y_today_suffix">idag</string>
|
||||
<string name="calendar_day_of_total">Dag %1$d av %2$d</string>
|
||||
<string name="calendar_fab_toggle">Visa skapandealternativ</string>
|
||||
<string name="calendar_fab_new_event">Skapa en ny kalenderhändelse</string>
|
||||
<string name="calendar_fab_new_collection">Skapa en ny kalender</string>
|
||||
<string name="new_calendar_collection">Ny kalender</string>
|
||||
<string name="new_calendar_event">Ny kalenderhändelse</string>
|
||||
<string name="edit_calendar_collection">Redigera kalender</string>
|
||||
<string name="edit_calendar_event">Redigera kalenderhändelse</string>
|
||||
<string name="calendar_collection_title">Titel</string>
|
||||
<string name="calendar_collection_description">Beskrivning</string>
|
||||
<string name="calendar_collection_invalid">En titel krävs.</string>
|
||||
<string name="calendar_collection_empty_members">Inga händelser i denna kalender än.</string>
|
||||
<string name="calendar_collection_no_events_yet">Du har inte skapat några kalenderhändelser än.</string>
|
||||
<string name="calendar_collection_events_section">Händelser i denna kalender (%1$d)</string>
|
||||
<string name="calendar_collection_delete">Radera kalender</string>
|
||||
<string name="calendar_collection_delete_confirm_title">Radera denna kalender?</string>
|
||||
<string name="calendar_collection_delete_confirm_message">Kalenderlistan kommer att tas bort. Händelser inuti den raderas inte.</string>
|
||||
<string name="calendar_event_title">Titel</string>
|
||||
<string name="calendar_event_summary">Sammanfattning</string>
|
||||
<string name="calendar_event_location">Plats</string>
|
||||
<string name="calendar_event_start">Börjar</string>
|
||||
<string name="calendar_event_end">Slutar</string>
|
||||
<string name="calendar_event_end_before_start">Slut måste vara efter start.</string>
|
||||
<string name="calendar_event_all_day">Heldagshändelse</string>
|
||||
<string name="calendar_event_all_day_locked">Låst under redigering — att ändra detta skulle skapa en ny händelse istället.</string>
|
||||
<string name="calendar_event_hashtags">Hashtaggar (kommaseparerade)</string>
|
||||
<string name="calendar_event_image">Bild-URL</string>
|
||||
<string name="calendar_event_pick_date">Välj datum</string>
|
||||
<string name="calendar_event_pick_time">Välj tid</string>
|
||||
<string name="calendar_event_pick_image">Välj bild</string>
|
||||
<string name="calendar_event_image_upload_failed">Bilduppladdning misslyckades</string>
|
||||
<string name="calendar_event_image_upload_failed_body">Den valda bilden kunde inte laddas upp. Försök igen eller klistra in en URL.</string>
|
||||
<string name="calendar_event_loading">Laddar händelse…</string>
|
||||
<string name="calendar_event_invalid">Titel och starttid krävs.</string>
|
||||
<string name="calendar_event_in_calendars">I kalendrar (%1$d)</string>
|
||||
<string name="calendar_event_in_no_calendars">Inte del av någon kalender än.</string>
|
||||
<string name="calendar_event_participants_section">Deltagare (%1$d)</string>
|
||||
<string name="calendar_participants_section">Deltagare (%1$d)</string>
|
||||
<string name="calendar_event_participant_input">Sök namn, npub eller nip-05</string>
|
||||
<string name="calendar_event_participant_invalid">Ange en giltig npub… eller 64-teckens hex pubkey.</string>
|
||||
<string name="calendar_event_participant_remove">Ta bort deltagare</string>
|
||||
<string name="calendar_filter_all">Alla kalendrar</string>
|
||||
<string name="calendar_filter_no_calendars">Du har inte skapat några kalendrar än.</string>
|
||||
<string name="calendar_filter_sheet_title">Visa händelser från…</string>
|
||||
<string name="calendar_add_to_calendar_title">Lägg till i en kalender</string>
|
||||
<string name="calendar_add_to_calendar_action">Lägg till i en av dina kalendrar</string>
|
||||
<string name="calendar_add_to_calendar_none">Du har inte skapat några kalendrar än.</string>
|
||||
<string name="calendar_add_to_phone_calendar">Lägg till i telefonens kalender</string>
|
||||
<string name="calendar_share_nostr">Dela som Nostr-länk</string>
|
||||
<string name="calendar_share_nostr_title">Dela kalenderlänk</string>
|
||||
<string name="calendar_export_event">Exportera till kalender (.ics)</string>
|
||||
<string name="calendar_export_share_title">Dela kalenderhändelse</string>
|
||||
<string name="calendar_open_in_maps">Öppna i kartor</string>
|
||||
<string name="calendar_open_link">Öppna länk</string>
|
||||
<string name="calendar_relative_ongoing">Pågår nu</string>
|
||||
<string name="calendar_relative_ongoing_with_end">%1$s · slutar %2$s</string>
|
||||
<string name="calendar_rsvp_section">OSA (%1$d)</string>
|
||||
<string name="calendar_rsvp_going">Kommer</string>
|
||||
<string name="calendar_rsvp_going_prefixed">✓ Kommer</string>
|
||||
<string name="calendar_rsvp_maybe">Kanske</string>
|
||||
<string name="calendar_rsvp_maybe_prefixed">\? Kanske</string>
|
||||
<string name="calendar_rsvp_not_going">Kommer inte</string>
|
||||
<string name="calendar_rsvp_not_going_prefixed">✗ Kommer inte</string>
|
||||
<string name="calendar_rsvp_none">Inga OSA än.</string>
|
||||
<string name="calendar_reminder_channel_id">calendar_reminders</string>
|
||||
<string name="calendar_reminder_channel_name">Kalenderpåminnelser</string>
|
||||
<string name="calendar_reminder_channel_description">Påminnelse när en händelse du deltar i snart ska börja.</string>
|
||||
<string name="calendar_reminder_default_title">Kalenderhändelse</string>
|
||||
<string name="calendar_reminder_settings_title">Kalenderpåminnelser</string>
|
||||
<string name="calendar_reminder_settings_enabled_title">Skicka påminnelser</string>
|
||||
<string name="calendar_reminder_settings_enabled_subtitle">En notis visas när en händelse du deltar i snart ska börja.</string>
|
||||
<string name="calendar_reminder_settings_lead_title">Påminnelsetid</string>
|
||||
<string name="calendar_reminder_settings_lead_subtitle">Hur många minuter före händelsen du vill bli notifierad.</string>
|
||||
<string name="route_calendars">Kalendrar</string>
|
||||
<string name="route_calendar_collections">Kalenderlistor</string>
|
||||
<string name="route_calendar_event_detail">Händelsedetaljer</string>
|
||||
<string name="onchain_zap_description">On-chain Bitcoin-zap</string>
|
||||
<string name="onchain_zap_pending">Väntar på bekräftelse</string>
|
||||
<string name="new_amount_in_sats_onchain">Nytt on-chain-belopp i sats</string>
|
||||
<string name="quick_zap_amounts_onchain">Snabba on-chain-zapbelopp</string>
|
||||
<string name="quick_zap_amounts_onchain_explainer">On-chain-zappar betalar miner-avgifter, så beloppen är vanligtvis större än för Lightning. Tryck på ett belopp för att ta bort det.</string>
|
||||
<string name="send_onchain_instead">Skicka on-chain istället</string>
|
||||
<string name="wallet_no_transactions_for_filter">Inga transaktioner matchar detta filter</string>
|
||||
<string name="wallet_onchain_copy_dialog_confirm">Kopiera adress</string>
|
||||
<string name="wallet_onchain_no_address">Ingen on-chain-adress tillgänglig för detta konto.</string>
|
||||
<string name="wallet_onchain_no_backend">Ingen on-chain-backend är konfigurerad.</string>
|
||||
<string name="wallet_onchain_pending">Väntar</string>
|
||||
<string name="wallet_onchain_public_chip">Offentlig</string>
|
||||
<string name="wallet_onchain_public_dialog_title">Denna plånbok är offentlig</string>
|
||||
<string name="wallet_onchain_public_dialog_body">Din Taproot-adress härleds från din publika Nostr-nyckel, så alla som känner till din npub kan se denna plånboks saldo och transaktionshistorik på blockchainen.\n\nFör att bevara din integritet, fyll på denna plånbok från icke-privata konton (som börser) och skicka tillbaka medel dit. Blanda aldrig dessa medel med dina kalla plånböcker, och behandla dem som pengar du kan förlora, eftersom alla som har kontroll över din nsec kan spendera medlen.</string>
|
||||
<string name="wallet_onchain_public_dialog_confirm">Uppfattat</string>
|
||||
<string name="wallet_onchain_transactions">On-chain-transaktioner</string>
|
||||
<string name="nowhere_link_card_drop">Nowhere Drop</string>
|
||||
<plurals name="calendar_collection_count">
|
||||
<item quantity="one">%1$d händelse</item>
|
||||
<item quantity="other">%1$d händelser</item>
|
||||
</plurals>
|
||||
<plurals name="calendar_day_a11y_events">
|
||||
<item quantity="one">%1$s, %2$d händelse</item>
|
||||
<item quantity="other">%1$s, %2$d händelser</item>
|
||||
</plurals>
|
||||
<string name="calendar_day_a11y_no_events">%1$s, inga händelser</string>
|
||||
<plurals name="calendar_reminder_body">
|
||||
<item quantity="one">Börjar om %1$d minut</item>
|
||||
<item quantity="other">Börjar om %1$d minuter</item>
|
||||
</plurals>
|
||||
<string name="contact_list_screen_title">Följlista</string>
|
||||
<string name="contact_list_screen_title_with_count">Följlista (%1$d)</string>
|
||||
<string name="contact_list_containing_label">Följlista som innehåller %1$d användare:</string>
|
||||
<string name="nowhere_link_card_forum">Nowhere Forum</string>
|
||||
</resources>
|
||||
|
||||
@@ -1932,10 +1932,10 @@
|
||||
<string name="calendar_add_to_phone_calendar">Add to phone calendar</string>
|
||||
<string name="calendar_nav_jump_to_today">Jump to today</string>
|
||||
<plurals name="calendar_day_a11y_events">
|
||||
<item quantity="zero">%1$s, no events</item>
|
||||
<item quantity="one">%1$s, %2$d event</item>
|
||||
<item quantity="other">%1$s, %2$d events</item>
|
||||
</plurals>
|
||||
<string name="calendar_day_a11y_no_events">%1$s, no events</string>
|
||||
<string name="calendar_day_a11y_today_suffix">today</string>
|
||||
<string name="calendar_day_a11y_selected_suffix">selected</string>
|
||||
<string name="calendar_fab_new_event">Create a new calendar event</string>
|
||||
|
||||
Reference in New Issue
Block a user